43.8 MB
/srv/reproducible-results/rbuild-debian/r-b-build.u0oBAhyJ/b1/erlang_27.0.1+dfsg-3_arm64.changes vs.
/srv/reproducible-results/rbuild-debian/r-b-build.u0oBAhyJ/b2/erlang_27.0.1+dfsg-3_arm64.changes
8.73 KB
Files
    
Offset 1, 50 lines modifiedOffset 1, 50 lines modified
  
1 ·96147fcc0c403b05792002731016f6ec·21900·debug·optional·erlang-asn1-dbgsym_27.0.1+dfsg-3_arm64.deb1 ·96147fcc0c403b05792002731016f6ec·21900·debug·optional·erlang-asn1-dbgsym_27.0.1+dfsg-3_arm64.deb
2 ·2c0f431f49643e269c91863d507f7593·891368·interpreters·optional·erlang-asn1_27.0.1+dfsg-3_arm64.deb2 ·cf8e9fbaec1a02ede3ee94d4639b6428·891384·interpreters·optional·erlang-asn1_27.0.1+dfsg-3_arm64.deb
3 ·d752c668e90c0fe60a824bce1307c399·13945280·debug·optional·erlang-base-dbgsym_27.0.1+dfsg-3_arm64.deb3 ·d752c668e90c0fe60a824bce1307c399·13945280·debug·optional·erlang-base-dbgsym_27.0.1+dfsg-3_arm64.deb
4 ·2f42850a4f92ca43fc9fe22ff1e547b9·11085844·interpreters·optional·erlang-base_27.0.1+dfsg-3_arm64.deb4 ·9712107e62e66b1139dbf855ea563164·11085864·interpreters·optional·erlang-base_27.0.1+dfsg-3_arm64.deb
5 ·d1a039e8939285e3da4c9ef7657c161b·42016·debug·optional·erlang-common-test-dbgsym_27.0.1+dfsg-3_arm64.deb5 ·d1a039e8939285e3da4c9ef7657c161b·42016·debug·optional·erlang-common-test-dbgsym_27.0.1+dfsg-3_arm64.deb
6 ·df89649439da8e5e94a9e61f89edc00e·1308220·interpreters·optional·erlang-common-test_27.0.1+dfsg-3_arm64.deb6 ·db05e8ba654b40689f31e6b877d767a3·1308232·interpreters·optional·erlang-common-test_27.0.1+dfsg-3_arm64.deb
7 ·1ded5369d4cc6c972599a039853ccad9·123508·debug·optional·erlang-crypto-dbgsym_27.0.1+dfsg-3_arm64.deb7 ·1ded5369d4cc6c972599a039853ccad9·123508·debug·optional·erlang-crypto-dbgsym_27.0.1+dfsg-3_arm64.deb
8 ·ca16cbbce2184d76b155f03be824ecbd·177424·interpreters·optional·erlang-crypto_27.0.1+dfsg-3_arm64.deb8 ·6d1407ea4f1872881a2aadb2c272b601·177440·interpreters·optional·erlang-crypto_27.0.1+dfsg-3_arm64.deb
9 ·ea01d6320d93df388db68a5d33d8d212·478696·interpreters·optional·erlang-debugger_27.0.1+dfsg-3_arm64.deb9 ·5642b797d019b57215263b2088c2a55d·478716·interpreters·optional·erlang-debugger_27.0.1+dfsg-3_arm64.deb
10 ·71e657d87f08328a99e3ae5d953b53ce·299088·interpreters·optional·erlang-dev_27.0.1+dfsg-3_arm64.deb10 ·0b0ca6de8d817b8ae2b27faa2d5c40ec·299112·interpreters·optional·erlang-dev_27.0.1+dfsg-3_arm64.deb
11 ·f50570c614fb072a95f7b79a506912a0·80128·debug·optional·erlang-dialyzer-dbgsym_27.0.1+dfsg-3_arm64.deb11 ·f50570c614fb072a95f7b79a506912a0·80128·debug·optional·erlang-dialyzer-dbgsym_27.0.1+dfsg-3_arm64.deb
12 ·eefdcff3966ed596188eacac93cc7962·1076036·interpreters·optional·erlang-dialyzer_27.0.1+dfsg-3_arm64.deb12 ·c7aabb753a764e6b6d174769ee8e6138·1076048·interpreters·optional·erlang-dialyzer_27.0.1+dfsg-3_arm64.deb
13 ·8d3e38e7a67c41bb12cd95665eb03cf9·809060·interpreters·optional·erlang-diameter_27.0.1+dfsg-3_arm64.deb13 ·02ce4581f04568c0407c26bcaace0d80·809080·interpreters·optional·erlang-diameter_27.0.1+dfsg-3_arm64.deb
14 ·47d4cbd75e4e00a516b05eaf02dbf87e·16568848·doc·optional·erlang-doc_27.0.1+dfsg-3_all.deb 
15 ·ff97b079178c5646317df8e873b5335f·459264·interpreters·optional·erlang-edoc_27.0.1+dfsg-3_arm64.deb 
16 ·9b804ad711fab674a3539e30b4dd3f6d·137632·interpreters·optional·erlang-eldap_27.0.1+dfsg-3_arm64.deb 
17 ·ea45c4012341db11bdfeb87e4090b1f3·185196·interpreters·optional·erlang-et_27.0.1+dfsg-3_arm64.deb 
18 ·23901ff345307c517dac2aa575376349·171420·interpreters·optional·erlang-eunit_27.0.1+dfsg-3_arm64.deb 
19 ·18e19557e81695aaf95ad017a15245e5·963300·interpreters·optional·erlang-examples_27.0.1+dfsg-3_all.deb14 ·589afb628eb33eb2abc6cc15f9aac552·16573824·doc·optional·erlang-doc_27.0.1+dfsg-3_all.deb
 15 ·78bcb749776fd7a3052a359f0652bca8·459292·interpreters·optional·erlang-edoc_27.0.1+dfsg-3_arm64.deb
 16 ·da4b0395797470f98d3888da31d71a5f·137664·interpreters·optional·erlang-eldap_27.0.1+dfsg-3_arm64.deb
 17 ·bcb3c20507b4a558d2bddf2a23ce6684·185212·interpreters·optional·erlang-et_27.0.1+dfsg-3_arm64.deb
 18 ·d89bb742f5e1832cff4ab9267942df3c·171448·interpreters·optional·erlang-eunit_27.0.1+dfsg-3_arm64.deb
 19 ·94906edcc16f720caa7fd60e81cc4ddd·963316·interpreters·optional·erlang-examples_27.0.1+dfsg-3_all.deb
20 ·003d888e64f7b9c60748b7ddec3cc80a·105608·interpreters·optional·erlang-ftp_27.0.1+dfsg-3_arm64.deb20 ·c6d8d9a6ff4fa6e4f9d5670bb8f32bdd·105632·interpreters·optional·erlang-ftp_27.0.1+dfsg-3_arm64.deb
21 ·488c7e23d6efc1507a36b03784c9dc14·667664·interpreters·optional·erlang-inets_27.0.1+dfsg-3_arm64.deb21 ·3e67bd102451e16a93c338198564ec15·667680·interpreters·optional·erlang-inets_27.0.1+dfsg-3_arm64.deb
22 ·5bfefa85e3c645da17a97391fd37f80e·113140·interpreters·optional·erlang-jinterface_27.0.1+dfsg-3_all.deb22 ·577438851acb8ed60754ca4d3255b741·113136·interpreters·optional·erlang-jinterface_27.0.1+dfsg-3_all.deb
23 ·30fa8895f0bffd9ef219021b5f5fc060·63008·debug·optional·erlang-megaco-dbgsym_27.0.1+dfsg-3_arm64.deb23 ·30fa8895f0bffd9ef219021b5f5fc060·63008·debug·optional·erlang-megaco-dbgsym_27.0.1+dfsg-3_arm64.deb
24 ·ef6900c54f94f06e84bdb6f980e51e2a·3687208·interpreters·optional·erlang-megaco_27.0.1+dfsg-3_arm64.deb 
25 ·42511806c18f01780d0a036b1ce9653a·897752·interpreters·optional·erlang-mnesia_27.0.1+dfsg-3_arm64.deb 
26 ·2135a2ab7f4931c882f971c48542bd6d·92804·interpreters·optional·erlang-mode_27.0.1+dfsg-3_all.deb24 ·58dded0c93230bb28311464ee9670252·3687232·interpreters·optional·erlang-megaco_27.0.1+dfsg-3_arm64.deb
 25 ·64b891ab8567df4516e392a8c90511be·897780·interpreters·optional·erlang-mnesia_27.0.1+dfsg-3_arm64.deb
 26 ·abb4a4831715d83e0bc13525ddcb7388·92844·interpreters·optional·erlang-mode_27.0.1+dfsg-3_all.deb
27 ·890fa2b1778306bf0d92a36640bbd8fd·14512·interpreters·optional·erlang-nox_27.0.1+dfsg-3_all.deb27 ·a667c30ba36b76b0788b3a60c70feec9·14532·interpreters·optional·erlang-nox_27.0.1+dfsg-3_all.deb
28 ·3b529e823ae4f77e0e02506caf1a98e8·1027812·interpreters·optional·erlang-observer_27.0.1+dfsg-3_arm64.deb28 ·3b5daccb24f5e53b507c4efc480e4717·1027836·interpreters·optional·erlang-observer_27.0.1+dfsg-3_arm64.deb
29 ·f2fe7e765b9d7c02fa3093afd26ec672·59532·debug·optional·erlang-odbc-dbgsym_27.0.1+dfsg-3_arm64.deb29 ·f2fe7e765b9d7c02fa3093afd26ec672·59532·debug·optional·erlang-odbc-dbgsym_27.0.1+dfsg-3_arm64.deb
30 ·0d9f11b54714578679bdb57d69768d06·66684·interpreters·optional·erlang-odbc_27.0.1+dfsg-3_arm64.deb30 ·0f5fd8d1881d97ba5add6a514606c407·66700·interpreters·optional·erlang-odbc_27.0.1+dfsg-3_arm64.deb
31 ·c3aed3519b01f30e767cdb17336b98dd·18460·debug·optional·erlang-os-mon-dbgsym_27.0.1+dfsg-3_arm64.deb31 ·c3aed3519b01f30e767cdb17336b98dd·18460·debug·optional·erlang-os-mon-dbgsym_27.0.1+dfsg-3_arm64.deb
32 ·dbe30da6753839bb9365921cf5ae4823·112332·interpreters·optional·erlang-os-mon_27.0.1+dfsg-3_arm64.deb32 ·a5a3a55086ebd51fb33593321182708a·112336·interpreters·optional·erlang-os-mon_27.0.1+dfsg-3_arm64.deb
33 ·a5d749a6c60ce18ec9b5c51ea5f338ff·210576·interpreters·optional·erlang-parsetools_27.0.1+dfsg-3_arm64.deb33 ·fb27aa398bc3ed993f20d7daca4b70b2·210600·interpreters·optional·erlang-parsetools_27.0.1+dfsg-3_arm64.deb
34 ·2589cf1ed323ec8f3ed92f2bd6c10d35·777900·interpreters·optional·erlang-public-key_27.0.1+dfsg-3_arm64.deb34 ·839f7f531ef58c6a29a8d30377c10073·777920·interpreters·optional·erlang-public-key_27.0.1+dfsg-3_arm64.deb
35 ·0c65b8765064eb9b89627f835ff635c5·384164·interpreters·optional·erlang-reltool_27.0.1+dfsg-3_arm64.deb35 ·0b86b7af77f58c292feebd598816f5c5·384184·interpreters·optional·erlang-reltool_27.0.1+dfsg-3_arm64.deb
36 ·845f3d9cd768f23ab69aa5268369f55a·25312·debug·optional·erlang-runtime-tools-dbgsym_27.0.1+dfsg-3_arm64.deb36 ·845f3d9cd768f23ab69aa5268369f55a·25312·debug·optional·erlang-runtime-tools-dbgsym_27.0.1+dfsg-3_arm64.deb
37 ·f84f9d4a7c390cac297b61ca6b5bf52f·244348·interpreters·optional·erlang-runtime-tools_27.0.1+dfsg-3_arm64.deb 
38 ·607afadc7bc4e52e754d312b870f870e·1950512·interpreters·optional·erlang-snmp_27.0.1+dfsg-3_arm64.deb 
39 ·0c6e47ffe5648804f75f41235b9c3215·6110640·interpreters·optional·erlang-src_27.0.1+dfsg-3_all.deb 
40 ·265cb0966e5eb26b98ea4f49660c6127·1004020·interpreters·optional·erlang-ssh_27.0.1+dfsg-3_arm64.deb 
41 ·1f7e79140f44bc4afe2d01b7fbbe60e1·1793536·interpreters·optional·erlang-ssl_27.0.1+dfsg-3_arm64.deb37 ·bde85613eadf102760ff073fb74d22ca·244352·interpreters·optional·erlang-runtime-tools_27.0.1+dfsg-3_arm64.deb
 38 ·d038d11b5eaa37f0a57013d5965dec3e·1950540·interpreters·optional·erlang-snmp_27.0.1+dfsg-3_arm64.deb
 39 ·373e4c50c0fa6d388e2fc4a79be8cc05·6110664·interpreters·optional·erlang-src_27.0.1+dfsg-3_all.deb
 40 ·4c8d4df15065b1482f5aaba9c22bd7c8·1004292·interpreters·optional·erlang-ssh_27.0.1+dfsg-3_arm64.deb
 41 ·10d012a136f280b304a07654bd34d735·1793548·interpreters·optional·erlang-ssl_27.0.1+dfsg-3_arm64.deb
42 ·5aacf4cf40b7f57fe7bfeca93bc24d5f·337616·interpreters·optional·erlang-syntax-tools_27.0.1+dfsg-3_arm64.deb42 ·8dfaa4b501e103b5b6520a1e1e6f3568·337628·interpreters·optional·erlang-syntax-tools_27.0.1+dfsg-3_arm64.deb
43 ·f7045e934a6c88629fc5404254a59d92·113156·interpreters·optional·erlang-tftp_27.0.1+dfsg-3_arm64.deb 
44 ·63f475d1d1539435d938b23dda30b70d·620812·interpreters·optional·erlang-tools_27.0.1+dfsg-3_arm64.deb43 ·09225547724c6793d68d7bc3f245c2b9·113184·interpreters·optional·erlang-tftp_27.0.1+dfsg-3_arm64.deb
 44 ·eb8e1c8202e99497688d0421e262f470·620832·interpreters·optional·erlang-tools_27.0.1+dfsg-3_arm64.deb
45 ·fbfff5036afc93065ff33d64db2e51ca·5434956·debug·optional·erlang-wx-dbgsym_27.0.1+dfsg-3_arm64.deb45 ·fbfff5036afc93065ff33d64db2e51ca·5434956·debug·optional·erlang-wx-dbgsym_27.0.1+dfsg-3_arm64.deb
46 ·4c4ae5ccd075db12e0548dac517a29c0·4407768·interpreters·optional·erlang-wx_27.0.1+dfsg-3_arm64.deb46 ·d22f1723c8aaee8972cd921e80562044·4407792·interpreters·optional·erlang-wx_27.0.1+dfsg-3_arm64.deb
47 ·665dc4397ad86dd287d141a6465c3727·14472·interpreters·optional·erlang-x11_27.0.1+dfsg-3_all.deb47 ·74bfe3c349cb655eb461a0b800cbbc4a·14492·interpreters·optional·erlang-x11_27.0.1+dfsg-3_all.deb
48 ·dc851ed1c77c1564444c72300b4b0e0f·1331760·interpreters·optional·erlang-xmerl_27.0.1+dfsg-3_arm64.deb48 ·f6a52c067cca282be1c1e4d45fd49e30·1331776·interpreters·optional·erlang-xmerl_27.0.1+dfsg-3_arm64.deb
49 ·302ef976ee10855dcbfe62393d188279·14872·interpreters·optional·erlang_27.0.1+dfsg-3_all.deb49 ·402a533890a60333b856067f9876652c·14876·interpreters·optional·erlang_27.0.1+dfsg-3_all.deb
15.0 KB
erlang-asn1_27.0.1+dfsg-3_arm64.deb
452 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1512·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1516·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···889664·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···889676·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.3 KB
data.tar
1.48 KB
file list
    
Offset 31, 11 lines modifiedOffset 31, 11 lines modified
31 -rw-r--r--···0·root·········(0)·root·········(0)·····4840·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/asn1-5.3/ebin/asn1rt_nif.beam31 -rw-r--r--···0·root·········(0)·root·········(0)·····4840·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/asn1-5.3/ebin/asn1rt_nif.beam
32 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/asn1-5.3/priv/32 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/asn1-5.3/priv/
33 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/asn1-5.3/priv/lib/33 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/asn1-5.3/priv/lib/
34 -rw-r--r--···0·root·········(0)·root·········(0)····67824·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/asn1-5.3/priv/lib/asn1rt_nif.so34 -rw-r--r--···0·root·········(0)·root·········(0)····67824·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/asn1-5.3/priv/lib/asn1rt_nif.so
35 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/35 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
36 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/36 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
37 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/37 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/
38 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/AUTHORS.gz38 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/AUTHORS.gz
39 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/README.Debian39 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/README.Debian
40 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/changelog.Debian.gz40 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/changelog.Debian.gz
41 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/copyright41 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-asn1/copyright
12.8 KB
./usr/share/doc/erlang-asn1/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.3 KB
erlang-base_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0····12740·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0····12740·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0·11072912·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0·11072932·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.7 KB
data.tar.xz
14.7 KB
data.tar
1.86 KB
file list
    
Offset 391, 15 lines modifiedOffset 391, 15 lines modified
391 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/systemd/391 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/systemd/
392 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/systemd/system/392 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/systemd/system/
393 -rw-r--r--···0·root·········(0)·root·········(0)······264·2024-08-29·10:53:40.000000·./usr/lib/systemd/system/epmd.service393 -rw-r--r--···0·root·········(0)·root·········(0)······264·2024-08-29·10:53:40.000000·./usr/lib/systemd/system/epmd.service
394 -rw-r--r--···0·root·········(0)·root·········(0)······157·2024-08-29·10:53:40.000000·./usr/lib/systemd/system/epmd.socket394 -rw-r--r--···0·root·········(0)·root·········(0)······157·2024-08-29·10:53:40.000000·./usr/lib/systemd/system/epmd.socket
395 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/395 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
396 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/396 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
397 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/397 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/
398 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/AUTHORS.gz398 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/AUTHORS.gz
399 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/README.Debian399 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/README.Debian
400 -rw-r--r--···0·root·········(0)·root·········(0)·····4418·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/changelog.Debian.gz400 -rw-r--r--···0·root·········(0)·root·········(0)·····4418·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/changelog.Debian.gz
401 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/copyright401 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-base/copyright
402 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/402 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/
403 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/403 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/
404 -rw-r--r--···0·root·········(0)·root·········(0)·····3384·2024-08-29·10:53:40.000000·./usr/share/man/man1/epmd.1.gz404 -rw-r--r--···0·root·········(0)·root·········(0)·····3384·2024-08-29·10:53:40.000000·./usr/share/man/man1/epmd.1.gz
405 -rw-r--r--···0·root·········(0)·root·········(0)····19849·2024-08-29·10:53:40.000000·./usr/share/man/man1/erl.1.gz405 -rw-r--r--···0·root·········(0)·root·········(0)····19849·2024-08-29·10:53:40.000000·./usr/share/man/man1/erl.1.gz
12.8 KB
./usr/share/doc/erlang-base/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.5 KB
erlang-common-test_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····2644·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2644·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··1305384·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1305396·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.9 KB
data.tar.xz
14.9 KB
data.tar
2.03 KB
file list
    
Offset 64, 15 lines modifiedOffset 64, 15 lines modified
64 -rw-r--r--···0·root·········(0)·root·········(0)····34734·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/common_test-1.27/priv/tile1.jpg64 -rw-r--r--···0·root·········(0)·root·········(0)····34734·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/common_test-1.27/priv/tile1.jpg
65 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/common_test-1.27/proper_ext/65 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/common_test-1.27/proper_ext/
66 -rw-r--r--···0·root·········(0)·root·········(0)·····7816·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/common_test-1.27/proper_ext/ct_proper_ext.beam66 -rw-r--r--···0·root·········(0)·root·········(0)·····7816·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/common_test-1.27/proper_ext/ct_proper_ext.beam
67 -rw-r--r--···0·root·········(0)·root·········(0)·····6019·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/common_test-1.27/proper_ext/ct_proper_ext.erl67 -rw-r--r--···0·root·········(0)·root·········(0)·····6019·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/common_test-1.27/proper_ext/ct_proper_ext.erl
68 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/68 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
69 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/69 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
70 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/70 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/
71 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/AUTHORS.gz71 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/AUTHORS.gz
72 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/README.Debian72 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/README.Debian
73 -rw-r--r--···0·root·········(0)·root·········(0)·····4425·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/changelog.Debian.gz73 -rw-r--r--···0·root·········(0)·root·········(0)·····4425·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/changelog.Debian.gz
74 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/copyright74 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-common-test/copyright
75 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/75 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/
76 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/76 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/
77 -rw-r--r--···0·root·········(0)·root·········(0)·······42·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-common-test77 -rw-r--r--···0·root·········(0)·root·········(0)·······42·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-common-test
78 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/78 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/
12.9 KB
./usr/share/doc/erlang-common-test/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-crypto_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1088·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1088·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···176144·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···176160·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.52 KB
file list
    
Offset 13, 11 lines modifiedOffset 13, 11 lines modified
13 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/crypto-5.5/priv/lib/13 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/crypto-5.5/priv/lib/
14 -rw-r--r--···0·root·········(0)·root·········(0)···206048·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/crypto-5.5/priv/lib/crypto.so14 -rw-r--r--···0·root·········(0)·root·········(0)···206048·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/crypto-5.5/priv/lib/crypto.so
15 -rw-r--r--···0·root·········(0)·root·········(0)····67608·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/crypto-5.5/priv/lib/crypto_callback.so15 -rw-r--r--···0·root·········(0)·root·········(0)····67608·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/crypto-5.5/priv/lib/crypto_callback.so
16 -rw-r--r--···0·root·········(0)·root·········(0)····67832·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/crypto-5.5/priv/lib/otp_test_engine.so16 -rw-r--r--···0·root·········(0)·root·········(0)····67832·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/crypto-5.5/priv/lib/otp_test_engine.so
17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/
20 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/AUTHORS.gz20 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/AUTHORS.gz
21 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/README.Debian21 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/README.Debian
22 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/changelog.Debian.gz22 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/changelog.Debian.gz
23 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/copyright23 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-crypto/copyright
12.8 KB
./usr/share/doc/erlang-crypto/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.3 KB
erlang-debugger_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1672·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1672·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···476832·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···476852·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.8 KB
data.tar.xz
14.7 KB
data.tar
1.87 KB
file list
    
Offset 34, 14 lines modifiedOffset 34, 14 lines modified
34 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/debugger-5.4/priv/34 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/debugger-5.4/priv/
35 -rw-r--r--···0·root·········(0)·root·········(0)······647·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/debugger-5.4/priv/debugger.gif35 -rw-r--r--···0·root·········(0)·root·········(0)······647·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/debugger-5.4/priv/debugger.gif
36 -rw-r--r--···0·root·········(0)·root·········(0)······153·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/debugger-5.4/priv/debugger.tool36 -rw-r--r--···0·root·········(0)·root·········(0)······153·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/debugger-5.4/priv/debugger.tool
37 -rw-r--r--···0·root·········(0)·root·········(0)·····4723·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/debugger-5.4/priv/erlang_bug.png37 -rw-r--r--···0·root·········(0)·root·········(0)·····4723·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/debugger-5.4/priv/erlang_bug.png
38 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/38 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
39 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/39 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
40 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/40 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/
41 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/AUTHORS.gz41 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/AUTHORS.gz
42 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/README.Debian42 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/README.Debian
43 -rw-r--r--···0·root·········(0)·root·········(0)·····4424·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/changelog.Debian.gz43 -rw-r--r--···0·root·········(0)·root·········(0)·····4424·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/changelog.Debian.gz
44 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/copyright44 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-debugger/copyright
45 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/45 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/
46 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/46 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/
47 -rw-r--r--···0·root·········(0)·root·········(0)·······39·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-debugger47 -rw-r--r--···0·root·········(0)·root·········(0)·······39·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-debugger
12.8 KB
./usr/share/doc/erlang-debugger/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.4 KB
erlang-dev_27.0.1+dfsg-3_arm64.deb
452 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····3652·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····3656·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···295244·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···295264·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.8 KB
data.tar.xz
14.8 KB
data.tar
1.92 KB
file list
    
Offset 167, 15 lines modifiedOffset 167, 15 lines modified
167 -rw-r--r--···0·root·········(0)·root·········(0)····38439·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/include/erl_nif_api_funcs.h167 -rw-r--r--···0·root·········(0)·root·········(0)····38439·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/include/erl_nif_api_funcs.h
168 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/lib/168 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/lib/
169 -rw-r--r--···0·root·········(0)·root·········(0)···251606·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/lib/libei.a169 -rw-r--r--···0·root·········(0)·root·········(0)···251606·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/lib/libei.a
170 -rw-r--r--···0·root·········(0)·root·········(0)···249068·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/lib/libei_st.a170 -rw-r--r--···0·root·········(0)·root·········(0)···249068·2024-08-29·10:53:40.000000·./usr/lib/erlang/usr/lib/libei_st.a
171 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/171 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
172 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/172 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
173 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/173 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/
174 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/AUTHORS.gz174 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/AUTHORS.gz
175 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/README.Debian175 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/README.Debian
176 -rw-r--r--···0·root·········(0)·root·········(0)·····4420·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/changelog.Debian.gz176 -rw-r--r--···0·root·········(0)·root·········(0)·····4420·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/changelog.Debian.gz
177 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/copyright177 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dev/copyright
178 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/178 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/
179 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/179 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/
180 -rw-r--r--···0·root·········(0)·root·········(0)·····3427·2024-08-29·10:53:40.000000·./usr/share/man/man1/erlang-depends.1.gz180 -rw-r--r--···0·root·········(0)·root·········(0)·····3427·2024-08-29·10:53:40.000000·./usr/share/man/man1/erlang-depends.1.gz
181 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/include/driver_int.h·->·../lib/erlang/usr/include/driver_int.h181 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/include/driver_int.h·->·../lib/erlang/usr/include/driver_int.h
12.8 KB
./usr/share/doc/erlang-dev/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.4 KB
erlang-dialyzer_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1856·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1856·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··1073988·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1074000·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.9 KB
data.tar.xz
14.8 KB
data.tar
1.98 KB
file list
    
Offset 43, 15 lines modifiedOffset 43, 15 lines modified
43 -rw-r--r--···0·root·········(0)·root·········(0)···123752·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/dialyzer-5.2/ebin/erl_bif_types.beam43 -rw-r--r--···0·root·········(0)·root·········(0)···123752·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/dialyzer-5.2/ebin/erl_bif_types.beam
44 -rw-r--r--···0·root·········(0)·root·········(0)···267656·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/dialyzer-5.2/ebin/erl_types.beam44 -rw-r--r--···0·root·········(0)·root·········(0)···267656·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/dialyzer-5.2/ebin/erl_types.beam
45 -rw-r--r--···0·root·········(0)·root·········(0)····10920·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/dialyzer-5.2/ebin/typer.beam45 -rw-r--r--···0·root·········(0)·root·········(0)····10920·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/dialyzer-5.2/ebin/typer.beam
46 -rw-r--r--···0·root·········(0)·root·········(0)····51220·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/dialyzer-5.2/ebin/typer_core.beam46 -rw-r--r--···0·root·········(0)·root·········(0)····51220·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/dialyzer-5.2/ebin/typer_core.beam
47 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/47 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
48 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/48 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
49 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/49 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/
50 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/AUTHORS.gz50 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/AUTHORS.gz
51 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/README.Debian51 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/README.Debian
52 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/changelog.Debian.gz52 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/changelog.Debian.gz
53 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/copyright53 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-dialyzer/copyright
54 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/54 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/
55 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/55 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/
56 -rw-r--r--···0·root·········(0)·root·········(0)·····5273·2024-08-29·10:53:40.000000·./usr/share/man/man1/dialyzer.1.gz56 -rw-r--r--···0·root·········(0)·root·········(0)·····5273·2024-08-29·10:53:40.000000·./usr/share/man/man1/dialyzer.1.gz
57 -rw-r--r--···0·root·········(0)·root·········(0)·····1277·2024-08-29·10:53:40.000000·./usr/share/man/man1/typer.1.gz57 -rw-r--r--···0·root·········(0)·root·········(0)·····1277·2024-08-29·10:53:40.000000·./usr/share/man/man1/typer.1.gz
12.8 KB
./usr/share/doc/erlang-dialyzer/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.5 KB
erlang-diameter_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····2156·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2156·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···806712·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···806732·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.9 KB
data.tar.xz
14.9 KB
data.tar
2.05 KB
file list
    
Offset 56, 15 lines modifiedOffset 56, 15 lines modified
56 -rw-r--r--···0·root·········(0)·root·········(0)·····2472·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/diameter-2.4/ebin/diameter_transport_sup.beam56 -rw-r--r--···0·root·········(0)·root·········(0)·····2472·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/diameter-2.4/ebin/diameter_transport_sup.beam
57 -rw-r--r--···0·root·········(0)·root·········(0)····15416·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/diameter-2.4/ebin/diameter_types.beam57 -rw-r--r--···0·root·········(0)·root·········(0)····15416·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/diameter-2.4/ebin/diameter_types.beam
58 -rw-r--r--···0·root·········(0)·root·········(0)····26816·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/diameter-2.4/ebin/diameter_watchdog.beam58 -rw-r--r--···0·root·········(0)·root·········(0)····26816·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/diameter-2.4/ebin/diameter_watchdog.beam
59 -rw-r--r--···0·root·········(0)·root·········(0)·····2464·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/diameter-2.4/ebin/diameter_watchdog_sup.beam59 -rw-r--r--···0·root·········(0)·root·········(0)·····2464·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/diameter-2.4/ebin/diameter_watchdog_sup.beam
60 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/60 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
61 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/61 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
62 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/62 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/
63 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/AUTHORS.gz63 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/AUTHORS.gz
64 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/README.Debian64 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/README.Debian
65 -rw-r--r--···0·root·········(0)·root·········(0)·····4422·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/changelog.Debian.gz65 -rw-r--r--···0·root·········(0)·root·········(0)·····4422·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/changelog.Debian.gz
66 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/copyright66 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-diameter/copyright
67 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/67 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/
68 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/68 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/
69 -rw-r--r--···0·root·········(0)·root·········(0)······804·2024-08-29·10:53:40.000000·./usr/share/man/man1/diameterc.1.gz69 -rw-r--r--···0·root·········(0)·root·········(0)······804·2024-08-29·10:53:40.000000·./usr/share/man/man1/diameterc.1.gz
70 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/bin/diameterc·->·../lib/erlang/lib/diameter-2.4/bin/diameterc70 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/bin/diameterc·->·../lib/erlang/lib/diameter-2.4/bin/diameterc
12.8 KB
./usr/share/doc/erlang-diameter/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
43.1 MB
erlang-doc_27.0.1+dfsg-3_all.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0····39196·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0····39196·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0·16529460·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0·16534436·2024-08-29·10:53:40.000000·data.tar.xz
23.5 KB
control.tar.xz
23.5 KB
control.tar
489 B
./control
    
Offset 1, 13 lines modifiedOffset 1, 13 lines modified
1 Package:·erlang-doc1 Package:·erlang-doc
2 Source:·erlang2 Source:·erlang
3 Version:·1:27.0.1+dfsg-33 Version:·1:27.0.1+dfsg-3
4 Architecture:·all4 Architecture:·all
5 Maintainer:·Debian·Erlang·Packagers·<pkg-erlang-devel@lists.alioth.debian.org>5 Maintainer:·Debian·Erlang·Packagers·<pkg-erlang-devel@lists.alioth.debian.org>
6 Installed-Size:·959716 Installed-Size:·96022
7 Depends:·libjs-jquery,·libjs-jquery-ui,·node-mermaid7 Depends:·libjs-jquery,·libjs-jquery-ui,·node-mermaid
8 Suggests:·erlang:any8 Suggests:·erlang:any
9 Conflicts:·erlang-base:any·(<<·1:13.b.4),·erlang-base-hipe:any,·erlang-doc-html9 Conflicts:·erlang-base:any·(<<·1:13.b.4),·erlang-base-hipe:any,·erlang-doc-html
10 Replaces:·erlang-doc-html10 Replaces:·erlang-doc-html
11 Provides:·erlang-doc-html11 Provides:·erlang-doc-html
12 Section:·doc12 Section:·doc
13 Priority:·optional13 Priority:·optional
23.0 KB
./md5sums
30.0 B
./md5sums
Files differ
23.0 KB
line order
Max HTML report size reached
43.1 MB
data.tar.xz
43.1 MB
data.tar
121 KB
file list
    
Offset 38, 15 lines modifiedOffset 38, 15 lines modified
38 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/38 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/
39 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/39 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/
40 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/40 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/
41 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/41 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/
42 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/42 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
43 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/43 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
44 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/44 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/
45 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/AUTHORS.gz45 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/AUTHORS.gz
46 -rw-r--r--···0·root·········(0)·root·········(0)·····8220·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/CONTRIBUTING.md46 -rw-r--r--···0·root·········(0)·root·········(0)·····8220·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/CONTRIBUTING.md
47 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/HOWTO/47 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/HOWTO/
48 -rw-r--r--···0·root·········(0)·root·········(0)·····3008·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/BENCHMARKS.md48 -rw-r--r--···0·root·········(0)·root·········(0)·····3008·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/BENCHMARKS.md
49 -rw-r--r--···0·root·········(0)·root·········(0)·····2978·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/BOOTSTRAP.md49 -rw-r--r--···0·root·········(0)·root·········(0)·····2978·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/BOOTSTRAP.md
50 -rw-r--r--···0·root·········(0)·root·········(0)·····3577·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/DEPRECATE.md50 -rw-r--r--···0·root·········(0)·root·········(0)·····3577·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/DEPRECATE.md
51 -rw-r--r--···0·root·········(0)·root·········(0)····21862·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/DEVELOPMENT.md51 -rw-r--r--···0·root·········(0)·root·········(0)····21862·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/DEVELOPMENT.md
52 -rw-r--r--···0·root·········(0)·root·········(0)····15200·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/DOCUMENTATION.md52 -rw-r--r--···0·root·········(0)·root·········(0)····15200·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/HOWTO/DOCUMENTATION.md
Offset 66, 25 lines modifiedOffset 66, 25 lines modified
66 -rw-r--r--···0·root·········(0)·root·········(0)·····4204·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/README.md66 -rw-r--r--···0·root·········(0)·root·········(0)·····4204·2024-07-09·11:36:07.000000·./usr/share/doc/erlang-doc/README.md
67 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/changelog.Debian.gz67 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/changelog.Debian.gz
68 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/copyright68 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/copyright
69 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/69 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/
70 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/70 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/
71 -rw-r--r--···0·root·········(0)·root·········(0)·····1599·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/.build71 -rw-r--r--···0·root·········(0)·root·········(0)·····1599·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/.build
72 -rw-r--r--···0·root·········(0)·root·········(0)·····5287·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/404.html72 -rw-r--r--···0·root·········(0)·root·········(0)·····5287·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/404.html
73 -rw-r--r--···0·root·········(0)·root·········(0)·····6021·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/asn1.html73 -rw-r--r--···0·root·········(0)·root·········(0)·····6299·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/asn1.html
74 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/assets/74 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/assets/
75 -rw-r--r--···0·root·········(0)·root·········(0)·····5837·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/assets/logo.png75 -rw-r--r--···0·root·········(0)·root·········(0)·····5837·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/assets/logo.png
76 -rw-r--r--···0·root·········(0)·root·········(0)·····6047·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/common_test.html76 -rw-r--r--···0·root·········(0)·root·········(0)·····6334·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/common_test.html
77 -rw-r--r--···0·root·········(0)·root·········(0)·····6058·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/compiler.html77 -rw-r--r--···0·root·········(0)·root·········(0)·····6330·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/compiler.html
78 -rw-r--r--···0·root·········(0)·root·········(0)·····6033·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/crypto.html78 -rw-r--r--···0·root·········(0)·root·········(0)·····6314·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/crypto.html
79 -rw-r--r--···0·root·········(0)·root·········(0)·····6038·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/debugger.html79 -rw-r--r--···0·root·········(0)·root·········(0)·····6322·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/debugger.html
80 -rw-r--r--···0·root·········(0)·root·········(0)····29810·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/deprecations.html80 -rw-r--r--···0·root·········(0)·root·········(0)····29810·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/deprecations.html
81 -rw-r--r--···0·root·········(0)·root·········(0)·····6119·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/design_principles.html81 -rw-r--r--···0·root·········(0)·root·········(0)·····6400·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/design_principles.html
82 -rw-r--r--···0·root·········(0)·root·········(0)·····6032·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dialyzer.html82 -rw-r--r--···0·root·········(0)·root·········(0)·····6315·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dialyzer.html
83 -rw-r--r--···0·root·········(0)·root·········(0)·····6039·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/diameter.html83 -rw-r--r--···0·root·········(0)·root·········(0)·····6324·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/diameter.html
84 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/84 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/
85 -rw-r--r--···0·root·········(0)·root·········(0)····20933·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/handlebars.runtime-CFQAK6SD.js85 -rw-r--r--···0·root·········(0)·root·········(0)····20933·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/handlebars.runtime-CFQAK6SD.js
86 -rw-r--r--···0·root·········(0)·root·········(0)····33580·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/handlebars.templates-K7URE6B4.js86 -rw-r--r--···0·root·········(0)·root·········(0)····33580·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/handlebars.templates-K7URE6B4.js
87 -rw-r--r--···0·root·········(0)·root·········(0)····70147·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/html-7HPNBV52.js87 -rw-r--r--···0·root·········(0)·root·········(0)····70147·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/html-7HPNBV52.js
88 -rw-r--r--···0·root·········(0)·root·········(0)····67195·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/html-erlang-G5LYFEUD.css88 -rw-r--r--···0·root·········(0)·root·········(0)····67195·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/html-erlang-G5LYFEUD.css
89 -rw-r--r--···0·root·········(0)·root·········(0)····17732·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/inconsolata-latin-400-normal-OXLHDACS.woff289 -rw-r--r--···0·root·········(0)·root·········(0)····17732·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/inconsolata-latin-400-normal-OXLHDACS.woff2
90 -rw-r--r--···0·root·········(0)·root·········(0)····17976·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/inconsolata-latin-700-normal-S55P5GAG.woff290 -rw-r--r--···0·root·········(0)·root·········(0)····17976·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/inconsolata-latin-700-normal-S55P5GAG.woff2
Offset 95, 58 lines modifiedOffset 95, 58 lines modified
95 -rw-r--r--···0·root·········(0)·root·········(0)····23236·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-300-normal-YUMVEFOL.woff295 -rw-r--r--···0·root·········(0)·root·········(0)····23236·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-300-normal-YUMVEFOL.woff2
96 -rw-r--r--···0·root·········(0)·root·········(0)····23580·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-400-normal-W7754I4D.woff296 -rw-r--r--···0·root·········(0)·root·········(0)····23580·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-400-normal-W7754I4D.woff2
97 -rw-r--r--···0·root·········(0)·root·········(0)····23040·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-700-normal-2XVSBPG4.woff297 -rw-r--r--···0·root·········(0)·root·········(0)····23040·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-700-normal-2XVSBPG4.woff2
98 -rw-r--r--···0·root·········(0)·root·········(0)·····5624·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-ext-300-normal-VPGGJKJL.woff298 -rw-r--r--···0·root·········(0)·root·········(0)·····5624·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
99 -rw-r--r--···0·root·········(0)·root·········(0)·····5472·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-ext-400-normal-N27NCBWW.woff299 -rw-r--r--···0·root·········(0)·root·········(0)·····5472·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-ext-400-normal-N27NCBWW.woff2
100 -rw-r--r--···0·root·········(0)·root·········(0)·····5368·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2100 -rw-r--r--···0·root·········(0)·root·········(0)·····5368·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
101 -rw-r--r--···0·root·········(0)·root·········(0)·····1956·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/remixicon-NKANDIL5.woff2101 -rw-r--r--···0·root·········(0)·root·········(0)·····1956·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/remixicon-NKANDIL5.woff2
102 -rw-r--r--···0·root·········(0)·root·········(0)···105688·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/search_data-B63DDADF.js102 -rw-r--r--···0·root·········(0)·root·········(0)···109746·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/search_data-6DCAA4BB.js
103 -rw-r--r--···0·root·········(0)·root·········(0)·····5163·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/sidebar_items-35348DA6.js103 -rw-r--r--···0·root·········(0)·root·········(0)·····9129·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/dist/sidebar_items-D0B3FEFA.js
104 -rw-r--r--···0·root·········(0)·root·········(0)·····5821·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/edoc.html104 -rw-r--r--···0·root·········(0)·root·········(0)·····6018·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/edoc.html
105 -rw-r--r--···0·root·········(0)·root·········(0)·····6105·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/efficiency_guide.html105 -rw-r--r--···0·root·········(0)·root·········(0)·····6372·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/efficiency_guide.html
106 -rw-r--r--···0·root·········(0)·root·········(0)·····6050·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/eldap.html106 -rw-r--r--···0·root·········(0)·root·········(0)·····6344·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/eldap.html
107 -rw-r--r--···0·root·········(0)·root·········(0)·····6076·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/embedded.html107 -rw-r--r--···0·root·········(0)·root·········(0)·····6336·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/embedded.html
108 -rw-r--r--···0·root·········(0)·root·········(0)·····6055·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/erl_interface.html108 -rw-r--r--···0·root·········(0)·root·········(0)·····6346·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/erl_interface.html
109 -rw-r--r--···0·root·········(0)·root·········(0)·····6022·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/erts.html109 -rw-r--r--···0·root·········(0)·root·········(0)·····6307·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/erts.html
110 -rw-r--r--···0·root·········(0)·root·········(0)·····6022·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/et.html110 -rw-r--r--···0·root·········(0)·root·········(0)·····6306·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/et.html
111 -rw-r--r--···0·root·········(0)·root·········(0)·····6034·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/eunit.html111 -rw-r--r--···0·root·········(0)·root·········(0)·····6322·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/eunit.html
112 -rw-r--r--···0·root·········(0)·root·········(0)·····6035·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/ftp.html112 -rw-r--r--···0·root·········(0)·root·········(0)·····6323·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/ftp.html
113 -rw-r--r--···0·root·········(0)·root·········(0)·····6123·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/getting_started.html113 -rw-r--r--···0·root·········(0)·root·········(0)·····6400·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/getting_started.html
114 -rw-r--r--···0·root·········(0)·root·········(0)······262·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/index.html114 -rw-r--r--···0·root·········(0)·root·········(0)······262·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/index.html
115 -rw-r--r--···0·root·········(0)·root·········(0)·····6031·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/inets.html115 -rw-r--r--···0·root·········(0)·root·········(0)·····6317·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/inets.html
116 -rw-r--r--···0·root·········(0)·root·········(0)·····6145·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/installation_guide.html116 -rw-r--r--···0·root·········(0)·root·········(0)·····6338·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/installation_guide.html
117 -rw-r--r--···0·root·········(0)·root·········(0)·····6050·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/jinterface.html117 -rw-r--r--···0·root·········(0)·root·········(0)·····6337·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/jinterface.html
118 -rw-r--r--···0·root·········(0)·root·········(0)·····6022·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/kernel.html118 -rw-r--r--···0·root·········(0)·root·········(0)·····6303·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/kernel.html
119 -rw-r--r--···0·root·········(0)·root·········(0)···172151·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/man_index.html119 -rw-r--r--···0·root·········(0)·root·········(0)···172151·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/man_index.html
120 -rw-r--r--···0·root·········(0)·root·········(0)·····6049·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/megaco.html120 -rw-r--r--···0·root·········(0)·root·········(0)·····6344·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/megaco.html
121 -rw-r--r--···0·root·········(0)·root·········(0)·····6030·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/mnesia.html121 -rw-r--r--···0·root·········(0)·root·········(0)·····6317·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/mnesia.html
122 -rw-r--r--···0·root·········(0)·root·········(0)·····6073·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/oam.html122 -rw-r--r--···0·root·········(0)·root·········(0)·····6319·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/oam.html
123 -rw-r--r--···0·root·········(0)·root·········(0)·····6037·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/observer.html123 -rw-r--r--···0·root·········(0)·root·········(0)·····6323·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/observer.html
124 -rw-r--r--···0·root·········(0)·root·········(0)·····6026·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/odbc.html124 -rw-r--r--···0·root·········(0)·root·········(0)·····6312·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/odbc.html
125 -rw-r--r--···0·root·········(0)·root·········(0)·····6019·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/os_mon.html125 -rw-r--r--···0·root·········(0)·root·········(0)·····6301·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/os_mon.html
126 -rw-r--r--···0·root·········(0)·root·········(0)·····6050·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/parsetools.html126 -rw-r--r--···0·root·········(0)·root·········(0)·····6341·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/parsetools.html
127 -rw-r--r--···0·root·········(0)·root·········(0)·····6126·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/programming_examples.html127 -rw-r--r--···0·root·········(0)·root·········(0)·····6406·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/programming_examples.html
128 -rw-r--r--···0·root·········(0)·root·········(0)·····6046·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/public_key.html128 -rw-r--r--···0·root·········(0)·root·········(0)·····6333·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/public_key.html
129 -rw-r--r--···0·root·········(0)·root·········(0)·····8585·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/readme.html129 -rw-r--r--···0·root·········(0)·root·········(0)·····8585·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/readme.html
130 -rw-r--r--···0·root·········(0)·root·········(0)·····6119·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/reference_manual.html130 -rw-r--r--···0·root·········(0)·root·········(0)·····6398·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/reference_manual.html
131 -rw-r--r--···0·root·········(0)·root·········(0)·····6056·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/reltool.html131 -rw-r--r--···0·root·········(0)·root·········(0)·····6351·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/reltool.html
132 -rw-r--r--···0·root·········(0)·root·········(0)····28132·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/removed.html132 -rw-r--r--···0·root·········(0)·root·········(0)····28132·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/removed.html
133 -rw-r--r--···0·root·········(0)·root·········(0)·····6070·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/runtime_tools.html133 -rw-r--r--···0·root·········(0)·root·········(0)·····6367·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/runtime_tools.html
134 -rw-r--r--···0·root·········(0)·root·········(0)·····6021·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/sasl.html134 -rw-r--r--···0·root·········(0)·root·········(0)·····6307·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/sasl.html
135 -rw-r--r--···0·root·········(0)·root·········(0)·····9502·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/scheduled_for_removal.html135 -rw-r--r--···0·root·········(0)·root·········(0)·····9502·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/scheduled_for_removal.html
136 -rw-r--r--···0·root·········(0)·root·········(0)·····5271·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/search.html136 -rw-r--r--···0·root·········(0)·root·········(0)·····5271·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/search.html
137 -rw-r--r--···0·root·········(0)·root·········(0)·····6015·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/snmp.html137 -rw-r--r--···0·root·········(0)·root·········(0)·····6294·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/snmp.html
138 -rw-r--r--···0·root·········(0)·root·········(0)·····6025·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/ssh.html138 -rw-r--r--···0·root·········(0)·root·········(0)·····6312·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/ssh.html
139 -rw-r--r--···0·root·········(0)·root·········(0)·····6014·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/ssl.html139 -rw-r--r--···0·root·········(0)·root·········(0)·····6292·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/ssl.html
140 -rw-r--r--···0·root·········(0)·root·········(0)·····6025·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/stdlib.html140 -rw-r--r--···0·root·········(0)·root·········(0)·····6311·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/stdlib.html
141 -rw-r--r--···0·root·········(0)·root·········(0)·····6064·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/syntax_tools.html141 -rw-r--r--···0·root·········(0)·root·········(0)·····6357·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/syntax_tools.html
142 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/142 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/
143 -rw-r--r--···0·root·········(0)·root·········(0)·····2387·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/.build143 -rw-r--r--···0·root·········(0)·root·········(0)·····2387·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/.build
144 -rw-r--r--···0·root·········(0)·root·········(0)·····5505·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/404.html144 -rw-r--r--···0·root·········(0)·root·········(0)·····5505·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/404.html
145 -rw-r--r--···0·root·········(0)·root·········(0)···635261·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/Erlang·System·Documentation.epub145 -rw-r--r--···0·root·········(0)·root·········(0)···635205·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/Erlang·System·Documentation.epub
146 -rw-r--r--···0·root·········(0)·root·········(0)····53232·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/applications.html146 -rw-r--r--···0·root·········(0)·root·········(0)····53232·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/applications.html
147 -rw-r--r--···0·root·········(0)·root·········(0)····97283·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/appup_cookbook.html147 -rw-r--r--···0·root·········(0)·root·········(0)····97283·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/appup_cookbook.html
148 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/148 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/
149 -rw-r--r--···0·root·········(0)·root·········(0)······687·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/dist1.gif149 -rw-r--r--···0·root·········(0)·root·········(0)······687·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/dist1.gif
150 -rw-r--r--···0·root·········(0)·root·········(0)·····1491·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/dist2.gif150 -rw-r--r--···0·root·········(0)·root·········(0)·····1491·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/dist2.gif
151 -rw-r--r--···0·root·········(0)·root·········(0)·····1108·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/dist3.gif151 -rw-r--r--···0·root·········(0)·root·········(0)·····1108·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/dist3.gif
152 -rw-r--r--···0·root·········(0)·root·········(0)······518·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/dist4.gif152 -rw-r--r--···0·root·········(0)·root·········(0)······518·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/assets/dist4.gif
Offset 185, 15 lines modifiedOffset 185, 15 lines modified
185 -rw-r--r--···0·root·········(0)·root·········(0)····23236·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-300-normal-YUMVEFOL.woff2185 -rw-r--r--···0·root·········(0)·root·········(0)····23236·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-300-normal-YUMVEFOL.woff2
186 -rw-r--r--···0·root·········(0)·root·········(0)····23580·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-400-normal-W7754I4D.woff2186 -rw-r--r--···0·root·········(0)·root·········(0)····23580·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-400-normal-W7754I4D.woff2
187 -rw-r--r--···0·root·········(0)·root·········(0)····23040·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-700-normal-2XVSBPG4.woff2187 -rw-r--r--···0·root·········(0)·root·········(0)····23040·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-700-normal-2XVSBPG4.woff2
188 -rw-r--r--···0·root·········(0)·root·········(0)·····5624·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-ext-300-normal-VPGGJKJL.woff2188 -rw-r--r--···0·root·········(0)·root·········(0)·····5624·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
189 -rw-r--r--···0·root·········(0)·root·········(0)·····5472·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-ext-400-normal-N27NCBWW.woff2189 -rw-r--r--···0·root·········(0)·root·········(0)·····5472·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-ext-400-normal-N27NCBWW.woff2
190 -rw-r--r--···0·root·········(0)·root·········(0)·····5368·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2190 -rw-r--r--···0·root·········(0)·root·········(0)·····5368·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
191 -rw-r--r--···0·root·········(0)·root·········(0)·····1956·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/remixicon-NKANDIL5.woff2191 -rw-r--r--···0·root·········(0)·root·········(0)·····1956·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/remixicon-NKANDIL5.woff2
192 -rw-r--r--···0·root·········(0)·root·········(0)··1026617·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/search_data-82F2C43B.js192 -rw-r--r--···0·root·········(0)·root·········(0)··1026617·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/search_data-EE0C1DEB.js
193 -rw-r--r--···0·root·········(0)·root·········(0)····32329·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/sidebar_items-976EDCF5.js193 -rw-r--r--···0·root·········(0)·root·········(0)····32329·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/dist/sidebar_items-976EDCF5.js
194 -rw-r--r--···0·root·········(0)·root·········(0)····29568·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/distributed.html194 -rw-r--r--···0·root·········(0)·root·········(0)····29568·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/distributed.html
195 -rw-r--r--···0·root·········(0)·root·········(0)····20469·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/distributed_applications.html195 -rw-r--r--···0·root·········(0)·root·········(0)····20469·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/distributed_applications.html
196 -rw-r--r--···0·root·········(0)·root·········(0)····52914·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/documentation.html196 -rw-r--r--···0·root·········(0)·root·········(0)····52914·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/documentation.html
197 -rw-r--r--···0·root·········(0)·root·········(0)····14873·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/drivers.html197 -rw-r--r--···0·root·········(0)·root·········(0)····14873·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/drivers.html
198 -rw-r--r--···0·root·········(0)·root·········(0)····26792·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/eff_guide_functions.html198 -rw-r--r--···0·root·········(0)·root·········(0)····26792·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/eff_guide_functions.html
199 -rw-r--r--···0·root·········(0)·root·········(0)····51958·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/eff_guide_processes.html199 -rw-r--r--···0·root·········(0)·root·········(0)····51958·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/eff_guide_processes.html
Offset 249, 21 lines modifiedOffset 249, 21 lines modified
249 -rw-r--r--···0·root·········(0)·root·········(0)····12535·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/system_limits.html249 -rw-r--r--···0·root·········(0)·root·········(0)····12535·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/system_limits.html
250 -rw-r--r--···0·root·········(0)·root·········(0)····18024·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/system_principles.html250 -rw-r--r--···0·root·········(0)·root·········(0)····18024·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/system_principles.html
251 -rw-r--r--···0·root·········(0)·root·········(0)····51799·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/tablesdatabases.html251 -rw-r--r--···0·root·········(0)·root·········(0)····51799·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/tablesdatabases.html
252 -rw-r--r--···0·root·········(0)·root·········(0)·····7678·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/tutorial.html252 -rw-r--r--···0·root·········(0)·root·········(0)·····7678·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/tutorial.html
253 -rw-r--r--···0·root·········(0)·root·········(0)····58409·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/typespec.html253 -rw-r--r--···0·root·········(0)·root·········(0)····58409·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/typespec.html
254 -rw-r--r--···0·root·········(0)·root·········(0)····10271·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/upgrade.html254 -rw-r--r--···0·root·········(0)·root·········(0)····10271·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/upgrade.html
255 -rw-r--r--···0·root·········(0)·root·········(0)····23480·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/versions.html255 -rw-r--r--···0·root·········(0)·root·········(0)····23480·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system/versions.html
256 -rw-r--r--···0·root·········(0)·root·········(0)·····6117·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system_principles.html256 -rw-r--r--···0·root·········(0)·root·········(0)·····6393·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/system_principles.html
257 -rw-r--r--···0·root·········(0)·root·········(0)·····6011·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/tftp.html257 -rw-r--r--···0·root·········(0)·root·········(0)·····6288·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/tftp.html
258 -rw-r--r--···0·root·········(0)·root·········(0)·····6046·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/tools.html258 -rw-r--r--···0·root·········(0)·root·········(0)·····6338·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-doc/html/doc/tools.html
Max diff block lines reached; 98236/123530 bytes (79.52%) of diff not shown.
12.8 KB
./usr/share/doc/erlang-doc/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
630 B
./usr/share/doc/erlang-doc/html/doc/.build
    
Offset 22, 16 lines modifiedOffset 22, 16 lines modified
22 dist/lato-latin-300-normal-YUMVEFOL.woff222 dist/lato-latin-300-normal-YUMVEFOL.woff2
23 dist/lato-latin-400-normal-W7754I4D.woff223 dist/lato-latin-400-normal-W7754I4D.woff2
24 dist/lato-latin-700-normal-2XVSBPG4.woff224 dist/lato-latin-700-normal-2XVSBPG4.woff2
25 dist/lato-latin-ext-300-normal-VPGGJKJL.woff225 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
26 dist/lato-latin-ext-400-normal-N27NCBWW.woff226 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
27 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff227 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
28 dist/remixicon-NKANDIL5.woff228 dist/remixicon-NKANDIL5.woff2
29 dist/search_data-B63DDADF.js29 dist/search_data-6DCAA4BB.js
30 dist/sidebar_items-35348DA6.js30 dist/sidebar_items-D0B3FEFA.js
31 edoc.html31 edoc.html
32 efficiency_guide.html32 efficiency_guide.html
33 eldap.html33 eldap.html
34 embedded.html34 embedded.html
35 erl_interface.html35 erl_interface.html
36 erts.html36 erts.html
37 et.html37 et.html
1.92 KB
./usr/share/doc/erlang-doc/html/doc/404.html
    
Offset 12, 15 lines modifiedOffset 12, 15 lines modified
  
12 ····<title>404··Erlang/OTP·v27.0.1</title>12 ····<title>404··Erlang/OTP·v27.0.1</title>
13 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>13 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
14 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>14 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
15 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>15 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
16 ····<script·src="dist/sidebar_items-35348DA6.js"></script>16 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
17 ····<script·src="docs_config.js"></script>17 ····<script·src="docs_config.js"></script>
18 ····<script·async·src="dist/html-7HPNBV52.js"></script>18 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
19 ··</head>19 ··</head>
20 ··<body·data-type="extras"·class="page-extra">20 ··<body·data-type="extras"·class="page-extra">
21 ····<script>21 ····<script>
  
Offset 127, 15 lines modifiedOffset 127, 15 lines modified
127 ······<p·class="built-using">127 ······<p·class="built-using">
128 ········Built·using128 ········Built·using
129 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the129 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
130 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>130 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
131 ······</p>131 ······</p>
132 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>132 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
133 ····</footer>133 ····</footer>
134 ··</div>134 ··</div>
135 </main>135 </main>
136 </div>136 </div>
137 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>137 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
138 <script>138 <script>
139 ··document.addEventListener("DOMContentLoaded",·function·()·{139 ··document.addEventListener("DOMContentLoaded",·function·()·{
603 B
html2text {}
Max HTML report size reached
4.11 KB
./usr/share/doc/erlang-doc/html/doc/asn1.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>asn1··Erlang/OTP·v27.0.1</title>9 ····<title>asn1\n\n<script>window.location.replace("../lib/asn1-5.3/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/asn1.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/asn1.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>asn1</span>112 ····<span>asn1\n\n&lt;script&gt;window.location.replace(&quot;../lib/asn1-5.3/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/asn1-5.3/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="snmp.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="snmp.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 snmp122 snmp\n\n<script>window.location.replace("../lib/snmp-5.16/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="crypto.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="crypto.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 crypto132 crypto\n\n<script>window.location.replace("../lib/crypto-5.5/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.05 KB
html2text {}
Max HTML report size reached
4.24 KB
./usr/share/doc/erlang-doc/html/doc/common_test.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>common_test··Erlang/OTP·v27.0.1</title>9 ····<title>common_test\n\n<script>window.location.replace("../lib/common_test-1.27/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/testing/common_test.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/testing/common_test.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>common_test</span>112 ····<span>common_test\n\n&lt;script&gt;window.location.replace(&quot;../lib/common_test-1.27/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/common_test-1.27/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="tools.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="tools.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 tools122 tools\n\n<script>window.location.replace("../lib/tools-4.0/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="eunit.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="eunit.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 eunit132 eunit\n\n<script>window.location.replace("../lib/eunit-2.9.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.12 KB
html2text {}
Max HTML report size reached
4.36 KB
./usr/share/doc/erlang-doc/html/doc/compiler.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>compiler··Erlang/OTP·v27.0.1</title>9 ····<title>compiler\n\n<script>window.location.replace("../lib/compiler-8.5.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/compiler.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/compiler.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>compiler</span>112 ····<span>compiler\n\n&lt;script&gt;window.location.replace(&quot;../lib/compiler-8.5.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/compiler-8.5.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="embedded.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="embedded.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 Embedded·Systems·User's·Guide122 Embedded·Systems·User's·Guide\n\n<script>window.location.replace("../doc/system/embedded.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="erts.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="erts.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 erts132 erts\n\n<script>window.location.replace("../erts-15.0.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.23 KB
html2text {}
Max HTML report size reached
4.16 KB
./usr/share/doc/erlang-doc/html/doc/crypto.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>crypto··Erlang/OTP·v27.0.1</title>9 ····<title>crypto\n\n<script>window.location.replace("../lib/crypto-5.5/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/crypto.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/crypto.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>crypto</span>112 ····<span>crypto\n\n&lt;script&gt;window.location.replace(&quot;../lib/crypto-5.5/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/crypto-5.5/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="asn1.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="asn1.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 asn1122 asn1\n\n<script>window.location.replace("../lib/asn1-5.3/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="diameter.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="diameter.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 diameter132 diameter\n\n<script>window.location.replace("../lib/diameter-2.4/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.08 KB
html2text {}
Max HTML report size reached
4.2 KB
./usr/share/doc/erlang-doc/html/doc/debugger.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>debugger··Erlang/OTP·v27.0.1</title>9 ····<title>debugger\n\n<script>window.location.replace("../lib/debugger-5.4/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/debugger.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/debugger.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>debugger</span>112 ····<span>debugger\n\n&lt;script&gt;window.location.replace(&quot;../lib/debugger-5.4/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/debugger-5.4/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="xmerl.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="xmerl.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 xmerl122 xmerl\n\n<script>window.location.replace("../lib/xmerl-2.0/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="dialyzer.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="dialyzer.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 dialyzer132 dialyzer\n\n<script>window.location.replace("../lib/dialyzer-5.2/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.1 KB
html2text {}
Max HTML report size reached
2.1 KB
./usr/share/doc/erlang-doc/html/doc/deprecations.html
    
Offset 10, 15 lines modifiedOffset 10, 15 lines modified
  
10 ····<title>Deprecations··Erlang/OTP·v27.0.1</title>10 ····<title>Deprecations··Erlang/OTP·v27.0.1</title>
11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
14 ····<script·src="dist/sidebar_items-35348DA6.js"></script>14 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
15 ····<script·src="docs_config.js"></script>15 ····<script·src="docs_config.js"></script>
16 ····<script·async·src="dist/html-7HPNBV52.js"></script>16 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
17 ··</head>17 ··</head>
18 ··<body·data-type="extras"·class="page-extra">18 ··<body·data-type="extras"·class="page-extra">
19 ····<script>19 ····<script>
  
Offset 459, 15 lines modifiedOffset 459, 15 lines modified
459 ······<p·class="built-using">459 ······<p·class="built-using">
460 ········Built·using460 ········Built·using
461 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the461 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
462 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>462 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
463 ······</p>463 ······</p>
464 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>464 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
465 ····</footer>465 ····</footer>
466 ··</div>466 ··</div>
467 </main>467 </main>
468 </div>468 </div>
469 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>469 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
470 <script>470 <script>
471 ··document.addEventListener("DOMContentLoaded",·function·()·{471 ··document.addEventListener("DOMContentLoaded",·function·()·{
760 B
html2text {}
Max HTML report size reached
4.54 KB
./usr/share/doc/erlang-doc/html/doc/design_principles.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>OTP·Design·Principles··Erlang/OTP·v27.0.1</title>9 ····<title>OTP·Design·Principles\n\n<script>window.location.replace("../doc/system/design_principles.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/design_principles.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/design_principles.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>OTP·Design·Principles</span>112 ····<span>OTP·Design·Principles\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/design_principles.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/design_principles.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="system_principles.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="system_principles.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 System·Principles122 System·Principles\n\n<script>window.location.replace("../doc/system/system_principles.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="programming_examples.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="programming_examples.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 Programming·Examples132 Programming·Examples\n\n<script>window.location.replace("../doc/system/programming_examples.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.3 KB
html2text {}
Max HTML report size reached
4.18 KB
./usr/share/doc/erlang-doc/html/doc/dialyzer.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>dialyzer··Erlang/OTP·v27.0.1</title>9 ····<title>dialyzer\n\n<script>window.location.replace("../lib/dialyzer-5.2/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/dialyzer.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/dialyzer.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>dialyzer</span>112 ····<span>dialyzer\n\n&lt;script&gt;window.location.replace(&quot;../lib/dialyzer-5.2/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/dialyzer-5.2/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="debugger.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="debugger.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 debugger122 debugger\n\n<script>window.location.replace("../lib/debugger-5.4/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="et.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="et.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 et132 et\n\n<script>window.location.replace("../lib/et-1.7.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.09 KB
html2text {}
Max HTML report size reached
4.19 KB
./usr/share/doc/erlang-doc/html/doc/diameter.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>diameter··Erlang/OTP·v27.0.1</title>9 ····<title>diameter\n\n<script>window.location.replace("../lib/diameter-2.4/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/diameter.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/diameter.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>diameter</span>112 ····<span>diameter\n\n&lt;script&gt;window.location.replace(&quot;../lib/diameter-2.4/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/diameter-2.4/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="crypto.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="crypto.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 crypto122 crypto\n\n<script>window.location.replace("../lib/crypto-5.5/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="eldap.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="eldap.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 eldap132 eldap\n\n<script>window.location.replace("../lib/eldap-1.2.13/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.09 KB
html2text {}
Max HTML report size reached
3.66 KB
./usr/share/doc/erlang-doc/html/doc/edoc.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>edoc··Erlang/OTP·v27.0.1</title>9 ····<title>edoc\n\n<script>window.location.replace("../lib/edoc-1.3.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 29 lines modifiedOffset 108, 29 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/documentation/edoc.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/documentation/edoc.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>edoc</span>112 ····<span>edoc\n\n&lt;script&gt;window.location.replace(&quot;../lib/edoc-1.3.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/edoc-1.3.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="eunit.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="eunit.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 eunit122 eunit\n\n<script>window.location.replace("../lib/eunit-2.9.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ··</div>127 ··</div>
Offset 149, 15 lines modifiedOffset 149, 15 lines modified
149 ······<p·class="built-using">149 ······<p·class="built-using">
150 ········Built·using150 ········Built·using
151 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the151 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
152 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>152 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
153 ······</p>153 ······</p>
154 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>154 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
155 ····</footer>155 ····</footer>
156 ··</div>156 ··</div>
157 </main>157 </main>
158 </div>158 </div>
159 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>159 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
160 <script>160 <script>
161 ··document.addEventListener("DOMContentLoaded",·function·()·{161 ··document.addEventListener("DOMContentLoaded",·function·()·{
965 B
html2text {}
Max HTML report size reached
4.55 KB
./usr/share/doc/erlang-doc/html/doc/efficiency_guide.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>Efficiency·Guide··Erlang/OTP·v27.0.1</title>9 ····<title>Efficiency·Guide\n\n<script>window.location.replace("../doc/system/efficiency_guide.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/efficiency_guide.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/efficiency_guide.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>Efficiency·Guide</span>112 ····<span>Efficiency·Guide\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/efficiency_guide.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/efficiency_guide.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="reference_manual.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="reference_manual.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 Erlang·Reference·Manual122 Erlang·Reference·Manual\n\n<script>window.location.replace("../doc/system/reference_manual.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="tutorial.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="tutorial.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 Interoperability·Tutorial132 Interoperability·Tutorial\n\n<script>window.location.replace("../doc/system/tutorial.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.34 KB
html2text {}
Max HTML report size reached
4.25 KB
./usr/share/doc/erlang-doc/html/doc/eldap.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>eldap··Erlang/OTP·v27.0.1</title>9 ····<title>eldap\n\n<script>window.location.replace("../lib/eldap-1.2.13/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/eldap.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/eldap.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>eldap</span>112 ····<span>eldap\n\n&lt;script&gt;window.location.replace(&quot;../lib/eldap-1.2.13/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/eldap-1.2.13/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="diameter.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="diameter.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 diameter122 diameter\n\n<script>window.location.replace("../lib/diameter-2.4/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="erl_interface.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="erl_interface.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 erl_interface132 erl_interface\n\n<script>window.location.replace("../lib/erl_interface-5.5.2/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.13 KB
html2text {}
Max HTML report size reached
4.38 KB
./usr/share/doc/erlang-doc/html/doc/embedded.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>Embedded·Systems·User's·Guide··Erlang/OTP·v27.0.1</title>9 ····<title>Embedded·Systems·User's·Guide\n\n<script>window.location.replace("../doc/system/embedded.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/embedded.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/embedded.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>Embedded·Systems·User's·Guide</span>112 ····<span>Embedded·Systems·User's·Guide\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/embedded.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/embedded.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="oam.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="oam.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 OAM·Principles122 OAM·Principles\n\n<script>window.location.replace("../doc/system/oam.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="compiler.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="compiler.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 compiler132 compiler\n\n<script>window.location.replace("../lib/compiler-8.5.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.23 KB
html2text {}
Max HTML report size reached
4.27 KB
./usr/share/doc/erlang-doc/html/doc/erl_interface.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>erl_interface··Erlang/OTP·v27.0.1</title>9 ····<title>erl_interface\n\n<script>window.location.replace("../lib/erl_interface-5.5.2/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/erl_interface.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/erl_interface.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>erl_interface</span>112 ····<span>erl_interface\n\n&lt;script&gt;window.location.replace(&quot;../lib/erl_interface-5.5.2/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/erl_interface-5.5.2/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="eldap.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="eldap.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 eldap122 eldap\n\n<script>window.location.replace("../lib/eldap-1.2.13/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="ftp.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="ftp.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 ftp132 ftp\n\n<script>window.location.replace("../lib/ftp-1.2.2/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.12 KB
html2text {}
Max HTML report size reached
4.14 KB
./usr/share/doc/erlang-doc/html/doc/erts.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>erts··Erlang/OTP·v27.0.1</title>9 ····<title>erts\n\n<script>window.location.replace("../erts-15.0.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/erts.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/erts.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>erts</span>112 ····<span>erts\n\n&lt;script&gt;window.location.replace(&quot;../erts-15.0.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../erts-15.0.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="compiler.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="compiler.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 compiler122 compiler\n\n<script>window.location.replace("../lib/compiler-8.5.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="kernel.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="kernel.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 kernel132 kernel\n\n<script>window.location.replace("../lib/kernel-10.0.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.07 KB
html2text {}
Max HTML report size reached
4.13 KB
./usr/share/doc/erlang-doc/html/doc/et.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>et··Erlang/OTP·v27.0.1</title>9 ····<title>et\n\n<script>window.location.replace("../lib/et-1.7.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/et.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/et.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>et</span>112 ····<span>et\n\n&lt;script&gt;window.location.replace(&quot;../lib/et-1.7.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/et-1.7.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="dialyzer.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="dialyzer.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 dialyzer122 dialyzer\n\n<script>window.location.replace("../lib/dialyzer-5.2/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="observer.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="observer.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 observer132 observer\n\n<script>window.location.replace("../lib/observer-2.16/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.08 KB
html2text {}
Max HTML report size reached
4.18 KB
./usr/share/doc/erlang-doc/html/doc/eunit.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>eunit··Erlang/OTP·v27.0.1</title>9 ····<title>eunit\n\n<script>window.location.replace("../lib/eunit-2.9.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/testing/eunit.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/testing/eunit.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>eunit</span>112 ····<span>eunit\n\n&lt;script&gt;window.location.replace(&quot;../lib/eunit-2.9.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/eunit-2.9.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="common_test.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="common_test.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 common_test122 common_test\n\n<script>window.location.replace("../lib/common_test-1.27/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="edoc.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="edoc.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 edoc132 edoc\n\n<script>window.location.replace("../lib/edoc-1.3.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.1 KB
html2text {}
Max HTML report size reached
4.18 KB
./usr/share/doc/erlang-doc/html/doc/ftp.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>ftp··Erlang/OTP·v27.0.1</title>9 ····<title>ftp\n\n<script>window.location.replace("../lib/ftp-1.2.2/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/ftp.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/ftp.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>ftp</span>112 ····<span>ftp\n\n&lt;script&gt;window.location.replace(&quot;../lib/ftp-1.2.2/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/ftp-1.2.2/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="erl_interface.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="erl_interface.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 erl_interface122 erl_interface\n\n<script>window.location.replace("../lib/erl_interface-5.5.2/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="inets.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="inets.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 inets132 inets\n\n<script>window.location.replace("../lib/inets-9.2/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.1 KB
html2text {}
Max HTML report size reached
4.56 KB
./usr/share/doc/erlang-doc/html/doc/getting_started.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>Getting·Started·With·Erlang··Erlang/OTP·v27.0.1</title>9 ····<title>Getting·Started·With·Erlang\n\n<script>window.location.replace("../doc/system/getting_started.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/getting_started.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/getting_started.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>Getting·Started·With·Erlang</span>112 ····<span>Getting·Started·With·Erlang\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/getting_started.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/getting_started.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="installation_guide.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="installation_guide.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 Installation·Guide122 Installation·Guide\n\n<script>window.location.replace("../doc/system/installation_guide.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="system_principles.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="system_principles.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 System·Principles132 System·Principles\n\n<script>window.location.replace("../doc/system/system_principles.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.32 KB
html2text {}
Max HTML report size reached
4.16 KB
./usr/share/doc/erlang-doc/html/doc/inets.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>inets··Erlang/OTP·v27.0.1</title>9 ····<title>inets\n\n<script>window.location.replace("../lib/inets-9.2/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/inets.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/inets.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>inets</span>112 ····<span>inets\n\n&lt;script&gt;window.location.replace(&quot;../lib/inets-9.2/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/inets-9.2/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="ftp.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="ftp.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 ftp122 ftp\n\n<script>window.location.replace("../lib/ftp-1.2.2/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="jinterface.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="jinterface.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 jinterface132 jinterface\n\n<script>window.location.replace("../lib/jinterface-1.14.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.08 KB
html2text {}
Max HTML report size reached
4.32 KB
./usr/share/doc/erlang-doc/html/doc/installation_guide.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>Installation·Guide··Erlang/OTP·v27.0.1</title>9 ····<title>Installation·Guide\n\n<script>window.location.replace("../doc/system/installation_guide.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 18 lines modifiedOffset 108, 18 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/installation_guide.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/installation_guide.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>Installation·Guide</span>112 ····<span>Installation·Guide\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/installation_guide.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/installation_guide.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="upcoming_incompatibilities.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="upcoming_incompatibilities.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
Offset 134, 15 lines modifiedOffset 134, 15 lines modified
134 ··<div·class="bottom-actions-item">134 ··<div·class="bottom-actions-item">
  
135 ······<a·href="getting_started.html"·class="bottom-actions-button"·rel="next">135 ······<a·href="getting_started.html"·class="bottom-actions-button"·rel="next">
136 ········<span·class="subheader">136 ········<span·class="subheader">
137 ··········Next·Page·137 ··········Next·Page·
138 ········</span>138 ········</span>
139 ········<span·class="title">139 ········<span·class="title">
140 Getting·Started·With·Erlang140 Getting·Started·With·Erlang\n\n<script>window.location.replace("../doc/system/getting_started.html")</script>
141 ········</span>141 ········</span>
142 ······</a>142 ······</a>
  
143 ··</div>143 ··</div>
144 </div>144 </div>
145 ····<footer·class="footer">145 ····<footer·class="footer">
146 ······<p>146 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.28 KB
html2text {}
Max HTML report size reached
4.24 KB
./usr/share/doc/erlang-doc/html/doc/jinterface.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>jinterface··Erlang/OTP·v27.0.1</title>9 ····<title>jinterface\n\n<script>window.location.replace("../lib/jinterface-1.14.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/jinterface.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/jinterface.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>jinterface</span>112 ····<span>jinterface\n\n&lt;script&gt;window.location.replace(&quot;../lib/jinterface-1.14.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/jinterface-1.14.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="inets.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="inets.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 inets122 inets\n\n<script>window.location.replace("../lib/inets-9.2/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="megaco.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="megaco.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 megaco132 megaco\n\n<script>window.location.replace("../lib/megaco-4.6/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.12 KB
html2text {}
Max HTML report size reached
4.14 KB
./usr/share/doc/erlang-doc/html/doc/kernel.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>kernel··Erlang/OTP·v27.0.1</title>9 ····<title>kernel\n\n<script>window.location.replace("../lib/kernel-10.0.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/kernel.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/kernel.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>kernel</span>112 ····<span>kernel\n\n&lt;script&gt;window.location.replace(&quot;../lib/kernel-10.0.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/kernel-10.0.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="erts.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="erts.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 erts122 erts\n\n<script>window.location.replace("../erts-15.0.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="sasl.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="sasl.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 sasl132 sasl\n\n<script>window.location.replace("../lib/sasl-4.2.2/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.07 KB
html2text {}
Max HTML report size reached
2.04 KB
./usr/share/doc/erlang-doc/html/doc/man_index.html
    
Offset 10, 15 lines modifiedOffset 10, 15 lines modified
  
10 ····<title>Module·Index··Erlang/OTP·v27.0.1</title>10 ····<title>Module·Index··Erlang/OTP·v27.0.1</title>
11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
14 ····<script·src="dist/sidebar_items-35348DA6.js"></script>14 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
15 ····<script·src="docs_config.js"></script>15 ····<script·src="docs_config.js"></script>
16 ····<script·async·src="dist/html-7HPNBV52.js"></script>16 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
17 ··</head>17 ··</head>
18 ··<body·data-type="extras"·class="page-extra">18 ··<body·data-type="extras"·class="page-extra">
19 ····<script>19 ····<script>
  
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
714 B
html2text {}
Max HTML report size reached
4.25 KB
./usr/share/doc/erlang-doc/html/doc/megaco.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>megaco··Erlang/OTP·v27.0.1</title>9 ····<title>megaco\n\n<script>window.location.replace("../lib/megaco-4.6/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/megaco.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/megaco.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>megaco</span>112 ····<span>megaco\n\n&lt;script&gt;window.location.replace(&quot;../lib/megaco-4.6/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/megaco-4.6/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="jinterface.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="jinterface.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 jinterface122 jinterface\n\n<script>window.location.replace("../lib/jinterface-1.14.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="public_key.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="public_key.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 public_key132 public_key\n\n<script>window.location.replace("../lib/public_key-1.16.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.13 KB
html2text {}
Max HTML report size reached
4.16 KB
./usr/share/doc/erlang-doc/html/doc/mnesia.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>mnesia··Erlang/OTP·v27.0.1</title>9 ····<title>mnesia\n\n<script>window.location.replace("../lib/mnesia-4.23.2/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/database/mnesia.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/database/mnesia.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>mnesia</span>112 ····<span>mnesia\n\n&lt;script&gt;window.location.replace(&quot;../lib/mnesia-4.23.2/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/mnesia-4.23.2/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="stdlib.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="stdlib.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 stdlib122 stdlib\n\n<script>window.location.replace("../lib/stdlib-6.0.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="odbc.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="odbc.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 odbc132 odbc\n\n<script>window.location.replace("../lib/odbc-2.14.3/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.08 KB
html2text {}
Max HTML report size reached
4.45 KB
./usr/share/doc/erlang-doc/html/doc/oam.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>OAM·Principles··Erlang/OTP·v27.0.1</title>9 ····<title>OAM·Principles\n\n<script>window.location.replace("../doc/system/oam.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/oam.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/oam.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>OAM·Principles</span>112 ····<span>OAM·Principles\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/oam.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/oam.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="tutorial.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="tutorial.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 Interoperability·Tutorial122 Interoperability·Tutorial\n\n<script>window.location.replace("../doc/system/tutorial.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="embedded.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="embedded.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 Embedded·Systems·User's·Guide132 Embedded·Systems·User's·Guide\n\n<script>window.location.replace("../doc/system/embedded.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.33 KB
html2text {}
Max HTML report size reached
4.2 KB
./usr/share/doc/erlang-doc/html/doc/observer.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>observer··Erlang/OTP·v27.0.1</title>9 ····<title>observer\n\n<script>window.location.replace("../lib/observer-2.16/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/observer.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/observer.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>observer</span>112 ····<span>observer\n\n&lt;script&gt;window.location.replace(&quot;../lib/observer-2.16/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/observer-2.16/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="et.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="et.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 et122 et\n\n<script>window.location.replace("../lib/et-1.7.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="parsetools.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="parsetools.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 parsetools132 parsetools\n\n<script>window.location.replace("../lib/parsetools-2.6/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.1 KB
html2text {}
Max HTML report size reached
4.14 KB
./usr/share/doc/erlang-doc/html/doc/odbc.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>odbc··Erlang/OTP·v27.0.1</title>9 ····<title>odbc\n\n<script>window.location.replace("../lib/odbc-2.14.3/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/database/odbc.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/database/odbc.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>odbc</span>112 ····<span>odbc\n\n&lt;script&gt;window.location.replace(&quot;../lib/odbc-2.14.3/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/odbc-2.14.3/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="mnesia.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="mnesia.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 mnesia122 mnesia\n\n<script>window.location.replace("../lib/mnesia-4.23.2/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="os_mon.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="os_mon.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 os_mon132 os_mon\n\n<script>window.location.replace("../lib/os_mon-2.10/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.07 KB
html2text {}
Max HTML report size reached
4.13 KB
./usr/share/doc/erlang-doc/html/doc/os_mon.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>os_mon··Erlang/OTP·v27.0.1</title>9 ····<title>os_mon\n\n<script>window.location.replace("../lib/os_mon-2.10/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/oam/os_mon.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/oam/os_mon.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>os_mon</span>112 ····<span>os_mon\n\n&lt;script&gt;window.location.replace(&quot;../lib/os_mon-2.10/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/os_mon-2.10/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="odbc.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="odbc.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 odbc122 odbc\n\n<script>window.location.replace("../lib/odbc-2.14.3/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="snmp.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="snmp.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 snmp132 snmp\n\n<script>window.location.replace("../lib/snmp-5.16/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.06 KB
html2text {}
Max HTML report size reached
4.26 KB
./usr/share/doc/erlang-doc/html/doc/parsetools.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>parsetools··Erlang/OTP·v27.0.1</title>9 ····<title>parsetools\n\n<script>window.location.replace("../lib/parsetools-2.6/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/parsetools.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/parsetools.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>parsetools</span>112 ····<span>parsetools\n\n&lt;script&gt;window.location.replace(&quot;../lib/parsetools-2.6/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/parsetools-2.6/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="observer.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="observer.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 observer122 observer\n\n<script>window.location.replace("../lib/observer-2.16/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="reltool.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="reltool.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 reltool132 reltool\n\n<script>window.location.replace("../lib/reltool-1.0.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.13 KB
html2text {}
Max HTML report size reached
4.61 KB
./usr/share/doc/erlang-doc/html/doc/programming_examples.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>Programming·Examples··Erlang/OTP·v27.0.1</title>9 ····<title>Programming·Examples\n\n<script>window.location.replace("../doc/system/programming_examples.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/programming_examples.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/programming_examples.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>Programming·Examples</span>112 ····<span>Programming·Examples\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/programming_examples.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/programming_examples.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="design_principles.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="design_principles.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 OTP·Design·Principles122 OTP·Design·Principles\n\n<script>window.location.replace("../doc/system/design_principles.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="reference_manual.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="reference_manual.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 Erlang·Reference·Manual132 Erlang·Reference·Manual\n\n<script>window.location.replace("../doc/system/reference_manual.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.35 KB
html2text {}
Max HTML report size reached
4.23 KB
./usr/share/doc/erlang-doc/html/doc/public_key.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>public_key··Erlang/OTP·v27.0.1</title>9 ····<title>public_key\n\n<script>window.location.replace("../lib/public_key-1.16.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/public_key.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/public_key.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>public_key</span>112 ····<span>public_key\n\n&lt;script&gt;window.location.replace(&quot;../lib/public_key-1.16.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/public_key-1.16.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="megaco.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="megaco.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 megaco122 megaco\n\n<script>window.location.replace("../lib/megaco-4.6/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="ssh.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="ssh.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 ssh132 ssh\n\n<script>window.location.replace("../lib/ssh-5.2.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.11 KB
html2text {}
Max HTML report size reached
2.13 KB
./usr/share/doc/erlang-doc/html/doc/readme.html
    
Offset 10, 15 lines modifiedOffset 10, 15 lines modified
  
10 ····<title>Erlang/OTP·27.0.1··Erlang/OTP·v27.0.1</title>10 ····<title>Erlang/OTP·27.0.1··Erlang/OTP·v27.0.1</title>
11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
14 ····<script·src="dist/sidebar_items-35348DA6.js"></script>14 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
15 ····<script·src="docs_config.js"></script>15 ····<script·src="docs_config.js"></script>
16 ····<script·async·src="dist/html-7HPNBV52.js"></script>16 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
17 ··</head>17 ··</head>
18 ··<body·data-type="extras"·class="page-extra">18 ··<body·data-type="extras"·class="page-extra">
19 ····<script>19 ····<script>
  
Offset 149, 15 lines modifiedOffset 149, 15 lines modified
149 ······<p·class="built-using">149 ······<p·class="built-using">
150 ········Built·using150 ········Built·using
151 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the151 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
152 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>152 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
153 ······</p>153 ······</p>
154 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>154 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
155 ····</footer>155 ····</footer>
156 ··</div>156 ··</div>
157 </main>157 </main>
158 </div>158 </div>
159 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>159 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
160 <script>160 <script>
161 ··document.addEventListener("DOMContentLoaded",·function·()·{161 ··document.addEventListener("DOMContentLoaded",·function·()·{
800 B
html2text {}
Max HTML report size reached
4.54 KB
./usr/share/doc/erlang-doc/html/doc/reference_manual.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>Erlang·Reference·Manual··Erlang/OTP·v27.0.1</title>9 ····<title>Erlang·Reference·Manual\n\n<script>window.location.replace("../doc/system/reference_manual.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/reference_manual.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/reference_manual.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>Erlang·Reference·Manual</span>112 ····<span>Erlang·Reference·Manual\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/reference_manual.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/reference_manual.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="programming_examples.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="programming_examples.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 Programming·Examples122 Programming·Examples\n\n<script>window.location.replace("../doc/system/programming_examples.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="efficiency_guide.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="efficiency_guide.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 Efficiency·Guide132 Efficiency·Guide\n\n<script>window.location.replace("../doc/system/efficiency_guide.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.31 KB
html2text {}
Max HTML report size reached
4.29 KB
./usr/share/doc/erlang-doc/html/doc/reltool.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>reltool··Erlang/OTP·v27.0.1</title>9 ····<title>reltool\n\n<script>window.location.replace("../lib/reltool-1.0.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/reltool.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/reltool.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>reltool</span>112 ····<span>reltool\n\n&lt;script&gt;window.location.replace(&quot;../lib/reltool-1.0.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/reltool-1.0.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="parsetools.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="parsetools.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 parsetools122 parsetools\n\n<script>window.location.replace("../lib/parsetools-2.6/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="runtime_tools.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="runtime_tools.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 runtime_tools132 runtime_tools\n\n<script>window.location.replace("../lib/runtime_tools-2.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.16 KB
html2text {}
Max HTML report size reached
2.04 KB
./usr/share/doc/erlang-doc/html/doc/removed.html
    
Offset 10, 15 lines modifiedOffset 10, 15 lines modified
  
10 ····<title>Removed·Functionality··Erlang/OTP·v27.0.1</title>10 ····<title>Removed·Functionality··Erlang/OTP·v27.0.1</title>
11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
14 ····<script·src="dist/sidebar_items-35348DA6.js"></script>14 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
15 ····<script·src="docs_config.js"></script>15 ····<script·src="docs_config.js"></script>
16 ····<script·async·src="dist/html-7HPNBV52.js"></script>16 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
17 ··</head>17 ··</head>
18 ··<body·data-type="extras"·class="page-extra">18 ··<body·data-type="extras"·class="page-extra">
19 ····<script>19 ····<script>
  
Offset 388, 15 lines modifiedOffset 388, 15 lines modified
388 ······<p·class="built-using">388 ······<p·class="built-using">
389 ········Built·using389 ········Built·using
390 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the390 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
391 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>391 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
392 ······</p>392 ······</p>
393 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>393 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
394 ····</footer>394 ····</footer>
395 ··</div>395 ··</div>
396 </main>396 </main>
397 </div>397 </div>
398 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>398 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
399 <script>399 <script>
400 ··document.addEventListener("DOMContentLoaded",·function·()·{400 ··document.addEventListener("DOMContentLoaded",·function·()·{
700 B
html2text {}
Max HTML report size reached
4.36 KB
./usr/share/doc/erlang-doc/html/doc/runtime_tools.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>runtime_tools··Erlang/OTP·v27.0.1</title>9 ····<title>runtime_tools\n\n<script>window.location.replace("../lib/runtime_tools-2.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/runtime_tools.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/runtime_tools.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>runtime_tools</span>112 ····<span>runtime_tools\n\n&lt;script&gt;window.location.replace(&quot;../lib/runtime_tools-2.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/runtime_tools-2.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="reltool.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="reltool.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 reltool122 reltool\n\n<script>window.location.replace("../lib/reltool-1.0.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="syntax_tools.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="syntax_tools.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 syntax_tools132 syntax_tools\n\n<script>window.location.replace("../lib/syntax_tools-3.2/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.18 KB
html2text {}
Max HTML report size reached
4.14 KB
./usr/share/doc/erlang-doc/html/doc/sasl.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>sasl··Erlang/OTP·v27.0.1</title>9 ····<title>sasl\n\n<script>window.location.replace("../lib/sasl-4.2.2/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/sasl.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/sasl.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>sasl</span>112 ····<span>sasl\n\n&lt;script&gt;window.location.replace(&quot;../lib/sasl-4.2.2/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/sasl-4.2.2/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="kernel.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="kernel.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 kernel122 kernel\n\n<script>window.location.replace("../lib/kernel-10.0.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="stdlib.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="stdlib.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 stdlib132 stdlib\n\n<script>window.location.replace("../lib/stdlib-6.0.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.07 KB
html2text {}
Max HTML report size reached
2.1 KB
./usr/share/doc/erlang-doc/html/doc/scheduled_for_removal.html
    
Offset 10, 15 lines modifiedOffset 10, 15 lines modified
  
10 ····<title>Scheduled·for·Removal··Erlang/OTP·v27.0.1</title>10 ····<title>Scheduled·for·Removal··Erlang/OTP·v27.0.1</title>
11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
14 ····<script·src="dist/sidebar_items-35348DA6.js"></script>14 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
15 ····<script·src="docs_config.js"></script>15 ····<script·src="docs_config.js"></script>
16 ····<script·async·src="dist/html-7HPNBV52.js"></script>16 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
17 ··</head>17 ··</head>
18 ··<body·data-type="extras"·class="page-extra">18 ··<body·data-type="extras"·class="page-extra">
19 ····<script>19 ····<script>
  
Offset 212, 15 lines modifiedOffset 212, 15 lines modified
212 ······<p·class="built-using">212 ······<p·class="built-using">
213 ········Built·using213 ········Built·using
214 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the214 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
215 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>215 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
216 ······</p>216 ······</p>
217 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>217 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
218 ····</footer>218 ····</footer>
219 ··</div>219 ··</div>
220 </main>220 </main>
221 </div>221 </div>
222 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>222 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
223 <script>223 <script>
224 ··document.addEventListener("DOMContentLoaded",·function·()·{224 ··document.addEventListener("DOMContentLoaded",·function·()·{
740 B
html2text {}
Max HTML report size reached
2.23 KB
./usr/share/doc/erlang-doc/html/doc/search.html
    
Offset 12, 15 lines modifiedOffset 12, 15 lines modified
  
12 ····<title>Search··Erlang/OTP·v27.0.1</title>12 ····<title>Search··Erlang/OTP·v27.0.1</title>
13 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>13 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
14 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>14 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
15 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>15 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
16 ····<script·src="dist/sidebar_items-35348DA6.js"></script>16 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
17 ····<script·src="docs_config.js"></script>17 ····<script·src="docs_config.js"></script>
18 ····<script·async·src="dist/html-7HPNBV52.js"></script>18 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
19 ··</head>19 ··</head>
20 ··<body·data-type="search"·class="page-search">20 ··<body·data-type="search"·class="page-search">
21 ····<script>21 ····<script>
  
Offset 108, 15 lines modifiedOffset 108, 15 lines modified
108 <div·id="search">108 <div·id="search">
109 ··<h1>109 ··<h1>
110 ····<span></span>110 ····<span></span>
111 ··</h1>111 ··</h1>
  
112 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>112 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
113 </div>113 </div>
114 <script·src="dist/search_data-B63DDADF.js"></script>114 <script·src="dist/search_data-6DCAA4BB.js"></script>
115 ····<footer·class="footer">115 ····<footer·class="footer">
116 ······<p>116 ······<p>
  
117 ········<span·class="line">117 ········<span·class="line">
118 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">118 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
119 ············Search·HexDocs119 ············Search·HexDocs
120 ··········</button>120 ··········</button>
Offset 127, 15 lines modifiedOffset 127, 15 lines modified
127 ······<p·class="built-using">127 ······<p·class="built-using">
128 ········Built·using128 ········Built·using
129 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the129 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
130 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>130 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
131 ······</p>131 ······</p>
132 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>132 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
133 ····</footer>133 ····</footer>
134 ··</div>134 ··</div>
135 </main>135 </main>
136 </div>136 </div>
137 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>137 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
138 <script>138 <script>
139 ··document.addEventListener("DOMContentLoaded",·function·()·{139 ··document.addEventListener("DOMContentLoaded",·function·()·{
421 B
html2text {}
Max HTML report size reached
4.11 KB
./usr/share/doc/erlang-doc/html/doc/snmp.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>snmp··Erlang/OTP·v27.0.1</title>9 ····<title>snmp\n\n<script>window.location.replace("../lib/snmp-5.16/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/oam/snmp.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/oam/snmp.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>snmp</span>112 ····<span>snmp\n\n&lt;script&gt;window.location.replace(&quot;../lib/snmp-5.16/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/snmp-5.16/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="os_mon.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="os_mon.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 os_mon122 os_mon\n\n<script>window.location.replace("../lib/os_mon-2.10/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="asn1.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="asn1.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 asn1132 asn1\n\n<script>window.location.replace("../lib/asn1-5.3/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.05 KB
html2text {}
Max HTML report size reached
4.13 KB
./usr/share/doc/erlang-doc/html/doc/ssh.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>ssh··Erlang/OTP·v27.0.1</title>9 ····<title>ssh\n\n<script>window.location.replace("../lib/ssh-5.2.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/ssh.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/ssh.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>ssh</span>112 ····<span>ssh\n\n&lt;script&gt;window.location.replace(&quot;../lib/ssh-5.2.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/ssh-5.2.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="public_key.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="public_key.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 public_key122 public_key\n\n<script>window.location.replace("../lib/public_key-1.16.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="ssl.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="ssl.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 ssl132 ssl\n\n<script>window.location.replace("../lib/ssl-11.2.1/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.07 KB
html2text {}
Max HTML report size reached
4.08 KB
./usr/share/doc/erlang-doc/html/doc/ssl.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>ssl··Erlang/OTP·v27.0.1</title>9 ····<title>ssl\n\n<script>window.location.replace("../lib/ssl-11.2.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/ssl.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/ssl.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>ssl</span>112 ····<span>ssl\n\n&lt;script&gt;window.location.replace(&quot;../lib/ssl-11.2.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/ssl-11.2.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="ssh.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="ssh.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 ssh122 ssh\n\n<script>window.location.replace("../lib/ssh-5.2.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="tftp.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="tftp.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 tftp132 tftp\n\n<script>window.location.replace("../lib/tftp-1.2/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.03 KB
html2text {}
Max HTML report size reached
4.15 KB
./usr/share/doc/erlang-doc/html/doc/stdlib.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>stdlib··Erlang/OTP·v27.0.1</title>9 ····<title>stdlib\n\n<script>window.location.replace("../lib/stdlib-6.0.1/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/stdlib.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/core/stdlib.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>stdlib</span>112 ····<span>stdlib\n\n&lt;script&gt;window.location.replace(&quot;../lib/stdlib-6.0.1/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/stdlib-6.0.1/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="sasl.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="sasl.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 sasl122 sasl\n\n<script>window.location.replace("../lib/sasl-4.2.2/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="mnesia.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="mnesia.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 mnesia132 mnesia\n\n<script>window.location.replace("../lib/mnesia-4.23.2/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.08 KB
html2text {}
Max HTML report size reached
4.33 KB
./usr/share/doc/erlang-doc/html/doc/syntax_tools.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>syntax_tools··Erlang/OTP·v27.0.1</title>9 ····<title>syntax_tools\n\n<script>window.location.replace("../lib/syntax_tools-3.2/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/syntax_tools.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/syntax_tools.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>syntax_tools</span>112 ····<span>syntax_tools\n\n&lt;script&gt;window.location.replace(&quot;../lib/syntax_tools-3.2/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/syntax_tools-3.2/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="runtime_tools.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="runtime_tools.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 runtime_tools122 runtime_tools\n\n<script>window.location.replace("../lib/runtime_tools-2.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="tools.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="tools.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 tools132 tools\n\n<script>window.location.replace("../lib/tools-4.0/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.17 KB
html2text {}
Max HTML report size reached
646 B
./usr/share/doc/erlang-doc/html/doc/system/.build
    
Offset 40, 15 lines modifiedOffset 40, 15 lines modified
40 dist/lato-latin-300-normal-YUMVEFOL.woff240 dist/lato-latin-300-normal-YUMVEFOL.woff2
41 dist/lato-latin-400-normal-W7754I4D.woff241 dist/lato-latin-400-normal-W7754I4D.woff2
42 dist/lato-latin-700-normal-2XVSBPG4.woff242 dist/lato-latin-700-normal-2XVSBPG4.woff2
43 dist/lato-latin-ext-300-normal-VPGGJKJL.woff243 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
44 dist/lato-latin-ext-400-normal-N27NCBWW.woff244 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
45 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff245 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
46 dist/remixicon-NKANDIL5.woff246 dist/remixicon-NKANDIL5.woff2
47 dist/search_data-82F2C43B.js47 dist/search_data-EE0C1DEB.js
48 dist/sidebar_items-976EDCF5.js48 dist/sidebar_items-976EDCF5.js
49 distributed.html49 distributed.html
50 distributed_applications.html50 distributed_applications.html
51 documentation.html51 documentation.html
52 drivers.html52 drivers.html
53 eff_guide_functions.html53 eff_guide_functions.html
54 eff_guide_processes.html54 eff_guide_processes.html
1.45 KB
./usr/share/doc/erlang-doc/html/doc/system/404.html
    
Offset 131, 15 lines modifiedOffset 131, 15 lines modified
131 ······<p·class="built-using">131 ······<p·class="built-using">
132 ········Built·using132 ········Built·using
133 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the133 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
134 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>134 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
135 ······</p>135 ······</p>
136 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>136 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
137 ····</footer>137 ····</footer>
138 ··</div>138 ··</div>
139 </main>139 </main>
140 </div>140 </div>
141 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>141 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
142 <script>142 <script>
143 ··document.addEventListener("DOMContentLoaded",·function·()·{143 ··document.addEventListener("DOMContentLoaded",·function·()·{
684 B
html2text {}
Max HTML report size reached
4.07 MB
./usr/share/doc/erlang-doc/html/doc/system/Erlang System Documentation.epub
14.8 KB
zipinfo {}
Max HTML report size reached
317 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
68.4 KB
OEBPS/typespec.xhtml
Max HTML report size reached
69.8 KB
OEBPS/tablesdatabases.xhtml
Max HTML report size reached
63.7 KB
OEBPS/sup_princ.xhtml
Max HTML report size reached
368 KB
OEBPS/statem.xhtml
Max HTML report size reached
196 KB
OEBPS/spec_proc.xhtml
Max HTML report size reached
426 KB
OEBPS/seq_prog.xhtml
Max HTML report size reached
113 KB
OEBPS/robustness.xhtml
Max HTML report size reached
18.0 KB
OEBPS/release_structure.xhtml
Max HTML report size reached
67.3 KB
OEBPS/release_handling.xhtml
Max HTML report size reached
30.2 KB
OEBPS/ref_man_records.xhtml
Max HTML report size reached
5.29 KB
OEBPS/ref_man_processes.xhtml
Max HTML report size reached
20.9 KB
OEBPS/ref_man_functions.xhtml
Max HTML report size reached
84.0 KB
OEBPS/records_macros.xhtml
Max HTML report size reached
69.8 KB
OEBPS/prog_ex_records.xhtml
Max HTML report size reached
3.69 KB
OEBPS/patterns.xhtml
Max HTML report size reached
1.47 KB
OEBPS/otp-patch-apply.xhtml
Max HTML report size reached
9.2 KB
OEBPS/opaques.xhtml
Max HTML report size reached
4.94 KB
OEBPS/oam.xhtml
Max HTML report size reached
15.9 KB
OEBPS/nif.xhtml
Max HTML report size reached
23.8 KB
OEBPS/modules.xhtml
Max HTML report size reached
34.7 KB
OEBPS/maps.xhtml
Max HTML report size reached
58.0 KB
OEBPS/macros.xhtml
Max HTML report size reached
55.2 KB
OEBPS/listhandling.xhtml
Max HTML report size reached
76.8 KB
OEBPS/list_comprehensions.xhtml
Max HTML report size reached
6.1 KB
OEBPS/install-win32.xhtml
Max HTML report size reached
32.9 KB
OEBPS/included_applications.xhtml
Max HTML report size reached
48.0 KB
OEBPS/gen_server_concepts.xhtml
Max HTML report size reached
213 KB
OEBPS/funs.xhtml
Max HTML report size reached
300 KB
OEBPS/expressions.xhtml
Max HTML report size reached
1.63 KB
OEBPS/example.xhtml
Max HTML report size reached
40.5 KB
OEBPS/events.xhtml
Max HTML report size reached
9.93 KB
OEBPS/errors.xhtml
Max HTML report size reached
17.6 KB
OEBPS/error_logging.xhtml
Max HTML report size reached
70.9 KB
OEBPS/erl_interface.xhtml
Max HTML report size reached
65.6 KB
OEBPS/eff_guide_processes.xhtml
Max HTML report size reached
33.3 KB
OEBPS/eff_guide_functions.xhtml
Max HTML report size reached
7.09 KB
OEBPS/drivers.xhtml
Max HTML report size reached
64.8 KB
OEBPS/documentation.xhtml
Max HTML report size reached
16.1 KB
OEBPS/distributed_applications.xhtml
Max HTML report size reached
5.6 KB
OEBPS/distributed.xhtml
Max HTML report size reached
58.3 KB
OEBPS/design_principles.xhtml
Max HTML report size reached
74.1 KB
OEBPS/data_types.xhtml
Max HTML report size reached
184 KB
OEBPS/create_target.xhtml
Max HTML report size reached
1.31 KB
OEBPS/content.opf
1.28 KB
OEBPS/content.opf
Max HTML report size reached
208 KB
OEBPS/conc_prog.xhtml
Max HTML report size reached
51.5 KB
OEBPS/commoncaveats.xhtml
Max HTML report size reached
13.7 KB
OEBPS/code_loading.xhtml
Max HTML report size reached
63.5 KB
OEBPS/c_portdriver.xhtml
Max HTML report size reached
58.5 KB
OEBPS/c_port.xhtml
Max HTML report size reached
31.4 KB
OEBPS/bit_syntax.xhtml
Max HTML report size reached
61.6 KB
OEBPS/binaryhandling.xhtml
Max HTML report size reached
4.43 KB
OEBPS/benchmarking.xhtml
Max HTML report size reached
149 KB
OEBPS/appup_cookbook.xhtml
Max HTML report size reached
55.9 KB
OEBPS/applications.xhtml
Max HTML report size reached
57.4 KB
./usr/share/doc/erlang-doc/html/doc/system/applications.html
    
Offset 135, 34 lines modifiedOffset 135, 34 lines modified
135 <a·href="applications.html#app_dir">directory·structure</a>.</p><p><a·href=""·id="callback_module"></a></p><h2·id="application-callback-module"·class="section-heading">135 <a·href="applications.html#app_dir">directory·structure</a>.</p><p><a·href=""·id="callback_module"></a></p><h2·id="application-callback-module"·class="section-heading">
136 ··<a·href="#application-callback-module"·class="hover-link">136 ··<a·href="#application-callback-module"·class="hover-link">
137 ····<i·class="ri-link-m"·aria-hidden="true"></i>137 ····<i·class="ri-link-m"·aria-hidden="true"></i>
138 ··</a>138 ··</a>
139 ··<span·class="text">Application·Callback·Module</span>139 ··<span·class="text">Application·Callback·Module</span>
140 </h2>140 </h2>
141 <p>How·to·start·and·stop·the·code·for·the·application,·including·its·supervision141 <p>How·to·start·and·stop·the·code·for·the·application,·including·its·supervision
142 tree,·is·described·by·two·callback·functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start</span><span·class="p"·data-group-id="0561234046-1">(</span><span·class="n">StartType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StartArgs</span><span·class="p"·data-group-id="0561234046-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0561234046-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="0561234046-2">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0561234046-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="0561234046-3">}</span><span·class="w"> 
143 </span><span·class="nf">stop</span><span·class="p"·data-group-id="0561234046-4">(</span><span·class="n">State</span><span·class="p"·data-group-id="0561234046-4">)</span></code></pre><ul><li><code·class="inline">start/2</code>·is·called·when·starting·the·ap[·...·truncated·by·diffoscope;·len:·30,·SHA:·e1e51cf208e8b479c99ec5ac74636ae6d670d0591b55b4bb7dda9657bce79190·...·]142 tree,·is·described·by·two·callback·functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start</span><span·class="p"·data-group-id="8180561045-1">(</span><span·class="n">StartType</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·740,·SHA:·492303b71856f552306d520e3053997678ca57993230be66eb446f5e9f59e624·...·]
 143 </span><span·class="nf">stop</span><span·class="p"·data-group-id="8180561045-4">(</span><span·class="n">State</span><span·class="p"·data-group-id="8180561045-4">)</span></code></pre><ul><li><code·class="inline">start/2</code>·is·called·when·starting·the·application·and·is·to·create·the
144 supervision·tree·by·starting·the·top·supervisor.·It·is·expected·to·return·the144 supervision·tree·by·starting·the·top·supervisor.·It·is·expected·to·return·the
145 pid·of·the·top·supervisor·and·an·optional·term,·<code·class="inline">State</code>,·which·defaults·to145 pid·of·the·top·supervisor·and·an·optional·term,·<code·class="inline">State</code>,·which·defaults·to
146 <code·class="inline">[]</code>.·This·term·is·passed·as·is·to·<code·class="inline">stop/1</code>.</li><li><code·class="inline">StartType</code>·is·usually·the·atom·<code·class="inline">normal</code>.·It·has·other·values·only·in·the·case146 <code·class="inline">[]</code>.·This·term·is·passed·as·is·to·<code·class="inline">stop/1</code>.</li><li><code·class="inline">StartType</code>·is·usually·the·atom·<code·class="inline">normal</code>.·It·has·other·values·only·in·the·case
147 of·a·takeover·or·failover;·see147 of·a·takeover·or·failover;·see
148 <a·href="distributed_applications.html">Distributed·Applications</a>.</li><li><code·class="inline">StartArgs</code>·is·defined·by·the·key·<code·class="inline">mod</code>·in·the148 <a·href="distributed_applications.html">Distributed·Applications</a>.</li><li><code·class="inline">StartArgs</code>·is·defined·by·the·key·<code·class="inline">mod</code>·in·the
149 <a·href="applications.html#appl_res_file">application·resource·file</a>.</li><li><code·class="inline">stop/1</code>·is·called·<em>after</em>·the·application·has·been·stopped·and·is·to·do·any149 <a·href="applications.html#appl_res_file">application·resource·file</a>.</li><li><code·class="inline">stop/1</code>·is·called·<em>after</em>·the·application·has·been·stopped·and·is·to·do·any
150 necessary·cleaning·up.·The·actual·stopping·of·the·application,·that·is,150 necessary·cleaning·up.·The·actual·stopping·of·the·application,·that·is,
151 shutting·down·the·supervision·tree,·is·handled·automatically·as·described·in151 shutting·down·the·supervision·tree,·is·handled·automatically·as·described·in
152 <a·href="applications.html#stopping">Starting·and·Stopping·Applications</a>.</li></ul><p><a·href=""·id="ch_app"></a></p><p>Example·of·an·application·callback·module·for·packaging·the·supervision·tree152 <a·href="applications.html#stopping">Starting·and·Stopping·Applications</a>.</li></ul><p><a·href=""·id="ch_app"></a></p><p>Example·of·an·application·callback·module·for·packaging·the·supervision·tree
153 from·<a·href="sup_princ.html#ex">Supervisor·Behaviour</a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6449824980-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="6449824980-1">)</span><span·class="p">.</span><span·class="w">153 from·<a·href="sup_princ.html#ex">Supervisor·Behaviour</a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1899490774-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="1899490774-1">)</span><span·class="p">.</span><span·class="w">
154 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="6449824980-2">(</span><span·class="ss">application</span><span·class="p"·data-group-id="6449824980-2">)</span><span·class="p">.</span><span·class="w">154 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="1899490774-2">(</span><span·class="ss">application</span><span·class="p"·data-group-id="1899490774-2">)</span><span·class="p">.</span><span·class="w">
155 </span><span·class="w">155 </span><span·class="w">
156 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6449824980-3">(</span><span·class="p"·data-group-id="6449824980-4">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·9efea7a007cd3784e8f329cf0785da6f5149e38b9ca56fa8debb90700a13566d·...·]-3">)</span><span·class="p">.</span><span·class="w">156 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1899490774-3">(</span><span·class="p"·data-group-id="1899490774-4">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·40318a4a58cb6addf301947c4cf74c3f589f4c899aca5efa123b8afc52eb84c3·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">start</span><span·class="p"·data-group-id="6449824980-5">(</span><span·class="p">_</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="6449824980-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 </span><span·class="nf">start</span><span·class="p"·data-group-id="1899490774-5">(</span><span·class="p">_</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="1899490774-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ····</span><span·class="nc">ch_sup</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="6449824980-6">(</span><span·class="p"·data-group-id="6449824980-6">)</span><span·class="p">.</span><span·class="w">158 ····</span><span·class="nc">ch_sup</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="1899490774-6">(</span><span·class="p"·data-group-id="1899490774-6">)</span><span·class="p">.</span><span·class="w">
  
159 </span><span·class="nf">stop</span><span·class="p"·data-group-id="6449824980-7">(</span><span·class="p">_</span><span·class="n">State</span><span·class="p"·data-group-id="6449824980-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">159 </span><span·class="nf">stop</span><span·class="p"·data-group-id="1899490774-7">(</span><span·class="p">_</span><span·class="n">State</span><span·class="p"·data-group-id="1899490774-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
160 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>A·library·application·that·cannot·be·started·or·stopped·does·not·need·any160 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>A·library·application·that·cannot·be·started·or·stopped·does·not·need·any
161 application·callback·module.</p><p><a·href=""·id="appl_res_file"></a></p><h2·id="application-resource-file"·class="section-heading">161 application·callback·module.</p><p><a·href=""·id="appl_res_file"></a></p><h2·id="application-resource-file"·class="section-heading">
162 ··<a·href="#application-resource-file"·class="hover-link">162 ··<a·href="#application-resource-file"·class="hover-link">
163 ····<i·class="ri-link-m"·aria-hidden="true"></i>163 ····<i·class="ri-link-m"·aria-hidden="true"></i>
164 ··</a>164 ··</a>
165 ··<span·class="text">Application·Resource·File</span>165 ··<span·class="text">Application·Resource·File</span>
166 </h2>166 </h2>
Offset 173, 22 lines modifiedOffset 173, 22 lines modified
173 keys.</li></ul><p>The·contents·of·a·minimal·<code·class="inline">.app</code>·file·for·a·library·application·<code·class="inline">libapp</code>·looks173 keys.</li></ul><p>The·contents·of·a·minimal·<code·class="inline">.app</code>·file·for·a·library·application·<code·class="inline">libapp</code>·looks
174 as·follows:</p><pre><code·class="text">{application,·libapp,·[]}.</code></pre><p>The·contents·of·a·minimal·<code·class="inline">.app</code>·file·<code·class="inline">ch_app.app</code>·for·a·supervision·tree174 as·follows:</p><pre><code·class="text">{application,·libapp,·[]}.</code></pre><p>The·contents·of·a·minimal·<code·class="inline">.app</code>·file·<code·class="inline">ch_app.app</code>·for·a·supervision·tree
175 application·like·<code·class="inline">ch_app</code>·looks·as·follows:</p><pre><code·class="text">{application,·ch_app,175 application·like·<code·class="inline">ch_app</code>·looks·as·follows:</p><pre><code·class="text">{application,·ch_app,
176 ·[{mod,·{ch_app,[]}}]}.</code></pre><p>The·key·<code·class="inline">mod</code>·defines·the·callback·module·and·start·argument·of·the·application,176 ·[{mod,·{ch_app,[]}}]}.</code></pre><p>The·key·<code·class="inline">mod</code>·defines·the·callback·module·and·start·argument·of·the·application,
177 in·this·case·<code·class="inline">ch_app</code>·and·<code·class="inline">[]</code>,·respectively.·This·means·that·the·following·is177 in·this·case·<code·class="inline">ch_app</code>·and·<code·class="inline">[]</code>,·respectively.·This·means·that·the·following·is
178 called·when·the·application·is·to·be·started:</p><pre><code·class="text">ch_app:start(normal,·[])</code></pre><p>The·following·is·called·when·the·application·is·stopped:</p><pre><code·class="text">ch_app:stop([])</code></pre><p>When·using·<a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>,·the·Erlang/OTP·tools·for·packaging·code·(see·Section178 called·when·the·application·is·to·be·started:</p><pre><code·class="text">ch_app:start(normal,·[])</code></pre><p>The·following·is·called·when·the·application·is·stopped:</p><pre><code·class="text">ch_app:stop([])</code></pre><p>When·using·<a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>,·the·Erlang/OTP·tools·for·packaging·code·(see·Section
179 <a·href="release_structure.html">Releases</a>),·the·keys·<code·class="inline">description</code>,·<code·class="inline">vsn</code>,·<code·class="inline">modules</code>,179 <a·href="release_structure.html">Releases</a>),·the·keys·<code·class="inline">description</code>,·<code·class="inline">vsn</code>,·<code·class="inline">modules</code>,
180 <code·class="inline">registered</code>,·and·<code·class="inline">applications</code>·are·also·to·be·specified:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1755554112-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">180 <code·class="inline">registered</code>,·and·<code·class="inline">applications</code>·are·also·to·be·specified:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5037184267-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">
181 ·</span><span·class="p"·data-group-id="1755554112-2">[</span><span·class="p"·data-group-id="1755554112-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p"·data-group-id="1755554112-3">}</span><span·class="p">,</span><span·class="w">181 ·</span><span·class="p"·data-group-id="5037184267-2">[</span><span·class="p"·data-group-id="5037184267-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p"·data-group-id="5037184267-3">}</span><span·class="p">,</span><span·class="w">
182 ··</span><span·class="p"·data-group-id="1755554112-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="1755554112-4">}</span><span·class="p">,</span><span·class="w">182 ··</span><span·class="p"·data-group-id="5037184267-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="5037184267-4">}</span><span·class="p">,</span><span·class="w">
183 ··</span><span·class="p"·data-group-id="1755554112-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1755554112-6">[</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_sup<[·...·truncated·by·diffoscope;·len:·175,·SHA:·7edc9f8858a3570477cbdf4eed517189cc413ad5ad79e4f806e982db226950ca·...·]-5">}</span><span·class="p">,</span><span·class="w">183 ··</span><span·class="p"·data-group-id="5037184267-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5037184267-6">[</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_sup<[·...·truncated·by·diffoscope;·len:·175,·SHA:·22812ccb7baf656e2cc1fc39d777d706c8f5c734aef1086abd4aa2f33c4c4cd3·...·]-5">}</span><span·class="p">,</span><span·class="w">
184 ··</span><span·class="p"·data-group-id="1755554112-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1755554112-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="1755554112-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·e1f890dceec342d404528a3df553d5ee89c198d92f1b878518fbe1fe917f5377·...·]-7">}</span><span·class="p">,</span><span·class="w">184 ··</span><span·class="p"·data-group-id="5037184267-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5037184267-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="5037184267-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·16f18313d560b45ba04bb6eb3b91bf4c82161408b4b20fb1d8949134f2890849·...·]-7">}</span><span·class="p">,</span><span·class="w">
185 ··</span><span·class="p"·data-group-id="1755554112-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1755554112-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·183,·SHA:·c436939e32d1f2384780054a729d3a70758b33b8be5e8631ce2075c090665582·...·]-9">}</span><span·class="p">,</span><span·class="w">185 ··</span><span·class="p"·data-group-id="5037184267-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5037184267-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·183,·SHA:·e63321cc5c4e781879e48b103c33034877eb4c99216142d8836764f0ed09c295·...·]-9">}</span><span·class="p">,</span><span·class="w">
186 ··</span><span·class="p"·data-group-id="1755554112-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1755554112-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="1755554112-13">[</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·5640d2fe8f55ef1b112cc939e4b14b503d4d4079dc665549167b62a3a74bd8ed·...·]-11">}</span><span·class="w">186 ··</span><span·class="p"·data-group-id="5037184267-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5037184267-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="5037184267-13">[</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·29787d2a80cb5e9a352e4f6f603eb29fd8fbab6e31ac4255f41cea6dd058828d·...·]-11">}</span><span·class="w">
187 ·</span><span·class="p"·data-group-id="1755554112-2">]</span><span·class="p"·data-group-id="1755554112-1">}</span><span·class="p">.</span></code></pre><ul><li><code·class="inline">description</code>·-·A·short·description,·a·string.·Defaults·to·<code·class="inline">&quot;&quot;</code>.</li><li><code·class="inline">vsn</code>·-·Version·number,·a·string.·Defaults·to·<code·class="inline">&quot;&quot;</code>.</li><li><code·class="inline">modules</code>·-·All·modules·<em>introduced</em>·by·this·application.·<a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>·uses187 ·</span><span·class="p"·data-group-id="5037184267-2">]</span><span·class="p"·data-group-id="5037184267-1">}</span><span·class="p">.</span></code></pre><ul><li><code·class="inline">description</code>·-·A·short·description,·a·string.·Defaults·to·<code·class="inline">&quot;&quot;</code>.</li><li><code·class="inline">vsn</code>·-·Version·number,·a·string.·Defaults·to·<code·class="inline">&quot;&quot;</code>.</li><li><code·class="inline">modules</code>·-·All·modules·<em>introduced</em>·by·this·application.·<a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>·uses
188 this·list·when·generating·boot·scripts·and·tar·files.·A·module·must·only188 this·list·when·generating·boot·scripts·and·tar·files.·A·module·must·only
189 be·included·in·one·application.·Defaults·to·<code·class="inline">[]</code>.</li><li><code·class="inline">registered</code>·-·All·names·of·registered·processes·in·the·application.189 be·included·in·one·application.·Defaults·to·<code·class="inline">[]</code>.</li><li><code·class="inline">registered</code>·-·All·names·of·registered·processes·in·the·application.
190 <a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>·uses·this·list·to·detect·name·clashes·between·applications.190 <a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>·uses·this·list·to·detect·name·clashes·between·applications.
191 Defaults·to·<code·class="inline">[]</code>.</li><li><code·class="inline">applications</code>·-·All·applications·that·must·be·started·before·this191 Defaults·to·<code·class="inline">[]</code>.</li><li><code·class="inline">applications</code>·-·All·applications·that·must·be·started·before·this
192 application·is·started.·<a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>·uses·this·list·to·generate·correct·boot192 application·is·started.·<a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>·uses·this·list·to·generate·correct·boot
193 scripts.·Defaults·to·<code·class="inline">[]</code>.·Notice·that·all·applications·have·dependencies·to193 scripts.·Defaults·to·<code·class="inline">[]</code>.·Notice·that·all·applications·have·dependencies·to
194 at·least·Kernel·and·STDLIB.</li></ul><blockquote><h4·class="info">Note</h4><p>For·details·about·the·syntax·and·contents·of·the·application·resource·file,194 at·least·Kernel·and·STDLIB.</li></ul><blockquote><h4·class="info">Note</h4><p>For·details·about·the·syntax·and·contents·of·the·application·resource·file,
Offset 300, 38 lines modifiedOffset 300, 38 lines modified
300 stop·applications.</p><h2·id="loading-and-unloading-applications"·class="section-heading">300 stop·applications.</p><h2·id="loading-and-unloading-applications"·class="section-heading">
301 ··<a·href="#loading-and-unloading-applications"·class="hover-link">301 ··<a·href="#loading-and-unloading-applications"·class="hover-link">
302 ····<i·class="ri-link-m"·aria-hidden="true"></i>302 ····<i·class="ri-link-m"·aria-hidden="true"></i>
303 ··</a>303 ··</a>
304 ··<span·class="text">Loading·and·Unloading·Applications</span>304 ··<span·class="text">Loading·and·Unloading·Applications</span>
305 </h2>305 </h2>
306 <p>Before·an·application·can·be·started,·it·must·be·<em>loaded</em>.·The·application306 <p>Before·an·application·can·be·started,·it·must·be·<em>loaded</em>.·The·application
307 controller·reads·and·stores·the·information·from·the·<code·class="inline">.app</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">load</span><span·class="p"·data-group-id="6703519080-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="6703519080-1">)</span><span·class="p">.</span><span·class="w">307 controller·reads·and·stores·the·information·from·the·<code·class="inline">.app</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">load</span><span·class="p"·data-group-id="5314762892-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="5314762892-1">)</span><span·class="p">.</span><span·class="w">
308 </span><span·class="ss">ok</span><span·class="gp·unselectable">308 </span><span·class="ss">ok</span><span·class="gp·unselectable">
309 2&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">loaded_applications</span><span·class="p"·data-group-id="6703519080-2">(</span><span·class="p"·data-group-id="6703519080-2">)</span><span·class="p">.</span><span·class="w">309 2&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">loaded_applications</span><span·class="p"·data-group-id="5314762892-2">(</span><span·class="p"·data-group-id="5314762892-2">)</span><span·class="p">.</span><span·class="w">
310 </span><span·class="p"·data-group-id="6703519080-3">[</span><span·class="p"·data-group-id="6703519080-4">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;2.8.1.3&quot;</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·f5c9f16b24ad233b69f4c5cb4735a2f309fbc79ddfaa2f88fe683198148a6b06·...·]-4">}</span><span·class="p">,</span><span·class="w">310 </span><span·class="p"·data-group-id="5314762892-3">[</span><span·class="p"·data-group-id="5314762892-4">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;2.8.1.3&quot;</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·ff858947849a48c5f45e964efd30f71155c7dd52793a6352505e7eea24999495·...·]-4">}</span><span·class="p">,</span><span·class="w">
311 ·</span><span·class="p"·data-group-id="6703519080-5">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;1.11.4.3&quot;</span><span·class="p"·data-group-id="6703519080-5">}</span><span·class="p">,</span><span·class="w">311 ·</span><span·class="p"·data-group-id="5314762892-5">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;1.11.4.3&quot;</span><span·class="p"·data-group-id="5314762892-5">}</span><span·class="p">,</span><span·class="w">
312 ·</span><span·class="p"·data-group-id="6703519080-6">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="6703519080-6">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·66ea4fe0a0fd9d204d645c52c4bc18d63bf09138c34b3b3d1bcacfd430375081·...·]-3">]</span></code></pre><p>An·application·that·has·been·stopped,·or·has·never·been·started,·can·be312 ·</span><span·class="p"·data-group-id="5314762892-6">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="5314762892-6">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·09fb3fa48af5d044c1dc3bc6b2945c629b5f8325ce4b73968c4c859b604488de·...·]-3">]</span></code></pre><p>An·application·that·has·been·stopped,·or·has·never·been·started,·can·be
313 unloaded.·The·information·about·the·application·is·erased·from·the·internal313 unloaded.·The·information·about·the·application·is·erased·from·the·internal
314 database·of·the·application·controller.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">unload</span><span·class="p"·data-group-id="8516262618-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="8516262618-1">)</span><span·class="p">.</span><span·class="w">314 database·of·the·application·controller.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">unload</span><span·class="p"·data-group-id="7962869803-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="7962869803-1">)</span><span·class="p">.</span><span·class="w">
315 </span><span·class="ss">ok</span><span·class="gp·unselectable">315 </span><span·class="ss">ok</span><span·class="gp·unselectable">
316 4&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">loaded_applications</span><span·class="p"·data-group-id="8516262618-2">(</span><span·class="p"·data-group-id="8516262618-2">)</span><span·class="p">.</span><span·class="w">316 4&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">loaded_applications</span><span·class="p"·data-group-id="7962869803-2">(</span><span·class="p"·data-group-id="7962869803-2">)</span><span·class="p">.</span><span·class="w">
317 </span><span·class="p"·data-group-id="8516262618-3">[</span><span·class="p"·data-group-id="8516262618-4">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;2.8.1.3&quot;</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·b15a783da99037ac32475f5b9fce69fe56a430eb880e13aa0189707c628e66ff·...·]-4">}</span><span·class="p">,</span><span·class="w">317 </span><span·class="p"·data-group-id="7962869803-3">[</span><span·class="p"·data-group-id="7962869803-4">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;2.8.1.3&quot;</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·cea9dd660c62c0120274c7fb89222c9640db9ba59d175480d43a1bf63ad9085e·...·]-4">}</span><span·class="p">,</span><span·class="w">
318 ·</span><span·class="p"·data-group-id="8516262618-5">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;1.11.4.3&quot;</span><span·class="p"·data-group-id="8516262618-5">}</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·b51c79ea77b9efa4430a47729420d450ca409793f2eccd09bc743392fc19d160·...·]-3">]</span></code></pre><blockquote><h4·class="info">Note</h4><p>Loading/unloading·an·application·does·not·load/unload·the·code·used·by·the318 ·</span><span·class="p"·data-group-id="7962869803-5">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;1.11.4.3&quot;</span><span·class="p"·data-group-id="7962869803-5">}</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·fb5193eaa39ad62bd73ea7270dde7f3034d1ad3b054c01c5b852976104df66f4·...·]-3">]</span></code></pre><blockquote><h4·class="info">Note</h4><p>Loading/unloading·an·application·does·not·load/unload·the·code·used·by·the
319 application.·Code·loading·is·handled·in·the·usual·way·by·the·code·server.</p></blockquote><p><a·href=""·id="stopping"></a></p><h2·id="starting-and-stopping-applications"·class="section-heading">319 application.·Code·loading·is·handled·in·the·usual·way·by·the·code·server.</p></blockquote><p><a·href=""·id="stopping"></a></p><h2·id="starting-and-stopping-applications"·class="section-heading">
320 ··<a·href="#starting-and-stopping-applications"·class="hover-link">320 ··<a·href="#starting-and-stopping-applications"·class="hover-link">
321 ····<i·class="ri-link-m"·aria-hidden="true"></i>321 ····<i·class="ri-link-m"·aria-hidden="true"></i>
322 ··</a>322 ··</a>
323 ··<span·class="text">Starting·and·Stopping·Applications</span>323 ··<span·class="text">Starting·and·Stopping·Applications</span>
324 </h2>324 </h2>
325 <p>An·application·is·started·by·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="4292732727-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="4292732727-1">)</span><span·class="p">.</span><span·class="w">325 <p>An·application·is·started·by·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="1392945806-1">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="1392945806-1">)</span><span·class="p">.</span><span·class="w">
326 </span><span·class="ss">ok</span><span·class="gp·unselectable">326 </span><span·class="ss">ok</span><span·class="gp·unselectable">
327 6&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">which_applications</span><span·class="p"·data-group-id="4292732727-2">(</span><span·class="p"·data-group-id="4292732727-2">)</span><span·class="p">.</span><span·class="w">327 6&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">which_applications</span><span·class="p"·data-group-id="1392945806-2">(</span><span·class="p"·data-group-id="1392945806-2">)</span><span·class="p">.</span><span·class="w">
328 </span><span·class="p"·data-group-id="4292732727-3">[</span><span·class="p"·data-group-id="4292732727-4">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;2.8.1.3&quot;</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·8f119ecbdd92d0ab32b8ad68b728af5419ffe55c6d1ec752b56be6209510ff90·...·]-4">}</span><span·class="p">,</span><span·class="w">328 </span><span·class="p"·data-group-id="1392945806-3">[</span><span·class="p"·data-group-id="1392945806-4">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;2.8.1.3&quot;</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·05d447cd7146c500a296784ea5fe341ebdbb3e1d05784bf21f58228869603a57·...·]-4">}</span><span·class="p">,</span><span·class="w">
329 ·</span><span·class="p"·data-group-id="4292732727-5">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;1.11.4.3&quot;</span><span·class="p"·data-group-id="4292732727-5">}</span><span·class="p">,</span><span·class="w">329 ·</span><span·class="p"·data-group-id="1392945806-5">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="s">&quot;ERTS··CXC·138·10&quot;</span><span·class="p">,</span><span·class="s">&quot;1.11.4.3&quot;</span><span·class="p"·data-group-id="1392945806-5">}</span><span·class="p">,</span><span·class="w">
330 ·</span><span·class="p"·data-group-id="4292732727-6">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="4292732727-6">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·f8e9de2bc20dc3067b05b36a192d0a80173efd183f3db53f532a5855d299e132·...·]-3">]</span></code></pre><p>If·the·application·is·not·already·loaded,·the·application·controller·first·loads330 ·</span><span·class="p"·data-group-id="1392945806-6">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="1392945806-6">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·a97f8aab039067a9ac3c1a6a59943a96bd11b2a549c4c01f8645a550220e8d26·...·]-3">]</span></code></pre><p>If·the·application·is·not·already·loaded,·the·application·controller·first·loads
331 it·using·<a·href="../../lib/kernel-10.0.1/doc/html/application.html#load/1"><code·class="inline">application:load/1</code></a>.·It·checks·the·value·of·the·<code·class="inline">applications</code>·key·to331 it·using·<a·href="../../lib/kernel-10.0.1/doc/html/application.html#load/1"><code·class="inline">application:load/1</code></a>.·It·checks·the·value·of·the·<code·class="inline">applications</code>·key·to
332 ensure·that·all·applications·that·are·to·be·started·before·this·application·are332 ensure·that·all·applications·that·are·to·be·started·before·this·application·are
333 running.</p><p><a·href=""·id="application_master"></a></p><p>Following·that,·the·application·controller·creates·an·<em>application·master</em>·for333 running.</p><p><a·href=""·id="application_master"></a></p><p>Following·that,·the·application·controller·creates·an·<em>application·master</em>·for
334 the·application.</p><p>The·application·master·establishes·itself·as·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#group_leader/0">group334 the·application.</p><p>The·application·master·establishes·itself·as·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#group_leader/0">group
335 leader</a>·of·all·processes·in·the·application335 leader</a>·of·all·processes·in·the·application
336 and·will·forward·I/O·to·the·previous·group·leader.</p><blockquote><h4·class="info">Note</h4><p>The·purpose·of·the·application·master·being·the·group·leader·is·to·easily336 and·will·forward·I/O·to·the·previous·group·leader.</p><blockquote><h4·class="info">Note</h4><p>The·purpose·of·the·application·master·being·the·group·leader·is·to·easily
337 keep·track·of·which·processes·that·belong·to·the·application.·That·is·needed337 keep·track·of·which·processes·that·belong·to·the·application.·That·is·needed
Offset 347, 55 lines modifiedOffset 347, 55 lines modified
347 defined·by·the·<code·class="inline">mod</code>·key.</p><h2·id="configuring-an-application"·class="section-heading">347 defined·by·the·<code·class="inline">mod</code>·key.</p><h2·id="configuring-an-application"·class="section-heading">
348 ··<a·href="#configuring-an-application"·class="hover-link">348 ··<a·href="#configuring-an-application"·class="hover-link">
349 ····<i·class="ri-link-m"·aria-hidden="true"></i>349 ····<i·class="ri-link-m"·aria-hidden="true"></i>
350 ··</a>350 ··</a>
351 ··<span·class="text">Configuring·an·Application</span>351 ··<span·class="text">Configuring·an·Application</span>
352 </h2>352 </h2>
353 <p>An·application·can·be·configured·using·<em>configuration·parameters</em>.·These·are·a353 <p>An·application·can·be·configured·using·<em>configuration·parameters</em>.·These·are·a
354 list·of·<code·class="inline">{Par,Val}</code>·tuples·specified·by·a·key·<code·class="inline">env</code>·in·the·<code·class="inline">.app</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7485470750-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">354 list·of·<code·class="inline">{Par,Val}</code>·tuples·specified·by·a·key·<code·class="inline">env</code>·in·the·<code·class="inline">.app</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2855579350-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">
355 ·</span><span·class="p"·data-group-id="7485470750-2">[</span><span·class="p"·data-group-id="7485470750-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p"·data-group-id="7485470750-3">}</span><span·class="p">,</span><span·class="w">355 ·</span><span·class="p"·data-group-id="2855579350-2">[</span><span·class="p"·data-group-id="2855579350-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p"·data-group-id="2855579350-3">}</span><span·class="p">,</span><span·class="w">
356 ··</span><span·class="p"·data-group-id="7485470750-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="7485470750-4">}</span><span·class="p">,</span><span·class="w">356 ··</span><span·class="p"·data-group-id="2855579350-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="2855579350-4">}</span><span·class="p">,</span><span·class="w">
357 ··</span><span·class="p"·data-group-id="7485470750-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7485470750-6">[</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_sup<[·...·truncated·by·diffoscope;·len:·173,·SHA:·8c4216b69c65968cfc411d4cf6ea2518608b062c933f5ef617b42778120d6b47·...·]50-5">}</span><span·class="p">,</span><span·class="w">357 ··</span><span·class="p"·data-group-id="2855579350-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2855579350-6">[</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_sup<[·...·truncated·by·diffoscope;·len:·173,·SHA:·7f3c5281033014756f33e36862573837b47b2d452ae33c5eba6c11c7dc381667·...·]50-5">}</span><span·class="p">,</span><span·class="w">
358 ··</span><span·class="p"·data-group-id="7485470750-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7485470750-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="7485470750-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·20,·SHA:·f2c4e2082ec538071923782579ef537f19ea251283b22638cf9e0818543777ed·...·]50-7">}</span><span·class="p">,</span><span·class="w">358 ··</span><span·class="p"·data-group-id="2855579350-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2855579350-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="2855579350-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·20,·SHA:·c3a33d271455bc6316b1cc8d9d37d25907e6be52188ad6ad1274b1b04f264f6d·...·]50-7">}</span><span·class="p">,</span><span·class="w">
359 ··</span><span·class="p"·data-group-id="7485470750-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7485470750-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·181,·SHA:·fd8d02533cd48fd6b17ce2935d78f96f282316137f71e829da49f0f52d655e49·...·]50-9">}</span><span·class="p">,</span><span·class="w">359 ··</span><span·class="p"·data-group-id="2855579350-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2855579350-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·181,·SHA:·4c9ce461207326d70dd8d0e61e89b3bd7f9ebee5eab9f79c49d6c41324c0822a·...·]50-9">}</span><span·class="p">,</span><span·class="w">
360 ··</span><span·class="p"·data-group-id="7485470750-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7485470750-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="7485470750-13">[</s[·...·truncated·by·diffoscope;·len:·151,·SHA:·b7190638d9e1ea305da8f4ca864b70df259d2b75204d5fbbf11eea86660f5606·...·]50-11">}</span><span·class="p">,</span><span·class="w">360 ··</span><span·class="p"·data-group-id="2855579350-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2855579350-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="2855579350-13">[</s[·...·truncated·by·diffoscope;·len:·151,·SHA:·ae5ffa5349403fb9f64321886f1be2844e17cea755911d4556b442bb39c955f3·...·]50-11">}</span><span·class="p">,</span><span·class="w">
361 ··</span><span·class="p"·data-group-id="7485470750-14">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7485470750-15">[</span><span·class="p"·data-group-id="7485470750-16">{</span><span·class="ss">file</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·222,·SHA:·48f719af8fd63ca26118b7292a87413a80d91166ea43d128c5252b56efa01774·...·]50-14">}</span><span·class="w">361 ··</span><span·class="p"·data-group-id="2855579350-14">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2855579350-15">[</span><span·class="p"·data-group-id="2855579350-16">{</span><span·class="ss">file</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·222,·SHA:·4f971e9b8ef3bd4ce47aa900e51f7c676f422cd0a2ec4dd14e41a5cf56e61aaf·...·]50-14">}</span><span·class="w">
362 ·</span><span·class="p"·data-group-id="7485470750-2">]</span><span·class="p"·data-group-id="7485470750-1">}</span><span·class="p">.</span></code></pre><p><code·class="inline">Par</code>·is·to·be·an·atom.·<code·class="inline">Val</code>·is·any·term.·The·application·can·retrieve·the362 ·</span><span·class="p"·data-group-id="2855579350-2">]</span><span·class="p"·data-group-id="2855579350-1">}</span><span·class="p">.</span></code></pre><p><code·class="inline">Par</code>·is·to·be·an·atom.·<code·class="inline">Val</code>·is·any·term.·The·application·can·retrieve·the
363 value·of·a·configuration·parameter·by·calling·<code·class="inline">application:get_env(App,·Par)</code>·or363 value·of·a·configuration·parameter·by·calling·<code·class="inline">application:get_env(App,·Par)</code>·or
364 a·number·of·similar·functions.·For·more·information,·see·module·<a·href="../../lib/kernel-10.0.1/doc/html/application.html"><code·class="inline">application</code></a>364 a·number·of·similar·functions.·For·more·information,·see·module·<a·href="../../lib/kernel-10.0.1/doc/html/application.html"><code·class="inline">application</code></a>
365 in·Kernel.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl</span><span·class="w">365 in·Kernel.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl</span><span·class="w">
366 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="8923957785-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="8923957785-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">5.[·...·truncated·by·diffoscope;·len:·415,·SHA:·8aa08c07b3524de15e81ca8e1d6e77528f63898ddbe24c1d013408d74045f49e·...·]-3">]</span><span·class="w">366 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="7827229511-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="7827229511-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">5.[·...·truncated·by·diffoscope;·len:·415,·SHA:·fc1f63e50a379910787365c15fc27127922d183ee115b1ec8cdbc6658a165f43·...·]-3">]</span><span·class="w">
  
367 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">2.3</span><span·class="p">.</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="8923957785-4">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="8923957785-4">)</span><span·class="gp·unselectable">367 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">2.3</span><span·class="p">.</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="7827229511-4">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="7827229511-4">)</span><span·class="gp·unselectable">
368 1&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8923957785-5">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="8923957785-5">)</span><span·class="p">.</span><span·class="w">368 1&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7827229511-5">(</span><span·class="ss">ch_app</span><span·class="p"·data-group-id="7827229511-5">)</span><span·class="p">.</span><span·class="w">
369 </span><span·class="ss">ok</span><span·class="gp·unselectable">369 </span><span·class="ss">ok</span><span·class="gp·unselectable">
370 2&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">get_env</span><span·class="p"·data-group-id="8923957785-6">(</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">file</span><span·class="p"·data-group-id="8923957785-6">)</span><span·class="p">.</span><span·class="w">370 2&gt;·</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">get_env</span><span·class="p"·data-group-id="7827229511-6">(</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">file</span><span·class="p"·data-group-id="7827229511-6">)</span><span·class="p">.</span><span·class="w">
371 </span><span·class="p"·data-group-id="8923957785-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="s">&quot;/usr/local/log&quot;</span><span·class="p"·data-group-id="8923957785-7">}</span></code></pre><p>The·values·in·the·<code·class="inline">.app</code>·file·can·be·overridden·by·values·in·a·<em>system371 </span><span·class="p"·data-group-id="7827229511-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="s">&quot;/usr/local/log&quot;</span><span·class="p"·data-group-id="7827229511-7">}</span></code></pre><p>The·values·in·the·<code·class="inline">.app</code>·file·can·be·overridden·by·values·in·a·<em>system
372 configuration·file</em>.·This·is·a·file·that·contains·configuration·parameters·for372 configuration·file</em>.·This·is·a·file·that·contains·configuration·parameters·for
373 relevant·applications:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5525189433-1">[</span><span·class="p"·data-group-id="5525189433-2">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5525189433-3">[</span><span·class="p"·data-group-id="5525189433-4">[·...·truncated·by·diffoscope;·len:·331,·SHA:·8cdcbd4414b895c7d28f2bf37bb046a1351201e8ed90e5834d2e0441dea57c50·...·]-2">}</span><span·class="p">,</span><span·class="w">373 relevant·applications:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0700531480-1">[</span><span·class="p"·data-group-id="0700531480-2">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0700531480-3">[</span><span·class="p"·data-group-id="0700531480-4">[·...·truncated·by·diffoscope;·len:·331,·SHA:·204212dcfde8ce8e6330c9a1613cc1ac9dea59cd2fad0d63e48e186d8fb1c255·...·]-2">}</span><span·class="p">,</span><span·class="w">
374 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">374 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">
Max diff block lines reached; 11353/57911 bytes (19.60%) of diff not shown.
761 B
html2text {}
Max HTML report size reached
150 KB
./usr/share/doc/erlang-doc/html/doc/system/appup_cookbook.html
    
Offset 120, 18 lines modifiedOffset 120, 18 lines modified
120 ··<a·href="#changing-a-functional-module"·class="hover-link">120 ··<a·href="#changing-a-functional-module"·class="hover-link">
121 ····<i·class="ri-link-m"·aria-hidden="true"></i>121 ····<i·class="ri-link-m"·aria-hidden="true"></i>
122 ··</a>122 ··</a>
123 ··<span·class="text">Changing·a·Functional·Module</span>123 ··<span·class="text">Changing·a·Functional·Module</span>
124 </h2>124 </h2>
125 <p>When·a·functional·module·has·been·changed,·for·example,·if·a·new·function·has125 <p>When·a·functional·module·has·been·changed,·for·example,·if·a·new·function·has
126 been·added·or·a·bug·has·been·corrected,·simple·code·replacement·is·sufficient,126 been·added·or·a·bug·has·been·corrected,·simple·code·replacement·is·sufficient,
127 for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4217471946-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">127 for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5362765619-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
128 ·</span><span·class="p"·data-group-id="4217471946-2">[</span><span·class="p"·data-group-id="4217471946-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4217471946-4">[</span><span·class="p"·data-group-id="4217471946-5"[·...·truncated·by·diffoscope;·len:·317,·SHA:·f15d5552ce2d61f81be489c43223095a12153e25057c10157303a11e1021c024·...·]-2">]</span><span·class="p">,</span><span·class="w">128 ·</span><span·class="p"·data-group-id="5362765619-2">[</span><span·class="p"·data-group-id="5362765619-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5362765619-4">[</span><span·class="p"·data-group-id="5362765619-5"[·...·truncated·by·diffoscope;·len:·317,·SHA:·0b6c9fb4233654b0bda83b358cedc58eeaf2d8d50e9c187093347976855513b1·...·]-2">]</span><span·class="p">,</span><span·class="w">
129 ·</span><span·class="p"·data-group-id="4217471946-6">[</span><span·class="p"·data-group-id="4217471946-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4217471946-8">[</span><span·class="p"·data-group-id="4217471946-9"[·...·truncated·by·diffoscope;·len:·317,·SHA:·c33ead70ab7f7c68e7a29c48cd6529d0413730b67b4b3e8f62483b5b7c744ff3·...·]-6">]</span><span·class="w">129 ·</span><span·class="p"·data-group-id="5362765619-6">[</span><span·class="p"·data-group-id="5362765619-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5362765619-8">[</span><span·class="p"·data-group-id="5362765619-9"[·...·truncated·by·diffoscope;·len:·317,·SHA:·2c5c1e46c80fadb6ab0d0ab684b8ca4cfc89d4b240fe2445f75537d0028179aa·...·]-6">]</span><span·class="w">
130 </span><span·class="p"·data-group-id="4217471946-1">}</span><span·class="p">.</span></code></pre><h2·id="changing-a-residence-module"·class="section-heading">130 </span><span·class="p"·data-group-id="5362765619-1">}</span><span·class="p">.</span></code></pre><h2·id="changing-a-residence-module"·class="section-heading">
131 ··<a·href="#changing-a-residence-module"·class="hover-link">131 ··<a·href="#changing-a-residence-module"·class="hover-link">
132 ····<i·class="ri-link-m"·aria-hidden="true"></i>132 ····<i·class="ri-link-m"·aria-hidden="true"></i>
133 ··</a>133 ··</a>
134 ··<span·class="text">Changing·a·Residence·Module</span>134 ··<span·class="text">Changing·a·Residence·Module</span>
135 </h2>135 </h2>
136 <p>In·a·system·implemented·according·to·the·OTP·design·principles,·all·processes,136 <p>In·a·system·implemented·according·to·the·OTP·design·principles,·all·processes,
137 except·system·processes·and·special·processes,·reside·in·one·of·the·behaviours137 except·system·processes·and·special·processes,·reside·in·one·of·the·behaviours
Offset 142, 46 lines modifiedOffset 142, 46 lines modified
142 ··<a·href="#changing-a-callback-module"·class="hover-link">142 ··<a·href="#changing-a-callback-module"·class="hover-link">
143 ····<i·class="ri-link-m"·aria-hidden="true"></i>143 ····<i·class="ri-link-m"·aria-hidden="true"></i>
144 ··</a>144 ··</a>
145 ··<span·class="text">Changing·a·Callback·Module</span>145 ··<span·class="text">Changing·a·Callback·Module</span>
146 </h2>146 </h2>
147 <p>A·callback·module·is·a·functional·module,·and·for·code·extensions·simple·code147 <p>A·callback·module·is·a·functional·module,·and·for·code·extensions·simple·code
148 replacement·is·sufficient.</p><p><em>Example</em></p><p>When·adding·a·function·to·<code·class="inline">ch3</code>,·as·described·in·the·example·in148 replacement·is·sufficient.</p><p><em>Example</em></p><p>When·adding·a·function·to·<code·class="inline">ch3</code>,·as·described·in·the·example·in
149 <a·href="release_handling.html#appup">Release·Handling</a>,·<code·class="inline">ch_app.appup</code>·looks·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9614301543-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">149 <a·href="release_handling.html#appup">Release·Handling</a>,·<code·class="inline">ch_app.appup</code>·looks·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7639033225-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
150 ·</span><span·class="p"·data-group-id="9614301543-2">[</span><span·class="p"·data-group-id="9614301543-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9614301543-4">[</span><span·class="p"·data-group-id="9614301543-5"[·...·truncated·by·diffoscope;·len:·319,·SHA:·1e2671316d5295b585c29df0e860bb07e6a23e94842c031185db1e9f0ea4d136·...·]-2">]</span><span·class="p">,</span><span·class="w">150 ·</span><span·class="p"·data-group-id="7639033225-2">[</span><span·class="p"·data-group-id="7639033225-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7639033225-4">[</span><span·class="p"·data-group-id="7639033225-5"[·...·truncated·by·diffoscope;·len:·319,·SHA:·32973ea309efb5cf40305c934751b563f14c5d1f7b4e7df6baeb7bfdfdf55881·...·]-2">]</span><span·class="p">,</span><span·class="w">
151 ·</span><span·class="p"·data-group-id="9614301543-6">[</span><span·class="p"·data-group-id="9614301543-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9614301543-8">[</span><span·class="p"·data-group-id="9614301543-9"[·...·truncated·by·diffoscope;·len:·319,·SHA:·1a0cc9bd839a982622d259dd352bbb3a64645afe9acac9b5d6ae755effc4f775·...·]-6">]</span><span·class="w">151 ·</span><span·class="p"·data-group-id="7639033225-6">[</span><span·class="p"·data-group-id="7639033225-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7639033225-8">[</span><span·class="p"·data-group-id="7639033225-9"[·...·truncated·by·diffoscope;·len:·319,·SHA:·bdba6e06fc7983a28a7b3aabdbd72aa103ce6184313f9c77027767bd29540648·...·]-6">]</span><span·class="w">
152 </span><span·class="p"·data-group-id="9614301543-1">}</span><span·class="p">.</span></code></pre><p>OTP·also·supports·changing·the·internal·state·of·behaviour·processes;·see152 </span><span·class="p"·data-group-id="7639033225-1">}</span><span·class="p">.</span></code></pre><p>OTP·also·supports·changing·the·internal·state·of·behaviour·processes;·see
153 <a·href="appup_cookbook.html#int_state">Changing·Internal·State</a>.</p><p><a·href=""·id="int_state"></a></p><h2·id="changing-internal-state"·class="section-heading">153 <a·href="appup_cookbook.html#int_state">Changing·Internal·State</a>.</p><p><a·href=""·id="int_state"></a></p><h2·id="changing-internal-state"·class="section-heading">
154 ··<a·href="#changing-internal-state"·class="hover-link">154 ··<a·href="#changing-internal-state"·class="hover-link">
155 ····<i·class="ri-link-m"·aria-hidden="true"></i>155 ····<i·class="ri-link-m"·aria-hidden="true"></i>
156 ··</a>156 ··</a>
157 ··<span·class="text">Changing·Internal·State</span>157 ··<span·class="text">Changing·Internal·State</span>
158 </h2>158 </h2>
159 <p>In·this·case,·simple·code·replacement·is·not·sufficient.·The·process·must159 <p>In·this·case,·simple·code·replacement·is·not·sufficient.·The·process·must
160 explicitly·transform·its·state·using·the·callback·function·<code·class="inline">code_change/3</code>·before160 explicitly·transform·its·state·using·the·callback·function·<code·class="inline">code_change/3</code>·before
161 switching·to·the·new·version·of·the·callback·module.·Thus,·synchronized·code161 switching·to·the·new·version·of·the·callback·module.·Thus,·synchronized·code
162 replacement·is·used.</p><p><em>Example</em></p><p>Consider·the·<code·class="inline">ch3</code>·module·from162 replacement·is·used.</p><p><em>Example</em></p><p>Consider·the·<code·class="inline">ch3</code>·module·from
163 <a·href="gen_server_concepts.html#ex">gen_server·Behaviour</a>.·The·internal·state·is·a·term163 <a·href="gen_server_concepts.html#ex">gen_server·Behaviour</a>.·The·internal·state·is·a·term
164 <code·class="inline">Chs</code>·representing·the·available·channels.·Assume·you·want·to·add·a·counter·<code·class="inline">N</code>,164 <code·class="inline">Chs</code>·representing·the·available·channels.·Assume·you·want·to·add·a·counter·<code·class="inline">N</code>,
165 which·keeps·track·of·the·number·of·<code·class="inline">alloc</code>·requests·so·far.·This·means·that·the165 which·keeps·track·of·the·number·of·<code·class="inline">alloc</code>·requests·so·far.·This·means·that·the
166 format·must·be·changed·to·<code·class="inline">{Chs,N}</code>.</p><p>The·<code·class="inline">.appup</code>·file·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7275825240-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">166 format·must·be·changed·to·<code·class="inline">{Chs,N}</code>.</p><p>The·<code·class="inline">.appup</code>·file·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2836508297-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
167 ·</span><span·class="p"·data-group-id="7275825240-2">[</span><span·class="p"·data-group-id="7275825240-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7275825240-4">[</span><span·class="p"·data-group-id="7275825240-5"[·...·truncated·by·diffoscope;·len:·654,·SHA:·a433eccb076a4363858c6f1253504b8d681467defc42cc2fb544ad8aba73e10b·...·]-2">]</span><span·class="p">,</span><span·class="w">167 ·</span><span·class="p"·data-group-id="2836508297-2">[</span><span·class="p"·data-group-id="2836508297-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2836508297-4">[</span><span·class="p"·data-group-id="2836508297-5"[·...·truncated·by·diffoscope;·len:·654,·SHA:·8cf690459b3ca4f12869017ffeb31a12ec4d193015cb7d10878eff9a87b2140c·...·]-2">]</span><span·class="p">,</span><span·class="w">
168 ·</span><span·class="p"·data-group-id="7275825240-8">[</span><span·class="p"·data-group-id="7275825240-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7275825240-10">[</span><span·class="p"·data-group-id="7275825240-1[·...·truncated·by·diffoscope;·len:·662,·SHA:·9917196e344758345afb77ac4d4f238b49a5fd7aa7d735ce7836546287eaa7c9·...·]-8">]</span><span·class="w">168 ·</span><span·class="p"·data-group-id="2836508297-8">[</span><span·class="p"·data-group-id="2836508297-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2836508297-10">[</span><span·class="p"·data-group-id="2836508297-1[·...·truncated·by·diffoscope;·len:·662,·SHA:·5a49eed17b9f602a7d07cfdc1dabb6221fc3111cd25baa4616c9d86063ddf1cb·...·]-8">]</span><span·class="w">
169 </span><span·class="p"·data-group-id="7275825240-1">}</span><span·class="p">.</span></code></pre><p>The·third·element·of·the·<code·class="inline">update</code>·instruction·is·a·tuple·<code·class="inline">{advanced,Extra}</code>,169 </span><span·class="p"·data-group-id="2836508297-1">}</span><span·class="p">.</span></code></pre><p>The·third·element·of·the·<code·class="inline">update</code>·instruction·is·a·tuple·<code·class="inline">{advanced,Extra}</code>,
170 which·says·that·the·affected·processes·are·to·do·a·state·transformation·before170 which·says·that·the·affected·processes·are·to·do·a·state·transformation·before
171 loading·the·new·version·of·the·module.·This·is·done·by·the·processes·calling·the171 loading·the·new·version·of·the·module.·This·is·done·by·the·processes·calling·the
172 callback·function·<code·class="inline">code_change/3</code>·(see·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html"><code·class="inline">gen_server</code></a>·in·STDLIB).172 callback·function·<code·class="inline">code_change/3</code>·(see·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html"><code·class="inline">gen_server</code></a>·in·STDLIB).
173 The·term·<code·class="inline">Extra</code>,·in·this·case·<code·class="inline">[]</code>,·is·passed·as·is·to·the·function:</p><p><a·href=""·id="code_change"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1987986483-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="1987986483-1">)</span><span·class="p">.</span><span·class="w">173 The·term·<code·class="inline">Extra</code>,·in·this·case·<code·class="inline">[]</code>,·is·passed·as·is·to·the·function:</p><p><a·href=""·id="code_change"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8050065161-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="8050065161-1">)</span><span·class="p">.</span><span·class="w">
174 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">174 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
175 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1987986483-2">(</span><span·class="p"·data-group-id="1987986483-3">[</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi">3</span><span·class="p"·data-group-id="1987986483-3">]</span><span·class="p"·data-group-id="1987986483-2">)</span><span·class="p">.</span><span·class="w">175 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8050065161-2">(</span><span·class="p"·data-group-id="8050065161-3">[</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi">3</span><span·class="p"·data-group-id="8050065161-3">]</span><span·class="p"·data-group-id="8050065161-2">)</span><span·class="p">.</span><span·class="w">
176 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">176 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
177 </span><span·class="nf">code_change</span><span·class="p"·data-group-id="1987986483-4">(</span><span·class="p"·data-group-id="1987986483-5">{</span><span·class="ss">down</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Vsn</span><span·class="p"·data-group-id="1987986483-5">}</span><s[·...·truncated·by·diffoscope;·len:·391,·SHA:·0a09c3e3678b18f1148d96eb3467b99ba486a04f884c6300ebc65c5d69674715·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">177 </span><span·class="nf">code_change</span><span·class="p"·data-group-id="8050065161-4">(</span><span·class="p"·data-group-id="8050065161-5">{</span><span·class="ss">down</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Vsn</span><span·class="p"·data-group-id="8050065161-5">}</span><s[·...·truncated·by·diffoscope;·len:·391,·SHA:·b94aede368a3535581eda16cea47064659f83065d97e7981a0e6f4db6b3bd273·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
178 ····</span><span·class="p"·data-group-id="1987986483-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="1987986483-7">}</span><span·class="p">;</span><span·class="w">178 ····</span><span·class="p"·data-group-id="8050065161-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="8050065161-7">}</span><span·class="p">;</span><span·class="w">
179 </span><span·class="nf">code_change</span><span·class="p"·data-group-id="1987986483-8">(</span><span·class="p">_</span><span·class="n">Vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Extra</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·c6d08d412b5c9cf80f94d6f11c113b2222cbf8e3f856e1b031c160c1d5d9f65f·...·]-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">179 </span><span·class="nf">code_change</span><span·class="p"·data-group-id="8050065161-8">(</span><span·class="p">_</span><span·class="n">Vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Extra</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·c863cb994461fdfcf80b1918f9ca17c4682e4d4f7c237ee7d00df0b6592204f6·...·]-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="1987986483-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1987986483-10">{</span><span·class="n">Chs</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·c[·...·truncated·by·diffoscope;·len:·88,·SHA:·990394934a23d6daef561382188ae77212a608268c9a7e5655e2ecfab2b2e8df·...·]-9">}</span><span·class="p">.</span></code></pre><p>The·first·argument·is·<code·class="inline">{down,Vsn}</code>·if·there·is·a·downgrade,·or·<code·class="inline">Vsn</code>·if·there·is180 ····</span><span·class="p"·data-group-id="8050065161-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8050065161-10">{</span><span·class="n">Chs</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·c[·...·truncated·by·diffoscope;·len:·88,·SHA:·3487c324bc8cb3ae5b703e930ecf837a56e1072d8d8b2481b6e3d32d6b6d95a0·...·]-9">}</span><span·class="p">.</span></code></pre><p>The·first·argument·is·<code·class="inline">{down,Vsn}</code>·if·there·is·a·downgrade,·or·<code·class="inline">Vsn</code>·if·there·is
181 a·upgrade.·The·term·<code·class="inline">Vsn</code>·is·fetched·from·the·'original'·version·of·the·module,181 a·upgrade.·The·term·<code·class="inline">Vsn</code>·is·fetched·from·the·'original'·version·of·the·module,
182 that·is,·the·version·you·are·upgrading·from,·or·downgrading·to.</p><p>The·version·is·defined·by·the·module·attribute·<code·class="inline">vsn</code>,·if·any.·There·is·no·such182 that·is,·the·version·you·are·upgrading·from,·or·downgrading·to.</p><p>The·version·is·defined·by·the·module·attribute·<code·class="inline">vsn</code>,·if·any.·There·is·no·such
183 attribute·in·<code·class="inline">ch3</code>,·so·in·this·case·the·version·is·the·checksum·(a·huge·integer)183 attribute·in·<code·class="inline">ch3</code>,·so·in·this·case·the·version·is·the·checksum·(a·huge·integer)
184 of·the·beam·file,·an·uninteresting·value,·which·is·ignored.</p><p>The·other·callback·functions·of·<code·class="inline">ch3</code>·must·also·be·modified·and·perhaps·a·new184 of·the·beam·file,·an·uninteresting·value,·which·is·ignored.</p><p>The·other·callback·functions·of·<code·class="inline">ch3</code>·must·also·be·modified·and·perhaps·a·new
185 interface·function·must·be·added,·but·this·is·not·shown·here.</p><h2·id="module-dependencies"·class="section-heading">185 interface·function·must·be·added,·but·this·is·not·shown·here.</p><h2·id="module-dependencies"·class="section-heading">
186 ··<a·href="#module-dependencies"·class="hover-link">186 ··<a·href="#module-dependencies"·class="hover-link">
187 ····<i·class="ri-link-m"·aria-hidden="true"></i>187 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 190, 67 lines modifiedOffset 190, 67 lines modified
190 </h2>190 </h2>
191 <p>Assume·that·a·module·is·extended·by·adding·an·interface·function,·as·in·the191 <p>Assume·that·a·module·is·extended·by·adding·an·interface·function,·as·in·the
192 example·in·<a·href="release_handling.html#appup">Release·Handling</a>,·where·a·function192 example·in·<a·href="release_handling.html#appup">Release·Handling</a>,·where·a·function
193 <code·class="inline">available/0</code>·is·added·to·<code·class="inline">ch3</code>.</p><p>If·a·call·is·added·to·this·function,·say·in·module·<code·class="inline">m1</code>,·a·runtime·error·could193 <code·class="inline">available/0</code>·is·added·to·<code·class="inline">ch3</code>.</p><p>If·a·call·is·added·to·this·function,·say·in·module·<code·class="inline">m1</code>,·a·runtime·error·could
194 can·occur·during·release·upgrade·if·the·new·version·of·<code·class="inline">m1</code>·is·loaded·first·and194 can·occur·during·release·upgrade·if·the·new·version·of·<code·class="inline">m1</code>·is·loaded·first·and
195 calls·<code·class="inline">ch3:available/0</code>·before·the·new·version·of·<code·class="inline">ch3</code>·is·loaded.</p><p>Thus,·<code·class="inline">ch3</code>·must·be·loaded·before·<code·class="inline">m1</code>,·in·the·upgrade·case,·and·conversely·in195 calls·<code·class="inline">ch3:available/0</code>·before·the·new·version·of·<code·class="inline">ch3</code>·is·loaded.</p><p>Thus,·<code·class="inline">ch3</code>·must·be·loaded·before·<code·class="inline">m1</code>,·in·the·upgrade·case,·and·conversely·in
196 the·downgrade·case.·<code·class="inline">m1</code>·is·said·to·be·<em>dependent·on</em>·<code·class="inline">ch3</code>.·In·a·release196 the·downgrade·case.·<code·class="inline">m1</code>·is·said·to·be·<em>dependent·on</em>·<code·class="inline">ch3</code>.·In·a·release
197 handling·instruction,·this·is·expressed·by·the·<code·class="inline">DepMods</code>·element:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6279300450-1">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DepMods</span><span·class="p"·data-group-id="6279300450-1">}</span><span·class="w">197 handling·instruction,·this·is·expressed·by·the·<code·class="inline">DepMods</code>·element:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1201598218-1">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DepMods</span><span·class="p"·data-group-id="1201598218-1">}</span><span·class="w">
198 </span><span·class="p"·data-group-id="6279300450-2">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6279300450-3">{</span><span·class="ss">advanced<[·...·truncated·by·diffoscope;·len:·254,·SHA:·25ce7eb1d1a4770165e50b80fb0dd24042930e2166b20a458769d66322ef2857·...·]-2">}</span></code></pre><p><code·class="inline">DepMods</code>·is·a·list·of·modules,·on·which·<code·class="inline">Module</code>·is·dependent.</p><p><em>Example</em></p><p>The·module·<code·class="inline">m1</code>·in·application·<code·class="inline">myapp</code>·is·dependent·on·<code·class="inline">ch3</code>·when198 </span><span·class="p"·data-group-id="1201598218-2">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1201598218-3">{</span><span·class="ss">advanced<[·...·truncated·by·diffoscope;·len:·254,·SHA:·a772c514069f0a532d2840733e31a8e1530ce53a271c17f7c7dad5fe5cf9f683·...·]-2">}</span></code></pre><p><code·class="inline">DepMods</code>·is·a·list·of·modules,·on·which·<code·class="inline">Module</code>·is·dependent.</p><p><em>Example</em></p><p>The·module·<code·class="inline">m1</code>·in·application·<code·class="inline">myapp</code>·is·dependent·on·<code·class="inline">ch3</code>·when
199 upgrading·from·&quot;1&quot;·to·&quot;2&quot;,·or·downgrading·from·&quot;2&quot;·to·&quot;1&quot;:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">myapp</span><span·class="p">.</span><span·class="nc">appup</span><span·class="p">:</span><span·class="w">199 upgrading·from·&quot;1&quot;·to·&quot;2&quot;,·or·downgrading·from·&quot;2&quot;·to·&quot;1&quot;:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">myapp</span><span·class="p">.</span><span·class="nc">appup</span><span·class="p">:</span><span·class="w">
  
200 </span><span·class="p"·data-group-id="6556334982-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">200 </span><span·class="p"·data-group-id="0976418592-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
201 ·</span><span·class="p"·data-group-id="6556334982-2">[</span><span·class="p"·data-group-id="6556334982-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6556334982-4">[</span><span·class="p"·data-group-id="6556334982-5"[·...·truncated·by·diffoscope;·len:·498,·SHA:·09f84767379ca7f48babaec2404e23d7f337e9c947e1b54b9e67d0ad4fb1c672·...·]2-2">]</span><span·class="p">,</span><span·class="w">201 ·</span><span·class="p"·data-group-id="0976418592-2">[</span><span·class="p"·data-group-id="0976418592-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0976418592-4">[</span><span·class="p"·data-group-id="0976418592-5"[·...·truncated·by·diffoscope;·len:·498,·SHA:·b9c506920e79e6287e9cc67d49f4dba500e3847808820181a688eda384cc1391·...·]2-2">]</span><span·class="p">,</span><span·class="w">
202 ·</span><span·class="p"·data-group-id="6556334982-7">[</span><span·class="p"·data-group-id="6556334982-8">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6556334982-9">[</span><span·class="p"·data-group-id="6556334982-10[·...·truncated·by·diffoscope;·len:·502,·SHA:·08839f3575fc15364eb5f59f0959b290ed81fc6424dfe17e63e2ba23d9be8ad7·...·]2-7">]</span><span·class="w">202 ·</span><span·class="p"·data-group-id="0976418592-7">[</span><span·class="p"·data-group-id="0976418592-8">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0976418592-9">[</span><span·class="p"·data-group-id="0976418592-10[·...·truncated·by·diffoscope;·len:·502,·SHA:·c2b2ffad57be89fd0d176c87ff5082ce221100374a7fe51b081558452d31883e·...·]2-7">]</span><span·class="w">
203 </span><span·class="p"·data-group-id="6556334982-1">}</span><span·class="p">.</span><span·class="w">203 </span><span·class="p"·data-group-id="0976418592-1">}</span><span·class="p">.</span><span·class="w">
  
204 </span><span·class="ss">ch_app</span><span·class="p">.</span><span·class="nc">appup</span><span·class="p">:</span><span·class="w">204 </span><span·class="ss">ch_app</span><span·class="p">.</span><span·class="nc">appup</span><span·class="p">:</span><span·class="w">
  
205 </span><span·class="p"·data-group-id="6556334982-12">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">205 </span><span·class="p"·data-group-id="0976418592-12">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
206 ·</span><span·class="p"·data-group-id="6556334982-13">[</span><span·class="p"·data-group-id="6556334982-14">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6556334982-15">[</span><span·class="p"·data-group-id="6556334982[·...·truncated·by·diffoscope;·len:·325,·SHA:·9b3e4ccffc189dd166ff9d8b4ba25ea79ae2dda57e980801751db0e77d2bfced·...·]2-13">]</span><span·class="p">,</span><span·class="w">206 ·</span><span·class="p"·data-group-id="0976418592-13">[</span><span·class="p"·data-group-id="0976418592-14">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0976418592-15">[</span><span·class="p"·data-group-id="0976418592[·...·truncated·by·diffoscope;·len:·325,·SHA:·c13cb3ec4bf8c5d4bfed0e3284f9263edafc065b7d521d8af563299c47dd87f8·...·]2-13">]</span><span·class="p">,</span><span·class="w">
207 ·</span><span·class="p"·data-group-id="6556334982-17">[</span><span·class="p"·data-group-id="6556334982-18">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6556334982-19">[</span><span·class="p"·data-group-id="6556334982[·...·truncated·by·diffoscope;·len:·325,·SHA:·da2f93bb6a20aa0c3a9a5f78153532ce8e19c0e358fcd12779e6515c7bc81718·...·]2-17">]</span><span·class="w">207 ·</span><span·class="p"·data-group-id="0976418592-17">[</span><span·class="p"·data-group-id="0976418592-18">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0976418592-19">[</span><span·class="p"·data-group-id="0976418592[·...·truncated·by·diffoscope;·len:·325,·SHA:·af1dd6683252010e1d003cab57971505eeb6eec791546b770d49fc9aa48d4bf5·...·]2-17">]</span><span·class="w">
208 </span><span·class="p"·data-group-id="6556334982-12">}</span><span·class="p">.</span></code></pre><p>If·instead·<code·class="inline">m1</code>·and·<code·class="inline">ch3</code>·belong·to·the·same·application,·the·<code·class="inline">.appup</code>·file·can208 </span><span·class="p"·data-group-id="0976418592-12">}</span><span·class="p">.</span></code></pre><p>If·instead·<code·class="inline">m1</code>·and·<code·class="inline">ch3</code>·belong·to·the·same·application,·the·<code·class="inline">.appup</code>·file·can
209 look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6377358236-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">209 look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7607971580-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
210 ·</span><span·class="p"·data-group-id="6377358236-2">[</span><span·class="p"·data-group-id="6377358236-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">210 ·</span><span·class="p"·data-group-id="7607971580-2">[</span><span·class="p"·data-group-id="7607971580-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">
211 ···</span><span·class="p"·data-group-id="6377358236-4">[</span><span·class="p"·data-group-id="6377358236-5">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="6377358236-5">}</span><span·class="p">,</span><span·class="w">211 ···</span><span·class="p"·data-group-id="7607971580-4">[</span><span·class="p"·data-group-id="7607971580-5">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="7607971580-5">}</span><span·class="p">,</span><span·class="w">
212 ····</span><span·class="p"·data-group-id="6377358236-6">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">m1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6377358236-7">[</span><span·class="ss">ch3</sp[·...·truncated·by·diffoscope;·len:·256,·SHA:·d62735bd40022e90cfb5e05f6068a800a12b73c2adaf1a32bcd280960e1844a3·...·]-2">]</span><span·class="p">,</span><span·class="w">212 ····</span><span·class="p"·data-group-id="7607971580-6">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">m1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7607971580-7">[</span><span·class="ss">ch3</sp[·...·truncated·by·diffoscope;·len:·256,·SHA:·a32b287507838a8b5a515f94e52df4fb34aa2dd500683c5a884ff02a0ed88b2b·...·]-2">]</span><span·class="p">,</span><span·class="w">
213 ·</span><span·class="p"·data-group-id="6377358236-8">[</span><span·class="p"·data-group-id="6377358236-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">213 ·</span><span·class="p"·data-group-id="7607971580-8">[</span><span·class="p"·data-group-id="7607971580-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">
214 ···</span><span·class="p"·data-group-id="6377358236-10">[</span><span·class="p"·data-group-id="6377358236-11">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="6377358236-11">}</span><span·class="p">,</span><span·class="w">214 ···</span><span·class="p"·data-group-id="7607971580-10">[</span><span·class="p"·data-group-id="7607971580-11">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="7607971580-11">}</span><span·class="p">,</span><span·class="w">
215 ····</span><span·class="p"·data-group-id="6377358236-12">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">m1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6377358236-13">[</span><span·class="ss">ch3</[·...·truncated·by·diffoscope;·len:·261,·SHA:·570e2923c8c5176a257b660b60ed03a8bcc80f51bea0ed7d63742b34efcaefd5·...·]-8">]</span><span·class="w">215 ····</span><span·class="p"·data-group-id="7607971580-12">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">m1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7607971580-13">[</span><span·class="ss">ch3</[·...·truncated·by·diffoscope;·len:·261,·SHA:·8ff3916acda3bcc9931a812aead7f7b04b4bf18ef722b228a1a60018e153c80b·...·]-8">]</span><span·class="w">
216 </span><span·class="p"·data-group-id="6377358236-1">}</span><span·class="p">.</span></code></pre><p><code·class="inline">m1</code>·is·dependent·on·<code·class="inline">ch3</code>·also·when·downgrading.·<code·class="inline">systools</code>·knows·the216 </span><span·class="p"·data-group-id="7607971580-1">}</span><span·class="p">.</span></code></pre><p><code·class="inline">m1</code>·is·dependent·on·<code·class="inline">ch3</code>·also·when·downgrading.·<code·class="inline">systools</code>·knows·the
217 difference·between·up-·and·downgrading·and·generates·a·correct·<code·class="inline">relup</code>,·where217 difference·between·up-·and·downgrading·and·generates·a·correct·<code·class="inline">relup</code>,·where
218 <code·class="inline">ch3</code>·is·loaded·before·<code·class="inline">m1</code>·when·upgrading,·but·<code·class="inline">m1</code>·is·loaded·before·<code·class="inline">ch3</code>·when218 <code·class="inline">ch3</code>·is·loaded·before·<code·class="inline">m1</code>·when·upgrading,·but·<code·class="inline">m1</code>·is·loaded·before·<code·class="inline">ch3</code>·when
219 downgrading.</p><p><a·href=""·id="spec"></a></p><h2·id="changing-code-for-a-special-process"·class="section-heading">219 downgrading.</p><p><a·href=""·id="spec"></a></p><h2·id="changing-code-for-a-special-process"·class="section-heading">
220 ··<a·href="#changing-code-for-a-special-process"·class="hover-link">220 ··<a·href="#changing-code-for-a-special-process"·class="hover-link">
221 ····<i·class="ri-link-m"·aria-hidden="true"></i>221 ····<i·class="ri-link-m"·aria-hidden="true"></i>
222 ··</a>222 ··</a>
223 ··<span·class="text">Changing·Code·for·a·Special·Process</span>223 ··<span·class="text">Changing·Code·for·a·Special·Process</span>
224 </h2>224 </h2>
225 <p>In·this·case,·simple·code·replacement·is·not·sufficient.·When·a·new·version·of·a225 <p>In·this·case,·simple·code·replacement·is·not·sufficient.·When·a·new·version·of·a
226 residence·module·for·a·special·process·is·loaded,·the·process·must·make·a·fully226 residence·module·for·a·special·process·is·loaded,·the·process·must·make·a·fully
227 qualified·call·to·its·loop·function·to·switch·to·the·new·code.·Thus,227 qualified·call·to·its·loop·function·to·switch·to·the·new·code.·Thus,
228 synchronized·code·replacement·must·be·used.</p><blockquote><h4·class="info">Note</h4><p>The·name(s)·of·the·user-defined·residence·module(s)·must·be·listed·in·the228 synchronized·code·replacement·must·be·used.</p><blockquote><h4·class="info">Note</h4><p>The·name(s)·of·the·user-defined·residence·module(s)·must·be·listed·in·the
229 <code·class="inline">Modules</code>·part·of·the·child·specification·for·the·special·process.·Otherwise229 <code·class="inline">Modules</code>·part·of·the·child·specification·for·the·special·process.·Otherwise
230 the·release·handler·cannot·find·the·process.</p></blockquote><p><em>Example</em></p><p>Consider·the·example·<code·class="inline">ch4</code>·in·<a·href="spec_proc.html#ex">sys·and·proc_lib</a>.230 the·release·handler·cannot·find·the·process.</p></blockquote><p><em>Example</em></p><p>Consider·the·example·<code·class="inline">ch4</code>·in·<a·href="spec_proc.html#ex">sys·and·proc_lib</a>.
231 When·started·by·a·supervisor,·the·child·specification·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4644233803-1">{</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4644233803-2">{</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</sp[·...·truncated·by·diffoscope;·len:·198,·SHA:·917697773286123740bb1257de460a6326cbe1f3b90b02397ca161dc179886cf·...·]-2">}</span><span·class="p">,</span><span·class="w">231 When·started·by·a·supervisor,·the·child·specification·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3141397267-1">{</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3141397267-2">{</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</sp[·...·truncated·by·diffoscope;·len:·198,·SHA:·f5c82f16bbc2e284a74cbaf893fceece369ca74206f620c96611323c6a9327bc·...·]-2">}</span><span·class="p">,</span><span·class="w">
232 ·</span><span·class="ss">permanent</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">worker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4644233803-4">[</span><span·class="ss">ch4</span><span·class="p"·data-group-id="4644233803-4">]</span><span·class="p"·data-group-id="4644233803-1">}</span></code></pre><p>If·<code·class="inline">ch4</code>·is·part·of·the·application·<code·class="inline">sp_app</code>·and·a·new·version·of·the·module·is232 ·</span><span·class="ss">permanent</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">worker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3141397267-4">[</span><span·class="ss">ch4</span><span·class="p"·data-group-id="3141397267-4">]</span><span·class="p"·data-group-id="3141397267-1">}</span></code></pre><p>If·<code·class="inline">ch4</code>·is·part·of·the·application·<code·class="inline">sp_app</code>·and·a·new·version·of·the·module·is
233 to·be·loaded·when·upgrading·from·version·&quot;1&quot;·to·&quot;2&quot;·of·this·application,233 to·be·loaded·when·upgrading·from·version·&quot;1&quot;·to·&quot;2&quot;·of·this·application,
234 <code·class="inline">sp_app.appup</code>·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3887587635-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">234 <code·class="inline">sp_app.appup</code>·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1331629937-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
235 ·</span><span·class="p"·data-group-id="3887587635-2">[</span><span·class="p"·data-group-id="3887587635-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3887587635-4">[</span><span·class="p"·data-group-id="3887587635-5">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3887587635-6">{</span><span·class="ss">advanced</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3887587635-7">[</span><span·class="p"·data-group-id="3887587635-7">]</span><span·class="p"·data-group-id="3887587635-6">}</span><span·class="p"·data-group-id="3887587635-5">}</span><span·class="p"·data-group-id="3887587635-4">]</span><span·class="p"·data-group-id="3887587635-3">}</span><span·class="p"·data-group-id="3887587635-2">]</span><span·class="p">,</span><span·class="w"> 
236 ·</span><span·class="p"·data-group-id="3887587635-8">[</span><span·class="p"·data-group-id="3887587635-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3887587635-10">[</span><span·class="p"·data-group-id="3887587635-1[·...·truncated·by·diffoscope;·len:·667,·SHA:·66a635725b510e41bf7d6c6ef548c9acf844ed270ebdccb15201f5a98f9e5755·...·]</span><span·class="w">235 ·</span><span·class="p"·data-group-id="1331629937-2">[</span><span·class="p"·data-group-id="1331629937-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1331629937-4">[</span><span·class="p"·data-group-id="1331629937-5"[·...·truncated·by·diffoscope;·len:·683,·SHA:·fc4263e8d9689ab0403580d9786473767837a9ec9d1c5e886c897b01767c2781·...·]</span><span·class="w">
 236 ·</span><span·class="p"·data-group-id="1331629937-8">[</span><span·class="p"·data-group-id="1331629937-9">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1331629937-10">[</span><span·class="p"·data-group-id="1331629937-11">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1331629937-12">{</span><span·class="ss">advanced</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1331629937-13">[</span><span·class="p"·data-group-id="1331629937-13">]</span><span·class="p"·data-group-id="1331629937-12">}</span><span·class="p"·data-group-id="1331629937-11">}</span><span·class="p"·data-group-id="1331629937-10">]</span><span·class="p"·data-group-id="1331629937-9">}</span><span·class="p"·data-group-id="1331629937-8">]</span><span·class="w">
237 </span><span·class="p"·data-group-id="3887587635-1">}</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">update</code>·instruction·must·contain·the·tuple·<code·class="inline">{advanced,Extra}</code>.·The237 </span><span·class="p"·data-group-id="1331629937-1">}</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">update</code>·instruction·must·contain·the·tuple·<code·class="inline">{advanced,Extra}</code>.·The
238 instruction·makes·the·special·process·call·the·callback·function238 instruction·makes·the·special·process·call·the·callback·function
239 <code·class="inline">system_code_change/4</code>,·a·function·the·user·must·implement.·The·term·<code·class="inline">Extra</code>,·in239 <code·class="inline">system_code_change/4</code>,·a·function·the·user·must·implement.·The·term·<code·class="inline">Extra</code>,·in
240 this·case·<code·class="inline">[]</code>,·is·passed·as·is·to·<code·class="inline">system_code_change/4</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7889288579-1">(</span><span·class="ss">ch4</span><span·class="p"·data-group-id="7889288579-1">)</span><span·class="p">.</span><span·class="w">240 this·case·<code·class="inline">[]</code>,·is·passed·as·is·to·<code·class="inline">system_code_change/4</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="3638549717-1">(</span><span·class="ss">ch4</span><span·class="p"·data-group-id="3638549717-1">)</span><span·class="p">.</span><span·class="w">
241 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">241 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
242 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7889288579-2">(</span><span·class="p"·data-group-id="7889288579-3">[</span><span·class="ss">system_code_change</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="7889288579-3">]</span><span·class="p"·data-group-id="788928[·...·truncated·by·diffoscope;·len:·4,·SHA:·2f4627f93dcb6d9f60031c5cb881be652315df1fced864eb99ebbd19ba067644·...·]-2">)</span><span·class="p">.</span><span·class="w">242 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3638549717-2">(</span><span·class="p"·data-group-id="3638549717-3">[</span><span·class="ss">system_code_change</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="3638549717-3">]</span><span·class="p"·data-group-id="363854[·...·truncated·by·diffoscope;·len:·4,·SHA:·e2dab25fae5d9647b2f145a6529113febccf081c1a646b9b0b2583a28b43ff27·...·]-2">)</span><span·class="p">.</span><span·class="w">
243 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">243 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
  
244 </span><span·class="nf">system_code_change</span><span·class="p"·data-group-id="7889288579-4">(</span><span·class="n">Chs</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">OldVsn</span><span·[·...·truncated·by·diffoscope;·len:·135,·SHA:·0093406414e479d3965545ca97242422bb12421cf045d15e525b71dac5af295b·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">244 </span><span·class="nf">system_code_change</span><span·class="p"·data-group-id="3638549717-4">(</span><span·class="n">Chs</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">OldVsn</span><span·[·...·truncated·by·diffoscope;·len:·135,·SHA:·9b3715e224aa7c782e734511c3d1bb9648f9cbc5cff358d7e7d2d3bc43ccc440·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
245 ····</span><span·class="p"·data-group-id="7889288579-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="7889288579-5">}</span><span·class="p">.</span></code></pre><ul><li>The·first·argument·is·the·internal·state·<code·class="inline">State</code>,·passed·from245 ····</span><span·class="p"·data-group-id="3638549717-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="3638549717-5">}</span><span·class="p">.</span></code></pre><ul><li>The·first·argument·is·the·internal·state·<code·class="inline">State</code>,·passed·from
Max diff block lines reached; 102437/153173 bytes (66.88%) of diff not shown.
731 B
html2text {}
Max HTML report size reached
5.89 KB
./usr/share/doc/erlang-doc/html/doc/system/benchmarking.html
    
Offset 144, 16 lines modifiedOffset 144, 16 lines modified
144 fast·as·possible,·what·can·we·do?·One·way·could·be·to·generate·more144 fast·as·possible,·what·can·we·do?·One·way·could·be·to·generate·more
145 than·two·bytes·at·the·time.</p><pre><code·class="text">%·erlperf·'rand:bytes(100).'·'crypto:strong_rand_bytes(100).'145 than·two·bytes·at·the·time.</p><pre><code·class="text">%·erlperf·'rand:bytes(100).'·'crypto:strong_rand_bytes(100).'
146 Code···································||········QPS·······Time···Rel146 Code···································||········QPS·······Time···Rel
147 rand:bytes(100).························1····2124·Ki·····470·ns··100%147 rand:bytes(100).························1····2124·Ki·····470·ns··100%
148 crypto:strong_rand_bytes(100).··········1····1915·Ki·····522·ns···90%</code></pre><p><a·href="../../lib/stdlib-6.0.1/doc/html/rand.html#bytes/1"><code·class="inline">rand:bytes/1</code></a>·is·still·faster·when·we·generate·100·bytes·at·the·time,148 crypto:strong_rand_bytes(100).··········1····1915·Ki·····522·ns···90%</code></pre><p><a·href="../../lib/stdlib-6.0.1/doc/html/rand.html#bytes/1"><code·class="inline">rand:bytes/1</code></a>·is·still·faster·when·we·generate·100·bytes·at·the·time,
149 but·the·relative·difference·is·smaller.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erlperf·&#39;rand:bytes(1000).&#39;·&#39;crypto:strong_rand_bytes(1000).&#39;</span><span·class="w">149 but·the·relative·difference·is·smaller.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erlperf·&#39;rand:bytes(1000).&#39;·&#39;crypto:strong_rand_bytes(1000).&#39;</span><span·class="w">
150 </span><span·class="n">Code</span><span·class="w">····································</span><span·class="p">||</span><span·class="w">········</span><span·class="n">QPS</span><span·class="w">·······</span><span·class="n">Time</span><span·class="w">···</span><span·class="n">Rel</span><span·class="w">150 </span><span·class="n">Code</span><span·class="w">····································</span><span·class="p">||</span><span·class="w">········</span><span·class="n">QPS</span><span·class="w">·······</span><span·class="n">Time</span><span·class="w">···</span><span·class="n">Rel</span><span·class="w">
151 </span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">strong_rand_bytes</span><span·class="p"·data-group-id="6458989519-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="6458989519-1">)</span><span·class="p">.</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">····</span><span·class="mi">1518</span><span·class="w">·</span><span·class="n">Ki</span><span·class="w">·····</span><span·class="mi">658</span><span·class="w">·</span><span·class="ss">ns</span><span·class="w">··</span><span·class="mi">100</span><span·class="c1">%</span><span·class="w">151 </span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">strong_rand_bytes</span><span·class="p"·data-group-id="3368767741-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="3368767741-1">)</span><span·class="p">.</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">····</span><span·class="mi">1518</span><span·class="w">·</span><span·class="n">Ki</span><span·class="w">·····</span><span·class="mi">658</span><span·class="w">·</span><span·class="ss">ns</span><span·class="w">··</span><span·class="mi">100</span><span·class="c1">%</span><span·class="w">
152 </span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">bytes</span><span·class="p"·data-group-id="6458989519-2">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="6458989519-2">)</span><span·class="p">.</span><span·class="w">························</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">284</span><span·class="w">·</span><span·class="n">Ki</span><span·class="w">····</span><span·class="mi">3521</span><span·class="w">·</span><span·class="ss">ns</span><span·class="w">···</span><span·class="mi">19</span><span·class="c1">%</span></code></pre><p>When·we·generate·1000·bytes·at·the·time,·<a·href="../../lib/crypto-5.5/doc/html/crypto.html#strong_rand_bytes/1"><code·class="inline">crypto:strong_rand_bytes/1</code></a>·is152 </span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">bytes</span><span·class="p"·data-group-id="3368767741-2">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="3368767741-2">)</span><span·class="p">.</span><span·class="w">························</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">284</span><span·class="w">·</span><span·class="n">Ki</span><span·class="w">····</span><span·class="mi">3521</span><span·class="w">·</span><span·class="ss">ns</span><span·class="w">···</span><span·class="mi">19</span><span·class="c1">%</span></code></pre><p>When·we·generate·1000·bytes·at·the·time,·<a·href="../../lib/crypto-5.5/doc/html/crypto.html#strong_rand_bytes/1"><code·class="inline">crypto:strong_rand_bytes/1</code></a>·is
153 now·the·fastest.</p><h2·id="benchmarking-using-erlang-otp-functionality"·class="section-heading">153 now·the·fastest.</p><h2·id="benchmarking-using-erlang-otp-functionality"·class="section-heading">
154 ··<a·href="#benchmarking-using-erlang-otp-functionality"·class="hover-link">154 ··<a·href="#benchmarking-using-erlang-otp-functionality"·class="hover-link">
155 ····<i·class="ri-link-m"·aria-hidden="true"></i>155 ····<i·class="ri-link-m"·aria-hidden="true"></i>
156 ··</a>156 ··</a>
157 ··<span·class="text">Benchmarking·using·Erlang/OTP·functionality</span>157 ··<span·class="text">Benchmarking·using·Erlang/OTP·functionality</span>
158 </h2>158 </h2>
159 <p>Benchmarks·can·measure·wall-clock·time·or·CPU·time.</p><ul><li><p><a·href="../../lib/stdlib-6.0.1/doc/html/timer.html#tc/3"><code·class="inline">timer:tc/3</code></a>·measures·wall-clock·time.·The·advantage·with·wall-clock·time·is159 <p>Benchmarks·can·measure·wall-clock·time·or·CPU·time.</p><ul><li><p><a·href="../../lib/stdlib-6.0.1/doc/html/timer.html#tc/3"><code·class="inline">timer:tc/3</code></a>·measures·wall-clock·time.·The·advantage·with·wall-clock·time·is
Offset 219, 15 lines modifiedOffset 219, 15 lines modified
219 ······<p·class="built-using">219 ······<p·class="built-using">
220 ········Built·using220 ········Built·using
221 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the221 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
222 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>222 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
223 ······</p>223 ······</p>
224 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>224 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
225 ····</footer>225 ····</footer>
226 ··</div>226 ··</div>
227 </main>227 </main>
228 </div>228 </div>
229 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>229 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
230 <script>230 <script>
231 ··document.addEventListener("DOMContentLoaded",·function·()·{231 ··document.addEventListener("DOMContentLoaded",·function·()·{
707 B
html2text {}
Max HTML report size reached
63.1 KB
./usr/share/doc/erlang-doc/html/doc/system/binaryhandling.html
    
Offset 114, 43 lines modifiedOffset 114, 43 lines modified
  
114 ····<span>Constructing·and·Matching·Binaries</span>114 ····<span>Constructing·and·Matching·Binaries</span>
115 ··</h1>115 ··</h1>
  
116 <p>This·section·gives·a·few·examples·on·how·to·handle·binaries·in·an·efficient·way.116 <p>This·section·gives·a·few·examples·on·how·to·handle·binaries·in·an·efficient·way.
117 The·sections·that·follow·take·an·in-depth·look·at·how·binaries·are·implemented117 The·sections·that·follow·take·an·in-depth·look·at·how·binaries·are·implemented
118 and·how·to·best·take·advantages·of·the·optimizations·done·by·the·compiler·and118 and·how·to·best·take·advantages·of·the·optimizations·done·by·the·compiler·and
119 runtime·system.</p><p>Binaries·can·be·efficiently·<em>built</em>·in·the·following·way:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="2964111260-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="2964111260-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">119 runtime·system.</p><p>Binaries·can·be·efficiently·<em>built</em>·in·the·following·way:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="1593370822-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="1593370822-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
120 ····</span><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="2964111260-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2964111260-2">)</span><span·class="p">.</span><span·class="w">120 ····</span><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="1593370822-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1593370822-2">)</span><span·class="p">.</span><span·class="w">
  
121 </span><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="2964111260-3">(</span><span·class="p"·data-group-id="2964111260-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="2964111260-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·6aa28a18aef88b697f921423281693f74dc65ede147f443ec50d4dfc42e90aba·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">121 </span><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="1593370822-3">(</span><span·class="p"·data-group-id="1593370822-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="1593370822-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·94e2425a3ad5043da442d241b272c61fed9082d48bb97fcaed4a2dcfdec30930·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
122 ····</span><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="2964111260-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Acc</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">H</span><sp[·...·truncated·by·diffoscope;·len:·69,·SHA:·0cf831181eaa19c5360471bc45df573698d0623620e275ce4468cce4dfac84bc·...·]-5">)</span><span·class="p">;</span><span·class="w">122 ····</span><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="1593370822-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Acc</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">H</span><sp[·...·truncated·by·diffoscope;·len:·69,·SHA:·6549fb061b4d02cc1f0367395f933dfe9f4b0df9fe804c648a809dfbc064a1eb·...·]-5">)</span><span·class="p">;</span><span·class="w">
123 </span><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="2964111260-6">(</span><span·class="p"·data-group-id="2964111260-7">[</span><span·class="p"·data-group-id="2964111260-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="2964111260-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">123 </span><span·class="nf">my_list_to_binary</span><span·class="p"·data-group-id="1593370822-6">(</span><span·class="p"·data-group-id="1593370822-7">[</span><span·class="p"·data-group-id="1593370822-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="1593370822-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
124 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>Appending·data·to·a·binary·as·in·the·example·is·efficient·because·it·is124 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>Appending·data·to·a·binary·as·in·the·example·is·efficient·because·it·is
125 specially·optimized·by·the·runtime·system·to·avoid·copying·the·<code·class="inline">Acc</code>·binary125 specially·optimized·by·the·runtime·system·to·avoid·copying·the·<code·class="inline">Acc</code>·binary
126 every·time.</p><p>Prepending·data·to·a·binary·in·a·loop·is·not·efficient:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="7881849422-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="7881849422-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">126 every·time.</p><p>Prepending·data·to·a·binary·in·a·loop·is·not·efficient:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6292537043-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="6292537043-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
127 ····</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="7881849422-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7881849422-2">)</span><span·class="p">.</span><span·class="w">127 ····</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6292537043-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6292537043-2">)</span><span·class="p">.</span><span·class="w">
  
128 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="7881849422-3">(</span><span·class="p"·data-group-id="7881849422-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="7881849422-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·1b1e47dbbfc2abe285754256e3a923c8b4d8c1acc574785c90ebe6e7cd6f92ca·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">128 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6292537043-3">(</span><span·class="p"·data-group-id="6292537043-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6292537043-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·f461bfb60d68b1e6eb5e419df6c8dab1ee99d4eb5d09a7c81c7627f537fc8df8·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
129 ····</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="7881849422-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">H</span><span·class="p">,</span><span·class="n">Acc</span><span·class="o">/</span><span·class="ss">binary</span><sp[·...·truncated·by·diffoscope;·len:·69,·SHA:·ea621369dfe67e84fb6a0dbe8c63216214671a2fa14e67c77a4c43184dcf8047·...·]-5">)</span><span·class="p">;</span><span·class="w">129 ····</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6292537043-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">H</span><span·class="p">,</span><span·class="n">Acc</span><span·class="o">/</span><span·class="ss">binary</span><sp[·...·truncated·by·diffoscope;·len:·69,·SHA:·bc40d3bbb9bfe007d7cd20a7e1f800e6f02dd0e89d43ea4a69a3513749f0488e·...·]-5">)</span><span·class="p">;</span><span·class="w">
130 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="7881849422-6">(</span><span·class="p"·data-group-id="7881849422-7">[</span><span·class="p"·data-group-id="7881849422-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="7881849422-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">130 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6292537043-6">(</span><span·class="p"·data-group-id="6292537043-7">[</span><span·class="p"·data-group-id="6292537043-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="6292537043-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
131 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>This·is·not·efficient·for·long·lists·because·the·<code·class="inline">Acc</code>·binary·is·copied·every131 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>This·is·not·efficient·for·long·lists·because·the·<code·class="inline">Acc</code>·binary·is·copied·every
132 time.·One·way·to·make·the·function·more·efficient·is·like·this:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6978056277-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="6978056277-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">132 time.·One·way·to·make·the·function·more·efficient·is·like·this:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6866869537-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="6866869537-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
133 ····</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6978056277-2">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="6978056277-3">(</span><span·class="n">List</span><span·class="p"·data-group-id="6978056277-3">)</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·132,·SHA:·dde87a361fc21c27068c3c5602a8b59a0326521f22d292085b3fb47d99dab8e0·...·]7-2">)</span><span·class="p">.</span><span·class="w">133 ····</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6866869537-2">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="6866869537-3">(</span><span·class="n">List</span><span·class="p"·data-group-id="6866869537-3">)</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·132,·SHA:·db1f199a3ac48918dc24820abe86f979eb048d256db1c3f721ac18e24361bfac·...·]7-2">)</span><span·class="p">.</span><span·class="w">
  
134 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6978056277-4">(</span><span·class="p"·data-group-id="6978056277-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6978056277-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·57,·SHA:·febc28aa5e23d6c4a9de5d052f5843eeb40f8fd1364f7f720efc06674d6b0e20·...·]7-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">134 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6866869537-4">(</span><span·class="p"·data-group-id="6866869537-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6866869537-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·57,·SHA:·a9c8c05f82dc415cb886921ccfb77245482290e9867ba864706e2d56133a6641·...·]7-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
135 ····</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6978056277-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Acc</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">H</span><spa[·...·truncated·by·diffoscope;·len:·67,·SHA:·88dd793c8d8192573a01e568b87ae76fcb69c19e6fc4586f6084740c9fa3087f·...·]7-6">)</span><span·class="p">;</span><span·class="w">135 ····</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6866869537-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Acc</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">H</span><spa[·...·truncated·by·diffoscope;·len:·67,·SHA:·f0241ebee4e0f8e602ef224cd09e9ea7dcfbf9288b8d34bf5e199a1473bf26cd·...·]7-6">)</span><span·class="p">;</span><span·class="w">
136 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6978056277-7">(</span><span·class="p"·data-group-id="6978056277-8">[</span><span·class="p"·data-group-id="6978056277-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="6978056277-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">136 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="6866869537-7">(</span><span·class="p"·data-group-id="6866869537-8">[</span><span·class="p"·data-group-id="6866869537-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="6866869537-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
137 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>Another·way·to·avoid·copying·the·binary·each·time·is·like·this:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="8696837017-1">(</span><span·class="p"·data-group-id="8696837017-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="8696837017-2">]</span><span·class="p"·data-group-id="8696837017-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">137 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>Another·way·to·avoid·copying·the·binary·each·time·is·like·this:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="1439113550-1">(</span><span·class="p"·data-group-id="1439113550-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="1439113550-2">]</span><span·class="p"·data-group-id="1439113550-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
138 ····</span><span·class="n">RevTail</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="8696837017-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="8696837017-3">)</span><span·class="p">,</span><span·class="w">138 ····</span><span·class="n">RevTail</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="1439113550-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="1439113550-3">)</span><span·class="p">,</span><span·class="w">
139 ····</span><span·class="p">&lt;&lt;</span><span·class="n">RevTail</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">H</span><span·class="p">&gt;&gt;</span><span·class="p">;</span><span·class="w">139 ····</span><span·class="p">&lt;&lt;</span><span·class="n">RevTail</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">H</span><span·class="p">&gt;&gt;</span><span·class="p">;</span><span·class="w">
140 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="8696837017-4">(</span><span·class="p"·data-group-id="8696837017-5">[</span><span·class="p"·data-group-id="8696837017-5">]</span><span·class="p"·data-group-id="8696837017-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">140 </span><span·class="nf">rev_list_to_binary</span><span·class="p"·data-group-id="1439113550-4">(</span><span·class="p"·data-group-id="1439113550-5">[</span><span·class="p"·data-group-id="1439113550-5">]</span><span·class="p"·data-group-id="1439113550-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
141 ····</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p">.</span></code></pre><p>Note·that·in·each·of·the·<strong>DO</strong>·examples,·the·binary·to·be·appended·to·is·always141 ····</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p">.</span></code></pre><p>Note·that·in·each·of·the·<strong>DO</strong>·examples,·the·binary·to·be·appended·to·is·always
142 given·as·the·first·segment.</p><p>Binaries·can·be·efficiently·<em>matched</em>·in·the·following·way:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="2320681900-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">H</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2320681900-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">142 given·as·the·first·segment.</p><p>Binaries·can·be·efficiently·<em>matched</em>·in·the·following·way:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="6803096158-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">H</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6803096158-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
143 ····</span><span·class="p"·data-group-id="2320681900-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="2320681900-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="2320681900-3">)</span><span·class="p"·data-group-id="2320681900-2">]</span><span·class="p">;</span><span·class="w"> 
144 </span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="2320681900-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2320681900-4">)</span><span·class="w">·</span><span·class="p">[·...·truncated·by·diffoscope;·len:·239,·SHA:·f6aea0d5ce02e32bb498759aa0c841431cf8e2b2883f844cad726f96e7496c3d·...·]">143 ····</span><span·class="p"·data-group-id="6803096158-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="6803096158-3">(</span><span·class="n">T</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·118,·SHA:·d94838a71dd006fd87c30e4fa55dda43d41d55b1f7b09445596f35b17f7c2112·...·]">
 144 </span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="6803096158-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6803096158-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6803096158-5">[</span><span·class="p"·data-group-id="6803096158-5">]</span><span·class="p">.</span></code></pre><h2·id="how-binaries-are-implemented"·class="section-heading">
145 ··<a·href="#how-binaries-are-implemented"·class="hover-link">145 ··<a·href="#how-binaries-are-implemented"·class="hover-link">
146 ····<i·class="ri-link-m"·aria-hidden="true"></i>146 ····<i·class="ri-link-m"·aria-hidden="true"></i>
147 ··</a>147 ··</a>
148 ··<span·class="text">How·Binaries·are·Implemented</span>148 ··<span·class="text">How·Binaries·are·Implemented</span>
149 </h2>149 </h2>
150 <p>Internally,·binaries·and·bitstrings·are·implemented·in·the·same·way.·In·this150 <p>Internally,·binaries·and·bitstrings·are·implemented·in·the·same·way.·In·this
151 section,·they·are·called·<em>binaries</em>·because·that·is·what·they·are·called·in·the151 section,·they·are·called·<em>binaries</em>·because·that·is·what·they·are·called·in·the
Offset 219, 15 lines modifiedOffset 219, 15 lines modified
219 the·optimization·in·a·more·efficient·way.</p><blockquote><h4·class="info">Change</h4><p>The·compiler·support·for·making·the·optimization·more·efficient·was·added·in219 the·optimization·in·a·more·efficient·way.</p><blockquote><h4·class="info">Change</h4><p>The·compiler·support·for·making·the·optimization·more·efficient·was·added·in
220 Erlang/OTP·26.</p></blockquote><p>To·explain·how·the·basic·optimization·works,·let·us·examine·the·following·code220 Erlang/OTP·26.</p></blockquote><p>To·explain·how·the·basic·optimization·works,·let·us·examine·the·following·code
221 line·by·line:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Bin0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">····················</span><span·class="c1">%%·1</span><span·class="w">221 line·by·line:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Bin0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">····················</span><span·class="c1">%%·1</span><span·class="w">
222 </span><span·class="n">Bin1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Bin0</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%%·2</span><span·class="w">222 </span><span·class="n">Bin1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Bin0</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%%·2</span><span·class="w">
223 </span><span·class="n">Bin2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Bin1</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%%·3</span><span·class="w">223 </span><span·class="n">Bin2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Bin1</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%%·3</span><span·class="w">
224 </span><span·class="n">Bin3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Bin2</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%%·4</span><span·class="w">224 </span><span·class="n">Bin3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Bin2</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%%·4</span><span·class="w">
225 </span><span·class="n">Bin4</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Bin1</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="mi">17</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%%·5·!!!</span><span·class="w">225 </span><span·class="n">Bin4</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Bin1</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="mi">17</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%%·5·!!!</span><span·class="w">
226 </span><span·class="p"·data-group-id="5110409853-1">{</span><span·class="n">Bin4</span><span·class="p">,</span><span·class="n">Bin3</span><span·class="p"·data-group-id="5110409853-1">}</span><span·class="w">······················</span><span·class="c1">%%·6</span></code></pre><ul><li><p>Line·1·(marked·with·the·<code·class="inline">%%·1</code>·comment),·assigns·a226 </span><span·class="p"·data-group-id="5261503050-1">{</span><span·class="n">Bin4</span><span·class="p">,</span><span·class="n">Bin3</span><span·class="p"·data-group-id="5261503050-1">}</span><span·class="w">······················</span><span·class="c1">%%·6</span></code></pre><ul><li><p>Line·1·(marked·with·the·<code·class="inline">%%·1</code>·comment),·assigns·a
227 <a·href="binaryhandling.html#heap_binary">heap·binary</a>·to·the·<code·class="inline">Bin0</code>·variable.</p></li><li><p>Line·2·is·an·append·operation.·As·<code·class="inline">Bin0</code>·has·not·been·involved·in·an·append227 <a·href="binaryhandling.html#heap_binary">heap·binary</a>·to·the·<code·class="inline">Bin0</code>·variable.</p></li><li><p>Line·2·is·an·append·operation.·As·<code·class="inline">Bin0</code>·has·not·been·involved·in·an·append
228 operation,·a·new·<a·href="binaryhandling.html#refc_binary">refc·binary</a>·is·created·and228 operation,·a·new·<a·href="binaryhandling.html#refc_binary">refc·binary</a>·is·created·and
229 the·contents·of·<code·class="inline">Bin0</code>·is·copied·into·it.·The·<em>ProcBin</em>·part·of·the·refc229 the·contents·of·<code·class="inline">Bin0</code>·is·copied·into·it.·The·<em>ProcBin</em>·part·of·the·refc
230 binary·has·its·size·set·to·the·size·of·the·data·stored·in·the·binary,·while230 binary·has·its·size·set·to·the·size·of·the·data·stored·in·the·binary,·while
231 the·binary·object·has·extra·space·allocated.·The·size·of·the·binary·object·is231 the·binary·object·has·extra·space·allocated.·The·size·of·the·binary·object·is
232 either·twice·the·size·of·<code·class="inline">Bin1</code>·or·256,·whichever·is·larger.·In·this·case·it232 either·twice·the·size·of·<code·class="inline">Bin1</code>·or·256,·whichever·is·larger.·In·this·case·it
233 is·256.</p></li><li><p>Line·3·is·more·interesting.·<code·class="inline">Bin1</code>·<em>has</em>·been·used·in·an·append·operation,·and233 is·256.</p></li><li><p>Line·3·is·more·interesting.·<code·class="inline">Bin1</code>·<em>has</em>·been·used·in·an·append·operation,·and
Offset 253, 23 lines modifiedOffset 253, 23 lines modified
253 handle·an·append·operation·to·a·heap·binary·by·copying·it·to·a·refc·binary·(line253 handle·an·append·operation·to·a·heap·binary·by·copying·it·to·a·refc·binary·(line
254 2),·and·also·handle·an·append·operation·to·a·previous·version·of·the·binary·by254 2),·and·also·handle·an·append·operation·to·a·previous·version·of·the·binary·by
255 copying·it·(line·5).·The·support·for·doing·that·does·not·come·for·free.·For255 copying·it·(line·5).·The·support·for·doing·that·does·not·come·for·free.·For
256 example,·to·make·it·possible·to·know·when·it·is·necessary·to·copy·the·binary,256 example,·to·make·it·possible·to·know·when·it·is·necessary·to·copy·the·binary,
257 for·every·append·operation,·the·runtime·system·must·create·a·sub·binary.</p><p>When·the·compiler·can·determine·that·none·of·those·situations·need·to·be·handled257 for·every·append·operation,·the·runtime·system·must·create·a·sub·binary.</p><p>When·the·compiler·can·determine·that·none·of·those·situations·need·to·be·handled
258 and·that·the·append·operation·cannot·possibly·fail,·the·compiler·generates·code258 and·that·the·append·operation·cannot·possibly·fail,·the·compiler·generates·code
259 that·causes·the·runtime·system·to·apply·a·more·efficient·variant·of·the259 that·causes·the·runtime·system·to·apply·a·more·efficient·variant·of·the
260 optimization.</p><p><strong>Example:</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8791184146-1">(</span><span·class="ss">repack</span><span·class="p"·data-group-id="8791184146-1">)</span><span·class="p">.</span><span·class="w"> 
261 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8791184146-2">(</span><span·class="p"·data-group-id="8791184146-3">[</span><span·class="ss">repack</span><span·class="p">/</span><span·class="mi">1</span><span·clas[·...·truncated·by·diffoscope;·len:·86,·SHA:·81d4d759c2a6bf00f6aa42825ce3df5fd897fe3b8b528462587358e0ef719ffa·...·]">)</span><span·class="p">.</span><span·class="w">260 optimization.</p><p><strong>Example:</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0554253215-1">(</span><span·class="ss">repack</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·21,·SHA:·1bbb1152f75a2a57290ef274badc515d935266f500de1d0acde75283a0c60a91·...·]">)</span><span·class="p">.</span><span·class="w">
 261 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0554253215-2">(</span><span·class="p"·data-group-id="0554253215-3">[</span><span·class="ss">repack</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="0554253215-3">]</span><span·class="p"·data-group-id="0554253215-2">)</span><span·class="p">.</span><span·class="w">
  
262 </span><span·class="nf">repack</span><span·class="p"·data-group-id="8791184146-4">(</span><span·class="n">Bin</span><span·class="p"·data-group-id="8791184146-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_binary</span><span·class="p"·data-group-id="8791184146-5">(<[·...·truncated·by·diffoscope;·len:·73,·SHA:·bb679c02761d8879d0aca1d22bd1221274ae6dac35f0ebf8898a61677c41fbc5·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">262 </span><span·class="nf">repack</span><span·class="p"·data-group-id="0554253215-4">(</span><span·class="n">Bin</span><span·class="p"·data-group-id="0554253215-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_binary</span><span·class="p"·data-group-id="0554253215-5">(<[·...·truncated·by·diffoscope;·len:·73,·SHA:·bc53748ba0a632fc5579af3f08ae3372717d3b9cf4d11f351aeae01f728af6cd·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
263 ····</span><span·class="nf">repack</span><span·class="p"·data-group-id="8791184146-6">(</span><span·class="n">Bin</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8791184146-6">)</span><span·class="p">.</span><span·class="w">263 ····</span><span·class="nf">repack</span><span·class="p"·data-group-id="0554253215-6">(</span><span·class="n">Bin</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0554253215-6">)</span><span·class="p">.</span><span·class="w">
  
264 </span><span·class="nf">repack</span><span·class="p"·data-group-id="8791184146-7">(</span><span·class="p">&lt;&lt;</span><span·class="n">C</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</sp[·...·truncated·by·diffoscope;·len:·121,·SHA:·3c07c20e59e01c2377392cd354653d0c5d02af1efdc78d75238cc1882afed13c·...·]-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">264 </span><span·class="nf">repack</span><span·class="p"·data-group-id="0554253215-7">(</span><span·class="p">&lt;&lt;</span><span·class="n">C</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</sp[·...·truncated·by·diffoscope;·len:·121,·SHA:·bc2bd09fe23553438d216ae4d97f0087c26cdc15eb261c4ea8b07b22729bcdec·...·]-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
265 ····</span><span·class="nf">repack</span><span·class="p"·data-group-id="8791184146-8">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Result</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">C</span>[·...·truncated·by·diffoscope;·len:·122,·SHA:·59ef53ac83309f24ee3c5e7be1ed1acfa77c551dbfe70745deda45cda6d8ac25·...·]-8">)</span><span·class="p">;</span><span·class="w">265 ····</span><span·class="nf">repack</span><span·class="p"·data-group-id="0554253215-8">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Result</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">C</span>[·...·truncated·by·diffoscope;·len:·122,·SHA:·fd7aa379a7fbebf255dcaf89dd7fd52794ce2b0a0be52781b0e3ca5d3c66f2d9·...·]-8">)</span><span·class="p">;</span><span·class="w">
266 </span><span·class="nf">repack</span><span·class="p"·data-group-id="8791184146-9">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="8791184146-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">266 </span><span·class="nf">repack</span><span·class="p"·data-group-id="0554253215-9">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="0554253215-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
267 ····</span><span·class="n">Result</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">repack/2</code>·function·only·keeps·a·single·version·of·the·binary,·so·there·is267 ····</span><span·class="n">Result</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">repack/2</code>·function·only·keeps·a·single·version·of·the·binary,·so·there·is
268 never·any·need·to·copy·the·binary.·The·compiler·rewrites·the·creation·of·the268 never·any·need·to·copy·the·binary.·The·compiler·rewrites·the·creation·of·the
269 empty·binary·in·<code·class="inline">repack/1</code>·to·instead·create·a·refc·binary·with·256·bytes269 empty·binary·in·<code·class="inline">repack/1</code>·to·instead·create·a·refc·binary·with·256·bytes
270 already·reserved;·thus,·the·append·operation·in·<code·class="inline">repack/2</code>·never·needs·to·handle270 already·reserved;·thus,·the·append·operation·in·<code·class="inline">repack/2</code>·never·needs·to·handle
271 a·binary·not·prepared·for·appending.</p><p><a·href=""·id="forced_copying"></a></p><h3·id="circumstances-that-force-copying"·class="section-heading">271 a·binary·not·prepared·for·appending.</p><p><a·href=""·id="forced_copying"></a></p><h3·id="circumstances-that-force-copying"·class="section-heading">
272 ··<a·href="#circumstances-that-force-copying"·class="hover-link">272 ··<a·href="#circumstances-that-force-copying"·class="hover-link">
273 ····<i·class="ri-link-m"·aria-hidden="true"></i>273 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 304, 49 lines modifiedOffset 304, 49 lines modified
304 a·binary·that·has·been·shrunk,·the·binary·object·will·be·reallocated·to·make304 a·binary·that·has·been·shrunk,·the·binary·object·will·be·reallocated·to·make
305 place·for·the·data·to·be·appended.</p><h2·id="matching-binaries"·class="section-heading">305 place·for·the·data·to·be·appended.</p><h2·id="matching-binaries"·class="section-heading">
306 ··<a·href="#matching-binaries"·class="hover-link">306 ··<a·href="#matching-binaries"·class="hover-link">
307 ····<i·class="ri-link-m"·aria-hidden="true"></i>307 ····<i·class="ri-link-m"·aria-hidden="true"></i>
308 ··</a>308 ··</a>
309 ··<span·class="text">Matching·Binaries</span>309 ··<span·class="text">Matching·Binaries</span>
310 </h2>310 </h2>
311 <p>Let·us·revisit·the·example·in·the·beginning·of·the·previous·section:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="0619540415-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">H</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0619540415-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">311 <p>Let·us·revisit·the·example·in·the·beginning·of·the·previous·section:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="8656679238-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">H</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8656679238-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
312 ····</span><span·class="p"·data-group-id="0619540415-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="0619540415-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="0619540415-3">)</span><span·class="p"·data-group-id="0619540415-2">]</span><span·class="p">;</span><span·class="w"> 
313 </span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="0619540415-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0619540415-4">)</span><span·class="w">·</span><span·class="p">[·...·truncated·by·diffoscope;·len:·257,·SHA:·68afaa10893fff096286d5c4fc03a271724507b7f9a2b8ae469b7f3aa47ce4c0·...·]312 ····</span><span·class="p"·data-group-id="8656679238-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="8656679238-3">(</span><span·class="n">T</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·120,·SHA:·8ae2ad19ab3d59564cdaa8872ba60f820454614417575e649075e3bc374bab9e·...·]
 313 </span><span·class="nf">my_binary_to_list</span><span·class="p"·data-group-id="8656679238-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8656679238-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8656679238-5">[</span><span·class="p"·data-group-id="8656679238-5">]</span><span·class="p">.</span></code></pre><p>The·first·time·<code·class="inline">my_binary_to_list/1</code>·is·called,·a
314 <a·href="binaryhandling.html#match_context">match·context</a>·is·created.·The·match·context314 <a·href="binaryhandling.html#match_context">match·context</a>·is·created.·The·match·context
315 points·to·the·first·byte·of·the·binary.·1·byte·is·matched·out·and·the·match315 points·to·the·first·byte·of·the·binary.·1·byte·is·matched·out·and·the·match
316 context·is·updated·to·point·to·the·second·byte·in·the·binary.</p><p>At·this·point·it·would·make·sense·to·create·a316 context·is·updated·to·point·to·the·second·byte·in·the·binary.</p><p>At·this·point·it·would·make·sense·to·create·a
317 <a·href="binaryhandling.html#sub_binary">sub·binary</a>,·but·in·this·particular·example·the317 <a·href="binaryhandling.html#sub_binary">sub·binary</a>,·but·in·this·particular·example·the
318 compiler·sees·that·there·will·soon·be·a·call·to·a·function·(in·this·case,·to318 compiler·sees·that·there·will·soon·be·a·call·to·a·function·(in·this·case,·to
319 <code·class="inline">my_binary_to_list/1</code>·itself)·that·immediately·will·create·a·new·match·context319 <code·class="inline">my_binary_to_list/1</code>·itself)·that·immediately·will·create·a·new·match·context
320 and·discard·the·sub·binary.</p><p>Therefore·<code·class="inline">my_binary_to_list/1</code>·calls·itself·with·the·match·context·instead·of320 and·discard·the·sub·binary.</p><p>Therefore·<code·class="inline">my_binary_to_list/1</code>·calls·itself·with·the·match·context·instead·of
321 with·a·sub·binary.·The·instruction·that·initializes·the·matching·operation321 with·a·sub·binary.·The·instruction·that·initializes·the·matching·operation
322 basically·does·nothing·when·it·sees·that·it·was·passed·a·match·context·instead322 basically·does·nothing·when·it·sees·that·it·was·passed·a·match·context·instead
323 of·a·binary.</p><p>When·the·end·of·the·binary·is·reached·and·the·second·clause·matches,·the·match323 of·a·binary.</p><p>When·the·end·of·the·binary·is·reached·and·the·second·clause·matches,·the·match
324 context·will·simply·be·discarded·(removed·in·the·next·garbage·collection,·as324 context·will·simply·be·discarded·(removed·in·the·next·garbage·collection,·as
325 there·is·no·longer·any·reference·to·it).</p><p>To·summarize,·<code·class="inline">my_binary_to_list/1</code>·only·needs·to·create·<em>one</em>·match·context·and325 there·is·no·longer·any·reference·to·it).</p><p>To·summarize,·<code·class="inline">my_binary_to_list/1</code>·only·needs·to·create·<em>one</em>·match·context·and
326 no·sub·binaries.</p><p>Notice·that·the·match·context·in·<code·class="inline">my_binary_to_list/1</code>·was·discarded·when·the326 no·sub·binaries.</p><p>Notice·that·the·match·context·in·<code·class="inline">my_binary_to_list/1</code>·was·discarded·when·the
327 entire·binary·had·been·traversed.·What·happens·if·the·iteration·stops·before·it327 entire·binary·had·been·traversed.·What·happens·if·the·iteration·stops·before·it
328 has·reached·the·end·of·the·binary?·Will·the·optimization·still·work?</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">after_zero</span><span·class="p"·data-group-id="8232282218-1">(</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8232282218-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">328 has·reached·the·end·of·the·binary?·Will·the·optimization·still·work?</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">after_zero</span><span·class="p"·data-group-id="9145156347-1">(</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="9145156347-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
329 ····</span><span·class="n">T</span><span·class="p">;</span><span·class="w">329 ····</span><span·class="n">T</span><span·class="p">;</span><span·class="w">
330 </span><span·class="nf">after_zero</span><span·class="p"·data-group-id="8232282218-2">(</span><span·class="p">&lt;&lt;</span><span·class="p">_</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8232282218-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">330 </span><span·class="nf">after_zero</span><span·class="p"·data-group-id="9145156347-2">(</span><span·class="p">&lt;&lt;</span><span·class="p">_</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="9145156347-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
331 ····</span><span·class="nf">after_zero</span><span·class="p"·data-group-id="8232282218-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="8232282218-3">)</span><span·class="p">;</span><span·class="w">331 ····</span><span·class="nf">after_zero</span><span·class="p"·data-group-id="9145156347-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="9145156347-3">)</span><span·class="p">;</span><span·class="w">
332 </span><span·class="nf">after_zero</span><span·class="p"·data-group-id="8232282218-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8232282218-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">332 </span><span·class="nf">after_zero</span><span·class="p"·data-group-id="9145156347-4">(</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="9145156347-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
333 ····</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p">.</span></code></pre><p>Yes,·it·will.·The·compiler·will·remove·the·building·of·the·sub·binary·in·the333 ····</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p">.</span></code></pre><p>Yes,·it·will.·The·compiler·will·remove·the·building·of·the·sub·binary·in·the
334 second·clause:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">334 second·clause:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
335 </span><span·class="nf">after_zero</span><span·class="p"·data-group-id="0647177718-1">(</span><span·class="p">&lt;&lt;</span><span·class="p">_</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0647177718-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">335 </span><span·class="nf">after_zero</span><span·class="p"·data-group-id="9716062284-1">(</span><span·class="p">&lt;&lt;</span><span·class="p">_</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="9716062284-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
336 ····</span><span·class="nf">after_zero</span><span·class="p"·data-group-id="0647177718-2">(</span><span·class="n">T</span><span·class="p"·data-group-id="0647177718-2">)</span><span·class="p">;</span><span·class="w">336 ····</span><span·class="nf">after_zero</span><span·class="p"·data-group-id="9716062284-2">(</span><span·class="n">T</span><span·class="p"·data-group-id="9716062284-2">)</span><span·class="p">;</span><span·class="w">
337 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>But·it·will·generate·code·that·builds·a·sub·binary·in·the·first·clause:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">after_zero</span><span·class="p"·data-group-id="7300847975-1">(</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7300847975-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">337 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>But·it·will·generate·code·that·builds·a·sub·binary·in·the·first·clause:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">after_zero</span><span·class="p"·data-group-id="1290653894-1">(</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1290653894-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
338 ····</span><span·class="n">T</span><span·class="p">;</span><span·class="w">338 ····</span><span·class="n">T</span><span·class="p">;</span><span·class="w">
339 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Therefore,·<code·class="inline">after_zero/1</code>·builds·one·match·context·and·one·sub·binary·(assuming339 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Therefore,·<code·class="inline">after_zero/1</code>·builds·one·match·context·and·one·sub·binary·(assuming
340 it·is·passed·a·binary·that·contains·a·zero·byte).</p><p>Code·like·the·following·will·also·be·optimized:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all_but_zeroes_to_list</span><span·class="p"·data-group-id="6975456360-1">(</span><span·class="n">Buffer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="6975456360-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">340 it·is·passed·a·binary·that·contains·a·zero·byte).</p><p>Code·like·the·following·will·also·be·optimized:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all_but_zeroes_to_list</span><span·class="p"·data-group-id="2890655890-1">(</span><span·class="n">Buffer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="2890655890-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
341 ····</span><span·class="p"·data-group-id="6975456360-2">{</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="6975456360-3">(</span><span·class="n">Acc</span><span·class="p"·data-group-id="6975456360-3">)</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·75,·SHA:·44162f68f14f41b67e2f9d769237d2d2b65c27196799d1a0811360608da0a686·...·]0-2">}</span><span·class="p">;</span><span·class="w">341 ····</span><span·class="p"·data-group-id="2890655890-2">{</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="2890655890-3">(</span><span·class="n">Acc</span><span·class="p"·data-group-id="2890655890-3">)</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·75,·SHA:·4dbc91ee4eeef427c867026651f88fad67ac743cd15cc2148ba157780b7b4719·...·]0-2">}</span><span·class="p">;</span><span·class="w">
342 </span><span·class="nf">all_but_zeroes_to_list</span><span·class="p"·data-group-id="6975456360-4">(</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·149,·SHA:·ee316ff19f647563cf3a85e16c0c760e691537a6092c81760640768e0a7ff669·...·]0-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">342 </span><span·class="nf">all_but_zeroes_to_list</span><span·class="p"·data-group-id="2890655890-4">(</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·149,·SHA:·9519a1aa22f5b4ca118715e25cf90009faac9c0c17b228e1f863b17016fe92c9·...·]0-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
343 ····</span><span·class="nf">all_but_zeroes_to_list</span><span·class="p"·data-group-id="6975456360-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Remaining</span><span·class="o">-</span><span·class="mi">1</span><span·c[·...·truncated·by·diffoscope;·len:·33,·SHA:·16fa3b050b85a2e22e6b7b2540b043ee58363cc470e4d146dff44ab5bf0f1e48·...·]0-5">)</span><span·class="p">;</span><span·class="w">343 ····</span><span·class="nf">all_but_zeroes_to_list</span><span·class="p"·data-group-id="2890655890-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Remaining</span><span·class="o">-</span><span·class="mi">1</span><span·c[·...·truncated·by·diffoscope;·len:·33,·SHA:·9f8c2ffdd544773b0e22cb334f1e3d23af2434a95df0012a47c6b8c2233ef1a4·...·]0-5">)</span><span·class="p">;</span><span·class="w">
Max diff block lines reached; 15414/63878 bytes (24.13%) of diff not shown.
626 B
html2text {}
Max HTML report size reached
32.9 KB
./usr/share/doc/erlang-doc/html/doc/system/bit_syntax.html
    
Offset 141, 25 lines modifiedOffset 141, 25 lines modified
141 </span><span·class="n">Bin12</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc&quot;</span><span·class="p">&gt;&gt;</span></code></pre><p>This·gives·two·binaries·of·size·3,·with·the·following·evaluations:</p><ul><li><a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_list/1"><code·class="inline">binary_to_list(Bin11)</code></a>·evaluates·to·<code·class="inline">[1,·17,·42]</code>.</li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_list/1"><code·class="inline">binary_to_list(Bin12)</code></a>·evaluates·to·<code·class="inline">[97,·98,·99]</code>.</li></ul><p><em>Example·2:</em>Similarly,·a·binary·can·be·constructed·from·a·set·of·bound141 </span><span·class="n">Bin12</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc&quot;</span><span·class="p">&gt;&gt;</span></code></pre><p>This·gives·two·binaries·of·size·3,·with·the·following·evaluations:</p><ul><li><a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_list/1"><code·class="inline">binary_to_list(Bin11)</code></a>·evaluates·to·<code·class="inline">[1,·17,·42]</code>.</li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_list/1"><code·class="inline">binary_to_list(Bin12)</code></a>·evaluates·to·<code·class="inline">[97,·98,·99]</code>.</li></ul><p><em>Example·2:</em>Similarly,·a·binary·can·be·constructed·from·a·set·of·bound
142 variables:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">17</span><span·class="p">,</span><span·class="w">·</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">,</span><span·class="w">142 variables:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">17</span><span·class="p">,</span><span·class="w">·</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">,</span><span·class="w">
143 </span><span·class="n">Bin2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">A</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="p">,</span><span·class="w">·</span><span·class="n">C</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">&gt;&gt;</span></code></pre><p>This·gives·a·binary·of·size·4.·Here,·a·<em>size·expression</em>·is·used·for·the143 </span><span·class="n">Bin2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">A</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="p">,</span><span·class="w">·</span><span·class="n">C</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">&gt;&gt;</span></code></pre><p>This·gives·a·binary·of·size·4.·Here,·a·<em>size·expression</em>·is·used·for·the
144 variable·<code·class="inline">C</code>·to·specify·a·16-bits·segment·of·<code·class="inline">Bin2</code>.</p><p><a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_list/1"><code·class="inline">binary_to_list(Bin2)</code></a>·evaluates·to·<code·class="inline">[1,·17,·00,·42]</code>.</p><p><em>Example·3:</em>·A·Bin·can·also·be·used·for·matching.·<code·class="inline">D</code>,·<code·class="inline">E</code>,·and·<code·class="inline">F</code>·are·unbound144 variable·<code·class="inline">C</code>·to·specify·a·16-bits·segment·of·<code·class="inline">Bin2</code>.</p><p><a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_list/1"><code·class="inline">binary_to_list(Bin2)</code></a>·evaluates·to·<code·class="inline">[1,·17,·00,·42]</code>.</p><p><em>Example·3:</em>·A·Bin·can·also·be·used·for·matching.·<code·class="inline">D</code>,·<code·class="inline">E</code>,·and·<code·class="inline">F</code>·are·unbound
145 variables,·and·<code·class="inline">Bin2</code>·is·bound,·as·in·Example·2:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="n">D</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Bin2</span></code></pre><p>This·gives·<code·class="inline">D·=·273</code>,·<code·class="inline">E·=·00</code>,·and·F·binds·to·a·binary·of·size·1:145 variables,·and·<code·class="inline">Bin2</code>·is·bound,·as·in·Example·2:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="n">D</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Bin2</span></code></pre><p>This·gives·<code·class="inline">D·=·273</code>,·<code·class="inline">E·=·00</code>,·and·F·binds·to·a·binary·of·size·1:
146 <code·class="inline">binary_to_list(F)·=·[42]</code>.</p><p><em>Example·4:</em>·The·following·is·a·more·elaborate·example·of·matching.·Here,146 <code·class="inline">binary_to_list(F)·=·[42]</code>.</p><p><em>Example·4:</em>·The·following·is·a·more·elaborate·example·of·matching.·Here,
147 <code·class="inline">Dgram</code>·is·bound·to·the·consecutive·bytes·of·an·IP·datagram·of·IP·protocol147 <code·class="inline">Dgram</code>·is·bound·to·the·consecutive·bytes·of·an·IP·datagram·of·IP·protocol
148 version·4.·The·ambition·is·to·extract·the·header·and·the·data·of·the·datagram:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="9732068315-1">(</span><span·class="n">IP_VERSION</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="p"·data-group-id="9732068315-1">)</span><span·class="p">.</span><span·class="w">148 version·4.·The·ambition·is·to·extract·the·header·and·the·data·of·the·datagram:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="9961078898-1">(</span><span·class="n">IP_VERSION</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="p"·data-group-id="9961078898-1">)</span><span·class="p">.</span><span·class="w">
149 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="9732068315-2">(</span><span·class="n">IP_MIN_HDR_LEN</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5</span><span·class="p"·data-group-id="9732068315-2">)</span><span·class="p">.</span><span·class="w">149 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="9961078898-2">(</span><span·class="n">IP_MIN_HDR_LEN</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5</span><span·class="p"·data-group-id="9961078898-2">)</span><span·class="p">.</span><span·class="w">
  
150 </span><span·class="n">DgramSize</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">byte_size</span><span·class="p"·data-group-id="9732068315-3">(</span><span·class="n">Dgram</span><span·class="p"·data-group-id="9732068315-3">)</span><span·class="p">,</span><span·class="w">150 </span><span·class="n">DgramSize</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">byte_size</span><span·class="p"·data-group-id="9961078898-3">(</span><span·class="n">Dgram</span><span·class="p"·data-group-id="9961078898-3">)</span><span·class="p">,</span><span·class="w">
151 </span><span·class="k">case</span><span·class="w">·</span><span·class="n">Dgram</span><span·class="w">·</span><span·class="k">of</span><span·class="w">151 </span><span·class="k">case</span><span·class="w">·</span><span·class="n">Dgram</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
152 ····</span><span·class="p">&lt;&lt;</span><span·class="o">?</span><span·class="n">IP_VERSION</span><span·class="p">:</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HLen</span><span·class="p">:</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SrvcType</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TotLen</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">152 ····</span><span·class="p">&lt;&lt;</span><span·class="o">?</span><span·class="n">IP_VERSION</span><span·class="p">:</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HLen</span><span·class="p">:</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SrvcType</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TotLen</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">
153 ······</span><span·class="n">ID</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Flgs</span><span·class="p">:</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FragOff</span><span·class="p">:</span><span·class="mi">13</span><span·class="p">,</span><span·class="w">153 ······</span><span·class="n">ID</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Flgs</span><span·class="p">:</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FragOff</span><span·class="p">:</span><span·class="mi">13</span><span·class="p">,</span><span·class="w">
154 ······</span><span·class="n">TTL</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Proto</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HdrChkSum</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">154 ······</span><span·class="n">TTL</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Proto</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HdrChkSum</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">
155 ······</span><span·class="n">SrcIP</span><span·class="p">:</span><span·class="mi">32</span><span·class="p">,</span><span·class="w">155 ······</span><span·class="n">SrcIP</span><span·class="p">:</span><span·class="mi">32</span><span·class="p">,</span><span·class="w">
156 ······</span><span·class="n">DestIP</span><span·class="p">:</span><span·class="mi">32</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RestDgram</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">HLen</span><span·class="o">&gt;=</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="o">*</span><span·class="n">HLen</span><span·class="o">=&lt;</span><span·class="n">DgramSize</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">156 ······</span><span·class="n">DestIP</span><span·class="p">:</span><span·class="mi">32</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RestDgram</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">HLen</span><span·class="o">&gt;=</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="o">*</span><span·class="n">HLen</span><span·class="o">=&lt;</span><span·class="n">DgramSize</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
157 ········</span><span·class="n">OptsLen</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">4</span><span·class="o">*</span><span·class="p"·data-group-id="9732068315-4">(</span><span·class="n">HLen</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">?</span><span·class="n">IP_MIN_HDR_LEN</span><span·class="p"·data-group-id="9732068315-4">)</span><span·class="p">,</span><span·class="w">157 ········</span><span·class="n">OptsLen</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">4</span><span·class="o">*</span><span·class="p"·data-group-id="9961078898-4">(</span><span·class="n">HLen</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">?</span><span·class="n">IP_MIN_HDR_LEN</span><span·class="p"·data-group-id="9961078898-4">)</span><span·class="p">,</span><span·class="w">
158 ········</span><span·class="p">&lt;&lt;</span><span·class="n">Opts</span><span·class="p">:</span><span·class="n">OptsLen</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">Data</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">RestDgram</span><span·class="p">,</span><span·class="w">158 ········</span><span·class="p">&lt;&lt;</span><span·class="n">Opts</span><span·class="p">:</span><span·class="n">OptsLen</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">Data</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">RestDgram</span><span·class="p">,</span><span·class="w">
159 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">159 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
160 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Here,·the·segment·corresponding·to·the·<code·class="inline">Opts</code>·variable·has·a·<em>type·modifier</em>,160 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Here,·the·segment·corresponding·to·the·<code·class="inline">Opts</code>·variable·has·a·<em>type·modifier</em>,
161 specifying·that·<code·class="inline">Opts</code>·is·to·bind·to·a·binary.·All·other·variables·have·the161 specifying·that·<code·class="inline">Opts</code>·is·to·bind·to·a·binary.·All·other·variables·have·the
162 default·type·equal·to·unsigned·integer.</p><p>An·IP·datagram·header·is·of·variable·length.·This·length·is·measured·in·the162 default·type·equal·to·unsigned·integer.</p><p>An·IP·datagram·header·is·of·variable·length.·This·length·is·measured·in·the
163 number·of·32-bit·words·and·is·given·in·the·segment·corresponding·to·<code·class="inline">HLen</code>.·The163 number·of·32-bit·words·and·is·given·in·the·segment·corresponding·to·<code·class="inline">HLen</code>.·The
164 minimum·value·of·<code·class="inline">HLen</code>·is·5.·It·is·the·segment·corresponding·to·<code·class="inline">Opts</code>·that·is164 minimum·value·of·<code·class="inline">HLen</code>·is·5.·It·is·the·segment·corresponding·to·<code·class="inline">Opts</code>·that·is
Offset 229, 15 lines modifiedOffset 229, 15 lines modified
229 is·1.</p><p>For·clarity,·it·is·recommended·not·to·change·the·unit·size·for·binaries.229 is·1.</p><p>For·clarity,·it·is·recommended·not·to·change·the·unit·size·for·binaries.
230 Instead,·use·<code·class="inline">binary</code>·when·you·need·byte·alignment·and·<code·class="inline">bitstring</code>·when·you·need230 Instead,·use·<code·class="inline">binary</code>·when·you·need·byte·alignment·and·<code·class="inline">bitstring</code>·when·you·need
231 bit·alignment.</p><p>The·following·example·successfully·constructs·a·bitstring·of·7·bits,·provided231 bit·alignment.</p><p>The·following·example·successfully·constructs·a·bitstring·of·7·bits,·provided
232 that·all·of·X·and·Y·are·integers:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="p">:</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">Y</span><span·class="p">:</span><span·class="mi">6</span><span·class="p">&gt;&gt;</span></code></pre><p>As·mentioned·earlier,·segments·have·the·following·general·syntax:</p><p><code·class="inline">Value:Size/TypeSpecifierList</code></p><p>When·constructing·binaries,·<code·class="inline">Value</code>·and·<code·class="inline">Size</code>·can·be·any·Erlang·expression.232 that·all·of·X·and·Y·are·integers:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="p">:</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">Y</span><span·class="p">:</span><span·class="mi">6</span><span·class="p">&gt;&gt;</span></code></pre><p>As·mentioned·earlier,·segments·have·the·following·general·syntax:</p><p><code·class="inline">Value:Size/TypeSpecifierList</code></p><p>When·constructing·binaries,·<code·class="inline">Value</code>·and·<code·class="inline">Size</code>·can·be·any·Erlang·expression.
233 However,·for·syntactical·reasons,·both·<code·class="inline">Value</code>·and·<code·class="inline">Size</code>·must·be·enclosed·in233 However,·for·syntactical·reasons,·both·<code·class="inline">Value</code>·and·<code·class="inline">Size</code>·must·be·enclosed·in
234 parenthesis·if·the·expression·consists·of·anything·more·than·a·single·literal·or234 parenthesis·if·the·expression·consists·of·anything·more·than·a·single·literal·or
235 a·variable.·The·following·gives·a·compiler·syntax·error:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">&gt;&gt;</span></code></pre><p>This·expression·must·be·rewritten·into·the·following,·to·be·accepted·by·the235 a·variable.·The·following·gives·a·compiler·syntax·error:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">&gt;&gt;</span></code></pre><p>This·expression·must·be·rewritten·into·the·following,·to·be·accepted·by·the
236 compiler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="p"·data-group-id="2498839368-1">(</span><span·class="n">X</span><span·class="o">+</span><span·class="mi">1</span><span·class="p"·data-group-id="2498839368-1">)</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">&gt;&gt;</span></code></pre><h3·id="including-literal-strings"·class="section-heading">236 compiler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="p"·data-group-id="8278506247-1">(</span><span·class="n">X</span><span·class="o">+</span><span·class="mi">1</span><span·class="p"·data-group-id="8278506247-1">)</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">&gt;&gt;</span></code></pre><h3·id="including-literal-strings"·class="section-heading">
237 ··<a·href="#including-literal-strings"·class="hover-link">237 ··<a·href="#including-literal-strings"·class="hover-link">
238 ····<i·class="ri-link-m"·aria-hidden="true"></i>238 ····<i·class="ri-link-m"·aria-hidden="true"></i>
239 ··</a>239 ··</a>
240 ··<span·class="text">Including·Literal·Strings</span>240 ··<span·class="text">Including·Literal·Strings</span>
241 </h3>241 </h3>
242 <p>A·literal·string·can·be·written·instead·of·an·element:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="s">&quot;hello&quot;</span><span·class="p">&gt;&gt;</span></code></pre><p>This·is·syntactic·sugar·for·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="sc">$h</span><span·class="p">,</span><span·class="sc">$e</span><span·class="p">,</span><span·class="sc">$l</span><span·class="p">,</span><span·class="sc">$l</span><span·class="p">,</span><span·class="sc">$o</span><span·class="p">&gt;&gt;</span></code></pre><h2·id="matching-binaries"·class="section-heading">242 <p>A·literal·string·can·be·written·instead·of·an·element:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="s">&quot;hello&quot;</span><span·class="p">&gt;&gt;</span></code></pre><p>This·is·syntactic·sugar·for·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">&lt;&lt;</span><span·class="sc">$h</span><span·class="p">,</span><span·class="sc">$e</span><span·class="p">,</span><span·class="sc">$l</span><span·class="p">,</span><span·class="sc">$l</span><span·class="p">,</span><span·class="sc">$o</span><span·class="p">&gt;&gt;</span></code></pre><h2·id="matching-binaries"·class="section-heading">
243 ··<a·href="#matching-binaries"·class="hover-link">243 ··<a·href="#matching-binaries"·class="hover-link">
Offset 249, 49 lines modifiedOffset 249, 49 lines modified
249 occur·wherever·patterns·are·allowed,·including·inside·other·patterns.·Binary249 occur·wherever·patterns·are·allowed,·including·inside·other·patterns.·Binary
250 patterns·cannot·be·nested.·The·pattern·<code·class="inline">&lt;&lt;&gt;&gt;</code>·matches·a·zero·length·binary.</p><p>Each·segment·in·a·binary·can·consist·of·zero·or·more·bits.·A·segment·of·type250 patterns·cannot·be·nested.·The·pattern·<code·class="inline">&lt;&lt;&gt;&gt;</code>·matches·a·zero·length·binary.</p><p>Each·segment·in·a·binary·can·consist·of·zero·or·more·bits.·A·segment·of·type
251 <code·class="inline">binary</code>·must·have·a·size·evenly·divisible·by·8·(or·divisible·by·the·unit·size,251 <code·class="inline">binary</code>·must·have·a·size·evenly·divisible·by·8·(or·divisible·by·the·unit·size,
252 if·the·unit·size·has·been·changed).·A·segment·of·type·<code·class="inline">bitstring</code>·has·no252 if·the·unit·size·has·been·changed).·A·segment·of·type·<code·class="inline">bitstring</code>·has·no
253 restrictions·on·the·size.·A·segment·of·type·<code·class="inline">float</code>·must·have·size·64·or·32.</p><p>As·mentioned·earlier,·segments·have·the·following·general·syntax:</p><p><code·class="inline">Value:Size/TypeSpecifierList</code></p><p>When·matching·<code·class="inline">Value</code>,·value·must·be·either·a·variable·or·an·integer,·or·a253 restrictions·on·the·size.·A·segment·of·type·<code·class="inline">float</code>·must·have·size·64·or·32.</p><p>As·mentioned·earlier,·segments·have·the·following·general·syntax:</p><p><code·class="inline">Value:Size/TypeSpecifierList</code></p><p>When·matching·<code·class="inline">Value</code>,·value·must·be·either·a·variable·or·an·integer,·or·a
254 floating·point·literal.·Expressions·are·not·allowed.</p><p><code·class="inline">Size</code>·must·be·a254 floating·point·literal.·Expressions·are·not·allowed.</p><p><code·class="inline">Size</code>·must·be·a
255 <a·href="../../doc/system/expressions.html#guard-expressions">guard·expression</a>,·which·can·use255 <a·href="../../doc/system/expressions.html#guard-expressions">guard·expression</a>,·which·can·use
256 literals·and·previously·bound·variables.·The·following·is·not·allowed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="9792330406-1">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="p">:</span><span·class="n">N</span><span·class="p">,</span><span·class="n">T</span><span·class="[·...·truncated·by·diffoscope;·len:·112,·SHA:·ceaa7f564ab6d712fc947963271f9bbb1f7156c5058fc10d7e2cb36a4f1c13c7·...·]6-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">256 literals·and·previously·bound·variables.·The·following·is·not·allowed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="9778140796-1">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="p">:</span><span·class="n">N</span><span·class="p">,</span><span·class="n">T</span><span·class="[·...·truncated·by·diffoscope;·len:·112,·SHA:·5a08638c34127be4b4046fceb28f0b10da1644dd916685998dbcb980252f4705·...·]6-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
257 ···</span><span·class="p"·data-group-id="9792330406-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">T</span><span·class="p"·data-group-id="9792330406-2">}</span><span·class="p">.</span></code></pre><p>The·two·occurrences·of·<code·class="inline">N</code>·are·not·related.·The·compiler·will·complain·that·the257 ···</span><span·class="p"·data-group-id="9778140796-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">T</span><span·class="p"·data-group-id="9778140796-2">}</span><span·class="p">.</span></code></pre><p>The·two·occurrences·of·<code·class="inline">N</code>·are·not·related.·The·compiler·will·complain·that·the
258 <code·class="inline">N</code>·in·the·size·field·is·unbound.</p><p>The·correct·way·to·write·this·example·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="3260676755-1">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p"·data-group-id="3260676755-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">258 <code·class="inline">N</code>·in·the·size·field·is·unbound.</p><p>The·correct·way·to·write·this·example·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="4553032606-1">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p"·data-group-id="4553032606-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
259 ···</span><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="p">:</span><span·class="n">N</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p">,</span><span·class="w">259 ···</span><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="p">:</span><span·class="n">N</span><span·class="p">,</span><span·class="n">T</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p">,</span><span·class="w">
260 ···</span><span·class="p"·data-group-id="3260676755-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">T</span><span·class="p"·data-group-id="3260676755-2">}</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>Before·OTP·23,·<code·class="inline">Size</code>·was·restricted·to·be·an·integer·or·a·variable·bound·to260 ···</span><span·class="p"·data-group-id="4553032606-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">T</span><span·class="p"·data-group-id="4553032606-2">}</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>Before·OTP·23,·<code·class="inline">Size</code>·was·restricted·to·be·an·integer·or·a·variable·bound·to
261 an·integer.</p></blockquote><h3·id="binding-and-using-a-size-variable"·class="section-heading">261 an·integer.</p></blockquote><h3·id="binding-and-using-a-size-variable"·class="section-heading">
262 ··<a·href="#binding-and-using-a-size-variable"·class="hover-link">262 ··<a·href="#binding-and-using-a-size-variable"·class="hover-link">
263 ····<i·class="ri-link-m"·aria-hidden="true"></i>263 ····<i·class="ri-link-m"·aria-hidden="true"></i>
264 ··</a>264 ··</a>
265 ··<span·class="text">Binding·and·Using·a·Size·Variable</span>265 ··<span·class="text">Binding·and·Using·a·Size·Variable</span>
266 </h3>266 </h3>
267 <p>There·is·one·exception·to·the·rule·that·a·variable·that·is·used·as·size·must·be267 <p>There·is·one·exception·to·the·rule·that·a·variable·that·is·used·as·size·must·be
268 previously·bound.·It·is·possible·to·match·and·bind·a·variable,·and·use·it·as·a268 previously·bound.·It·is·possible·to·match·and·bind·a·variable,·and·use·it·as·a
269 size·within·the·same·binary·pattern.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bar</span><span·class="p"·data-group-id="1652169867-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">Sz</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="n">Payload</span><span·class="p">:</span><span·class="n">Sz</span><span·class="o">/</span><s[·...·truncated·by·diffoscope;·len:·306,·SHA:·c003874a80d9d91a5c959e48c71cbfaebdc89627c0f65d59dad7fe14a7b901dc·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">269 size·within·the·same·binary·pattern.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bar</span><span·class="p"·data-group-id="3485752990-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">Sz</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="n">Payload</span><span·class="p">:</span><span·class="n">Sz</span><span·class="o">/</span><s[·...·truncated·by·diffoscope;·len:·306,·SHA:·4d8ffd50e7cc9be6028ff6987552bde62aba07a15ec451c2f212064bc4f681a2·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
270 ···</span><span·class="p"·data-group-id="1652169867-2">{</span><span·class="n">Payload</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="1652169867-2">}</span><span·class="p">.</span></code></pre><p>Here·<code·class="inline">Sz</code>·is·bound·to·the·value·in·the·first·byte·of·the·binary.·<code·class="inline">Sz</code>·is·then270 ···</span><span·class="p"·data-group-id="3485752990-2">{</span><span·class="n">Payload</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="3485752990-2">}</span><span·class="p">.</span></code></pre><p>Here·<code·class="inline">Sz</code>·is·bound·to·the·value·in·the·first·byte·of·the·binary.·<code·class="inline">Sz</code>·is·then
271 used·at·the·number·of·bytes·to·match·out·as·a·binary.</p><p>Starting·in·OTP·23,·the·size·can·be·a·guard·expression:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bar</span><span·class="p"·data-group-id="2968095559-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">Sz</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="n">Payload</span><span·class="p">:</span><span·class="p"·data-group-id="2968095559-2">(</spa[·...·truncated·by·diffoscope;·len:·515,·SHA:·579f278c7f13b69bff5c37e933804b753236661c0cfb6cc46a9a8e8bbf0a9cf7·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">271 used·at·the·number·of·bytes·to·match·out·as·a·binary.</p><p>Starting·in·OTP·23,·the·size·can·be·a·guard·expression:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bar</span><span·class="p"·data-group-id="3001617700-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">Sz</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="n">Payload</span><span·class="p">:</span><span·class="p"·data-group-id="3001617700-2">(</spa[·...·truncated·by·diffoscope;·len:·515,·SHA:·39f99093ac514892458b3da0c7c4f5547eda72337c6b35fe5e184b98b5938916·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
272 ···</span><span·class="p"·data-group-id="2968095559-4">{</span><span·class="n">Payload</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="2968095559-4">}</span><span·class="p">.</span></code></pre><p>Here·<code·class="inline">Sz</code>·is·the·combined·size·of·the·header·and·the·payload,·so·we·will·need·to272 ···</span><span·class="p"·data-group-id="3001617700-4">{</span><span·class="n">Payload</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="3001617700-4">}</span><span·class="p">.</span></code></pre><p>Here·<code·class="inline">Sz</code>·is·the·combined·size·of·the·header·and·the·payload,·so·we·will·need·to
273 subtract·one·byte·to·get·the·size·of·the·payload.</p><h3·id="getting-the-rest-of-the-binary-or-bitstring"·class="section-heading">273 subtract·one·byte·to·get·the·size·of·the·payload.</p><h3·id="getting-the-rest-of-the-binary-or-bitstring"·class="section-heading">
274 ··<a·href="#getting-the-rest-of-the-binary-or-bitstring"·class="hover-link">274 ··<a·href="#getting-the-rest-of-the-binary-or-bitstring"·class="hover-link">
275 ····<i·class="ri-link-m"·aria-hidden="true"></i>275 ····<i·class="ri-link-m"·aria-hidden="true"></i>
276 ··</a>276 ··</a>
277 ··<span·class="text">Getting·the·Rest·of·the·Binary·or·Bitstring</span>277 ··<span·class="text">Getting·the·Rest·of·the·Binary·or·Bitstring</span>
278 </h3>278 </h3>
279 <p>To·match·out·the·rest·of·a·binary,·specify·a·binary·field·without·size:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="3091987936-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">A</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="n">Rest</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;<[·...·truncated·by·diffoscope;·len:·667,·SHA:·565b3401811dbb38f8c3384607ed59f0e7778db92316caacff63fda60cf93208·...·]9-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span></code></pre><p>There·are·no·restrictions·on·the·number·of·bits·in·the·tail.</p><h2·id="appending-to-a-binary"·class="section-heading">279 <p>To·match·out·the·rest·of·a·binary,·specify·a·binary·field·without·size:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="8016047634-1">(</span><span·class="p">&lt;&lt;</span><span·class="n">A</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">,</span><span·class="n">Rest</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;<[·...·truncated·by·diffoscope;·len:·667,·SHA:·477ea366aac51aeec7ce443e6ce5807d0e59bb34754e40a7450b8a08aa8babe2·...·]9-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span></code></pre><p>There·are·no·restrictions·on·the·number·of·bits·in·the·tail.</p><h2·id="appending-to-a-binary"·class="section-heading">
280 ··<a·href="#appending-to-a-binary"·class="hover-link">280 ··<a·href="#appending-to-a-binary"·class="hover-link">
281 ····<i·class="ri-link-m"·aria-hidden="true"></i>281 ····<i·class="ri-link-m"·aria-hidden="true"></i>
282 ··</a>282 ··</a>
283 ··<span·class="text">Appending·to·a·Binary</span>283 ··<span·class="text">Appending·to·a·Binary</span>
284 </h2>284 </h2>
285 <p>Appending·to·a·binary·in·an·efficient·way·can·be·done·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="9076483384-1">(</span><span·class="n">T</span><span·class="p"·data-group-id="9076483384-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">285 <p>Appending·to·a·binary·in·an·efficient·way·can·be·done·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="7893102076-1">(</span><span·class="n">T</span><span·class="p"·data-group-id="7893102076-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
286 ····</span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="9076483384-2">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="9076483384-2">)</span><span·class="p">.</span><span·class="w">286 ····</span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="7893102076-2">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7893102076-2">)</span><span·class="p">.</span><span·class="w">
  
287 </span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="9076483384-3">(</span><span·class="p"·data-group-id="9076483384-4">[</span><span·class="p"·data-group-id="9076483384-5">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p">,</span><span·class="n">Z</span><span·cl[·...·truncated·by·diffoscope;·len:·309,·SHA:·b310856531102ceb3e3771d8fdceb63b379c14e4a6d762dcb8d4fac91adb04d3·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">287 </span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="7893102076-3">(</span><span·class="p"·data-group-id="7893102076-4">[</span><span·class="p"·data-group-id="7893102076-5">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p">,</span><span·class="n">Z</span><span·cl[·...·truncated·by·diffoscope;·len:·309,·SHA:·852eb0343fc2599fb8ddcc6fc0640d48e4e63190de4b91951813be6fc757ff04·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
288 ····</span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="9076483384-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Acc</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">X</span><sp[·...·truncated·by·diffoscope;·len:·315,·SHA:·af5c4fb0c9d86df741b20229590edda7991aef156fb83721802f61bfd5caf4d1·...·]-6">)</span><span·class="p">;</span><span·class="w">288 ····</span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="7893102076-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">Acc</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">X</span><sp[·...·truncated·by·diffoscope;·len:·315,·SHA:·40a9060cdd472d86c01278202166be6ed367b68b68f776fbb0c7c823be92a2b6·...·]-6">)</span><span·class="p">;</span><span·class="w">
289 </span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="9076483384-7">(</span><span·class="p"·data-group-id="9076483384-8">[</span><span·class="p"·data-group-id="9076483384-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="9076483384-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">289 </span><span·class="nf">triples_to_bin</span><span·class="p"·data-group-id="7893102076-7">(</span><span·class="p"·data-group-id="7893102076-8">[</span><span·class="p"·data-group-id="7893102076-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="7893102076-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
290 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre>290 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre>
291 </div>291 </div>
  
292 <div·class="bottom-actions"·id="bottom-actions">292 <div·class="bottom-actions"·id="bottom-actions">
293 ··<div·class="bottom-actions-item">293 ··<div·class="bottom-actions-item">
  
294 ······<a·href="list_comprehensions.html"·class="bottom-actions-button"·rel="prev">294 ······<a·href="list_comprehensions.html"·class="bottom-actions-button"·rel="prev">
Offset 335, 15 lines modifiedOffset 335, 15 lines modified
335 ······<p·class="built-using">335 ······<p·class="built-using">
336 ········Built·using336 ········Built·using
337 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the337 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
338 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>338 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
339 ······</p>339 ······</p>
340 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>340 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
341 ····</footer>341 ····</footer>
342 ··</div>342 ··</div>
343 </main>343 </main>
344 </div>344 </div>
345 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>345 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
346 <script>346 <script>
347 ··document.addEventListener("DOMContentLoaded",·function·()·{347 ··document.addEventListener("DOMContentLoaded",·function·()·{
641 B
html2text {}
Max HTML report size reached
59.9 KB
./usr/share/doc/erlang-doc/html/doc/system/c_port.html
    
Offset 148, 101 lines modifiedOffset 148, 101 lines modified
148 external·program,·if·it·is·written·properly).</p><p>The·port·is·created·using·the·BIF·<a·href="../../erts-15.0.1/doc/html/erlang.html#open_port/2"><code·class="inline">open_port/2</code></a>·with148 external·program,·if·it·is·written·properly).</p><p>The·port·is·created·using·the·BIF·<a·href="../../erts-15.0.1/doc/html/erlang.html#open_port/2"><code·class="inline">open_port/2</code></a>·with
149 <code·class="inline">{spawn,ExtPrg}</code>·as·the·first·argument.·The·string·<code·class="inline">ExtPrg</code>·is·the·name·of·the149 <code·class="inline">{spawn,ExtPrg}</code>·as·the·first·argument.·The·string·<code·class="inline">ExtPrg</code>·is·the·name·of·the
150 external·program,·including·any·command·line·arguments.·The·second·argument·is·a150 external·program,·including·any·command·line·arguments.·The·second·argument·is·a
151 list·of·options,·in·this·case·only·<code·class="inline">{packet,2}</code>.·This·option·says·that·a·2·byte151 list·of·options,·in·this·case·only·<code·class="inline">{packet,2}</code>.·This·option·says·that·a·2·byte
152 length·indicator·is·to·be·used·to·simplify·the·communication·between·C·and152 length·indicator·is·to·be·used·to·simplify·the·communication·between·C·and
153 Erlang.·The·Erlang·port·automatically·adds·the·length·indicator,·but·this·must153 Erlang.·The·Erlang·port·automatically·adds·the·length·indicator,·but·this·must
154 be·done·explicitly·in·the·external·C·program.</p><p>The·process·is·also·set·to·trap·exits,·which·enables·detection·of·failure·of·the154 be·done·explicitly·in·the·external·C·program.</p><p>The·process·is·also·set·to·trap·exits,·which·enables·detection·of·failure·of·the
155 external·program:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4950762421-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="4950762421-1">)</span><span·class="p">.</span><span·class="w">155 external·program:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8442743714-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="8442743714-1">)</span><span·class="p">.</span><span·class="w">
156 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4950762421-2">(</span><span·class="p"·data-group-id="4950762421-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·e2dca2a25edffd7faa04c5d82303a83c9d8d18b0922abb9400522b9f090f0377·...·]-2">)</span><span·class="p">.</span><span·class="w">156 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8442743714-2">(</span><span·class="p"·data-group-id="8442743714-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·1e3268924475abeb68254140f39031a42682d3d5a7109d2a40261d06876fa9fb·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">start</span><span·class="p"·data-group-id="4950762421-4">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="4950762421-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 </span><span·class="nf">start</span><span·class="p"·data-group-id="8442743714-4">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="8442743714-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ··</span><span·class="nf">spawn</span><span·class="p"·data-group-id="4950762421-5">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4950762421-6">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·f524e3654f60e4dd28c4f456235c9a99302f5fa0e4176f34f48abe4fd53997ce·...·]-5">)</span><span·class="p">.</span><span·class="w">158 ··</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8442743714-5">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8442743714-6">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·3a4080a0f58cf3bac2249c5253de7455d1b8917ffe24e791e1cabf7bc29bf5e5·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
159 </span><span·class="nf">init</span><span·class="p"·data-group-id="4950762421-7">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="4950762421-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">159 </span><span·class="nf">init</span><span·class="p"·data-group-id="8442743714-7">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="8442743714-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
160 ··</span><span·class="nf">register</span><span·class="p"·data-group-id="4950762421-8">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="4950762421-9">(</span><span·class="p"·data-group-id="4950762421-9">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·737b9521f4be7c3cedd9f29338927861b65b040094cdcc89fe797b21074e5515·...·]-8">)</span><span·class="p">,</span><span·class="w">160 ··</span><span·class="nf">register</span><span·class="p"·data-group-id="8442743714-8">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8442743714-9">(</span><span·class="p"·data-group-id="8442743714-9">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·34f2c03677a444a7a3ff7db47c998e4c5331ae3cfdb7cbf9861c17e102a3d31c·...·]-8">)</span><span·class="p">,</span><span·class="w">
161 ··</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="4950762421-10">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="4950762421-10">)</span><span·class="p">,</span><span·class="w">161 ··</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="8442743714-10">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="8442743714-10">)</span><span·class="p">,</span><span·class="w">
162 ··</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="4950762421-11">(</span><span·class="p"·data-group-id="4950762421-12">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="4950762421-12">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·47436e12123a369cbcff353215f526c3d2e9ae33ea13e3c237e25be4894882da·...·]-11">)</span><span·class="p">,</span><span·class="w">162 ··</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="8442743714-11">(</span><span·class="p"·data-group-id="8442743714-12">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="8442743714-12">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·59a84ff5a75bf56debfd403424aef0cad1ebc3eb6d592c65f7d8d04cec2b4b90·...·]-11">)</span><span·class="p">,</span><span·class="w">
163 ··</span><span·class="nf">loop</span><span·class="p"·data-group-id="4950762421-15">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4950762421-15">)</span><span·class="p">.</span></code></pre><p>Now·<code·class="inline">complex1:foo/1</code>·and·<code·class="inline">complex1:bar/1</code>·can·be·implemented.·Both·send·a163 ··</span><span·class="nf">loop</span><span·class="p"·data-group-id="8442743714-15">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8442743714-15">)</span><span·class="p">.</span></code></pre><p>Now·<code·class="inline">complex1:foo/1</code>·and·<code·class="inline">complex1:bar/1</code>·can·be·implemented.·Both·send·a
164 message·to·the·<code·class="inline">complex</code>·process·and·receive·the·following·replies:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="5773247487-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="5773247487-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">164 message·to·the·<code·class="inline">complex</code>·process·and·receive·the·following·replies:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="3563644627-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="3563644627-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
165 ··</span><span·class="nf">call_port</span><span·class="p"·data-group-id="5773247487-2">(</span><span·class="p"·data-group-id="5773247487-3">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="5773247487-3">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·11,·SHA:·e745564e13645279689195707787b0670cfab46d869f2e901ec81d3d12c87b8f·...·]7-2">)</span><span·class="p">.</span><span·class="w">165 ··</span><span·class="nf">call_port</span><span·class="p"·data-group-id="3563644627-2">(</span><span·class="p"·data-group-id="3563644627-3">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="3563644627-3">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·11,·SHA:·3548062c669eb2a7df3e9bcf58c2991ec72b9c8535ce0f01ec4eaa1d7d806a9f·...·]7-2">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="nf">bar</span><span·class="p"·data-group-id="5773247487-4">(</span><span·class="n">Y</span><span·class="p"·data-group-id="5773247487-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">166 </span><span·class="nf">bar</span><span·class="p"·data-group-id="3563644627-4">(</span><span·class="n">Y</span><span·class="p"·data-group-id="3563644627-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
167 ··</span><span·class="nf">call_port</span><span·class="p"·data-group-id="5773247487-5">(</span><span·class="p"·data-group-id="5773247487-6">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="5773247487-6">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·11,·SHA:·e745564e13645279689195707787b0670cfab46d869f2e901ec81d3d12c87b8f·...·]7-5">)</span><span·class="p">.</span><span·class="w">167 ··</span><span·class="nf">call_port</span><span·class="p"·data-group-id="3563644627-5">(</span><span·class="p"·data-group-id="3563644627-6">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="3563644627-6">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·11,·SHA:·3548062c669eb2a7df3e9bcf58c2991ec72b9c8535ce0f01ec4eaa1d7d806a9f·...·]7-5">)</span><span·class="p">.</span><span·class="w">
  
168 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="5773247487-7">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="5773247487-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">168 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="3563644627-7">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="3563644627-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
169 ··</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5773247487-8">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="5773247487-9">(</span><span·class="p"·data-group-id="5773247487-9">)</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·90,·SHA:·248dcdea512c848422dc5b0819a97e7080a1eb5d1b8b2ca6ddef6821a60c8f27·...·]7-8">}</span><span·class="p">,</span><span·class="w">169 ··</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="3563644627-8">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="3563644627-9">(</span><span·class="p"·data-group-id="3563644627-9">)</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·90,·SHA:·61f4eb44594320dfe03d3237263c6f4be117896de668d09f7c53c3e607a57803·...·]7-8">}</span><span·class="p">,</span><span·class="w">
170 ··</span><span·class="k">receive</span><span·class="w">170 ··</span><span·class="k">receive</span><span·class="w">
171 ····</span><span·class="p"·data-group-id="5773247487-10">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="5773247487-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">171 ····</span><span·class="p"·data-group-id="3563644627-10">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="3563644627-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ······</span><span·class="n">Result</span><span·class="w">172 ······</span><span·class="n">Result</span><span·class="w">
173 ··</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">complex</code>·process·does·the·following:</p><ul><li>Encodes·the·message·into·a·sequence·of·bytes.</li><li>Sends·it·to·the·port.</li><li>Waits·for·a·reply.</li><li>Decodes·the·reply.</li><li>Sends·it·back·to·the·caller:</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="6181463112-1">(</span><span·class="n">Port</span><span·class="p"·data-group-id="6181463112-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 ··</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">complex</code>·process·does·the·following:</p><ul><li>Encodes·the·message·into·a·sequence·of·bytes.</li><li>Sends·it·to·the·port.</li><li>Waits·for·a·reply.</li><li>Decodes·the·reply.</li><li>Sends·it·back·to·the·caller:</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="7866803345-1">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7866803345-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ··</span><span·class="k">receive</span><span·class="w">174 ··</span><span·class="k">receive</span><span·class="w">
175 ····</span><span·class="p"·data-group-id="6181463112-2">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="6181463112-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 ····</span><span·class="p"·data-group-id="7866803345-2">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="7866803345-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
176 ······</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="6181463112-3">{</span><span·class="nf">self</span><span·class="p"·data-group-id="6181463112-4">(</span><span·class="p"·data-group-id="6181463112-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6181463112-5">{</span[·...·truncated·by·diffoscope;·len:·336,·SHA:·137bba0da7b07efc9645c3d01262ed379c51b3a0180d7579c044afcc50b7c1d7·...·]-3">}</span><span·class="p">,</span><span·class="w">176 ······</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="7866803345-3">{</span><span·class="nf">self</span><span·class="p"·data-group-id="7866803345-4">(</span><span·class="p"·data-group-id="7866803345-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7866803345-5">{</span[·...·truncated·by·diffoscope;·len:·336,·SHA:·9dfb6e42bc3f36c59b4f7f8b04b9403919cff5e48f7a49f90b52cf550005064c·...·]-3">}</span><span·class="p">,</span><span·class="w">
177 ······</span><span·class="k">receive</span><span·class="w">177 ······</span><span·class="k">receive</span><span·class="w">
178 ········</span><span·class="p"·data-group-id="6181463112-7">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6181463112-8">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·1ab11627f3e0ebede4f5ca0b4afbeeac4bee6f090337ef68152928ffa1391f81·...·]-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 ········</span><span·class="p"·data-group-id="7866803345-7">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7866803345-8">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·8208d32651b88342d4a488e621a8e7d5d9f2bfa1b09249f4fe919b786d0f44f2·...·]-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ··········</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="6181463112-9">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="6181463112-10">(</span><span·class="n">Data</span><span·class="p"·data-group-id="6181463112-10[·...·truncated·by·diffoscope;·len:·51,·SHA:·63747386b8f6da140f89fd7687b87471e9067f5e444c8c1ff614afc6c78c491d·...·]-9">}</span><span·class="w">179 ··········</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="7866803345-9">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="7866803345-10">(</span><span·class="n">Data</span><span·class="p"·data-group-id="7866803345-10[·...·truncated·by·diffoscope;·len:·51,·SHA:·35eadf73e48840e11d867862b633384376aec13ec7403932db9318701b1a2809·...·]-9">}</span><span·class="w">
180 ······</span><span·class="k">end</span><span·class="p">,</span><span·class="w">180 ······</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
181 ······</span><span·class="nf">loop</span><span·class="p"·data-group-id="6181463112-11">(</span><span·class="n">Port</span><span·class="p"·data-group-id="6181463112-11">)</span><span·class="w">181 ······</span><span·class="nf">loop</span><span·class="p"·data-group-id="7866803345-11">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7866803345-11">)</span><span·class="w">
182 ··</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Assuming·that·both·the·arguments·and·the·results·from·the·C·functions·are·less182 ··</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Assuming·that·both·the·arguments·and·the·results·from·the·C·functions·are·less
183 than·256,·a·simple·encoding/decoding·scheme·is·employed.·In·this·scheme,·<code·class="inline">foo</code>183 than·256,·a·simple·encoding/decoding·scheme·is·employed.·In·this·scheme,·<code·class="inline">foo</code>
184 is·represented·by·byte·1,·<code·class="inline">bar</code>·is·represented·by·2,·and·the·argument/result·is184 is·represented·by·byte·1,·<code·class="inline">bar</code>·is·represented·by·2,·and·the·argument/result·is
185 represented·by·a·single·byte·as·well:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">encode</span><span·class="p"·data-group-id="8430554040-1">(</span><span·class="p"·data-group-id="8430554040-2">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="8430554040-2">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·290,·SHA:·d968fe6a45dbb5b6d8f86657e9f5745c6f96481c67042f84c5f5a56917e508c7·...·]-3">]</span><span·class="p">;</span><span·class="w">185 represented·by·a·single·byte·as·well:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">encode</span><span·class="p"·data-group-id="8808270871-1">(</span><span·class="p"·data-group-id="8808270871-2">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="8808270871-2">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·290,·SHA:·e49515625456f1ca34b1ff1d5bab2ff5c368a07b23a4eee4ce321b9043307c83·...·]-3">]</span><span·class="p">;</span><span·class="w">
186 </span><span·class="nf">encode</span><span·class="p"·data-group-id="8430554040-4">(</span><span·class="p"·data-group-id="8430554040-5">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8430554040-5">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·290,·SHA:·5c1b6bf2fe1f57d3397d6bbc4eba025b122192c735b0894537bdf406d3c3d573·...·]-6">]</span><span·class="p">.</span><span·class="w">186 </span><span·class="nf">encode</span><span·class="p"·data-group-id="8808270871-4">(</span><span·class="p"·data-group-id="8808270871-5">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8808270871-5">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·290,·SHA:·6e5c1ae017cb4b06ad4ffccd47f8da0c0dcc6604cbdf37e499403936d3272e87·...·]-6">]</span><span·class="p">.</span><span·class="w">
  
187 </span><span·class="nf">decode</span><span·class="p"·data-group-id="8430554040-7">(</span><span·class="p"·data-group-id="8430554040-8">[</span><span·class="n">Int</span><span·class="p"·data-group-id="8430554040-8">]</span><span·class="p"·data-group-id="8430554040-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><p>The·resulting·Erlang·program,·including·functionality·for·stopping·the·port·and187 </span><span·class="nf">decode</span><span·class="p"·data-group-id="8808270871-7">(</span><span·class="p"·data-group-id="8808270871-8">[</span><span·class="n">Int</span><span·class="p"·data-group-id="8808270871-8">]</span><span·class="p"·data-group-id="8808270871-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><p>The·resulting·Erlang·program,·including·functionality·for·stopping·the·port·and
188 detecting·port·failures,·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8113369088-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="8113369088-1">)</span><span·class="p">.</span><span·class="w">188 detecting·port·failures,·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8461490371-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="8461490371-1">)</span><span·class="p">.</span><span·class="w">
189 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8113369088-2">(</span><span·class="p"·data-group-id="8113369088-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><spa[·...·truncated·by·diffoscope;·len:·240,·SHA:·3b743f427a7a10d2d711d6cc21a21240533be94310612b188166a75491d6685a·...·]-2">)</span><span·class="p">.</span><span·class="w">189 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8461490371-2">(</span><span·class="p"·data-group-id="8461490371-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><spa[·...·truncated·by·diffoscope;·len:·240,·SHA:·cddf75b65faadfac7de3a34850a4b3c5d3420e71b209ecbd7bf48c3088316b7d·...·]-2">)</span><span·class="p">.</span><span·class="w">
190 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8113369088-4">(</span><span·class="p"·data-group-id="8113369088-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·c[·...·truncated·by·diffoscope;·len:·112,·SHA:·3455c3e5b75eacd3de09f7bcaf9b8d9aebaf28b85ad84c3f22b748f827ef3739·...·]-4">)</span><span·class="p">.</span><span·class="w">190 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8461490371-4">(</span><span·class="p"·data-group-id="8461490371-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·c[·...·truncated·by·diffoscope;·len:·112,·SHA:·ef12868eac209af79fbd2a890ca1a4afae8e281d3b12c6bcd99dc3d835745036·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
191 </span><span·class="nf">start</span><span·class="p"·data-group-id="8113369088-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="8113369088-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">191 </span><span·class="nf">start</span><span·class="p"·data-group-id="8461490371-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="8461490371-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
192 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8113369088-7">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8113369088-8">[</span><span[·...·truncated·by·diffoscope;·len:·118,·SHA:·4bc49fc82c8ae69192dc053e95c26375228d78a841f64ff9c7392b6dba3e6300·...·]-7">)</span><span·class="p">.</span><span·class="w">192 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8461490371-7">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8461490371-8">[</span><span[·...·truncated·by·diffoscope;·len:·118,·SHA:·fa39e7015bd9032dde51644f387f5c4beb64bc456b1b922a81fb284f53107ea9·...·]-7">)</span><span·class="p">.</span><span·class="w">
193 </span><span·class="nf">stop</span><span·class="p"·data-group-id="8113369088-9">(</span><span·class="p"·data-group-id="8113369088-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 </span><span·class="nf">stop</span><span·class="p"·data-group-id="8461490371-9">(</span><span·class="p"·data-group-id="8461490371-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">.</span><span·class="w">194 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">.</span><span·class="w">
  
195 </span><span·class="nf">foo</span><span·class="p"·data-group-id="8113369088-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="8113369088-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">195 </span><span·class="nf">foo</span><span·class="p"·data-group-id="8461490371-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="8461490371-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
196 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="8113369088-11">(</span><span·class="p"·data-group-id="8113369088-12">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="8113369088-12">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·8f7b9806c38d4769ee4e1127b547f9a5f6e5c72e2044e572bf38ec620622f772·...·]-11">)</span><span·class="p">.</span><span·class="w">196 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="8461490371-11">(</span><span·class="p"·data-group-id="8461490371-12">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="8461490371-12">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·dc50ce043116900b7e0bcd5a99e2fb8eb4d743d5e288af606a345ad63ce456ad·...·]-11">)</span><span·class="p">.</span><span·class="w">
197 </span><span·class="nf">bar</span><span·class="p"·data-group-id="8113369088-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="8113369088-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">197 </span><span·class="nf">bar</span><span·class="p"·data-group-id="8461490371-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="8461490371-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
198 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="8113369088-14">(</span><span·class="p"·data-group-id="8113369088-15">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8113369088-15">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·8f7b9806c38d4769ee4e1127b547f9a5f6e5c72e2044e572bf38ec620622f772·...·]-14">)</span><span·class="p">.</span><span·class="w">198 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="8461490371-14">(</span><span·class="p"·data-group-id="8461490371-15">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8461490371-15">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·dc50ce043116900b7e0bcd5a99e2fb8eb4d743d5e288af606a345ad63ce456ad·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
199 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="8113369088-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="8113369088-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">199 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="8461490371-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="8461490371-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
200 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8113369088-17">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8113369088-18">(</span><span·class="p"·data-group-id="8113369088-18">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·93,·SHA:·7d733c5f264c7181b221399c740c3127ccc1dbe7450183658fbd7e19e7831499·...·]-17">}</span><span·class="p">,</span><span·class="w">200 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8461490371-17">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8461490371-18">(</span><span·class="p"·data-group-id="8461490371-18">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·93,·SHA:·e9555a1b80d09fa96223261525c041a78c250992a727953557728b5bbf80f115·...·]-17">}</span><span·class="p">,</span><span·class="w">
201 ····</span><span·class="k">receive</span><span·class="w">201 ····</span><span·class="k">receive</span><span·class="w">
202 »       </span><span·class="p"·data-group-id="8113369088-19">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="8113369088-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">202 »       </span><span·class="p"·data-group-id="8461490371-19">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="8461490371-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
203 »       ····</span><span·class="n">Result</span><span·class="w">203 »       ····</span><span·class="n">Result</span><span·class="w">
204 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">204 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
205 </span><span·class="nf">init</span><span·class="p"·data-group-id="8113369088-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="8113369088-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">205 </span><span·class="nf">init</span><span·class="p"·data-group-id="8461490371-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="8461490371-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="8113369088-21">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8113369088-22">(</span><span·class="p"·data-group-id="8113369088-22">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·1bbb62f79842d8f9cd3a3cb9d37d0738eb838c745094986eab978c694bc8b29b·...·]-21">)</span><span·class="p">,</span><span·class="w">206 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="8461490371-21">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8461490371-22">(</span><span·class="p"·data-group-id="8461490371-22">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·5b3bb69ba5cf495fc7489f6dbf8f446d3de3210548419ca206c124886dfad5b6·...·]-21">)</span><span·class="p">,</span><span·class="w">
207 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="8113369088-23">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="8113369088-23">)</span><span·class="p">,</span><span·class="w">207 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="8461490371-23">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="8461490371-23">)</span><span·class="p">,</span><span·class="w">
208 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="8113369088-24">(</span><span·class="p"·data-group-id="8113369088-25">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="8113369088-25">}</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·388,·SHA:·ab622aaf7e8361674252f2dae0b45ba1db85233fbe377e501fdf00cbef63d596·...·]-24">)</span><span·class="p">,</span><span·class="w">208 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="8461490371-24">(</span><span·class="p"·data-group-id="8461490371-25">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="8461490371-25">}</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·388,·SHA:·38d5e97c19fb024c251e8c78b66e801287ed1b14f684d50083e384b708a1f9f2·...·]-24">)</span><span·class="p">,</span><span·class="w">
209 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8113369088-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8113369088-28">)</span><span·class="p">.</span><span·class="w">209 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8461490371-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8461490371-28">)</span><span·class="p">.</span><span·class="w">
  
210 </span><span·class="nf">loop</span><span·class="p"·data-group-id="8113369088-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8113369088-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">210 </span><span·class="nf">loop</span><span·class="p"·data-group-id="8461490371-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8461490371-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
211 ····</span><span·class="k">receive</span><span·class="w">211 ····</span><span·class="k">receive</span><span·class="w">
212 »       </span><span·class="p"·data-group-id="8113369088-30">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="8113369088-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">212 »       </span><span·class="p"·data-group-id="8461490371-30">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="8461490371-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
213 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8113369088-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8113369088-32">(</span><span·class="p"·data-group-id="8113369088-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8113369088-33">{</s[·...·truncated·by·diffoscope;·len:·342,·SHA:·149f010b6c4837a54de7fc2b79facb83216b291024eb492eb3a262dad4adcf9a·...·]-31">}</span><span·class="p">,</span><span·class="w">213 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8461490371-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8461490371-32">(</span><span·class="p"·data-group-id="8461490371-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8461490371-33">{</s[·...·truncated·by·diffoscope;·len:·342,·SHA:·13e2c6d2ace106f1a2c9b8ca2a7f9c9b165285f947a5943b1cdbe1b705055c45·...·]-31">}</span><span·class="p">,</span><span·class="w">
214 »       ····</span><span·class="k">receive</span><span·class="w">214 »       ····</span><span·class="k">receive</span><span·class="w">
215 »       »       </span><span·class="p"·data-group-id="8113369088-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8113369088-36">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·9fbc8e36d88ccc0f4f2daa87d4bd05ed4576bc33fa1fb89e713a5e19d2d3c933·...·]-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">215 »       »       </span><span·class="p"·data-group-id="8461490371-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8461490371-36">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·86f0f2fdc31e4b9abe67274bd839e81bd515799e95ab4cd0653a67e3a77dda86·...·]-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
216 »       »       ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8113369088-37">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="8113369088-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="8113369088-38[·...·truncated·by·diffoscope;·len:·51,·SHA:·181eeda54d4ac497065c9ebef8ca9f943759ef1062b18e398de6edd9bc173ea5·...·]-37">}</span><span·class="w">216 »       »       ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8461490371-37">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="8461490371-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="8461490371-38[·...·truncated·by·diffoscope;·len:·51,·SHA:·616d9cbd9f0b9b3d9e57577e9910cf16e2eff23d68fcd4d4367bcc1a5263e752·...·]-37">}</span><span·class="w">
217 »       ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">217 »       ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
218 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8113369088-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8113369088-39">)</span><span·class="p">;</span><span·class="w">218 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8461490371-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8461490371-39">)</span><span·class="p">;</span><span·class="w">
219 »       </span><span·class="ss">stop</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 »       </span><span·class="ss">stop</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8113369088-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8113369088-41">(</span><span·class="p"·data-group-id="8113369088-41">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">close</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·49fca0d2ebde4d7a89cb7c8acbb91e6d6de4ada5c526cb151694e407513ce241·...·]-40">}</span><span·class="p">,</span><span·class="w">220 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8461490371-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8461490371-41">(</span><span·class="p"·data-group-id="8461490371-41">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">close</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·06f3ac84e2afde41881e3213e9a4ace5b3aba19462cfd9a5e9098f2ee0a70420·...·]-40">}</span><span·class="p">,</span><span·class="w">
221 »       ····</span><span·class="k">receive</span><span·class="w">221 »       ····</span><span·class="k">receive</span><span·class="w">
222 »       »       </span><span·class="p"·data-group-id="8113369088-42">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="8113369088-42">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">222 »       »       </span><span·class="p"·data-group-id="8461490371-42">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="8461490371-42">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
223 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="8113369088-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="8113369088-43">)</span><span·class="w">223 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="8461490371-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="8461490371-43">)</span><span·class="w">
224 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">224 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
225 »       </span><span·class="p"·data-group-id="8113369088-44">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8113369088-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">225 »       </span><span·class="p"·data-group-id="8461490371-44">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8461490371-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
226 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="8113369088-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="8113369088-45">)</span><span·class="w">226 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="8461490371-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="8461490371-45">)</span><span·class="w">
227 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">227 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
228 </span><span·class="nf">encode</span><span·class="p"·data-group-id="8113369088-46">(</span><span·class="p"·data-group-id="8113369088-47">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="8113369088-47">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·295,·SHA:·66e22a413557678e20748a5e40e1676f509b0d5f90cc995a241d0743da4f54f6·...·]-48">]</span><span·class="p">;</span><span·class="w">228 </span><span·class="nf">encode</span><span·class="p"·data-group-id="8461490371-46">(</span><span·class="p"·data-group-id="8461490371-47">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="8461490371-47">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·295,·SHA:·b80342defc098fb9b6bfa09083ed6f575d095146cac66ec9bfafdf2c397fb809·...·]-48">]</span><span·class="p">;</span><span·class="w">
229 </span><span·class="nf">encode</span><span·class="p"·data-group-id="8113369088-49">(</span><span·class="p"·data-group-id="8113369088-50">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8113369088-50">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·295,·SHA:·071d8c2c6248462a355ae105aa6910bf728da28404800ebdf667d6d4e208804d·...·]-51">]</span><span·class="p">.</span><span·class="w">229 </span><span·class="nf">encode</span><span·class="p"·data-group-id="8461490371-49">(</span><span·class="p"·data-group-id="8461490371-50">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8461490371-50">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·295,·SHA:·8b1ff8b4a9d844dcbfb281511d427295da141a12c52aa665fef60d1e99c10e54·...·]-51">]</span><span·class="p">.</span><span·class="w">
  
230 </span><span·class="nf">decode</span><span·class="p"·data-group-id="8113369088-52">(</span><span·class="p"·data-group-id="8113369088-53">[</span><span·class="n">Int</span><span·class="p"·data-group-id="8113369088-53">]</span><span·class="p"·data-group-id="8113369088-52">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><h2·id="c-program"·class="section-heading">230 </span><span·class="nf">decode</span><span·class="p"·data-group-id="8461490371-52">(</span><span·class="p"·data-group-id="8461490371-53">[</span><span·class="n">Int</span><span·class="p"·data-group-id="8461490371-53">]</span><span·class="p"·data-group-id="8461490371-52">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><h2·id="c-program"·class="section-heading">
231 ··<a·href="#c-program"·class="hover-link">231 ··<a·href="#c-program"·class="hover-link">
232 ····<i·class="ri-link-m"·aria-hidden="true"></i>232 ····<i·class="ri-link-m"·aria-hidden="true"></i>
233 ··</a>233 ··</a>
234 ··<span·class="text">C·Program</span>234 ··<span·class="text">C·Program</span>
235 </h2>235 </h2>
236 <p>On·the·C·side,·it·is·necessary·to·write·functions·for·receiving·and·sending·data236 <p>On·the·C·side,·it·is·necessary·to·write·functions·for·receiving·and·sending·data
237 with·2·byte·length·indicators·from/to·Erlang.·By·default,·the·C·program·is·to237 with·2·byte·length·indicators·from/to·Erlang.·By·default,·the·C·program·is·to
Offset 333, 25 lines modifiedOffset 333, 25 lines modified
333 and·terminates.</p><h2·id="running-the-example"·class="section-heading">333 and·terminates.</p><h2·id="running-the-example"·class="section-heading">
334 ··<a·href="#running-the-example"·class="hover-link">334 ··<a·href="#running-the-example"·class="hover-link">
335 ····<i·class="ri-link-m"·aria-hidden="true"></i>335 ····<i·class="ri-link-m"·aria-hidden="true"></i>
336 ··</a>336 ··</a>
337 ··<span·class="text">Running·the·Example</span>337 ··<span·class="text">Running·the·Example</span>
338 </h2>338 </h2>
339 <p><em>Step·1.</em>·Compile·the·C·code:</p><pre><code·class="text">$·gcc·-o·extprg·complex.c·erl_comm.c·port.c</code></pre><p><em>Step·2.</em>·Start·Erlang·and·compile·the·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">339 <p><em>Step·1.</em>·Compile·the·C·code:</p><pre><code·class="text">$·gcc·-o·extprg·complex.c·erl_comm.c·port.c</code></pre><p><em>Step·2.</em>·Start·Erlang·and·compile·the·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">
340 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">26</span><span·class="w">·</span><span·class="p"·data-group-id="8390473505-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p"·data-group-id="8390473505-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="8390473505-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1283,·SHA:·6f8a6a7399ab38a7790ac36f7ffc77e6e4ed7534abbf20e5d9853ded685bf752·...·]-7">]</span><span·class="w">340 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">26</span><span·class="w">·</span><span·class="p"·data-group-id="4142183089-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p"·data-group-id="4142183089-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="4142183089-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1283,·SHA:·9f2255f4eb624d2c9eb0aa4632f42a4543560c36988125dead0aa81da28503ec·...·]-7">]</span><span·class="w">
  
341 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V14</span><span·class="p">.</span><span·class="mi">2</span><span·class="w">·</span><span·class="p"·data-group-id="8390473505-8">(</span><span·class="ss">press</span><span·class="w">·</span><span·class="n">Ctrl</span><span·class="o">+</span><span·class="n">G</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">abort</span><sp[·...·truncated·by·diffoscope;·len:·399,·SHA:·ff139b92f5a7e0b008d138eb1c1201d68817d46f9e3be585e843844581f7f828·...·]-8">)</span><span·class="gp·unselectable">341 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V14</span><span·class="p">.</span><span·class="mi">2</span><span·class="w">·</span><span·class="p"·data-group-id="4142183089-8">(</span><span·class="ss">press</span><span·class="w">·</span><span·class="n">Ctrl</span><span·class="o">+</span><span·class="n">G</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">abort</span><sp[·...·truncated·by·diffoscope;·len:·399,·SHA:·6aa7a92a93d164346e3b91bfbc792e428508d13a2e0dca51970e7a645a5414b7·...·]-8">)</span><span·class="gp·unselectable">
342 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="8390473505-10">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="8390473505-10">)</span><span·class="p">.</span><span·class="w">342 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="4142183089-10">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="4142183089-10">)</span><span·class="p">.</span><span·class="w">
343 </span><span·class="p"·data-group-id="8390473505-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex1</span><span·class="p"·data-group-id="8390473505-11">}</span></code></pre><p><em>Step·3.</em>·Run·the·example:</p><pre><code·class="makeup·erlang"·translate="[·...·truncated·by·diffoscope;·len:·269,·SHA:·f63b89c5c2bae35f9f47057aae721c92a4decade403fb65313866201197c0dea·...·]-1">)</span><span·class="p">.</span><span·class="w">343 </span><span·class="p"·data-group-id="4142183089-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex1</span><span·class="p"·data-group-id="4142183089-11">}</span></code></pre><p><em>Step·3.</em>·Run·the·example:</p><pre><code·class="makeup·erlang"·translate="[·...·truncated·by·diffoscope;·len:·269,·SHA:·e0d96875b27d0c47f5b3b6a670da7e0ea3856fe66a279415ed39cd998dfe0da0·...·]-1">)</span><span·class="p">.</span><span·class="w">
344 </span><span·class="o">&lt;</span><span·class="mf">0.34</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">344 </span><span·class="o">&lt;</span><span·class="mf">0.34</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">
345 3&gt;·</span><span·class="nc">complex1</span><span·class="p">:</span><span·class="nf">foo</span><span·class="p"·data-group-id="7188442749-2">(</span><span·class="mi">3</span><span·class="p"·data-group-id="7188442749-2">)</span><span·class="p">.</span><span·class="w">345 3&gt;·</span><span·class="nc">complex1</span><span·class="p">:</span><span·class="nf">foo</span><span·class="p"·data-group-id="5303428296-2">(</span><span·class="mi">3</span><span·class="p"·data-group-id="5303428296-2">)</span><span·class="p">.</span><span·class="w">
346 </span><span·class="mi">4</span><span·class="gp·unselectable">346 </span><span·class="mi">4</span><span·class="gp·unselectable">
347 4&gt;·</span><span·class="nc">complex1</span><span·class="p">:</span><span·class="nf">bar</span><span·class="p"·data-group-id="7188442749-3">(</span><span·class="mi">5</span><span·class="p"·data-group-id="7188442749-3">)</span><span·class="p">.</span><span·class="w">347 4&gt;·</span><span·class="nc">complex1</span><span·class="p">:</span><span·class="nf">bar</span><span·class="p"·data-group-id="5303428296-3">(</span><span·class="mi">5</span><span·class="p"·data-group-id="5303428296-3">)</span><span·class="p">.</span><span·class="w">
348 </span><span·class="mi">10</span><span·class="gp·unselectable">348 </span><span·class="mi">10</span><span·class="gp·unselectable">
349 5&gt;·</span><span·class="nc">complex1</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="7188442749-4">(</span><span·class="p"·data-group-id="7188442749-4">)</span><span·class="p">.</span><span·class="w">349 5&gt;·</span><span·class="nc">complex1</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="5303428296-4">(</span><span·class="p"·data-group-id="5303428296-4">)</span><span·class="p">.</span><span·class="w">
350 </span><span·class="ss">stop</span></code></pre>350 </span><span·class="ss">stop</span></code></pre>
351 </div>351 </div>
  
352 <div·class="bottom-actions"·id="bottom-actions">352 <div·class="bottom-actions"·id="bottom-actions">
353 ··<div·class="bottom-actions-item">353 ··<div·class="bottom-actions-item">
  
354 ······<a·href="example.html"·class="bottom-actions-button"·rel="prev">354 ······<a·href="example.html"·class="bottom-actions-button"·rel="prev">
Max diff block lines reached; 680/60706 bytes (1.12%) of diff not shown.
570 B
html2text {}
Max HTML report size reached
65.0 KB
./usr/share/doc/erlang-doc/html/doc/system/c_portdriver.html
    
Offset 151, 112 lines modifiedOffset 151, 112 lines modified
151 <p>Like·a·port·program,·the·port·communicates·with·an·Erlang·process.·All151 <p>Like·a·port·program,·the·port·communicates·with·an·Erlang·process.·All
152 communication·goes·through·one·Erlang·process·that·is·the·<em>connected·process</em>·of152 communication·goes·through·one·Erlang·process·that·is·the·<em>connected·process</em>·of
153 the·port·driver.·Terminating·this·process·closes·the·port·driver.</p><p>Before·the·port·is·created,·the·driver·must·be·loaded.·This·is·done·with·the153 the·port·driver.·Terminating·this·process·closes·the·port·driver.</p><p>Before·the·port·is·created,·the·driver·must·be·loaded.·This·is·done·with·the
154 function·<a·href="../../lib/kernel-10.0.1/doc/html/erl_ddll.html#load_driver/2"><code·class="inline">erl_ddll:load_driver/2</code></a>,·with·the·name·of·the·shared·library·as154 function·<a·href="../../lib/kernel-10.0.1/doc/html/erl_ddll.html#load_driver/2"><code·class="inline">erl_ddll:load_driver/2</code></a>,·with·the·name·of·the·shared·library·as
155 argument.</p><p>The·port·is·then·created·using·the·BIF·<a·href="../../erts-15.0.1/doc/html/erlang.html#open_port/2"><code·class="inline">open_port/2</code></a>,·with·the155 argument.</p><p>The·port·is·then·created·using·the·BIF·<a·href="../../erts-15.0.1/doc/html/erlang.html#open_port/2"><code·class="inline">open_port/2</code></a>,·with·the
156 tuple·<code·class="inline">{spawn,·DriverName}</code>·as·the·first·argument.·The·string·<code·class="inline">SharedLib</code>·is·the156 tuple·<code·class="inline">{spawn,·DriverName}</code>·as·the·first·argument.·The·string·<code·class="inline">SharedLib</code>·is·the
157 name·of·the·port·driver.·The·second·argument·is·a·list·of·options,·none·in·this157 name·of·the·port·driver.·The·second·argument·is·a·list·of·options,·none·in·this
158 case:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4767260309-1">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="4767260309-1">)</span><span·class="p">.</span><span·class="w">158 case:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4825028339-1">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="4825028339-1">)</span><span·class="p">.</span><span·class="w">
159 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4767260309-2">(</span><span·class="p"·data-group-id="4767260309-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">/</span><spa[·...·truncated·by·diffoscope;·len:·114,·SHA:·04ed11a7addd6ae6f161009f04a8b06e5ed2b926425de1d4dd271b994463b4c2·...·]9-2">)</span><span·class="p">.</span><span·class="w">159 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4825028339-2">(</span><span·class="p"·data-group-id="4825028339-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">/</span><spa[·...·truncated·by·diffoscope;·len:·114,·SHA:·6791624c443ebb8ae35cbf3b4030d7c751274b4bf21fd1dbccae3c99352416cd·...·]9-2">)</span><span·class="p">.</span><span·class="w">
  
160 </span><span·class="nf">start</span><span·class="p"·data-group-id="4767260309-4">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4767260309-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">160 </span><span·class="nf">start</span><span·class="p"·data-group-id="4825028339-4">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4825028339-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
161 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="4767260309-5">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4767260309-5">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">161 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="4825028339-5">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4825028339-5">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
162 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">162 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
163 ········</span><span·class="p"·data-group-id="4767260309-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="4767260309-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">163 ········</span><span·class="p"·data-group-id="4825028339-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="4825028339-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
164 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="4767260309-7">(</span><span·class="p"·data-group-id="4767260309-8">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">could_not_load_driver</span><span·class="p"·data-group-id="4767260309-8">}</span><span·c[·...·truncated·by·diffoscope;·len:·33,·SHA:·b8bc04bc8e1956cc9e6378552da13e95cf87a683ac5bbb70232a79b42bc7d956·...·]9-7">)</span><span·class="w">164 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="4825028339-7">(</span><span·class="p"·data-group-id="4825028339-8">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">could_not_load_driver</span><span·class="p"·data-group-id="4825028339-8">}</span><span·c[·...·truncated·by·diffoscope;·len:·33,·SHA:·b7c18194c1daf59a335e90c193763330ba935cb8c74b21d2d457b490cc861088·...·]9-7">)</span><span·class="w">
165 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">165 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
166 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="4767260309-9">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4767260309-10">[</span><spa[·...·truncated·by·diffoscope;·len:·122,·SHA:·ef5151c47c3e73866cf04007504ff766d116c38558003385a2dc742811107ac2·...·]9-9">)</span><span·class="p">.</span><span·class="w">166 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="4825028339-9">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4825028339-10">[</span><spa[·...·truncated·by·diffoscope;·len:·122,·SHA:·04b3b25569a6be917335b5b4ededacfb9eaf8439de14d505d2988381e7538f93·...·]9-9">)</span><span·class="p">.</span><span·class="w">
  
167 </span><span·class="nf">init</span><span·class="p"·data-group-id="4767260309-11">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4767260309-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">167 </span><span·class="nf">init</span><span·class="p"·data-group-id="4825028339-11">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4825028339-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
168 ··</span><span·class="nf">register</span><span·class="p"·data-group-id="4767260309-12">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="4767260309-13">(</span><span·class="p"·data-group-id="4767260309-13">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·21,·SHA:·8eecd623ff6527c9f1ca02d4d67eb8de6bdb17b26ea12b289bd769c820335897·...·]9-12">)</span><span·class="p">,</span><span·class="w">168 ··</span><span·class="nf">register</span><span·class="p"·data-group-id="4825028339-12">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="4825028339-13">(</span><span·class="p"·data-group-id="4825028339-13">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·21,·SHA:·d1b89b8cacf88da673f7c56c41d22ebb3be13b658d641fb7f69b9c00fbc0f87c·...·]9-12">)</span><span·class="p">,</span><span·class="w">
169 ··</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="4767260309-14">(</span><span·class="p"·data-group-id="4767260309-15">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4767260309-15">}</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·179,·SHA:·62ac930642cf46a1793f27dad6464d7e20831b710c1e69a63090843ab16fd4de·...·]9-14">)</span><span·class="p">,</span><span·class="w">169 ··</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="4825028339-14">(</span><span·class="p"·data-group-id="4825028339-15">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="4825028339-15">}</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·179,·SHA:·662bd3fcaec1cbec10852f07f0bfdaf1915ef2b16760f498849c77c1d9ad8d3f·...·]9-14">)</span><span·class="p">,</span><span·class="w">
170 ··</span><span·class="nf">loop</span><span·class="p"·data-group-id="4767260309-17">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4767260309-17">)</span><span·class="p">.</span></code></pre><p>Now·<code·class="inline">complex5:foo/1</code>·and·<code·class="inline">complex5:bar/1</code>·can·be·implemented.·Both·send·a170 ··</span><span·class="nf">loop</span><span·class="p"·data-group-id="4825028339-17">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4825028339-17">)</span><span·class="p">.</span></code></pre><p>Now·<code·class="inline">complex5:foo/1</code>·and·<code·class="inline">complex5:bar/1</code>·can·be·implemented.·Both·send·a
171 message·to·the·<code·class="inline">complex</code>·process·and·receive·the·following·reply:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="0794697172-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="0794697172-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">171 message·to·the·<code·class="inline">complex</code>·process·and·receive·the·following·reply:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="7856389027-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="7856389027-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="0794697172-2">(</span><span·class="p"·data-group-id="0794697172-3">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="0794697172-3">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·26ee78a2223228a218f6c91a922abf8c3bd282a16ea254931d59e76a05839bf5·...·]-2">)</span><span·class="p">.</span><span·class="w">172 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="7856389027-2">(</span><span·class="p"·data-group-id="7856389027-3">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="7856389027-3">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·faec5abf86491a5be9e26e00727e95d9b07606f6b6dde519cca4001037c081b1·...·]-2">)</span><span·class="p">.</span><span·class="w">
173 </span><span·class="nf">bar</span><span·class="p"·data-group-id="0794697172-4">(</span><span·class="n">Y</span><span·class="p"·data-group-id="0794697172-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 </span><span·class="nf">bar</span><span·class="p"·data-group-id="7856389027-4">(</span><span·class="n">Y</span><span·class="p"·data-group-id="7856389027-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="0794697172-5">(</span><span·class="p"·data-group-id="0794697172-6">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="0794697172-6">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·26ee78a2223228a218f6c91a922abf8c3bd282a16ea254931d59e76a05839bf5·...·]-5">)</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="7856389027-5">(</span><span·class="p"·data-group-id="7856389027-6">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="7856389027-6">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·faec5abf86491a5be9e26e00727e95d9b07606f6b6dde519cca4001037c081b1·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="0794697172-7">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="0794697172-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="7856389027-7">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="7856389027-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
176 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="0794697172-8">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="0794697172-9">(</span><span·class="p"·data-group-id="0794697172-9">)</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·3f66adf55a4bbcc789ea7a2372e9ad4dfe70c265ddd3ddc0901087747a2c1961·...·]-8">}</span><span·class="p">,</span><span·class="w">176 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="7856389027-8">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="7856389027-9">(</span><span·class="p"·data-group-id="7856389027-9">)</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·e008d1abd5d6d5260307054728085be966706df2265b4c4254b447e6548f85cd·...·]-8">}</span><span·class="p">,</span><span·class="w">
177 ····</span><span·class="k">receive</span><span·class="w">177 ····</span><span·class="k">receive</span><span·class="w">
178 ········</span><span·class="p"·data-group-id="0794697172-10">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="0794697172-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 ········</span><span·class="p"·data-group-id="7856389027-10">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="7856389027-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ············</span><span·class="n">Result</span><span·class="w">179 ············</span><span·class="n">Result</span><span·class="w">
180 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">complex</code>·process·performs·the·following:</p><ul><li>Encodes·the·message·into·a·sequence·of·bytes.</li><li>Sends·it·to·the·port.</li><li>Waits·for·a·reply.</li><li>Decodes·the·reply.</li><li>Sends·it·back·to·the·caller:</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="6905372100-1">(</span><span·class="n">Port</span><span·class="p"·data-group-id="6905372100-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">180 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">complex</code>·process·performs·the·following:</p><ul><li>Encodes·the·message·into·a·sequence·of·bytes.</li><li>Sends·it·to·the·port.</li><li>Waits·for·a·reply.</li><li>Decodes·the·reply.</li><li>Sends·it·back·to·the·caller:</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="2650504504-1">(</span><span·class="n">Port</span><span·class="p"·data-group-id="2650504504-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
181 ····</span><span·class="k">receive</span><span·class="w">181 ····</span><span·class="k">receive</span><span·class="w">
182 ········</span><span·class="p"·data-group-id="6905372100-2">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="6905372100-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">182 ········</span><span·class="p"·data-group-id="2650504504-2">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="2650504504-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
183 ············</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="6905372100-3">{</span><span·class="nf">self</span><span·class="p"·data-group-id="6905372100-4">(</span><span·class="p"·data-group-id="6905372100-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6905372100-5">{</span[·...·truncated·by·diffoscope;·len:·336,·SHA:·3d52fd7a0ff25237bb43ee17785b9c3c450f9118b03ef426c9446dae643e4045·...·]-3">}</span><span·class="p">,</span><span·class="w">183 ············</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="2650504504-3">{</span><span·class="nf">self</span><span·class="p"·data-group-id="2650504504-4">(</span><span·class="p"·data-group-id="2650504504-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2650504504-5">{</span[·...·truncated·by·diffoscope;·len:·336,·SHA:·21d43170b07074a361507080e4f41fb3ed6df475924b23e621e0ba554fbfafb1·...·]-3">}</span><span·class="p">,</span><span·class="w">
184 ············</span><span·class="k">receive</span><span·class="w">184 ············</span><span·class="k">receive</span><span·class="w">
185 ················</span><span·class="p"·data-group-id="6905372100-7">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6905372100-8">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·aa94f9e1958210d926452a04a0d776179b60b44339910172637e02f6e5022156·...·]-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">185 ················</span><span·class="p"·data-group-id="2650504504-7">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2650504504-8">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·b0b5827000f8373d7c01509e25709a2b14400823143aab4aa180c262edbcb86b·...·]-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
186 ····················</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="6905372100-9">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="6905372100-10">(</span><span·class="n">Data</span><span·class="p"·data-group-id="6905372100-10[·...·truncated·by·diffoscope;·len:·51,·SHA:·f0b402f42619e73b1c7b58f4c244b0cad6c10bea4622ed12532053519e2cf6c4·...·]-9">}</span><span·class="w">186 ····················</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="2650504504-9">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="2650504504-10">(</span><span·class="n">Data</span><span·class="p"·data-group-id="2650504504-10[·...·truncated·by·diffoscope;·len:·51,·SHA:·371e6e6b1b64ddbc72c86b689f7e6d5012dde4e05c47eeff20e3c098a31c50ab·...·]-9">}</span><span·class="w">
187 ············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">187 ············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
188 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="6905372100-11">(</span><span·class="n">Port</span><span·class="p"·data-group-id="6905372100-11">)</span><span·class="w">188 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="2650504504-11">(</span><span·class="n">Port</span><span·class="p"·data-group-id="2650504504-11">)</span><span·class="w">
189 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Assuming·that·both·the·arguments·and·the·results·from·the·C·functions·are·less189 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Assuming·that·both·the·arguments·and·the·results·from·the·C·functions·are·less
190 than·256,·a·simple·encoding/decoding·scheme·is·employed.·In·this·scheme,·<code·class="inline">foo</code>190 than·256,·a·simple·encoding/decoding·scheme·is·employed.·In·this·scheme,·<code·class="inline">foo</code>
191 is·represented·by·byte·1,·<code·class="inline">bar</code>·is·represented·by·2,·and·the·argument/result·is191 is·represented·by·byte·1,·<code·class="inline">bar</code>·is·represented·by·2,·and·the·argument/result·is
192 represented·by·a·single·byte·as·well:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">encode</span><span·class="p"·data-group-id="4530198075-1">(</span><span·class="p"·data-group-id="4530198075-2">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="4530198075-2">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·4017db69d57f122f5b2feb18f1e07668c118645a33dba7cc8d4bab39eaf47f49·...·]-3">]</span><span·class="p">;</span><span·class="w">192 represented·by·a·single·byte·as·well:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">encode</span><span·class="p"·data-group-id="7226268210-1">(</span><span·class="p"·data-group-id="7226268210-2">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="7226268210-2">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·599d3f1fbf46924aa0e3afd63bd688bd2f473310d192537112150528711b8cce·...·]-3">]</span><span·class="p">;</span><span·class="w">
193 </span><span·class="nf">encode</span><span·class="p"·data-group-id="4530198075-4">(</span><span·class="p"·data-group-id="4530198075-5">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="4530198075-5">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·d8ad4b041cf41efb7be36b5f0b2a999c580606b416c28a094e453ae8b1446ead·...·]-6">]</span><span·class="p">.</span><span·class="w">193 </span><span·class="nf">encode</span><span·class="p"·data-group-id="7226268210-4">(</span><span·class="p"·data-group-id="7226268210-5">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="7226268210-5">}</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·291,·SHA:·c25fef6e67d6de46908e17d8d6e24c188d30058d093a0686a60520f90e5a57c6·...·]-6">]</span><span·class="p">.</span><span·class="w">
  
194 </span><span·class="nf">decode</span><span·class="p"·data-group-id="4530198075-7">(</span><span·class="p"·data-group-id="4530198075-8">[</span><span·class="n">Int</span><span·class="p"·data-group-id="4530198075-8">]</span><span·class="p"·data-group-id="4530198075-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><p>The·resulting·Erlang·program,·including·functions·for·stopping·the·port·and194 </span><span·class="nf">decode</span><span·class="p"·data-group-id="7226268210-7">(</span><span·class="p"·data-group-id="7226268210-8">[</span><span·class="n">Int</span><span·class="p"·data-group-id="7226268210-8">]</span><span·class="p"·data-group-id="7226268210-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><p>The·resulting·Erlang·program,·including·functions·for·stopping·the·port·and
195 detecting·port·failures,·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">195 detecting·port·failures,·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">
196 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8435406477-1">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="8435406477-1">)</span><span·class="p">.</span><span·class="w">196 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9196050931-1">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="9196050931-1">)</span><span·class="p">.</span><span·class="w">
197 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8435406477-2">(</span><span·class="p"·data-group-id="8435406477-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·241,·SHA:·cbf1e2445f475df5cfd09c057fa546254a124fe278a2b654a349bdd3e147f8aa·...·]-2">)</span><span·class="p">.</span><span·class="w">197 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9196050931-2">(</span><span·class="p"·data-group-id="9196050931-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·241,·SHA:·455a7aae24ae234a9ee8b3dded01c6e8e1ecf1579fdc2ad3b3a044ce1efa2052·...·]-2">)</span><span·class="p">.</span><span·class="w">
198 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8435406477-4">(</span><span·class="p"·data-group-id="8435406477-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·b559254fa4de8d83d9426a981b693cd62b4cb5a823a866e21e02f50adbf229dc·...·]-4">)</span><span·class="p">.</span><span·class="w">198 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9196050931-4">(</span><span·class="p"·data-group-id="9196050931-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·e0db26b22c9b2842c6f0b83df9aaf99c3d1054b4316c42626d8d3d8b268747cf·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
199 </span><span·class="nf">start</span><span·class="p"·data-group-id="8435406477-6">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="8435406477-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">199 </span><span·class="nf">start</span><span·class="p"·data-group-id="9196050931-6">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="9196050931-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
200 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="8435406477-7">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="8435406477-7">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">200 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="9196050931-7">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="9196050931-7">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
201 »       </span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">201 »       </span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
202 »       </span><span·class="p"·data-group-id="8435406477-8">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="8435406477-8">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">202 »       </span><span·class="p"·data-group-id="9196050931-8">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="9196050931-8">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
203 »       </span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="8435406477-9">(</span><span·class="p"·data-group-id="8435406477-10">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">could_not_load_driver</span><span·class="p"·data-group-id="8435406477-10">}</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·2aa184570ea8eae208bdb10a788a6d98394cc34da6719aa86bee731b2deeb875·...·]-9">)</span><span·class="w">203 »       </span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="9196050931-9">(</span><span·class="p"·data-group-id="9196050931-10">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">could_not_load_driver</span><span·class="p"·data-group-id="9196050931-10">}</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·64a3defd518cc1b4111db20272c70bc60fcbdab684c22f44a717e172ea09ac06·...·]-9">)</span><span·class="w">
204 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8435406477-11">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8435406477-12">[</span><s[·...·truncated·by·diffoscope;·len:·125,·SHA:·51630623ad3ad340bc342f1d6c7b45aaca96fe7ec48db39cfe41552314913b27·...·]-11">)</span><span·class="p">.</span><span·class="w">205 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="9196050931-11">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9196050931-12">[</span><s[·...·truncated·by·diffoscope;·len:·125,·SHA:·287ec97b94dff48de2e9fa1153c427bf4d8536f86081db062e56707a40c5b515·...·]-11">)</span><span·class="p">.</span><span·class="w">
  
206 </span><span·class="nf">init</span><span·class="p"·data-group-id="8435406477-13">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="8435406477-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">206 </span><span·class="nf">init</span><span·class="p"·data-group-id="9196050931-13">(</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="9196050931-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
207 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="8435406477-14">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8435406477-15">(</span><span·class="p"·data-group-id="8435406477-15">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·93ab8aba9d3bc460218323ed260b794a0587e5d4f10132a47953f52d887d74fb·...·]-14">)</span><span·class="p">,</span><span·class="w">207 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="9196050931-14">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="9196050931-15">(</span><span·class="p"·data-group-id="9196050931-15">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·a8a5af326e5eda91b37e788cfe2a202fabb1b602b7cb89afe242c1e1e3fb882a·...·]-14">)</span><span·class="p">,</span><span·class="w">
208 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="8435406477-16">(</span><span·class="p"·data-group-id="8435406477-17">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="8435406477-17">}</span><span·class="p">[·...·truncated·by·diffoscope;·len:·181,·SHA:·5a64b8cb9acf45447ce391184cdf73785b59f301d5271ca2d1b4d7514acfafc3·...·]-16">)</span><span·class="p">,</span><span·class="w">208 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="9196050931-16">(</span><span·class="p"·data-group-id="9196050931-17">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SharedLib</span><span·class="p"·data-group-id="9196050931-17">}</span><span·class="p">[·...·truncated·by·diffoscope;·len:·181,·SHA:·e515a945cff47c7f70f4fcb17b7ac700aff79be6fd2fa56c9bb4b891743a605f·...·]-16">)</span><span·class="p">,</span><span·class="w">
209 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8435406477-19">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8435406477-19">)</span><span·class="p">.</span><span·class="w">209 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="9196050931-19">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9196050931-19">)</span><span·class="p">.</span><span·class="w">
  
210 </span><span·class="nf">stop</span><span·class="p"·data-group-id="8435406477-20">(</span><span·class="p"·data-group-id="8435406477-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">210 </span><span·class="nf">stop</span><span·class="p"·data-group-id="9196050931-20">(</span><span·class="p"·data-group-id="9196050931-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
211 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">.</span><span·class="w">211 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">.</span><span·class="w">
  
212 </span><span·class="nf">foo</span><span·class="p"·data-group-id="8435406477-21">(</span><span·class="n">X</span><span·class="p"·data-group-id="8435406477-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">212 </span><span·class="nf">foo</span><span·class="p"·data-group-id="9196050931-21">(</span><span·class="n">X</span><span·class="p"·data-group-id="9196050931-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
213 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="8435406477-22">(</span><span·class="p"·data-group-id="8435406477-23">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="8435406477-23">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·6042dc72ca3a11e0f0cc660820aecf78b5f3e3003e817a5b51601ed61ec97b7c·...·]-22">)</span><span·class="p">.</span><span·class="w">213 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="9196050931-22">(</span><span·class="p"·data-group-id="9196050931-23">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="9196050931-23">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·65b7214fcee0492988efa58a45c6578922714915790a3a9114e67eebf108ee22·...·]-22">)</span><span·class="p">.</span><span·class="w">
214 </span><span·class="nf">bar</span><span·class="p"·data-group-id="8435406477-24">(</span><span·class="n">Y</span><span·class="p"·data-group-id="8435406477-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 </span><span·class="nf">bar</span><span·class="p"·data-group-id="9196050931-24">(</span><span·class="n">Y</span><span·class="p"·data-group-id="9196050931-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="8435406477-25">(</span><span·class="p"·data-group-id="8435406477-26">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8435406477-26">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·6042dc72ca3a11e0f0cc660820aecf78b5f3e3003e817a5b51601ed61ec97b7c·...·]-25">)</span><span·class="p">.</span><span·class="w">215 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="9196050931-25">(</span><span·class="p"·data-group-id="9196050931-26">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="9196050931-26">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·65b7214fcee0492988efa58a45c6578922714915790a3a9114e67eebf108ee22·...·]-25">)</span><span·class="p">.</span><span·class="w">
  
216 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="8435406477-27">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="8435406477-27">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">216 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="9196050931-27">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="9196050931-27">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
217 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8435406477-28">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8435406477-29">(</span><span·class="p"·data-group-id="8435406477-29">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·60fa2716f459375bac2a327a4adbe4778839ce242037fad916af04e4daf732ad·...·]-28">}</span><span·class="p">,</span><span·class="w">217 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="9196050931-28">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="9196050931-29">(</span><span·class="p"·data-group-id="9196050931-29">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·9f25a24c000f1da725514acde278be2da855dc3250b33d955f1b04118ce87c61·...·]-28">}</span><span·class="p">,</span><span·class="w">
218 ····</span><span·class="k">receive</span><span·class="w">218 ····</span><span·class="k">receive</span><span·class="w">
219 »       </span><span·class="p"·data-group-id="8435406477-30">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="8435406477-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 »       </span><span·class="p"·data-group-id="9196050931-30">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="9196050931-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 »       ····</span><span·class="n">Result</span><span·class="w">220 »       ····</span><span·class="n">Result</span><span·class="w">
221 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">221 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
222 </span><span·class="nf">loop</span><span·class="p"·data-group-id="8435406477-31">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8435406477-31">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">222 </span><span·class="nf">loop</span><span·class="p"·data-group-id="9196050931-31">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9196050931-31">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
223 ····</span><span·class="k">receive</span><span·class="w">223 ····</span><span·class="k">receive</span><span·class="w">
224 »       </span><span·class="p"·data-group-id="8435406477-32">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="8435406477-32">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 »       </span><span·class="p"·data-group-id="9196050931-32">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="9196050931-32">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8435406477-33">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8435406477-34">(</span><span·class="p"·data-group-id="8435406477-34">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8435406477-35">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·c8af68da75edc7f99394da6a28c5762eb1cdcb4a520e534008a7cd953078f450·...·]-33">}</span><span·class="p">,</span><span·class="w">225 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="9196050931-33">{</span><span·class="nf">self</span><span·class="p"·data-group-id="9196050931-34">(</span><span·class="p"·data-group-id="9196050931-34">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9196050931-35">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·10fb77436387ee3ddcd219b550f958f78037248028702003530669de1b49db2e·...·]-33">}</span><span·class="p">,</span><span·class="w">
226 »       ····</span><span·class="k">receive</span><span·class="w">226 »       ····</span><span·class="k">receive</span><span·class="w">
227 »       »       </span><span·class="p"·data-group-id="8435406477-37">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8435406477-38">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·77ec086f51b0ec912b585cb71a4faddb135f639d0b2b0e2c2edebdc4a801a133·...·]-37">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 »       »       </span><span·class="p"·data-group-id="9196050931-37">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9196050931-38">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·472ea3678acc40d883506ab41ebee2bc9fbb39421de3b7039bc50b11e9e6e359·...·]-37">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 »       »       ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8435406477-39">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="8435406477-40">(</span><span·class="n">Data</span><span·class="p"·data-group-id="8435406477-4[·...·truncated·by·diffoscope;·len:·52,·SHA:·708ff28c0ef19d973ff998d23ade19c193783880723575cc04280aa964d58a47·...·]-39">}</span><span·class="w">228 »       »       ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="9196050931-39">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="9196050931-40">(</span><span·class="n">Data</span><span·class="p"·data-group-id="9196050931-4[·...·truncated·by·diffoscope;·len:·52,·SHA:·cee5dbc5aaf5fb1651c676dd86d0f3898374607fbd8eb73d7c36a5d4b4e64246·...·]-39">}</span><span·class="w">
229 »       ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">229 »       ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
230 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8435406477-41">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8435406477-41">)</span><span·class="p">;</span><span·class="w">230 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="9196050931-41">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9196050931-41">)</span><span·class="p">;</span><span·class="w">
231 »       </span><span·class="ss">stop</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 »       </span><span·class="ss">stop</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8435406477-42">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8435406477-43">(</span><span·class="p"·data-group-id="8435406477-43">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">close</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·0062ba8ce80ef562a8f92ea752766f8dcb015b5b0d3740c3b37a439c39becb22·...·]-42">}</span><span·class="p">,</span><span·class="w">232 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="9196050931-42">{</span><span·class="nf">self</span><span·class="p"·data-group-id="9196050931-43">(</span><span·class="p"·data-group-id="9196050931-43">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">close</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·c0a5d9abf96d1f54d7c710f27bd6088ebfdb152839b22c2a49117f668ec9af15·...·]-42">}</span><span·class="p">,</span><span·class="w">
233 »       ····</span><span·class="k">receive</span><span·class="w">233 »       ····</span><span·class="k">receive</span><span·class="w">
234 »       »       </span><span·class="p"·data-group-id="8435406477-44">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="8435406477-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">234 »       »       </span><span·class="p"·data-group-id="9196050931-44">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="9196050931-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
235 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="8435406477-45">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="8435406477-45">)</span><span·class="w">235 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="9196050931-45">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="9196050931-45">)</span><span·class="w">
236 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">236 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
237 »       </span><span·class="p"·data-group-id="8435406477-46">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8435406477-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">237 »       </span><span·class="p"·data-group-id="9196050931-46">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="9196050931-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
238 »       ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8435406477-47">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8435406477-48">[</sp[·...·truncated·by·diffoscope;·len:·127,·SHA:·78d17730a78db0727ad103b4b984520e1d571304ac86219c0850379158e433c7·...·]-47">)</span><span·class="p">,</span><span·class="w">238 »       ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9196050931-47">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9196050931-48">[</sp[·...·truncated·by·diffoscope;·len:·127,·SHA:·1638ef97c04161d19cbb03198df47253f020841ed1778b1c74c69abbf8566ad5·...·]-47">)</span><span·class="p">,</span><span·class="w">
239 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="8435406477-49">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="8435406477-49">)</span><span·class="w">239 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="9196050931-49">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="9196050931-49">)</span><span·class="w">
240 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">240 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
241 </span><span·class="nf">encode</span><span·class="p"·data-group-id="8435406477-50">(</span><span·class="p"·data-group-id="8435406477-51">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="8435406477-51">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·e24a76d4eecd7eb3fd9800a7d30049cc789cc41d09684f488da236cf90a4859a·...·]-52">]</span><span·class="p">;</span><span·class="w">241 </span><span·class="nf">encode</span><span·class="p"·data-group-id="9196050931-50">(</span><span·class="p"·data-group-id="9196050931-51">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="9196050931-51">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·3566d167390d717bd1f966369c4d52a0c70f601dd13b3c49b456e5d6a02d5ca2·...·]-52">]</span><span·class="p">;</span><span·class="w">
242 </span><span·class="nf">encode</span><span·class="p"·data-group-id="8435406477-53">(</span><span·class="p"·data-group-id="8435406477-54">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8435406477-54">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·21083a2e8d32b64bc25c6cbf06b0dfce9abcc0bf01e18f27fd265662c741b0c9·...·]-55">]</span><span·class="p">.</span><span·class="w">242 </span><span·class="nf">encode</span><span·class="p"·data-group-id="9196050931-53">(</span><span·class="p"·data-group-id="9196050931-54">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="9196050931-54">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·99fa6fca0ddd57adb3ae6381ae98ef40b659f2c0e60a043343fa8d04c612380f·...·]-55">]</span><span·class="p">.</span><span·class="w">
  
243 </span><span·class="nf">decode</span><span·class="p"·data-group-id="8435406477-56">(</span><span·class="p"·data-group-id="8435406477-57">[</span><span·class="n">Int</span><span·class="p"·data-group-id="8435406477-57">]</span><span·class="p"·data-group-id="8435406477-56">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><h2·id="c-driver"·class="section-heading">243 </span><span·class="nf">decode</span><span·class="p"·data-group-id="9196050931-56">(</span><span·class="p"·data-group-id="9196050931-57">[</span><span·class="n">Int</span><span·class="p"·data-group-id="9196050931-57">]</span><span·class="p"·data-group-id="9196050931-56">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><h2·id="c-driver"·class="section-heading">
244 ··<a·href="#c-driver"·class="hover-link">244 ··<a·href="#c-driver"·class="hover-link">
245 ····<i·class="ri-link-m"·aria-hidden="true"></i>245 ····<i·class="ri-link-m"·aria-hidden="true"></i>
246 ··</a>246 ··</a>
247 ··<span·class="text">C·Driver</span>247 ··<span·class="text">C·Driver</span>
248 </h2>248 </h2>
249 <p>The·C·driver·is·a·module·that·is·compiled·and·linked·into·a·shared·library.·It249 <p>The·C·driver·is·a·module·that·is·compiled·and·linked·into·a·shared·library.·It
250 uses·a·driver·structure·and·includes·the·header·file·<code·class="inline">erl_driver.h</code>.</p><p>The·driver·structure·is·filled·with·the·driver·name·and·function·pointers.·It·is250 uses·a·driver·structure·and·includes·the·header·file·<code·class="inline">erl_driver.h</code>.</p><p>The·driver·structure·is·filled·with·the·driver·name·and·function·pointers.·It·is
Offset 347, 25 lines modifiedOffset 347, 25 lines modified
347 ··<a·href="#running-the-example"·class="hover-link">347 ··<a·href="#running-the-example"·class="hover-link">
348 ····<i·class="ri-link-m"·aria-hidden="true"></i>348 ····<i·class="ri-link-m"·aria-hidden="true"></i>
349 ··</a>349 ··</a>
350 ··<span·class="text">Running·the·Example</span>350 ··<span·class="text">Running·the·Example</span>
351 </h2>351 </h2>
352 <p><em>Step·1.</em>·Compile·the·C·code:</p><pre><code·class="text">unix&gt;·gcc·-o·example_drv.so·-fpic·-shared·complex.c·port_driver.c352 <p><em>Step·1.</em>·Compile·the·C·code:</p><pre><code·class="text">unix&gt;·gcc·-o·example_drv.so·-fpic·-shared·complex.c·port_driver.c
353 windows&gt;·cl·-LD·-MD·-Fe·example_drv.dll·complex.c·port_driver.c</code></pre><p><em>Step·2.</em>·Start·Erlang·and·compile·the·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="ss">erl</span><span·class="w">353 windows&gt;·cl·-LD·-MD·-Fe·example_drv.dll·complex.c·port_driver.c</code></pre><p><em>Step·2.</em>·Start·Erlang·and·compile·the·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="ss">erl</span><span·class="w">
354 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">26</span><span·class="w">·</span><span·class="p"·data-group-id="2561054607-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p"·data-group-id="2561054607-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="2561054607-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1283,·SHA:·5d661a4f5726bda4713c3c08abc517d48da50b591e25c71b838ce31af8bb3cf5·...·]-7">]</span><span·class="w">354 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">26</span><span·class="w">·</span><span·class="p"·data-group-id="4511123150-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p"·data-group-id="4511123150-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="4511123150-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1283,·SHA:·000e79499cf56d9e294a71c276b9948cee7dbe52e2e27ea8ec760436db3b755e·...·]-7">]</span><span·class="w">
  
355 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V14</span><span·class="p">.</span><span·class="mi">2</span><span·class="w">·</span><span·class="p"·data-group-id="2561054607-8">(</span><span·class="ss">press</span><span·class="w">·</span><span·class="n">Ctrl</span><span·class="o">+</span><span·class="n">G</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">abort</span><sp[·...·truncated·by·diffoscope;·len:·399,·SHA:·fc3c2d494502f35414a0848f8520761615aa9ed6ace24087c2ac0b521aaccab8·...·]-8">)</span><span·class="gp·unselectable">355 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V14</span><span·class="p">.</span><span·class="mi">2</span><span·class="w">·</span><span·class="p"·data-group-id="4511123150-8">(</span><span·class="ss">press</span><span·class="w">·</span><span·class="n">Ctrl</span><span·class="o">+</span><span·class="n">G</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">abort</span><sp[·...·truncated·by·diffoscope;·len:·399,·SHA:·0ce70fb65c2826904350abe0b02981ce287c69db3ea5871020ce9b26195238dd·...·]-8">)</span><span·class="gp·unselectable">
356 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="2561054607-10">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="2561054607-10">)</span><span·class="p">.</span><span·class="w">356 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="4511123150-10">(</span><span·class="ss">complex5</span><span·class="p"·data-group-id="4511123150-10">)</span><span·class="p">.</span><span·class="w">
357 </span><span·class="p"·data-group-id="2561054607-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex5</span><span·class="p"·data-group-id="2561054607-11">}</span></code></pre><p><em>Step·3.</em>·Run·the·example:</p><pre><code·class="makeup·erlang"·translate="[·...·truncated·by·diffoscope;·len:·272,·SHA:·2ff5c638f0c2cae8e780b064e9e4e56791cbe73914188e36cbbec638ea009305·...·]-1">)</span><span·class="p">.</span><span·class="w">357 </span><span·class="p"·data-group-id="4511123150-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex5</span><span·class="p"·data-group-id="4511123150-11">}</span></code></pre><p><em>Step·3.</em>·Run·the·example:</p><pre><code·class="makeup·erlang"·translate="[·...·truncated·by·diffoscope;·len:·272,·SHA:·711d91f1b97caa7f9b59ee707b3e23dd3cd57c4e04e3e69fc9cbdc03d77aa4b0·...·]-1">)</span><span·class="p">.</span><span·class="w">
358 </span><span·class="o">&lt;</span><span·class="mf">0.34</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">358 </span><span·class="o">&lt;</span><span·class="mf">0.34</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">
359 3&gt;·</span><span·class="nc">complex5</span><span·class="p">:</span><span·class="nf">foo</span><span·class="p"·data-group-id="3014574313-2">(</span><span·class="mi">3</span><span·class="p"·data-group-id="3014574313-2">)</span><span·class="p">.</span><span·class="w">359 3&gt;·</span><span·class="nc">complex5</span><span·class="p">:</span><span·class="nf">foo</span><span·class="p"·data-group-id="9151230902-2">(</span><span·class="mi">3</span><span·class="p"·data-group-id="9151230902-2">)</span><span·class="p">.</span><span·class="w">
Max diff block lines reached; 2022/65851 bytes (3.07%) of diff not shown.
546 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/doc/system/character_set.html
    
Offset 186, 15 lines modifiedOffset 186, 15 lines modified
186 ······<p·class="built-using">186 ······<p·class="built-using">
187 ········Built·using187 ········Built·using
188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
190 ······</p>190 ······</p>
191 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
192 ····</footer>192 ····</footer>
193 ··</div>193 ··</div>
194 </main>194 </main>
195 </div>195 </div>
196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
197 <script>197 <script>
198 ··document.addEventListener("DOMContentLoaded",·function·()·{198 ··document.addEventListener("DOMContentLoaded",·function·()·{
676 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/doc/system/cnode.html
    
Offset 164, 15 lines modifiedOffset 164, 15 lines modified
164 ······<p·class="built-using">164 ······<p·class="built-using">
165 ········Built·using165 ········Built·using
166 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the166 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
167 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>167 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
168 ······</p>168 ······</p>
169 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>169 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
170 ····</footer>170 ····</footer>
171 ··</div>171 ··</div>
172 </main>172 </main>
173 </div>173 </div>
174 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>174 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
175 <script>175 <script>
176 ··document.addEventListener("DOMContentLoaded",·function·()·{176 ··document.addEventListener("DOMContentLoaded",·function·()·{
681 B
html2text {}
Max HTML report size reached
15.3 KB
./usr/share/doc/erlang-doc/html/doc/system/code_loading.html
    
Offset 122, 16 lines modifiedOffset 122, 16 lines modified
122 ····<i·class="ri-link-m"·aria-hidden="true"></i>122 ····<i·class="ri-link-m"·aria-hidden="true"></i>
123 ··</a>123 ··</a>
124 ··<span·class="text">Compilation</span>124 ··<span·class="text">Compilation</span>
125 </h2>125 </h2>
126 <p>Erlang·programs·must·be·<em>compiled</em>·to·object·code.·The·compiler·can·generate·a126 <p>Erlang·programs·must·be·<em>compiled</em>·to·object·code.·The·compiler·can·generate·a
127 new·file·that·contains·the·object·code.·The·current·abstract·machine,·which·runs127 new·file·that·contains·the·object·code.·The·current·abstract·machine,·which·runs
128 the·object·code,·is·called·BEAM,·therefore·the·object·files·get·the·suffix128 the·object·code,·is·called·BEAM,·therefore·the·object·files·get·the·suffix
129 <code·class="inline">.beam</code>.·The·compiler·can·also·generate·a·binary·which·can·be·loaded·directly.</p><p>The·compiler·is·located·in·the·module·<a·href="../../lib/compiler-8.5.1/doc/html/compile.html"><code·class="inline">compile</code></a>·in·Compiler.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">compile</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="7090633258-1">(</span><span·class="n">Module</span><span·class="p"·data-group-id="7090633258-1">)</span><span·class="w">129 <code·class="inline">.beam</code>.·The·compiler·can·also·generate·a·binary·which·can·be·loaded·directly.</p><p>The·compiler·is·located·in·the·module·<a·href="../../lib/compiler-8.5.1/doc/html/compile.html"><code·class="inline">compile</code></a>·in·Compiler.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">compile</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="8400428302-1">(</span><span·class="n">Module</span><span·class="p"·data-group-id="8400428302-1">)</span><span·class="w">
130 </span><span·class="nc">compile</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="7090633258-2">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Options</span><span·class="p"·data-group-id="7090633258-2">)</span></code></pre><p>The·Erlang·shell·understands·the·command·<code·class="inline">c(Module)</code>,·which·both·compiles·and130 </span><span·class="nc">compile</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="8400428302-2">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Options</span><span·class="p"·data-group-id="8400428302-2">)</span></code></pre><p>The·Erlang·shell·understands·the·command·<code·class="inline">c(Module)</code>,·which·both·compiles·and
131 loads·<code·class="inline">Module</code>.</p><p>There·is·also·a·module·<code·class="inline">make</code>,·which·provides·a·set·of·functions·similar·to·the131 loads·<code·class="inline">Module</code>.</p><p>There·is·also·a·module·<code·class="inline">make</code>,·which·provides·a·set·of·functions·similar·to·the
132 UNIX·type·Make·functions,·see·module·<a·href="../../lib/tools-4.0/doc/html/make.html"><code·class="inline">make</code></a>·in·Tools.</p><p>The·compiler·can·also·be·accessed·from·the·OS·prompt·using·the132 UNIX·type·Make·functions,·see·module·<a·href="../../lib/tools-4.0/doc/html/make.html"><code·class="inline">make</code></a>·in·Tools.</p><p>The·compiler·can·also·be·accessed·from·the·OS·prompt·using·the
133 <a·href="../../erts-15.0.1/doc/html/erl_cmd.html">erl</a>·executable·in·ERTS.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-compile·Module1...ModuleN</span><span·class="w">133 <a·href="../../erts-15.0.1/doc/html/erl_cmd.html">erl</a>·executable·in·ERTS.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-compile·Module1...ModuleN</span><span·class="w">
134 </span><span·class="c1">%·erl·-make</span></code></pre><p>The·<code·class="inline">erlc</code>·program·provides·way·to·compile·modules·from·the·OS134 </span><span·class="c1">%·erl·-make</span></code></pre><p>The·<code·class="inline">erlc</code>·program·provides·way·to·compile·modules·from·the·OS
135 shell,·see·the·<a·href="../../erts-15.0.1/doc/html/erlc_cmd.html">erlc</a>·executable·in·ERTS.·It135 shell,·see·the·<a·href="../../erts-15.0.1/doc/html/erlc_cmd.html">erlc</a>·executable·in·ERTS.·It
136 understands·a·number·of·flags·that·can·be·used·to·define·macros,·add·search136 understands·a·number·of·flags·that·can·be·used·to·define·macros,·add·search
137 paths·for·include·files,·and·more.</p><pre><code·class="text">%·erlc·&lt;flags&gt;·File1.erl...FileN.erl</code></pre><p><a·href=""·id="loading"></a></p><h2·id="code-loading"·class="section-heading">137 paths·for·include·files,·and·more.</p><pre><code·class="text">%·erlc·&lt;flags&gt;·File1.erl...FileN.erl</code></pre><p><a·href=""·id="loading"></a></p><h2·id="code-loading"·class="section-heading">
Offset 156, 54 lines modifiedOffset 156, 54 lines modified
156 When·a·module·is·loaded·into·the·system·for·the·first·time,·the·code·becomes156 When·a·module·is·loaded·into·the·system·for·the·first·time,·the·code·becomes
157 'current'.·If·then·a·new·instance·of·the·module·is·loaded,·the·code·of·the157 'current'.·If·then·a·new·instance·of·the·module·is·loaded,·the·code·of·the
158 previous·instance·becomes·'old'·and·the·new·instance·becomes·'current'.</p><p>Both·old·and·current·code·is·valid,·and·can·be·evaluated·concurrently.·Fully158 previous·instance·becomes·'old'·and·the·new·instance·becomes·'current'.</p><p>Both·old·and·current·code·is·valid,·and·can·be·evaluated·concurrently.·Fully
159 qualified·function·calls·always·refer·to·current·code.·Old·code·can·still·be159 qualified·function·calls·always·refer·to·current·code.·Old·code·can·still·be
160 evaluated·because·of·processes·lingering·in·the·old·code.</p><p>If·a·third·instance·of·the·module·is·loaded,·the·code·server·removes·(purges)160 evaluated·because·of·processes·lingering·in·the·old·code.</p><p>If·a·third·instance·of·the·module·is·loaded,·the·code·server·removes·(purges)
161 the·old·code·and·any·processes·lingering·in·it·is·terminated.·Then·the·third161 the·old·code·and·any·processes·lingering·in·it·is·terminated.·Then·the·third
162 instance·becomes·'current'·and·the·previously·current·code·becomes·'old'.</p><p>To·change·from·old·code·to·current·code,·a·process·must·make·a·fully·qualified162 instance·becomes·'current'·and·the·previously·current·code·becomes·'old'.</p><p>To·change·from·old·code·to·current·code,·a·process·must·make·a·fully·qualified
163 function·call.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9778731070-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="9778731070-1">)</span><span·class="p">.</span><span·class="w">163 function·call.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8506952384-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="8506952384-1">)</span><span·class="p">.</span><span·class="w">
164 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9778731070-2">(</span><span·class="p"·data-group-id="9778731070-3">[</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="9778731070-3">]</span><span·class="p"·data-group-id="9778731070-2">)</span><span·class="p">.</span><span·class="w">164 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8506952384-2">(</span><span·class="p"·data-group-id="8506952384-3">[</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8506952384-3">]</span><span·class="p"·data-group-id="8506952384-2">)</span><span·class="p">.</span><span·class="w">
  
165 </span><span·class="nf">loop</span><span·class="p"·data-group-id="9778731070-4">(</span><span·class="p"·data-group-id="9778731070-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">165 </span><span·class="nf">loop</span><span·class="p"·data-group-id="8506952384-4">(</span><span·class="p"·data-group-id="8506952384-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
166 ····</span><span·class="k">receive</span><span·class="w">166 ····</span><span·class="k">receive</span><span·class="w">
167 ········</span><span·class="ss">code_switch</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">167 ········</span><span·class="ss">code_switch</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
168 ············</span><span·class="nc">m</span><span·class="p">:</span><span·class="nf">loop</span><span·class="p"·data-group-id="9778731070-5">(</span><span·class="p"·data-group-id="9778731070-5">)</span><span·class="p">;</span><span·class="w">168 ············</span><span·class="nc">m</span><span·class="p">:</span><span·class="nf">loop</span><span·class="p"·data-group-id="8506952384-5">(</span><span·class="p"·data-group-id="8506952384-5">)</span><span·class="p">;</span><span·class="w">
169 ········</span><span·class="n">Msg</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">169 ········</span><span·class="n">Msg</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
170 ············</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">170 ············</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
171 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="9778731070-6">(</span><span·class="p"·data-group-id="9778731070-6">)</span><span·class="w">171 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="8506952384-6">(</span><span·class="p"·data-group-id="8506952384-6">)</span><span·class="w">
172 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>To·make·the·process·change·code,·send·the·message·<code·class="inline">code_switch</code>·to·it.·The172 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>To·make·the·process·change·code,·send·the·message·<code·class="inline">code_switch</code>·to·it.·The
173 process·then·makes·a·fully·qualified·call·to·<code·class="inline">m:loop()</code>·and·changes·to·current173 process·then·makes·a·fully·qualified·call·to·<code·class="inline">m:loop()</code>·and·changes·to·current
174 code.·Notice·that·<code·class="inline">m:loop/0</code>·must·be·exported.</p><p>For·code·replacement·of·funs·to·work,·use·the·syntax174 code.·Notice·that·<code·class="inline">m:loop/0</code>·must·be·exported.</p><p>For·code·replacement·of·funs·to·work,·use·the·syntax
175 <code·class="inline">fun·Module:FunctionName/Arity</code>.</p><p><a·href=""·id="on_load"></a></p><h2·id="running-a-function-when-a-module-is-loaded"·class="section-heading">175 <code·class="inline">fun·Module:FunctionName/Arity</code>.</p><p><a·href=""·id="on_load"></a></p><h2·id="running-a-function-when-a-module-is-loaded"·class="section-heading">
176 ··<a·href="#running-a-function-when-a-module-is-loaded"·class="hover-link">176 ··<a·href="#running-a-function-when-a-module-is-loaded"·class="hover-link">
177 ····<i·class="ri-link-m"·aria-hidden="true"></i>177 ····<i·class="ri-link-m"·aria-hidden="true"></i>
178 ··</a>178 ··</a>
179 ··<span·class="text">Running·a·Function·When·a·Module·is·Loaded</span>179 ··<span·class="text">Running·a·Function·When·a·Module·is·Loaded</span>
180 </h2>180 </h2>
181 <p>The·<code·class="inline">-on_load()</code>·directive·names·a·function·that·is·to·be·run·automatically·when181 <p>The·<code·class="inline">-on_load()</code>·directive·names·a·function·that·is·to·be·run·automatically·when
182 a·module·is·loaded.</p><p>Its·syntax·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">on_load</span><span·class="p"·data-group-id="2515757826-1">(</span><span·class="n">Name</span><span·class="o">/</span><span·class="mi">0</span><span·class="p"·data-group-id="2515757826-1">)</span><span·class="p">.</span></code></pre><p>It·is·not·necessary·to·export·the·function.·It·is·called·in·a·freshly·spawned182 a·module·is·loaded.</p><p>Its·syntax·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">on_load</span><span·class="p"·data-group-id="1869353305-1">(</span><span·class="n">Name</span><span·class="o">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1869353305-1">)</span><span·class="p">.</span></code></pre><p>It·is·not·necessary·to·export·the·function.·It·is·called·in·a·freshly·spawned
183 process·(which·terminates·as·soon·as·the·function·returns).</p><p>The·function·must·return·<code·class="inline">ok</code>·if·the·module·is·to·become·the·new·current·code183 process·(which·terminates·as·soon·as·the·function·returns).</p><p>The·function·must·return·<code·class="inline">ok</code>·if·the·module·is·to·become·the·new·current·code
184 for·the·module·and·become·callable.</p><p>Returning·any·other·value·or·generating·an·exception·causes·the·new·code·to·be184 for·the·module·and·become·callable.</p><p>Returning·any·other·value·or·generating·an·exception·causes·the·new·code·to·be
185 unloaded.·If·the·return·value·is·not·an·atom,·a·warning·error·report·is·sent·to185 unloaded.·If·the·return·value·is·not·an·atom,·a·warning·error·report·is·sent·to
186 the·error·logger.</p><p>If·there·already·is·current·code·for·the·module,·that·code·will·remain·current186 the·error·logger.</p><p>If·there·already·is·current·code·for·the·module,·that·code·will·remain·current
187 and·can·be·called·until·the·<code·class="inline">on_load</code>·function·has·returned.·If·the·<code·class="inline">on_load</code>187 and·can·be·called·until·the·<code·class="inline">on_load</code>·function·has·returned.·If·the·<code·class="inline">on_load</code>
188 function·fails,·the·current·code·(if·any)·will·remain·current.·If·there·is·no188 function·fails,·the·current·code·(if·any)·will·remain·current.·If·there·is·no
189 current·code·for·a·module,·any·process·that·makes·an·external·call·to·the·module189 current·code·for·a·module,·any·process·that·makes·an·external·call·to·the·module
190 before·the·<code·class="inline">on_load</code>·function·has·finished·will·be·suspended·until·the·<code·class="inline">on_load</code>190 before·the·<code·class="inline">on_load</code>·function·has·finished·will·be·suspended·until·the·<code·class="inline">on_load</code>
191 function·have·finished.</p><blockquote><h4·class="info">Change</h4><p>Before·Erlang/OTP·19,·if·the·<code·class="inline">on_load</code>·function·failed,·any·previously·current191 function·have·finished.</p><blockquote><h4·class="info">Change</h4><p>Before·Erlang/OTP·19,·if·the·<code·class="inline">on_load</code>·function·failed,·any·previously·current
192 code·would·become·old,·essentially·leaving·the·system·without·any·working·and192 code·would·become·old,·essentially·leaving·the·system·without·any·working·and
193 reachable·instance·of·the·module.</p></blockquote><p>In·embedded·mode,·first·all·modules·are·loaded.·Then·all·<code·class="inline">on_load</code>·functions·are193 reachable·instance·of·the·module.</p></blockquote><p>In·embedded·mode,·first·all·modules·are·loaded.·Then·all·<code·class="inline">on_load</code>·functions·are
194 called.·The·system·is·terminated·unless·all·of·the·<code·class="inline">on_load</code>·functions·return194 called.·The·system·is·terminated·unless·all·of·the·<code·class="inline">on_load</code>·functions·return
195 <code·class="inline">ok</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0307069275-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="0307069275-1">)</span><span·class="p">.</span><span·class="w">195 <code·class="inline">ok</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9333992336-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="9333992336-1">)</span><span·class="p">.</span><span·class="w">
196 </span><span·class="p">-</span><span·class="na">on_load</span><span·class="p"·data-group-id="0307069275-2">(</span><span·class="ss">load_my_nifs</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0307069275-2">)</span><span·class="p">.</span><span·class="w">196 </span><span·class="p">-</span><span·class="na">on_load</span><span·class="p"·data-group-id="9333992336-2">(</span><span·class="ss">load_my_nifs</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="9333992336-2">)</span><span·class="p">.</span><span·class="w">
  
197 </span><span·class="nf">load_my_nifs</span><span·class="p"·data-group-id="0307069275-3">(</span><span·class="p"·data-group-id="0307069275-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">197 </span><span·class="nf">load_my_nifs</span><span·class="p"·data-group-id="9333992336-3">(</span><span·class="p"·data-group-id="9333992336-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
198 ····</span><span·class="n">NifPath</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%Set·up·the·path·to·the·NIF·library.</span><span·class="w">198 ····</span><span·class="n">NifPath</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%Set·up·the·path·to·the·NIF·library.</span><span·class="w">
199 ····</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%Initialize·the·Info·term</span><span·class="w">199 ····</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%Initialize·the·Info·term</span><span·class="w">
200 ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">load_nif</span><span·class="p"·data-group-id="0307069275-4">(</span><span·class="n">NifPath</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p"·data-group-id="0307069275-4">)</span><span·class="p">.</span></code></pre><p>If·the·call·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#load_nif/2"><code·class="inline">erlang:load_nif/2</code></a>·fails,·the·module·is·unloaded·and·a·warning200 ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">load_nif</span><span·class="p"·data-group-id="9333992336-4">(</span><span·class="n">NifPath</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p"·data-group-id="9333992336-4">)</span><span·class="p">.</span></code></pre><p>If·the·call·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#load_nif/2"><code·class="inline">erlang:load_nif/2</code></a>·fails,·the·module·is·unloaded·and·a·warning
201 report·is·sent·to·the·error·loader.</p>201 report·is·sent·to·the·error·loader.</p>
202 </div>202 </div>
  
203 <div·class="bottom-actions"·id="bottom-actions">203 <div·class="bottom-actions"·id="bottom-actions">
204 ··<div·class="bottom-actions-item">204 ··<div·class="bottom-actions-item">
  
205 ······<a·href="distributed.html"·class="bottom-actions-button"·rel="prev">205 ······<a·href="distributed.html"·class="bottom-actions-button"·rel="prev">
Offset 247, 15 lines modifiedOffset 247, 15 lines modified
247 ······<p·class="built-using">247 ······<p·class="built-using">
248 ········Built·using248 ········Built·using
249 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the249 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
250 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>250 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
251 ······</p>251 ······</p>
252 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>252 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
253 ····</footer>253 ····</footer>
254 ··</div>254 ··</div>
255 </main>255 </main>
256 </div>256 </div>
257 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>257 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
258 <script>258 <script>
259 ··document.addEventListener("DOMContentLoaded",·function·()·{259 ··document.addEventListener("DOMContentLoaded",·function·()·{
761 B
html2text {}
Max HTML report size reached
53.0 KB
./usr/share/doc/erlang-doc/html/doc/system/commoncaveats.html
    
Offset 118, 31 lines modifiedOffset 118, 31 lines modified
118 <p>This·section·lists·a·few·constructs·to·watch·out·for.</p><h2·id="operator"·class="section-heading">118 <p>This·section·lists·a·few·constructs·to·watch·out·for.</p><h2·id="operator"·class="section-heading">
119 ··<a·href="#operator"·class="hover-link">119 ··<a·href="#operator"·class="hover-link">
120 ····<i·class="ri-link-m"·aria-hidden="true"></i>120 ····<i·class="ri-link-m"·aria-hidden="true"></i>
121 ··</a>121 ··</a>
122 ··<span·class="text">Operator·<code·class="inline">++</code></span>122 ··<span·class="text">Operator·<code·class="inline">++</code></span>
123 </h2>123 </h2>
124 <p>The·<code·class="inline">++</code>·operator·copies·its·left-hand·side·operand.·That·is·clearly124 <p>The·<code·class="inline">++</code>·operator·copies·its·left-hand·side·operand.·That·is·clearly
125 seen·if·we·do·our·own·implementation·in·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_plus_plus</span><span·class="p"·data-group-id="1862109064-1">(</span><span·class="p"·data-group-id="1862109064-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="1862109064-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·da251fdb89a9caf896f82d39e155d6e9b724ae82bcb0a8af40dd15c014cd2e1a·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">125 seen·if·we·do·our·own·implementation·in·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_plus_plus</span><span·class="p"·data-group-id="4411387928-1">(</span><span·class="p"·data-group-id="4411387928-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="4411387928-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·96ecc2641c68c76d21875b3ad9e1d026ea819b92573122baa863c4beec541323·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
126 ····</span><span·class="p"·data-group-id="1862109064-3">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">my_plus_plus</span><span·class="p"·data-group-id="1862109064-4">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</spa[·...·truncated·by·diffoscope;·len:·96,·SHA:·0fa88a46f13d1b010716c2be8655578a946b53b680f444064584123ccee25f41·...·]-3">]</span><span·class="p">;</span><span·class="w">126 ····</span><span·class="p"·data-group-id="4411387928-3">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">my_plus_plus</span><span·class="p"·data-group-id="4411387928-4">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</spa[·...·truncated·by·diffoscope;·len:·96,·SHA:·eed43229dc0a9908e617981ae752cfd1b524dd6a08ec304e1850778fae92defb·...·]-3">]</span><span·class="p">;</span><span·class="w">
127 </span><span·class="nf">my_plus_plus</span><span·class="p"·data-group-id="1862109064-5">(</span><span·class="p"·data-group-id="1862109064-6">[</span><span·class="p"·data-group-id="1862109064-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><span·class="p"·data-group-id="1862109064-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">127 </span><span·class="nf">my_plus_plus</span><span·class="p"·data-group-id="4411387928-5">(</span><span·class="p"·data-group-id="4411387928-6">[</span><span·class="p"·data-group-id="4411387928-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><span·class="p"·data-group-id="4411387928-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
128 ····</span><span·class="n">Tail</span><span·class="p">.</span></code></pre><p>We·must·be·careful·how·we·use·<code·class="inline">++</code>·in·a·loop.·First·is·how·not·to·use·it:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">naive_reverse</span><span·class="p"·data-group-id="6251379749-1">(</span><span·class="p"·data-group-id="6251379749-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6251379749-2">]</span><span·class="p"·data-group-id="6251379749-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">128 ····</span><span·class="n">Tail</span><span·class="p">.</span></code></pre><p>We·must·be·careful·how·we·use·<code·class="inline">++</code>·in·a·loop.·First·is·how·not·to·use·it:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">naive_reverse</span><span·class="p"·data-group-id="3815696763-1">(</span><span·class="p"·data-group-id="3815696763-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3815696763-2">]</span><span·class="p"·data-group-id="3815696763-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
129 ····</span><span·class="nf">naive_reverse</span><span·class="p"·data-group-id="6251379749-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="6251379749-3">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="6251379749-4">[</span><span·class="n">H</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·8adcdae7afabdb04a97e12875b130b27b2df189d52c7176b00ae8c3d65d5d000·...·]-4">]</span><span·class="p">;</span><span·class="w">129 ····</span><span·class="nf">naive_reverse</span><span·class="p"·data-group-id="3815696763-3">(</span><span·class="n">T</span><span·class="p"·data-group-id="3815696763-3">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="3815696763-4">[</span><span·class="n">H</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·7aedf725d98bd6b6581024f7870c4c6e6185de03a2ecb2cdd37c1e12204df406·...·]-4">]</span><span·class="p">;</span><span·class="w">
130 </span><span·class="nf">naive_reverse</span><span·class="p"·data-group-id="6251379749-5">(</span><span·class="p"·data-group-id="6251379749-6">[</span><span·class="p"·data-group-id="6251379749-6">]</span><span·class="p"·data-group-id="6251379749-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">130 </span><span·class="nf">naive_reverse</span><span·class="p"·data-group-id="3815696763-5">(</span><span·class="p"·data-group-id="3815696763-6">[</span><span·class="p"·data-group-id="3815696763-6">]</span><span·class="p"·data-group-id="3815696763-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
131 ····</span><span·class="p"·data-group-id="6251379749-7">[</span><span·class="p"·data-group-id="6251379749-7">]</span><span·class="p">.</span></code></pre><p>As·the·<code·class="inline">++</code>·operator·copies·its·left-hand·side·operand,·the·growing131 ····</span><span·class="p"·data-group-id="3815696763-7">[</span><span·class="p"·data-group-id="3815696763-7">]</span><span·class="p">.</span></code></pre><p>As·the·<code·class="inline">++</code>·operator·copies·its·left-hand·side·operand,·the·growing
132 result·is·copied·repeatedly,·leading·to·quadratic·complexity.</p><p>On·the·other·hand,·using·<code·class="inline">++</code>·in·loop·like·this·is·perfectly·fine:</p><p><strong>OK</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="6919744131-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="6919744131-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">132 result·is·copied·repeatedly,·leading·to·quadratic·complexity.</p><p>On·the·other·hand,·using·<code·class="inline">++</code>·in·loop·like·this·is·perfectly·fine:</p><p><strong>OK</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="3425611758-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="3425611758-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
133 ····</span><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="6919744131-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6919744131-3">[</span><span·class="p"·data-group-id="6919744131-3">]</span><span·class="p"·data-group-id="6919744131-2">)</span><span·class="p">.</span><span·class="w">133 ····</span><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="3425611758-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3425611758-3">[</span><span·class="p"·data-group-id="3425611758-3">]</span><span·class="p"·data-group-id="3425611758-2">)</span><span·class="p">.</span><span·class="w">
  
134 </span><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="6919744131-4">(</span><span·class="p"·data-group-id="6919744131-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6919744131-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·f7006c2bb49b8bf297e50d1bc0e9f280e7742053aecce8fe6ce5da4b5e2ec3fd·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">134 </span><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="3425611758-4">(</span><span·class="p"·data-group-id="3425611758-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3425611758-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·dc7bf233d4e09c8c706f1756c42c156586b214999c59ba878d0b162ad7635dbd·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
135 ····</span><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="6919744131-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6919744131-7">[</span><span·class="n">H</span><span·class="p"·data-group-id="6919744131-7">]</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·108,·SHA:·fc61dc65e56f2030c38b8d145422893457cf2683cf4e35e559b4ee60e6fc874e·...·]-6">)</span><span·class="p">;</span><span·class="w">135 ····</span><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="3425611758-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3425611758-7">[</span><span·class="n">H</span><span·class="p"·data-group-id="3425611758-7">]</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·108,·SHA:·9d1b9592f25c4ffeb61b4840b9def10d692469d729c579b1639e231721591bc0·...·]-6">)</span><span·class="p">;</span><span·class="w">
136 </span><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="6919744131-8">(</span><span·class="p"·data-group-id="6919744131-9">[</span><span·class="p"·data-group-id="6919744131-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="6919744131-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">136 </span><span·class="nf">naive_but_ok_reverse</span><span·class="p"·data-group-id="3425611758-8">(</span><span·class="p"·data-group-id="3425611758-9">[</span><span·class="p"·data-group-id="3425611758-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="3425611758-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
137 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>Each·list·element·is·copied·only·once.·The·growing·result·<code·class="inline">Acc</code>·is·the·right-hand137 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>Each·list·element·is·copied·only·once.·The·growing·result·<code·class="inline">Acc</code>·is·the·right-hand
138 side·operand,·which·it·is·<em>not</em>·copied.</p><p>Experienced·Erlang·programmers·would·probably·write·as·follows:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">vanilla_reverse</span><span·class="p"·data-group-id="3231335712-1">(</span><span·class="p"·data-group-id="3231335712-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3231335712-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·58,·SHA:·02d394510cb217622f6314649fafde913fb10df35f4bcc1c793d5896702c035a·...·]2-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">138 side·operand,·which·it·is·<em>not</em>·copied.</p><p>Experienced·Erlang·programmers·would·probably·write·as·follows:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">vanilla_reverse</span><span·class="p"·data-group-id="6901231992-1">(</span><span·class="p"·data-group-id="6901231992-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6901231992-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·58,·SHA:·01eae8a0607c7416e08b1bd23dc1761e85068767fb570886e34fbf7e0e7709d1·...·]2-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
139 ····</span><span·class="nf">vanilla_reverse</span><span·class="p"·data-group-id="3231335712-3">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3231335712-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="3231[·...·truncated·by·diffoscope;·len:·58,·SHA:·4fbab10169981e80c29b166098ec88461a4446acde6c30b770538bd389bc0989·...·]2-3">)</span><span·class="p">;</span><span·class="w">139 ····</span><span·class="nf">vanilla_reverse</span><span·class="p"·data-group-id="6901231992-3">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6901231992-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="6901[·...·truncated·by·diffoscope;·len:·58,·SHA:·caa192c355561650ebcdeadf7d1b911ac32341a78313a545274612d96e403392·...·]2-3">)</span><span·class="p">;</span><span·class="w">
140 </span><span·class="nf">vanilla_reverse</span><span·class="p"·data-group-id="3231335712-5">(</span><span·class="p"·data-group-id="3231335712-6">[</span><span·class="p"·data-group-id="3231335712-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="3231335712-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">140 </span><span·class="nf">vanilla_reverse</span><span·class="p"·data-group-id="6901231992-5">(</span><span·class="p"·data-group-id="6901231992-6">[</span><span·class="p"·data-group-id="6901231992-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="6901231992-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
141 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>In·principle,·this·is·slightly·more·efficient·because·the·list·element·<code·class="inline">[H]</code>141 ····</span><span·class="n">Acc</span><span·class="p">.</span></code></pre><p>In·principle,·this·is·slightly·more·efficient·because·the·list·element·<code·class="inline">[H]</code>
142 is·not·built·before·being·copied·and·discarded.·In·practice,·the·compiler142 is·not·built·before·being·copied·and·discarded.·In·practice,·the·compiler
143 rewrites·<code·class="inline">[H]·++·Acc</code>·to·<code·class="inline">[H|Acc]</code>.</p><h2·id="timer-module"·class="section-heading">143 rewrites·<code·class="inline">[H]·++·Acc</code>·to·<code·class="inline">[H|Acc]</code>.</p><h2·id="timer-module"·class="section-heading">
144 ··<a·href="#timer-module"·class="hover-link">144 ··<a·href="#timer-module"·class="hover-link">
145 ····<i·class="ri-link-m"·aria-hidden="true"></i>145 ····<i·class="ri-link-m"·aria-hidden="true"></i>
146 ··</a>146 ··</a>
147 ··<span·class="text">Timer·Module</span>147 ··<span·class="text">Timer·Module</span>
Offset 160, 77 lines modifiedOffset 160, 77 lines modified
160 therefore·harmless.</p><h2·id="accidental-copying-and-loss-of-sharing"·class="section-heading">160 therefore·harmless.</p><h2·id="accidental-copying-and-loss-of-sharing"·class="section-heading">
161 ··<a·href="#accidental-copying-and-loss-of-sharing"·class="hover-link">161 ··<a·href="#accidental-copying-and-loss-of-sharing"·class="hover-link">
162 ····<i·class="ri-link-m"·aria-hidden="true"></i>162 ····<i·class="ri-link-m"·aria-hidden="true"></i>
163 ··</a>163 ··</a>
164 ··<span·class="text">Accidental·Copying·and·Loss·of·Sharing</span>164 ··<span·class="text">Accidental·Copying·and·Loss·of·Sharing</span>
165 </h2>165 </h2>
166 <p>When·spawning·a·new·process·using·a·fun,·one·can·accidentally·copy·more·data·to166 <p>When·spawning·a·new·process·using·a·fun,·one·can·accidentally·copy·more·data·to
167 the·process·than·intended.·For·example:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">accidental1</span><span·class="p"·data-group-id="9644615047-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="9644615047-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">167 the·process·than·intended.·For·example:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">accidental1</span><span·class="p"·data-group-id="5264812663-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="5264812663-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
168 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="9644615047-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="9644615047-3">(</span><span·class="p"·data-group-id="9644615047-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">168 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="5264812663-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5264812663-3">(</span><span·class="p"·data-group-id="5264812663-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
169 ··················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9644615047-4">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9644615047-5">[</span><span·class="n">State</span><span·class="o">#</[·...·truncated·by·diffoscope;·len:·180,·SHA:·47b08ac94d59fad8c1049856bfbba447a25d67904d8c92980a700879f7db18d9·...·]-4">)</span><span·class="w">169 ··················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5264812663-4">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5264812663-5">[</span><span·class="n">State</span><span·class="o">#</[·...·truncated·by·diffoscope;·len:·180,·SHA:·b9c0e71c7b487de013485706433a7333ad857a01c894435e584c95f380c597b2·...·]-4">)</span><span·class="w">
170 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="9644615047-2">)</span><span·class="p">.</span></code></pre><p>The·code·in·the·fun·will·extract·one·element·from·the·record·and·print·it.·The170 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="5264812663-2">)</span><span·class="p">.</span></code></pre><p>The·code·in·the·fun·will·extract·one·element·from·the·record·and·print·it.·The
171 rest·of·the·<code·class="inline">state</code>·record·is·not·used.·However,·when·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#spawn/1"><code·class="inline">spawn/1</code></a>171 rest·of·the·<code·class="inline">state</code>·record·is·not·used.·However,·when·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#spawn/1"><code·class="inline">spawn/1</code></a>
172 function·is·executed,·the·entire·record·is·copied·to·the·newly·created·process.</p><p>The·same·kind·of·problem·can·happen·with·a·map:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">accidental2</span><span·class="p"·data-group-id="3636713639-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="3636713639-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 function·is·executed,·the·entire·record·is·copied·to·the·newly·created·process.</p><p>The·same·kind·of·problem·can·happen·with·a·map:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">accidental2</span><span·class="p"·data-group-id="6616961331-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="6616961331-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
173 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3636713639-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3636713639-3">(</span><span·class="p"·data-group-id="3636713639-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="6616961331-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="6616961331-3">(</span><span·class="p"·data-group-id="6616961331-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ··················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3636713639-4">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3636713639-5">[</span><span·class="nf">map_get</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·288,·SHA:·2743acebc76ac2f62763a5e28235d67ecb77a0cf8cad171686d92f05cbf1d3f5·...·]-4">)</span><span·class="w">174 ··················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6616961331-4">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6616961331-5">[</span><span·class="nf">map_get</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·288,·SHA:·e079efbbca72d94ea6e4061842180b0e448560b03c3811e26b316d6169e61965·...·]-4">)</span><span·class="w">
175 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="3636713639-2">)</span><span·class="p">.</span></code></pre><p>In·the·following·example·(part·of·a·module·implementing·the·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html"><code·class="inline">gen_server</code></a>175 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="6616961331-2">)</span><span·class="p">.</span></code></pre><p>In·the·following·example·(part·of·a·module·implementing·the·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html"><code·class="inline">gen_server</code></a>
176 behavior)·the·created·fun·is·sent·to·another·process:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_call</span><span·class="p"·data-group-id="8541928162-1">(</span><span·class="ss">give_me_a_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·809cc4450fc424007876e7e362165982fa9f9b578ff0c0fd29c3f1b32a806457·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 behavior)·the·created·fun·is·sent·to·another·process:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_call</span><span·class="p"·data-group-id="3045884489-1">(</span><span·class="ss">give_me_a_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·0357b4cf29e69d8a7f841e2b16668ceda428a16117da12d0853b355b1dd5e143·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ····</span><span·class="n">Fun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8541928162-2">(</span><span·class="p"·data-group-id="8541928162-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="nb">size</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="mi">42</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">177 ····</span><span·class="n">Fun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3045884489-2">(</span><span·class="p"·data-group-id="3045884489-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="nb">size</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="mi">42</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
178 ····</span><span·class="p"·data-group-id="8541928162-3">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="8541928162-3">}</span><span·class="p">.</span></code></pre><p>How·bad·that·unnecessary·copy·is·depends·on·the·contents·of·the·record·or·the178 ····</span><span·class="p"·data-group-id="3045884489-3">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="3045884489-3">}</span><span·class="p">.</span></code></pre><p>How·bad·that·unnecessary·copy·is·depends·on·the·contents·of·the·record·or·the
179 map.</p><p>For·example,·if·the·<code·class="inline">state</code>·record·is·initialized·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init1</span><span·class="p"·data-group-id="8617652978-1">(</span><span·class="p"·data-group-id="8617652978-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">179 map.</p><p>For·example,·if·the·<code·class="inline">state</code>·record·is·initialized·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init1</span><span·class="p"·data-group-id="2256123866-1">(</span><span·class="p"·data-group-id="2256123866-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
180 ····</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="8617652978-2">{</span><span·class="ss">data</span><span·class="o">=</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="8617652978-3">(</span><span·class="mi">1</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·147,·SHA:·68d0df8c4667ff7fee0512076f15014934bd2eafbe74d6869b17c3bf1ae3dbe2·...·]-2">}</span><span·class="p">.</span></code></pre><p>a·list·with·10000·elements·(or·about·20000·heap·words)·will·be·copied·to·the180 ····</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="2256123866-2">{</span><span·class="ss">data</span><span·class="o">=</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="2256123866-3">(</span><span·class="mi">1</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·147,·SHA:·8a4643e2915d0d53d9e35c02df414e5d67bd9b2c8f5512a805b70cc06f1e5ab3·...·]-2">}</span><span·class="p">.</span></code></pre><p>a·list·with·10000·elements·(or·about·20000·heap·words)·will·be·copied·to·the
181 newly·created·process.</p><p>An·unnecessary·copy·of·10000·element·list·can·be·bad·enough,·but·it·can·get·even181 newly·created·process.</p><p>An·unnecessary·copy·of·10000·element·list·can·be·bad·enough,·but·it·can·get·even
182 worse·if·the·<code·class="inline">state</code>·record·contains·<em>shared·subterms</em>.·Here·is·a·simple·example182 worse·if·the·<code·class="inline">state</code>·record·contains·<em>shared·subterms</em>.·Here·is·a·simple·example
183 of·a·term·with·a·shared·subterm:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6616672579-1">{</span><span·class="n">SubTerm</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SubTerm</span><span·class="p"·data-group-id="6616672579-1">}</span></code></pre><p>When·a·term·is·copied·to·another·process,·sharing·of·subterms·will·be·lost·and183 of·a·term·with·a·shared·subterm:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3073092243-1">{</span><span·class="n">SubTerm</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SubTerm</span><span·class="p"·data-group-id="3073092243-1">}</span></code></pre><p>When·a·term·is·copied·to·another·process,·sharing·of·subterms·will·be·lost·and
184 the·copied·term·can·be·many·times·larger·than·the·original·term.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init2</span><span·class="p"·data-group-id="6632500980-1">(</span><span·class="p"·data-group-id="6632500980-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">184 the·copied·term·can·be·many·times·larger·than·the·original·term.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init2</span><span·class="p"·data-group-id="2016363474-1">(</span><span·class="p"·data-group-id="2016363474-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
185 ····</span><span·class="n">SharedSubTerms</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="6632500980-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="6632500980-3">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p"·data-group-id="6632500980-3">)</span><span[·...·truncated·by·diffoscope;·len:·852,·SHA:·04d0fdf791f58dcf63725a55daf3a1d00397f227f211ba041dc85d916b96cc51·...·]-2">)</span><span·class="p">,</span><span·class="w">185 ····</span><span·class="n">SharedSubTerms</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="2016363474-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2016363474-3">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p"·data-group-id="2016363474-3">)</span><span[·...·truncated·by·diffoscope;·len:·852,·SHA:·5416ef2f56e0e1d215e67a198409622782aacc0aed66d51c82e9e03f82cac712·...·]-2">)</span><span·class="p">,</span><span·class="w">
186 ····</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="6632500980-7">{</span><span·class="ss">data</span><span·class="o">=</span><span·class="n">Shared</span><span·class="p"·data-group-id="6632500980-7">}</span><span·class="p">.</span></code></pre><p>In·the·process·that·calls·<code·class="inline">init2/0</code>,·the·size·of·the·<code·class="inline">data</code>·field·in·the·<code·class="inline">state</code>186 ····</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="2016363474-7">{</span><span·class="ss">data</span><span·class="o">=</span><span·class="n">Shared</span><span·class="p"·data-group-id="2016363474-7">}</span><span·class="p">.</span></code></pre><p>In·the·process·that·calls·<code·class="inline">init2/0</code>,·the·size·of·the·<code·class="inline">data</code>·field·in·the·<code·class="inline">state</code>
187 record·will·be·32·heap·words.·When·the·record·is·copied·to·the·newly·created187 record·will·be·32·heap·words.·When·the·record·is·copied·to·the·newly·created
188 process,·sharing·will·be·lost·and·the·size·of·the·copied·<code·class="inline">data</code>·field·will·be188 process,·sharing·will·be·lost·and·the·size·of·the·copied·<code·class="inline">data</code>·field·will·be
189 131070·heap·words.·More·details·about189 131070·heap·words.·More·details·about
190 <a·href="eff_guide_processes.html#loss-of-sharing">loss·off·sharing</a>·are·found·in·a·later190 <a·href="eff_guide_processes.html#loss-of-sharing">loss·off·sharing</a>·are·found·in·a·later
191 section.</p><p>To·avoid·the·problem,·outside·of·the·fun·extract·only·the·fields·of·the·record191 section.</p><p>To·avoid·the·problem,·outside·of·the·fun·extract·only·the·fields·of·the·record
192 that·are·actually·used:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fixed_accidental1</span><span·class="p"·data-group-id="1266709959-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="1266709959-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">192 that·are·actually·used:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fixed_accidental1</span><span·class="p"·data-group-id="3524408444-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="3524408444-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
193 ····</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">193 ····</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">
194 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1266709959-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1266709959-3">(</span><span·class="p"·data-group-id="1266709959-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">194 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3524408444-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3524408444-3">(</span><span·class="p"·data-group-id="3524408444-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
195 ··················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1266709959-4">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1266709959-5">[</span><span·class="n">Info</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·7340e9b58d94a94a36def47147ead2f44538c4ae5bf55881e8116cefea001713·...·]-4">)</span><span·class="w">195 ··················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3524408444-4">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3524408444-5">[</span><span·class="n">Info</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·05400d31bea3889d22802f40c9736bb12fcbee7933d3418e52b7dc2dce1c6ad6·...·]-4">)</span><span·class="w">
196 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="1266709959-2">)</span><span·class="p">.</span></code></pre><p>Similarly,·outside·of·the·fun·extract·only·the·map·elements·that·are·actually196 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="3524408444-2">)</span><span·class="p">.</span></code></pre><p>Similarly,·outside·of·the·fun·extract·only·the·map·elements·that·are·actually
197 used:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fixed_accidental2</span><span·class="p"·data-group-id="1789150694-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="1789150694-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">197 used:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fixed_accidental2</span><span·class="p"·data-group-id="8599460835-1">(</span><span·class="n">State</span><span·class="p"·data-group-id="8599460835-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
198 ····</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">map_get</span><span·class="p"·data-group-id="1789150694-2">(</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="1789150694-2">)</span><span·class="p">,</span><span·class="w">198 ····</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">map_get</span><span·class="p"·data-group-id="8599460835-2">(</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="8599460835-2">)</span><span·class="p">,</span><span·class="w">
199 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1789150694-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1789150694-4">(</span><span·class="p"·data-group-id="1789150694-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">199 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8599460835-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8599460835-4">(</span><span·class="p"·data-group-id="8599460835-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
200 ··················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1789150694-5">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1789150694-6">[</span><span·class="n">Info</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·9cf039fc22b334536d59cb8bba8b23ed4ba93364fac8f84e8d82e1eae753db42·...·]-5">)</span><span·class="w">200 ··················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8599460835-5">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8599460835-6">[</span><span·class="n">Info</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·3f0a304438d8a4c75df6990985d201cd9a864049728f60f566c3e60b75b3aa32·...·]-5">)</span><span·class="w">
201 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="1789150694-3">)</span><span·class="p">.</span></code></pre><h2·id="list_to_atom-1"·class="section-heading">201 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="8599460835-3">)</span><span·class="p">.</span></code></pre><h2·id="list_to_atom-1"·class="section-heading">
202 ··<a·href="#list_to_atom-1"·class="hover-link">202 ··<a·href="#list_to_atom-1"·class="hover-link">
203 ····<i·class="ri-link-m"·aria-hidden="true"></i>203 ····<i·class="ri-link-m"·aria-hidden="true"></i>
204 ··</a>204 ··</a>
205 ··<span·class="text">list_to_atom/1</span>205 ··<span·class="text">list_to_atom/1</span>
206 </h2>206 </h2>
207 <p>Atoms·are·not·garbage-collected.·Once·an·atom·is·created,·it·is·never·removed.207 <p>Atoms·are·not·garbage-collected.·Once·an·atom·is·created,·it·is·never·removed.
208 The·emulator·terminates·if·the·limit·for·the·number·of·atoms·(1,048,576·by208 The·emulator·terminates·if·the·limit·for·the·number·of·atoms·(1,048,576·by
209 default)·is·reached.</p><p>Therefore,·converting·arbitrary·input·strings·to·atoms·can·be·dangerous·in·a209 default)·is·reached.</p><p>Therefore,·converting·arbitrary·input·strings·to·atoms·can·be·dangerous·in·a
210 system·that·runs·continuously.·If·only·certain·well-defined·atoms·are·allowed·as210 system·that·runs·continuously.·If·only·certain·well-defined·atoms·are·allowed·as
211 input,·<a·href="../../erts-15.0.1/doc/html/erlang.html#list_to_existing_atom/1"><code·class="inline">list_to_existing_atom/1</code></a>·or211 input,·<a·href="../../erts-15.0.1/doc/html/erlang.html#list_to_existing_atom/1"><code·class="inline">list_to_existing_atom/1</code></a>·or
212 <a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_existing_atom/1"><code·class="inline">binary_to_existing_atom/1</code></a>·can·be·used212 <a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_existing_atom/1"><code·class="inline">binary_to_existing_atom/1</code></a>·can·be·used
213 to·guard·against·a·denial-of-service·attack.·(All·atoms·that·are·allowed·must213 to·guard·against·a·denial-of-service·attack.·(All·atoms·that·are·allowed·must
214 have·been·created·earlier,·for·example,·by·using·all·of·them·in·a·module214 have·been·created·earlier,·for·example,·by·using·all·of·them·in·a·module
215 and·loading·that·module.)</p><p>Using·<a·href="../../erts-15.0.1/doc/html/erlang.html#list_to_atom/1"><code·class="inline">list_to_atom/1</code></a>·to·construct·an·atom·that215 and·loading·that·module.)</p><p>Using·<a·href="../../erts-15.0.1/doc/html/erlang.html#list_to_atom/1"><code·class="inline">list_to_atom/1</code></a>·to·construct·an·atom·that
216 is·passed·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply/3</code></a>·is·quite·expensive.</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">apply</span><span·class="p"·data-group-id="9424250763-1">(</span><span·class="nf">list_to_atom</span><span·class="p"·data-group-id="9424250763-2">(</span><span·class="s">&quot;some_prefix&quot;</span><span·class="o">++</span><span·class="n">Var</span><span·class="p"·data-group-id="9424250763-2">)</[·...·truncated·by·diffoscope;·len:·196,·SHA:·9dd1387a3f32a9fcf1f4c306cae80d43e04cf05a58499a8b23b934d3e8e8f609·...·]-1">)</span></code></pre><h2·id="length-1"·class="section-heading">216 is·passed·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply/3</code></a>·is·quite·expensive.</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">apply</span><span·class="p"·data-group-id="1254878437-1">(</span><span·class="nf">list_to_atom</span><span·class="p"·data-group-id="1254878437-2">(</span><span·class="s">&quot;some_prefix&quot;</span><span·class="o">++</span><span·class="n">Var</span><span·class="p"·data-group-id="1254878437-2">)</[·...·truncated·by·diffoscope;·len:·196,·SHA:·9d01758becebbfc1192345a8cc92696e879f16d9ad20cff9defc9274c3e15b7d·...·]-1">)</span></code></pre><h2·id="length-1"·class="section-heading">
217 ··<a·href="#length-1"·class="hover-link">217 ··<a·href="#length-1"·class="hover-link">
218 ····<i·class="ri-link-m"·aria-hidden="true"></i>218 ····<i·class="ri-link-m"·aria-hidden="true"></i>
219 ··</a>219 ··</a>
220 ··<span·class="text">length/1</span>220 ··<span·class="text">length/1</span>
221 </h2>221 </h2>
222 <p>The·time·for·calculating·the·length·of·a·list·is·proportional·to·the·length·of222 <p>The·time·for·calculating·the·length·of·a·list·is·proportional·to·the·length·of
223 the·list,·as·opposed·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#tuple_size/1"><code·class="inline">tuple_size/1</code></a>,223 the·list,·as·opposed·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#tuple_size/1"><code·class="inline">tuple_size/1</code></a>,
224 <a·href="../../erts-15.0.1/doc/html/erlang.html#byte_size/1"><code·class="inline">byte_size/1</code></a>,·and·<a·href="../../erts-15.0.1/doc/html/erlang.html#bit_size/1"><code·class="inline">bit_size/1</code></a>,·which·all224 <a·href="../../erts-15.0.1/doc/html/erlang.html#byte_size/1"><code·class="inline">byte_size/1</code></a>,·and·<a·href="../../erts-15.0.1/doc/html/erlang.html#bit_size/1"><code·class="inline">bit_size/1</code></a>,·which·all
225 execute·in·constant·time.</p><p>Normally,·there·is·no·need·to·worry·about·the·speed·of·<a·href="../../erts-15.0.1/doc/html/erlang.html#length/1"><code·class="inline">length/1</code></a>,225 execute·in·constant·time.</p><p>Normally,·there·is·no·need·to·worry·about·the·speed·of·<a·href="../../erts-15.0.1/doc/html/erlang.html#length/1"><code·class="inline">length/1</code></a>,
226 because·it·is·efficiently·implemented·in·C.·In·time-critical·code,·you·might226 because·it·is·efficiently·implemented·in·C.·In·time-critical·code,·you·might
227 want·to·avoid·it·if·the·input·list·could·potentially·be·very·long.</p><p>Some·uses·of·<a·href="../../erts-15.0.1/doc/html/erlang.html#length/1"><code·class="inline">length/1</code></a>·can·be·replaced·by·matching.·For·example,227 want·to·avoid·it·if·the·input·list·could·potentially·be·very·long.</p><p>Some·uses·of·<a·href="../../erts-15.0.1/doc/html/erlang.html#length/1"><code·class="inline">length/1</code></a>·can·be·replaced·by·matching.·For·example,
228 the·following·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="6180985510-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="6180985510-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">length</span><span·class="p"·data-group-id="6180985510-2">(</span[·...·truncated·by·diffoscope;·len:·66,·SHA:·8210b502077f5f5ac0177d975a954e1fb4b0607cbadc8f93ebbff15f82727823·...·]-2">)</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">3</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">228 the·following·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="0981650505-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="0981650505-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">length</span><span·class="p"·data-group-id="0981650505-2">(</span[·...·truncated·by·diffoscope;·len:·66,·SHA:·ccf197dc661f074756be543da55f28ce6af4c12776a70b822eb12ceb34a353b6·...·]-2">)</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">3</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
229 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>can·be·rewritten·to:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="2213066688-1">(</span><span·class="p"·data-group-id="2213066688-2">[</span><span·class="p">_</span><span·class="p">,</span><span·class="p">_</span><span·class="p">,</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class="[·...·truncated·by·diffoscope;·len:·129,·SHA:·a91e9f392b5df6bccd3b11c2d893994cdfe4dc9e2f380be015f90d16b057373c·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">229 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>can·be·rewritten·to:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="0643561029-1">(</span><span·class="p"·data-group-id="0643561029-2">[</span><span·class="p">_</span><span·class="p">,</span><span·class="p">_</span><span·class="p">,</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class="[·...·truncated·by·diffoscope;·len:·129,·SHA:·fdfa2b0df50bc812bab81f062bf0af195d1d134cb4bd85e4278e1c196444f9cd·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
230 ···</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>One·slight·difference·is·that·<a·href="../../erts-15.0.1/doc/html/erlang.html#length/1"><code·class="inline">length(L)</code></a>·fails·if·<code·class="inline">L</code>·is·an230 ···</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>One·slight·difference·is·that·<a·href="../../erts-15.0.1/doc/html/erlang.html#length/1"><code·class="inline">length(L)</code></a>·fails·if·<code·class="inline">L</code>·is·an
231 improper·list,·while·the·pattern·in·the·second·code·fragment·accepts·an·improper231 improper·list,·while·the·pattern·in·the·second·code·fragment·accepts·an·improper
232 list.</p><h2·id="setelement-3"·class="section-heading">232 list.</p><h2·id="setelement-3"·class="section-heading">
233 ··<a·href="#setelement-3"·class="hover-link">233 ··<a·href="#setelement-3"·class="hover-link">
234 ····<i·class="ri-link-m"·aria-hidden="true"></i>234 ····<i·class="ri-link-m"·aria-hidden="true"></i>
235 ··</a>235 ··</a>
236 ··<span·class="text">setelement/3</span>236 ··<span·class="text">setelement/3</span>
Offset 238, 18 lines modifiedOffset 238, 18 lines modified
238 <p><a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·copies·the·tuple·it·modifies.·Therefore,238 <p><a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·copies·the·tuple·it·modifies.·Therefore,
239 updating·a·tuple·in·a·loop·using·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·creates·a·new239 updating·a·tuple·in·a·loop·using·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·creates·a·new
240 copy·of·the·tuple·every·time.</p><p>There·is·one·exception·to·the·rule·that·the·tuple·is·copied.·If·the·compiler240 copy·of·the·tuple·every·time.</p><p>There·is·one·exception·to·the·rule·that·the·tuple·is·copied.·If·the·compiler
241 clearly·can·see·that·destructively·updating·the·tuple·would·give·the·same·result241 clearly·can·see·that·destructively·updating·the·tuple·would·give·the·same·result
242 as·if·the·tuple·was·copied,·the·call·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·is242 as·if·the·tuple·was·copied,·the·call·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·is
243 replaced·with·a·special·destructive·<code·class="inline">setelement</code>·instruction.·In·the·following243 replaced·with·a·special·destructive·<code·class="inline">setelement</code>·instruction.·In·the·following
244 code·sequence,·the·first·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·call·copies·the·tuple244 code·sequence,·the·first·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·call·copies·the·tuple
245 and·modifies·the·ninth·element:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">multiple_setelement</span><span·class="p"·data-group-id="6219496727-1">(</span><span·class="n">T0</span><span·class="p"·data-group-id="6219496727-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="6219496727-2">(<[·...·truncated·by·diffoscope;·len:·71,·SHA:·b9c585d5281863e863beb06ebc48244770348a6c46083b7710db7dd6b94df4d9·...·]7-2">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="mi">9</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">245 and·modifies·the·ninth·element:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">multiple_setelement</span><span·class="p"·data-group-id="4610023837-1">(</span><span·class="n">T0</span><span·class="p"·data-group-id="4610023837-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="4610023837-2">(<[·...·truncated·by·diffoscope;·len:·71,·SHA:·11cfcb0583ba07cd054f97cb7c54687ac8881d5035bfcdabc8559cf04c601266·...·]7-2">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="mi">9</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
246 ····</span><span·class="n">T1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">setelement</span><span·class="p"·data-group-id="6219496727-3">(</span><span·class="mi">9</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p"·data-group-id="6219496727-3">)</span><span·class="p">,</span><span·class="w">246 ····</span><span·class="n">T1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">setelement</span><span·class="p"·data-group-id="4610023837-3">(</span><span·class="mi">9</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p"·data-group-id="4610023837-3">)</span><span·class="p">,</span><span·class="w">
247 ····</span><span·class="n">T2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">setelement</span><span·class="p"·data-group-id="6219496727-4">(</span><span·class="mi">7</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foobar</span><span·class="p"·data-group-id="6219496727-4">)</span><span·class="p">,</span><span·class="w">247 ····</span><span·class="n">T2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">setelement</span><span·class="p"·data-group-id="4610023837-4">(</span><span·class="mi">7</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foobar</span><span·class="p"·data-group-id="4610023837-4">)</span><span·class="p">,</span><span·class="w">
248 ····</span><span·class="nf">setelement</span><span·class="p"·data-group-id="6219496727-5">(</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">new_value</span><span·class="p"·data-group-id="6219496727-5">)</span><span·class="p">.</span></code></pre><p>The·two·following·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·calls·modify·the·tuple·in248 ····</span><span·class="nf">setelement</span><span·class="p"·data-group-id="4610023837-5">(</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">new_value</span><span·class="p"·data-group-id="4610023837-5">)</span><span·class="p">.</span></code></pre><p>The·two·following·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·calls·modify·the·tuple·in
249 place.</p><p>For·the·optimization·to·be·applied,·<em>all</em>·the·following·conditions·must·be·true:</p><ul><li>The·tuple·argument·must·be·known·to·be·a·tuple·of·a·known·size.</li><li>The·indices·must·be·integer·literals,·not·variables·or·expressions.</li><li>The·indices·must·be·given·in·descending·order.</li><li>There·must·be·no·calls·to·another·function·in·between·the·calls·to249 place.</p><p>For·the·optimization·to·be·applied,·<em>all</em>·the·following·conditions·must·be·true:</p><ul><li>The·tuple·argument·must·be·known·to·be·a·tuple·of·a·known·size.</li><li>The·indices·must·be·integer·literals,·not·variables·or·expressions.</li><li>The·indices·must·be·given·in·descending·order.</li><li>There·must·be·no·calls·to·another·function·in·between·the·calls·to
250 <a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>.</li><li>The·tuple·returned·from·one·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·call·must·only·be250 <a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>.</li><li>The·tuple·returned·from·one·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>·call·must·only·be
251 used·in·the·subsequent·call·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>.</li></ul><p>If·the·code·cannot·be·structured·as·in·the·<code·class="inline">multiple_setelement/1</code>·example,·the251 used·in·the·subsequent·call·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#setelement/3"><code·class="inline">setelement/3</code></a>.</li></ul><p>If·the·code·cannot·be·structured·as·in·the·<code·class="inline">multiple_setelement/1</code>·example,·the
252 best·way·to·modify·multiple·elements·in·a·large·tuple·is·to·convert·the·tuple·to252 best·way·to·modify·multiple·elements·in·a·large·tuple·is·to·convert·the·tuple·to
253 a·list,·modify·the·list,·and·convert·it·back·to·a·tuple.</p><h2·id="size-1"·class="section-heading">253 a·list,·modify·the·list,·and·convert·it·back·to·a·tuple.</p><h2·id="size-1"·class="section-heading">
254 ··<a·href="#size-1"·class="hover-link">254 ··<a·href="#size-1"·class="hover-link">
Max diff block lines reached; 702/53286 bytes (1.32%) of diff not shown.
848 B
html2text {}
Max HTML report size reached
210 KB
./usr/share/doc/erlang-doc/html/doc/system/conc_prog.html
Max HTML report size reached
186 KB
./usr/share/doc/erlang-doc/html/doc/system/create_target.html
Max HTML report size reached
75.6 KB
./usr/share/doc/erlang-doc/html/doc/system/data_types.html
    
Offset 192, 18 lines modifiedOffset 192, 18 lines modified
192 ··</a>192 ··</a>
193 ··<span·class="text">Representation·of·Floating·Point·Numbers</span>193 ··<span·class="text">Representation·of·Floating·Point·Numbers</span>
194 </h3>194 </h3>
195 <p>When·working·with·floats·you·may·not·see·what·you·expect·when·printing·or·doing195 <p>When·working·with·floats·you·may·not·see·what·you·expect·when·printing·or·doing
196 arithmetic·operations.·This·is·because·floats·are·represented·by·a·fixed·number196 arithmetic·operations.·This·is·because·floats·are·represented·by·a·fixed·number
197 of·bits·in·a·base-2·system·while·printed·floats·are·represented·with·a·base-10197 of·bits·in·a·base-2·system·while·printed·floats·are·represented·with·a·base-10
198 system.·Erlang·uses·64-bit·floats.·Here·are·examples·of·this·phenomenon:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="mf">0.1</span><span·class="o">+</span><span·class="mf">0.2</span><span·class="p">.</span><span·class="w">198 system.·Erlang·uses·64-bit·floats.·Here·are·examples·of·this·phenomenon:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="mf">0.1</span><span·class="o">+</span><span·class="mf">0.2</span><span·class="p">.</span><span·class="w">
199 </span><span·class="mf">0.30000000000000004</span></code></pre><p>The·real·numbers·<code·class="inline">0.1</code>·and·<code·class="inline">0.2</code>·cannot·be·represented·exactly·as·floats.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="5969281091-1">{</span><span·class="mf">36028797018963968.0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">36028797018963968</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="mf">36028797018963968.0</span><span·class="p">,</span><span·class="w">199 </span><span·class="mf">0.30000000000000004</span></code></pre><p>The·real·numbers·<code·class="inline">0.1</code>·and·<code·class="inline">0.2</code>·cannot·be·represented·exactly·as·floats.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="5717473308-1">{</span><span·class="mf">36028797018963968.0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">36028797018963968</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="mf">36028797018963968.0</span><span·class="p">,</span><span·class="w">
200 ··</span><span·class="mf">36028797018963970.0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">36028797018963970</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="mf">36028797018963970.0</span><span·class="p"·data-group-id="5969281091-1">}</span><span·class="p">.</span><span·class="w">200 ··</span><span·class="mf">36028797018963970.0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">36028797018963970</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="mf">36028797018963970.0</span><span·class="p"·data-group-id="5717473308-1">}</span><span·class="p">.</span><span·class="w">
201 </span><span·class="p"·data-group-id="5969281091-2">{</span><span·class="mf">3.602879701896397e16</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">201 </span><span·class="p"·data-group-id="5717473308-2">{</span><span·class="mf">3.602879701896397e16</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">
202 ·</span><span·class="mf">3.602879701896397e16</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="5969281091-2">}</span><span·class="p">.</span></code></pre><p>The·value·<code·class="inline">36028797018963968</code>·can·be·represented·exactly·as·a·float·value·but202 ·</span><span·class="mf">3.602879701896397e16</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="5717473308-2">}</span><span·class="p">.</span></code></pre><p>The·value·<code·class="inline">36028797018963968</code>·can·be·represented·exactly·as·a·float·value·but
203 Erlang's·pretty·printer·rounds·<code·class="inline">36028797018963968.0</code>·to·<code·class="inline">3.602879701896397e16</code>203 Erlang's·pretty·printer·rounds·<code·class="inline">36028797018963968.0</code>·to·<code·class="inline">3.602879701896397e16</code>
204 (<code·class="inline">=36028797018963970.0</code>)·as·all·values·in·the·range204 (<code·class="inline">=36028797018963970.0</code>)·as·all·values·in·the·range
205 <code·class="inline">[36028797018963966.0,·36028797018963972.0]</code>·are·represented·by205 <code·class="inline">[36028797018963966.0,·36028797018963972.0]</code>·are·represented·by
206 <code·class="inline">36028797018963968.0</code>.</p><p>For·more·information·about·floats·and·issues·with·them·see:</p><ul><li><a·href="https://floating-point-gui.de/">What·Every·Programmer·Should·Know·About·Floating-Point·Arithmetic</a></li><li><a·href="https://0.30000000000000004.com/">0.30000000000000004.com/</a></li><li><a·href="https://docs.python.org/3/tutorial/floatingpoint.html">Floating·Point·Arithmetic:·Issues·and·Limitations</a></li></ul><p>If·you·need·to·work·with·exact·decimal·fractions,·for·instance·to·represent206 <code·class="inline">36028797018963968.0</code>.</p><p>For·more·information·about·floats·and·issues·with·them·see:</p><ul><li><a·href="https://floating-point-gui.de/">What·Every·Programmer·Should·Know·About·Floating-Point·Arithmetic</a></li><li><a·href="https://0.30000000000000004.com/">0.30000000000000004.com/</a></li><li><a·href="https://docs.python.org/3/tutorial/floatingpoint.html">Floating·Point·Arithmetic:·Issues·and·Limitations</a></li></ul><p>If·you·need·to·work·with·exact·decimal·fractions,·for·instance·to·represent
207 money,·it·is·recommended·to·use·a·library·that·handles·that,·or·work·in207 money,·it·is·recommended·to·use·a·library·that·handles·that,·or·work·in
208 cents·instead·of·dollars·or·euros·so·that·decimal·fractions·are·not·needed.</p><p>Also·note·that·Erlang's·floats·do·not·exactly·match·IEEE·754·floats,208 cents·instead·of·dollars·or·euros·so·that·decimal·fractions·are·not·needed.</p><p>Also·note·that·Erlang's·floats·do·not·exactly·match·IEEE·754·floats,
209 in·that·neither·<em>Inf</em>·nor·<em>NaN</em>·are·supported·in·Erlang.·Any209 in·that·neither·<em>Inf</em>·nor·<em>NaN</em>·are·supported·in·Erlang.·Any
Offset 237, 52 lines modifiedOffset 237, 52 lines modified
237 by·eight·are·called·<em>binaries</em>.</p><p><em>Examples:</em></p><pre><code·class="text">1&gt;·&lt;&lt;10,20&gt;&gt;.237 by·eight·are·called·<em>binaries</em>.</p><p><em>Examples:</em></p><pre><code·class="text">1&gt;·&lt;&lt;10,20&gt;&gt;.
238 &lt;&lt;10,20&gt;&gt;238 &lt;&lt;10,20&gt;&gt;
239 2&gt;·&lt;&lt;&quot;ABC&quot;&gt;&gt;.239 2&gt;·&lt;&lt;&quot;ABC&quot;&gt;&gt;.
240 &lt;&lt;&quot;ABC&quot;&gt;&gt;240 &lt;&lt;&quot;ABC&quot;&gt;&gt;
241 3&gt;·&lt;&lt;1:1,0:1&gt;&gt;.241 3&gt;·&lt;&lt;1:1,0:1&gt;&gt;.
242 &lt;&lt;2:2&gt;&gt;</code></pre><p>The·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_bitstring/1"><code·class="inline">is_bitstring/1</code></a>·BIF·tests·whether·a242 &lt;&lt;2:2&gt;&gt;</code></pre><p>The·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_bitstring/1"><code·class="inline">is_bitstring/1</code></a>·BIF·tests·whether·a
243 term·is·a·bit·string,·and·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_binary/1"><code·class="inline">is_binary/1</code></a>243 term·is·a·bit·string,·and·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_binary/1"><code·class="inline">is_binary/1</code></a>
244 BIF·tests·whether·a·term·is·a·binary.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">is_bitstring</span><span·class="p"·data-group-id="4461922680-1">(</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4461922680-1">)</span><span·class="p">.</span><span·class="w">244 BIF·tests·whether·a·term·is·a·binary.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">is_bitstring</span><span·class="p"·data-group-id="8691360964-1">(</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8691360964-1">)</span><span·class="p">.</span><span·class="w">
245 </span><span·class="ss">true</span><span·class="gp·unselectable">245 </span><span·class="ss">true</span><span·class="gp·unselectable">
246 2&gt;·</span><span·class="nf">is_binary</span><span·class="p"·data-group-id="4461922680-2">(</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4461922680-2">)</span><span·class="p">.</span><span·class="w">246 2&gt;·</span><span·class="nf">is_binary</span><span·class="p"·data-group-id="8691360964-2">(</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8691360964-2">)</span><span·class="p">.</span><span·class="w">
247 </span><span·class="ss">false</span><span·class="gp·unselectable">247 </span><span·class="ss">false</span><span·class="gp·unselectable">
248 3&gt;·</span><span·class="nf">is_binary</span><span·class="p"·data-group-id="4461922680-3">(</span><span·class="p">&lt;&lt;</span><span·class="mi">42</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4461922680-3">)</span><span·class="p">.</span><span·class="w">248 3&gt;·</span><span·class="nf">is_binary</span><span·class="p"·data-group-id="8691360964-3">(</span><span·class="p">&lt;&lt;</span><span·class="mi">42</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8691360964-3">)</span><span·class="p">.</span><span·class="w">
249 </span><span·class="ss">true</span><span·class="w">249 </span><span·class="ss">true</span><span·class="w">
250 </span></code></pre><p>For·more·examples,·see·<a·href="../../doc/system/bit_syntax.html">Programming·Examples</a>.</p><h2·id="reference"·class="section-heading">250 </span></code></pre><p>For·more·examples,·see·<a·href="../../doc/system/bit_syntax.html">Programming·Examples</a>.</p><h2·id="reference"·class="section-heading">
251 ··<a·href="#reference"·class="hover-link">251 ··<a·href="#reference"·class="hover-link">
252 ····<i·class="ri-link-m"·aria-hidden="true"></i>252 ····<i·class="ri-link-m"·aria-hidden="true"></i>
253 ··</a>253 ··</a>
254 ··<span·class="text">Reference</span>254 ··<span·class="text">Reference</span>
255 </h2>255 </h2>
256 <p>A·term·that·is·<a·href="../../doc/system/system_limits.html#unique_references">unique</a>256 <p>A·term·that·is·<a·href="../../doc/system/system_limits.html#unique_references">unique</a>
257 among·connected·nodes.·A·reference·is·created·by·calling·the257 among·connected·nodes.·A·reference·is·created·by·calling·the
258 <a·href="../../erts-15.0.1/doc/html/erlang.html#make_ref/0"><code·class="inline">make_ref/0</code></a>·BIF.·The258 <a·href="../../erts-15.0.1/doc/html/erlang.html#make_ref/0"><code·class="inline">make_ref/0</code></a>·BIF.·The
259 <a·href="../../erts-15.0.1/doc/html/erlang.html#is_reference/1"><code·class="inline">is_reference/1</code></a>·BIF·tests·whether·a·term259 <a·href="../../erts-15.0.1/doc/html/erlang.html#is_reference/1"><code·class="inline">is_reference/1</code></a>·BIF·tests·whether·a·term
260 is·a·reference.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">make_ref</span><span·class="p"·data-group-id="2995064069-1">(</span><span·class="p"·data-group-id="2995064069-1">)</span><span·class="p">.</span><span·class="w">260 is·a·reference.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">make_ref</span><span·class="p"·data-group-id="7911538101-1">(</span><span·class="p"·data-group-id="7911538101-1">)</span><span·class="p">.</span><span·class="w">
261 </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.76482849</span><span·class="p">.</span><span·class="mf">3801088007.198204</span><span·class="o">&gt;</span><span·class="gp·unselectable">261 </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.76482849</span><span·class="p">.</span><span·class="mf">3801088007.198204</span><span·class="o">&gt;</span><span·class="gp·unselectable">
262 2&gt;·</span><span·class="nf">is_reference</span><span·class="p"·data-group-id="2995064069-2">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="2995064069-2">)</span><span·class="p">.</span><span·class="w">262 2&gt;·</span><span·class="nf">is_reference</span><span·class="p"·data-group-id="7911538101-2">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="7911538101-2">)</span><span·class="p">.</span><span·class="w">
263 </span><span·class="ss">true</span></code></pre><h2·id="fun"·class="section-heading">263 </span><span·class="ss">true</span></code></pre><h2·id="fun"·class="section-heading">
264 ··<a·href="#fun"·class="hover-link">264 ··<a·href="#fun"·class="hover-link">
265 ····<i·class="ri-link-m"·aria-hidden="true"></i>265 ····<i·class="ri-link-m"·aria-hidden="true"></i>
266 ··</a>266 ··</a>
267 ··<span·class="text">Fun</span>267 ··<span·class="text">Fun</span>
268 </h2>268 </h2>
269 <p>A·fun·is·a·functional·object.·Funs·make·it·possible·to·create·an·anonymous269 <p>A·fun·is·a·functional·object.·Funs·make·it·possible·to·create·an·anonymous
270 function·and·pass·the·function·itself··not·its·name··as·argument·to·other270 function·and·pass·the·function·itself··not·its·name··as·argument·to·other
271 functions.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Fun1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="5850001477-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="5850001477-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">X</span><span·class="o">+</span><span·class="mi">1</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">271 functions.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Fun1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="5862426042-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="5862426042-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">X</span><span·class="o">+</span><span·class="mi">1</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
272 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="p">.</span><span·class="mf">6.39074546</span><span·class="o">&gt;</span><span·class="gp·unselectable">272 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="p">.</span><span·class="mf">6.39074546</span><span·class="o">&gt;</span><span·class="gp·unselectable">
273 2&gt;·</span><span·class="n">Fun1</span><span·class="p"·data-group-id="5850001477-2">(</span><span·class="mi">2</span><span·class="p"·data-group-id="5850001477-2">)</span><span·class="p">.</span><span·class="w">273 2&gt;·</span><span·class="n">Fun1</span><span·class="p"·data-group-id="5862426042-2">(</span><span·class="mi">2</span><span·class="p"·data-group-id="5862426042-2">)</span><span·class="p">.</span><span·class="w">
274 </span><span·class="mi">3</span></code></pre><p>The·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_function/1"><code·class="inline">is_function/1</code></a>·and·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_function/2"><code·class="inline">is_function/2</code></a>274 </span><span·class="mi">3</span></code></pre><p>The·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_function/1"><code·class="inline">is_function/1</code></a>·and·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_function/2"><code·class="inline">is_function/2</code></a>
275 BIFs·tests·whether·a·term·is·a·fun.</p><p><em>Examples</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5034289517-1">(</span><span·class="p"·data-group-id="5034289517-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">275 BIFs·tests·whether·a·term·is·a·fun.</p><p><em>Examples</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="9948738607-1">(</span><span·class="p"·data-group-id="9948738607-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
276 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="p">.</span><span·class="mf">43.105768164</span><span·class="o">&gt;</span><span·class="gp·unselectable">276 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="p">.</span><span·class="mf">43.105768164</span><span·class="o">&gt;</span><span·class="gp·unselectable">
277 2&gt;·</span><span·class="nf">is_function</span><span·class="p"·data-group-id="5034289517-2">(</span><span·class="n">F</span><span·class="p"·data-group-id="5034289517-2">)</span><span·class="p">.</span><span·class="w">277 2&gt;·</span><span·class="nf">is_function</span><span·class="p"·data-group-id="9948738607-2">(</span><span·class="n">F</span><span·class="p"·data-group-id="9948738607-2">)</span><span·class="p">.</span><span·class="w">
278 </span><span·class="ss">true</span><span·class="gp·unselectable">278 </span><span·class="ss">true</span><span·class="gp·unselectable">
279 3&gt;·</span><span·class="nf">is_function</span><span·class="p"·data-group-id="5034289517-3">(</span><span·class="n">F</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="5034289517-3">)</span><span·class="p">.</span><span·class="w">279 3&gt;·</span><span·class="nf">is_function</span><span·class="p"·data-group-id="9948738607-3">(</span><span·class="n">F</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="9948738607-3">)</span><span·class="p">.</span><span·class="w">
280 </span><span·class="ss">true</span><span·class="gp·unselectable">280 </span><span·class="ss">true</span><span·class="gp·unselectable">
281 4&gt;·</span><span·class="nf">is_function</span><span·class="p"·data-group-id="5034289517-4">(</span><span·class="n">F</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="5034289517-4">)</span><span·class="p">.</span><span·class="w">281 4&gt;·</span><span·class="nf">is_function</span><span·class="p"·data-group-id="9948738607-4">(</span><span·class="n">F</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="9948738607-4">)</span><span·class="p">.</span><span·class="w">
282 </span><span·class="ss">false</span></code></pre><p>Read·more·about·funs·in·<a·href="expressions.html#fun-expressions">Fun·Expressions</a>.·For·more282 </span><span·class="ss">false</span></code></pre><p>Read·more·about·funs·in·<a·href="expressions.html#fun-expressions">Fun·Expressions</a>.·For·more
283 examples,·see·<a·href="../../doc/system/funs.html">Programming·Examples</a>.</p><h2·id="port-identifier"·class="section-heading">283 examples,·see·<a·href="../../doc/system/funs.html">Programming·Examples</a>.</p><h2·id="port-identifier"·class="section-heading">
284 ··<a·href="#port-identifier"·class="hover-link">284 ··<a·href="#port-identifier"·class="hover-link">
285 ····<i·class="ri-link-m"·aria-hidden="true"></i>285 ····<i·class="ri-link-m"·aria-hidden="true"></i>
286 ··</a>286 ··</a>
287 ··<span·class="text">Port·Identifier</span>287 ··<span·class="text">Port·Identifier</span>
288 </h2>288 </h2>
Offset 300, 94 lines modifiedOffset 300, 94 lines modified
300 for·a·new·process·after·a·while.</p><p>The·BIF·<a·href="../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>·returns·the·Pid·of·the·calling·process.·When300 for·a·new·process·after·a·while.</p><p>The·BIF·<a·href="../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>·returns·the·Pid·of·the·calling·process.·When
301 <a·href="ref_man_processes.html#process-creation">creating·a·new·process</a>,·the·parent301 <a·href="ref_man_processes.html#process-creation">creating·a·new·process</a>,·the·parent
302 process·will·be·able·to·get·the·Pid·of·the·child·process·either·via·the·return302 process·will·be·able·to·get·the·Pid·of·the·child·process·either·via·the·return
303 value,·as·is·the·case·when·calling·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#spawn/3"><code·class="inline">spawn/3</code></a>·BIF,·or·via303 value,·as·is·the·case·when·calling·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#spawn/3"><code·class="inline">spawn/3</code></a>·BIF,·or·via
304 a·message,·which·is·the·case·when·calling·the304 a·message,·which·is·the·case·when·calling·the
305 <a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_request/5"><code·class="inline">spawn_request/5</code></a>·BIF.·A·Pid·is·typically·used·when305 <a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_request/5"><code·class="inline">spawn_request/5</code></a>·BIF.·A·Pid·is·typically·used·when
306 when·sending·a·process·a·<a·href="ref_man_processes.html#signals">signal</a>.·The306 when·sending·a·process·a·<a·href="ref_man_processes.html#signals">signal</a>.·The
307 <a·href="../../erts-15.0.1/doc/html/erlang.html#is_pid/1"><code·class="inline">is_pid/1</code></a>·BIF·tests·whether·a·term·is·a·Pid.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0015401080-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="0015401080-1">)</span><span·class="p">.</span><span·class="w">307 <a·href="../../erts-15.0.1/doc/html/erlang.html#is_pid/1"><code·class="inline">is_pid/1</code></a>·BIF·tests·whether·a·term·is·a·Pid.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6598143648-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="6598143648-1">)</span><span·class="p">.</span><span·class="w">
308 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0015401080-2">(</span><span·class="p"·data-group-id="0015401080-3">[</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0015401080-3">]</span><span·class="p"·data-group-id="0015401080-2">)</span><span·class="p">.</span><span·class="w">308 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6598143648-2">(</span><span·class="p"·data-group-id="6598143648-3">[</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="6598143648-3">]</span><span·class="p"·data-group-id="6598143648-2">)</span><span·class="p">.</span><span·class="w">
  
309 </span><span·class="nf">loop</span><span·class="p"·data-group-id="0015401080-4">(</span><span·class="p"·data-group-id="0015401080-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">309 </span><span·class="nf">loop</span><span·class="p"·data-group-id="6598143648-4">(</span><span·class="p"·data-group-id="6598143648-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
310 ····</span><span·class="k">receive</span><span·class="w">310 ····</span><span·class="k">receive</span><span·class="w">
311 ········</span><span·class="ss">who_are_you</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">311 ········</span><span·class="ss">who_are_you</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
312 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0015401080-5">(</span><span·class="s">&quot;I·am·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0015401080-6">[</span><span·class="nf">s[·...·truncated·by·diffoscope;·len:·210,·SHA:·53372aa42087823191d34c4f97f75bb6ad9cb7416159f6029319633a0d8d135e·...·]-5">)</span><span·class="p">,</span><span·class="w">312 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6598143648-5">(</span><span·class="s">&quot;I·am·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6598143648-6">[</span><span·class="nf">s[·...·truncated·by·diffoscope;·len:·210,·SHA:·1ee1cd975715781a07f7d41c5796bac12ed32881ed80d17b88bd7a9410a968a5·...·]-5">)</span><span·class="p">,</span><span·class="w">
313 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="0015401080-8">(</span><span·class="p"·data-group-id="0015401080-8">)</span><span·class="w">313 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="6598143648-8">(</span><span·class="p"·data-group-id="6598143648-8">)</span><span·class="w">
314 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">314 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
315 </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="0015401080-9">(</span><span·class="ss">m</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">loop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0015401080-10">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·64,·SHA:·9d1fe09554f72d4e0d780b16254436d5ed1404cede422e286ec4ec0217dfeafb·...·]-9">)</span><span·class="p">.</span><span·class="w">315 </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="6598143648-9">(</span><span·class="ss">m</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">loop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6598143648-10">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·64,·SHA:·9175ae5bec6092534f5e2b2ca05050853636e95bf685e70cf0e11ed185b7e0be·...·]-9">)</span><span·class="p">.</span><span·class="w">
316 </span><span·class="o">&lt;</span><span·class="mf">0.58</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">316 </span><span·class="o">&lt;</span><span·class="mf">0.58</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">
317 2&gt;·</span><span·class="n">P</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">who_are_you</span><span·class="p">.</span><span·class="w">317 2&gt;·</span><span·class="n">P</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">who_are_you</span><span·class="p">.</span><span·class="w">
318 </span><span·class="n">I</span><span·class="w">·</span><span·class="ss">am</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.58</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">318 </span><span·class="n">I</span><span·class="w">·</span><span·class="ss">am</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.58</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">
319 </span><span·class="ss">who_are_you</span></code></pre><p>Read·more·about·processes·in·<a·href="ref_man_processes.html">Processes</a>.</p><h2·id="tuple"·class="section-heading">319 </span><span·class="ss">who_are_you</span></code></pre><p>Read·more·about·processes·in·<a·href="ref_man_processes.html">Processes</a>.</p><h2·id="tuple"·class="section-heading">
320 ··<a·href="#tuple"·class="hover-link">320 ··<a·href="#tuple"·class="hover-link">
321 ····<i·class="ri-link-m"·aria-hidden="true"></i>321 ····<i·class="ri-link-m"·aria-hidden="true"></i>
322 ··</a>322 ··</a>
323 ··<span·class="text">Tuple</span>323 ··<span·class="text">Tuple</span>
324 </h2>324 </h2>
325 <p>A·tuple·is·a·compound·data·type·with·a·fixed·number·of·terms:</p><pre><code·class="text">{Term1,...,TermN}</code></pre><p>Each·term·<code·class="inline">Term</code>·in·the·tuple·is·called·an·<em>element</em>.·The·number·of·elements·is325 <p>A·tuple·is·a·compound·data·type·with·a·fixed·number·of·terms:</p><pre><code·class="text">{Term1,...,TermN}</code></pre><p>Each·term·<code·class="inline">Term</code>·in·the·tuple·is·called·an·<em>element</em>.·The·number·of·elements·is
326 said·to·be·the·<em>size</em>·of·the·tuple.</p><p>There·exists·a·number·of·BIFs·to·manipulate·tuples.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7186304079-1">{</span><span·class="ss">adam</span><span·class="p">,</span><span·class="mi">24</span><span·class="p">,</span><span·class="p"·data-group-id="7186304079-2">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·74d8c9d2c643ad7dd3c06410c4e18096dce9033b1b215551358e5244a2c7415a·...·]-1">}</span><span·class="p">.</span><span·class="w">326 said·to·be·the·<em>size</em>·of·the·tuple.</p><p>There·exists·a·number·of·BIFs·to·manipulate·tuples.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2348566422-1">{</span><span·class="ss">adam</span><span·class="p">,</span><span·class="mi">24</span><span·class="p">,</span><span·class="p"·data-group-id="2348566422-2">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·ac9ff2bd9cc7530c16136ac2285140689de679f774f7ce13ce2634388f27893d·...·]-1">}</span><span·class="p">.</span><span·class="w">
327 </span><span·class="p"·data-group-id="7186304079-3">{</span><span·class="ss">adam</span><span·class="p">,</span><span·class="mi">24</span><span·class="p">,</span><span·class="p"·data-group-id="7186304079-4">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·a0533c0dbdf830d68bb6275294ce94ad85ec8d36f093d2dcbda151c18e05036f·...·]-3">}</span><span·class="gp·unselectable">327 </span><span·class="p"·data-group-id="2348566422-3">{</span><span·class="ss">adam</span><span·class="p">,</span><span·class="mi">24</span><span·class="p">,</span><span·class="p"·data-group-id="2348566422-4">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·09fa58774b199f9202708129ee0cbdb44cc35a2ae73e319c2a4e526b8f68401c·...·]-3">}</span><span·class="gp·unselectable">
328 2&gt;·</span><span·class="nf">element</span><span·class="p"·data-group-id="7186304079-5">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">P</span><span·class="p"·data-group-id="7186304079-5">)</span><span·class="p">.</span><span·class="w">328 2&gt;·</span><span·class="nf">element</span><span·class="p"·data-group-id="2348566422-5">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">P</span><span·class="p"·data-group-id="2348566422-5">)</span><span·class="p">.</span><span·class="w">
329 </span><span·class="ss">adam</span><span·class="gp·unselectable">329 </span><span·class="ss">adam</span><span·class="gp·unselectable">
330 3&gt;·</span><span·class="nf">element</span><span·class="p"·data-group-id="7186304079-6">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="n">P</span><span·class="p"·data-group-id="7186304079-6">)</span><span·class="p">.</span><span·class="w">330 3&gt;·</span><span·class="nf">element</span><span·class="p"·data-group-id="2348566422-6">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="n">P</span><span·class="p"·data-group-id="2348566422-6">)</span><span·class="p">.</span><span·class="w">
331 </span><span·class="p"·data-group-id="7186304079-7">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><span·class="p"·data-group-id="7186304079-7">}</span><span·class="gp·unselectable">331 </span><span·class="p"·data-group-id="2348566422-7">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><span·class="p"·data-group-id="2348566422-7">}</span><span·class="gp·unselectable">
332 4&gt;·</span><span·class="n">P2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">setelement</span><span·class="p"·data-group-id="7186304079-8">(</span><span·class="mi">2</span><span·class="p">,</span><span·class="n">P</span><span·class="p">,</span><span·class="mi">25</span><span·class="p"·data-group-id="7186304079-8">)</span><span·class="p">.</span><span·class="w">332 4&gt;·</span><span·class="n">P2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">setelement</span><span·class="p"·data-group-id="2348566422-8">(</span><span·class="mi">2</span><span·class="p">,</span><span·class="n">P</span><span·class="p">,</span><span·class="mi">25</span><span·class="p"·data-group-id="2348566422-8">)</span><span·class="p">.</span><span·class="w">
333 </span><span·class="p"·data-group-id="7186304079-9">{</span><span·class="ss">adam</span><span·class="p">,</span><span·class="mi">25</span><span·class="p">,</span><span·class="p"·data-group-id="7186304079-10">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span>[·...·truncated·by·diffoscope;·len:·95,·SHA:·797d476a1f99add422f9dcbc4dc9328b32b811342634f92e2a0a2765e7a384fb·...·]-9">}</span><span·class="gp·unselectable">333 </span><span·class="p"·data-group-id="2348566422-9">{</span><span·class="ss">adam</span><span·class="p">,</span><span·class="mi">25</span><span·class="p">,</span><span·class="p"·data-group-id="2348566422-10">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span>[·...·truncated·by·diffoscope;·len:·95,·SHA:·8b256feeef600163c6a65531682eda4b8deaffb7a2b1d3adc27f3edba58ecabd·...·]-9">}</span><span·class="gp·unselectable">
334 5&gt;·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="7186304079-11">(</span><span·class="n">P</span><span·class="p"·data-group-id="7186304079-11">)</span><span·class="p">.</span><span·class="w">334 5&gt;·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="2348566422-11">(</span><span·class="n">P</span><span·class="p"·data-group-id="2348566422-11">)</span><span·class="p">.</span><span·class="w">
335 </span><span·class="mi">3</span><span·class="gp·unselectable">335 </span><span·class="mi">3</span><span·class="gp·unselectable">
336 6&gt;·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="7186304079-12">(</span><span·class="p"·data-group-id="7186304079-13">{</span><span·class="p"·data-group-id="7186304079-13">}</span><span·class="p"·data-group-id="7186304079-12">)</span><span·class="p">.</span><span·class="w">336 6&gt;·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="2348566422-12">(</span><span·class="p"·data-group-id="2348566422-13">{</span><span·class="p"·data-group-id="2348566422-13">}</span><span·class="p"·data-group-id="2348566422-12">)</span><span·class="p">.</span><span·class="w">
337 </span><span·class="mi">0</span><span·class="gp·unselectable">337 </span><span·class="mi">0</span><span·class="gp·unselectable">
338 7&gt;·</span><span·class="nf">is_tuple</span><span·class="p"·data-group-id="7186304079-14">(</span><span·class="p"·data-group-id="7186304079-15">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="7186304079-15">}</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·fb09ebf12430186d018989488c1d31111f4fa2094bd0a40ed88b0446ff6ac137·...·]-14">)</span><span·class="p">.</span><span·class="w">338 7&gt;·</span><span·class="nf">is_tuple</span><span·class="p"·data-group-id="2348566422-14">(</span><span·class="p"·data-group-id="2348566422-15">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="2348566422-15">}</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·567f25c6cfa6b310121b5ef331cbbcdca8474ab605af3cc4c75a497f4f2453f6·...·]-14">)</span><span·class="p">.</span><span·class="w">
339 </span><span·class="ss">true</span></code></pre><h2·id="map"·class="section-heading">339 </span><span·class="ss">true</span></code></pre><h2·id="map"·class="section-heading">
340 ··<a·href="#map"·class="hover-link">340 ··<a·href="#map"·class="hover-link">
341 ····<i·class="ri-link-m"·aria-hidden="true"></i>341 ····<i·class="ri-link-m"·aria-hidden="true"></i>
342 ··</a>342 ··</a>
343 ··<span·class="text">Map</span>343 ··<span·class="text">Map</span>
344 </h2>344 </h2>
345 <p>A·map·is·a·compound·data·type·with·a·variable·number·of·key-value·associations:</p><pre><code·class="text">#{Key1·=&gt;·Value1,·...,·KeyN·=&gt;·ValueN}</code></pre><p>Each·key-value·association·in·the·map·is·called·an·<em>association·pair</em>.·The·key345 <p>A·map·is·a·compound·data·type·with·a·variable·number·of·key-value·associations:</p><pre><code·class="text">#{Key1·=&gt;·Value1,·...,·KeyN·=&gt;·ValueN}</code></pre><p>Each·key-value·association·in·the·map·is·called·an·<em>association·pair</em>.·The·key
346 and·value·parts·of·the·pair·are·called·<em>elements</em>.·The·number·of·association346 and·value·parts·of·the·pair·are·called·<em>elements</em>.·The·number·of·association
347 pairs·is·said·to·be·the·<em>size</em>·of·the·map.</p><p>There·exists·a·number·of·BIFs·to·manipulate·maps.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">M1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6551625671-1">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">adam</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">age</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·453,·SHA:·07e76a6e1d27923c345741e0040ab998e9d9fc550b8df5c0f74fef32a39842fb·...·]-1">}</span><span·class="p">.</span><span·class="w">347 pairs·is·said·to·be·the·<em>size</em>·of·the·map.</p><p>There·exists·a·number·of·BIFs·to·manipulate·maps.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">M1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7001242113-1">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">adam</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">age</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·453,·SHA:·ed850e0be9a3d8b1db9092b0efc5bbd319f538ef49ce3b5d9cd456f361b62a0c·...·]-1">}</span><span·class="p">.</span><span·class="w">
348 </span><span·class="p"·data-group-id="6551625671-3">#{</span><span·class="ss">age</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">24</span><span·class="p">,</span><span·class="ss">date</span><span·class="w">·</span><span·class="p">=&gt;</span>[·...·truncated·by·diffoscope;·len:·405,·SHA:·1af00c07037d5696953dd6db319e336c21f19763814641b663a7d1fcb064a09b·...·]-3">}</span><span·class="gp·unselectable">348 </span><span·class="p"·data-group-id="7001242113-3">#{</span><span·class="ss">age</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">24</span><span·class="p">,</span><span·class="ss">date</span><span·class="w">·</span><span·class="p">=&gt;</span>[·...·truncated·by·diffoscope;·len:·405,·SHA:·571b6f78579f7ba85f22a024c16090806dc4bcb686aaf62090488928625952e2·...·]-3">}</span><span·class="gp·unselectable">
349 2&gt;·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="6551625671-5">(</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M1</span><span·class="p"·data-group-id="6551625671-5">)</span><span·class="p">.</span><span·class="w">349 2&gt;·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="7001242113-5">(</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M1</span><span·class="p"·data-group-id="7001242113-5">)</span><span·class="p">.</span><span·class="w">
350 </span><span·class="ss">adam</span><span·class="gp·unselectable">350 </span><span·class="ss">adam</span><span·class="gp·unselectable">
351 3&gt;·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="6551625671-6">(</span><span·class="ss">date</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M1</span><span·class="p"·data-group-id="6551625671-6">)</span><span·class="p">.</span><span·class="w">351 3&gt;·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="7001242113-6">(</span><span·class="ss">date</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M1</span><span·class="p"·data-group-id="7001242113-6">)</span><span·class="p">.</span><span·class="w">
352 </span><span·class="p"·data-group-id="6551625671-7">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><span·class="p"·data-group-id="6551625671-7">}</span><span·class="gp·unselectable">352 </span><span·class="p"·data-group-id="7001242113-7">{</span><span·class="ss">july</span><span·class="p">,</span><span·class="mi">29</span><span·class="p"·data-group-id="7001242113-7">}</span><span·class="gp·unselectable">
Max diff block lines reached; 36325/76553 bytes (47.45%) of diff not shown.
695 B
html2text {}
Max HTML report size reached
1.4 KB
./usr/share/doc/erlang-doc/html/doc/system/debugging.html
    
Offset 331, 15 lines modifiedOffset 331, 15 lines modified
331 ······<p·class="built-using">331 ······<p·class="built-using">
332 ········Built·using332 ········Built·using
333 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the333 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
334 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>334 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
335 ······</p>335 ······</p>
336 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>336 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
337 ····</footer>337 ····</footer>
338 ··</div>338 ··</div>
339 </main>339 </main>
340 </div>340 </div>
341 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>341 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
342 <script>342 <script>
343 ··document.addEventListener("DOMContentLoaded",·function·()·{343 ··document.addEventListener("DOMContentLoaded",·function·()·{
616 B
html2text {}
Max HTML report size reached
60.0 KB
./usr/share/doc/erlang-doc/html/doc/system/design_principles.html
    
Offset 152, 135 lines modifiedOffset 152, 135 lines modified
152 the·code·for·a·process·in·a·generic·part·(a·behaviour·module)·and·a·specific152 the·code·for·a·process·in·a·generic·part·(a·behaviour·module)·and·a·specific
153 part·(a·<em>callback·module</em>).</p><p>The·behaviour·module·is·part·of·Erlang/OTP.·To·implement·a·process·such·as·a153 part·(a·<em>callback·module</em>).</p><p>The·behaviour·module·is·part·of·Erlang/OTP.·To·implement·a·process·such·as·a
154 supervisor,·the·user·only·needs·to·implement·the·callback·module,·which·is·to154 supervisor,·the·user·only·needs·to·implement·the·callback·module,·which·is·to
155 export·a·pre-defined·set·of·functions,·the·<em>callback·functions</em>.</p><p>The·following·example·illustrate·how·code·can·be·divided·into·a·generic·and·a155 export·a·pre-defined·set·of·functions,·the·<em>callback·functions</em>.</p><p>The·following·example·illustrate·how·code·can·be·divided·into·a·generic·and·a
156 specific·part.·Consider·the·following·code·(written·in·plain·Erlang)·for·a156 specific·part.·Consider·the·following·code·(written·in·plain·Erlang)·for·a
157 simple·server,·which·keeps·track·of·a·number·of·&quot;channels&quot;.·Other·processes·can157 simple·server,·which·keeps·track·of·a·number·of·&quot;channels&quot;.·Other·processes·can
158 allocate·and·free·the·channels·by·calling·the·functions·<code·class="inline">alloc/0</code>·and·<code·class="inline">free/1</code>,158 allocate·and·free·the·channels·by·calling·the·functions·<code·class="inline">alloc/0</code>·and·<code·class="inline">free/1</code>,
159 respectively.</p><p><a·href=""·id="ch1"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="5473047819-1">(</span><span·class="ss">ch1</span><span·class="p"·data-group-id="5473047819-1">)</span><span·class="p">.</span><span·class="w"> 
160 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5473047819-2">(</span><span·class="p"·data-group-id="5473047819-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class[·...·truncated·by·diffoscope;·len:·85,·SHA:·214efa4a3f99595089d5eebde7cb6c5e7e1c4d19c7d2bc688a2ec3ea20b2b322·...·]">)</span><span·class="p">.</span><span·class="w">159 respectively.</p><p><a·href=""·id="ch1"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2092718845-1">(</span><span·class="ss">ch1</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·17,·SHA:·a020e0fe7a2a1310752e14bfc350791640ca8960ad463082f134277f6891526d·...·]">)</span><span·class="p">.</span><span·class="w">
 160 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2092718845-2">(</span><span·class="p"·data-group-id="2092718845-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="2092718845-3">]</span><span·class="p"·data-group-id="2092718845-2">)</span><span·class="p">.</span><span·class="w">
161 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5473047819-4">(</span><span·class="p"·data-group-id="5473047819-5">[</span><span·class="ss">alloc</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">free</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·c99c7945f1c46ac37231070bea882742a5f817cf03e88187930a7dce9c5990c1·...·]-4">)</span><span·class="p">.</span><span·class="w">161 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2092718845-4">(</span><span·class="p"·data-group-id="2092718845-5">[</span><span·class="ss">alloc</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">free</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·00fdc72700f9313bb0eeea0bfd152cf1f16a506b34ffa5835271e55b7321aa35·...·]-4">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5473047819-6">(</span><span·class="p"·data-group-id="5473047819-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="5473047819-7">]</span><span·class="p"·data-group-id="5473047819-6">)</span><span·class="p">.</span><span·class="w">162 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2092718845-6">(</span><span·class="p"·data-group-id="2092718845-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="2092718845-7">]</span><span·class="p"·data-group-id="2092718845-6">)</span><span·class="p">.</span><span·class="w">
  
163 </span><span·class="nf">start</span><span·class="p"·data-group-id="5473047819-8">(</span><span·class="p"·data-group-id="5473047819-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">163 </span><span·class="nf">start</span><span·class="p"·data-group-id="2092718845-8">(</span><span·class="p"·data-group-id="2092718845-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
164 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="5473047819-9">(</span><span·class="ss">ch1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5473047819-10">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·55a76380d7c19012e3278501eaa27890681c657661329ed3ab93b1d6a4e8040d·...·]-9">)</span><span·class="p">.</span><span·class="w">164 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="2092718845-9">(</span><span·class="ss">ch1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2092718845-10">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·a06503a2974453edbfc82dd7d1e0d00844d3e4a3332bf5d26a37867dd2edbb69·...·]-9">)</span><span·class="p">.</span><span·class="w">
  
165 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="5473047819-11">(</span><span·class="p"·data-group-id="5473047819-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">165 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="2092718845-11">(</span><span·class="p"·data-group-id="2092718845-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
166 ····</span><span·class="ss">ch1</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5473047819-12">{</span><span·class="nf">self</span><span·class="p"·data-group-id="5473047819-13">(</span><span·class="p"·data-group-id="5473047819-13">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·f442ce9a4d8fc3091c4aa6a557da10b45d8a488d0a96f70b3dc241ab11b338bf·...·]-12">}</span><span·class="p">,</span><span·class="w">166 ····</span><span·class="ss">ch1</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="2092718845-12">{</span><span·class="nf">self</span><span·class="p"·data-group-id="2092718845-13">(</span><span·class="p"·data-group-id="2092718845-13">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·f2563c64dd08bbca3949291d921ffde310748dc7d7d9df812b57e074a2737ceb·...·]-12">}</span><span·class="p">,</span><span·class="w">
167 ····</span><span·class="k">receive</span><span·class="w">167 ····</span><span·class="k">receive</span><span·class="w">
168 ········</span><span·class="p"·data-group-id="5473047819-14">{</span><span·class="ss">ch1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Res</span><span·class="p"·data-group-id="5473047819-14">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">168 ········</span><span·class="p"·data-group-id="2092718845-14">{</span><span·class="ss">ch1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Res</span><span·class="p"·data-group-id="2092718845-14">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
169 ············</span><span·class="n">Res</span><span·class="w">169 ············</span><span·class="n">Res</span><span·class="w">
170 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">170 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
171 </span><span·class="nf">free</span><span·class="p"·data-group-id="5473047819-15">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="5473047819-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">171 </span><span·class="nf">free</span><span·class="p"·data-group-id="2092718845-15">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="2092718845-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ····</span><span·class="ss">ch1</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5473047819-16">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="5473047819-16">}</span><span·class="p">,</span><span·class="w">172 ····</span><span·class="ss">ch1</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="2092718845-16">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="2092718845-16">}</span><span·class="p">,</span><span·class="w">
173 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">173 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
174 </span><span·class="nf">init</span><span·class="p"·data-group-id="5473047819-17">(</span><span·class="p"·data-group-id="5473047819-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">174 </span><span·class="nf">init</span><span·class="p"·data-group-id="2092718845-17">(</span><span·class="p"·data-group-id="2092718845-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
175 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="5473047819-18">(</span><span·class="ss">ch1</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="5473047819-19">(</span><span·class="p"·data-group-id="5473047819-19">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·abe304654f0652e062c6a9ef30464ea7b05db91e7fac3c9f163bd4e4eaaa5e62·...·]-18">)</span><span·class="p">,</span><span·class="w">175 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="2092718845-18">(</span><span·class="ss">ch1</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="2092718845-19">(</span><span·class="p"·data-group-id="2092718845-19">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·0e23cb9cd86c12088d7911b53598ed16b7455472114ac4d2e41bffb27d971808·...·]-18">)</span><span·class="p">,</span><span·class="w">
176 ····</span><span·class="n">Chs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">channels</span><span·class="p"·data-group-id="5473047819-20">(</span><span·class="p"·data-group-id="5473047819-20">)</span><span·class="p">,</span><span·class="w">176 ····</span><span·class="n">Chs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">channels</span><span·class="p"·data-group-id="2092718845-20">(</span><span·class="p"·data-group-id="2092718845-20">)</span><span·class="p">,</span><span·class="w">
177 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="5473047819-21">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="5473047819-21">)</span><span·class="p">.</span><span·class="w">177 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="2092718845-21">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="2092718845-21">)</span><span·class="p">.</span><span·class="w">
  
178 </span><span·class="nf">loop</span><span·class="p"·data-group-id="5473047819-22">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="5473047819-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 </span><span·class="nf">loop</span><span·class="p"·data-group-id="2092718845-22">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="2092718845-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ····</span><span·class="k">receive</span><span·class="w">179 ····</span><span·class="k">receive</span><span·class="w">
180 ········</span><span·class="p"·data-group-id="5473047819-23">{</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data-group-id="5473047819-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">180 ········</span><span·class="p"·data-group-id="2092718845-23">{</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data-group-id="2092718845-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
181 ············</span><span·class="p"·data-group-id="5473047819-24">{</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="5473047819-24">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·0d2db203af9eef7c6f61bc5183013d9328dd64de3e1bb0ba1ff1f7e6c635fb23·...·]-25">)</span><span·class="p">,</span><span·class="w">181 ············</span><span·class="p"·data-group-id="2092718845-24">{</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="2092718845-24">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·97f873f417cb19ada6be7b78f5cedf71434a0c7d2b6f8aa34b3ea049df8a8ba3·...·]-25">)</span><span·class="p">,</span><span·class="w">
182 ············</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5473047819-26">{</span><span·class="ss">ch1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="5473047819-26">}</span><span·class="p">,</span><span·class="w">182 ············</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="2092718845-26">{</span><span·class="ss">ch1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="2092718845-26">}</span><span·class="p">,</span><span·class="w">
183 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="5473047819-27">(</span><span·class="n">Chs2</span><span·class="p"·data-group-id="5473047819-27">)</span><span·class="p">;</span><span·class="w">183 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="2092718845-27">(</span><span·class="n">Chs2</span><span·class="p"·data-group-id="2092718845-27">)</span><span·class="p">;</span><span·class="w">
184 ········</span><span·class="p"·data-group-id="5473047819-28">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="5473047819-28">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">184 ········</span><span·class="p"·data-group-id="2092718845-28">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="2092718845-28">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
185 ············</span><span·class="n">Chs2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">free</span><span·class="p"·data-group-id="5473047819-29">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="5473047819-29">)</span><span·class="p">,</span><span·class="w">185 ············</span><span·class="n">Chs2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">free</span><span·class="p"·data-group-id="2092718845-29">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="2092718845-29">)</span><span·class="p">,</span><span·class="w">
186 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="5473047819-30">(</span><span·class="n">Chs2</span><span·class="p"·data-group-id="5473047819-30">)</span><span·class="w">186 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="2092718845-30">(</span><span·class="n">Chs2</span><span·class="p"·data-group-id="2092718845-30">)</span><span·class="w">
187 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·code·for·the·server·can·be·rewritten·into·a·generic·part·<code·class="inline">server.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4354438522-1">(</span><span·class="ss">server</span><span·class="p"·data-group-id="4354438522-1">)</span><span·class="p">.</span><span·class="w">187 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·code·for·the·server·can·be·rewritten·into·a·generic·part·<code·class="inline">server.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4846906413-1">(</span><span·class="ss">server</span><span·class="p"·data-group-id="4846906413-1">)</span><span·class="p">.</span><span·class="w">
188 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4354438522-2">(</span><span·class="p"·data-group-id="4354438522-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="4354438522-3">]</span><span·class="p"·data-group-id="4354438522-2">)</span><span·class="p">.</span><span·class="w">188 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4846906413-2">(</span><span·class="p"·data-group-id="4846906413-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="4846906413-3">]</span><span·class="p"·data-group-id="4846906413-2">)</span><span·class="p">.</span><span·class="w">
189 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4354438522-4">(</span><span·class="p"·data-group-id="4354438522-5">[</span><span·class="ss">call</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cast</span><span·class="p">/</span><span[·...·truncated·by·diffoscope;·len:·114,·SHA:·e8ccf2023c576452ccad6a17c91e11f71e079b2ff5f6a06336108d7699bb8101·...·]-4">)</span><span·class="p">.</span><span·class="w">189 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4846906413-4">(</span><span·class="p"·data-group-id="4846906413-5">[</span><span·class="ss">call</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cast</span><span·class="p">/</span><span[·...·truncated·by·diffoscope;·len:·114,·SHA:·6069921d2adf9c2ebdef77b1511457f2b3409518a07ddefe2784dc56054180cd·...·]-4">)</span><span·class="p">.</span><span·class="w">
190 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4354438522-6">(</span><span·class="p"·data-group-id="4354438522-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="4354438522-7">]</span><span·class="p"·data-group-id="4354438522-6">)</span><span·class="p">.</span><span·class="w">190 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4846906413-6">(</span><span·class="p"·data-group-id="4846906413-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="4846906413-7">]</span><span·class="p"·data-group-id="4846906413-6">)</span><span·class="p">.</span><span·class="w">
  
191 </span><span·class="nf">start</span><span·class="p"·data-group-id="4354438522-8">(</span><span·class="n">Mod</span><span·class="p"·data-group-id="4354438522-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">191 </span><span·class="nf">start</span><span·class="p"·data-group-id="4846906413-8">(</span><span·class="n">Mod</span><span·class="p"·data-group-id="4846906413-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
192 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="4354438522-9">(</span><span·class="ss">server</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4354438522-10">[</span><span·class="n">Mod</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·264f4d90f3dbda49d1fe916bf5eb26eb4c609801d91dbe775ca31c8d823db792·...·]-9">)</span><span·class="p">.</span><span·class="w">192 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="4846906413-9">(</span><span·class="ss">server</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4846906413-10">[</span><span·class="n">Mod</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·7ed61c472556aace4996bb3e79d8125aebef7255b6cd17f7418c71e2e491fef6·...·]-9">)</span><span·class="p">.</span><span·class="w">
  
193 </span><span·class="nf">call</span><span·class="p"·data-group-id="4354438522-11">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4354438522-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 </span><span·class="nf">call</span><span·class="p"·data-group-id="4846906413-11">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4846906413-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 ····</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="4354438522-12">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="4354438522-13">(</span><span·class="p"·data-group-id="4354438522-13">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·93,·SHA:·45fc138badc0430b2413bb640a05618b55bbf09d62249dfea48cf29aa10de4cf·...·]-12">}</span><span·class="p">,</span><span·class="w">194 ····</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="4846906413-12">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="4846906413-13">(</span><span·class="p"·data-group-id="4846906413-13">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·93,·SHA:·c452a238387b3f72fcf8996765fae8b7cdb9c6fc7ecb5ed5bb730b81d4642daf·...·]-12">}</span><span·class="p">,</span><span·class="w">
195 ····</span><span·class="k">receive</span><span·class="w">195 ····</span><span·class="k">receive</span><span·class="w">
196 ········</span><span·class="p"·data-group-id="4354438522-14">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Res</span><span·class="p"·data-group-id="4354438522-14">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">196 ········</span><span·class="p"·data-group-id="4846906413-14">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Res</span><span·class="p"·data-group-id="4846906413-14">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
197 ············</span><span·class="n">Res</span><span·class="w">197 ············</span><span·class="n">Res</span><span·class="w">
198 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">198 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
199 </span><span·class="nf">cast</span><span·class="p"·data-group-id="4354438522-15">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4354438522-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">199 </span><span·class="nf">cast</span><span·class="p"·data-group-id="4846906413-15">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4846906413-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
200 ····</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="4354438522-16">{</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4354438522-16">}</span><span·class="p">,</span><span·class="w">200 ····</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="4846906413-16">{</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4846906413-16">}</span><span·class="p">,</span><span·class="w">
201 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">201 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
202 </span><span·class="nf">init</span><span·class="p"·data-group-id="4354438522-17">(</span><span·class="n">Mod</span><span·class="p"·data-group-id="4354438522-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">202 </span><span·class="nf">init</span><span·class="p"·data-group-id="4846906413-17">(</span><span·class="n">Mod</span><span·class="p"·data-group-id="4846906413-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
203 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="4354438522-18">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="4354438522-19">(</span><span·class="p"·data-group-id="4354438522-19">)</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·69e176af09ac1e446a7271f220232718e20927c76cf5121b94fa702cddf0216e·...·]-18">)</span><span·class="p">,</span><span·class="w">203 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="4846906413-18">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="4846906413-19">(</span><span·class="p"·data-group-id="4846906413-19">)</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·45b28b5b178b35bc684572bac3f35e42e614aa950e75ff52de70ce5f38245363·...·]-18">)</span><span·class="p">,</span><span·class="w">
204 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">:</span><span·class="nf">init</span><span·class="p"·data-group-id="4354438522-20">(</span><span·class="p"·data-group-id="4354438522-20">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">:</span><span·class="nf">init</span><span·class="p"·data-group-id="4846906413-20">(</span><span·class="p"·data-group-id="4846906413-20">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="4354438522-21">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="4354438522-21">)</span><span·class="p">.</span><span·class="w">205 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="4846906413-21">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="4846906413-21">)</span><span·class="p">.</span><span·class="w">
  
206 </span><span·class="nf">loop</span><span·class="p"·data-group-id="4354438522-22">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="4354438522-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">206 </span><span·class="nf">loop</span><span·class="p"·data-group-id="4846906413-22">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="4846906413-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
207 ····</span><span·class="k">receive</span><span·class="w">207 ····</span><span·class="k">receive</span><span·class="w">
208 ········</span><span·class="p"·data-group-id="4354438522-23">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4354438522-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 ········</span><span·class="p"·data-group-id="4846906413-23">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4846906413-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
209 ············</span><span·class="p"·data-group-id="4354438522-24">{</span><span·class="n">Res</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State2</span><span·class="p"·data-group-id="4354438522-24">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·277,·SHA:·2c31e0c57beb687b2da5ff16593aa633b51000fabc0726ba74fb4298f9c7f721·...·]-25">)</span><span·class="p">,</span><span·class="w">209 ············</span><span·class="p"·data-group-id="4846906413-24">{</span><span·class="n">Res</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State2</span><span·class="p"·data-group-id="4846906413-24">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·277,·SHA:·307c1f724b7c4040e43a5081e25c0bc047e72be99e5fbf5ca1a7b5fe20a9caca·...·]-25">)</span><span·class="p">,</span><span·class="w">
210 ············</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="4354438522-26">{</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Res</span><span·class="p"·data-group-id="4354438522-26">}</span><span·class="p">,</span><span·class="w">210 ············</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="4846906413-26">{</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Res</span><span·class="p"·data-group-id="4846906413-26">}</span><span·class="p">,</span><span·class="w">
211 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="4354438522-27">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State2</span><span·class="p"·data-group-id="4354438522-27">)</span><span·class="p">;</span><span·class="w">211 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="4846906413-27">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State2</span><span·class="p"·data-group-id="4846906413-27">)</span><span·class="p">;</span><span·class="w">
212 ········</span><span·class="p"·data-group-id="4354438522-28">{</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4354438522-28">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">212 ········</span><span·class="p"·data-group-id="4846906413-28">{</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="4846906413-28">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
213 ············</span><span·class="n">State2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">:</span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="4354438522-29">(</span><span·class="n">Req</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="4354438522-29">)</span><span·class="p">,</span><span·class="w">213 ············</span><span·class="n">State2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">:</span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="4846906413-29">(</span><span·class="n">Req</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="4846906413-29">)</span><span·class="p">,</span><span·class="w">
214 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="4354438522-30">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State2</span><span·class="p"·data-group-id="4354438522-30">)</span><span·class="w">214 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="4846906413-30">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State2</span><span·class="p"·data-group-id="4846906413-30">)</span><span·class="w">
215 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>And·a·callback·module·<code·class="inline">ch2.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0841788594-1">(</span><span·class="ss">ch2</span><span·class="p"·data-group-id="0841788594-1">)</span><span·class="p">.</span><span·class="w">215 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>And·a·callback·module·<code·class="inline">ch2.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7171708694-1">(</span><span·class="ss">ch2</span><span·class="p"·data-group-id="7171708694-1">)</span><span·class="p">.</span><span·class="w">
216 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0841788594-2">(</span><span·class="p"·data-group-id="0841788594-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0841788594-3">]</span><span·class="p"·data-group-id="0841788594-2">)</span><span·class="p">.</span><span·class="w">216 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7171708694-2">(</span><span·class="p"·data-group-id="7171708694-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7171708694-3">]</span><span·class="p"·data-group-id="7171708694-2">)</span><span·class="p">.</span><span·class="w">
217 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0841788594-4">(</span><span·class="p"·data-group-id="0841788594-5">[</span><span·class="ss">alloc</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">free</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·114,·SHA:·59361ec8edd27494b06dadc4d8723bb9153c323dc485e97955fe621da860f883·...·]94-4">)</span><span·class="p">.</span><span·class="w">217 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7171708694-4">(</span><span·class="p"·data-group-id="7171708694-5">[</span><span·class="ss">alloc</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">free</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·114,·SHA:·778db96282418dedc03885f3f83c860ea3d1147bb5b076be09d2d674e9916029·...·]94-4">)</span><span·class="p">.</span><span·class="w">
218 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0841788594-6">(</span><span·class="p"·data-group-id="0841788594-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</sp[·...·truncated·by·diffoscope;·len:·252,·SHA:·71e2d05dbec461ada8f214d1f58c3953f22949223f15271824e9cd32bc436b01·...·]94-6">)</span><span·class="p">.</span><span·class="w">218 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7171708694-6">(</span><span·class="p"·data-group-id="7171708694-7">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</sp[·...·truncated·by·diffoscope;·len:·252,·SHA:·20783ee28f515577853d3321a8c626e81182503a3e20f3b2cbfa42cbd01eadbf·...·]94-6">)</span><span·class="p">.</span><span·class="w">
  
219 </span><span·class="nf">start</span><span·class="p"·data-group-id="0841788594-8">(</span><span·class="p"·data-group-id="0841788594-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 </span><span·class="nf">start</span><span·class="p"·data-group-id="7171708694-8">(</span><span·class="p"·data-group-id="7171708694-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="0841788594-9">(</span><span·class="ss">ch2</span><span·class="p"·data-group-id="0841788594-9">)</span><span·class="p">.</span><span·class="w">220 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7171708694-9">(</span><span·class="ss">ch2</span><span·class="p"·data-group-id="7171708694-9">)</span><span·class="p">.</span><span·class="w">
  
221 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="0841788594-10">(</span><span·class="p"·data-group-id="0841788594-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">221 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="7171708694-10">(</span><span·class="p"·data-group-id="7171708694-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
222 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="0841788594-11">(</span><span·class="ss">ch2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data-group-id="0841788594-11">)</span><span·class="p">.</span><span·class="w">222 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="7171708694-11">(</span><span·class="ss">ch2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data-group-id="7171708694-11">)</span><span·class="p">.</span><span·class="w">
  
223 </span><span·class="nf">free</span><span·class="p"·data-group-id="0841788594-12">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="0841788594-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">223 </span><span·class="nf">free</span><span·class="p"·data-group-id="7171708694-12">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="7171708694-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
224 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="0841788594-13">(</span><span·class="ss">ch2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0841788594-14">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><sp[·...·truncated·by·diffoscope;·len:·90,·SHA:·330c7a5c087204ef43d1433fd267f852a35029c19741162844c23969263bc617·...·]94-13">)</span><span·class="p">.</span><span·class="w">224 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="7171708694-13">(</span><span·class="ss">ch2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7171708694-14">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><sp[·...·truncated·by·diffoscope;·len:·90,·SHA:·71d47ae67132678001c02fd48e3145b391472f14b244ec8fcedd47eb42ed9251·...·]94-13">)</span><span·class="p">.</span><span·class="w">
  
225 </span><span·class="nf">init</span><span·class="p"·data-group-id="0841788594-15">(</span><span·class="p"·data-group-id="0841788594-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">225 </span><span·class="nf">init</span><span·class="p"·data-group-id="7171708694-15">(</span><span·class="p"·data-group-id="7171708694-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
226 ····</span><span·class="nf">channels</span><span·class="p"·data-group-id="0841788594-16">(</span><span·class="p"·data-group-id="0841788594-16">)</span><span·class="p">.</span><span·class="w">226 ····</span><span·class="nf">channels</span><span·class="p"·data-group-id="7171708694-16">(</span><span·class="p"·data-group-id="7171708694-16">)</span><span·class="p">.</span><span·class="w">
  
227 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="0841788594-17">(</span><span·class="ss">alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="0841788594-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="7171708694-17">(</span><span·class="ss">alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="7171708694-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 ····</span><span·class="nf">alloc</span><span·class="p"·data-group-id="0841788594-18">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="0841788594-18">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·=&gt;·{Ch,Chs2}</span><span·class="w">228 ····</span><span·class="nf">alloc</span><span·class="p"·data-group-id="7171708694-18">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="7171708694-18">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·=&gt;·{Ch,Chs2}</span><span·class="w">
  
229 </span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="0841788594-19">(</span><span·class="p"·data-group-id="0841788594-20">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="0841788594-20">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·89,·SHA:·d92194a669321732e8421145902e096dbdfa2e1997c1ba79b876cab9cf5d2c4e·...·]94-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">229 </span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="7171708694-19">(</span><span·class="p"·data-group-id="7171708694-20">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="7171708694-20">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·89,·SHA:·d34c414effd2cc666425f68ffb935c7cee1be14f96e90b1faf214447bf0478e5·...·]94-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
230 ····</span><span·class="nf">free</span><span·class="p"·data-group-id="0841788594-21">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="0841788594-21">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·=&gt;·Chs2</span></code></pre><p>Notice·the·following:</p><ul><li>The·code·in·<code·class="inline">server</code>·can·be·reused·to·build·many·different·servers.</li><li>The·server·name,·in·this·example·the·atom·<code·class="inline">ch2</code>,·is·hidden·from·the·users·of230 ····</span><span·class="nf">free</span><span·class="p"·data-group-id="7171708694-21">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="7171708694-21">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·=&gt;·Chs2</span></code></pre><p>Notice·the·following:</p><ul><li>The·code·in·<code·class="inline">server</code>·can·be·reused·to·build·many·different·servers.</li><li>The·server·name,·in·this·example·the·atom·<code·class="inline">ch2</code>,·is·hidden·from·the·users·of
231 the·client·functions.·This·means·that·the·name·can·be·changed·without231 the·client·functions.·This·means·that·the·name·can·be·changed·without
232 affecting·them.</li><li>The·protocol·(messages·sent·to·and·received·from·the·server)·is·also·hidden.232 affecting·them.</li><li>The·protocol·(messages·sent·to·and·received·from·the·server)·is·also·hidden.
233 This·is·good·programming·practice·and·allows·one·to·change·the·protocol233 This·is·good·programming·practice·and·allows·one·to·change·the·protocol
234 without·changing·the·code·using·the·interface·functions.</li><li>The·functionality·of·<code·class="inline">server</code>·can·be·extended·without·having·to·change·<code·class="inline">ch2</code>234 without·changing·the·code·using·the·interface·functions.</li><li>The·functionality·of·<code·class="inline">server</code>·can·be·extended·without·having·to·change·<code·class="inline">ch2</code>
235 or·any·other·callback·module.</li></ul><p>In·<code·class="inline">ch1.erl</code>·and·<code·class="inline">ch2.erl</code>·above,·the·implementation·of·<code·class="inline">channels/0</code>,·<code·class="inline">alloc/1</code>,235 or·any·other·callback·module.</li></ul><p>In·<code·class="inline">ch1.erl</code>·and·<code·class="inline">ch2.erl</code>·above,·the·implementation·of·<code·class="inline">channels/0</code>,·<code·class="inline">alloc/1</code>,
236 and·<code·class="inline">free/2</code>·has·been·intentionally·left·out,·as·it·is·not·relevant·to·the236 and·<code·class="inline">free/2</code>·has·been·intentionally·left·out,·as·it·is·not·relevant·to·the
237 example.·For·completeness,·one·way·to·write·these·functions·is·given·below.·This237 example.·For·completeness,·one·way·to·write·these·functions·is·given·below.·This
238 is·an·example·only,·a·realistic·implementation·must·be·able·to·handle·situations238 is·an·example·only,·a·realistic·implementation·must·be·able·to·handle·situations
239 like·running·out·of·channels·to·allocate,·and·so·on.</p><p><a·href=""·id="channels-implementation"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">channels</span><span·class="p"·data-group-id="5061407542-1">(</span><span·class="p"·data-group-id="5061407542-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">239 like·running·out·of·channels·to·allocate,·and·so·on.</p><p><a·href=""·id="channels-implementation"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">channels</span><span·class="p"·data-group-id="4670924778-1">(</span><span·class="p"·data-group-id="4670924778-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
240 ···</span><span·class="p"·data-group-id="5061407542-2">{</span><span·class="p">_</span><span·class="n">Allocated</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5061407542-3">[</span><span·class="p"·data-group-id="5061407542-3">]</span>[·...·truncated·by·diffoscope;·len:·498,·SHA:·509e3b17260ace9b30a6a7babe31e511e9d666bb092cf52a597c77d4ce814185·...·]-2">}</span><span·class="p">.</span><span·class="w">240 ···</span><span·class="p"·data-group-id="4670924778-2">{</span><span·class="p">_</span><span·class="n">Allocated</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4670924778-3">[</span><span·class="p"·data-group-id="4670924778-3">]</span>[·...·truncated·by·diffoscope;·len:·498,·SHA:·bdca153eded4b205300f1f872c7e0a60ddcaddb7704715c08dff4c3974c9fe38·...·]-2">}</span><span·class="p">.</span><span·class="w">
  
241 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="5061407542-5">(</span><span·class="p"·data-group-id="5061407542-6">{</span><span·class="n">Allocated</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5061407542-7">[</span><span·class="n">H</span><span·class="p">|</span>[·...·truncated·by·diffoscope;·len:·294,·SHA:·62555074dfb7db9ba439aa6c598bc0ac36b1fa05cb30764d050afe4948b8e45c·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">241 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="4670924778-5">(</span><span·class="p"·data-group-id="4670924778-6">{</span><span·class="n">Allocated</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4670924778-7">[</span><span·class="n">H</span><span·class="p">|</span>[·...·truncated·by·diffoscope;·len:·294,·SHA:·f292abb75ff210edd6459a6f992044e275042a49fc310670325b7492f96696cd·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
242 ···</span><span·class="p"·data-group-id="5061407542-8">{</span><span·class="n">H</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5061407542-9">{</span><span·class="p"·data-group-id="5061407542-10">[</span><span·class="n">H</span><span·class="p">|</span><span·c[·...·truncated·by·diffoscope;·len:·245,·SHA:·3328d0fefdabdda9318743fbd17b1a3cb443a538ca2160facc079f1797f924c7·...·]-8">}</span><span·class="p">.</span><span·class="w">242 ···</span><span·class="p"·data-group-id="4670924778-8">{</span><span·class="n">H</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4670924778-9">{</span><span·class="p"·data-group-id="4670924778-10">[</span><span·class="n">H</span><span·class="p">|</span><span·c[·...·truncated·by·diffoscope;·len:·245,·SHA:·c06b3faa59b257ccfce01128339cce64ef30ef3eecbed487eaae9839193051a3·...·]-8">}</span><span·class="p">.</span><span·class="w">
  
243 </span><span·class="nf">free</span><span·class="p"·data-group-id="5061407542-11">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5061407542-12">{</span><span·class="n">Alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Free</span><sp[·...·truncated·by·diffoscope;·len:·195,·SHA:·729a8ace1e0c50c3d8cdb009fd36545ff669a66a5020b6f9aa0fd73aaac87ce1·...·]-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">243 </span><span·class="nf">free</span><span·class="p"·data-group-id="4670924778-11">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4670924778-12">{</span><span·class="n">Alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Free</span><sp[·...·truncated·by·diffoscope;·len:·195,·SHA:·7f7b1248b16ae5df335f0a85277e926448d306f1fc7ba4fe29a658fc668395a9·...·]-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
244 ···</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="5061407542-13">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Alloc</span><span·class="p"·data-group-id="5061407542-13">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">244 ···</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="4670924778-13">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Alloc</span><span·class="p"·data-group-id="4670924778-13">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
245 ······</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">245 ······</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
246 ·········</span><span·class="p"·data-group-id="5061407542-14">{</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="5061407542-15">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Alloc</[·...·truncated·by·diffoscope;·len:·332,·SHA:·467047766b1d34ab8f300118409b3ad2c8f4b7e373341bd04ecc6e0f32e1571a·...·]-14">}</span><span·class="p">;</span><span·class="w">246 ·········</span><span·class="p"·data-group-id="4670924778-14">{</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="4670924778-15">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Alloc</[·...·truncated·by·diffoscope;·len:·332,·SHA:·fdbb2c049e479ca9ce7bff854ace2e6f469228d4003b42513f5b1b1ed05e3ab0·...·]-14">}</span><span·class="p">;</span><span·class="w">
247 ······</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">247 ······</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
248 ·········</span><span·class="n">Channels</span><span·class="w">248 ·········</span><span·class="n">Channels</span><span·class="w">
249 ···</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Code·written·without·using·behaviours·can·be·more·efficient,·but·the·increased249 ···</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Code·written·without·using·behaviours·can·be·more·efficient,·but·the·increased
250 efficiency·is·at·the·expense·of·generality.·The·ability·to·manage·all250 efficiency·is·at·the·expense·of·generality.·The·ability·to·manage·all
251 applications·in·the·system·in·a·consistent·manner·is·important.</p><p>Using·behaviours·also·makes·it·easier·to·read·and·understand·code·written·by251 applications·in·the·system·in·a·consistent·manner·is·important.</p><p>Using·behaviours·also·makes·it·easier·to·read·and·understand·code·written·by
252 other·programmers.·Improvised·programming·structures,·while·possibly·more252 other·programmers.·Improvised·programming·structures,·while·possibly·more
253 efficient,·are·always·more·difficult·to·understand.</p><p>The·<code·class="inline">server</code>·module·corresponds,·greatly·simplified,·to·the·Erlang/OTP·behaviour253 efficient,·are·always·more·difficult·to·understand.</p><p>The·<code·class="inline">server</code>·module·corresponds,·greatly·simplified,·to·the·Erlang/OTP·behaviour
254 <code·class="inline">gen_server</code>.</p><p>The·standard·Erlang/OTP·behaviours·are:</p><ul><li><p><a·href="gen_server_concepts.html">gen_server</a></p><p>For·implementing·the·server·of·a·client-server·relation</p></li><li><p><a·href="statem.html">gen_statem</a></p><p>For·implementing·state·machines</p></li><li><p><a·href="events.html">gen_event</a></p><p>For·implementing·event·handling·functionality</p></li><li><p><a·href="sup_princ.html">supervisor</a></p><p>For·implementing·a·supervisor·in·a·supervision·tree</p></li></ul><p>The·compiler·understands·the·module·attribute·<code·class="inline">-behaviour(Behaviour)</code>·and·issues254 <code·class="inline">gen_server</code>.</p><p>The·standard·Erlang/OTP·behaviours·are:</p><ul><li><p><a·href="gen_server_concepts.html">gen_server</a></p><p>For·implementing·the·server·of·a·client-server·relation</p></li><li><p><a·href="statem.html">gen_statem</a></p><p>For·implementing·state·machines</p></li><li><p><a·href="events.html">gen_event</a></p><p>For·implementing·event·handling·functionality</p></li><li><p><a·href="sup_princ.html">supervisor</a></p><p>For·implementing·a·supervisor·in·a·supervision·tree</p></li></ul><p>The·compiler·understands·the·module·attribute·<code·class="inline">-behaviour(Behaviour)</code>·and·issues
255 warnings·about·missing·callback·functions,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9255767605-1">(</span><span·class="ss">chs3</span><span·class="p"·data-group-id="9255767605-1">)</span><span·class="p">.</span><span·class="w">255 warnings·about·missing·callback·functions,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1654324124-1">(</span><span·class="ss">chs3</span><span·class="p"·data-group-id="1654324124-1">)</span><span·class="p">.</span><span·class="w">
256 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="9255767605-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="9255767605-2">)</span><span·class="p">.</span><span·class="w">256 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="1654324124-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="1654324124-2">)</span><span·class="p">.</span><span·class="w">
257 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">257 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
  
258 </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">c</span><span·class="p"·data-group-id="9255767605-3">(</span><span·class="ss">chs3</span><span·class="p"·data-group-id="9255767605-3">)</span><span·class="p">.</span><span·class="w">258 </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">c</span><span·class="p"·data-group-id="1654324124-3">(</span><span·class="ss">chs3</span><span·class="p"·data-group-id="1654324124-3">)</span><span·class="p">.</span><span·class="w">
Max diff block lines reached; 1531/60381 bytes (2.54%) of diff not shown.
893 B
html2text {}
Max HTML report size reached
7.13 KB
./usr/share/doc/erlang-doc/html/doc/system/distributed.html
    
Offset 142, 25 lines modifiedOffset 142, 25 lines modified
142 </h2>142 </h2>
143 <p>A·<em>node</em>·is·an·executing·Erlang·runtime·system·that·has·been·given·a·name,·using143 <p>A·<em>node</em>·is·an·executing·Erlang·runtime·system·that·has·been·given·a·name,·using
144 the·command-line·flag·<a·href="../../erts-15.0.1/doc/html/erl_cmd.html#name"><code·class="inline">-name</code></a>·(long·names)·or144 the·command-line·flag·<a·href="../../erts-15.0.1/doc/html/erl_cmd.html#name"><code·class="inline">-name</code></a>·(long·names)·or
145 <a·href="../../erts-15.0.1/doc/html/erl_cmd.html#sname"><code·class="inline">-sname</code></a>·(short·names).</p><p>The·format·of·the·node·name·is·an·atom·<code·class="inline">name@host</code>.·<code·class="inline">name</code>·is·the·name·given·by145 <a·href="../../erts-15.0.1/doc/html/erl_cmd.html#sname"><code·class="inline">-sname</code></a>·(short·names).</p><p>The·format·of·the·node·name·is·an·atom·<code·class="inline">name@host</code>.·<code·class="inline">name</code>·is·the·name·given·by
146 the·user.·<code·class="inline">host</code>·is·the·full·host·name·if·long·names·are·used,·or·the·first·part146 the·user.·<code·class="inline">host</code>·is·the·full·host·name·if·long·names·are·used,·or·the·first·part
147 of·the·host·name·if·short·names·are·used.·Function·<a·href="../../erts-15.0.1/doc/html/erlang.html#node/0"><code·class="inline">node()</code></a>147 of·the·host·name·if·short·names·are·used.·Function·<a·href="../../erts-15.0.1/doc/html/erlang.html#node/0"><code·class="inline">node()</code></a>
148 returns·the·name·of·the·node.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-name·dilbert</span><span·class="w">148 returns·the·name·of·the·node.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-name·dilbert</span><span·class="w">
149 </span><span·class="p"·data-group-id="4434514130-1">(</span><span·class="ss">dilbert@uab</span><span·class="p">.</span><span·class="ss">ericsson</span><span·class="p">.</span><span·class="ss">se</span><span·class="p"·data-group-id="4434514130-1">)</span><span·class="mi">1</span><span·class="o"[·...·truncated·by·diffoscope;·len:·158,·SHA:·656d6b5531a69971989ee23d7b48a1ad0c972bd59d708c2cbfb2c5a6b2cb57f3·...·]-2">)</span><span·class="p">.</span><span·class="w">149 </span><span·class="p"·data-group-id="1449465793-1">(</span><span·class="ss">dilbert@uab</span><span·class="p">.</span><span·class="ss">ericsson</span><span·class="p">.</span><span·class="ss">se</span><span·class="p"·data-group-id="1449465793-1">)</span><span·class="mi">1</span><span·class="o"[·...·truncated·by·diffoscope;·len:·158,·SHA:·0cec33055c854fafd5667a7527a7ba07074de2bc7706e545ed99473c34cc616f·...·]-2">)</span><span·class="p">.</span><span·class="w">
150 </span><span·class="ss">&#39;dilbert@uab.ericsson.se&#39;</span><span·class="w">150 </span><span·class="ss">&#39;dilbert@uab.ericsson.se&#39;</span><span·class="w">
  
151 </span><span·class="c1">%·erl·-sname·dilbert</span><span·class="gp·unselectable">151 </span><span·class="c1">%·erl·-sname·dilbert</span><span·class="gp·unselectable">
152 (dilbert@uab)1&gt;·</span><span·class="nf">node</span><span·class="p"·data-group-id="4434514130-3">(</span><span·class="p"·data-group-id="4434514130-3">)</span><span·class="p">.</span><span·class="w">152 (dilbert@uab)1&gt;·</span><span·class="nf">node</span><span·class="p"·data-group-id="1449465793-3">(</span><span·class="p"·data-group-id="1449465793-3">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="ss">dilbert@uab</span></code></pre><p>The·node·name·can·also·be·given·in·runtime·by·calling·<a·href="../../lib/kernel-10.0.1/doc/html/net_kernel.html#start/1"><code·class="inline">net_kernel:start/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl</span><span·class="gp·unselectable">153 </span><span·class="ss">dilbert@uab</span></code></pre><p>The·node·name·can·also·be·given·in·runtime·by·calling·<a·href="../../lib/kernel-10.0.1/doc/html/net_kernel.html#start/1"><code·class="inline">net_kernel:start/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl</span><span·class="gp·unselectable">
154 1&gt;·</span><span·class="nf">node</span><span·class="p"·data-group-id="9624541012-1">(</span><span·class="p"·data-group-id="9624541012-1">)</span><span·class="p">.</span><span·class="w">154 1&gt;·</span><span·class="nf">node</span><span·class="p"·data-group-id="5069935979-1">(</span><span·class="p"·data-group-id="5069935979-1">)</span><span·class="p">.</span><span·class="w">
155 </span><span·class="ss">nonode@nohost</span><span·class="gp·unselectable">155 </span><span·class="ss">nonode@nohost</span><span·class="gp·unselectable">
156 2&gt;·</span><span·class="nc">net_kernel</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="9624541012-2">(</span><span·class="p"·data-group-id="9624541012-3">[</span><span·class="ss">dilbert</span><span·class="p">,</span><span·class="ss">shortnames</span><span·class="p"·data-group-id="9624541012-3">]</span><span·class="p"·data-group-id="96245410[·...·truncated·by·diffoscope;·len:·2,·SHA:·6b51d431df5d7f141cbececcf79edf3dd861c3b4069f0b11661a3eefacbba918·...·]-2">)</span><span·class="p">.</span><span·class="w">156 2&gt;·</span><span·class="nc">net_kernel</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="5069935979-2">(</span><span·class="p"·data-group-id="5069935979-3">[</span><span·class="ss">dilbert</span><span·class="p">,</span><span·class="ss">shortnames</span><span·class="p"·data-group-id="5069935979-3">]</span><span·class="p"·data-group-id="50699359[·...·truncated·by·diffoscope;·len:·2,·SHA:·98a3ab7c340e8a033e7b37b6ef9428751581760af67bbab2b9e05d4964a8874a·...·]-2">)</span><span·class="p">.</span><span·class="w">
157 </span><span·class="p"·data-group-id="9624541012-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.102</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="9624541012-4">}</span><span·class="gp·unselectable">157 </span><span·class="p"·data-group-id="5069935979-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.102</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="5069935979-4">}</span><span·class="gp·unselectable">
158 (dilbert@uab)3&gt;·</span><span·class="nf">node</span><span·class="p"·data-group-id="9624541012-5">(</span><span·class="p"·data-group-id="9624541012-5">)</span><span·class="p">.</span><span·class="w">158 (dilbert@uab)3&gt;·</span><span·class="nf">node</span><span·class="p"·data-group-id="5069935979-5">(</span><span·class="p"·data-group-id="5069935979-5">)</span><span·class="p">.</span><span·class="w">
159 </span><span·class="ss">dilbert@uab</span></code></pre><blockquote><h4·class="info">Note</h4><p>A·node·with·a·long·node·name·cannot·communicate·with·a·node·with·a·short·node159 </span><span·class="ss">dilbert@uab</span></code></pre><blockquote><h4·class="info">Note</h4><p>A·node·with·a·long·node·name·cannot·communicate·with·a·node·with·a·short·node
160 name.</p></blockquote><h2·id="node-connections"·class="section-heading">160 name.</p></blockquote><h2·id="node-connections"·class="section-heading">
161 ··<a·href="#node-connections"·class="hover-link">161 ··<a·href="#node-connections"·class="hover-link">
162 ····<i·class="ri-link-m"·aria-hidden="true"></i>162 ····<i·class="ri-link-m"·aria-hidden="true"></i>
163 ··</a>163 ··</a>
164 ··<span·class="text">Node·Connections</span>164 ··<span·class="text">Node·Connections</span>
165 </h2>165 </h2>
Offset 356, 15 lines modifiedOffset 356, 15 lines modified
356 ······<p·class="built-using">356 ······<p·class="built-using">
357 ········Built·using357 ········Built·using
358 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the358 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
359 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>359 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
360 ······</p>360 ······</p>
361 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>361 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
362 ····</footer>362 ····</footer>
363 ··</div>363 ··</div>
364 </main>364 </main>
365 </div>365 </div>
366 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>366 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
367 <script>367 <script>
368 ··document.addEventListener("DOMContentLoaded",·function·()·{368 ··document.addEventListener("DOMContentLoaded",·function·()·{
799 B
html2text {}
Max HTML report size reached
17.6 KB
./usr/share/doc/erlang-doc/html/doc/system/distributed_applications.html
    
Offset 150, 36 lines modifiedOffset 150, 36 lines modified
150 (within·the·time-out·specified·by·<code·class="inline">sync_nodes_timeout</code>).</li><li><p><code·class="inline">sync_nodes_timeout·=·integer()·|·infinity</code>·-·Specifies·how·many·milliseconds150 (within·the·time-out·specified·by·<code·class="inline">sync_nodes_timeout</code>).</li><li><p><code·class="inline">sync_nodes_timeout·=·integer()·|·infinity</code>·-·Specifies·how·many·milliseconds
151 to·wait·for·the·other·nodes·to·start.</p></li></ul><p>When·started,·the·node·waits·for·all·nodes·specified·by·<code·class="inline">sync_nodes_mandatory</code>151 to·wait·for·the·other·nodes·to·start.</p></li></ul><p>When·started,·the·node·waits·for·all·nodes·specified·by·<code·class="inline">sync_nodes_mandatory</code>
152 and·<code·class="inline">sync_nodes_optional</code>·to·come·up.·When·all·nodes·are·up,·or·when·all152 and·<code·class="inline">sync_nodes_optional</code>·to·come·up.·When·all·nodes·are·up,·or·when·all
153 mandatory·nodes·are·up·and·the·time·specified·by·<code·class="inline">sync_nodes_timeout</code>·has153 mandatory·nodes·are·up·and·the·time·specified·by·<code·class="inline">sync_nodes_timeout</code>·has
154 elapsed,·all·applications·start.·If·not·all·mandatory·nodes·are·up,·the·node154 elapsed,·all·applications·start.·If·not·all·mandatory·nodes·are·up,·the·node
155 terminates.</p><p><em>Example:</em></p><p>An·application·<code·class="inline">myapp</code>·is·to·run·at·the·node·<code·class="inline">cp1@cave</code>.·If·this·node·goes·down,155 terminates.</p><p><em>Example:</em></p><p>An·application·<code·class="inline">myapp</code>·is·to·run·at·the·node·<code·class="inline">cp1@cave</code>.·If·this·node·goes·down,
156 <code·class="inline">myapp</code>·is·to·be·restarted·at·<code·class="inline">cp2@cave</code>·or·<code·class="inline">cp3@cave</code>.·A·system·configuration156 <code·class="inline">myapp</code>·is·to·be·restarted·at·<code·class="inline">cp2@cave</code>·or·<code·class="inline">cp3@cave</code>.·A·system·configuration
157 file·<code·class="inline">cp1.config</code>·for·<code·class="inline">cp1@cave</code>·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4880629012-1">[</span><span·class="p"·data-group-id="4880629012-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">157 file·<code·class="inline">cp1.config</code>·for·<code·class="inline">cp1@cave</code>·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8004299045-1">[</span><span·class="p"·data-group-id="8004299045-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
158 ··</span><span·class="p"·data-group-id="4880629012-3">[</span><span·class="p"·data-group-id="4880629012-4">{</span><span·class="ss">distributed</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4880629012-5">[</span><span·class="p"·data-group-id="4880629012-6">[·...·truncated·by·diffoscope;·len:·712,·SHA:·8e5558c2e02c1156ef87a86e015ac723533f5a6ba275eafef72f84809f7d8d3b·...·]-4">}</span><span·class="p">,</span><span·class="w">158 ··</span><span·class="p"·data-group-id="8004299045-3">[</span><span·class="p"·data-group-id="8004299045-4">{</span><span·class="ss">distributed</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8004299045-5">[</span><span·class="p"·data-group-id="8004299045-6">[·...·truncated·by·diffoscope;·len:·712,·SHA:·b8b31ba069e66605709b1658936f05ddf448870835022bc3448e2c637eaed78c·...·]-4">}</span><span·class="p">,</span><span·class="w">
159 ···</span><span·class="p"·data-group-id="4880629012-9">{</span><span·class="ss">sync_nodes_mandatory</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4880629012-10">[</span><span·class="ss">cp2@cave</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·119,·SHA:·506c1563000e67ab86a4d01d6dce8a359ea440fc426bfc80c2dab6dd8e85cdb9·...·]-9">}</span><span·class="p">,</span><span·class="w">159 ···</span><span·class="p"·data-group-id="8004299045-9">{</span><span·class="ss">sync_nodes_mandatory</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8004299045-10">[</span><span·class="ss">cp2@cave</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·119,·SHA:·7ad93c95199a9620304dfe27ccd24fb4479b53fe2fa3b7c4d47ce221dee7274b·...·]-9">}</span><span·class="p">,</span><span·class="w">
160 ···</span><span·class="p"·data-group-id="4880629012-11">{</span><span·class="ss">sync_nodes_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5000</span><span·class="p"·data-group-id="4880629012-11">}</span><span·class="w">160 ···</span><span·class="p"·data-group-id="8004299045-11">{</span><span·class="ss">sync_nodes_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5000</span><span·class="p"·data-group-id="8004299045-11">}</span><span·class="w">
161 ··</span><span·class="p"·data-group-id="4880629012-3">]</span><span·class="w">161 ··</span><span·class="p"·data-group-id="8004299045-3">]</span><span·class="w">
162 ·</span><span·class="p"·data-group-id="4880629012-2">}</span><span·class="w">162 ·</span><span·class="p"·data-group-id="8004299045-2">}</span><span·class="w">
163 </span><span·class="p"·data-group-id="4880629012-1">]</span><span·class="p">.</span></code></pre><p>The·system·configuration·files·for·<code·class="inline">cp2@cave</code>·and·<code·class="inline">cp3@cave</code>·are·identical,163 </span><span·class="p"·data-group-id="8004299045-1">]</span><span·class="p">.</span></code></pre><p>The·system·configuration·files·for·<code·class="inline">cp2@cave</code>·and·<code·class="inline">cp3@cave</code>·are·identical,
164 except·for·the·list·of·mandatory·nodes,·which·is·to·be·<code·class="inline">[cp1@cave,·cp3@cave]</code>164 except·for·the·list·of·mandatory·nodes,·which·is·to·be·<code·class="inline">[cp1@cave,·cp3@cave]</code>
165 for·<code·class="inline">cp2@cave</code>·and·<code·class="inline">[cp1@cave,·cp2@cave]</code>·for·<code·class="inline">cp3@cave</code>.</p><blockquote><h4·class="info">Note</h4><p>All·involved·nodes·must·have·the·same·value·for·<code·class="inline">distributed</code>·and165 for·<code·class="inline">cp2@cave</code>·and·<code·class="inline">[cp1@cave,·cp2@cave]</code>·for·<code·class="inline">cp3@cave</code>.</p><blockquote><h4·class="info">Note</h4><p>All·involved·nodes·must·have·the·same·value·for·<code·class="inline">distributed</code>·and
166 <code·class="inline">sync_nodes_timeout</code>.·Otherwise·the·system·behavior·is·undefined.</p></blockquote><h2·id="starting-and-stopping-distributed-applications"·class="section-heading">166 <code·class="inline">sync_nodes_timeout</code>.·Otherwise·the·system·behavior·is·undefined.</p></blockquote><h2·id="starting-and-stopping-distributed-applications"·class="section-heading">
167 ··<a·href="#starting-and-stopping-distributed-applications"·class="hover-link">167 ··<a·href="#starting-and-stopping-distributed-applications"·class="hover-link">
168 ····<i·class="ri-link-m"·aria-hidden="true"></i>168 ····<i·class="ri-link-m"·aria-hidden="true"></i>
169 ··</a>169 ··</a>
170 ··<span·class="text">Starting·and·Stopping·Distributed·Applications</span>170 ··<span·class="text">Starting·and·Stopping·Distributed·Applications</span>
171 </h2>171 </h2>
172 <p>When·all·involved·(mandatory)·nodes·have·been·started,·the·distributed172 <p>When·all·involved·(mandatory)·nodes·have·been·started,·the·distributed
173 application·can·be·started·by·calling·<code·class="inline">application:start(Application)</code>·at·<em>all173 application·can·be·started·by·calling·<code·class="inline">application:start(Application)</code>·at·<em>all
174 of·these·nodes.</em></p><p>A·boot·script·(see·<a·href="release_structure.html">Releases</a>)·can·be·used·that174 of·these·nodes.</em></p><p>A·boot·script·(see·<a·href="release_structure.html">Releases</a>)·can·be·used·that
175 automatically·starts·the·application.</p><p>The·application·is·started·at·the·first·operational·node·that·is·listed·in·the175 automatically·starts·the·application.</p><p>The·application·is·started·at·the·first·operational·node·that·is·listed·in·the
176 list·of·nodes·in·the·<code·class="inline">distributed</code>·configuration·parameter.·The·application·is176 list·of·nodes·in·the·<code·class="inline">distributed</code>·configuration·parameter.·The·application·is
177 started·as·usual.·That·is,·an·application·master·is·created·and·calls·the177 started·as·usual.·That·is,·an·application·master·is·created·and·calls·the
178 application·callback·function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Module</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="3603627103-1">(</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StartArgs</span><span·class="p"·data-group-id="3603627103-1">)</span></code></pre><p>Example:</p><p>Continuing·the·example·from·the·previous·section,·the·three·nodes·are·started,178 application·callback·function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Module</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8145898529-1">(</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StartArgs</span><span·class="p"·data-group-id="8145898529-1">)</span></code></pre><p>Example:</p><p>Continuing·the·example·from·the·previous·section,·the·three·nodes·are·started,
179 specifying·the·system·configuration·file:</p><pre><code·class="text">&gt;·erl·-sname·cp1·-config·cp1179 specifying·the·system·configuration·file:</p><pre><code·class="text">&gt;·erl·-sname·cp1·-config·cp1
180 &gt;·erl·-sname·cp2·-config·cp2180 &gt;·erl·-sname·cp2·-config·cp2
181 &gt;·erl·-sname·cp3·-config·cp3</code></pre><p>When·all·nodes·are·operational,·<code·class="inline">myapp</code>·can·be·started.·This·is·achieved·by181 &gt;·erl·-sname·cp3·-config·cp3</code></pre><p>When·all·nodes·are·operational,·<code·class="inline">myapp</code>·can·be·started.·This·is·achieved·by
182 calling·<code·class="inline">application:start(myapp)</code>·at·all·three·nodes.·It·is·then·started·at182 calling·<code·class="inline">application:start(myapp)</code>·at·all·three·nodes.·It·is·then·started·at
183 <code·class="inline">cp1</code>,·as·shown·in·the·following·figure:</p><p><a·href=""·id="dist1"></a></p><p><img·src="assets/dist1.gif"·alt="Application·myapp·-·Situation·1"·title="Application·myapp·-·Situation·1"/></p><p>Similarly,·the·application·must·be·stopped·by·calling183 <code·class="inline">cp1</code>,·as·shown·in·the·following·figure:</p><p><a·href=""·id="dist1"></a></p><p><img·src="assets/dist1.gif"·alt="Application·myapp·-·Situation·1"·title="Application·myapp·-·Situation·1"/></p><p>Similarly,·the·application·must·be·stopped·by·calling
184 <code·class="inline">application:stop(Application)</code>·at·all·involved·nodes.</p><h2·id="failover"·class="section-heading">184 <code·class="inline">application:stop(Application)</code>·at·all·involved·nodes.</p><h2·id="failover"·class="section-heading">
185 ··<a·href="#failover"·class="hover-link">185 ··<a·href="#failover"·class="hover-link">
Offset 187, 30 lines modifiedOffset 187, 30 lines modified
187 ··</a>187 ··</a>
188 ··<span·class="text">Failover</span>188 ··<span·class="text">Failover</span>
189 </h2>189 </h2>
190 <p>If·the·node·where·the·application·is·running·goes·down,·the·application·is190 <p>If·the·node·where·the·application·is·running·goes·down,·the·application·is
191 restarted·(after·the·specified·time-out)·at·the·first·operational·node·that·is191 restarted·(after·the·specified·time-out)·at·the·first·operational·node·that·is
192 listed·in·the·list·of·nodes·in·the·<code·class="inline">distributed</code>·configuration·parameter.·This192 listed·in·the·list·of·nodes·in·the·<code·class="inline">distributed</code>·configuration·parameter.·This
193 is·called·a·<em>failover</em>.</p><p>The·application·is·started·the·normal·way·at·the·new·node,·that·is,·by·the193 is·called·a·<em>failover</em>.</p><p>The·application·is·started·the·normal·way·at·the·new·node,·that·is,·by·the
194 application·master·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Module</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="0275272758-1">(</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StartArgs</span><span·class="p"·data-group-id="0275272758-1">)</span></code></pre><p>An·exception·is·if·the·application·has·the·<code·class="inline">start_phases</code>·key·defined·(see194 application·master·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Module</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="5801054820-1">(</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StartArgs</span><span·class="p"·data-group-id="5801054820-1">)</span></code></pre><p>An·exception·is·if·the·application·has·the·<code·class="inline">start_phases</code>·key·defined·(see
195 <a·href="included_applications.html">Included·Applications</a>).·The·application·is·then195 <a·href="included_applications.html">Included·Applications</a>).·The·application·is·then
196 instead·started·by·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Module</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="3859752232-1">(</span><span·class="p"·data-group-id="3859752232-2">{</span><span·class="ss">failover</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="3859752232-2">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·99,·SHA:·40b9a146745f60ef28d292eb89ff6f3ef3010c6005307f21d8e3019d1a09739c·...·]2-1">)</span></code></pre><p>Here·<code·class="inline">Node</code>·is·the·terminated·node.</p><p><em>Example:</em></p><p>If·<code·class="inline">cp1</code>·goes·down,·the·system·checks·which·one·of·the·other·nodes,·<code·class="inline">cp2</code>·or196 instead·started·by·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Module</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="0724051602-1">(</span><span·class="p"·data-group-id="0724051602-2">{</span><span·class="ss">failover</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="0724051602-2">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·99,·SHA:·e2209325003a6044a793a2d30ead5d0442e1343d7dcba63a260d5c579043fe49·...·]2-1">)</span></code></pre><p>Here·<code·class="inline">Node</code>·is·the·terminated·node.</p><p><em>Example:</em></p><p>If·<code·class="inline">cp1</code>·goes·down,·the·system·checks·which·one·of·the·other·nodes,·<code·class="inline">cp2</code>·or
197 <code·class="inline">cp3</code>,·has·the·least·number·of·running·applications,·but·waits·for·5·seconds·for197 <code·class="inline">cp3</code>,·has·the·least·number·of·running·applications,·but·waits·for·5·seconds·for
198 <code·class="inline">cp1</code>·to·restart.·If·<code·class="inline">cp1</code>·does·not·restart·and·<code·class="inline">cp2</code>·runs·fewer·applications198 <code·class="inline">cp1</code>·to·restart.·If·<code·class="inline">cp1</code>·does·not·restart·and·<code·class="inline">cp2</code>·runs·fewer·applications
199 than·<code·class="inline">cp3</code>,·<code·class="inline">myapp</code>·is·restarted·on·<code·class="inline">cp2</code>.</p><p><a·href=""·id="dist2"></a></p><p><img·src="assets/dist2.gif"·alt="Application·myapp·-·Situation·2"·title="Application·myapp·-·Situation·2"/></p><p>Suppose·now·that·<code·class="inline">cp2</code>·goes·also·down·and·does·not·restart·within·5·seconds.199 than·<code·class="inline">cp3</code>,·<code·class="inline">myapp</code>·is·restarted·on·<code·class="inline">cp2</code>.</p><p><a·href=""·id="dist2"></a></p><p><img·src="assets/dist2.gif"·alt="Application·myapp·-·Situation·2"·title="Application·myapp·-·Situation·2"/></p><p>Suppose·now·that·<code·class="inline">cp2</code>·goes·also·down·and·does·not·restart·within·5·seconds.
200 <code·class="inline">myapp</code>·is·now·restarted·on·<code·class="inline">cp3</code>.</p><p><a·href=""·id="dist3"></a></p><p><img·src="assets/dist3.gif"·alt="Application·myapp·-·Situation·3"·title="Application·myapp·-·Situation·3"/></p><h2·id="takeover"·class="section-heading">200 <code·class="inline">myapp</code>·is·now·restarted·on·<code·class="inline">cp3</code>.</p><p><a·href=""·id="dist3"></a></p><p><img·src="assets/dist3.gif"·alt="Application·myapp·-·Situation·3"·title="Application·myapp·-·Situation·3"/></p><h2·id="takeover"·class="section-heading">
201 ··<a·href="#takeover"·class="hover-link">201 ··<a·href="#takeover"·class="hover-link">
202 ····<i·class="ri-link-m"·aria-hidden="true"></i>202 ····<i·class="ri-link-m"·aria-hidden="true"></i>
203 ··</a>203 ··</a>
204 ··<span·class="text">Takeover</span>204 ··<span·class="text">Takeover</span>
205 </h2>205 </h2>
206 <p>If·a·node·is·started,·which·has·higher·priority·according·to·<code·class="inline">distributed</code>·than206 <p>If·a·node·is·started,·which·has·higher·priority·according·to·<code·class="inline">distributed</code>·than
207 the·node·where·a·distributed·application·is·running,·the·application·is207 the·node·where·a·distributed·application·is·running,·the·application·is
208 restarted·at·the·new·node·and·stopped·at·the·old·node.·This·is·called·a208 restarted·at·the·new·node·and·stopped·at·the·old·node.·This·is·called·a
209 <em>takeover</em>.</p><p>The·application·is·started·by·the·application·master·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Module</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="4441204084-1">(</span><span·class="p"·data-group-id="4441204084-2">{</span><span·class="ss">takeover</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="4441204084-2">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·100,·SHA:·d7c27cf29c67dcd3e582152f745e54b6029317824ed094214df310cb00da2b7e·...·]-1">)</span></code></pre><p>Here·<code·class="inline">Node</code>·is·the·old·node.</p><p><em>Example:</em></p><p>If·<code·class="inline">myapp</code>·is·running·at·<code·class="inline">cp3</code>,·and·if·<code·class="inline">cp2</code>·now·restarts,·it·does·not·restart209 <em>takeover</em>.</p><p>The·application·is·started·by·the·application·master·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Module</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="6583291990-1">(</span><span·class="p"·data-group-id="6583291990-2">{</span><span·class="ss">takeover</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="6583291990-2">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·100,·SHA:·eee3987763707e3554da703537fd98ad7aef0de0a0028a1016b67afca511b341·...·]-1">)</span></code></pre><p>Here·<code·class="inline">Node</code>·is·the·old·node.</p><p><em>Example:</em></p><p>If·<code·class="inline">myapp</code>·is·running·at·<code·class="inline">cp3</code>,·and·if·<code·class="inline">cp2</code>·now·restarts,·it·does·not·restart
210 <code·class="inline">myapp</code>,·as·the·order·between·the·<code·class="inline">cp2</code>·and·<code·class="inline">cp3</code>·nodes·is·undefined.</p><p><a·href=""·id="dist4"></a></p><p><img·src="assets/dist4.gif"·alt="Application·myapp·-·Situation·4"·title="Application·myapp·-·Situation·4"/></p><p>However,·if·<code·class="inline">cp1</code>·also·restarts,·the·function·<a·href="../../lib/kernel-10.0.1/doc/html/application.html#takeover/2"><code·class="inline">application:takeover/2</code></a>·moves210 <code·class="inline">myapp</code>,·as·the·order·between·the·<code·class="inline">cp2</code>·and·<code·class="inline">cp3</code>·nodes·is·undefined.</p><p><a·href=""·id="dist4"></a></p><p><img·src="assets/dist4.gif"·alt="Application·myapp·-·Situation·4"·title="Application·myapp·-·Situation·4"/></p><p>However,·if·<code·class="inline">cp1</code>·also·restarts,·the·function·<a·href="../../lib/kernel-10.0.1/doc/html/application.html#takeover/2"><code·class="inline">application:takeover/2</code></a>·moves
211 <code·class="inline">myapp</code>·to·<code·class="inline">cp1</code>,·as·<code·class="inline">cp1</code>·has·a·higher·priority·than·<code·class="inline">cp3</code>·for·this211 <code·class="inline">myapp</code>·to·<code·class="inline">cp1</code>,·as·<code·class="inline">cp1</code>·has·a·higher·priority·than·<code·class="inline">cp3</code>·for·this
212 application.·In·this·case,·<code·class="inline">Module:start({takeover,·cp3@cave},·StartArgs)</code>·is212 application.·In·this·case,·<code·class="inline">Module:start({takeover,·cp3@cave},·StartArgs)</code>·is
213 executed·at·<code·class="inline">cp1</code>·to·start·the·application.</p><p><a·href=""·id="dist5"></a></p><p><img·src="assets/dist5.gif"·alt="Application·myapp·-·Situation·5"·title="Application·myapp·-·Situation·5"/></p>213 executed·at·<code·class="inline">cp1</code>·to·start·the·application.</p><p><a·href=""·id="dist5"></a></p><p><img·src="assets/dist5.gif"·alt="Application·myapp·-·Situation·5"·title="Application·myapp·-·Situation·5"/></p>
214 </div>214 </div>
  
215 <div·class="bottom-actions"·id="bottom-actions">215 <div·class="bottom-actions"·id="bottom-actions">
Offset 257, 15 lines modifiedOffset 257, 15 lines modified
257 ······<p·class="built-using">257 ······<p·class="built-using">
258 ········Built·using258 ········Built·using
259 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the259 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
260 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>260 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
261 ······</p>261 ······</p>
262 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>262 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
263 ····</footer>263 ····</footer>
264 ··</div>264 ··</div>
265 </main>265 </main>
266 </div>266 </div>
267 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>267 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
268 <script>268 <script>
269 ··document.addEventListener("DOMContentLoaded",·function·()·{269 ··document.addEventListener("DOMContentLoaded",·function·()·{
676 B
html2text {}
Max HTML report size reached
66.2 KB
./usr/share/doc/erlang-doc/html/doc/system/documentation.html
    
Offset 112, 23 lines modifiedOffset 112, 23 lines modified
112 ······</a>112 ······</a>
  
  
113 ····<span>Documentation</span>113 ····<span>Documentation</span>
114 ··</h1>114 ··</h1>
  
115 <p>Documentation·in·Erlang·is·done·through·the·<code·class="inline">-moduledoc</code>·and·<code·class="inline">-doc</code>115 <p>Documentation·in·Erlang·is·done·through·the·<code·class="inline">-moduledoc</code>·and·<code·class="inline">-doc</code>
116 <a·href="modules.html#module-attributes">attributes</a>.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2684949194-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="2684949194-1">)</span><span·class="p">.</span><span·class="w">116 <a·href="modules.html#module-attributes">attributes</a>.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9815974022-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="9815974022-1">)</span><span·class="p">.</span><span·class="w">
117 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="s">&quot;&quot;&quot;117 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="s">&quot;&quot;&quot;
118 A·module·for·basic·arithmetic.118 A·module·for·basic·arithmetic.
119 &quot;&quot;&quot;</span><span·class="p">.</span><span·class="w">119 &quot;&quot;&quot;</span><span·class="p">.</span><span·class="w">
120 </span><span·class="w">120 </span><span·class="w">
121 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2684949194-2">(</span><span·class="p"·data-group-id="2684949194-3">[</span><span·class="ss">add</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="2684949194-3">]</span><span·class="p"·data-group-id="2684949194-2">)</span><span·class="p">.</span><span·class="w">121 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9815974022-2">(</span><span·class="p"·data-group-id="9815974022-3">[</span><span·class="ss">add</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="9815974022-3">]</span><span·class="p"·data-group-id="9815974022-2">)</span><span·class="p">.</span><span·class="w">
122 </span><span·class="w">122 </span><span·class="w">
123 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;Adds·two·numbers.&quot;</span><span·class="w">123 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;Adds·two·numbers.&quot;</span><span·class="w">
124 </span><span·class="nf">add</span><span·class="p"·data-group-id="2684949194-4">(</span><span·class="n">One</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Two</span><span·class="p"·data-group-id="2684949194-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">One</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Two</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">-moduledoc</code>·attribute·has·to·be·located·before·the·first·<code·class="inline">-doc</code>·attribute124 </span><span·class="nf">add</span><span·class="p"·data-group-id="9815974022-4">(</span><span·class="n">One</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Two</span><span·class="p"·data-group-id="9815974022-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">One</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Two</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">-moduledoc</code>·attribute·has·to·be·located·before·the·first·<code·class="inline">-doc</code>·attribute
125 or·function·declaration.·It·documents·the·overall·purpose·of·the·module.</p><p>The·<code·class="inline">-doc</code>·attribute·always·precedes·the·<a·href="ref_man_functions.html">function</a>·or125 or·function·declaration.·It·documents·the·overall·purpose·of·the·module.</p><p>The·<code·class="inline">-doc</code>·attribute·always·precedes·the·<a·href="ref_man_functions.html">function</a>·or
126 <a·href="modules.html#module-attributes">attribute</a>·it·documents.·The126 <a·href="modules.html#module-attributes">attribute</a>·it·documents.·The
127 attributes·that·can·be·documented·are127 attributes·that·can·be·documented·are
128 <a·href="typespec.html#type-declarations-of-user-defined-types">user-defined·types</a>128 <a·href="typespec.html#type-declarations-of-user-defined-types">user-defined·types</a>
129 (<code·class="inline">-type</code>·and·<code·class="inline">-opaque</code>)·and129 (<code·class="inline">-type</code>·and·<code·class="inline">-opaque</code>)·and
130 <a·href="modules.html#behaviour-module-attribute">behaviour·module·attributes</a>130 <a·href="modules.html#behaviour-module-attribute">behaviour·module·attributes</a>
131 (<code·class="inline">-callback</code>).</p><p>By·default·the·format·used·for·documentation·attributes·is131 (<code·class="inline">-callback</code>).</p><p>By·default·the·format·used·for·documentation·attributes·is
Offset 140, 55 lines modifiedOffset 140, 55 lines modified
140 <a·href="modules.html#documentation-attributes">Documentation·Attributes</a>.</p><p><code·class="inline">-doc</code>·attributes·have·been·available·since·Erlang/OTP·27.</p><h2·id="documentation-metadata"·class="section-heading">140 <a·href="modules.html#documentation-attributes">Documentation·Attributes</a>.</p><p><code·class="inline">-doc</code>·attributes·have·been·available·since·Erlang/OTP·27.</p><h2·id="documentation-metadata"·class="section-heading">
141 ··<a·href="#documentation-metadata"·class="hover-link">141 ··<a·href="#documentation-metadata"·class="hover-link">
142 ····<i·class="ri-link-m"·aria-hidden="true"></i>142 ····<i·class="ri-link-m"·aria-hidden="true"></i>
143 ··</a>143 ··</a>
144 ··<span·class="text">Documentation·metadata</span>144 ··<span·class="text">Documentation·metadata</span>
145 </h2>145 </h2>
146 <p>It·is·possible·to·add·metadata·to·the·documentation·entry.·You·do·this·by·adding146 <p>It·is·possible·to·add·metadata·to·the·documentation·entry.·You·do·this·by·adding
147 a·<code·class="inline">-moduledoc</code>·or·<code·class="inline">-doc</code>·attribute·with·a·map·as·argument.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2664381063-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="2664381063-1">)</span><span·class="p">.</span><span·class="w">147 a·<code·class="inline">-moduledoc</code>·or·<code·class="inline">-doc</code>·attribute·with·a·map·as·argument.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4996503139-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="4996503139-1">)</span><span·class="p">.</span><span·class="w">
148 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="s">&quot;&quot;&quot;148 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="s">&quot;&quot;&quot;
149 A·module·for·basic·arithmetic.149 A·module·for·basic·arithmetic.
150 &quot;&quot;&quot;</span><span·class="p">.</span><span·class="w">150 &quot;&quot;&quot;</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="p"·data-group-id="2664381063-2">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;1.0&quot;</span><span·class="p"·data-group-id="2664381063-2">}</span><span·class="p">.</span><span·class="w">151 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="p"·data-group-id="4996503139-2">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;1.0&quot;</span><span·class="p"·data-group-id="4996503139-2">}</span><span·class="p">.</span><span·class="w">
152 </span><span·class="w">152 </span><span·class="w">
153 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2664381063-3">(</span><span·class="p"·data-group-id="2664381063-4">[</span><span·class="ss">add</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="2664381063-4">]</span><span·class="p"·data-group-id="2664381063-3">)</span><span·class="p">.</span><span·class="w">153 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4996503139-3">(</span><span·class="p"·data-group-id="4996503139-4">[</span><span·class="ss">add</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="4996503139-4">]</span><span·class="p"·data-group-id="4996503139-3">)</span><span·class="p">.</span><span·class="w">
154 </span><span·class="w">154 </span><span·class="w">
155 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;Adds·two·numbers.&quot;</span><span·class="w">155 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;Adds·two·numbers.&quot;</span><span·class="w">
156 </span><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="2664381063-5">(</span><span·class="p"·data-group-id="2664381063-6">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;1.0&quot;</span><span·class="p"·data-group-id="266438[·...·truncated·by·diffoscope;·len:·57,·SHA:·a4f2b86c43d504c7d413b51a0c6c42e29e5bbf8f123b95e1afd5f1ec620a986a·...·]-5">)</span><span·class="p">.</span><span·class="w">156 </span><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="4996503139-5">(</span><span·class="p"·data-group-id="4996503139-6">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;1.0&quot;</span><span·class="p"·data-group-id="499650[·...·truncated·by·diffoscope;·len:·57,·SHA:·b46c2c61c70d20107849170da63207bbf65f21a2badb07cdbb153088b0416155·...·]-5">)</span><span·class="p">.</span><span·class="w">
157 </span><span·class="nf">add</span><span·class="p"·data-group-id="2664381063-7">(</span><span·class="n">One</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Two</span><span·class="p"·data-group-id="2664381063-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">One</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Two</span><span·class="p">.</span></code></pre><p>The·metadata·is·used·by·documentation·tools·to·provide·extra·information·to·the157 </span><span·class="nf">add</span><span·class="p"·data-group-id="4996503139-7">(</span><span·class="n">One</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Two</span><span·class="p"·data-group-id="4996503139-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">One</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Two</span><span·class="p">.</span></code></pre><p>The·metadata·is·used·by·documentation·tools·to·provide·extra·information·to·the
158 user.·There·can·be·multiple·metadata·documentation·entries,·in·which·case·the158 user.·There·can·be·multiple·metadata·documentation·entries,·in·which·case·the
159 maps·will·be·merged·with·the·latest·taking·precedence·if·there·are·duplicate159 maps·will·be·merged·with·the·latest·taking·precedence·if·there·are·duplicate
160 keys.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;Adds·two·numbers.&quot;</span><span·class="w">160 keys.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;Adds·two·numbers.&quot;</span><span·class="w">
161 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="p"·data-group-id="8659663961-1">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;1.0&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">author</span><span·class=[·...·truncated·by·diffoscope;·len:·143,·SHA:·4b6ebac05182031204b82006828213f0e753d451c73728a7a8b4eef80ccec0e5·...·]-1">}</span><span·class="p">.</span><span·class="w">161 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="p"·data-group-id="9827110244-1">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;1.0&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">author</span><span·class=[·...·truncated·by·diffoscope;·len:·143,·SHA:·c9beae6c288172aac40d4bd912972785a829015b37cd567bf2cb271e48983138·...·]-1">}</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="p"·data-group-id="8659663961-2">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;2.0&quot;</span><span·class="p"·data-group-id="8659663961-2">}</span><span·class="p">.</span><span·class="w">162 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="p"·data-group-id="9827110244-2">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;2.0&quot;</span><span·class="p"·data-group-id="9827110244-2">}</span><span·class="p">.</span><span·class="w">
163 </span><span·class="nf">add</span><span·class="p"·data-group-id="8659663961-3">(</span><span·class="n">One</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Two</span><span·class="p"·data-group-id="8659663961-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">One</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Two</span><span·class="p">.</span></code></pre><p>This·will·result·in·a·metadata·entry·of·<code·class="inline">#{since·=&gt;·&quot;2.0&quot;,·author·=&gt;·&quot;Joe&quot;}</code>.</p><p>The·keys·and·values·in·the·metadata·map·can·be·any·type,·but·it·is·recommended163 </span><span·class="nf">add</span><span·class="p"·data-group-id="9827110244-3">(</span><span·class="n">One</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Two</span><span·class="p"·data-group-id="9827110244-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">One</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Two</span><span·class="p">.</span></code></pre><p>This·will·result·in·a·metadata·entry·of·<code·class="inline">#{since·=&gt;·&quot;2.0&quot;,·author·=&gt;·&quot;Joe&quot;}</code>.</p><p>The·keys·and·values·in·the·metadata·map·can·be·any·type,·but·it·is·recommended
164 that·only·<a·href="data_types.html#atom">atoms</a>·are·used·for·keys·and164 that·only·<a·href="data_types.html#atom">atoms</a>·are·used·for·keys·and
165 <a·href="data_types.html#string">strings</a>·for·the·values.</p><h2·id="external-documentation-files"·class="section-heading">165 <a·href="data_types.html#string">strings</a>·for·the·values.</p><h2·id="external-documentation-files"·class="section-heading">
166 ··<a·href="#external-documentation-files"·class="hover-link">166 ··<a·href="#external-documentation-files"·class="hover-link">
167 ····<i·class="ri-link-m"·aria-hidden="true"></i>167 ····<i·class="ri-link-m"·aria-hidden="true"></i>
168 ··</a>168 ··</a>
169 ··<span·class="text">External·documentation·files</span>169 ··<span·class="text">External·documentation·files</span>
170 </h2>170 </h2>
171 <p>The·<code·class="inline">-moduledoc</code>·and·<code·class="inline">-doc</code>·can·also·be·placed·in·external·files.·To·do·so·use171 <p>The·<code·class="inline">-moduledoc</code>·and·<code·class="inline">-doc</code>·can·also·be·placed·in·external·files.·To·do·so·use
172 <code·class="inline">-doc·{file,·&quot;path/to/doc.md&quot;}</code>·to·point·to·the·documentation.·The·path·used·is172 <code·class="inline">-doc·{file,·&quot;path/to/doc.md&quot;}</code>·to·point·to·the·documentation.·The·path·used·is
173 relative·to·the·file·where·the·<code·class="inline">-doc</code>·attribute·is·located.·For·example:</p><pre><code·class="text">%%·doc/add.md173 relative·to·the·file·where·the·<code·class="inline">-doc</code>·attribute·is·located.·For·example:</p><pre><code·class="text">%%·doc/add.md
174 Adds·two·numbers.</code></pre><p>and</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·src/arith.erl</span><span·class="w">174 Adds·two·numbers.</code></pre><p>and</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·src/arith.erl</span><span·class="w">
175 </span><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="3799456001-1">(</span><span·class="p"·data-group-id="3799456001-2">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;../doc/add.md&quot;</span><span·class="p"·data-group-id="3799456001-2">}</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·750b67fa8934ad2ff97ce3c1751465acc45b9f76e2dea01123bc7f57aed38941·...·]-1">)</span><span·class="p">.</span><span·class="w">175 </span><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="7504752072-1">(</span><span·class="p"·data-group-id="7504752072-2">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;../doc/add.md&quot;</span><span·class="p"·data-group-id="7504752072-2">}</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·2e495a61ffd2b6d974c40e79de2d156c9e15727787c4acae93cefcd4c4219a00·...·]-1">)</span><span·class="p">.</span><span·class="w">
176 </span><span·class="nf">add</span><span·class="p"·data-group-id="3799456001-3">(</span><span·class="n">One</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Two</span><span·class="p"·data-group-id="3799456001-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">One</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Two</span><span·class="p">.</span></code></pre><h2·id="documenting-a-module"·class="section-heading">176 </span><span·class="nf">add</span><span·class="p"·data-group-id="7504752072-3">(</span><span·class="n">One</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Two</span><span·class="p"·data-group-id="7504752072-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">One</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Two</span><span·class="p">.</span></code></pre><h2·id="documenting-a-module"·class="section-heading">
177 ··<a·href="#documenting-a-module"·class="hover-link">177 ··<a·href="#documenting-a-module"·class="hover-link">
178 ····<i·class="ri-link-m"·aria-hidden="true"></i>178 ····<i·class="ri-link-m"·aria-hidden="true"></i>
179 ··</a>179 ··</a>
180 ··<span·class="text">Documenting·a·module</span>180 ··<span·class="text">Documenting·a·module</span>
181 </h2>181 </h2>
182 <p>The·module·description·should·include·details·on·how·to·use·the·API·and·examples182 <p>The·module·description·should·include·details·on·how·to·use·the·API·and·examples
183 of·the·different·functions·working·together.·Here·is·a·good·place·to·use·images183 of·the·different·functions·working·together.·Here·is·a·good·place·to·use·images
184 and·other·diagrams·to·better·show·the·usage·of·the·module.·Instead·of·writing·a184 and·other·diagrams·to·better·show·the·usage·of·the·module.·Instead·of·writing·a
185 long·text·in·the·<code·class="inline">moduledoc</code>·attribute,·it·could·be·better·to·break·it·out·into185 long·text·in·the·<code·class="inline">moduledoc</code>·attribute,·it·could·be·better·to·break·it·out·into
186 an·external·page.</p><p>The·<code·class="inline">moduledoc</code>·attribute·should·start·with·a·short·paragraph·describing·the186 an·external·page.</p><p>The·<code·class="inline">moduledoc</code>·attribute·should·start·with·a·short·paragraph·describing·the
187 module·and·then·go·into·greater·details.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7853917949-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="7853917949-1">)</span><span·class="p">.</span><span·class="w">187 module·and·then·go·into·greater·details.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6884928828-1">(</span><span·class="ss">arith</span><span·class="p"·data-group-id="6884928828-1">)</span><span·class="p">.</span><span·class="w">
188 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="s">&quot;188 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="s">&quot;
189 ···A·module·for·basic·arithmetic.189 ···A·module·for·basic·arithmetic.
  
190 ···This·module·can·be·used·to·add·and·subtract·values.·For·example:190 ···This·module·can·be·used·to·add·and·subtract·values.·For·example:
  
191 ···```erlang191 ···```erlang
192 ···1&gt;·arith:substract(arith:add(2,·3),·1).192 ···1&gt;·arith:substract(arith:add(2,·3),·1).
Offset 203, 95 lines modifiedOffset 203, 95 lines modified
203 <p>There·are·three·reserved·metadata·keys·for·<code·class="inline">-moduledoc</code>:</p><ul><li><code·class="inline">since</code>·-·Shows·in·which·version·of·the·application·the·module·was·added.203 <p>There·are·three·reserved·metadata·keys·for·<code·class="inline">-moduledoc</code>:</p><ul><li><code·class="inline">since</code>·-·Shows·in·which·version·of·the·application·the·module·was·added.
204 If·this·is·added,·all·functions,·types,·and·callbacks·within·will·also·receive204 If·this·is·added,·all·functions,·types,·and·callbacks·within·will·also·receive
205 the·same·<code·class="inline">since</code>·value·unless·specified·in·the·metadata·of·the·function,·type205 the·same·<code·class="inline">since</code>·value·unless·specified·in·the·metadata·of·the·function,·type
206 or·callback.</li><li><code·class="inline">deprecated</code>·-·Shows·a·text·in·the·documentation·explaining·that·it·is206 or·callback.</li><li><code·class="inline">deprecated</code>·-·Shows·a·text·in·the·documentation·explaining·that·it·is
207 deprecated·and·what·to·use·instead.</li><li><code·class="inline">format</code>·-·The·format·to·use·for·all·documentation·in·this·module.·The207 deprecated·and·what·to·use·instead.</li><li><code·class="inline">format</code>·-·The·format·to·use·for·all·documentation·in·this·module.·The
208 default·is·<code·class="inline">text/markdown</code>.·It·should·be·written·using·the208 default·is·<code·class="inline">text/markdown</code>.·It·should·be·written·using·the
209 <a·href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types">mime·type</a>209 <a·href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types">mime·type</a>
210 of·the·format.</li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="p"·data-group-id="5228386878-1">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;../doc/arith.asciidoc&quot;</span><span·class="p"·data-group-id="5228386878-1">}</span><span·class="p">.</span><span·class="w">210 of·the·format.</li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="p"·data-group-id="7099811945-1">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;../doc/arith.asciidoc&quot;</span><span·class="p"·data-group-id="7099811945-1">}</span><span·class="p">.</span><span·class="w">
211 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="p"·data-group-id="5228386878-2">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;0.1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">format</span><span·class=[·...·truncated·by·diffoscope;·len:·153,·SHA:·fc8aec9cb00f4deb37bef72bd1846aefb6ab5a67adbdfb0067a926d6ded7a04b·...·]-2">}</span><span·class="p">.</span><span·class="w">211 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="p"·data-group-id="7099811945-2">#{</span><span·class="ss">since</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;0.1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">format</span><span·class=[·...·truncated·by·diffoscope;·len:·153,·SHA:·62aaa3f3afc918a21dc047b15a35c8e1cc0c1a0089218a51f0b91a37685bc794·...·]-2">}</span><span·class="p">.</span><span·class="w">
212 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="p"·data-group-id="5228386878-3">#{</span><span·class="ss">deprecated</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;Use·the·Erlang·arithmetic·operators·instead.&quot;</span><span·class="p"·data-group-id="5228386878-3">}</span><span·class="p">.</span></code></pre><h2·id="documenting-functions-user-defined-types-and-callbacks"·class="section-heading">212 </span><span·class="p">-</span><span·class="na">moduledoc</span><span·class="w">·</span><span·class="p"·data-group-id="7099811945-3">#{</span><span·class="ss">deprecated</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;Use·the·Erlang·arithmetic·operators·instead.&quot;</span><span·class="p"·data-group-id="7099811945-3">}</span><span·class="p">.</span></code></pre><h2·id="documenting-functions-user-defined-types-and-callbacks"·class="section-heading">
213 ··<a·href="#documenting-functions-user-defined-types-and-callbacks"·class="hover-link">213 ··<a·href="#documenting-functions-user-defined-types-and-callbacks"·class="hover-link">
214 ····<i·class="ri-link-m"·aria-hidden="true"></i>214 ····<i·class="ri-link-m"·aria-hidden="true"></i>
215 ··</a>215 ··</a>
216 ··<span·class="text">Documenting·functions,·user-defined·types,·and·callbacks</span>216 ··<span·class="text">Documenting·functions,·user-defined·types,·and·callbacks</span>
217 </h2>217 </h2>
218 <p>Functions,·types,·and·callbacks·can·be·documented·using·the·<code·class="inline">-doc</code>·attribute.218 <p>Functions,·types,·and·callbacks·can·be·documented·using·the·<code·class="inline">-doc</code>·attribute.
219 Each·entry·should·start·with·a·short·paragraph·describing·the·purpose·of·entity,219 Each·entry·should·start·with·a·short·paragraph·describing·the·purpose·of·entity,
220 and·then·go·into·greater·detail·in·needed.</p><p>It·is·not·recommended·to·include·images·or·diagrams·in·this·documentation·as·it220 and·then·go·into·greater·detail·in·needed.</p><p>It·is·not·recommended·to·include·images·or·diagrams·in·this·documentation·as·it
221 is·used·by·IDEs·and·<a·href="../../lib/stdlib-6.0.1/doc/html/c.html#h/1"><code·class="inline">c:h/1</code></a>·to·show·the·documentation·to·the·user.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;&quot;&quot;221 is·used·by·IDEs·and·<a·href="../../lib/stdlib-6.0.1/doc/html/c.html#h/1"><code·class="inline">c:h/1</code></a>·to·show·the·documentation·to·the·user.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;&quot;&quot;
222 A·number·that·can·be·used·by·the·arith·module.222 A·number·that·can·be·used·by·the·arith·module.
  
223 We·use·a·special·number·here·so·that·we·know223 We·use·a·special·number·here·so·that·we·know
224 that·this·number·comes·from·this·module.224 that·this·number·comes·from·this·module.
225 &quot;&quot;&quot;</span><span·class="p">.</span><span·class="w">225 &quot;&quot;&quot;</span><span·class="p">.</span><span·class="w">
226 </span><span·class="p">-</span><span·class="na">opaque</span><span·class="w">·</span><span·class="nf">number</span><span·class="p"·data-group-id="7140644893-1">(</span><span·class="p"·data-group-id="7140644893-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="7140644893-2">{</span><span·class="ss">arith</span><sp[·...·truncated·by·diffoscope;·len:·276,·SHA:·32d2720f33dd8eb74f0b24865c9fd7fcf24035da4b1740630396b413c8cfc0f7·...·]-2">}</span><span·class="p">.</span><span·class="w">226 </span><span·class="p">-</span><span·class="na">opaque</span><span·class="w">·</span><span·class="nf">number</span><span·class="p"·data-group-id="4503749668-1">(</span><span·class="p"·data-group-id="4503749668-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="4503749668-2">{</span><span·class="ss">arith</span><sp[·...·truncated·by·diffoscope;·len:·276,·SHA:·5b356db013014a26a9c7bf46496f91c64f2273efbb246bbee3bcfb78c6e34d56·...·]-2">}</span><span·class="p">.</span><span·class="w">
227 </span><span·class="w">227 </span><span·class="w">
228 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;&quot;&quot;228 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;&quot;&quot;
229 Adds·two·numbers.229 Adds·two·numbers.
  
230 ###·Example:230 ###·Example:
  
231 ```231 ```
232 1&gt;·arith:add(arith:number(1),·arith:number(2)).·{number,·3}232 1&gt;·arith:add(arith:number(1),·arith:number(2)).·{number,·3}
233 ```233 ```
234 &quot;&quot;&quot;</span><span·class="p">.</span><span·class="w">234 &quot;&quot;&quot;</span><span·class="p">.</span><span·class="w">
235 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">add</span><span·class="p"·data-group-id="7140644893-4">(</span><span·class="nf">number</span><span·class="p"·data-group-id="7140644893-5">(</span><span·class="p"·data-group-id="7140644893-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">number</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·339,·SHA:·b9adc3f48fd13d220eb1581e914fe836d72932281fbfdd44d85cee0984229131·...·]-7">)</span><span·class="p">.</span><span·class="w">235 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">add</span><span·class="p"·data-group-id="4503749668-4">(</span><span·class="nf">number</span><span·class="p"·data-group-id="4503749668-5">(</span><span·class="p"·data-group-id="4503749668-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">number</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·339,·SHA:·e8d4d9b6493ccb70f7f96a1b8368ce03af28e255767d05137019c8dc262277da·...·]-7">)</span><span·class="p">.</span><span·class="w">
236 </span><span·class="nf">add</span><span·class="p"·data-group-id="7140644893-8">(</span><span·class="p"·data-group-id="7140644893-9">{</span><span·class="ss">number</span><span·class="p">,</span><span·class="w">·</span><span·class="n">One</span><span·class="p"·data-group-id="7140644893-9">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·662,·SHA:·826eb5b6d7b6024935ff45c612400be491b2aaf518f54d08569e5609955c9baa·...·]-11">}</span><span·class="p">.</span></code></pre><h3·id="doc-metadata"·class="section-heading">236 </span><span·class="nf">add</span><span·class="p"·data-group-id="4503749668-8">(</span><span·class="p"·data-group-id="4503749668-9">{</span><span·class="ss">number</span><span·class="p">,</span><span·class="w">·</span><span·class="n">One</span><span·class="p"·data-group-id="4503749668-9">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·662,·SHA:·9160574acda9eaee6cd1da2dd112f6160291167f6e66e3040c1b47e1006df0da·...·]-11">}</span><span·class="p">.</span></code></pre><h3·id="doc-metadata"·class="section-heading">
237 ··<a·href="#doc-metadata"·class="hover-link">237 ··<a·href="#doc-metadata"·class="hover-link">
238 ····<i·class="ri-link-m"·aria-hidden="true"></i>238 ····<i·class="ri-link-m"·aria-hidden="true"></i>
239 ··</a>239 ··</a>
240 ··<span·class="text">Doc·metadata</span>240 ··<span·class="text">Doc·metadata</span>
241 </h3>241 </h3>
242 <p>There·are·four·reserved·metadata·keys·for·<code·class="inline">-doc</code>:</p><ul><li><p><code·class="inline">since·=&gt;·unicode:chardata()</code>·-·Shows·which·version·of·the·application·the242 <p>There·are·four·reserved·metadata·keys·for·<code·class="inline">-doc</code>:</p><ul><li><p><code·class="inline">since·=&gt;·unicode:chardata()</code>·-·Shows·which·version·of·the·application·the
243 module·was·added.</p></li><li><p><code·class="inline">deprecated·=&gt;·unicode:chardata()</code>·-·Shows·a·text·in·the·documentation243 module·was·added.</p></li><li><p><code·class="inline">deprecated·=&gt;·unicode:chardata()</code>·-·Shows·a·text·in·the·documentation
244 explaining·that·it·is·deprecated·and·what·to·use·instead.·The·compiler·will244 explaining·that·it·is·deprecated·and·what·to·use·instead.·The·compiler·will
245 automatically·insert·this·key·if·there·is·a·<code·class="inline">-deprecated</code>·attribute·marking·a245 automatically·insert·this·key·if·there·is·a·<code·class="inline">-deprecated</code>·attribute·marking·a
246 function·as·deprecated.</p></li><li><p><code·class="inline">equiv·=&gt;·unicode:chardata()·|·F/A·|·F(...)</code>·-·Notes·that·this·function·is·equivalent·to246 function·as·deprecated.</p></li><li><p><code·class="inline">equiv·=&gt;·unicode:chardata()·|·F/A·|·F(...)</code>·-·Notes·that·this·function·is·equivalent·to
Max diff block lines reached; 38032/66973 bytes (56.79%) of diff not shown.
663 B
html2text {}
Max HTML report size reached
8.64 KB
./usr/share/doc/erlang-doc/html/doc/system/drivers.html
    
Offset 122, 23 lines modifiedOffset 122, 23 lines modified
122 ··<span·class="text">Drivers·and·Concurrency</span>122 ··<span·class="text">Drivers·and·Concurrency</span>
123 </h2>123 </h2>
124 <p>The·runtime·system·always·takes·a·lock·before·running·any·code·in·a·driver.</p><p>By·default,·that·lock·is·at·the·driver·level,·that·is,·if·several·ports·have124 <p>The·runtime·system·always·takes·a·lock·before·running·any·code·in·a·driver.</p><p>By·default,·that·lock·is·at·the·driver·level,·that·is,·if·several·ports·have
125 been·opened·to·the·same·driver,·only·code·for·one·port·at·the·same·time·can·be125 been·opened·to·the·same·driver,·only·code·for·one·port·at·the·same·time·can·be
126 running.</p><p>A·driver·can·be·configured·to·have·one·lock·for·each·port·instead.</p><p>If·a·driver·is·used·in·a·functional·way·(that·is,·holds·no·state,·but·only·does126 running.</p><p>A·driver·can·be·configured·to·have·one·lock·for·each·port·instead.</p><p>If·a·driver·is·used·in·a·functional·way·(that·is,·holds·no·state,·but·only·does
127 some·heavy·calculation·and·returns·a·result),·several·ports·with·registered127 some·heavy·calculation·and·returns·a·result),·several·ports·with·registered
128 names·can·be·opened·beforehand,·and·the·port·to·be·used·can·be·chosen·based·on128 names·can·be·opened·beforehand,·and·the·port·to·be·used·can·be·chosen·based·on
129 the·scheduler·ID·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="6177040074-1">(</span><span·class="n">PORT_NAMES</span><span·class="p"·data-group-id="6177040074-2">(</span><span·class="p"·data-group-id="6177040074-2">)</span><span·class="p">,</span><span·class="w">129 the·scheduler·ID·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="4290776793-1">(</span><span·class="n">PORT_NAMES</span><span·class="p"·data-group-id="4290776793-2">(</span><span·class="p"·data-group-id="4290776793-2">)</span><span·class="p">,</span><span·class="w">
130 »       </span><span·class="p"·data-group-id="6177040074-3">{</span><span·class="ss">some_driver_01</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_02</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_03</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_04</span><span·class="p">,</span><span·class="w">130 »       </span><span·class="p"·data-group-id="4290776793-3">{</span><span·class="ss">some_driver_01</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_02</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_03</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_04</span><span·class="p">,</span><span·class="w">
131 »       ·</span><span·class="ss">some_driver_05</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_06</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_07</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_08</span><span·class="p">,</span><span·class="w">131 »       ·</span><span·class="ss">some_driver_05</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_06</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_07</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_08</span><span·class="p">,</span><span·class="w">
132 »       ·</span><span·class="ss">some_driver_09</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_10</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_11</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_12</span><span·class="p">,</span><span·class="w">132 »       ·</span><span·class="ss">some_driver_09</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_10</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_11</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_12</span><span·class="p">,</span><span·class="w">
133 »       ·</span><span·class="ss">some_driver_13</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_14</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_15</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_16</span><span·class="p"·data-group-id="6177040074-3">}</span><span·class="p"·data-group-id="6177040074-1">)</span><span·class="p">.</span><span·class="w">133 »       ·</span><span·class="ss">some_driver_13</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_14</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_15</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">some_driver_16</span><span·class="p"·data-group-id="4290776793-3">}</span><span·class="p"·data-group-id="4290776793-1">)</span><span·class="p">.</span><span·class="w">
  
134 </span><span·class="nf">client_port</span><span·class="p"·data-group-id="6177040074-4">(</span><span·class="p"·data-group-id="6177040074-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">134 </span><span·class="nf">client_port</span><span·class="p"·data-group-id="4290776793-4">(</span><span·class="p"·data-group-id="4290776793-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
135 ····</span><span·class="nf">element</span><span·class="p"·data-group-id="6177040074-5">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="6177040074-6">(</span><span·class="ss">scheduler_id</span><span·class="p"·data-group-id="6177040074-6">)</span><span·class="w">·</span><span·class="ow">rem</span><span·class="w">·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="6177040074-7">(</span><span·class="o">?</span><span·class="n">PORT_NAMES</span><span·class="p"·data-group-id="6177040074-8">(</span><span·class="p"·data-group-id="6177040074-8">)</span><span·class="p"·data-group-id="6177040074-7">)</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w"> 
136 »       ····</span><span·class="o">?</span><span·class="n">PORT_NAMES</span><span·class="p"·data-group-id="6177040074-9">(</span><span·class="p"·data-group-id="6177040074-9">)</span><span·class="p"·data-group-id="6177040074-5">)</span><span·class="p">.</span></co[·...·truncated·by·diffoscope;·len:·89,·SHA:·aa315350b3c5d458adacb1d650a0680f6599dab7560522cff5dacd05f86c84c5·...·]135 ····</span><span·class="nf">element</span><span·class="p"·data-group-id="4290776793-5">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="4290776793-6">(</span><span·class="ss">sc[·...·truncated·by·diffoscope;·len:·585,·SHA:·0008988eca78dd17d2201d942da01d3e46f55aa7d6a351d50b7950886c4b101c·...·]
 136 »       ····</span><span·class="o">?</span><span·class="n">PORT_NAMES</span><span·class="p"·data-group-id="4290776793-9">(</span><span·class="p"·data-group-id="4290776793-9">)</span><span·class="p"·data-group-id="4290776793-5">)</span><span·class="p">.</span></code></pre><p>As·long·as·there·are·no·more·than·16·schedulers,·there·will·never·be·any·lock
137 contention·on·the·port·lock·for·the·driver.</p><h2·id="avoiding-copying-binaries-when-calling-a-driver"·class="section-heading">137 contention·on·the·port·lock·for·the·driver.</p><h2·id="avoiding-copying-binaries-when-calling-a-driver"·class="section-heading">
138 ··<a·href="#avoiding-copying-binaries-when-calling-a-driver"·class="hover-link">138 ··<a·href="#avoiding-copying-binaries-when-calling-a-driver"·class="hover-link">
139 ····<i·class="ri-link-m"·aria-hidden="true"></i>139 ····<i·class="ri-link-m"·aria-hidden="true"></i>
140 ··</a>140 ··</a>
141 ··<span·class="text">Avoiding·Copying·Binaries·When·Calling·a·Driver</span>141 ··<span·class="text">Avoiding·Copying·Binaries·When·Calling·a·Driver</span>
142 </h2>142 </h2>
143 <p>There·are·basically·two·ways·to·avoid·copying·a·binary·that·is·sent·to·a·driver:</p><ul><li><p>If·the·<code·class="inline">Data</code>·argument·for·<a·href="../../erts-15.0.1/doc/html/erlang.html#port_control/3"><code·class="inline">port_control/3</code></a>·is·a143 <p>There·are·basically·two·ways·to·avoid·copying·a·binary·that·is·sent·to·a·driver:</p><ul><li><p>If·the·<code·class="inline">Data</code>·argument·for·<a·href="../../erts-15.0.1/doc/html/erlang.html#port_control/3"><code·class="inline">port_control/3</code></a>·is·a
Offset 225, 15 lines modifiedOffset 225, 15 lines modified
225 ······<p·class="built-using">225 ······<p·class="built-using">
226 ········Built·using226 ········Built·using
227 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the227 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
228 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>228 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
229 ······</p>229 ······</p>
230 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>230 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
231 ····</footer>231 ····</footer>
232 ··</div>232 ··</div>
233 </main>233 </main>
234 </div>234 </div>
235 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>235 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
236 <script>236 <script>
237 ··document.addEventListener("DOMContentLoaded",·function·()·{237 ··document.addEventListener("DOMContentLoaded",·function·()·{
814 B
html2text {}
Max HTML report size reached
34.8 KB
./usr/share/doc/erlang-doc/html/doc/system/eff_guide_functions.html
    
Offset 122, 67 lines modifiedOffset 122, 67 lines modified
122 ··<span·class="text">Pattern·Matching</span>122 ··<span·class="text">Pattern·Matching</span>
123 </h2>123 </h2>
124 <p>Pattern·matching·in·function·head·as·well·as·in·<code·class="inline">case</code>·and·<code·class="inline">receive</code>·clauses·are124 <p>Pattern·matching·in·function·head·as·well·as·in·<code·class="inline">case</code>·and·<code·class="inline">receive</code>·clauses·are
125 optimized·by·the·compiler.·With·a·few·exceptions,·there·is·nothing·to·gain·by125 optimized·by·the·compiler.·With·a·few·exceptions,·there·is·nothing·to·gain·by
126 rearranging·clauses.</p><p>One·exception·is·pattern·matching·of·binaries.·The·compiler·does·not·rearrange126 rearranging·clauses.</p><p>One·exception·is·pattern·matching·of·binaries.·The·compiler·does·not·rearrange
127 clauses·that·match·binaries.·Placing·the·clause·that·matches·against·the·empty127 clauses·that·match·binaries.·Placing·the·clause·that·matches·against·the·empty
128 binary·<em>last</em>·is·usually·slightly·faster·than·placing·it·<em>first</em>.</p><p>The·following·is·a·rather·unnatural·example·to·show·another·exception·where128 binary·<em>last</em>·is·usually·slightly·faster·than·placing·it·<em>first</em>.</p><p>The·following·is·a·rather·unnatural·example·to·show·another·exception·where
129 rearranging·clauses·is·beneficial:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6372266162-1">(</span><span·class="ss">one</span><span·class="p"·data-group-id="6372266162-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">129 rearranging·clauses·is·beneficial:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6489648447-1">(</span><span·class="ss">one</span><span·class="p"·data-group-id="6489648447-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">
130 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6372266162-2">(</span><span·class="ss">two</span><span·class="p"·data-group-id="6372266162-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">;</span><span·class="w">130 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6489648447-2">(</span><span·class="ss">two</span><span·class="p"·data-group-id="6489648447-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">;</span><span·class="w">
131 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6372266162-3">(</span><span·class="ss">three</span><span·class="p"·data-group-id="6372266162-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">;</span><span·class="w">131 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6489648447-3">(</span><span·class="ss">three</span><span·class="p"·data-group-id="6489648447-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">;</span><span·class="w">
132 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6372266162-4">(</span><span·class="n">Int</span><span·class="p"·data-group-id="6372266162-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="6372266162-5">(<[·...·truncated·by·diffoscope;·len:·73,·SHA:·7fd0be46d9a92a128337a11e3b8b09c649d5b71ce9cbf736129381a4fd87f245·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">;</span><span·class="w">132 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6489648447-4">(</span><span·class="n">Int</span><span·class="p"·data-group-id="6489648447-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="6489648447-5">(<[·...·truncated·by·diffoscope;·len:·73,·SHA:·edd00a5a2e9233e280e8b2de1cdeed9e8342634133f5c84293bc4a2ab28049a8·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">;</span><span·class="w">
133 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6372266162-6">(</span><span·class="ss">four</span><span·class="p"·data-group-id="6372266162-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">;</span><span·class="w">133 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6489648447-6">(</span><span·class="ss">four</span><span·class="p"·data-group-id="6489648447-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">;</span><span·class="w">
134 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6372266162-7">(</span><span·class="ss">five</span><span·class="p"·data-group-id="6372266162-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">;</span><span·class="w">134 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6489648447-7">(</span><span·class="ss">five</span><span·class="p"·data-group-id="6489648447-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">;</span><span·class="w">
135 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6372266162-8">(</span><span·class="ss">six</span><span·class="p"·data-group-id="6372266162-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">.</span></code></pre><p>The·problem·is·the·clause·with·the·variable·<code·class="inline">Int</code>.·As·a·variable·can·match135 </span><span·class="nf">atom_map1</span><span·class="p"·data-group-id="6489648447-8">(</span><span·class="ss">six</span><span·class="p"·data-group-id="6489648447-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">.</span></code></pre><p>The·problem·is·the·clause·with·the·variable·<code·class="inline">Int</code>.·As·a·variable·can·match
136 anything,·including·the·atoms·<code·class="inline">four</code>,·<code·class="inline">five</code>,·and·<code·class="inline">six</code>,·which·the·following136 anything,·including·the·atoms·<code·class="inline">four</code>,·<code·class="inline">five</code>,·and·<code·class="inline">six</code>,·which·the·following
137 clauses·also·match,·the·compiler·must·generate·suboptimal·code·that·executes·as137 clauses·also·match,·the·compiler·must·generate·suboptimal·code·that·executes·as
138 follows:</p><ul><li>First,·the·input·value·is·compared·to·<code·class="inline">one</code>,·<code·class="inline">two</code>,·and·<code·class="inline">three</code>·(using·a138 follows:</p><ul><li>First,·the·input·value·is·compared·to·<code·class="inline">one</code>,·<code·class="inline">two</code>,·and·<code·class="inline">three</code>·(using·a
139 single·instruction·that·does·a·binary·search;·thus,·quite·efficient·even·if139 single·instruction·that·does·a·binary·search;·thus,·quite·efficient·even·if
140 there·are·many·values)·to·select·which·one·of·the·first·three·clauses·to140 there·are·many·values)·to·select·which·one·of·the·first·three·clauses·to
141 execute·(if·any).</li><li>If·none·of·the·first·three·clauses·match,·the·fourth·clause·match·as·a141 execute·(if·any).</li><li>If·none·of·the·first·three·clauses·match,·the·fourth·clause·match·as·a
142 variable·always·matches.</li><li>If·the·guard·test·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_integer/1"><code·class="inline">is_integer(Int)</code></a>·succeeds,·the·fourth142 variable·always·matches.</li><li>If·the·guard·test·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_integer/1"><code·class="inline">is_integer(Int)</code></a>·succeeds,·the·fourth
143 clause·is·executed.</li><li>If·the·guard·test·fails,·the·input·value·is·compared·to·<code·class="inline">four</code>,·<code·class="inline">five</code>,·and143 clause·is·executed.</li><li>If·the·guard·test·fails,·the·input·value·is·compared·to·<code·class="inline">four</code>,·<code·class="inline">five</code>,·and
144 <code·class="inline">six</code>,·and·the·appropriate·clause·is·selected.·(There·is·a·<code·class="inline">function_clause</code>144 <code·class="inline">six</code>,·and·the·appropriate·clause·is·selected.·(There·is·a·<code·class="inline">function_clause</code>
145 exception·if·none·of·the·values·matched.)</li></ul><p>Rewriting·to·either:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">atom_map2</span><span·class="p"·data-group-id="5716749009-1">(</span><span·class="ss">one</span><span·class="p"·data-group-id="5716749009-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">145 exception·if·none·of·the·values·matched.)</li></ul><p>Rewriting·to·either:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">atom_map2</span><span·class="p"·data-group-id="2965026480-1">(</span><span·class="ss">one</span><span·class="p"·data-group-id="2965026480-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">
146 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="5716749009-2">(</span><span·class="ss">two</span><span·class="p"·data-group-id="5716749009-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">;</span><span·class="w">146 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="2965026480-2">(</span><span·class="ss">two</span><span·class="p"·data-group-id="2965026480-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">;</span><span·class="w">
147 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="5716749009-3">(</span><span·class="ss">three</span><span·class="p"·data-group-id="5716749009-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">;</span><span·class="w">147 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="2965026480-3">(</span><span·class="ss">three</span><span·class="p"·data-group-id="2965026480-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">;</span><span·class="w">
148 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="5716749009-4">(</span><span·class="ss">four</span><span·class="p"·data-group-id="5716749009-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">;</span><span·class="w">148 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="2965026480-4">(</span><span·class="ss">four</span><span·class="p"·data-group-id="2965026480-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">;</span><span·class="w">
149 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="5716749009-5">(</span><span·class="ss">five</span><span·class="p"·data-group-id="5716749009-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">;</span><span·class="w">149 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="2965026480-5">(</span><span·class="ss">five</span><span·class="p"·data-group-id="2965026480-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">;</span><span·class="w">
150 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="5716749009-6">(</span><span·class="ss">six</span><span·class="p"·data-group-id="5716749009-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">;</span><span·class="w">150 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="2965026480-6">(</span><span·class="ss">six</span><span·class="p"·data-group-id="2965026480-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">;</span><span·class="w">
151 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="5716749009-7">(</span><span·class="n">Int</span><span·class="p"·data-group-id="5716749009-7">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="5716749009-8">([·...·truncated·by·diffoscope;·len:·703,·SHA:·73699a36e3af67792bc8f4f57ba82da53c8074252c061ce821b9f7fe2e0cca46·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">;</span><span·class="w">151 </span><span·class="nf">atom_map2</span><span·class="p"·data-group-id="2965026480-7">(</span><span·class="n">Int</span><span·class="p"·data-group-id="2965026480-7">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="2965026480-8">([·...·truncated·by·diffoscope;·len:·703,·SHA:·f3aeef4a2c0314d6927424fd0a416c6dc916dfb60f1b72cc370b0546ba37ccc9·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">;</span><span·class="w">
152 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="3430672168-3">(</span><span·class="ss">one</span><span·class="p"·data-group-id="3430672168-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">152 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="0872001821-3">(</span><span·class="ss">one</span><span·class="p"·data-group-id="0872001821-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">
153 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="3430672168-4">(</span><span·class="ss">two</span><span·class="p"·data-group-id="3430672168-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">;</span><span·class="w">153 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="0872001821-4">(</span><span·class="ss">two</span><span·class="p"·data-group-id="0872001821-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">;</span><span·class="w">
154 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="3430672168-5">(</span><span·class="ss">three</span><span·class="p"·data-group-id="3430672168-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">;</span><span·class="w">154 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="0872001821-5">(</span><span·class="ss">three</span><span·class="p"·data-group-id="0872001821-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">;</span><span·class="w">
155 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="3430672168-6">(</span><span·class="ss">four</span><span·class="p"·data-group-id="3430672168-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">;</span><span·class="w">155 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="0872001821-6">(</span><span·class="ss">four</span><span·class="p"·data-group-id="0872001821-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">;</span><span·class="w">
156 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="3430672168-7">(</span><span·class="ss">five</span><span·class="p"·data-group-id="3430672168-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">;</span><span·class="w">156 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="0872001821-7">(</span><span·class="ss">five</span><span·class="p"·data-group-id="0872001821-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">;</span><span·class="w">
157 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="3430672168-8">(</span><span·class="ss">six</span><span·class="p"·data-group-id="3430672168-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">.</span></code></pre><p>gives·slightl[·...·truncated·by·diffoscope;·len:·541,·SHA:·89ce755c7ae7d5c5c6ad2b3e263315928e554fee1e6ea3e64156bbf3ec93b17d·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 </span><span·class="nf">atom_map3</span><span·class="p"·data-group-id="0872001821-8">(</span><span·class="ss">six</span><span·class="p"·data-group-id="0872001821-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">.</span></code></pre><p>gives·slightl[·...·truncated·by·diffoscope;·len:·541,·SHA:·676c7899d753e003507c2df2dc44072be856e0e6011b46e8c2ce87d9edf8b44d·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ····</span><span·class="n">Ys</span><span·class="p">;</span><span·class="w">158 ····</span><span·class="n">Ys</span><span·class="p">;</span><span·class="w">
159 </span><span·class="nf">map_pairs1</span><span·class="p"·data-group-id="2128190997-3">(</span><span·class="p">_</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Xs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2128190997-4">[</span><span·clas[·...·truncated·by·diffoscope;·len:·84,·SHA:·26cdcf62c44bd191ea3a29655741e5f9acf0955a19fc511f6d20a707699c3abb·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">159 </span><span·class="nf">map_pairs1</span><span·class="p"·data-group-id="3773438938-3">(</span><span·class="p">_</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Xs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3773438938-4">[</span><span·clas[·...·truncated·by·diffoscope;·len:·84,·SHA:·ee4e3d9640f3d2f26f72d98564bcc4d504ad18cec7a5fc2e52b35fd40cfa31a3·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
160 ····</span><span·class="n">Xs</span><span·class="p">;</span><span·class="w">160 ····</span><span·class="n">Xs</span><span·class="p">;</span><span·class="w">
161 </span><span·class="nf">map_pairs1</span><span·class="p"·data-group-id="2128190997-5">(</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2128190997-6">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="212[·...·truncated·by·diffoscope;·len:·287,·SHA:·9fcfa01692f0cbd0a0bb48a9256c7613853314abdef5ee05434f22a3010351e6·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">161 </span><span·class="nf">map_pairs1</span><span·class="p"·data-group-id="3773438938-5">(</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3773438938-6">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="377[·...·truncated·by·diffoscope;·len:·287,·SHA:·38f5ba255f4ecea14d8b406eb72c782de4017005b6659a6f3d1ba1199b6c523e·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 ····</span><span·class="p"·data-group-id="2128190997-8">[</span><span·class="n">Map</span><span·class="p"·data-group-id="2128190997-9">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="2128190997-9">)</span><span·[·...·truncated·by·diffoscope;·len:·373,·SHA:·a8e025dee6d1fe7cffd47d334d9defdf013e790c3873787d7f767fca9700fa67·...·]-8">]</span><span·class="p">.</span></code></pre><p>The·first·argument·is·<em>not</em>·a·problem.·It·is·variable,·but·it·is·a·variable·in162 ····</span><span·class="p"·data-group-id="3773438938-8">[</span><span·class="n">Map</span><span·class="p"·data-group-id="3773438938-9">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="3773438938-9">)</span><span·[·...·truncated·by·diffoscope;·len:·373,·SHA:·e134697d1ba792b7e2c61858397aab50effc74d82fb409051cf0d4be1870563a·...·]-8">]</span><span·class="p">.</span></code></pre><p>The·first·argument·is·<em>not</em>·a·problem.·It·is·variable,·but·it·is·a·variable·in
163 all·clauses.·The·problem·is·the·variable·in·the·second·argument,·<code·class="inline">Xs</code>,·in·the163 all·clauses.·The·problem·is·the·variable·in·the·second·argument,·<code·class="inline">Xs</code>,·in·the
164 middle·clause.·Because·the·variable·can·match·anything,·the·compiler·is·not164 middle·clause.·Because·the·variable·can·match·anything,·the·compiler·is·not
165 allowed·to·rearrange·the·clauses,·but·must·generate·code·that·matches·them·in165 allowed·to·rearrange·the·clauses,·but·must·generate·code·that·matches·them·in
166 the·order·written.</p><p>If·the·function·is·rewritten·as·follows,·the·compiler·is·free·to·rearrange·the166 the·order·written.</p><p>If·the·function·is·rewritten·as·follows,·the·compiler·is·free·to·rearrange·the
167 clauses:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">map_pairs2</span><span·class="p"·data-group-id="9823079198-1">(</span><span·class="p">_</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9823079198-2">[</span><span·class="p"·data-group-id="9823079198-2">]</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·84,·SHA:·d516c14f0d3669eea67713faf87467c3d8797e159e8a4b511ee380e4f6b7b88c·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">167 clauses:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">map_pairs2</span><span·class="p"·data-group-id="6287742604-1">(</span><span·class="p">_</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6287742604-2">[</span><span·class="p"·data-group-id="6287742604-2">]</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·84,·SHA:·935fa3a8316f9116502353931c732a27d01cbd7e47c6b302d2a324641ebd4fae·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
168 ····</span><span·class="n">Ys</span><span·class="p">;</span><span·class="w">168 ····</span><span·class="n">Ys</span><span·class="p">;</span><span·class="w">
169 </span><span·class="nf">map_pairs2</span><span·class="p"·data-group-id="9823079198-3">(</span><span·class="p">_</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9823079198-4">[</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class[·...·truncated·by·diffoscope;·len:·310,·SHA:·4c900be190d92cd497edc8f848e08f2c6f68b660eafd52e057025167f4eb7ed0·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">169 </span><span·class="nf">map_pairs2</span><span·class="p"·data-group-id="6287742604-3">(</span><span·class="p">_</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6287742604-4">[</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class[·...·truncated·by·diffoscope;·len:·310,·SHA:·9849f4cc56f8c22bb31dc677c5a7e8f91e219c54bb693bf675bc5dcbfb26412b·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
170 ····</span><span·class="n">Xs</span><span·class="p">;</span><span·class="w">170 ····</span><span·class="n">Xs</span><span·class="p">;</span><span·class="w">
171 </span><span·class="nf">map_pairs2</span><span·class="p"·data-group-id="9823079198-6">(</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9823079198-7">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="982[·...·truncated·by·diffoscope;·len:·287,·SHA:·65d2df8af4e982e5ac1e9a07ae2c87146a71388bc03f76650eb9d5f94851b4d9·...·]-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">171 </span><span·class="nf">map_pairs2</span><span·class="p"·data-group-id="6287742604-6">(</span><span·class="n">Map</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6287742604-7">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="628[·...·truncated·by·diffoscope;·len:·287,·SHA:·fd6c96301cc3d32c36baabc5229eb1da046752705b9f7d810be7d2041aacd3c6·...·]-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ····</span><span·class="p"·data-group-id="9823079198-9">[</span><span·class="n">Map</span><span·class="p"·data-group-id="9823079198-10">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="9823079198-10">)</span><spa[·...·truncated·by·diffoscope;·len:·898,·SHA:·a8432ac1dfd81585281efb76e395f8fea3c4e32719a10d0ebf177470f2502b7c·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 ····</span><span·class="p"·data-group-id="6287742604-9">[</span><span·class="n">Map</span><span·class="p"·data-group-id="6287742604-10">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="6287742604-10">)</span><spa[·...·truncated·by·diffoscope;·len:·898,·SHA:·ba3f8e04c363b6c21e7c143ee3cb6af69eab8e2f84325cae3459245a86565caa·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
173 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Xs0</span><span·class="w">·</span><span·class="k">of</span><span·class="w">173 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Xs0</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
174 »       </span><span·class="p"·data-group-id="0727891998-2">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="0727891998-2">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">174 »       </span><span·class="p"·data-group-id="4740436387-2">[</span><span·class="n">X</span><span·class="p">|</span><span·class="n">Xs</span><span·class="p"·data-group-id="4740436387-2">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
175 »       ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Ys0</span><span·class="w">·</span><span·class="k">of</span><span·class="w">175 »       ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Ys0</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
176 »       »       </span><span·class="p"·data-group-id="0727891998-3">[</span><span·class="n">Y</span><span·class="p">|</span><span·class="n">Ys</span><span·class="p"·data-group-id="0727891998-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 »       »       </span><span·class="p"·data-group-id="4740436387-3">[</span><span·class="n">Y</span><span·class="p">|</span><span·class="n">Ys</span><span·class="p"·data-group-id="4740436387-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 »       »       ····</span><span·class="p"·data-group-id="0727891998-4">[</span><span·class="n">Map</span><span·class="p"·data-group-id="0727891998-5">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="0727891998-5">)</span><span·[·...·truncated·by·diffoscope;·len:·379,·SHA:·fa18ff6c6a887b5c22ea4378e288617f9dcaee694809205636050efe4cd2660a·...·]-4">]</span><span·class="p">;</span><span·class="w">177 »       »       ····</span><span·class="p"·data-group-id="4740436387-4">[</span><span·class="n">Map</span><span·class="p"·data-group-id="4740436387-5">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="4740436387-5">)</span><span·[·...·truncated·by·diffoscope;·len:·379,·SHA:·3dee1f680c409e443eaf3fd002e5bd7780c8fce3dffb412941efe56549176575·...·]-4">]</span><span·class="p">;</span><span·class="w">
178 »       »       </span><span·class="p"·data-group-id="0727891998-7">[</span><span·class="p"·data-group-id="0727891998-7">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 »       »       </span><span·class="p"·data-group-id="4740436387-7">[</span><span·class="p"·data-group-id="4740436387-7">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 »       »       ····</span><span·class="n">Xs0</span><span·class="w">179 »       »       ····</span><span·class="n">Xs0</span><span·class="w">
180 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">180 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
181 »       </span><span·class="p"·data-group-id="0727891998-8">[</span><span·class="p"·data-group-id="0727891998-8">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">181 »       </span><span·class="p"·data-group-id="4740436387-8">[</span><span·class="p"·data-group-id="4740436387-8">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
182 »       ····</span><span·class="n">Ys0</span><span·class="w">182 »       ····</span><span·class="n">Ys0</span><span·class="w">
183 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>This·is·slightly·faster·for·probably·the·most·common·case·that·the·input·lists183 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>This·is·slightly·faster·for·probably·the·most·common·case·that·the·input·lists
184 are·not·empty·or·very·short.·(Another·advantage·is·that·Dialyzer·can·deduce·a184 are·not·empty·or·very·short.·(Another·advantage·is·that·Dialyzer·can·deduce·a
185 better·type·for·the·<code·class="inline">Xs</code>·variable.)</p><h2·id="function-calls"·class="section-heading">185 better·type·for·the·<code·class="inline">Xs</code>·variable.)</p><h2·id="function-calls"·class="section-heading">
186 ··<a·href="#function-calls"·class="hover-link">186 ··<a·href="#function-calls"·class="hover-link">
187 ····<i·class="ri-link-m"·aria-hidden="true"></i>187 ····<i·class="ri-link-m"·aria-hidden="true"></i>
188 ··</a>188 ··</a>
Offset 250, 15 lines modifiedOffset 250, 15 lines modified
250 ······<p·class="built-using">250 ······<p·class="built-using">
251 ········Built·using251 ········Built·using
252 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the252 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
253 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>253 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
254 ······</p>254 ······</p>
255 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>255 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
256 ····</footer>256 ····</footer>
257 ··</div>257 ··</div>
258 </main>258 </main>
259 </div>259 </div>
260 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>260 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
261 <script>261 <script>
262 ··document.addEventListener("DOMContentLoaded",·function·()·{262 ··document.addEventListener("DOMContentLoaded",·function·()·{
741 B
html2text {}
Max HTML report size reached
67.1 KB
./usr/share/doc/erlang-doc/html/doc/system/eff_guide_processes.html
    
Offset 119, 45 lines modifiedOffset 119, 45 lines modified
119 ··<a·href="#creating-an-erlang-process"·class="hover-link">119 ··<a·href="#creating-an-erlang-process"·class="hover-link">
120 ····<i·class="ri-link-m"·aria-hidden="true"></i>120 ····<i·class="ri-link-m"·aria-hidden="true"></i>
121 ··</a>121 ··</a>
122 ··<span·class="text">Creating·an·Erlang·Process</span>122 ··<span·class="text">Creating·an·Erlang·Process</span>
123 </h2>123 </h2>
124 <p>An·Erlang·process·is·lightweight·compared·to·threads·and·processes·in·operating124 <p>An·Erlang·process·is·lightweight·compared·to·threads·and·processes·in·operating
125 systems.</p><p>A·newly·spawned·Erlang·process·uses·327·words·of·memory.·The·size·can·be·found125 systems.</p><p>A·newly·spawned·Erlang·process·uses·327·words·of·memory.·The·size·can·be·found
126 as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">27</span><span·class="w">·</span><span·class="p"·data-group-id="5439672961-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p">.</span><span·class="mi">3</span><span·class="p"·data-group-id="5439672961-1">]</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1121,·SHA:·9d5eff77aa58bccb42369679ee61f726b79852d7bd5c6e75502e6ba2d8ad1fcd·...·]-6">]</span><span·class="w">126 as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">27</span><span·class="w">·</span><span·class="p"·data-group-id="5164319078-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">14.2</span><span·class="p">.</span><span·class="mi">3</span><span·class="p"·data-group-id="5164319078-1">]</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1121,·SHA:·edb2ec4ee9aabe660c732e15e058af3a86fb5423619519cfdbae7b8166931127·...·]-6">]</span><span·class="w">
  
127 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V14</span><span·class="p">.</span><span·class="mf">2.3</span><span·class="w">·</span><span·class="p"·data-group-id="5439672961-7">(</span><span·class="ss">press</span><span·class="w">·</span><span·class="n">Ctrl</span><span·class="o">+</span><span·class="n">G</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">abort</span><spa[·...·truncated·by·diffoscope;·len:·398,·SHA:·56ffebc1badc93f9cbfd14a668d8c457726553dd7341699d7ede89886d4c9b48·...·]-7">)</span><span·class="gp·unselectable">127 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V14</span><span·class="p">.</span><span·class="mf">2.3</span><span·class="w">·</span><span·class="p"·data-group-id="5164319078-7">(</span><span·class="ss">press</span><span·class="w">·</span><span·class="n">Ctrl</span><span·class="o">+</span><span·class="n">G</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">abort</span><spa[·...·truncated·by·diffoscope;·len:·398,·SHA:·c44f967d6256fc096a5474ee82bb1da02cf5439f2fe8ad45ad34ceec338b8357·...·]-7">)</span><span·class="gp·unselectable">
128 1&gt;·</span><span·class="n">Fun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5439672961-9">(</span><span·class="p"·data-group-id="5439672961-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="k">receive</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="k">end</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">128 1&gt;·</span><span·class="n">Fun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5164319078-9">(</span><span·class="p"·data-group-id="5164319078-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="k">receive</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="k">end</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
129 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="p">.</span><span·class="mf">43.39164016</span><span·class="o">&gt;</span><span·class="gp·unselectable">129 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="p">.</span><span·class="mf">43.39164016</span><span·class="o">&gt;</span><span·class="gp·unselectable">
130 2&gt;·</span><span·class="p"·data-group-id="5439672961-10">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Bytes</span><span·class="p"·data-group-id="5439672961-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">process_info</s[·...·truncated·by·diffoscope;·len:·340,·SHA:·d9267e8fb24e76594fa92a4a27734dc5535c4825c1fceeb0ffbc15e82283b4f3·...·]-11">)</span><span·class="p">.</span><span·class="w">130 2&gt;·</span><span·class="p"·data-group-id="5164319078-10">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Bytes</span><span·class="p"·data-group-id="5164319078-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">process_info</s[·...·truncated·by·diffoscope;·len:·340,·SHA:·a89580817972500019220d45b0c5fb723eaed8d458c0080ab3be9f6f6aa82372·...·]-11">)</span><span·class="p">.</span><span·class="w">
131 </span><span·class="p"·data-group-id="5439672961-13">{</span><span·class="nb">memory</span><span·class="p">,</span><span·class="mi">2616</span><span·class="p"·data-group-id="5439672961-13">}</span><span·class="gp·unselectable">131 </span><span·class="p"·data-group-id="5164319078-13">{</span><span·class="nb">memory</span><span·class="p">,</span><span·class="mi">2616</span><span·class="p"·data-group-id="5164319078-13">}</span><span·class="gp·unselectable">
132 3&gt;·</span><span·class="n">Bytes</span><span·class="w">·</span><span·class="ow">div</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="5439672961-14">(</span><span·class="ss">wordsize</span><span·class="p"·data-group-id="5439672961-14">)</span><span·class="p">.</span><span·class="w">132 3&gt;·</span><span·class="n">Bytes</span><span·class="w">·</span><span·class="ow">div</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="5164319078-14">(</span><span·class="ss">wordsize</span><span·class="p"·data-group-id="5164319078-14">)</span><span·class="p">.</span><span·class="w">
133 </span><span·class="mi">327</span></code></pre><p>The·size·includes·233·words·for·the·heap·area·(which·includes·the·stack).·The133 </span><span·class="mi">327</span></code></pre><p>The·size·includes·233·words·for·the·heap·area·(which·includes·the·stack).·The
134 garbage·collector·increases·the·heap·as·needed.</p><p>The·main·(outer)·loop·for·a·process·<em>must</em>·be·tail-recursive.·Otherwise,·the134 garbage·collector·increases·the·heap·as·needed.</p><p>The·main·(outer)·loop·for·a·process·<em>must</em>·be·tail-recursive.·Otherwise,·the
135 stack·grows·until·the·process·terminates.</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="1273235246-1">(</span><span·class="p"·data-group-id="1273235246-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">135 stack·grows·until·the·process·terminates.</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="7096200810-1">(</span><span·class="p"·data-group-id="7096200810-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
136 ··</span><span·class="k">receive</span><span·class="w">136 ··</span><span·class="k">receive</span><span·class="w">
137 ·····</span><span·class="p"·data-group-id="1273235246-2">{</span><span·class="ss">sys</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1273235246-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">137 ·····</span><span·class="p"·data-group-id="7096200810-2">{</span><span·class="ss">sys</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="7096200810-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
138 ·········</span><span·class="nf">handle_sys_msg</span><span·class="p"·data-group-id="1273235246-3">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="1273235246-3">)</span><span·class="p">,</span><span·class="w">138 ·········</span><span·class="nf">handle_sys_msg</span><span·class="p"·data-group-id="7096200810-3">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="7096200810-3">)</span><span·class="p">,</span><span·class="w">
139 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="1273235246-4">(</span><span·class="p"·data-group-id="1273235246-4">)</span><span·class="p">;</span><span·class="w">139 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="7096200810-4">(</span><span·class="p"·data-group-id="7096200810-4">)</span><span·class="p">;</span><span·class="w">
140 ·····</span><span·class="p"·data-group-id="1273235246-5">{</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1273235246-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">140 ·····</span><span·class="p"·data-group-id="7096200810-5">{</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="7096200810-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
141 ··········</span><span·class="n">Reply</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">handle_msg</span><span·class="p"·data-group-id="1273235246-6">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="1273235246-6">)</span><span·class="p">,</span><span·class="w">141 ··········</span><span·class="n">Reply</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">handle_msg</span><span·class="p"·data-group-id="7096200810-6">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="7096200810-6">)</span><span·class="p">,</span><span·class="w">
142 ··········</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="n">Reply</span><span·class="p">,</span><span·class="w">142 ··········</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="n">Reply</span><span·class="p">,</span><span·class="w">
143 ··········</span><span·class="nf">loop</span><span·class="p"·data-group-id="1273235246-7">(</span><span·class="p"·data-group-id="1273235246-7">)</span><span·class="w">143 ··········</span><span·class="nf">loop</span><span·class="p"·data-group-id="7096200810-7">(</span><span·class="p"·data-group-id="7096200810-7">)</span><span·class="w">
144 ··</span><span·class="k">end</span><span·class="p">,</span><span·class="w">144 ··</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
145 ··</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1273235246-8">(</span><span·class="s">&quot;Message·is·processed</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1273235246-9">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·0d06bfb0b388d79aced0634471a5bd6dbf476b967d32253c09225a27e9234342·...·]-8">)</span><span·class="p">.</span></code></pre><p>The·call·to·<a·href="../../lib/stdlib-6.0.1/doc/html/io.html#format/2"><code·class="inline">io:format/2</code></a>·will·never·be·executed,·but·a·return·address·will145 ··</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="7096200810-8">(</span><span·class="s">&quot;Message·is·processed</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7096200810-9">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·5f5bcd7146f0d045fa516858bb6ced6bb7c6e20218ccd1bb433d4c39f076d631·...·]-8">)</span><span·class="p">.</span></code></pre><p>The·call·to·<a·href="../../lib/stdlib-6.0.1/doc/html/io.html#format/2"><code·class="inline">io:format/2</code></a>·will·never·be·executed,·but·a·return·address·will
146 still·be·pushed·to·the·stack·each·time·<code·class="inline">loop/0</code>·is·called·recursively.·The146 still·be·pushed·to·the·stack·each·time·<code·class="inline">loop/0</code>·is·called·recursively.·The
147 correct·tail-recursive·version·of·the·function·looks·as·follows:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="0535345850-1">(</span><span·class="p"·data-group-id="0535345850-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">147 correct·tail-recursive·version·of·the·function·looks·as·follows:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="4337890160-1">(</span><span·class="p"·data-group-id="4337890160-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
148 ···</span><span·class="k">receive</span><span·class="w">148 ···</span><span·class="k">receive</span><span·class="w">
149 ······</span><span·class="p"·data-group-id="0535345850-2">{</span><span·class="ss">sys</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0535345850-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 ······</span><span·class="p"·data-group-id="4337890160-2">{</span><span·class="ss">sys</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4337890160-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
150 ·········</span><span·class="nf">handle_sys_msg</span><span·class="p"·data-group-id="0535345850-3">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="0535345850-3">)</span><span·class="p">,</span><span·class="w">150 ·········</span><span·class="nf">handle_sys_msg</span><span·class="p"·data-group-id="4337890160-3">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="4337890160-3">)</span><span·class="p">,</span><span·class="w">
151 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="0535345850-4">(</span><span·class="p"·data-group-id="0535345850-4">)</span><span·class="p">;</span><span·class="w">151 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="4337890160-4">(</span><span·class="p"·data-group-id="4337890160-4">)</span><span·class="p">;</span><span·class="w">
152 ······</span><span·class="p"·data-group-id="0535345850-5">{</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0535345850-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">152 ······</span><span·class="p"·data-group-id="4337890160-5">{</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4337890160-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
153 ·········</span><span·class="n">Reply</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">handle_msg</span><span·class="p"·data-group-id="0535345850-6">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="0535345850-6">)</span><span·class="p">,</span><span·class="w">153 ·········</span><span·class="n">Reply</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">handle_msg</span><span·class="p"·data-group-id="4337890160-6">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="4337890160-6">)</span><span·class="p">,</span><span·class="w">
154 ·········</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="n">Reply</span><span·class="p">,</span><span·class="w">154 ·········</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="n">Reply</span><span·class="p">,</span><span·class="w">
155 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="0535345850-7">(</span><span·class="p"·data-group-id="0535345850-7">)</span><span·class="w">155 ·········</span><span·class="nf">loop</span><span·class="p"·data-group-id="4337890160-7">(</span><span·class="p"·data-group-id="4337890160-7">)</span><span·class="w">
156 ·</span><span·class="k">end</span><span·class="p">.</span></code></pre><h3·id="initial-heap-size"·class="section-heading">156 ·</span><span·class="k">end</span><span·class="p">.</span></code></pre><h3·id="initial-heap-size"·class="section-heading">
157 ··<a·href="#initial-heap-size"·class="hover-link">157 ··<a·href="#initial-heap-size"·class="hover-link">
158 ····<i·class="ri-link-m"·aria-hidden="true"></i>158 ····<i·class="ri-link-m"·aria-hidden="true"></i>
159 ··</a>159 ··</a>
160 ··<span·class="text">Initial·Heap·Size</span>160 ··<span·class="text">Initial·Heap·Size</span>
161 </h3>161 </h3>
162 <p>The·default·initial·heap·size·of·233·words·is·quite·conservative·to·support162 <p>The·default·initial·heap·size·of·233·words·is·quite·conservative·to·support
Offset 189, 30 lines modifiedOffset 189, 30 lines modified
189 ····<i·class="ri-link-m"·aria-hidden="true"></i>189 ····<i·class="ri-link-m"·aria-hidden="true"></i>
190 ··</a>190 ··</a>
191 ··<span·class="text">Receiving·messages</span>191 ··<span·class="text">Receiving·messages</span>
192 </h2>192 </h2>
193 <p>The·cost·of·receiving·messages·depends·on·how·complicated·the·<code·class="inline">receive</code>193 <p>The·cost·of·receiving·messages·depends·on·how·complicated·the·<code·class="inline">receive</code>
194 expression·is.·A·simple·expression·that·matches·any·message·is·very·cheap194 expression·is.·A·simple·expression·that·matches·any·message·is·very·cheap
195 because·it·retrieves·the·first·message·in·the·message·queue:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">receive</span><span·class="w">195 because·it·retrieves·the·first·message·in·the·message·queue:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">receive</span><span·class="w">
196 ····</span><span·class="n">Message</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">handle_msg</span><span·class="p"·data-group-id="0409230894-1">(</span><span·class="n">Message</span><span·class="p"·data-group-id="0409230894-1">)</span><span·class="w">196 ····</span><span·class="n">Message</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">handle_msg</span><span·class="p"·data-group-id="4933972960-1">(</span><span·class="n">Message</span><span·class="p"·data-group-id="4933972960-1">)</span><span·class="w">
197 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>However,·this·is·not·always·convenient:·we·can·receive·a·message·that·we·do·not197 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>However,·this·is·not·always·convenient:·we·can·receive·a·message·that·we·do·not
198 know·how·to·handle·at·this·point,·so·it·is·common·to·only·match·the·messages·we198 know·how·to·handle·at·this·point,·so·it·is·common·to·only·match·the·messages·we
199 expect:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">receive</span><span·class="w">199 expect:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">receive</span><span·class="w">
200 ····</span><span·class="p"·data-group-id="4560614326-1">{</span><span·class="n">Tag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="4560614326-1">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·157,·SHA:·c50af176edb3f5c871636fa833f22c3cd82ebcee1b4c19244543456196c63129·...·]-2">)</span><span·class="w">200 ····</span><span·class="p"·data-group-id="8434712305-1">{</span><span·class="n">Tag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="8434712305-1">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·157,·SHA:·7a08a3636beaae3f1408128c9f6c19587576fdc2c32e43ed71a02369009db155·...·]-2">)</span><span·class="w">
201 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>While·this·is·convenient·it·means·that·the·entire·message·queue·must·be·searched201 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>While·this·is·convenient·it·means·that·the·entire·message·queue·must·be·searched
202 until·it·finds·a·matching·message.·This·is·very·expensive·for·processes·with202 until·it·finds·a·matching·message.·This·is·very·expensive·for·processes·with
203 long·message·queues,·so·there·is·an·optimization·for·the·common·case·of203 long·message·queues,·so·there·is·an·optimization·for·the·common·case·of
204 sending·a·request·and·waiting·for·a·response·shortly·after:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">MRef</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">monitor</span><span·class="p"·data-group-id="3093214466-1">(</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Process</span><span·class="p"·data-group-id="3093214466-1">)</span><span·class="p">,</span><span·class="w">204 sending·a·request·and·waiting·for·a·response·shortly·after:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">MRef</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">monitor</span><span·class="p"·data-group-id="1662044535-1">(</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Process</span><span·class="p"·data-group-id="1662044535-1">)</span><span·class="p">,</span><span·class="w">
205 </span><span·class="n">Process</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="3093214466-2">{</span><span·class="nf">self</span><span·class="p"·data-group-id="3093214466-3">(</span><span·class="p"·data-group-id="3093214466-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·7195a4a7ba0124790c82db3eeeca90e384590f143c34f6b7838b187995eea3a7·...·]-2">}</span><span·class="p">,</span><span·class="w">205 </span><span·class="n">Process</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1662044535-2">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1662044535-3">(</span><span·class="p"·data-group-id="1662044535-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·01934bd31785729797a2a8333fb7639ab8a244bff2c70fe87e30a1f72f9ca1d5·...·]-2">}</span><span·class="p">,</span><span·class="w">
206 </span><span·class="k">receive</span><span·class="w">206 </span><span·class="k">receive</span><span·class="w">
207 ····</span><span·class="p"·data-group-id="3093214466-4">{</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reply</span><span·class="p"·data-group-id="3093214466-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">207 ····</span><span·class="p"·data-group-id="1662044535-4">{</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reply</span><span·class="p"·data-group-id="1662044535-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
208 ········</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="3093214466-5">(</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3093214466-6">[</span><span·class="ss">flush</span><span·class="p"·data-group-id="3093214466-6">]</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·d2a533f05fa58d23bba5892e7b911e5ade270971516424a534647e1fda1fa46c·...·]-5">)</span><span·class="p">,</span><span·class="w">208 ········</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="1662044535-5">(</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1662044535-6">[</span><span·class="ss">flush</span><span·class="p"·data-group-id="1662044535-6">]</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·bbc93583f8748bbfd900193285aab6940a37eef7cd8552b592a738fde675cdc1·...·]-5">)</span><span·class="p">,</span><span·class="w">
209 ········</span><span·class="nf">handle_reply</span><span·class="p"·data-group-id="3093214466-7">(</span><span·class="n">Reply</span><span·class="p"·data-group-id="3093214466-7">)</span><span·class="p">;</span><span·class="w">209 ········</span><span·class="nf">handle_reply</span><span·class="p"·data-group-id="1662044535-7">(</span><span·class="n">Reply</span><span·class="p"·data-group-id="1662044535-7">)</span><span·class="p">;</span><span·class="w">
210 ····</span><span·class="p"·data-group-id="3093214466-8">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·141,·SHA:·a575949b6878fb152069413fd7294b5c9edbe42cafb3bb22c03af45cbde516c8·...·]-8">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">210 ····</span><span·class="p"·data-group-id="1662044535-8">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·141,·SHA:·5a408cb089a37055a8627e47b4bf5b8b47b4117321382d2320a5a6aa420b8f64·...·]-8">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
211 ········</span><span·class="nf">handle_error</span><span·class="p"·data-group-id="3093214466-9">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="3093214466-9">)</span><span·class="w">211 ········</span><span·class="nf">handle_error</span><span·class="p"·data-group-id="1662044535-9">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="1662044535-9">)</span><span·class="w">
212 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Since·the·compiler·knows·that·the·reference·created·by212 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Since·the·compiler·knows·that·the·reference·created·by
213 <a·href="../../erts-15.0.1/doc/html/erlang.html#monitor/2"><code·class="inline">monitor/2</code></a>·cannot·exist·before·the·call·(since·it·is·a·globally213 <a·href="../../erts-15.0.1/doc/html/erlang.html#monitor/2"><code·class="inline">monitor/2</code></a>·cannot·exist·before·the·call·(since·it·is·a·globally
214 unique·identifier),·and·that·the·<code·class="inline">receive</code>·only·matches·messages·that·contain214 unique·identifier),·and·that·the·<code·class="inline">receive</code>·only·matches·messages·that·contain
215 said·reference,·it·will·tell·the·emulator·to·search·only·the·messages·that215 said·reference,·it·will·tell·the·emulator·to·search·only·the·messages·that
216 arrived·after·the·call·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#monitor/2"><code·class="inline">monitor/2</code></a>.</p><p>The·above·is·a·simple·example·where·one·is·but·guaranteed·that·the·optimization216 arrived·after·the·call·to·<a·href="../../erts-15.0.1/doc/html/erlang.html#monitor/2"><code·class="inline">monitor/2</code></a>.</p><p>The·above·is·a·simple·example·where·one·is·but·guaranteed·that·the·optimization
217 will·take,·but·what·about·more·complicated·code?</p><p><a·href=""·id="recv_opt_info"></a></p><h3·id="option-recv_opt_info"·class="section-heading">217 will·take,·but·what·about·more·complicated·code?</p><p><a·href=""·id="recv_opt_info"></a></p><h3·id="option-recv_opt_info"·class="section-heading">
218 ··<a·href="#option-recv_opt_info"·class="hover-link">218 ··<a·href="#option-recv_opt_info"·class="hover-link">
Offset 228, 101 lines modifiedOffset 228, 101 lines modified
228 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">200</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">NOT</span><span·class="w">·</span><span·class="n">OPTIMIZED</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">all</span><span·class="w">·</span><span·class="ss">clauses</span><span·class="w">·</span><span·class="ss">do</span><span·class="w">·</span><span·class="ow">not</span><span·class="w">·</span><span·class="ss">match</span><span·class="w">·</span><span·class="ss">a</span><span·class="w">·</span><span·class="ss">suitable</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">228 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">200</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">NOT</span><span·class="w">·</span><span·class="n">OPTIMIZED</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">all</span><span·class="w">·</span><span·class="ss">clauses</span><span·class="w">·</span><span·class="ss">do</span><span·class="w">·</span><span·class="ow">not</span><span·class="w">·</span><span·class="ss">match</span><span·class="w">·</span><span·class="ss">a</span><span·class="w">·</span><span·class="ss">suitable</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">
229 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">206</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">OPTIMIZED</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">·</span><span·class="ss">used</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">mark</span><span·class="w">·</span><span·class="ss">a</span><span·class="w">·</span><span·class="ss">message</span><span·class="w">·</span><span·class="ss">queue</span><span·class="w">·</span><span·class="ss">position</span><span·class="w">229 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">206</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">OPTIMIZED</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">·</span><span·class="ss">used</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">mark</span><span·class="w">·</span><span·class="ss">a</span><span·class="w">·</span><span·class="ss">message</span><span·class="w">·</span><span·class="ss">queue</span><span·class="w">·</span><span·class="ss">position</span><span·class="w">
230 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">208</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">OPTIMIZED</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">all</span><span·class="w">·</span><span·class="ss">clauses</span><span·class="w">·</span><span·class="ss">match</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">·</span><span·class="ss">created</span><span·class="w">·</span><span·class="ss">by</span><span·class="w">·</span><span·class="nb">monitor</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·</span><span·class="ss">at</span><span·class="w">·</span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">206</span><span·class="w">230 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">208</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">OPTIMIZED</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">all</span><span·class="w">·</span><span·class="ss">clauses</span><span·class="w">·</span><span·class="ss">match</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">·</span><span·class="ss">created</span><span·class="w">·</span><span·class="ss">by</span><span·class="w">·</span><span·class="nb">monitor</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·</span><span·class="ss">at</span><span·class="w">·</span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">206</span><span·class="w">
231 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">219</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">INFO</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">passing</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">·</span><span·class="ss">created</span><span·class="w">·</span><span·class="ss">by</span><span·class="w">·</span><span·class="ss">make_ref</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">·</span><span·class="ss">at</span><span·class="w">·</span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">218</span><span·class="w">231 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">219</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">INFO</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">passing</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">·</span><span·class="ss">created</span><span·class="w">·</span><span·class="ss">by</span><span·class="w">·</span><span·class="ss">make_ref</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">·</span><span·class="ss">at</span><span·class="w">·</span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">218</span><span·class="w">
232 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">222</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">OPTIMIZED</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">all</span><span·class="w">·</span><span·class="ss">clauses</span><span·class="w">·</span><span·class="ss">match</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="ss">parameter</span><span·class="w">·</span><span·class="mi">1</span></code></pre><p>To·make·it·clearer·exactly·what·code·the·warnings·refer·to,·the·warnings·in·the232 </span><span·class="ss">efficiency_guide</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">222</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="n">OPTIMIZED</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">all</span><span·class="w">·</span><span·class="ss">clauses</span><span·class="w">·</span><span·class="ss">match</span><span·class="w">·</span><span·class="ss">reference</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="ss">parameter</span><span·class="w">·</span><span·class="mi">1</span></code></pre><p>To·make·it·clearer·exactly·what·code·the·warnings·refer·to,·the·warnings·in·the
233 following·examples·are·inserted·as·comments·after·the·clause·they·refer·to,·for233 following·examples·are·inserted·as·comments·after·the·clause·they·refer·to,·for
234 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·DO</span><span·class="w">234 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·DO</span><span·class="w">
235 </span><span·class="nf">simple_receive</span><span·class="p"·data-group-id="7047803566-1">(</span><span·class="p"·data-group-id="7047803566-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">235 </span><span·class="nf">simple_receive</span><span·class="p"·data-group-id="6819090063-1">(</span><span·class="p"·data-group-id="6819090063-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
236 </span><span·class="c1">%%·efficiency_guide.erl:194:·Warning:·INFO:·not·a·selective·receive,·this·is·always·fast</span><span·class="w">236 </span><span·class="c1">%%·efficiency_guide.erl:194:·Warning:·INFO:·not·a·selective·receive,·this·is·always·fast</span><span·class="w">
237 </span><span·class="k">receive</span><span·class="w">237 </span><span·class="k">receive</span><span·class="w">
238 ····</span><span·class="n">Message</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">handle_msg</span><span·class="p"·data-group-id="7047803566-2">(</span><span·class="n">Message</span><span·class="p"·data-group-id="7047803566-2">)</span><span·class="w">238 ····</span><span·class="n">Message</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">handle_msg</span><span·class="p"·data-group-id="6819090063-2">(</span><span·class="n">Message</span><span·class="p"·data-group-id="6819090063-2">)</span><span·class="w">
239 </span><span·class="k">end</span><span·class="p">.</span><span·class="w">239 </span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
240 </span><span·class="c1">%%·DO·NOT,·unless·Tag·is·known·to·be·a·suitable·reference:·see</span><span·class="w">240 </span><span·class="c1">%%·DO·NOT,·unless·Tag·is·known·to·be·a·suitable·reference:·see</span><span·class="w">
241 </span><span·class="c1">%%·cross_function_receive/0·further·down.</span><span·class="w">241 </span><span·class="c1">%%·cross_function_receive/0·further·down.</span><span·class="w">
242 </span><span·class="nf">selective_receive</span><span·class="p"·data-group-id="7047803566-3">(</span><span·class="n">Tag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="7047803566-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">242 </span><span·class="nf">selective_receive</span><span·class="p"·data-group-id="6819090063-3">(</span><span·class="n">Tag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="6819090063-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
243 </span><span·class="c1">%%·efficiency_guide.erl:200:·Warning:·NOT·OPTIMIZED:·all·clauses·do·not·match·a·suitable·reference</span><span·class="w">243 </span><span·class="c1">%%·efficiency_guide.erl:200:·Warning:·NOT·OPTIMIZED:·all·clauses·do·not·match·a·suitable·reference</span><span·class="w">
244 </span><span·class="k">receive</span><span·class="w">244 </span><span·class="k">receive</span><span·class="w">
245 ····</span><span·class="p"·data-group-id="7047803566-4">{</span><span·class="n">Tag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="7047803566-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·157,·SHA:·3cd6c9927eebdd8a6ce6b281830be8ad8aed42991e02adba7ba790169f876769·...·]-5">)</span><span·class="w">245 ····</span><span·class="p"·data-group-id="6819090063-4">{</span><span·class="n">Tag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="6819090063-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·157,·SHA:·a377ef80300eedee1117cac08334b5ef513630ff706c2a183aa4c20b91ea784a·...·]-5">)</span><span·class="w">
246 </span><span·class="k">end</span><span·class="p">.</span><span·class="w">246 </span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
247 </span><span·class="c1">%%·DO</span><span·class="w">247 </span><span·class="c1">%%·DO</span><span·class="w">
248 </span><span·class="nf">optimized_receive</span><span·class="p"·data-group-id="7047803566-6">(</span><span·class="n">Process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Request</span><span·class="p"·data-group-id="7047803566-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">248 </span><span·class="nf">optimized_receive</span><span·class="p"·data-group-id="6819090063-6">(</span><span·class="n">Process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Request</span><span·class="p"·data-group-id="6819090063-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
249 </span><span·class="c1">%%·efficiency_guide.erl:206:·Warning:·OPTIMIZED:·reference·used·to·mark·a·message·queue·position</span><span·class="w">249 </span><span·class="c1">%%·efficiency_guide.erl:206:·Warning:·OPTIMIZED:·reference·used·to·mark·a·message·queue·position</span><span·class="w">
250 ····</span><span·class="n">MRef</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">monitor</span><span·class="p"·data-group-id="7047803566-7">(</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Process</span><span·class="p"·data-group-id="7047803566-7">)</span><span·class="p">,</span><span·class="w">250 ····</span><span·class="n">MRef</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">monitor</span><span·class="p"·data-group-id="6819090063-7">(</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Process</span><span·class="p"·data-group-id="6819090063-7">)</span><span·class="p">,</span><span·class="w">
251 ····</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="7047803566-8">{</span><span·class="nf">self</span><span·class="p"·data-group-id="7047803566-9">(</span><span·class="p"·data-group-id="7047803566-9">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·f198177f002b69d56ab09410de01d83e8595511555364b00ada78dff75942092·...·]-8">}</span><span·class="p">,</span><span·class="w">251 ····</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="6819090063-8">{</span><span·class="nf">self</span><span·class="p"·data-group-id="6819090063-9">(</span><span·class="p"·data-group-id="6819090063-9">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·00b26e44c5a9e342a582eb186d0d827003303adcdaa00680c04a8d46646a1e6e·...·]-8">}</span><span·class="p">,</span><span·class="w">
252 ····</span><span·class="c1">%%·efficiency_guide.erl:208:·Warning:·OPTIMIZED:·matches·reference·created·by·monitor/2·at·efficiency_guide.erl:206</span><span·class="w">252 ····</span><span·class="c1">%%·efficiency_guide.erl:208:·Warning:·OPTIMIZED:·matches·reference·created·by·monitor/2·at·efficiency_guide.erl:206</span><span·class="w">
253 ····</span><span·class="k">receive</span><span·class="w">253 ····</span><span·class="k">receive</span><span·class="w">
254 ········</span><span·class="p"·data-group-id="7047803566-10">{</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reply</span><span·class="p"·data-group-id="7047803566-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">254 ········</span><span·class="p"·data-group-id="6819090063-10">{</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reply</span><span·class="p"·data-group-id="6819090063-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
255 ········</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="7047803566-11">(</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7047803566-12">[</span><span·class="ss">flush</span><span·class="p"·data-group-id="7047803566-12">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·a9273058da716adc35ed64dd7f403e509877c36720b92f20373253164442bed7·...·]-11">)</span><span·class="p">,</span><span·class="w">255 ········</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="6819090063-11">(</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6819090063-12">[</span><span·class="ss">flush</span><span·class="p"·data-group-id="6819090063-12">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·41397a739ba3826558e84d0692fd988e9c0207cc99d7f46e87bd125861477cae·...·]-11">)</span><span·class="p">,</span><span·class="w">
256 ········</span><span·class="nf">handle_reply</span><span·class="p"·data-group-id="7047803566-13">(</span><span·class="n">Reply</span><span·class="p"·data-group-id="7047803566-13">)</span><span·class="p">;</span><span·class="w">256 ········</span><span·class="nf">handle_reply</span><span·class="p"·data-group-id="6819090063-13">(</span><span·class="n">Reply</span><span·class="p"·data-group-id="6819090063-13">)</span><span·class="p">;</span><span·class="w">
257 ····</span><span·class="p"·data-group-id="7047803566-14">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·142,·SHA:·ee5fedc91d0abeac9324f55a5dd3d6d19c886d9a1c31bfb2fb4abc0d7f5a08b1·...·]-14">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">257 ····</span><span·class="p"·data-group-id="6819090063-14">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·142,·SHA:·a50117daf19e059058edb4a0be76c4b51ea38948a18d990ea26f1282a567fb8e·...·]-14">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
258 ····</span><span·class="nf">handle_error</span><span·class="p"·data-group-id="7047803566-15">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="7047803566-15">)</span><span·class="w">258 ····</span><span·class="nf">handle_error</span><span·class="p"·data-group-id="6819090063-15">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="6819090063-15">)</span><span·class="w">
259 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">259 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
260 </span><span·class="c1">%%·DO</span><span·class="w">260 </span><span·class="c1">%%·DO</span><span·class="w">
261 </span><span·class="nf">cross_function_receive</span><span·class="p"·data-group-id="7047803566-16">(</span><span·class="p"·data-group-id="7047803566-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">261 </span><span·class="nf">cross_function_receive</span><span·class="p"·data-group-id="6819090063-16">(</span><span·class="p"·data-group-id="6819090063-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
262 ····</span><span·class="c1">%%·efficiency_guide.erl:218:·Warning:·OPTIMIZED:·reference·used·to·mark·a·message·queue·position</span><span·class="w">262 ····</span><span·class="c1">%%·efficiency_guide.erl:218:·Warning:·OPTIMIZED:·reference·used·to·mark·a·message·queue·position</span><span·class="w">
263 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">make_ref</span><span·class="p"·data-group-id="7047803566-17">(</span><span·class="p"·data-group-id="7047803566-17">)</span><span·class="p">,</span><span·class="w">263 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">make_ref</span><span·class="p"·data-group-id="6819090063-17">(</span><span·class="p"·data-group-id="6819090063-17">)</span><span·class="p">,</span><span·class="w">
264 ····</span><span·class="c1">%%·efficiency_guide.erl:219:·Warning:·INFO:·passing·reference·created·by·make_ref/0·at·efficiency_guide.erl:218</span><span·class="w">264 ····</span><span·class="c1">%%·efficiency_guide.erl:219:·Warning:·INFO:·passing·reference·created·by·make_ref/0·at·efficiency_guide.erl:218</span><span·class="w">
265 ····</span><span·class="nf">cross_function_receive</span><span·class="p"·data-group-id="7047803566-18">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="7047803566-18">)</span><span·class="p">.</span><span·class="w">265 ····</span><span·class="nf">cross_function_receive</span><span·class="p"·data-group-id="6819090063-18">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="6819090063-18">)</span><span·class="p">.</span><span·class="w">
  
266 </span><span·class="nf">cross_function_receive</span><span·class="p"·data-group-id="7047803566-19">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="7047803566-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">266 </span><span·class="nf">cross_function_receive</span><span·class="p"·data-group-id="6819090063-19">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="6819090063-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
267 ····</span><span·class="c1">%%·efficiency_guide.erl:222:·Warning:·OPTIMIZED:·all·clauses·match·reference·in·function·parameter·1</span><span·class="w">267 ····</span><span·class="c1">%%·efficiency_guide.erl:222:·Warning:·OPTIMIZED:·all·clauses·match·reference·in·function·parameter·1</span><span·class="w">
268 ····</span><span·class="k">receive</span><span·class="w">268 ····</span><span·class="k">receive</span><span·class="w">
269 ········</span><span·class="p"·data-group-id="7047803566-20">{</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="7047803566-20">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·160,·SHA:·b838cccf3aa91344455e196f74a469da15db6ac0cd6b5082366168b3aba2799e·...·]-21">)</span><span·class="w">269 ········</span><span·class="p"·data-group-id="6819090063-20">{</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="6819090063-20">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·160,·SHA:·d5dedf4cdecbe4d14add495a06202f44e4753fb5b55a3b7d7e53e3ced70318df·...·]-21">)</span><span·class="w">
270 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><h2·id="literal-pool"·class="section-heading">270 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><h2·id="literal-pool"·class="section-heading">
271 ··<a·href="#literal-pool"·class="hover-link">271 ··<a·href="#literal-pool"·class="hover-link">
272 ····<i·class="ri-link-m"·aria-hidden="true"></i>272 ····<i·class="ri-link-m"·aria-hidden="true"></i>
273 ··</a>273 ··</a>
Max diff block lines reached; 20635/67824 bytes (30.42%) of diff not shown.
751 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/doc/system/efficiency_guide.html
    
Offset 185, 15 lines modifiedOffset 185, 15 lines modified
185 ······<p·class="built-using">185 ······<p·class="built-using">
186 ········Built·using186 ········Built·using
187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
189 ······</p>189 ······</p>
190 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
191 ····</footer>191 ····</footer>
192 ··</div>192 ··</div>
193 </main>193 </main>
194 </div>194 </div>
195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
196 <script>196 <script>
197 ··document.addEventListener("DOMContentLoaded",·function·()·{197 ··document.addEventListener("DOMContentLoaded",·function·()·{
699 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/doc/system/embedded.html
    
Offset 398, 15 lines modifiedOffset 398, 15 lines modified
398 ······<p·class="built-using">398 ······<p·class="built-using">
399 ········Built·using399 ········Built·using
400 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the400 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
401 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>401 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
402 ······</p>402 ······</p>
403 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>403 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
404 ····</footer>404 ····</footer>
405 ··</div>405 ··</div>
406 </main>406 </main>
407 </div>407 </div>
408 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>408 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
409 <script>409 <script>
410 ··document.addEventListener("DOMContentLoaded",·function·()·{410 ··document.addEventListener("DOMContentLoaded",·function·()·{
683 B
html2text {}
Max HTML report size reached
72.3 KB
./usr/share/doc/erlang-doc/html/doc/system/erl_interface.html
    
Offset 120, 119 lines modifiedOffset 120, 119 lines modified
120 to·read·the·port·example·in·<a·href="c_port.html">Ports</a>·before·reading·this·section.</p><h2·id="erlang-program"·class="section-heading">120 to·read·the·port·example·in·<a·href="c_port.html">Ports</a>·before·reading·this·section.</p><h2·id="erlang-program"·class="section-heading">
121 ··<a·href="#erlang-program"·class="hover-link">121 ··<a·href="#erlang-program"·class="hover-link">
122 ····<i·class="ri-link-m"·aria-hidden="true"></i>122 ····<i·class="ri-link-m"·aria-hidden="true"></i>
123 ··</a>123 ··</a>
124 ··<span·class="text">Erlang·Program</span>124 ··<span·class="text">Erlang·Program</span>
125 </h2>125 </h2>
126 <p>The·following·example·shows·an·Erlang·program·communicating·with·a·C·program126 <p>The·following·example·shows·an·Erlang·program·communicating·with·a·C·program
127 over·a·plain·port·with·home·made·encoding:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="5278131740-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="5278131740-1">)</span><span·class="p">.</span><span·class="w">127 over·a·plain·port·with·home·made·encoding:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1255165977-1">(</span><span·class="ss">complex1</span><span·class="p"·data-group-id="1255165977-1">)</span><span·class="p">.</span><span·class="w">
128 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5278131740-2">(</span><span·class="p"·data-group-id="5278131740-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·241,·SHA:·9b2ec59bfa99a1a2c8336d0aa66993322f24f5fff738ef05d9885b6360efbc2d·...·]-2">)</span><span·class="p">.</span><span·class="w">128 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1255165977-2">(</span><span·class="p"·data-group-id="1255165977-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·241,·SHA:·6249147b0dc1ee3028c415dc0e90b364181722c83ff6a32c0fd72fd08df78e21·...·]-2">)</span><span·class="p">.</span><span·class="w">
129 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5278131740-4">(</span><span·class="p"·data-group-id="5278131740-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·e7d3866ad8e27e046e8a0b44b2e266a7f031d5f918bf84d9bf8bb1a9cca6f26c·...·]-4">)</span><span·class="p">.</span><span·class="w">129 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1255165977-4">(</span><span·class="p"·data-group-id="1255165977-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·45d271eb97bd91e8398692c8581ab6689f273de6d3f4277194bf486c0ae29d0a·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
130 </span><span·class="nf">start</span><span·class="p"·data-group-id="5278131740-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="5278131740-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">130 </span><span·class="nf">start</span><span·class="p"·data-group-id="1255165977-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="1255165977-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
131 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="5278131740-7">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5278131740-8">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·f3b7dd193ea74cff3bc718f5e8137d42531ec52ddebbb1b43829478d206360b3·...·]-7">)</span><span·class="p">.</span><span·class="w">131 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1255165977-7">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1255165977-8">[</span><spa[·...·truncated·by·diffoscope;·len:·119,·SHA:·e2e5c2f421f3b52f6529a990f72a4b81c1c643f84d00db761147038b36e1bd23·...·]-7">)</span><span·class="p">.</span><span·class="w">
132 </span><span·class="nf">stop</span><span·class="p"·data-group-id="5278131740-9">(</span><span·class="p"·data-group-id="5278131740-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">132 </span><span·class="nf">stop</span><span·class="p"·data-group-id="1255165977-9">(</span><span·class="p"·data-group-id="1255165977-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
133 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">.</span><span·class="w">133 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">.</span><span·class="w">
  
134 </span><span·class="nf">foo</span><span·class="p"·data-group-id="5278131740-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="5278131740-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">134 </span><span·class="nf">foo</span><span·class="p"·data-group-id="1255165977-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="1255165977-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
135 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="5278131740-11">(</span><span·class="p"·data-group-id="5278131740-12">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="5278131740-12">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·56537e70ad5cca6c3be9463749b27b9effdcf345b6e5e5f1c8459965211250e2·...·]-11">)</span><span·class="p">.</span><span·class="w">135 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="1255165977-11">(</span><span·class="p"·data-group-id="1255165977-12">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="1255165977-12">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·086c1006fc73559fdad13360764c73fb558a56d2408bcfc12dfc2a984df89df1·...·]-11">)</span><span·class="p">.</span><span·class="w">
136 </span><span·class="nf">bar</span><span·class="p"·data-group-id="5278131740-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="5278131740-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">136 </span><span·class="nf">bar</span><span·class="p"·data-group-id="1255165977-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="1255165977-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
137 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="5278131740-14">(</span><span·class="p"·data-group-id="5278131740-15">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="5278131740-15">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·56537e70ad5cca6c3be9463749b27b9effdcf345b6e5e5f1c8459965211250e2·...·]-14">)</span><span·class="p">.</span><span·class="w">137 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="1255165977-14">(</span><span·class="p"·data-group-id="1255165977-15">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="1255165977-15">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·086c1006fc73559fdad13360764c73fb558a56d2408bcfc12dfc2a984df89df1·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
138 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="5278131740-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="5278131740-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">138 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="1255165977-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="1255165977-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
139 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5278131740-17">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="5278131740-18">(</span><span·class="p"·data-group-id="5278131740-18">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·65a14482e613ed83902fcb30ca6c2453ef7a3a93d0a61a0affb25e1ac5ce8370·...·]-17">}</span><span·class="p">,</span><span·class="w">139 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1255165977-17">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="1255165977-18">(</span><span·class="p"·data-group-id="1255165977-18">)</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·94,·SHA:·7905a209e640362e0517ce941a8e9c402770ffc117483e778ee690b5ae870b30·...·]-17">}</span><span·class="p">,</span><span·class="w">
140 ····</span><span·class="k">receive</span><span·class="w">140 ····</span><span·class="k">receive</span><span·class="w">
141 »       </span><span·class="p"·data-group-id="5278131740-19">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="5278131740-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">141 »       </span><span·class="p"·data-group-id="1255165977-19">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="1255165977-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
142 »       ····</span><span·class="n">Result</span><span·class="w">142 »       ····</span><span·class="n">Result</span><span·class="w">
143 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">143 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
144 </span><span·class="nf">init</span><span·class="p"·data-group-id="5278131740-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="5278131740-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">144 </span><span·class="nf">init</span><span·class="p"·data-group-id="1255165977-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="1255165977-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
145 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="5278131740-21">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="5278131740-22">(</span><span·class="p"·data-group-id="5278131740-22">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·75c42c67bffaf506bdafbde2b8966f60dd4a3879d889bcc9ccf5f204cab379ca·...·]-21">)</span><span·class="p">,</span><span·class="w">145 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="1255165977-21">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="1255165977-22">(</span><span·class="p"·data-group-id="1255165977-22">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·bfa2e0ff756e79a8de4b3eeb184f7fcb7142823ec339b379e7f3aaddd5f03430·...·]-21">)</span><span·class="p">,</span><span·class="w">
146 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="5278131740-23">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="5278131740-23">)</span><span·class="p">,</span><span·class="w">146 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="1255165977-23">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="1255165977-23">)</span><span·class="p">,</span><span·class="w">
147 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="5278131740-24">(</span><span·class="p"·data-group-id="5278131740-25">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="5278131740-25">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·499dc1b83ee5710d85efc46ab9588ec461831e958b7d5e4dfc6f2d67a4add868·...·]-24">)</span><span·class="p">,</span><span·class="w">147 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="1255165977-24">(</span><span·class="p"·data-group-id="1255165977-25">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="1255165977-25">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·389,·SHA:·89f0012e8b2c4787bac141b484d23e87cadde323a93f6c08d8e02ab06b25eb34·...·]-24">)</span><span·class="p">,</span><span·class="w">
148 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="5278131740-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5278131740-28">)</span><span·class="p">.</span><span·class="w">148 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="1255165977-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1255165977-28">)</span><span·class="p">.</span><span·class="w">
  
149 </span><span·class="nf">loop</span><span·class="p"·data-group-id="5278131740-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5278131740-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 </span><span·class="nf">loop</span><span·class="p"·data-group-id="1255165977-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1255165977-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
150 ····</span><span·class="k">receive</span><span·class="w">150 ····</span><span·class="k">receive</span><span·class="w">
151 »       </span><span·class="p"·data-group-id="5278131740-30">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="5278131740-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">151 »       </span><span·class="p"·data-group-id="1255165977-30">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1255165977-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
152 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5278131740-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="5278131740-32">(</span><span·class="p"·data-group-id="5278131740-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5278131740-33">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·925171d7f03e1d63a34ed88741d06ec8aeabf86322bf21118111796256a0472a·...·]-31">}</span><span·class="p">,</span><span·class="w">152 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1255165977-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1255165977-32">(</span><span·class="p"·data-group-id="1255165977-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1255165977-33">{</[·...·truncated·by·diffoscope;·len:·343,·SHA:·96efca78881c917dc7d041a151972774ff6389e013c0803f8eeb9291904cbc06·...·]-31">}</span><span·class="p">,</span><span·class="w">
153 »       ····</span><span·class="k">receive</span><span·class="w">153 »       ····</span><span·class="k">receive</span><span·class="w">
154 »       »       </span><span·class="p"·data-group-id="5278131740-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5278131740-36">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·c4f7feda6791b76cbde5f679ec0831d6450a4201d87184c1f4b3f2fba8bd5c02·...·]-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">154 »       »       </span><span·class="p"·data-group-id="1255165977-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1255165977-36">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><[·...·truncated·by·diffoscope;·len:·94,·SHA:·3271c2478e5ed5cf1a2eabb55346b57782f27df2c8e0d5949cc843c70ef26eeb·...·]-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
155 »       »       ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5278131740-37">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="5278131740-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="5278131740-3[·...·truncated·by·diffoscope;·len:·52,·SHA:·a91690edec8f782b2278565ee4d36b5712d63647e460a0f3667a78f4f394b2a3·...·]-37">}</span><span·class="w">155 »       »       ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1255165977-37">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="1255165977-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="1255165977-3[·...·truncated·by·diffoscope;·len:·52,·SHA:·01772d572c58115515a7d63b6facb670b3f6938c5483a3491a39517dce157469·...·]-37">}</span><span·class="w">
156 »       ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">156 »       ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
157 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="5278131740-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5278131740-39">)</span><span·class="p">;</span><span·class="w">157 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="1255165977-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="1255165977-39">)</span><span·class="p">;</span><span·class="w">
158 »       </span><span·class="ss">stop</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">158 »       </span><span·class="ss">stop</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
159 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5278131740-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="5278131740-41">(</span><span·class="p"·data-group-id="5278131740-41">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">close</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·6b5139a2a0e566f46a4779e8ea1332c4281865e18e5453189d77518bbb58d8b0·...·]-40">}</span><span·class="p">,</span><span·class="w">159 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1255165977-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1255165977-41">(</span><span·class="p"·data-group-id="1255165977-41">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">close</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·f4a22e06a2069dacfc599d998fb3cc527c452dd2da470dd8e1f5b36656444e08·...·]-40">}</span><span·class="p">,</span><span·class="w">
160 »       ····</span><span·class="k">receive</span><span·class="w">160 »       ····</span><span·class="k">receive</span><span·class="w">
161 »       »       </span><span·class="p"·data-group-id="5278131740-42">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="5278131740-42">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">161 »       »       </span><span·class="p"·data-group-id="1255165977-42">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="1255165977-42">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="5278131740-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="5278131740-43">)</span><span·class="w">162 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="1255165977-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="1255165977-43">)</span><span·class="w">
163 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">163 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
164 »       </span><span·class="p"·data-group-id="5278131740-44">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="5278131740-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">164 »       </span><span·class="p"·data-group-id="1255165977-44">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="1255165977-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
165 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="5278131740-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="5278131740-45">)</span><span·class="w">165 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="1255165977-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="1255165977-45">)</span><span·class="w">
166 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">166 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
167 </span><span·class="nf">encode</span><span·class="p"·data-group-id="5278131740-46">(</span><span·class="p"·data-group-id="5278131740-47">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="5278131740-47">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·0e917d33750a0948f5e00502808fa8f56ee230d0d0415416a062c266127ce73c·...·]-48">]</span><span·class="p">;</span><span·class="w">167 </span><span·class="nf">encode</span><span·class="p"·data-group-id="1255165977-46">(</span><span·class="p"·data-group-id="1255165977-47">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="1255165977-47">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·cf662068193e5b89d59d3b851032195f3ea8cbd9111f9591ad0a6642aed1355c·...·]-48">]</span><span·class="p">;</span><span·class="w">
168 </span><span·class="nf">encode</span><span·class="p"·data-group-id="5278131740-49">(</span><span·class="p"·data-group-id="5278131740-50">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="5278131740-50">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·067d526734742803b31932a959bed1f09b7c7d70467cb5b90f2c01d79c589f3f·...·]-51">]</span><span·class="p">.</span><span·class="w">168 </span><span·class="nf">encode</span><span·class="p"·data-group-id="1255165977-49">(</span><span·class="p"·data-group-id="1255165977-50">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="1255165977-50">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·296,·SHA:·e65a5f02bcb67776d2e90cff8d08c187f72f9e33867dacf8aee9bfe196d53976·...·]-51">]</span><span·class="p">.</span><span·class="w">
  
169 </span><span·class="nf">decode</span><span·class="p"·data-group-id="5278131740-52">(</span><span·class="p"·data-group-id="5278131740-53">[</span><span·class="n">Int</span><span·class="p"·data-group-id="5278131740-53">]</span><span·class="p"·data-group-id="5278131740-52">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><p>There·are·two·differences·when·using·Erl_Interface·on·the·C·side·compared·to·the169 </span><span·class="nf">decode</span><span·class="p"·data-group-id="1255165977-52">(</span><span·class="p"·data-group-id="1255165977-53">[</span><span·class="n">Int</span><span·class="p"·data-group-id="1255165977-53">]</span><span·class="p"·data-group-id="1255165977-52">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Int</span><span·class="p">.</span></code></pre><p>There·are·two·differences·when·using·Erl_Interface·on·the·C·side·compared·to·the
170 example·in·<a·href="c_port.html">Ports</a>,·using·only·the·plain·port:</p><ul><li>As·Erl_Interface·operates·on·the·Erlang·external·term·format,·the·port·must·be170 example·in·<a·href="c_port.html">Ports</a>,·using·only·the·plain·port:</p><ul><li>As·Erl_Interface·operates·on·the·Erlang·external·term·format,·the·port·must·be
171 set·to·use·binaries.</li><li>Instead·of·inventing·an·encoding/decoding·scheme,·the171 set·to·use·binaries.</li><li>Instead·of·inventing·an·encoding/decoding·scheme,·the
172 <a·href="../../erts-15.0.1/doc/html/erlang.html#term_to_binary/1"><code·class="inline">term_to_binary/1</code></a>·and172 <a·href="../../erts-15.0.1/doc/html/erlang.html#term_to_binary/1"><code·class="inline">term_to_binary/1</code></a>·and
173 <a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>·BIFs·are·to·be·used.</li></ul><p>That·is:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">open_port</span><span·class="p"·data-group-id="6868518672-1">(</span><span·class="p"·data-group-id="6868518672-2">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="6868518672-2">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·2065,·SHA:·d8ec52f5609bd3a40e34bf86f5607564389f839ef3de8c5398a051c219765c1d·...·]-1">}</span><span·class="p">,</span><span·class="w">173 <a·href="../../erts-15.0.1/doc/html/erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>·BIFs·are·to·be·used.</li></ul><p>That·is:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">open_port</span><span·class="p"·data-group-id="7918991476-1">(</span><span·class="p"·data-group-id="7918991476-2">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="7918991476-2">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·2065,·SHA:·6a3ee92f69362fe7442b6e3fdfc5c4840c9fb7d8a61275ffa38a3f261625bb84·...·]-1">}</span><span·class="p">,</span><span·class="w">
174 </span><span·class="k">receive</span><span·class="w">174 </span><span·class="k">receive</span><span·class="w">
175 ··</span><span·class="p"·data-group-id="4511885689-5">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4511885689-6">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·ad54d4d96b9e67371f4daf7369cbc3825ab78d9ffae14164f3d2bd0a1b457cea·...·]-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 ··</span><span·class="p"·data-group-id="8085130714-5">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8085130714-6">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·376005ae7d57b295d09bed7aa492c040ca5f1bcb18147aa6d4293717e979fe15·...·]-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
176 ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="4511885689-7">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="4511885689-8">(</span><span·class="n">Data</span><span·class="p"·data-group-id="4511885689-8">[·...·truncated·by·diffoscope;·len:·49,·SHA:·7969f791494c0e1ad4551b1c2ccef6d97250d7c481f5429e26a2e0e23167fb2b·...·]-7">}</span><span·class="w">176 ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8085130714-7">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">decode</span><span·class="p"·data-group-id="8085130714-8">(</span><span·class="n">Data</span><span·class="p"·data-group-id="8085130714-8">[·...·truncated·by·diffoscope;·len:·49,·SHA:·928977af8656d12029119916431433662f5b638b70d5d08c8dec841789db7af5·...·]-7">}</span><span·class="w">
177 </span><span·class="k">end</span></code></pre><p>is·replaced·with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="2145710294-1">{</span><span·class="nf">self</span><span·class="p"·data-group-id="2145710294-2">(</span><span·class="p"·data-group-id="2145710294-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2145710294-3">{</span[·...·truncated·by·diffoscope;·len:·344,·SHA:·d18d74d8c852eac462a11e54f0d6cbb5fe7dda7fe395f8674ab338aeaa9b2259·...·]-1">}</span><span·class="p">,</span><span·class="w">177 </span><span·class="k">end</span></code></pre><p>is·replaced·with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="9732046223-1">{</span><span·class="nf">self</span><span·class="p"·data-group-id="9732046223-2">(</span><span·class="p"·data-group-id="9732046223-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9732046223-3">{</span[·...·truncated·by·diffoscope;·len:·344,·SHA:·6022e938e00f2ff88c4e996c01eecc783676c7bcca85faa495b48eced2fc79b2·...·]-1">}</span><span·class="p">,</span><span·class="w">
178 </span><span·class="k">receive</span><span·class="w">178 </span><span·class="k">receive</span><span·class="w">
179 ··</span><span·class="p"·data-group-id="2145710294-5">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2145710294-6">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·a6c012a540cae57d500e7fe7cbcc3d091aa175e2bfd3f29544818329b53bdbe4·...·]-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">179 ··</span><span·class="p"·data-group-id="9732046223-5">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9732046223-6">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·6d4eda12a30525a091d3668f186f7f3531071944ece4b1ade3993fdb596740e2·...·]-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
180 ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="2145710294-7">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="2145710294-8">(</span><span·class="n">Data</span><span·class="p"·data-group-id="214571[·...·truncated·by·diffoscope;·len:·57,·SHA:·f0c5be84261e7710a0f0ff991f72497e6f83cede3d10f564bdec354201b083cd·...·]-7">}</span><span·class="w">180 ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="9732046223-7">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="9732046223-8">(</span><span·class="n">Data</span><span·class="p"·data-group-id="973204[·...·truncated·by·diffoscope;·len:·57,·SHA:·6faff5e95270d5ff3061778a3a43aecab09eb82eb4fbb911dbf7a92e4f8bc663·...·]-7">}</span><span·class="w">
181 </span><span·class="k">end</span></code></pre><p>The·resulting·Erlang·program·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="5174579427-1">(</span><span·class="ss">complex2</span><span·class="p"·data-group-id="5174579427-1">)</span><span·class="p">.</span><span·class="w">181 </span><span·class="k">end</span></code></pre><p>The·resulting·Erlang·program·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="5485522894-1">(</span><span·class="ss">complex2</span><span·class="p"·data-group-id="5485522894-1">)</span><span·class="p">.</span><span·class="w">
182 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5174579427-2">(</span><span·class="p"·data-group-id="5174579427-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><spa[·...·truncated·by·diffoscope;·len:·240,·SHA:·c8d8318af6c4f50dc1959976eeba8341fc689c569490c0749b90aa6562135680·...·]-2">)</span><span·class="p">.</span><span·class="w">182 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5485522894-2">(</span><span·class="p"·data-group-id="5485522894-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">/</span><spa[·...·truncated·by·diffoscope;·len:·240,·SHA:·d00506d0e9cd3c5b9e42489e3cc127ec29dcc05443e062d6120492a0ef9b6c98·...·]-2">)</span><span·class="p">.</span><span·class="w">
183 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5174579427-4">(</span><span·class="p"·data-group-id="5174579427-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·c[·...·truncated·by·diffoscope;·len:·112,·SHA:·a47021d9f44cead6d9814fb36dbb38f225607da0ba4de276c1ffd92ac04bdca8·...·]-4">)</span><span·class="p">.</span><span·class="w">183 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5485522894-4">(</span><span·class="p"·data-group-id="5485522894-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·c[·...·truncated·by·diffoscope;·len:·112,·SHA:·853ef6094465ded47c578fa8d0a265a392e156a0eb78f8e374c08783dc704ad2·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
184 </span><span·class="nf">start</span><span·class="p"·data-group-id="5174579427-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="5174579427-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">184 </span><span·class="nf">start</span><span·class="p"·data-group-id="5485522894-6">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="5485522894-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
185 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="5174579427-7">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5174579427-8">[</span><span[·...·truncated·by·diffoscope;·len:·118,·SHA:·fca4c0467252c62d32d986704ad744f628a281947bb72a0e89fdeb775fe567a2·...·]-7">)</span><span·class="p">.</span><span·class="w">185 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="5485522894-7">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5485522894-8">[</span><span[·...·truncated·by·diffoscope;·len:·118,·SHA:·510b9c41425b3b41caf05d87c00fe6ebcd0f9df31db295dd6ec137733196d4d2·...·]-7">)</span><span·class="p">.</span><span·class="w">
186 </span><span·class="nf">stop</span><span·class="p"·data-group-id="5174579427-9">(</span><span·class="p"·data-group-id="5174579427-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">186 </span><span·class="nf">stop</span><span·class="p"·data-group-id="5485522894-9">(</span><span·class="p"·data-group-id="5485522894-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
187 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">.</span><span·class="w">187 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p">.</span><span·class="w">
  
188 </span><span·class="nf">foo</span><span·class="p"·data-group-id="5174579427-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="5174579427-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">188 </span><span·class="nf">foo</span><span·class="p"·data-group-id="5485522894-10">(</span><span·class="n">X</span><span·class="p"·data-group-id="5485522894-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
189 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="5174579427-11">(</span><span·class="p"·data-group-id="5174579427-12">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="5174579427-12">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·3ad5c456231d04149468ef563deedc539ec524cbf4a9c39822f2624bfb793ad4·...·]-11">)</span><span·class="p">.</span><span·class="w">189 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="5485522894-11">(</span><span·class="p"·data-group-id="5485522894-12">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="5485522894-12">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·335c29d5a4e93923158f9fd3a763e0df9d4097d041abb114cc8c54f4320a58c0·...·]-11">)</span><span·class="p">.</span><span·class="w">
190 </span><span·class="nf">bar</span><span·class="p"·data-group-id="5174579427-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="5174579427-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">190 </span><span·class="nf">bar</span><span·class="p"·data-group-id="5485522894-13">(</span><span·class="n">Y</span><span·class="p"·data-group-id="5485522894-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
191 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="5174579427-14">(</span><span·class="p"·data-group-id="5174579427-15">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="5174579427-15">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·3ad5c456231d04149468ef563deedc539ec524cbf4a9c39822f2624bfb793ad4·...·]-14">)</span><span·class="p">.</span><span·class="w">191 ····</span><span·class="nf">call_port</span><span·class="p"·data-group-id="5485522894-14">(</span><span·class="p"·data-group-id="5485522894-15">{</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="5485522894-15">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·335c29d5a4e93923158f9fd3a763e0df9d4097d041abb114cc8c54f4320a58c0·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
192 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="5174579427-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="5174579427-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">192 </span><span·class="nf">call_port</span><span·class="p"·data-group-id="5485522894-16">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="5485522894-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
193 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5174579427-17">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="5174579427-18">(</span><span·class="p"·data-group-id="5174579427-18">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·93,·SHA:·e5e534e3081bba542ac24706c0316d34a9df215a3208020baf1fa435c9c97018·...·]-17">}</span><span·class="p">,</span><span·class="w">193 ····</span><span·class="ss">complex</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5485522894-17">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="5485522894-18">(</span><span·class="p"·data-group-id="5485522894-18">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·93,·SHA:·4c650c3abf60b290dd87ab637ce6cb33e13a062813816bd2869e25923e64a260·...·]-17">}</span><span·class="p">,</span><span·class="w">
194 ····</span><span·class="k">receive</span><span·class="w">194 ····</span><span·class="k">receive</span><span·class="w">
195 »       </span><span·class="p"·data-group-id="5174579427-19">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="5174579427-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">195 »       </span><span·class="p"·data-group-id="5485522894-19">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="5485522894-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
196 »       ····</span><span·class="n">Result</span><span·class="w">196 »       ····</span><span·class="n">Result</span><span·class="w">
197 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">197 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
198 </span><span·class="nf">init</span><span·class="p"·data-group-id="5174579427-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="5174579427-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">198 </span><span·class="nf">init</span><span·class="p"·data-group-id="5485522894-20">(</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="5485522894-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
199 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="5174579427-21">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="5174579427-22">(</span><span·class="p"·data-group-id="5174579427-22">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·fee8e4e7c582a511cb92db96a4615d0da12e512eba66578616affc3958ceef0b·...·]-21">)</span><span·class="p">,</span><span·class="w">199 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="5485522894-21">(</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="5485522894-22">(</span><span·class="p"·data-group-id="5485522894-22">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·9d2288eadaedf6f452d35eac0d2b5b010cecf015843b864fc6e270689ded05df·...·]-21">)</span><span·class="p">,</span><span·class="w">
200 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="5174579427-23">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="5174579427-23">)</span><span·class="p">,</span><span·class="w">200 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="5485522894-23">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="5485522894-23">)</span><span·class="p">,</span><span·class="w">
201 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="5174579427-24">(</span><span·class="p"·data-group-id="5174579427-25">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="5174579427-25">}</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·466,·SHA:·2a9b4f4fbe7a8d83596aebe05cbf609480a1893e5f623fd3b5c518a4a7821604·...·]-24">)</span><span·class="p">,</span><span·class="w">201 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="5485522894-24">(</span><span·class="p"·data-group-id="5485522894-25">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExtPrg</span><span·class="p"·data-group-id="5485522894-25">}</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·466,·SHA:·cd0e8ae5831fdd1d93292367618333e259e2ae56daf9cc1cba7ef2d53a631ba4·...·]-24">)</span><span·class="p">,</span><span·class="w">
202 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="5174579427-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5174579427-28">)</span><span·class="p">.</span><span·class="w">202 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="5485522894-28">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5485522894-28">)</span><span·class="p">.</span><span·class="w">
  
203 </span><span·class="nf">loop</span><span·class="p"·data-group-id="5174579427-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5174579427-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">203 </span><span·class="nf">loop</span><span·class="p"·data-group-id="5485522894-29">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5485522894-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
204 ····</span><span·class="k">receive</span><span·class="w">204 ····</span><span·class="k">receive</span><span·class="w">
205 »       </span><span·class="p"·data-group-id="5174579427-30">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="5174579427-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">205 »       </span><span·class="p"·data-group-id="5485522894-30">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Caller</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="5485522894-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5174579427-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="5174579427-32">(</span><span·class="p"·data-group-id="5174579427-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5174579427-33">{</s[·...·truncated·by·diffoscope;·len:·350,·SHA:·0daf9b54529b4e7565d569eb77003dcad175438f8e4de83d60c7cfb31a69260d·...·]-31">}</span><span·class="p">,</span><span·class="w">206 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5485522894-31">{</span><span·class="nf">self</span><span·class="p"·data-group-id="5485522894-32">(</span><span·class="p"·data-group-id="5485522894-32">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5485522894-33">{</s[·...·truncated·by·diffoscope;·len:·350,·SHA:·1d25a3c12eb9151f1983e5d0ccab69c056fe2549d6f67186519b9a83bcd9142b·...·]-31">}</span><span·class="p">,</span><span·class="w">
207 »       ····</span><span·class="k">receive</span><span·class="w">207 »       ····</span><span·class="k">receive</span><span·class="w">
208 »       »       </span><span·class="p"·data-group-id="5174579427-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5174579427-36">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·f9ec19712f719ba56788cae888a35c25559b42b8e252bd8a88a8cd0e4c0e6778·...·]-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 »       »       </span><span·class="p"·data-group-id="5485522894-35">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5485522894-36">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·aac0f3485ffef4171b82233f54a5ab8b24b217f3813a3cd594c9baa3fa4ccb6b·...·]-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
209 »       »       ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5174579427-37">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="5174579427-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="51745[·...·truncated·by·diffoscope;·len:·59,·SHA:·3991d50a0431499f6b7f1b784eeebaf8cf84298d89bca73bd4ca8a99c038ae7f·...·]-37">}</span><span·class="w">209 »       »       ····</span><span·class="n">Caller</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5485522894-37">{</span><span·class="ss">complex</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="5485522894-38">(</span><span·class="n">Data</span><span·class="p"·data-group-id="54855[·...·truncated·by·diffoscope;·len:·59,·SHA:·fa091fc18ddd84d136490b5044a0c157635a40406b51923609f5ef3eb229a87a·...·]-37">}</span><span·class="w">
210 »       ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">210 »       ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
211 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="5174579427-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5174579427-39">)</span><span·class="p">;</span><span·class="w">211 »       ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="5485522894-39">(</span><span·class="n">Port</span><span·class="p"·data-group-id="5485522894-39">)</span><span·class="p">;</span><span·class="w">
212 »       </span><span·class="ss">stop</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">212 »       </span><span·class="ss">stop</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
213 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5174579427-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="5174579427-41">(</span><span·class="p"·data-group-id="5174579427-41">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">close</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·4031d5297314d80f21cadb4e12ff3e75078e2a55e45fa155fb46d7389d50debd·...·]-40">}</span><span·class="p">,</span><span·class="w">213 »       ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5485522894-40">{</span><span·class="nf">self</span><span·class="p"·data-group-id="5485522894-41">(</span><span·class="p"·data-group-id="5485522894-41">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">close</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·cbdc30e1d0884d1552f688443171ec7e224e153e48e15a53617809fe1f2c70a6·...·]-40">}</span><span·class="p">,</span><span·class="w">
214 »       ····</span><span·class="k">receive</span><span·class="w">214 »       ····</span><span·class="k">receive</span><span·class="w">
215 »       »       </span><span·class="p"·data-group-id="5174579427-42">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="5174579427-42">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">215 »       »       </span><span·class="p"·data-group-id="5485522894-42">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="5485522894-42">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
216 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="5174579427-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="5174579427-43">)</span><span·class="w">216 »       »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="5485522894-43">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="5485522894-43">)</span><span·class="w">
217 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">217 »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
218 »       </span><span·class="p"·data-group-id="5174579427-44">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="5174579427-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">218 »       </span><span·class="p"·data-group-id="5485522894-44">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="5485522894-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
219 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="5174579427-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="5174579427-45">)</span><span·class="w">219 »       ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="5485522894-45">(</span><span·class="ss">port_terminated</span><span·class="p"·data-group-id="5485522894-45">)</span><span·class="w">
220 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Notice·that·calling·<code·class="inline">complex2:foo/1</code>·and·<code·class="inline">complex2:bar/1</code>·results·in·the·tuple220 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Notice·that·calling·<code·class="inline">complex2:foo/1</code>·and·<code·class="inline">complex2:bar/1</code>·results·in·the·tuple
221 <code·class="inline">{foo,X}</code>·or·<code·class="inline">{bar,Y}</code>·being·sent·to·the·<code·class="inline">complex</code>·process,·which·codes·them·as221 <code·class="inline">{foo,X}</code>·or·<code·class="inline">{bar,Y}</code>·being·sent·to·the·<code·class="inline">complex</code>·process,·which·codes·them·as
222 binaries·and·sends·them·to·the·port.·This·means·that·the·C·program·must·be·able222 binaries·and·sends·them·to·the·port.·This·means·that·the·C·program·must·be·able
223 to·handle·these·two·tuples.</p><h2·id="c-program"·class="section-heading">223 to·handle·these·two·tuples.</p><h2·id="c-program"·class="section-heading">
224 ··<a·href="#c-program"·class="hover-link">224 ··<a·href="#c-program"·class="hover-link">
225 ····<i·class="ri-link-m"·aria-hidden="true"></i>225 ····<i·class="ri-link-m"·aria-hidden="true"></i>
226 ··</a>226 ··</a>
Offset 362, 27 lines modifiedOffset 362, 27 lines modified
362 ····-L/usr/local/otp/lib/erl_interface-3.9.2/lib·\362 ····-L/usr/local/otp/lib/erl_interface-3.9.2/lib·\
363 ····complex.c·erl_comm.c·ei.c·-lei·-lpthread</code></pre><p>In·Erlang/OTP·R5B·and·later·versions·of·OTP,·the·<code·class="inline">include</code>·and·<code·class="inline">lib</code>·directories363 ····complex.c·erl_comm.c·ei.c·-lei·-lpthread</code></pre><p>In·Erlang/OTP·R5B·and·later·versions·of·OTP,·the·<code·class="inline">include</code>·and·<code·class="inline">lib</code>·directories
364 are·situated·under·<code·class="inline">$OTPROOT/lib/erl_interface-VSN</code>,·where·<code·class="inline">$OTPROOT</code>·is·the364 are·situated·under·<code·class="inline">$OTPROOT/lib/erl_interface-VSN</code>,·where·<code·class="inline">$OTPROOT</code>·is·the
365 root·directory·of·the·OTP·installation·(<code·class="inline">/usr/local/otp</code>·in·the·recent·example)365 root·directory·of·the·OTP·installation·(<code·class="inline">/usr/local/otp</code>·in·the·recent·example)
366 and·<code·class="inline">VSN</code>·is·the·version·of·the·Erl_interface·application·(3.2.1·in·the·recent366 and·<code·class="inline">VSN</code>·is·the·version·of·the·Erl_interface·application·(3.2.1·in·the·recent
367 example).</p><p>In·R4B·and·earlier·versions·of·OTP,·<code·class="inline">include</code>·and·<code·class="inline">lib</code>·are·situated·under367 example).</p><p>In·R4B·and·earlier·versions·of·OTP,·<code·class="inline">include</code>·and·<code·class="inline">lib</code>·are·situated·under
368 <code·class="inline">$OTPROOT/usr</code>.</p><p><em>Step·2.</em>·Start·Erlang·and·compile·the·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">368 <code·class="inline">$OTPROOT/usr</code>.</p><p><em>Step·2.</em>·Start·Erlang·and·compile·the·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">
Max diff block lines reached; 6847/73376 bytes (9.33%) of diff not shown.
538 B
html2text {}
Max HTML report size reached
19.2 KB
./usr/share/doc/erlang-doc/html/doc/system/error_logging.html
    
Offset 143, 39 lines modifiedOffset 143, 39 lines modified
143 reports·and·other·error·and·information·reports·are·by·default·logged·through143 reports·and·other·error·and·information·reports·are·by·default·logged·through
144 the·log·handler·which·is·set·up·when·the·Kernel·application·is·started.</p><p>Prior·to·Erlang/OTP·21.0,·supervisor,·crash,·and·progress·reports·were·only144 the·log·handler·which·is·set·up·when·the·Kernel·application·is·started.</p><p>Prior·to·Erlang/OTP·21.0,·supervisor,·crash,·and·progress·reports·were·only
145 logged·when·the·SASL·application·was·running.·This·behaviour·can,·for·backwards145 logged·when·the·SASL·application·was·running.·This·behaviour·can,·for·backwards
146 compatibility,·be·enabled·by·setting·the·Kernel·configuration·parameter146 compatibility,·be·enabled·by·setting·the·Kernel·configuration·parameter
147 <a·href="../../lib/kernel-10.0.1/doc/html/kernel_app.html#logger_sasl_compatible"><code·class="inline">logger_sasl_compatible</code></a>·to147 <a·href="../../lib/kernel-10.0.1/doc/html/kernel_app.html#logger_sasl_compatible"><code·class="inline">logger_sasl_compatible</code></a>·to
148 <code·class="inline">true</code>.·For·more·information,·see148 <code·class="inline">true</code>.·For·more·information,·see
149 <a·href="../../lib/sasl-4.2.2/doc/html/error_logging.html">SASL·Error·Logging</a>·in·the·SASL·User's·Guide.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-kernel·logger_level·info</span><span·class="w">149 <a·href="../../lib/sasl-4.2.2/doc/html/error_logging.html">SASL·Error·Logging</a>·in·the·SASL·User's·Guide.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-kernel·logger_level·info</span><span·class="w">
150 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">21</span><span·class="w">·</span><span·class="p"·data-group-id="2492310905-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">10.0</span><span·class="p"·data-group-id="2492310905-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="2492310905-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1313,·SHA:·e5df26251a3600e0ae14262f23135162ee158fa650976f6590f710764ce91ebe·...·]-7">]</span><span·class="w">150 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">21</span><span·class="w">·</span><span·class="p"·data-group-id="0319871814-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">10.0</span><span·class="p"·data-group-id="0319871814-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="0319871814-2">[</span><span·class="ss">source<[·...·truncated·by·diffoscope;·len:·1313,·SHA:·c41b4933278a2dd427de4680c081521291365793243044913149749ed94c4e13·...·]-7">]</span><span·class="w">
  
151 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">8</span><span·class="o">-</span><span·class="n">Jun</span><span·class="o">-</span><span·class="mi">2018</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">54</span><span·class="p">:</span><span·class="mf">19.916404</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">151 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">8</span><span·class="o">-</span><span·class="n">Jun</span><span·class="o">-</span><span·class="mi">2018</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">54</span><span·class="p">:</span><span·class="mf">19.916404</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">
152 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">kernel</span><span·class="w">152 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">kernel</span><span·class="w">
153 ····</span><span·class="nc">started_at</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nonode@nohost</span><span·class="w">153 ····</span><span·class="nc">started_at</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nonode@nohost</span><span·class="w">
154 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">8</span><span·class="o">-</span><span·class="n">Jun</span><span·class="o">-</span><span·class="mi">2018</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">54</span><span·class="p">:</span><span·class="mf">19.922908</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">154 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">8</span><span·class="o">-</span><span·class="n">Jun</span><span·class="o">-</span><span·class="mi">2018</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">54</span><span·class="p">:</span><span·class="mf">19.922908</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">
155 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">stdlib</span><span·class="w">155 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">stdlib</span><span·class="w">
156 ····</span><span·class="nc">started_at</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nonode@nohost</span><span·class="w">156 ····</span><span·class="nc">started_at</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nonode@nohost</span><span·class="w">
157 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">8</span><span·class="o">-</span><span·class="n">Jun</span><span·class="o">-</span><span·class="mi">2018</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">54</span><span·class="p">:</span><span·class="mf">19.925755</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">157 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">8</span><span·class="o">-</span><span·class="n">Jun</span><span·class="o">-</span><span·class="mi">2018</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">54</span><span·class="p">:</span><span·class="mf">19.925755</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">
158 ····</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="2492310905-8">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">kernel_safe_sup</span><span·class="p"·data-group-id="2492310905-8">}</span><span·class="w">158 ····</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0319871814-8">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">kernel_safe_sup</span><span·class="p"·data-group-id="0319871814-8">}</span><span·class="w">
159 ····</span><span·class="nc">started</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="2492310905-9">[</span><span·class="p"·data-group-id="2492310905-10">{</span><span·class="ss">pid</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.74</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·1c9ea43f467d7d655b3cd727d04a05697a271fa3bd8a6f28a8ad2c5c790c4af6·...·]-10">}</span><span·class="p">,</span><span·class="w">159 ····</span><span·class="nc">started</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0319871814-9">[</span><span·class="p"·data-group-id="0319871814-10">{</span><span·class="ss">pid</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.74</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·017602470ccdfeec9ec4649d75255c3afaa7b8e8f7f7da94088705caeaf7a1c4·...·]-10">}</span><span·class="p">,</span><span·class="w">
160 ··············</span><span·class="p"·data-group-id="2492310905-11">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="ss">disk_log_sup</span><span·class="p"·data-group-id="2492310905-11">}</span><span·class="p">,</span><span·class="w">160 ··············</span><span·class="p"·data-group-id="0319871814-11">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="ss">disk_log_sup</span><span·class="p"·data-group-id="0319871814-11">}</span><span·class="p">,</span><span·class="w">
161 ··············</span><span·class="p"·data-group-id="2492310905-12">{</span><span·class="ss">mfargs</span><span·class="p">,</span><span·class="p"·data-group-id="2492310905-13">{</span><span·class="ss">disk_log_sup</span><span·class="p">,</span><span·class="ss">start_link</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·196,·SHA:·f109b5694b3344c03e90f57f605860bd1b60e0368e3e9ca7831454f1b385d597·...·]-12">}</span><span·class="p">,</span><span·class="w">161 ··············</span><span·class="p"·data-group-id="0319871814-12">{</span><span·class="ss">mfargs</span><span·class="p">,</span><span·class="p"·data-group-id="0319871814-13">{</span><span·class="ss">disk_log_sup</span><span·class="p">,</span><span·class="ss">start_link</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·196,·SHA:·0279b2bca57819e5ac910c692956c8954d61d67f121a4caaecb8f87694428a67·...·]-12">}</span><span·class="p">,</span><span·class="w">
162 ··············</span><span·class="p"·data-group-id="2492310905-15">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="2492310905-15">}</span><span·class="p">,</span><span·class="w">162 ··············</span><span·class="p"·data-group-id="0319871814-15">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="0319871814-15">}</span><span·class="p">,</span><span·class="w">
163 ··············</span><span·class="p"·data-group-id="2492310905-16">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">1000</span><span·class="p"·data-group-id="2492310905-16">}</span><span·class="p">,</span><span·class="w">163 ··············</span><span·class="p"·data-group-id="0319871814-16">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">1000</span><span·class="p"·data-group-id="0319871814-16">}</span><span·class="p">,</span><span·class="w">
164 ··············</span><span·class="p"·data-group-id="2492310905-17">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="2492310905-17">}</span><span·class="p"·data-group-id="2492310905-9">]</span><span·class="w">164 ··············</span><span·class="p"·data-group-id="0319871814-17">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="0319871814-17">}</span><span·class="p"·data-group-id="0319871814-9">]</span><span·class="w">
165 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">8</span><span·class="o">-</span><span·class="n">Jun</span><span·class="o">-</span><span·class="mi">2018</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">54</span><span·class="p">:</span><span·class="mf">19.926056</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">165 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">8</span><span·class="o">-</span><span·class="n">Jun</span><span·class="o">-</span><span·class="mi">2018</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">54</span><span·class="p">:</span><span·class="mf">19.926056</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">
166 ····</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="2492310905-18">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">kernel_safe_sup</span><span·class="p"·data-group-id="2492310905-18">}</span><span·class="w">166 ····</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0319871814-18">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">kernel_safe_sup</span><span·class="p"·data-group-id="0319871814-18">}</span><span·class="w">
167 ····</span><span·class="nc">started</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="2492310905-19">[</span><span·class="p"·data-group-id="2492310905-20">{</span><span·class="ss">pid</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.75</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·fed5bf4fb321fb5fd7ccf9a6111bd88279a659e7519cf3d93b01e0f81e7eef2a·...·]-20">}</span><span·class="p">,</span><span·class="w">167 ····</span><span·class="nc">started</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0319871814-19">[</span><span·class="p"·data-group-id="0319871814-20">{</span><span·class="ss">pid</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.75</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·6e461a78b48d0da16f056a02559adefaa784360649ca5f9a1c2028f87df50751·...·]-20">}</span><span·class="p">,</span><span·class="w">
168 ··············</span><span·class="p"·data-group-id="2492310905-21">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="ss">disk_log_server</span><span·class="p"·data-group-id="2492310905-21">}</span><span·class="p">,</span><span·class="w">168 ··············</span><span·class="p"·data-group-id="0319871814-21">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="ss">disk_log_server</span><span·class="p"·data-group-id="0319871814-21">}</span><span·class="p">,</span><span·class="w">
169 ··············</span><span·class="p"·data-group-id="2492310905-22">{</span><span·class="ss">mfargs</span><span·class="p">,</span><span·class="p"·data-group-id="2492310905-23">{</span><span·class="ss">disk_log_server</span><span·class="p">,</span><span·class="ss">start_link</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·199,·SHA:·ad804ea8c90b053b7c65564f406db7e8e804087a1f55c33f9df28bc2653f8e5a·...·]-22">}</span><span·class="p">,</span><span·class="w">169 ··············</span><span·class="p"·data-group-id="0319871814-22">{</span><span·class="ss">mfargs</span><span·class="p">,</span><span·class="p"·data-group-id="0319871814-23">{</span><span·class="ss">disk_log_server</span><span·class="p">,</span><span·class="ss">start_link</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·199,·SHA:·118da443b2c711f7546072c14a001709e217aa90c22ada7b1a77a484a4804c14·...·]-22">}</span><span·class="p">,</span><span·class="w">
170 ··············</span><span·class="p"·data-group-id="2492310905-25">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="2492310905-25">}</span><span·class="p">,</span><span·class="w">170 ··············</span><span·class="p"·data-group-id="0319871814-25">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="0319871814-25">}</span><span·class="p">,</span><span·class="w">
171 ··············</span><span·class="p"·data-group-id="2492310905-26">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">2000</span><span·class="p"·data-group-id="2492310905-26">}</span><span·class="p">,</span><span·class="w">171 ··············</span><span·class="p"·data-group-id="0319871814-26">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">2000</span><span·class="p"·data-group-id="0319871814-26">}</span><span·class="p">,</span><span·class="w">
172 ··············</span><span·class="p"·data-group-id="2492310905-27">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">worker</span><span·class="p"·data-group-id="2492310905-27">}</span><span·class="p"·data-group-id="2492310905-19">]</span><span·class="w">172 ··············</span><span·class="p"·data-group-id="0319871814-27">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">worker</span><span·class="p"·data-group-id="0319871814-27">}</span><span·class="p"·data-group-id="0319871814-19">]</span><span·class="w">
173 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mi">0</span><span·class="w">··</span><span·class="p"·data-group-id="2492310905-28">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="2492310905-28">)</span><span·class="w">173 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mi">0</span><span·class="w">··</span><span·class="p"·data-group-id="0319871814-28">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="0319871814-28">)</span><span·class="w">
174 </span><span·class="mi">1</span><span·class="o">&gt;</span></code></pre>174 </span><span·class="mi">1</span><span·class="o">&gt;</span></code></pre>
175 </div>175 </div>
  
176 <div·class="bottom-actions"·id="bottom-actions">176 <div·class="bottom-actions"·id="bottom-actions">
177 ··<div·class="bottom-actions-item">177 ··<div·class="bottom-actions-item">
  
178 ······<a·href="system_principles.html"·class="bottom-actions-button"·rel="prev">178 ······<a·href="system_principles.html"·class="bottom-actions-button"·rel="prev">
Offset 219, 15 lines modifiedOffset 219, 15 lines modified
219 ······<p·class="built-using">219 ······<p·class="built-using">
220 ········Built·using220 ········Built·using
221 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the221 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
222 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>222 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
223 ······</p>223 ······</p>
224 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>224 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
225 ····</footer>225 ····</footer>
226 ··</div>226 ··</div>
227 </main>227 </main>
228 </div>228 </div>
229 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>229 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
230 <script>230 <script>
231 ··document.addEventListener("DOMContentLoaded",·function·()·{231 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
11.3 KB
./usr/share/doc/erlang-doc/html/doc/system/errors.html
    
Offset 151, 22 lines modifiedOffset 151, 22 lines modified
151 classes,·with·different·origins.·The·<a·href="expressions.html#try">try</a>·expression·can151 classes,·with·different·origins.·The·<a·href="expressions.html#try">try</a>·expression·can
152 distinguish·between·the·different·classes,·whereas·the152 distinguish·between·the·different·classes,·whereas·the
153 <a·href="expressions.html#catch-and-throw">catch</a>·expression·cannot.·<code·class="inline">try</code>·and·<code·class="inline">catch</code>·are·described153 <a·href="expressions.html#catch-and-throw">catch</a>·expression·cannot.·<code·class="inline">try</code>·and·<code·class="inline">catch</code>·are·described
154 in·<a·href="expressions.html">Expressions</a>.</p><table><thead><tr><th·style="text-align:·left;"><em>Class</em></th><th·style="text-align:·left;"><em>Origin</em></th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">error</code></td><td·style="text-align:·left;">Run-time·error,·for·example,·<code·class="inline">1+a</code>,·or·the·process·called·<a·href="../../erts-15.0.1/doc/html/erlang.html#error/1"><code·class="inline">error/1</code></a></td></tr><tr><td·style="text-align:·left;"><code·class="inline">exit</code></td><td·style="text-align:·left;">The·process·called·<a·href="../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit/1</code></a></td></tr><tr><td·style="text-align:·left;"><code·class="inline">throw</code></td><td·style="text-align:·left;">The·process·called·<a·href="../../erts-15.0.1/doc/html/erlang.html#throw/1"><code·class="inline">throw/1</code></a></td></tr></tbody></table><p><em>Table:·Exception·Classes.</em></p><p>All·of·the·above·exceptions·can·also·be·generated·by·calling·<a·href="../../erts-15.0.1/doc/html/erlang.html#raise/3"><code·class="inline">erlang:raise/3</code></a>.</p><p>An·exception·consists·of·its·class,·an·exit·reason·(see154 in·<a·href="expressions.html">Expressions</a>.</p><table><thead><tr><th·style="text-align:·left;"><em>Class</em></th><th·style="text-align:·left;"><em>Origin</em></th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">error</code></td><td·style="text-align:·left;">Run-time·error,·for·example,·<code·class="inline">1+a</code>,·or·the·process·called·<a·href="../../erts-15.0.1/doc/html/erlang.html#error/1"><code·class="inline">error/1</code></a></td></tr><tr><td·style="text-align:·left;"><code·class="inline">exit</code></td><td·style="text-align:·left;">The·process·called·<a·href="../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit/1</code></a></td></tr><tr><td·style="text-align:·left;"><code·class="inline">throw</code></td><td·style="text-align:·left;">The·process·called·<a·href="../../erts-15.0.1/doc/html/erlang.html#throw/1"><code·class="inline">throw/1</code></a></td></tr></tbody></table><p><em>Table:·Exception·Classes.</em></p><p>All·of·the·above·exceptions·can·also·be·generated·by·calling·<a·href="../../erts-15.0.1/doc/html/erlang.html#raise/3"><code·class="inline">erlang:raise/3</code></a>.</p><p>An·exception·consists·of·its·class,·an·exit·reason·(see
155 <a·href="errors.html#exit_reasons">Exit·Reason</a>),·and·a·stack·trace·(which·aids·in·finding155 <a·href="errors.html#exit_reasons">Exit·Reason</a>),·and·a·stack·trace·(which·aids·in·finding
156 the·code·location·of·the·exception).</p><p>The·stack·trace·can·be·bound·to·a·variable·from·within·a·<code·class="inline">try</code>·expression·for156 the·code·location·of·the·exception).</p><p>The·stack·trace·can·be·bound·to·a·variable·from·within·a·<code·class="inline">try</code>·expression·for
157 any·exception·class,·or·as·part·of·the·exit·reason·when·a·run-time·error·is157 any·exception·class,·or·as·part·of·the·exit·reason·when·a·run-time·error·is
158 caught·by·a·<code·class="inline">catch</code>.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="0335999723-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="0335999723-2">{</span><span·class="ss">test</span><span·class="p">,</span><span·class="n">Stacktrace</span><span·class="p"·data-group-id="033[·...·truncated·by·diffoscope;·len:·453,·SHA:·0a0f5b24b286901851dd891e14ea7fede95c9f371df358cc3b82c2569f62b150·...·]-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Stacktrace</span><span·class="p">.</span><span·class="w">158 caught·by·a·<code·class="inline">catch</code>.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="8909386297-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="8909386297-2">{</span><span·class="ss">test</span><span·class="p">,</span><span·class="n">Stacktrace</span><span·class="p"·data-group-id="890[·...·truncated·by·diffoscope;·len:·453,·SHA:·42c8ce281788f26cf80a754dd29fc62b60ac9c47c6eb1f9d1b1c99994636c60b·...·]-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Stacktrace</span><span·class="p">.</span><span·class="w">
159 </span><span·class="p"·data-group-id="0335999723-5">[</span><span·class="p"·data-group-id="0335999723-6">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">apply_fun</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·125,·SHA:·81b6cfb9e21965cf66570ab6ffd2bd50dcd720fd17ffa8d1f2b7ae8ab732bd68·...·]-6">}</span><span·class="p">,</span><span·class="w">159 </span><span·class="p"·data-group-id="8909386297-5">[</span><span·class="p"·data-group-id="8909386297-6">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">apply_fun</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·125,·SHA:·490588efedde45dc923b299fdbf31fe338bdf57028a5428af281ebdd5aa27b12·...·]-6">}</span><span·class="p">,</span><span·class="w">
160 ·</span><span·class="p"·data-group-id="0335999723-8">{</span><span·class="ss">erl_eval</span><span·class="p">,</span><span·class="ss">do_apply</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="p"·data-group-id="0335999723-9">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·5585a40c29c0e70d5dc3ceb5766b7dfcd7d9de9bcc11340a0384d6022e022b41·...·]-8">}</span><span·class="p">,</span><span·class="w">160 ·</span><span·class="p"·data-group-id="8909386297-8">{</span><span·class="ss">erl_eval</span><span·class="p">,</span><span·class="ss">do_apply</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="p"·data-group-id="8909386297-9">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·74,·SHA:·3581e388338ee0e51b9c7642b2c3f28f560910af15f1a5466747c2ea11feadf6·...·]-8">}</span><span·class="p">,</span><span·class="w">
161 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="0335999723-5">]</span><span·class="gp·unselectable">161 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="8909386297-5">]</span><span·class="gp·unselectable">
162 &gt;·</span><span·class="k">try</span><span·class="w">·</span><span·class="nf">throw</span><span·class="p"·data-group-id="0335999723-10">(</span><span·class="ss">test</span><span·class="p"·data-group-id="0335999723-10">)</span><span·class="w">·</span><span·class="k">catch</span><span·class="w">·</span><span·class="n">Class</span><span·class="p">:</span><span·class="n">Reason</span><span·class="p">:</span><span·class="n">Stacktrace</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Stacktrace</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">162 &gt;·</span><span·class="k">try</span><span·class="w">·</span><span·class="nf">throw</span><span·class="p"·data-group-id="8909386297-10">(</span><span·class="ss">test</span><span·class="p"·data-group-id="8909386297-10">)</span><span·class="w">·</span><span·class="k">catch</span><span·class="w">·</span><span·class="n">Class</span><span·class="p">:</span><span·class="n">Reason</span><span·class="p">:</span><span·class="n">Stacktrace</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Stacktrace</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
163 </span><span·class="p"·data-group-id="0335999723-11">[</span><span·class="p"·data-group-id="0335999723-12">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">apply_fun</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·129,·SHA:·20e7532f453a076397894e17068555593b103b87cd158d743f13019a58eebc4e·...·]-12">}</span><span·class="p">,</span><span·class="w">163 </span><span·class="p"·data-group-id="8909386297-11">[</span><span·class="p"·data-group-id="8909386297-12">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">apply_fun</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·129,·SHA:·3a6b1e121b177cd4363db80fcb74922fd28b6e3a20de31f7712620e47a0310d2·...·]-12">}</span><span·class="p">,</span><span·class="w">
164 ·</span><span·class="p"·data-group-id="0335999723-14">{</span><span·class="ss">erl_eval</span><span·class="p">,</span><span·class="ss">do_apply</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="p"·data-group-id="0335999723-15">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·77,·SHA:·cddb7cdcdef9649c1cd67139dc0f88629615359bf072b0ff4686f8bfe48b0f81·...·]-14">}</span><span·class="p">,</span><span·class="w">164 ·</span><span·class="p"·data-group-id="8909386297-14">{</span><span·class="ss">erl_eval</span><span·class="p">,</span><span·class="ss">do_apply</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="p"·data-group-id="8909386297-15">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·77,·SHA:·98dc6dc7f51398ca25292be20e29fdccc207a1fd8338cc0a9466d6c6ae9ba8c6·...·]-14">}</span><span·class="p">,</span><span·class="w">
165 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="0335999723-11">]</span></code></pre><p><a·href=""·id="stacktrace"></a></p><h3·id="the-call-stack-back-trace-stacktrace"·class="section-heading">165 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="8909386297-11">]</span></code></pre><p><a·href=""·id="stacktrace"></a></p><h3·id="the-call-stack-back-trace-stacktrace"·class="section-heading">
166 ··<a·href="#the-call-stack-back-trace-stacktrace"·class="hover-link">166 ··<a·href="#the-call-stack-back-trace-stacktrace"·class="hover-link">
167 ····<i·class="ri-link-m"·aria-hidden="true"></i>167 ····<i·class="ri-link-m"·aria-hidden="true"></i>
168 ··</a>168 ··</a>
169 ··<span·class="text">The·call-stack·back·trace·(stacktrace)</span>169 ··<span·class="text">The·call-stack·back·trace·(stacktrace)</span>
170 </h3>170 </h3>
171 <p>The·stack·back-trace·(<a·href="../../erts-15.0.1/doc/html/erlang.html#t:stacktrace/0"><em>stacktrace</em></a>)·is·a·list·that171 <p>The·stack·back-trace·(<a·href="../../erts-15.0.1/doc/html/erlang.html#t:stacktrace/0"><em>stacktrace</em></a>)·is·a·list·that
172 contains·<code·class="inline">{Module,·Function,·Arity,·ExtraInfo}</code>·and/or·<code·class="inline">{Fun,·Arity,·ExtraInfo}</code>172 contains·<code·class="inline">{Module,·Function,·Arity,·ExtraInfo}</code>·and/or·<code·class="inline">{Fun,·Arity,·ExtraInfo}</code>
Offset 283, 15 lines modifiedOffset 283, 15 lines modified
283 ······<p·class="built-using">283 ······<p·class="built-using">
284 ········Built·using284 ········Built·using
285 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the285 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
286 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>286 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
287 ······</p>287 ······</p>
288 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>288 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
289 ····</footer>289 ····</footer>
290 ··</div>290 ··</div>
291 </main>291 </main>
292 </div>292 </div>
293 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>293 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
294 <script>294 <script>
295 ··document.addEventListener("DOMContentLoaded",·function·()·{295 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
42.1 KB
./usr/share/doc/erlang-doc/html/doc/system/events.html
    
Offset 135, 43 lines modifiedOffset 135, 43 lines modified
135 event·handler.</p><h2·id="example"·class="section-heading">135 event·handler.</p><h2·id="example"·class="section-heading">
136 ··<a·href="#example"·class="hover-link">136 ··<a·href="#example"·class="hover-link">
137 ····<i·class="ri-link-m"·aria-hidden="true"></i>137 ····<i·class="ri-link-m"·aria-hidden="true"></i>
138 ··</a>138 ··</a>
139 ··<span·class="text">Example</span>139 ··<span·class="text">Example</span>
140 </h2>140 </h2>
141 <p>The·callback·module·for·the·event·handler·writing·error·messages·to·the·terminal141 <p>The·callback·module·for·the·event·handler·writing·error·messages·to·the·terminal
142 can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0157874757-1">(</span><span·class="ss">terminal_logger</span><span·class="p"·data-group-id="0157874757-1">)</span><span·class="p">.</span><span·class="w">142 can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9359561328-1">(</span><span·class="ss">terminal_logger</span><span·class="p"·data-group-id="9359561328-1">)</span><span·class="p">.</span><span·class="w">
143 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="0157874757-2">(</span><span·class="ss">gen_event</span><span·class="p"·data-group-id="0157874757-2">)</span><span·class="p">.</span><span·class="w">143 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="9359561328-2">(</span><span·class="ss">gen_event</span><span·class="p"·data-group-id="9359561328-2">)</span><span·class="p">.</span><span·class="w">
144 </span><span·class="w">144 </span><span·class="w">
145 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0157874757-3">(</span><span·class="p"·data-group-id="0157874757-4">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_event</span><span·class="p">/</s[·...·truncated·by·diffoscope;·len:·253,·SHA:·a95374c47862fb9756f21e66049803676518259251c78bf216576d47bda11d59·...·]-3">)</span><span·class="p">.</span><span·class="w">145 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9359561328-3">(</span><span·class="p"·data-group-id="9359561328-4">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_event</span><span·class="p">/</s[·...·truncated·by·diffoscope;·len:·253,·SHA:·e15de0a0fc7da871d59ff6b32857a8234f69e097c0ab866fa43c0a194892cad5·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
146 </span><span·class="nf">init</span><span·class="p"·data-group-id="0157874757-5">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="0157874757-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">146 </span><span·class="nf">init</span><span·class="p"·data-group-id="9359561328-5">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="9359561328-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
147 ····</span><span·class="p"·data-group-id="0157874757-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0157874757-7">[</span><span·class="p"·data-group-id="0157874757-7">]</span><span·class="p"·data-group-id="0157874757-6">}</span><span·class="p">.</span><span·class="w">147 ····</span><span·class="p"·data-group-id="9359561328-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9359561328-7">[</span><span·class="p"·data-group-id="9359561328-7">]</span><span·class="p"·data-group-id="9359561328-6">}</span><span·class="p">.</span><span·class="w">
  
148 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="0157874757-8">(</span><span·class="n">ErrorMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="0157874757-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">148 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="9359561328-8">(</span><span·class="n">ErrorMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="9359561328-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
149 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0157874757-9">(</span><span·class="s">&quot;***Error***·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0157874757-10">[</span><span·clas[·...·truncated·by·diffoscope;·len:·116,·SHA:·3312a027a7d2fae52c090d956414e7e10a57f2ffb99b0a930c47c51483be8a5f·...·]-9">)</span><span·class="p">,</span><span·class="w">149 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9359561328-9">(</span><span·class="s">&quot;***Error***·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9359561328-10">[</span><span·clas[·...·truncated·by·diffoscope;·len:·116,·SHA:·f471e8c957b40cfbc58c51e77457cd033d64f89e9a36f4aa2845083c52483571·...·]-9">)</span><span·class="p">,</span><span·class="w">
150 ····</span><span·class="p"·data-group-id="0157874757-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="0157874757-11">}</span><span·class="p">.</span><span·class="w">150 ····</span><span·class="p"·data-group-id="9359561328-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="9359561328-11">}</span><span·class="p">.</span><span·class="w">
  
151 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="0157874757-12">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">State</span><span·class="p"·data-group-id="0157874757-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">151 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="9359561328-12">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">State</span><span·class="p"·data-group-id="9359561328-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
152 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>The·callback·module·for·the·event·handler·writing·error·messages·to·a·file·can152 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>The·callback·module·for·the·event·handler·writing·error·messages·to·a·file·can
153 look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1358134670-1">(</span><span·class="ss">file_logger</span><span·class="p"·data-group-id="1358134670-1">)</span><span·class="p">.</span><span·class="w">153 look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7216450917-1">(</span><span·class="ss">file_logger</span><span·class="p"·data-group-id="7216450917-1">)</span><span·class="p">.</span><span·class="w">
154 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="1358134670-2">(</span><span·class="ss">gen_event</span><span·class="p"·data-group-id="1358134670-2">)</span><span·class="p">.</span><span·class="w">154 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="7216450917-2">(</span><span·class="ss">gen_event</span><span·class="p"·data-group-id="7216450917-2">)</span><span·class="p">.</span><span·class="w">
155 </span><span·class="w">155 </span><span·class="w">
156 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1358134670-3">(</span><span·class="p"·data-group-id="1358134670-4">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_event</span><span·class="p">/</s[·...·truncated·by·diffoscope;·len:·253,·SHA:·828ea10fc22cbba7c41ff1fa05d784263492c2fa2137ac19211049b1938bb6ed·...·]-3">)</span><span·class="p">.</span><span·class="w">156 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7216450917-3">(</span><span·class="p"·data-group-id="7216450917-4">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_event</span><span·class="p">/</s[·...·truncated·by·diffoscope;·len:·253,·SHA:·b6c4439e0719de59c6d28f2598795057d4d3d31e75bd9687a1f4d36b8eee2c66·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">init</span><span·class="p"·data-group-id="1358134670-5">(</span><span·class="n">File</span><span·class="p"·data-group-id="1358134670-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 </span><span·class="nf">init</span><span·class="p"·data-group-id="7216450917-5">(</span><span·class="n">File</span><span·class="p"·data-group-id="7216450917-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ····</span><span·class="p"·data-group-id="1358134670-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="1358134670-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·267,·SHA:·12304d897a2b51eca49c7e4836cacb4504778c8cc01f3a575b93cce6a6e9a59b·...·]-7">)</span><span·class="p">,</span><span·class="w">158 ····</span><span·class="p"·data-group-id="7216450917-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="7216450917-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·267,·SHA:·c395ea3d1000316eaae4fcb080ae20918c5e4c76f402888df0e2ea55d1e5cc58·...·]-7">)</span><span·class="p">,</span><span·class="w">
159 ····</span><span·class="p"·data-group-id="1358134670-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="1358134670-8">}</span><span·class="p">.</span><span·class="w">159 ····</span><span·class="p"·data-group-id="7216450917-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="7216450917-8">}</span><span·class="p">.</span><span·class="w">
  
160 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="1358134670-9">(</span><span·class="n">ErrorMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="1358134670-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">160 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="7216450917-9">(</span><span·class="n">ErrorMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="7216450917-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
161 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1358134670-10">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;***Error***·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·190,·SHA:·da6826d41aa3dfae2bcef2686a6b11e01af0d56d06c05a8ef668df252a2cff0f·...·]-10">)</span><span·class="p">,</span><span·class="w">161 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="7216450917-10">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;***Error***·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·190,·SHA:·62986579718e79d02f29bc190cb8c15c4d5a645375adeee894ca2e11f8933d5d·...·]-10">)</span><span·class="p">,</span><span·class="w">
162 ····</span><span·class="p"·data-group-id="1358134670-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="1358134670-12">}</span><span·class="p">.</span><span·class="w">162 ····</span><span·class="p"·data-group-id="7216450917-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="7216450917-12">}</span><span·class="p">.</span><span·class="w">
  
163 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="1358134670-13">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="1358134670-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">163 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="7216450917-13">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="7216450917-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
164 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="1358134670-14">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="1358134670-14">)</span><span·class="p">.</span></code></pre><p>The·code·is·explained·in·the·next·sections.</p><p><a·href=""·id="mgr"></a></p><h2·id="starting-an-event-manager"·class="section-heading">164 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="7216450917-14">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="7216450917-14">)</span><span·class="p">.</span></code></pre><p>The·code·is·explained·in·the·next·sections.</p><p><a·href=""·id="mgr"></a></p><h2·id="starting-an-event-manager"·class="section-heading">
165 ··<a·href="#starting-an-event-manager"·class="hover-link">165 ··<a·href="#starting-an-event-manager"·class="hover-link">
166 ····<i·class="ri-link-m"·aria-hidden="true"></i>166 ····<i·class="ri-link-m"·aria-hidden="true"></i>
167 ··</a>167 ··</a>
168 ··<span·class="text">Starting·an·Event·Manager</span>168 ··<span·class="text">Starting·an·Event·Manager</span>
169 </h2>169 </h2>
170 <p>To·start·an·event·manager·for·handling·errors,·as·described·in·the·previous170 <p>To·start·an·event·manager·for·handling·errors,·as·described·in·the·previous
171 example,·call·the·following·function:</p><pre><code·class="text">gen_event:start_link({local,·error_man})</code></pre><p><a·href="../../lib/stdlib-6.0.1/doc/html/gen_event.html#start_link/1"><code·class="inline">gen_event:start_link/1</code></a>·spawns·and·links·to·a·new·event·manager·process.</p><p>The·argument,·<code·class="inline">{local,·error_man}</code>,·specifies·the·name·under·which·the171 example,·call·the·following·function:</p><pre><code·class="text">gen_event:start_link({local,·error_man})</code></pre><p><a·href="../../lib/stdlib-6.0.1/doc/html/gen_event.html#start_link/1"><code·class="inline">gen_event:start_link/1</code></a>·spawns·and·links·to·a·new·event·manager·process.</p><p>The·argument,·<code·class="inline">{local,·error_man}</code>,·specifies·the·name·under·which·the
Offset 184, 57 lines modifiedOffset 184, 57 lines modified
184 manager·that·is·not·part·of·a·supervision·tree.</p><h2·id="adding-an-event-handler"·class="section-heading">184 manager·that·is·not·part·of·a·supervision·tree.</p><h2·id="adding-an-event-handler"·class="section-heading">
185 ··<a·href="#adding-an-event-handler"·class="hover-link">185 ··<a·href="#adding-an-event-handler"·class="hover-link">
186 ····<i·class="ri-link-m"·aria-hidden="true"></i>186 ····<i·class="ri-link-m"·aria-hidden="true"></i>
187 ··</a>187 ··</a>
188 ··<span·class="text">Adding·an·Event·Handler</span>188 ··<span·class="text">Adding·an·Event·Handler</span>
189 </h2>189 </h2>
190 <p>The·following·example·shows·how·to·start·an·event·manager·and·add·an·event190 <p>The·following·example·shows·how·to·start·an·event·manager·and·add·an·event
191 handler·to·it·by·using·the·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="9820525387-1">(</span><span·class="p"·data-group-id="9820525387-2">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">error_man</span><span·class="p"·data-group-id="9820525387-2">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·22,·SHA:·25405c9e42008d59d6ca93aa8c3a8dd2bf53f32544b9a0f9b9fc26168ea5d07c·...·]7-1">)</span><span·class="p">.</span><span·class="w">191 handler·to·it·by·using·the·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="0423933077-1">(</span><span·class="p"·data-group-id="0423933077-2">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">error_man</span><span·class="p"·data-group-id="0423933077-2">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·22,·SHA:·003a64af0aa02f72fd97a6e49d64a2615540ce97fdd37e9dad2c8b63413bb8c4·...·]7-1">)</span><span·class="p">.</span><span·class="w">
192 </span><span·class="p"·data-group-id="9820525387-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.31</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="9820525387-3">}</span><span·class="gp·unselectable">192 </span><span·class="p"·data-group-id="0423933077-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.31</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="0423933077-3">}</span><span·class="gp·unselectable">
193 2&gt;·</span><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="9820525387-4">(</span><span·class="ss">error_man</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">terminal_logger</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9820525387-5">[</span><span·class="[·...·truncated·by·diffoscope;·len:·80,·SHA:·5ccb49fac895e0627cee87865bad1fb878707185ce3ca4e08f63b0e2e74a855c·...·]7-4">)</span><span·class="p">.</span><span·class="w">193 2&gt;·</span><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="0423933077-4">(</span><span·class="ss">error_man</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">terminal_logger</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0423933077-5">[</span><span·class="[·...·truncated·by·diffoscope;·len:·80,·SHA:·1fa559a1f36eae4e2a3dbf75338dbbf9dab5b19699a95ad58ef185e78cfc686f·...·]7-4">)</span><span·class="p">.</span><span·class="w">
194 </span><span·class="ss">ok</span></code></pre><p>This·function·sends·a·message·to·the·event·manager·registered·as·<code·class="inline">error_man</code>,194 </span><span·class="ss">ok</span></code></pre><p>This·function·sends·a·message·to·the·event·manager·registered·as·<code·class="inline">error_man</code>,
195 telling·it·to·add·the·event·handler·<code·class="inline">terminal_logger</code>.·The·event·manager·calls195 telling·it·to·add·the·event·handler·<code·class="inline">terminal_logger</code>.·The·event·manager·calls
196 the·callback·function·<code·class="inline">terminal_logger:init([])</code>,·where·the·argument·<code·class="inline">[]</code>·is·the196 the·callback·function·<code·class="inline">terminal_logger:init([])</code>,·where·the·argument·<code·class="inline">[]</code>·is·the
197 third·argument·to·<code·class="inline">add_handler</code>.·<code·class="inline">init/1</code>·is·expected·to·return·<code·class="inline">{ok,·State}</code>,197 third·argument·to·<code·class="inline">add_handler</code>.·<code·class="inline">init/1</code>·is·expected·to·return·<code·class="inline">{ok,·State}</code>,
198 where·<code·class="inline">State</code>·is·the·internal·state·of·the·event·handler.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="2909450813-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="2909450813-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
199 ····</span><span·class="p"·data-group-id="2909450813-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2909450813-3">[</span><span·class="p"·data-group-id="2909450813-3">]</span><span·class=[·...·truncated·by·diffoscope;·len:·180,·SHA:·cc2ceb050aafb4fc0c7b575c5885b4782a263ba1b4c895b7d9b7d4cefe2b126e·...·]198 where·<code·class="inline">State</code>·is·the·internal·state·of·the·event·handler.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="5771963193-1">(</span><span·class="p">_</span><span·class="n">[·...·truncated·by·diffoscope;·len:·132,·SHA:·5dcaa7f0c80b7340af18f87e3260179d294d1a2d2460582fdc9fd7b1a1ce5ea1·...·]
 199 ····</span><span·class="p"·data-group-id="5771963193-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5771963193-3">[</span><span·class="p"·data-group-id="5771963193-3">]</span><span·class="p"·data-group-id="5771963193-2">}</span><span·class="p">.</span></code></pre><p>Here,·<code·class="inline">init/1</code>·does·not·need·any·input·data·and·ignores·its·argument.·For
200 <code·class="inline">terminal_logger</code>,·the·internal·state·is·not·used.·For·<code·class="inline">file_logger</code>,·the200 <code·class="inline">terminal_logger</code>,·the·internal·state·is·not·used.·For·<code·class="inline">file_logger</code>,·the
201 internal·state·is·used·to·save·the·open·file·descriptor.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="6490830467-1">(</span><span·class="n">File</span><span·class="p"·data-group-id="6490830467-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">201 internal·state·is·used·to·save·the·open·file·descriptor.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="9202298336-1">(</span><span·class="n">File</span><span·class="p"·data-group-id="9202298336-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
202 ····</span><span·class="p"·data-group-id="6490830467-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="6490830467-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·267,·SHA:·e4d2a6bcc9bc7d7568a35424cccc21d26ce1c51f29fb516471c14f797273f9d1·...·]-3">)</span><span·class="p">,</span><span·class="w">202 ····</span><span·class="p"·data-group-id="9202298336-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="9202298336-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·267,·SHA:·76df4d9d006f65247798c471944afcf9dd4ad3f6585f0cf567b5917b5bbbe9b5·...·]-3">)</span><span·class="p">,</span><span·class="w">
203 ····</span><span·class="p"·data-group-id="6490830467-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="6490830467-4">}</span><span·class="p">.</span></code></pre><h2·id="notifying-about-events"·class="section-heading">203 ····</span><span·class="p"·data-group-id="9202298336-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="9202298336-4">}</span><span·class="p">.</span></code></pre><h2·id="notifying-about-events"·class="section-heading">
204 ··<a·href="#notifying-about-events"·class="hover-link">204 ··<a·href="#notifying-about-events"·class="hover-link">
205 ····<i·class="ri-link-m"·aria-hidden="true"></i>205 ····<i·class="ri-link-m"·aria-hidden="true"></i>
206 ··</a>206 ··</a>
207 ··<span·class="text">Notifying·about·Events</span>207 ··<span·class="text">Notifying·about·Events</span>
208 </h2>208 </h2>
209 <pre><code·class="text">3&gt;·gen_event:notify(error_man,·no_reply).209 <pre><code·class="text">3&gt;·gen_event:notify(error_man,·no_reply).
210 ***Error***·no_reply210 ***Error***·no_reply
211 ok</code></pre><p><code·class="inline">error_man</code>·is·the·name·of·the·event·manager·and·<code·class="inline">no_reply</code>·is·the·event.</p><p>The·event·is·made·into·a·message·and·sent·to·the·event·manager.·When·the·event211 ok</code></pre><p><code·class="inline">error_man</code>·is·the·name·of·the·event·manager·and·<code·class="inline">no_reply</code>·is·the·event.</p><p>The·event·is·made·into·a·message·and·sent·to·the·event·manager.·When·the·event
212 is·received,·the·event·manager·calls·<code·class="inline">handle_event(Event,·State)</code>·for·each212 is·received,·the·event·manager·calls·<code·class="inline">handle_event(Event,·State)</code>·for·each
213 installed·event·handler,·in·the·same·order·as·they·were·added.·The·function·is213 installed·event·handler,·in·the·same·order·as·they·were·added.·The·function·is
214 expected·to·return·a·tuple·<code·class="inline">{ok,State1}</code>,·where·<code·class="inline">State1</code>·is·a·new·value·for·the214 expected·to·return·a·tuple·<code·class="inline">{ok,State1}</code>,·where·<code·class="inline">State1</code>·is·a·new·value·for·the
215 state·of·the·event·handler.</p><p>In·<code·class="inline">terminal_logger</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_event</span><span·class="p"·data-group-id="6827739212-1">(</span><span·class="n">ErrorMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="6827739212-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">215 state·of·the·event·handler.</p><p>In·<code·class="inline">terminal_logger</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_event</span><span·class="p"·data-group-id="3147373224-1">(</span><span·class="n">ErrorMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="3147373224-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
216 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6827739212-2">(</span><span·class="s">&quot;***Error***·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6827739212-3">[</span><span·class[·...·truncated·by·diffoscope;·len:·114,·SHA:·72b3d3775a28d5a22356631404c44991112b401ad1f7bae0514112e24e66b910·...·]-2">)</span><span·class="p">,</span><span·class="w">216 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3147373224-2">(</span><span·class="s">&quot;***Error***·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3147373224-3">[</span><span·class[·...·truncated·by·diffoscope;·len:·114,·SHA:·5f9a5a83e8b2a4398b2dfad538f7d988e754a00b9ece63856535eb4c9cc3d2d7·...·]-2">)</span><span·class="p">,</span><span·class="w">
217 ····</span><span·class="p"·data-group-id="6827739212-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="6827739212-4">}</span><span·class="p">.</span></code></pre><p>In·<code·class="inline">file_logger</co[·...·truncated·by·diffoscope;·len:·290,·SHA:·5a66bbad9032e88b8aabea7143d986c966fce74a13bea6d48b74a67cd5368911·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">217 ····</span><span·class="p"·data-group-id="3147373224-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="3147373224-4">}</span><span·class="p">.</span></code></pre><p>In·<code·class="inline">file_logger</co[·...·truncated·by·diffoscope;·len:·290,·SHA:·7d75a6d01bba6a288922e96ff24abdb5d6987c462a81eed0156a1287969a39d2·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
218 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5856180602-2">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;***Error***·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·187,·SHA:·0ee38397b8e8a6aaf16e4e8e0579c04e288c9c206e5900514a00d20731b5c335·...·]-2">)</span><span·class="p">,</span><span·class="w">218 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1592570508-2">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;***Error***·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·187,·SHA:·427b1b6426925022807b1097e969613f78c6c80672549f9cff7cb10d4da86207·...·]-2">)</span><span·class="p">,</span><span·class="w">
219 ····</span><span·class="p"·data-group-id="5856180602-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="5856180602-4">}</span><span·class="p">.</span></code></pre><h2·id="deleting-an-event-handler"·class="section-heading">219 ····</span><span·class="p"·data-group-id="1592570508-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="1592570508-4">}</span><span·class="p">.</span></code></pre><h2·id="deleting-an-event-handler"·class="section-heading">
220 ··<a·href="#deleting-an-event-handler"·class="hover-link">220 ··<a·href="#deleting-an-event-handler"·class="hover-link">
221 ····<i·class="ri-link-m"·aria-hidden="true"></i>221 ····<i·class="ri-link-m"·aria-hidden="true"></i>
222 ··</a>222 ··</a>
223 ··<span·class="text">Deleting·an·Event·Handler</span>223 ··<span·class="text">Deleting·an·Event·Handler</span>
224 </h2>224 </h2>
225 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">delete_handler</span><span·class="p"·data-group-id="3068053233-1">(</span><span·class="ss">error_man</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">terminal_logger</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3068053233-2">[</span><span·class="[·...·truncated·by·diffoscope;·len:·81,·SHA:·b0b374673bba8f9fdd45648fa9624dd1f1fdc191238f2c658fcfb4fcbd7436a7·...·]-1">)</span><span·class="p">.</span><span·class="w">225 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">delete_handler</span><span·class="p"·data-group-id="2042525876-1">(</span><span·class="ss">error_man</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">terminal_logger</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2042525876-2">[</span><span·class="[·...·truncated·by·diffoscope;·len:·81,·SHA:·3ab3aa5c540c6546e3b489d307b07a3dcfea8eb0383122d1abe8f83a6a9bb95b·...·]-1">)</span><span·class="p">.</span><span·class="w">
226 </span><span·class="ss">ok</span></code></pre><p>This·function·sends·a·message·to·the·event·manager·registered·as·<code·class="inline">error_man</code>,226 </span><span·class="ss">ok</span></code></pre><p>This·function·sends·a·message·to·the·event·manager·registered·as·<code·class="inline">error_man</code>,
227 telling·it·to·delete·the·event·handler·<code·class="inline">terminal_logger</code>.·The·event·manager227 telling·it·to·delete·the·event·handler·<code·class="inline">terminal_logger</code>.·The·event·manager
228 calls·the·callback·function·<code·class="inline">terminal_logger:terminate([],·State)</code>,·where·the228 calls·the·callback·function·<code·class="inline">terminal_logger:terminate([],·State)</code>,·where·the
229 argument·<code·class="inline">[]</code>·is·the·third·argument·to·<code·class="inline">delete_handler</code>.·<code·class="inline">terminate/2</code>·is·to·be229 argument·<code·class="inline">[]</code>·is·the·third·argument·to·<code·class="inline">delete_handler</code>.·<code·class="inline">terminate/2</code>·is·to·be
230 the·opposite·of·<code·class="inline">init/1</code>·and·do·any·necessary·cleaning·up.·Its·return·value·is230 the·opposite·of·<code·class="inline">init/1</code>·and·do·any·necessary·cleaning·up.·Its·return·value·is
231 ignored.</p><p>For·<code·class="inline">terminal_logger</code>,·no·cleaning·up·is·necessary:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">terminate</span><span·class="p"·data-group-id="4123936059-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">State</span><span·class="p"·data-group-id="4123936059-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
232 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>For·<code·class="inline">file_logger</code>,·the·file·descriptor·opened·in·<code·class="inline">init</code>·must·be·closed:</p><pre><code·class="makeup·erlang"·translate="no"><spa[·...·truncated·by·diffoscope;·len:·247,·SHA:·12df754322a155f68ef87b0871ae33fa9af29f9c8fbcc2ca05bbb69dea00baa1·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 ignored.</p><p>For·<code·class="inline">terminal_logger</code>,·no·cleaning·up·is·necessary:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">terminate</span><span·class="p"·data-group-id="1704756693-1">(</span><span·class="p">_</span><s[·...·truncated·by·diffoscope;·len:·166,·SHA:·500f883c42fb3e304d3e34854ed6c40c44b0a547c4a5e06da6b2ec80a7f9296c·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
 232 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>For·<code·class="inline">file_logger</code>,·the·file·descriptor·opened·in·<code·class="inline">init</code>·must·be·closed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">terminate</span><span·class="p"·data-group-id="4952371951-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="4952371951-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
233 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="0074696617-2">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="0074696617-2">)</span><span·class="p">.</span></code></pre><h2·id="stopping"·class="section-heading">233 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="4952371951-2">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="4952371951-2">)</span><span·class="p">.</span></code></pre><h2·id="stopping"·class="section-heading">
234 ··<a·href="#stopping"·class="hover-link">234 ··<a·href="#stopping"·class="hover-link">
235 ····<i·class="ri-link-m"·aria-hidden="true"></i>235 ····<i·class="ri-link-m"·aria-hidden="true"></i>
236 ··</a>236 ··</a>
237 ··<span·class="text">Stopping</span>237 ··<span·class="text">Stopping</span>
238 </h2>238 </h2>
239 <p>When·an·event·manager·is·stopped,·it·gives·each·of·the·installed·event·handlers239 <p>When·an·event·manager·is·stopped,·it·gives·each·of·the·installed·event·handlers
240 the·chance·to·clean·up·by·calling·<code·class="inline">terminate/2</code>,·the·same·way·as·when·deleting·a240 the·chance·to·clean·up·by·calling·<code·class="inline">terminate/2</code>,·the·same·way·as·when·deleting·a
Offset 249, 33 lines modifiedOffset 249, 33 lines modified
249 this·is·done·is·defined·by·a·<a·href="sup_princ.html#shutdown">shutdown·strategy</a>·set·in249 this·is·done·is·defined·by·a·<a·href="sup_princ.html#shutdown">shutdown·strategy</a>·set·in
250 the·supervisor.</p><h3·id="standalone-event-managers"·class="section-heading">250 the·supervisor.</p><h3·id="standalone-event-managers"·class="section-heading">
251 ··<a·href="#standalone-event-managers"·class="hover-link">251 ··<a·href="#standalone-event-managers"·class="hover-link">
252 ····<i·class="ri-link-m"·aria-hidden="true"></i>252 ····<i·class="ri-link-m"·aria-hidden="true"></i>
253 ··</a>253 ··</a>
254 ··<span·class="text">Standalone·Event·Managers</span>254 ··<span·class="text">Standalone·Event·Managers</span>
255 </h3>255 </h3>
256 <p>An·event·manager·can·also·be·stopped·by·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="0032039389-1">(</span><span·class="ss">error_man</span><span·class="p"·data-group-id="0032039389-1">)</span><span·class="p">.</span><span·class="w">256 <p>An·event·manager·can·also·be·stopped·by·calling:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="6139666699-1">(</span><span·class="ss">error_man</span><span·class="p"·data-group-id="6139666699-1">)</span><span·class="p">.</span><span·class="w">
257 </span><span·class="ss">ok</span></code></pre><h2·id="handling-other-messages"·class="section-heading">257 </span><span·class="ss">ok</span></code></pre><h2·id="handling-other-messages"·class="section-heading">
258 ··<a·href="#handling-other-messages"·class="hover-link">258 ··<a·href="#handling-other-messages"·class="hover-link">
259 ····<i·class="ri-link-m"·aria-hidden="true"></i>259 ····<i·class="ri-link-m"·aria-hidden="true"></i>
260 ··</a>260 ··</a>
261 ··<span·class="text">Handling·Other·Messages</span>261 ··<span·class="text">Handling·Other·Messages</span>
262 </h2>262 </h2>
263 <p>If·the·<code·class="inline">gen_event</code>·process·is·to·be·able·to·receive·other·messages263 <p>If·the·<code·class="inline">gen_event</code>·process·is·to·be·able·to·receive·other·messages
264 than·events,·the·callback·function·<code·class="inline">handle_info(Info,·State)</code>·must·be264 than·events,·the·callback·function·<code·class="inline">handle_info(Info,·State)</code>·must·be
265 implemented·to·handle·them.·Examples·of·other·messages·are·exit265 implemented·to·handle·them.·Examples·of·other·messages·are·exit
266 messages·if·the·event·manager·is·linked·to·other·processes·than·the266 messages·if·the·event·manager·is·linked·to·other·processes·than·the
267 supervisor·(for·example·via·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_event.html#add_sup_handler/3"><code·class="inline">gen_event:add_sup_handler/3</code></a>)·and·is267 supervisor·(for·example·via·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_event.html#add_sup_handler/3"><code·class="inline">gen_event:add_sup_handler/3</code></a>)·and·is
268 trapping·exit·signals.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_info</span><span·class="p"·data-group-id="8385043655-1">(</span><span·class="p"·data-group-id="8385043655-2">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reaso[·...·truncated·by·diffoscope;·len:·178,·SHA:·46fbdeea1ccf25ab1a3ee08eca238d9f98ca374f8143670efa29fa55ec4a8464·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">268 trapping·exit·signals.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_info</span><span·class="p"·data-group-id="0663827022-1">(</span><span·class="p"·data-group-id="0663827022-2">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reaso[·...·truncated·by·diffoscope;·len:·178,·SHA:·0a77cabe1e57e8cf37de8a980d195859aaed9724f25983dd6d089e5aa4f6884f·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
269 ····</span><span·class="c1">%%·Code·to·handle·exits·here.</span><span·class="w">269 ····</span><span·class="c1">%%·Code·to·handle·exits·here.</span><span·class="w">
270 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">270 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
271 ····</span><span·class="p"·data-group-id="8385043655-3">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State1</span><span·class="p"·data-group-id="8385043655-3">}</span><span·class="p">.</span></code></pre><p>The·final·function·to·implement·i[·...·truncated·by·diffoscope;·len:·406,·SHA:·855d1d073d0b5c704765cadd179d1c7da6f5157b02d88e46bc60fd9bcb2b6358·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">271 ····</span><span·class="p"·data-group-id="0663827022-3">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State1</span><span·class="p"·data-group-id="0663827022-3">}</span><span·class="p">.</span></code></pre><p>The·final·function·to·implement·i[·...·truncated·by·diffoscope;·len:·406,·SHA:·4064dbdf0d03c363d6e509bf4f28f9ad9fb844695f50f27bcc25db748dabf462·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
Max diff block lines reached; 1529/42342 bytes (3.61%) of diff not shown.
666 B
html2text {}
Max HTML report size reached
3.14 KB
./usr/share/doc/erlang-doc/html/doc/system/example.html
    
Offset 131, 15 lines modifiedOffset 131, 15 lines modified
  
131 int·bar(int·y)·{131 int·bar(int·y)·{
132 ··return·y*2;132 ··return·y*2;
133 }</code></pre><p>The·functions·are·deliberately·kept·as·simple·as·possible,·for·readability133 }</code></pre><p>The·functions·are·deliberately·kept·as·simple·as·possible,·for·readability
134 reasons.</p><p>From·an·Erlang·perspective,·it·is·preferable·to·be·able·to·call·<code·class="inline">foo</code>·and·<code·class="inline">bar</code>134 reasons.</p><p>From·an·Erlang·perspective,·it·is·preferable·to·be·able·to·call·<code·class="inline">foo</code>·and·<code·class="inline">bar</code>
135 without·having·to·bother·about·that·they·are·C·functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·Erlang·code</span><span·class="w">135 without·having·to·bother·about·that·they·are·C·functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·Erlang·code</span><span·class="w">
136 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">136 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
137 </span><span·class="n">Res</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">complex</span><span·class="p">:</span><span·class="nf">foo</span><span·class="p"·data-group-id="1513223690-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="1513223690-1">)</span><span·class="p">,</span><span·class="w">137 </span><span·class="n">Res</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">complex</span><span·class="p">:</span><span·class="nf">foo</span><span·class="p"·data-group-id="5724941350-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="5724941350-1">)</span><span·class="p">,</span><span·class="w">
138 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Here,·the·communication·with·C·is·hidden·in·the·implementation·of·<code·class="inline">complex.erl</code>.138 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Here,·the·communication·with·C·is·hidden·in·the·implementation·of·<code·class="inline">complex.erl</code>.
139 In·the·following·sections,·it·is·shown·how·this·module·can·be·implemented·using139 In·the·following·sections,·it·is·shown·how·this·module·can·be·implemented·using
140 the·different·interoperability·mechanisms.</p>140 the·different·interoperability·mechanisms.</p>
141 </div>141 </div>
  
142 <div·class="bottom-actions"·id="bottom-actions">142 <div·class="bottom-actions"·id="bottom-actions">
143 ··<div·class="bottom-actions-item">143 ··<div·class="bottom-actions-item">
Offset 185, 15 lines modifiedOffset 185, 15 lines modified
185 ······<p·class="built-using">185 ······<p·class="built-using">
186 ········Built·using186 ········Built·using
187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
189 ······</p>189 ······</p>
190 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
191 ····</footer>191 ····</footer>
192 ··</div>192 ··</div>
193 </main>193 </main>
194 </div>194 </div>
195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
196 <script>196 <script>
197 ··document.addEventListener("DOMContentLoaded",·function·()·{197 ··document.addEventListener("DOMContentLoaded",·function·()·{
697 B
html2text {}
Max HTML report size reached
301 KB
./usr/share/doc/erlang-doc/html/doc/system/expressions.html
Max HTML report size reached
1.58 KB
./usr/share/doc/erlang-doc/html/doc/system/features.html
    
Offset 235, 15 lines modifiedOffset 235, 15 lines modified
235 ······<p·class="built-using">235 ······<p·class="built-using">
236 ········Built·using236 ········Built·using
237 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the237 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
238 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>238 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
239 ······</p>239 ······</p>
240 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>240 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
241 ····</footer>241 ····</footer>
242 ··</div>242 ··</div>
243 </main>243 </main>
244 </div>244 </div>
245 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>245 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
246 <script>246 <script>
247 ··document.addEventListener("DOMContentLoaded",·function·()·{247 ··document.addEventListener("DOMContentLoaded",·function·()·{
804 B
html2text {}
Max HTML report size reached
215 KB
./usr/share/doc/erlang-doc/html/doc/system/funs.html
Max HTML report size reached
49.6 KB
./usr/share/doc/erlang-doc/html/doc/system/gen_server_concepts.html
    
Offset 157, 63 lines modifiedOffset 157, 63 lines modified
157 ··<a·href="#example"·class="hover-link">157 ··<a·href="#example"·class="hover-link">
158 ····<i·class="ri-link-m"·aria-hidden="true"></i>158 ····<i·class="ri-link-m"·aria-hidden="true"></i>
159 ··</a>159 ··</a>
160 ··<span·class="text">Example</span>160 ··<span·class="text">Example</span>
161 </h2>161 </h2>
162 <p>An·example·of·a·simple·server·written·in·plain·Erlang·is·provided·in162 <p>An·example·of·a·simple·server·written·in·plain·Erlang·is·provided·in
163 <a·href="design_principles.html#ch1">Overview</a>.·The·server·can·be·reimplemented·using163 <a·href="design_principles.html#ch1">Overview</a>.·The·server·can·be·reimplemented·using
164 <code·class="inline">gen_server</code>,·resulting·in·this·callback·module:</p><p><a·href=""·id="ex"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2447584665-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="2447584665-1">)</span><span·class="p">.</span><span·class="w">164 <code·class="inline">gen_server</code>,·resulting·in·this·callback·module:</p><p><a·href=""·id="ex"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8959132458-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="8959132458-1">)</span><span·class="p">.</span><span·class="w">
165 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="2447584665-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="2447584665-2">)</span><span·class="p">.</span><span·class="w">165 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="8959132458-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="8959132458-2">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="w">166 </span><span·class="w">
167 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2447584665-3">(</span><span·class="p"·data-group-id="2447584665-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="2447584665-4">]</span><span·class="p"·data-group-id="2447584665-3">)</span><span·class="p">.</span><span·class="w">167 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8959132458-3">(</span><span·class="p"·data-group-id="8959132458-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8959132458-4">]</span><span·class="p"·data-group-id="8959132458-3">)</span><span·class="p">.</span><span·class="w">
168 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2447584665-5">(</span><span·class="p"·data-group-id="2447584665-6">[</span><span·class="ss">alloc</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">free</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·efa52ac77e67476fbb30aef5ce288bbb18d7a3d689a9288ea61bf3f2b45e2cf2·...·]-5">)</span><span·class="p">.</span><span·class="w">168 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8959132458-5">(</span><span·class="p"·data-group-id="8959132458-6">[</span><span·class="ss">alloc</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">free</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·3c7da44c88abfc899a2b33b29eeea6ab5744f3ee8172e50db1a31916a02eb480·...·]-5">)</span><span·class="p">.</span><span·class="w">
169 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2447584665-7">(</span><span·class="p"·data-group-id="2447584665-8">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</sp[·...·truncated·by·diffoscope;·len:·254,·SHA:·c63e907fcdeee86a3f678d685588d37d6e4b1adc2cca46a5cedbaeb20befdd7b·...·]-7">)</span><span·class="p">.</span><span·class="w">169 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8959132458-7">(</span><span·class="p"·data-group-id="8959132458-8">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</sp[·...·truncated·by·diffoscope;·len:·254,·SHA:·f1794386802a4acd516d134d4d179254b9b535ed37216a42d73a2726808e804c·...·]-7">)</span><span·class="p">.</span><span·class="w">
  
170 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="2447584665-9">(</span><span·class="p"·data-group-id="2447584665-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">170 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="8959132458-9">(</span><span·class="p"·data-group-id="8959132458-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
171 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="2447584665-10">(</span><span·class="p"·data-group-id="2447584665-11">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="2447584665-11">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·407,·SHA:·e503926d133a4eae103a3dda774a038734469f10ca85b5d8ad124ac3498cdc77·...·]-10">)</span><span·class="p">.</span><span·class="w">171 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="8959132458-10">(</span><span·class="p"·data-group-id="8959132458-11">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="8959132458-11">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·407,·SHA:·9625872653ec54cb1ab6b5ab3a098005d5c902b6ab50faa01e55a17a1c49d4f7·...·]-10">)</span><span·class="p">.</span><span·class="w">
  
172 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="2447584665-14">(</span><span·class="p"·data-group-id="2447584665-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="8959132458-14">(</span><span·class="p"·data-group-id="8959132458-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
173 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="2447584665-15">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data-group-id="2447584665-15">)</span><span·class="p">.</span><span·class="w">173 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="8959132458-15">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data-group-id="8959132458-15">)</span><span·class="p">.</span><span·class="w">
  
174 </span><span·class="nf">free</span><span·class="p"·data-group-id="2447584665-16">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="2447584665-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">174 </span><span·class="nf">free</span><span·class="p"·data-group-id="8959132458-16">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="8959132458-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
175 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="2447584665-17">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2447584665-18">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><sp[·...·truncated·by·diffoscope;·len:·92,·SHA:·32d9bbe4425af8d6edc8258eec0575c375fbefc81ad849332a17cace4876e1d3·...·]-17">)</span><span·class="p">.</span><span·class="w">175 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="8959132458-17">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8959132458-18">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><sp[·...·truncated·by·diffoscope;·len:·92,·SHA:·6950dbb33f8b71466b1dd96023a26144fa74a59f8b140c20f443651a0f247fd3·...·]-17">)</span><span·class="p">.</span><span·class="w">
  
176 </span><span·class="nf">init</span><span·class="p"·data-group-id="2447584665-19">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="2447584665-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 </span><span·class="nf">init</span><span·class="p"·data-group-id="8959132458-19">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="8959132458-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ····</span><span·class="p"·data-group-id="2447584665-20">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">channels</span><span·class="p"·data-group-id="2447584665-21">(</span><span·class="p"·data-group-id="2447584665-21">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·b309d565895cdbe901c08de7d1f2ad438f3b85f3a8a0cfcf2d7f551919f058eb·...·]-20">}</span><span·class="p">.</span><span·class="w">177 ····</span><span·class="p"·data-group-id="8959132458-20">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">channels</span><span·class="p"·data-group-id="8959132458-21">(</span><span·class="p"·data-group-id="8959132458-21">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·217ea896efef15cef8a14156b8a0f25a6006d36a12ae7f8f9f581b6ed1fee10a·...·]-20">}</span><span·class="p">.</span><span·class="w">
  
178 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="2447584665-22">(</span><span·class="ss">alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·bb9ca3b445549e7401a7fbcb230cf9692dcfb382b6ab02fe7175a7a8e5b2bbb2·...·]-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="8959132458-22">(</span><span·class="ss">alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·e53ff4124f4cd8256b60acb420a20327fa0275252078d256fe4b5fd54e6d9840·...·]-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ····</span><span·class="p"·data-group-id="2447584665-23">{</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="2447584665-23">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·c28ec5dcc5ee4dcaf1a7aecfbf216f0eb2c1d1c90cfaa700126047b94772858d·...·]-24">)</span><span·class="p">,</span><span·class="w">179 ····</span><span·class="p"·data-group-id="8959132458-23">{</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="8959132458-23">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·f401512271208b4aded5a25c26e56de74344c18bb68cbcf27e8dc1d93ea85a16·...·]-24">)</span><span·class="p">,</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="2447584665-25">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="2447584665-25">}</span><span·class="p">.</span><span·class="w">180 ····</span><span·class="p"·data-group-id="8959132458-25">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="8959132458-25">}</span><span·class="p">.</span><span·class="w">
  
181 </span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="2447584665-26">(</span><span·class="p"·data-group-id="2447584665-27">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="2447584665-27">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·e82b38ddbf4c077544ae5f6113a0864994c101151f181e045e661cf5d6c03c4c·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">181 </span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="8959132458-26">(</span><span·class="p"·data-group-id="8959132458-27">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="8959132458-27">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·91,·SHA:·6f2b993cc2606afbcf96fef6912094ef888238aed8b79fc5f30e3ce1dd97a88b·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
182 ····</span><span·class="n">Chs2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">free</span><span·class="p"·data-group-id="2447584665-28">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="2447584665-28">)</span><span·class="p">,</span><span·class="w">182 ····</span><span·class="n">Chs2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">free</span><span·class="p"·data-group-id="8959132458-28">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="8959132458-28">)</span><span·class="p">,</span><span·class="w">
183 ····</span><span·class="p"·data-group-id="2447584665-29">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="2447584665-29">}</span><span·class="p">.</span></code></pre><p>The·code·is·explained·in·the·next·sections.</p><h2·id="starting-a-gen_server"·class="section-heading">183 ····</span><span·class="p"·data-group-id="8959132458-29">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="8959132458-29">}</span><span·class="p">.</span></code></pre><p>The·code·is·explained·in·the·next·sections.</p><h2·id="starting-a-gen_server"·class="section-heading">
184 ··<a·href="#starting-a-gen_server"·class="hover-link">184 ··<a·href="#starting-a-gen_server"·class="hover-link">
185 ····<i·class="ri-link-m"·aria-hidden="true"></i>185 ····<i·class="ri-link-m"·aria-hidden="true"></i>
186 ··</a>186 ··</a>
187 ··<span·class="text">Starting·a·Gen_Server</span>187 ··<span·class="text">Starting·a·Gen_Server</span>
188 </h2>188 </h2>
189 <p>In·the·example·in·the·previous·section,·<code·class="inline">gen_server</code>·is·started·by·calling189 <p>In·the·example·in·the·previous·section,·<code·class="inline">gen_server</code>·is·started·by·calling
190 <code·class="inline">ch3:start_link()</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start_link</span><span·class="p"·data-group-id="7759743797-1">(</span><span·class="p"·data-group-id="7759743797-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">190 <code·class="inline">ch3:start_link()</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start_link</span><span·class="p"·data-group-id="2874335897-1">(</span><span·class="p"·data-group-id="2874335897-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
191 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="7759743797-2">(</span><span·class="p"·data-group-id="7759743797-3">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="7759743797-3">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·680,·SHA:·dd64e91a9eb364ac97259ca3a282e9c4902048d4bc0aa160506963dc5fbb1407·...·]97-6">}</span></code></pre><p><code·class="inline">start_link/0</code>·calls·function·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start_link/4"><code·class="inline">gen_server:start_link/4</code></a>.·This·function·spawns·and191 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="2874335897-2">(</span><span·class="p"·data-group-id="2874335897-3">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="2874335897-3">}</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·680,·SHA:·18fadbd72f37c39afc8050c8bd01ca260cce7f66a3d2027878e2b8d8e287f36c·...·]97-6">}</span></code></pre><p><code·class="inline">start_link/0</code>·calls·function·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start_link/4"><code·class="inline">gen_server:start_link/4</code></a>.·This·function·spawns·and
192 links·to·a·new·process,·a·<code·class="inline">gen_server</code>.</p><ul><li><p>The·first·argument,·<code·class="inline">{local,·ch3}</code>,·specifies·the·name.·The·gen_server·is·then192 links·to·a·new·process,·a·<code·class="inline">gen_server</code>.</p><ul><li><p>The·first·argument,·<code·class="inline">{local,·ch3}</code>,·specifies·the·name.·The·gen_server·is·then
193 locally·registered·as·<code·class="inline">ch3</code>.</p><p>If·the·name·is·omitted,·the·<code·class="inline">gen_server</code>·is·not·registered.·Instead·its·pid193 locally·registered·as·<code·class="inline">ch3</code>.</p><p>If·the·name·is·omitted,·the·<code·class="inline">gen_server</code>·is·not·registered.·Instead·its·pid
194 must·be·used.·The·name·can·also·be·given·as·<code·class="inline">{global,·Name}</code>,·in·which·case194 must·be·used.·The·name·can·also·be·given·as·<code·class="inline">{global,·Name}</code>,·in·which·case
195 the·<code·class="inline">gen_server</code>·is·registered·using·<a·href="../../lib/kernel-10.0.1/doc/html/global.html#register_name/2"><code·class="inline">global:register_name/2</code></a>.</p></li><li><p>The·second·argument,·<code·class="inline">ch3</code>,·is·the·name·of·the·callback·module,·which·is195 the·<code·class="inline">gen_server</code>·is·registered·using·<a·href="../../lib/kernel-10.0.1/doc/html/global.html#register_name/2"><code·class="inline">global:register_name/2</code></a>.</p></li><li><p>The·second·argument,·<code·class="inline">ch3</code>,·is·the·name·of·the·callback·module,·which·is
196 the·module·where·the·callback·functions·are·located.</p><p>The·interface·functions·(<code·class="inline">start_link/0</code>,·<code·class="inline">alloc/0</code>,·and·<code·class="inline">free/1</code>)·are·located196 the·module·where·the·callback·functions·are·located.</p><p>The·interface·functions·(<code·class="inline">start_link/0</code>,·<code·class="inline">alloc/0</code>,·and·<code·class="inline">free/1</code>)·are·located
197 in·the·same·module·as·the·callback·functions·(<code·class="inline">init/1</code>,·<code·class="inline">handle_call/3</code>,·and197 in·the·same·module·as·the·callback·functions·(<code·class="inline">init/1</code>,·<code·class="inline">handle_call/3</code>,·and
198 <code·class="inline">handle_cast/2</code>).·It·is·usually·good·programming·practice·to·have·the·code198 <code·class="inline">handle_cast/2</code>).·It·is·usually·good·programming·practice·to·have·the·code
199 corresponding·to·one·process·contained·in·a·single·module.</p></li><li><p>The·third·argument,·<code·class="inline">[]</code>,·is·a·term·that·is·passed·as·is·to·the·callback199 corresponding·to·one·process·contained·in·a·single·module.</p></li><li><p>The·third·argument,·<code·class="inline">[]</code>,·is·a·term·that·is·passed·as·is·to·the·callback
200 function·<code·class="inline">init</code>.·Here,·<code·class="inline">init</code>·does·not·need·any·indata·and·ignores·the200 function·<code·class="inline">init</code>.·Here,·<code·class="inline">init</code>·does·not·need·any·indata·and·ignores·the
201 argument.</p></li><li><p>The·fourth·argument,·<code·class="inline">[]</code>,·is·a·list·of·options.·See·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html"><code·class="inline">gen_server</code></a>201 argument.</p></li><li><p>The·fourth·argument,·<code·class="inline">[]</code>,·is·a·list·of·options.·See·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html"><code·class="inline">gen_server</code></a>
202 for·the·available·options.</p></li></ul><p>If·name·registration·succeeds,·the·new·<code·class="inline">gen_server</code>·process·calls·the·callback202 for·the·available·options.</p></li></ul><p>If·name·registration·succeeds,·the·new·<code·class="inline">gen_server</code>·process·calls·the·callback
203 function·<code·class="inline">ch3:init([])</code>.·<code·class="inline">init</code>·is·expected·to·return·<code·class="inline">{ok,·State}</code>,·where203 function·<code·class="inline">ch3:init([])</code>.·<code·class="inline">init</code>·is·expected·to·return·<code·class="inline">{ok,·State}</code>,·where
204 <code·class="inline">State</code>·is·the·internal·state·of·the·<code·class="inline">gen_server</code>.·In·this·case,·the·state·is204 <code·class="inline">State</code>·is·the·internal·state·of·the·<code·class="inline">gen_server</code>.·In·this·case,·the·state·is
205 the·available·channels.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="9895374501-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="9895374501-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">205 the·available·channels.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="3519245949-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="3519245949-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 ····</span><span·class="p"·data-group-id="9895374501-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">channels</span><span·class="p"·data-group-id="9895374501-3">(</span><span·class="p"·data-group-id="9895374501-3">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·4624cc44d4ed424c57e4f16e1ab5ce57faa1061a36b5b2e80cea0ed6ef392abe·...·]-2">}</span><span·class="p">.</span></code></pre><p><a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start_link/4"><code·class="inline">gen_server:start_link/4</code></a>·is·synchronous.·It·does·not·return·until·the206 ····</span><span·class="p"·data-group-id="3519245949-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">channels</span><span·class="p"·data-group-id="3519245949-3">(</span><span·class="p"·data-group-id="3519245949-3">)</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·92a059e439560882eb94e9450998e505fb7d45bd91ccc33bdbd8348c0fdd23b3·...·]-2">}</span><span·class="p">.</span></code></pre><p><a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start_link/4"><code·class="inline">gen_server:start_link/4</code></a>·is·synchronous.·It·does·not·return·until·the
207 <code·class="inline">gen_server</code>·has·been·initialized·and·is·ready·to·receive·requests.</p><p><a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start_link/4"><code·class="inline">gen_server:start_link/4</code></a>·must·be·used·if·the·<code·class="inline">gen_server</code>·is·part·of207 <code·class="inline">gen_server</code>·has·been·initialized·and·is·ready·to·receive·requests.</p><p><a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start_link/4"><code·class="inline">gen_server:start_link/4</code></a>·must·be·used·if·the·<code·class="inline">gen_server</code>·is·part·of
208 a·supervision·tree,·meaning·that·it·was·started·by·a·supervisor.·There208 a·supervision·tree,·meaning·that·it·was·started·by·a·supervisor.·There
209 is·another·function,·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start/4"><code·class="inline">gen_server:start/4</code></a>,·to·start·a·standalone209 is·another·function,·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start/4"><code·class="inline">gen_server:start/4</code></a>,·to·start·a·standalone
210 <code·class="inline">gen_server</code>·that·is·not·part·of·a·supervision·tree.</p><h2·id="synchronous-requests-call"·class="section-heading">210 <code·class="inline">gen_server</code>·that·is·not·part·of·a·supervision·tree.</p><h2·id="synchronous-requests-call"·class="section-heading">
211 ··<a·href="#synchronous-requests-call"·class="hover-link">211 ··<a·href="#synchronous-requests-call"·class="hover-link">
212 ····<i·class="ri-link-m"·aria-hidden="true"></i>212 ····<i·class="ri-link-m"·aria-hidden="true"></i>
213 ··</a>213 ··</a>
Offset 221, 32 lines modifiedOffset 221, 32 lines modified
221 </h2>221 </h2>
222 <p>The·synchronous·request·<code·class="inline">alloc()</code>·is·implemented·using·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#call/2"><code·class="inline">gen_server:call/2</code></a>:</p><pre><code·class="text">alloc()·-&gt;222 <p>The·synchronous·request·<code·class="inline">alloc()</code>·is·implemented·using·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#call/2"><code·class="inline">gen_server:call/2</code></a>:</p><pre><code·class="text">alloc()·-&gt;
223 ····gen_server:call(ch3,·alloc).</code></pre><p><code·class="inline">ch3</code>·is·the·name·of·the·<code·class="inline">gen_server</code>·and·must·agree·with·the·name·used·to·start223 ····gen_server:call(ch3,·alloc).</code></pre><p><code·class="inline">ch3</code>·is·the·name·of·the·<code·class="inline">gen_server</code>·and·must·agree·with·the·name·used·to·start
224 it.·<code·class="inline">alloc</code>·is·the·actual·request.</p><p>The·request·is·made·into·a·message·and·sent·to·the·<code·class="inline">gen_server</code>.·When·the224 it.·<code·class="inline">alloc</code>·is·the·actual·request.</p><p>The·request·is·made·into·a·message·and·sent·to·the·<code·class="inline">gen_server</code>.·When·the
225 request·is·received,·the·<code·class="inline">gen_server</code>·calls·<code·class="inline">handle_call(Request,·From,·State)</code>,225 request·is·received,·the·<code·class="inline">gen_server</code>·calls·<code·class="inline">handle_call(Request,·From,·State)</code>,
226 which·is·expected·to·return·a·tuple·<code·class="inline">{reply,Reply,State1}</code>.·<code·class="inline">Reply</code>·is·the·reply226 which·is·expected·to·return·a·tuple·<code·class="inline">{reply,Reply,State1}</code>.·<code·class="inline">Reply</code>·is·the·reply
227 that·is·to·be·sent·back·to·the·client,·and·<code·class="inline">State1</code>·is·a·new·value·for·the·state227 that·is·to·be·sent·back·to·the·client,·and·<code·class="inline">State1</code>·is·a·new·value·for·the·state
228 of·the·<code·class="inline">gen_server</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_call</span><span·class="p"·data-group-id="9845312370-1">(</span><span·class="ss">alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="98[·...·truncated·by·diffoscope;·len:·8,·SHA:·40e48eeec796dc5a09062930cd750819285a9993b16cc3feffdd27d01028ed3b·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">228 of·the·<code·class="inline">gen_server</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_call</span><span·class="p"·data-group-id="9728585618-1">(</span><span·class="ss">alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="97[·...·truncated·by·diffoscope;·len:·8,·SHA:·65d67a56933d6eac32aed88b9a5833c4e62d873b4ab65412e1806c4857bd10b6·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
229 ····</span><span·class="p"·data-group-id="9845312370-2">{</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="9845312370-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·139,·SHA:·dc869d4468f657d915ed17195ff42489e490bf818ef8499f421b561256a27bb0·...·]-3">)</span><span·class="p">,</span><span·class="w">229 ····</span><span·class="p"·data-group-id="9728585618-2">{</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="9728585618-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·139,·SHA:·5b0e0157c8d93266e63345e75680427e86c7c450b64e502c91a24af74b0b5add·...·]-3">)</span><span·class="p">,</span><span·class="w">
230 ····</span><span·class="p"·data-group-id="9845312370-4">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="9845312370-4">}</span><span·class="p">.</span></code></pre><p>In·this·case,·the·reply·is·the·allocated·channel·<code·class="inline">Ch</code>·and·the·new·state·is·the230 ····</span><span·class="p"·data-group-id="9728585618-4">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="9728585618-4">}</span><span·class="p">.</span></code></pre><p>In·this·case,·the·reply·is·the·allocated·channel·<code·class="inline">Ch</code>·and·the·new·state·is·the
231 set·of·remaining·available·channels·<code·class="inline">Chs2</code>.</p><p>Thus,·the·call·<code·class="inline">ch3:alloc()</code>·returns·the·allocated·channel·<code·class="inline">Ch</code>·and·the231 set·of·remaining·available·channels·<code·class="inline">Chs2</code>.</p><p>Thus,·the·call·<code·class="inline">ch3:alloc()</code>·returns·the·allocated·channel·<code·class="inline">Ch</code>·and·the
232 <code·class="inline">gen_server</code>·then·waits·for·new·requests,·now·with·an·updated·list·of·available232 <code·class="inline">gen_server</code>·then·waits·for·new·requests,·now·with·an·updated·list·of·available
233 channels.</p><h2·id="asynchronous-requests-cast"·class="section-heading">233 channels.</p><h2·id="asynchronous-requests-cast"·class="section-heading">
234 ··<a·href="#asynchronous-requests-cast"·class="hover-link">234 ··<a·href="#asynchronous-requests-cast"·class="hover-link">
235 ····<i·class="ri-link-m"·aria-hidden="true"></i>235 ····<i·class="ri-link-m"·aria-hidden="true"></i>
236 ··</a>236 ··</a>
237 ··<span·class="text">Asynchronous·Requests·-·Cast</span>237 ··<span·class="text">Asynchronous·Requests·-·Cast</span>
238 </h2>238 </h2>
239 <p>The·asynchronous·request·<code·class="inline">free(Ch)</code>·is·implemented·using·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#cast/2"><code·class="inline">gen_server:cast/2</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">free</span><span·class="p"·data-group-id="9381952642-1">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="9381952642-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">239 <p>The·asynchronous·request·<code·class="inline">free(Ch)</code>·is·implemented·using·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#cast/2"><code·class="inline">gen_server:cast/2</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">free</span><span·class="p"·data-group-id="4691971652-1">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="4691971652-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
240 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="9381952642-2">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9381952642-3">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span[·...·truncated·by·diffoscope;·len:·88,·SHA:·a72d7a24da584f69af7074f9935a70a542577af25ac475e8ce0e02912adbbefa·...·]2-2">)</span><span·class="p">.</span></code></pre><p><code·class="inline">ch3</code>·is·the·name·of·the·<code·class="inline">gen_server</code>.·<code·class="inline">{free,·Ch}</code>·is·the·actual·request.</p><p>The·request·is·made·into·a·message·and·sent·to·the·<code·class="inline">gen_server</code>.·<code·class="inline">cast</code>,·and240 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="4691971652-2">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4691971652-3">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span[·...·truncated·by·diffoscope;·len:·88,·SHA:·5e6176d965786451d4a217400637c84d76b95f04142880b2d43906faf4b73e1c·...·]2-2">)</span><span·class="p">.</span></code></pre><p><code·class="inline">ch3</code>·is·the·name·of·the·<code·class="inline">gen_server</code>.·<code·class="inline">{free,·Ch}</code>·is·the·actual·request.</p><p>The·request·is·made·into·a·message·and·sent·to·the·<code·class="inline">gen_server</code>.·<code·class="inline">cast</code>,·and
241 thus·<code·class="inline">free</code>,·then·returns·<code·class="inline">ok</code>.</p><p>When·the·request·is·received,·the·<code·class="inline">gen_server</code>·calls241 thus·<code·class="inline">free</code>,·then·returns·<code·class="inline">ok</code>.</p><p>When·the·request·is·received,·the·<code·class="inline">gen_server</code>·calls
242 <code·class="inline">handle_cast(Request,·State)</code>,·which·is·expected·to·return·a·tuple242 <code·class="inline">handle_cast(Request,·State)</code>,·which·is·expected·to·return·a·tuple
243 <code·class="inline">{noreply,State1}</code>.·<code·class="inline">State1</code>·is·a·new·value·for·the·state·of·the·<code·class="inline">gen_server</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_cast</span><span·class="p"·data-group-id="2523424036-1">(</span><span·class="p"·data-group-id="2523424036-2">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="2523424036-2">}</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·88,·SHA:·58b2c6d048607ba52ccc1940e907cb3cbf4266cef4053fd37c80407d1543891c·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">243 <code·class="inline">{noreply,State1}</code>.·<code·class="inline">State1</code>·is·a·new·value·for·the·state·of·the·<code·class="inline">gen_server</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle_cast</span><span·class="p"·data-group-id="6217509437-1">(</span><span·class="p"·data-group-id="6217509437-2">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="6217509437-2">}</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·88,·SHA:·8b3e9e1826566a5c0c65ccaf5c8353efc9d12825410c0863ca268e03d73589de·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
244 ····</span><span·class="n">Chs2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">free</span><span·class="p"·data-group-id="2523424036-3">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="2523424036-3">)</span><span·class="p">,</span><span·class="w">244 ····</span><span·class="n">Chs2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">free</span><span·class="p"·data-group-id="6217509437-3">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="6217509437-3">)</span><span·class="p">,</span><span·class="w">
245 ····</span><span·class="p"·data-group-id="2523424036-4">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="2523424036-4">}</span><span·class="p">.</span></code></pre><p>In·this·case,·the·new·state·is·the·updated·list·of·available·channels·<code·class="inline">Chs2</code>.245 ····</span><span·class="p"·data-group-id="6217509437-4">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="6217509437-4">}</span><span·class="p">.</span></code></pre><p>In·this·case,·the·new·state·is·the·updated·list·of·available·channels·<code·class="inline">Chs2</code>.
246 The·<code·class="inline">gen_server</code>·is·now·ready·for·new·requests.</p><h2·id="stopping"·class="section-heading">246 The·<code·class="inline">gen_server</code>·is·now·ready·for·new·requests.</p><h2·id="stopping"·class="section-heading">
247 ··<a·href="#stopping"·class="hover-link">247 ··<a·href="#stopping"·class="hover-link">
248 ····<i·class="ri-link-m"·aria-hidden="true"></i>248 ····<i·class="ri-link-m"·aria-hidden="true"></i>
249 ··</a>249 ··</a>
250 ··<span·class="text">Stopping</span>250 ··<span·class="text">Stopping</span>
251 </h2>251 </h2>
252 <h3·id="in-a-supervision-tree"·class="section-heading">252 <h3·id="in-a-supervision-tree"·class="section-heading">
Offset 257, 68 lines modifiedOffset 257, 68 lines modified
257 </h3>257 </h3>
258 <p>If·the·<code·class="inline">gen_server</code>·is·part·of·a·supervision·tree,·no·stop·function·is·needed.258 <p>If·the·<code·class="inline">gen_server</code>·is·part·of·a·supervision·tree,·no·stop·function·is·needed.
259 The·<code·class="inline">gen_server</code>·is·automatically·terminated·by·its·supervisor.·Exactly·how·this259 The·<code·class="inline">gen_server</code>·is·automatically·terminated·by·its·supervisor.·Exactly·how·this
260 is·done·is·defined·by·a·<a·href="sup_princ.html#shutdown">shutdown·strategy</a>·set·in·the260 is·done·is·defined·by·a·<a·href="sup_princ.html#shutdown">shutdown·strategy</a>·set·in·the
261 supervisor.</p><p>If·it·is·necessary·to·clean·up·before·termination,·the·shutdown·strategy·must·be261 supervisor.</p><p>If·it·is·necessary·to·clean·up·before·termination,·the·shutdown·strategy·must·be
262 a·time-out·value·and·the·<code·class="inline">gen_server</code>·must·be·set·to·trap·exit·signals·in262 a·time-out·value·and·the·<code·class="inline">gen_server</code>·must·be·set·to·trap·exit·signals·in
263 function·<code·class="inline">init</code>.·When·ordered·to·shutdown,·the·<code·class="inline">gen_server</code>·then·calls·the263 function·<code·class="inline">init</code>.·When·ordered·to·shutdown,·the·<code·class="inline">gen_server</code>·then·calls·the
264 callback·function·<code·class="inline">terminate(shutdown,·State)</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="2941043543-1">(</span><span·class="n">Args</span><span·class="p"·data-group-id="2941043543-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">264 callback·function·<code·class="inline">terminate(shutdown,·State)</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="4650443445-1">(</span><span·class="n">Args</span><span·class="p"·data-group-id="4650443445-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
265 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">265 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">
266 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="2941043543-2">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="2941043543-2">)</span><span·class="p">,</span><span·class="w">266 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="4650443445-2">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="4650443445-2">)</span><span·class="p">,</span><span·class="w">
267 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">267 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">
268 ····</span><span·class="p"·data-group-id="2941043543-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="2941043543-3">}</span><span·class="p">.</span><span·class="w">268 ····</span><span·class="p"·data-group-id="4650443445-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="4650443445-3">}</span><span·class="p">.</span><span·class="w">
  
269 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">269 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
  
270 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="2941043543-4">(</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="2941043543-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">270 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="4650443445-4">(</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="4650443445-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
271 ····</span><span·class="c1">%%·Code·for·cleaning·up·here</span><span·class="w">271 ····</span><span·class="c1">%%·Code·for·cleaning·up·here</span><span·class="w">
272 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">272 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
273 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><h3·id="standalone-gen_servers"·class="section-heading">273 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><h3·id="standalone-gen_servers"·class="section-heading">
274 ··<a·href="#standalone-gen_servers"·class="hover-link">274 ··<a·href="#standalone-gen_servers"·class="hover-link">
275 ····<i·class="ri-link-m"·aria-hidden="true"></i>275 ····<i·class="ri-link-m"·aria-hidden="true"></i>
276 ··</a>276 ··</a>
277 ··<span·class="text">Standalone·Gen_Servers</span>277 ··<span·class="text">Standalone·Gen_Servers</span>
278 </h3>278 </h3>
279 <p>If·the·<code·class="inline">gen_server</code>·is·not·part·of·a·supervision·tree,·a·stop·function·can·be279 <p>If·the·<code·class="inline">gen_server</code>·is·not·part·of·a·supervision·tree,·a·stop·function·can·be
280 useful,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">280 useful,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
281 </span><span·class="nf">export</span><span·class="p"·data-group-id="5403200539-1">(</span><span·class="p"·data-group-id="5403200539-2">[</span><span·class="ss">stop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="5403200539-2">]</span><span·class="p"·data-group-id="5403200539-1">)</span><span·class="p">.</span><span·class="w">281 </span><span·class="nf">export</span><span·class="p"·data-group-id="8598773116-1">(</span><span·class="p"·data-group-id="8598773116-2">[</span><span·class="ss">stop</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8598773116-2">]</span><span·class="p"·data-group-id="8598773116-1">)</span><span·class="p">.</span><span·class="w">
282 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">282 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
  
283 </span><span·class="nf">stop</span><span·class="p"·data-group-id="5403200539-3">(</span><span·class="p"·data-group-id="5403200539-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">283 </span><span·class="nf">stop</span><span·class="p"·data-group-id="8598773116-3">(</span><span·class="p"·data-group-id="8598773116-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
Max diff block lines reached; 9117/50047 bytes (18.22%) of diff not shown.
630 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/doc/system/getting_started.html
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ······<p·class="built-using">181 ······<p·class="built-using">
182 ········Built·using182 ········Built·using
183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
185 ······</p>185 ······</p>
186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
187 ····</footer>187 ····</footer>
188 ··</div>188 ··</div>
189 </main>189 </main>
190 </div>190 </div>
191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
192 <script>192 <script>
193 ··document.addEventListener("DOMContentLoaded",·function·()·{193 ··document.addEventListener("DOMContentLoaded",·function·()·{
731 B
html2text {}
Max HTML report size reached
34.5 KB
./usr/share/doc/erlang-doc/html/doc/system/included_applications.html
    
Offset 161, 75 lines modifiedOffset 161, 75 lines modified
161 belonging·to·the·primary·application.</p><h2·id="specifying-included-applications"·class="section-heading">161 belonging·to·the·primary·application.</p><h2·id="specifying-included-applications"·class="section-heading">
162 ··<a·href="#specifying-included-applications"·class="hover-link">162 ··<a·href="#specifying-included-applications"·class="hover-link">
163 ····<i·class="ri-link-m"·aria-hidden="true"></i>163 ····<i·class="ri-link-m"·aria-hidden="true"></i>
164 ··</a>164 ··</a>
165 ··<span·class="text">Specifying·Included·Applications</span>165 ··<span·class="text">Specifying·Included·Applications</span>
166 </h2>166 </h2>
167 <p>Which·applications·to·include·is·defined·by·the·<code·class="inline">included_applications</code>·key·in167 <p>Which·applications·to·include·is·defined·by·the·<code·class="inline">included_applications</code>·key·in
168 the·<code·class="inline">.app</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6611382009-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prim_app</span><span·class="p">,</span><span·class="w">168 the·<code·class="inline">.app</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5531028676-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prim_app</span><span·class="p">,</span><span·class="w">
169 ·</span><span·class="p"·data-group-id="6611382009-2">[</span><span·class="p"·data-group-id="6611382009-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Tree·application&quot;</span><span·class="p"·data-group-id="6611382009-3">}</span><span·class="p">,</span><span·class="w">169 ·</span><span·class="p"·data-group-id="5531028676-2">[</span><span·class="p"·data-group-id="5531028676-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Tree·application&quot;</span><span·class="p"·data-group-id="5531028676-3">}</span><span·class="p">,</span><span·class="w">
170 ··</span><span·class="p"·data-group-id="6611382009-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="6611382009-4">}</span><span·class="p">,</span><span·class="w">170 ··</span><span·class="p"·data-group-id="5531028676-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="5531028676-4">}</span><span·class="p">,</span><span·class="w">
171 ··</span><span·class="p"·data-group-id="6611382009-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6611382009-6">[</span><span·class="ss">prim_app_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pr[·...·truncated·by·diffoscope;·len:·198,·SHA:·714c46cca16812618313c8b5da0ef53518c758689395c756bcdcbcd3980470a9·...·]-5">}</span><span·class="p">,</span><span·class="w">171 ··</span><span·class="p"·data-group-id="5531028676-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5531028676-6">[</span><span·class="ss">prim_app_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pr[·...·truncated·by·diffoscope;·len:·198,·SHA:·60e4368c2dab81009ee165bdecba0705ecd8f472328cb6982b727ee9e55f1f93·...·]-5">}</span><span·class="p">,</span><span·class="w">
172 ··</span><span·class="p"·data-group-id="6611382009-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6611382009-8">[</span><span·class="ss">prim_app_server</span><span·class="p"·data-group-id="6611382009-8">]</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·a4a7832457545ee8cafce92a7a5a32c4b34bc20910ab98e46dfc3c0c43cd91fa·...·]-7">}</span><span·class="p">,</span><span·class="w">172 ··</span><span·class="p"·data-group-id="5531028676-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5531028676-8">[</span><span·class="ss">prim_app_server</span><span·class="p"·data-group-id="5531028676-8">]</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·8e5a9eb1c2c9fdf8140fbb6852b65faa868af48969393be166bdb2dec05f543a·...·]-7">}</span><span·class="p">,</span><span·class="w">
173 ··</span><span·class="p"·data-group-id="6611382009-9">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6611382009-10">[</span><span·class="ss">incl_app</span><span·class="p"·data-group-id="6611382009-10">]</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·e30774c227992ff5e4a7fb2906e7f5e7dd337cedfee16db53e7d50d2885ce1fd·...·]-9">}</span><span·class="p">,</span><span·class="w">173 ··</span><span·class="p"·data-group-id="5531028676-9">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5531028676-10">[</span><span·class="ss">incl_app</span><span·class="p"·data-group-id="5531028676-10">]</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·54205874f9c22ad9a485caf16321a19ce3943ac0c127b7fde1ee5d819ce711b7·...·]-9">}</span><span·class="p">,</span><span·class="w">
174 ··</span><span·class="p"·data-group-id="6611382009-11">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6611382009-12">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·184,·SHA:·a92c63de9e4077002c8646999863fc4f550ef817471fd295ff8dbc87876705e1·...·]-11">}</span><span·class="p">,</span><span·class="w">174 ··</span><span·class="p"·data-group-id="5531028676-11">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5531028676-12">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·184,·SHA:·f7371338647d966644b3b65f503e83f1fc7d772b0293e2c5258406ee3671aa2c·...·]-11">}</span><span·class="p">,</span><span·class="w">
175 ··</span><span·class="p"·data-group-id="6611382009-13">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6611382009-14">{</span><span·class="ss">prim_app_cb</span><span·class="p">,</span><span·class="p"·data-group-id="6611382009-15">[</span><span·class="p"·data-group-id="6611382009-15">]</span><span·class="p"·data-group-id="6611382009-14">}</span><span·class="p"·data-group-id="6611382009-13">}</span><span·class="p">,</span><span·class="w"> 
176 ··</span><span·class="p"·data-group-id="6611382009-16">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6611382009-17">[</span><span·class="p"·data-group-id="6611382009-18">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/usr/local/log&quot;</span><span·class="p"·data-group-id="6611382009-18">}</span><span·class="p"·data-group-id="6611382009-17">]</span><span·class="p"·data-group-id="6611382009-16">}</span><span·class="w"> 
177 ·</span><span·class="p"·data-group-id="6611382009-2">]</span><span·class="p"·data-group-id="6611382009-1">}</span><span·class="p">.</span></code></pre><h2·id="synchronizing-processes-during-startup"·class="section-heading">175 ··</span><span·class="p"·data-group-id="5531028676-13">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5531028676-14">{</span><span·class="ss">prim_app_cb</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·248,·SHA:·ac793a9734c1f4c100e1b4485059e8e507a28fdd303accd4a590afc7a439bd72·...·]">
 176 ··</span><span·class="p"·data-group-id="5531028676-16">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5531028676-17">[</span><span·class="p"·data-group-id="5531028676-18">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/usr/local/log&quot;</span><span·class="p"·data-group-id="5531028676-18">}</span><span·class="p"·data-group-id="5531028676-17">]</span><span·class="p"·data-group-id="5531028676-16">}</span><span·class="w">
 177 ·</span><span·class="p"·data-group-id="5531028676-2">]</span><span·class="p"·data-group-id="5531028676-1">}</span><span·class="p">.</span></code></pre><h2·id="synchronizing-processes-during-startup"·class="section-heading">
178 ··<a·href="#synchronizing-processes-during-startup"·class="hover-link">178 ··<a·href="#synchronizing-processes-during-startup"·class="hover-link">
179 ····<i·class="ri-link-m"·aria-hidden="true"></i>179 ····<i·class="ri-link-m"·aria-hidden="true"></i>
180 ··</a>180 ··</a>
181 ··<span·class="text">Synchronizing·Processes·during·Startup</span>181 ··<span·class="text">Synchronizing·Processes·during·Startup</span>
182 </h2>182 </h2>
183 <p>The·supervisor·tree·of·an·included·application·is·started·as·part·of·the183 <p>The·supervisor·tree·of·an·included·application·is·started·as·part·of·the
184 supervisor·tree·of·the·including·application.·If·there·is·a·need·for184 supervisor·tree·of·the·including·application.·If·there·is·a·need·for
185 synchronization·between·processes·in·the·including·and·included·applications,185 synchronization·between·processes·in·the·including·and·included·applications,
186 this·can·be·achieved·by·using·<em>start·phases</em>.</p><p>Start·phases·are·defined·by·the·<code·class="inline">start_phases</code>·key·in·the·<code·class="inline">.app</code>·file·as·a·list186 this·can·be·achieved·by·using·<em>start·phases</em>.</p><p>Start·phases·are·defined·by·the·<code·class="inline">start_phases</code>·key·in·the·<code·class="inline">.app</code>·file·as·a·list
187 of·tuples·<code·class="inline">{Phase,PhaseArgs}</code>,·where·<code·class="inline">Phase</code>·is·an·atom·and·<code·class="inline">PhaseArgs</code>·is·a187 of·tuples·<code·class="inline">{Phase,PhaseArgs}</code>,·where·<code·class="inline">Phase</code>·is·an·atom·and·<code·class="inline">PhaseArgs</code>·is·a
188 term.</p><p>The·value·of·the·<code·class="inline">mod</code>·key·of·the·including·application·must·be·set·to188 term.</p><p>The·value·of·the·<code·class="inline">mod</code>·key·of·the·including·application·must·be·set·to
189 <code·class="inline">{application_starter,[Module,StartArgs]}</code>,·where·<code·class="inline">Module</code>·as·usual·is·the189 <code·class="inline">{application_starter,[Module,StartArgs]}</code>,·where·<code·class="inline">Module</code>·as·usual·is·the
190 application·callback·module.·<code·class="inline">StartArgs</code>·is·a·term·provided·as·argument·to·the190 application·callback·module.·<code·class="inline">StartArgs</code>·is·a·term·provided·as·argument·to·the
191 callback·function·<code·class="inline">Module:start/2</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9911887539-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prim_app</span><span·class="p">,</span><span·class="w">191 callback·function·<code·class="inline">Module:start/2</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9736955111-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prim_app</span><span·class="p">,</span><span·class="w">
192 ·</span><span·class="p"·data-group-id="9911887539-2">[</span><span·class="p"·data-group-id="9911887539-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Tree·application&quot;</span><span·class="p"·data-group-id="9911887539-3">}</span><span·class="p">,</span><span·class="w">192 ·</span><span·class="p"·data-group-id="9736955111-2">[</span><span·class="p"·data-group-id="9736955111-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Tree·application&quot;</span><span·class="p"·data-group-id="9736955111-3">}</span><span·class="p">,</span><span·class="w">
193 ··</span><span·class="p"·data-group-id="9911887539-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="9911887539-4">}</span><span·class="p">,</span><span·class="w">193 ··</span><span·class="p"·data-group-id="9736955111-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="9736955111-4">}</span><span·class="p">,</span><span·class="w">
194 ··</span><span·class="p"·data-group-id="9911887539-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-6">[</span><span·class="ss">prim_app_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pri[·...·truncated·by·diffoscope;·len:·197,·SHA:·f0399e2e29e05468e3789df6e0405b097756c1badb566a3c403e2b6a0d99cd72·...·]-5">}</span><span·class="p">,</span><span·class="w">194 ··</span><span·class="p"·data-group-id="9736955111-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-6">[</span><span·class="ss">prim_app_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pri[·...·truncated·by·diffoscope;·len:·197,·SHA:·df35dc98310c8b8a71b6a8da3ac042029da7870eede8fb706d8f992829862501·...·]-5">}</span><span·class="p">,</span><span·class="w">
195 ··</span><span·class="p"·data-group-id="9911887539-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-8">[</span><span·class="ss">prim_app_server</span><span·class="p"·data-group-id="9911887539-8">]</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·b5501f543de4dfd44d1634ccc4895aa06209feff6ceb794aa6e9519f91cc3d16·...·]-7">}</span><span·class="p">,</span><span·class="w">195 ··</span><span·class="p"·data-group-id="9736955111-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-8">[</span><span·class="ss">prim_app_server</span><span·class="p"·data-group-id="9736955111-8">]</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·07810b3366a2cb165e91850046d591075a444c049ca9773b34a0443f91d74811·...·]-7">}</span><span·class="p">,</span><span·class="w">
196 ··</span><span·class="p"·data-group-id="9911887539-9">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-10">[</span><span·class="ss">incl_app</span><span·class="p"·data-group-id="9911887539-10">]</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·436ae1ab6895a74119d3cc7dac7bc0cbaae89acb5e237395ec12147f08d10af4·...·]-9">}</span><span·class="p">,</span><span·class="w">196 ··</span><span·class="p"·data-group-id="9736955111-9">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-10">[</span><span·class="ss">incl_app</span><span·class="p"·data-group-id="9736955111-10">]</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·e0af9cc2cddd416c106f6e27791c94e1e44afb49afdb9c0c41344de419f354bd·...·]-9">}</span><span·class="p">,</span><span·class="w">
197 ··</span><span·class="p"·data-group-id="9911887539-11">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-12">[</span><span·class="p"·data-group-id="9911887539-13">{</span><span·class="ss">init</span><span·class="p[·...·truncated·by·diffoscope;·len:·581,·SHA:·1c281e87a6b318df34ddc6670f21239c50d1248805ddbc85c4ae0725012443b8·...·]-11">}</span><span·class="p">,</span><span·class="w">197 ··</span><span·class="p"·data-group-id="9736955111-11">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-12">[</span><span·class="p"·data-group-id="9736955111-13">{</span><span·class="ss">init</span><span·class="p[·...·truncated·by·diffoscope;·len:·581,·SHA:·ee9d354053a37d18a84ed64c4cd315f9940d6acedbc6a779d9bfe11676de60bb·...·]-11">}</span><span·class="p">,</span><span·class="w">
198 ··</span><span·class="p"·data-group-id="9911887539-17">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-18">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·183,·SHA:·c84a344c38b84b70423a6d2b5867f17fe823e625f97d48b14d8208809d3ca3e9·...·]-17">}</span><span·class="p">,</span><span·class="w">198 ··</span><span·class="p"·data-group-id="9736955111-17">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-18">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·183,·SHA:·f7f4f9afbc7ff3b780179d480d7510ddaa8a3153c1d9ff83d4558888f21dd4ab·...·]-17">}</span><span·class="p">,</span><span·class="w">
199 ··</span><span·class="p"·data-group-id="9911887539-19">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-20">{</span><span·class="ss">application_starter</span><span·class="p">,</span><span·class="p"·data-group-id="9911887[·...·truncated·by·diffoscope;·len:·332,·SHA:·083ecafec89bc0a719878f9f4458331a8435f9e18a0f2e57962f596913c86dbc·...·]-19">}</span><span·class="p">,</span><span·class="w">199 ··</span><span·class="p"·data-group-id="9736955111-19">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-20">{</span><span·class="ss">application_starter</span><span·class="p">,</span><span·class="p"·data-group-id="9736955[·...·truncated·by·diffoscope;·len:·332,·SHA:·97e0b1fbba54cfbb74892a582eefa1d27b1aa8fb4bbe17a0aee3a741e4c1d22b·...·]-19">}</span><span·class="p">,</span><span·class="w">
200 ··</span><span·class="p"·data-group-id="9911887539-23">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-24">[</span><span·class="p"·data-group-id="9911887539-25">{</span><span·class="ss">file</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·223,·SHA:·365b1add8d52769da0cc5df1f97805c7c5c1153abc27542a7df15893a9552906·...·]-23">}</span><span·class="w">200 ··</span><span·class="p"·data-group-id="9736955111-23">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-24">[</span><span·class="p"·data-group-id="9736955111-25">{</span><span·class="ss">file</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·223,·SHA:·01accc29be68174eb1a3c07e3914efc5dc21b0762624d61e1c99a424e7b85c4b·...·]-23">}</span><span·class="w">
201 ·</span><span·class="p"·data-group-id="9911887539-2">]</span><span·class="p"·data-group-id="9911887539-1">}</span><span·class="p">.</span><span·class="w">201 ·</span><span·class="p"·data-group-id="9736955111-2">]</span><span·class="p"·data-group-id="9736955111-1">}</span><span·class="p">.</span><span·class="w">
  
202 </span><span·class="p"·data-group-id="9911887539-26">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">incl_app</span><span·class="p">,</span><span·class="w">202 </span><span·class="p"·data-group-id="9736955111-26">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">incl_app</span><span·class="p">,</span><span·class="w">
203 ·</span><span·class="p"·data-group-id="9911887539-27">[</span><span·class="p"·data-group-id="9911887539-28">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Included·application&quot;</span><span·class="p"·data-group-id="9911887539-28">}</span><span·class="p">,</span><span·class="w">203 ·</span><span·class="p"·data-group-id="9736955111-27">[</span><span·class="p"·data-group-id="9736955111-28">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Included·application&quot;</span><span·class="p"·data-group-id="9736955111-28">}</span><span·class="p">,</span><span·class="w">
204 ··</span><span·class="p"·data-group-id="9911887539-29">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="9911887539-29">}</span><span·class="p">,</span><span·class="w">204 ··</span><span·class="p"·data-group-id="9736955111-29">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="9736955111-29">}</span><span·class="p">,</span><span·class="w">
205 ··</span><span·class="p"·data-group-id="9911887539-30">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-31">[</span><span·class="ss">incl_app_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">i[·...·truncated·by·diffoscope;·len:·200,·SHA:·7fb9d0bf57f6f2ab07b845e08382275807ded8a2b86876cce67acb09e9ea5841·...·]-30">}</span><span·class="p">,</span><span·class="w">205 ··</span><span·class="p"·data-group-id="9736955111-30">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-31">[</span><span·class="ss">incl_app_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">i[·...·truncated·by·diffoscope;·len:·200,·SHA:·886be8528bffc78456fc303ffcfc53d955e21ae70d981d6db618b298dbecbbc4·...·]-30">}</span><span·class="p">,</span><span·class="w">
206 ··</span><span·class="p"·data-group-id="9911887539-32">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-33">[</span><span·class="p"·data-group-id="9911887539-33">]</span><span·class="p"·data-group-id="9911887539-32">}</span><span·class="p">,</span><span·class="w">206 ··</span><span·class="p"·data-group-id="9736955111-32">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-33">[</span><span·class="p"·data-group-id="9736955111-33">]</span><span·class="p"·data-group-id="9736955111-32">}</span><span·class="p">,</span><span·class="w">
207 ··</span><span·class="p"·data-group-id="9911887539-34">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-35">[</span><span·class="p"·data-group-id="9911887539-36">{</span><span·class="ss">go</span><span·class="p">[·...·truncated·by·diffoscope;·len:·265,·SHA:·a9e08277a2a8207077e27e07cce2a14bba8202a20566c8f2faf28f7f939a22c3·...·]-34">}</span><span·class="p">,</span><span·class="w">207 ··</span><span·class="p"·data-group-id="9736955111-34">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-35">[</span><span·class="p"·data-group-id="9736955111-36">{</span><span·class="ss">go</span><span·class="p">[·...·truncated·by·diffoscope;·len:·265,·SHA:·fa770f1cdec0472050a36add58b65b6551db2e343721e30255b31d0ce164eaee·...·]-34">}</span><span·class="p">,</span><span·class="w">
208 ··</span><span·class="p"·data-group-id="9911887539-38">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-39">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·183,·SHA:·f8e6a61a44d0a197b7eb80a88807713497f1c5bcfd3942579ea660fda24d3745·...·]-38">}</span><span·class="p">,</span><span·class="w">208 ··</span><span·class="p"·data-group-id="9736955111-38">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-39">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·183,·SHA:·3bd8d93accdedda9d5ef3d78ca55b65fd97cb179d63356e387495108651ca470·...·]-38">}</span><span·class="p">,</span><span·class="w">
209 ··</span><span·class="p"·data-group-id="9911887539-40">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9911887539-41">{</span><span·class="ss">incl_app_cb</span><span·class="p">,</span><span·class="p"·data-group-id="9911887539-42">[·...·truncated·by·diffoscope;·len:·157,·SHA:·92f230b821f3753987427befbb7e5297684b1fa81c941e928febac645c2a8952·...·]-40">}</span><span·class="w">209 ··</span><span·class="p"·data-group-id="9736955111-40">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9736955111-41">{</span><span·class="ss">incl_app_cb</span><span·class="p">,</span><span·class="p"·data-group-id="9736955111-42">[·...·truncated·by·diffoscope;·len:·157,·SHA:·cb0b0d97556330c6260551dc3ec06454c4a2f0218802b9abe60162cebe9c3d69·...·]-40">}</span><span·class="w">
210 ·</span><span·class="p"·data-group-id="9911887539-27">]</span><span·class="p"·data-group-id="9911887539-26">}</span><span·class="p">.</span></code></pre><p>When·starting·a·primary·application·with·included·applications,·the·primary210 ·</span><span·class="p"·data-group-id="9736955111-27">]</span><span·class="p"·data-group-id="9736955111-26">}</span><span·class="p">.</span></code></pre><p>When·starting·a·primary·application·with·included·applications,·the·primary
211 application·is·started·the·normal·way,·that·is:</p><ul><li>The·application·controller·creates·an·application·master·for·the·application</li><li>The·application·master·calls·<code·class="inline">Module:start(normal,·StartArgs)</code>·to·start·the211 application·is·started·the·normal·way,·that·is:</p><ul><li>The·application·controller·creates·an·application·master·for·the·application</li><li>The·application·master·calls·<code·class="inline">Module:start(normal,·StartArgs)</code>·to·start·the
212 top·supervisor.</li></ul><p>Then,·for·the·primary·application·and·each·included·application·in·top-down,212 top·supervisor.</li></ul><p>Then,·for·the·primary·application·and·each·included·application·in·top-down,
213 left-to-right·order,·the·application·master·calls213 left-to-right·order,·the·application·master·calls
214 <code·class="inline">Module:start_phase(Phase,·Type,·PhaseArgs)</code>·for·each·phase·defined·for·the214 <code·class="inline">Module:start_phase(Phase,·Type,·PhaseArgs)</code>·for·each·phase·defined·for·the
215 primary·application,·in·that·order.·If·a·phase·is·not·defined·for·an·included215 primary·application,·in·that·order.·If·a·phase·is·not·defined·for·an·included
216 application,·the·function·is·not·called·for·this·phase·and·application.</p><p>The·following·requirements·apply·to·the·<code·class="inline">.app</code>·file·for·an·included·application:</p><ul><li>The·<code·class="inline">{mod,·{Module,StartArgs}}</code>·option·must·be·included.·This·option·is·used216 application,·the·function·is·not·called·for·this·phase·and·application.</p><p>The·following·requirements·apply·to·the·<code·class="inline">.app</code>·file·for·an·included·application:</p><ul><li>The·<code·class="inline">{mod,·{Module,StartArgs}}</code>·option·must·be·included.·This·option·is·used
217 to·find·the·callback·module·<code·class="inline">Module</code>·of·the·application.·<code·class="inline">StartArgs</code>·is217 to·find·the·callback·module·<code·class="inline">Module</code>·of·the·application.·<code·class="inline">StartArgs</code>·is
218 ignored,·as·<code·class="inline">Module:start/2</code>·is·called·only·for·the·primary·application.</li><li>If·the·included·application·itself·contains·included·applications,·instead·the218 ignored,·as·<code·class="inline">Module:start/2</code>·is·called·only·for·the·primary·application.</li><li>If·the·included·application·itself·contains·included·applications,·instead·the
219 <code·class="inline">{mod,·{application_starter,·[Module,StartArgs]}}</code>·option·must·be·included.</li><li>The·<code·class="inline">{start_phases,·[{Phase,PhaseArgs}]}</code>·option·must·be·included,·and·the·set219 <code·class="inline">{mod,·{application_starter,·[Module,StartArgs]}}</code>·option·must·be·included.</li><li>The·<code·class="inline">{start_phases,·[{Phase,PhaseArgs}]}</code>·option·must·be·included,·and·the·set
220 of·specified·phases·must·be·a·subset·of·the·set·of·phases·specified·for·the220 of·specified·phases·must·be·a·subset·of·the·set·of·phases·specified·for·the
221 primary·application.</li></ul><p>When·starting·<code·class="inline">prim_app</code>·as·defined·above,·the·application·controller·calls·the221 primary·application.</li></ul><p>When·starting·<code·class="inline">prim_app</code>·as·defined·above,·the·application·controller·calls·the
222 following·callback·functions·before·<code·class="inline">application:start(prim_app)</code>·returns·a222 following·callback·functions·before·<code·class="inline">application:start(prim_app)</code>·returns·a
223 value:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">application</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="0896136950-1">(</span><span·class="ss">prim_app</span><span·class="p"·data-group-id="0896136950-1">)</span><span·class="w">223 value:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">application</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8868383917-1">(</span><span·class="ss">prim_app</span><span·class="p"·data-group-id="8868383917-1">)</span><span·class="w">
224 ·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">prim_app_cb</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="0896136950-2">(</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0896136950-3">[</span><span·class="p"·data-group-id="0896136950-3">]</span><span·class="p"·data-group-id="0896136950-2">)</span><span·class="w">224 ·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">prim_app_cb</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8868383917-2">(</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8868383917-3">[</span><span·class="p"·data-group-id="8868383917-3">]</span><span·class="p"·data-group-id="8868383917-2">)</span><span·class="w">
225 ·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">prim_app_cb</span><span·class="p">:</span><span·class="nf">start_phase</span><span·class="p"·data-group-id="0896136950-4">(</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0896136950-5">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·67,·SHA:·1817f28071e242174d8523ab1f7403c41bffbd1857931092bc200447f5f59f5e·...·]-4">)</span><span·class="w">225 ·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">prim_app_cb</span><span·class="p">:</span><span·class="nf">start_phase</span><span·class="p"·data-group-id="8868383917-4">(</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8868383917-5">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·67,·SHA:·00c9795870c1560104da4cec3ada171f073e171b1c12d4b1a9c001d83a99656a·...·]-4">)</span><span·class="w">
226 ·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">prim_app_cb</span><span·class="p">:</span><span·class="nf">start_phase</span><span·class="p"·data-group-id="0896136950-6">(</span><span·class="ss">go</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0896136950-7">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·29f11cda58cdc041374b4efc53779bd6f0fc1cfb3965f75bc331302b65bfb9a0·...·]-6">)</span><span·class="w">226 ·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">prim_app_cb</span><span·class="p">:</span><span·class="nf">start_phase</span><span·class="p"·data-group-id="8868383917-6">(</span><span·class="ss">go</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8868383917-7">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·4451b3bf89217f483c559300ca8d4c1bc36888f9b5c72ae86cab000224c95f8a·...·]-6">)</span><span·class="w">
227 ·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">incl_app_cb</span><span·class="p">:</span><span·class="nf">start_phase</span><span·class="p"·data-group-id="0896136950-8">(</span><span·class="ss">go</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0896136950-9">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·be63ae49e9602721498319f5b78329554954d9d6f93ddbe9c1b8ffdf04880429·...·]-8">)</span><span·class="w">227 ·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">incl_app_cb</span><span·class="p">:</span><span·class="nf">start_phase</span><span·class="p"·data-group-id="8868383917-8">(</span><span·class="ss">go</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8868383917-9">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·f4f48ae720ba7962974229236e296c690702f6cf36a132ede7b3cc912c109607·...·]-8">)</span><span·class="w">
228 </span><span·class="ss">ok</span></code></pre>228 </span><span·class="ss">ok</span></code></pre>
229 </div>229 </div>
  
230 <div·class="bottom-actions"·id="bottom-actions">230 <div·class="bottom-actions"·id="bottom-actions">
231 ··<div·class="bottom-actions-item">231 ··<div·class="bottom-actions-item">
  
232 ······<a·href="applications.html"·class="bottom-actions-button"·rel="prev">232 ······<a·href="applications.html"·class="bottom-actions-button"·rel="prev">
Offset 273, 15 lines modifiedOffset 273, 15 lines modified
273 ······<p·class="built-using">273 ······<p·class="built-using">
274 ········Built·using274 ········Built·using
275 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the275 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
276 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>276 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
277 ······</p>277 ······</p>
278 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>278 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
279 ····</footer>279 ····</footer>
280 ··</div>280 ··</div>
281 </main>281 </main>
282 </div>282 </div>
283 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>283 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
284 <script>284 <script>
285 ··document.addEventListener("DOMContentLoaded",·function·()·{285 ··document.addEventListener("DOMContentLoaded",·function·()·{
657 B
html2text {}
Max HTML report size reached
1.65 KB
./usr/share/doc/erlang-doc/html/doc/system/install-cross.html
    
Offset 484, 15 lines modifiedOffset 484, 15 lines modified
484 ······<p·class="built-using">484 ······<p·class="built-using">
485 ········Built·using485 ········Built·using
486 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the486 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
487 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>487 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
488 ······</p>488 ······</p>
489 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>489 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
490 ····</footer>490 ····</footer>
491 ··</div>491 ··</div>
492 </main>492 </main>
493 </div>493 </div>
494 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>494 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
495 <script>495 <script>
496 ··document.addEventListener("DOMContentLoaded",·function·()·{496 ··document.addEventListener("DOMContentLoaded",·function·()·{
869 B
html2text {}
Max HTML report size reached
7.65 KB
./usr/share/doc/erlang-doc/html/doc/system/install-win32.html
    
Offset 295, 15 lines modifiedOffset 295, 15 lines modified
295 </span><span·class="gp·unselectable">$·</span><span·class="">cd·erts/emulator295 </span><span·class="gp·unselectable">$·</span><span·class="">cd·erts/emulator
296 </span><span·class="gp·unselectable">$·</span><span·class="">make·debug296 </span><span·class="gp·unselectable">$·</span><span·class="">make·debug
297 </span><span·class="gp·unselectable">$·</span><span·class="">cd·../etc297 </span><span·class="gp·unselectable">$·</span><span·class="">cd·../etc
298 </span><span·class="gp·unselectable">$·</span><span·class="">make·debug298 </span><span·class="gp·unselectable">$·</span><span·class="">make·debug
299 </span></code></pre><p>and·sometimes</p><pre><code·class="makeup·shell"·translate="no"><span·class="gp·unselectable">$·</span><span·class="">cd·$ERL_TOP299 </span></code></pre><p>and·sometimes</p><pre><code·class="makeup·shell"·translate="no"><span·class="gp·unselectable">$·</span><span·class="">cd·$ERL_TOP
300 </span><span·class="gp·unselectable">$·</span><span·class="">make·local_setup300 </span><span·class="gp·unselectable">$·</span><span·class="">make·local_setup
301 </span></code></pre><p>So·now·when·you·run·<code·class="inline">$ERL_TOP/erl.exe</code>,·you·should·have·a·debug·compiled301 </span></code></pre><p>So·now·when·you·run·<code·class="inline">$ERL_TOP/erl.exe</code>,·you·should·have·a·debug·compiled
302 emulator,·which·you·will·see·if·you·do·a:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="6833866762-1">(</span><span·class="ss">system_version</span><span·class="p"·data-group-id="6833866762-1">)</span><span·class="p">.</span></code></pre><p>in·the·erlang·shell.·If·the·returned·string·contains·<code·class="inline">[debug]</code>,·you302 emulator,·which·you·will·see·if·you·do·a:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="1263424914-1">(</span><span·class="ss">system_version</span><span·class="p"·data-group-id="1263424914-1">)</span><span·class="p">.</span></code></pre><p>in·the·erlang·shell.·If·the·returned·string·contains·<code·class="inline">[debug]</code>,·you
303 got·a·debug·compiled·emulator.</p><p>To·hack·the·erlang·libraries,·you·simply·do·a·<code·class="inline">make·opt</code>·in·the303 got·a·debug·compiled·emulator.</p><p>To·hack·the·erlang·libraries,·you·simply·do·a·<code·class="inline">make·opt</code>·in·the
304 specific·&quot;applications&quot;·directory,·like:</p><pre><code·class="makeup·shell"·translate="no"><span·class="gp·unselectable">$·</span><span·class="">cd·$ERL_TOP/lib/stdlib304 specific·&quot;applications&quot;·directory,·like:</p><pre><code·class="makeup·shell"·translate="no"><span·class="gp·unselectable">$·</span><span·class="">cd·$ERL_TOP/lib/stdlib
305 </span><span·class="gp·unselectable">$·</span><span·class="">make·opt305 </span><span·class="gp·unselectable">$·</span><span·class="">make·opt
306 </span></code></pre><p>or·even·in·the·source·directory...</p><pre><code·class="makeup·shell"·translate="no"><span·class="gp·unselectable">$·</span><span·class="">cd·$ERL_TOP/lib/stdlib/src306 </span></code></pre><p>or·even·in·the·source·directory...</p><pre><code·class="makeup·shell"·translate="no"><span·class="gp·unselectable">$·</span><span·class="">cd·$ERL_TOP/lib/stdlib/src
307 </span><span·class="gp·unselectable">$·</span><span·class="">make·opt307 </span><span·class="gp·unselectable">$·</span><span·class="">make·opt
308 </span></code></pre><p>Note·that·you're·expected·to·have·a·fresh·Erlang·in·your·path·when308 </span></code></pre><p>Note·that·you're·expected·to·have·a·fresh·Erlang·in·your·path·when
309 doing·this,·preferably·the·plain·27·you·have·built·in·the·previous309 doing·this,·preferably·the·plain·27·you·have·built·in·the·previous
Offset 318, 19 lines modifiedOffset 318, 19 lines modified
318 </span><span·class="">:$ERL_TOP/erts/etc/win32/wsl_tools:$ERL_TOP/bootstrap/bin:$PATH318 </span><span·class="">:$ERL_TOP/erts/etc/win32/wsl_tools:$ERL_TOP/bootstrap/bin:$PATH
319 </span></code></pre><p>That·should·make·it·possible·to·rebuild·any·library·without·hassle...</p><p>If·you·want·to·copy·a·library·(an·application)·newly·built,·to·a319 </span></code></pre><p>That·should·make·it·possible·to·rebuild·any·library·without·hassle...</p><p>If·you·want·to·copy·a·library·(an·application)·newly·built,·to·a
320 release·area,·you·do·like·with·the·emulator:</p><pre><code·class="makeup·shell"·translate="no"><span·class="gp·unselectable">$·</span><span·class="">cd·$ERL_TOP/lib/stdlib320 release·area,·you·do·like·with·the·emulator:</p><pre><code·class="makeup·shell"·translate="no"><span·class="gp·unselectable">$·</span><span·class="">cd·$ERL_TOP/lib/stdlib
321 </span><span·class="gp·unselectable">$·</span><span·class="">make·TESTROOT=/tmp/erlang_release·release321 </span><span·class="gp·unselectable">$·</span><span·class="">make·TESTROOT=/tmp/erlang_release·release
322 </span></code></pre><p>Remember·that:</p><ul><li><p>··Windows·specific·C-code·goes·in·the·<code·class="inline">$ERL_TOP/erts/emulator/sys/win32</code>,322 </span></code></pre><p>Remember·that:</p><ul><li><p>··Windows·specific·C-code·goes·in·the·<code·class="inline">$ERL_TOP/erts/emulator/sys/win32</code>,
323 <code·class="inline">$ERL_TOP/erts/emulator/drivers/win32</code>·or·<code·class="inline">$ERL_TOP/erts/etc/win32</code>.</p></li><li><p>··Windows·specific·erlang·code·should·be·used·conditionally·and·the323 <code·class="inline">$ERL_TOP/erts/emulator/drivers/win32</code>·or·<code·class="inline">$ERL_TOP/erts/etc/win32</code>.</p></li><li><p>··Windows·specific·erlang·code·should·be·used·conditionally·and·the
324 host·OS·tested·in·<em>runtime</em>,·the·exactly·same·beam·files·should·be324 host·OS·tested·in·<em>runtime</em>,·the·exactly·same·beam·files·should·be
325 distributed·for·every·platform!·So·write·code·like:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">type</span><span·class="p"·data-group-id="8700250521-1">(</span><span·class="p"·data-group-id="8700250521-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">325 distributed·for·every·platform!·So·write·code·like:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">type</span><span·class="p"·data-group-id="1374244846-1">(</span><span·class="p"·data-group-id="1374244846-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
326 ····</span><span·class="p"·data-group-id="8700250521-2">{</span><span·class="ss">win32</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="8700250521-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">326 ····</span><span·class="p"·data-group-id="1374244846-2">{</span><span·class="ss">win32</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="1374244846-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
327 ········</span><span·class="nf">do_windows_specific</span><span·class="p"·data-group-id="8700250521-3">(</span><span·class="p"·data-group-id="8700250521-3">)</span><span·class="p">;</span><span·class="w">327 ········</span><span·class="nf">do_windows_specific</span><span·class="p"·data-group-id="1374244846-3">(</span><span·class="p"·data-group-id="1374244846-3">)</span><span·class="p">;</span><span·class="w">
328 ····</span><span·class="n">Other</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">328 ····</span><span·class="n">Other</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
329 ········</span><span·class="nf">do_fallback_or_exit</span><span·class="p"·data-group-id="8700250521-4">(</span><span·class="p"·data-group-id="8700250521-4">)</span><span·class="w">329 ········</span><span·class="nf">do_fallback_or_exit</span><span·class="p"·data-group-id="1374244846-4">(</span><span·class="p"·data-group-id="1374244846-4">)</span><span·class="w">
330 </span><span·class="k">end</span><span·class="p">,</span></code></pre></li></ul><p>That's·basically·all·you·need·to·get·going.</p><h2·id="frequently-asked-questions"·class="section-heading">330 </span><span·class="k">end</span><span·class="p">,</span></code></pre></li></ul><p>That's·basically·all·you·need·to·get·going.</p><h2·id="frequently-asked-questions"·class="section-heading">
331 ··<a·href="#frequently-asked-questions"·class="hover-link">331 ··<a·href="#frequently-asked-questions"·class="hover-link">
332 ····<i·class="ri-link-m"·aria-hidden="true"></i>332 ····<i·class="ri-link-m"·aria-hidden="true"></i>
333 ··</a>333 ··</a>
334 ··<span·class="text">Frequently·Asked·Questions</span>334 ··<span·class="text">Frequently·Asked·Questions</span>
335 </h2>335 </h2>
336 <ul><li><p>··Q:·So,·now·I·can·build·Erlang·using·GCC·on·Windows?</p><p>A:·No,·unfortunately·not.·You'll·need·Microsoft's·Visual·C++336 <ul><li><p>··Q:·So,·now·I·can·build·Erlang·using·GCC·on·Windows?</p><p>A:·No,·unfortunately·not.·You'll·need·Microsoft's·Visual·C++
Offset 431, 15 lines modifiedOffset 431, 15 lines modified
431 ······<p·class="built-using">431 ······<p·class="built-using">
432 ········Built·using432 ········Built·using
433 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the433 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
434 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>434 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
435 ······</p>435 ······</p>
436 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>436 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
437 ····</footer>437 ····</footer>
438 ··</div>438 ··</div>
439 </main>439 </main>
440 </div>440 </div>
441 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>441 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
442 <script>442 <script>
443 ··document.addEventListener("DOMContentLoaded",·function·()·{443 ··document.addEventListener("DOMContentLoaded",·function·()·{
812 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/doc/system/install.html
    
Offset 658, 15 lines modifiedOffset 658, 15 lines modified
658 ······<p·class="built-using">658 ······<p·class="built-using">
659 ········Built·using659 ········Built·using
660 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the660 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
661 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>661 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
662 ······</p>662 ······</p>
663 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>663 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
664 ····</footer>664 ····</footer>
665 ··</div>665 ··</div>
666 </main>666 </main>
667 </div>667 </div>
668 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>668 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
669 <script>669 <script>
670 ··document.addEventListener("DOMContentLoaded",·function·()·{670 ··document.addEventListener("DOMContentLoaded",·function·()·{
666 B
html2text {}
Max HTML report size reached
1.7 KB
./usr/share/doc/erlang-doc/html/doc/system/installation_guide.html
    
Offset 171, 15 lines modifiedOffset 171, 15 lines modified
171 ······<p·class="built-using">171 ······<p·class="built-using">
172 ········Built·using172 ········Built·using
173 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the173 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
174 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>174 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
175 ······</p>175 ······</p>
176 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>176 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
177 ····</footer>177 ····</footer>
178 ··</div>178 ··</div>
179 </main>179 </main>
180 </div>180 </div>
181 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>181 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
182 <script>182 <script>
183 ··document.addEventListener("DOMContentLoaded",·function·()·{183 ··document.addEventListener("DOMContentLoaded",·function·()·{
910 B
html2text {}
Max HTML report size reached
78.2 KB
./usr/share/doc/erlang-doc/html/doc/system/list_comprehensions.html
    
Offset 117, 33 lines modifiedOffset 117, 33 lines modified
  
117 <h2·id="simple-examples"·class="section-heading">117 <h2·id="simple-examples"·class="section-heading">
118 ··<a·href="#simple-examples"·class="hover-link">118 ··<a·href="#simple-examples"·class="hover-link">
119 ····<i·class="ri-link-m"·aria-hidden="true"></i>119 ····<i·class="ri-link-m"·aria-hidden="true"></i>
120 ··</a>120 ··</a>
121 ··<span·class="text">Simple·Examples</span>121 ··<span·class="text">Simple·Examples</span>
122 </h2>122 </h2>
123 <p>This·section·starts·with·a·simple·example,·showing·a·generator·and·a·filter:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="0128222772-1">[</span><span·class="n">X</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="012822[·...·truncated·by·diffoscope;·len:·650,·SHA:·2b25d7cbca8fbba37715604f64b24adb8997e2ff5ed220a7ffe012fe422ac3b7·...·]-1">]</span><span·class="p">.</span><span·class="w">123 <p>This·section·starts·with·a·simple·example,·showing·a·generator·and·a·filter:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="4377074224-1">[</span><span·class="n">X</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="437707[·...·truncated·by·diffoscope;·len:·650,·SHA:·7a9813c023fa54e62af644557425354c8cd8b4526d74d66daf2f65d23ae046cf·...·]-1">]</span><span·class="p">.</span><span·class="w">
124 </span><span·class="p"·data-group-id="0128222772-3">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">6</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·5cebc8cf27b9c4fdb9ebcfb8e8b1ba71d15388bcc01e0a6c55c6c3ce526c9560·...·]-3">]</span></code></pre><p>This·is·read·as·follows:·The·list·of·X·such·that·X·is·taken·from·the·list124 </span><span·class="p"·data-group-id="4377074224-3">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">6</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·384e903e63f2289ef08984f8fcf85b769e0c4272e8c91ccf8713739a2043c268·...·]-3">]</span></code></pre><p>This·is·read·as·follows:·The·list·of·X·such·that·X·is·taken·from·the·list
125 <code·class="inline">[1,2,a,...]</code>·and·X·is·greater·than·3.</p><p>The·notation·<code·class="inline">X·&lt;-·[1,2,a,...]</code>·is·a·generator·and·the·expression·<code·class="inline">X·&gt;·3</code>·is·a125 <code·class="inline">[1,2,a,...]</code>·and·X·is·greater·than·3.</p><p>The·notation·<code·class="inline">X·&lt;-·[1,2,a,...]</code>·is·a·generator·and·the·expression·<code·class="inline">X·&gt;·3</code>·is·a
126 filter.</p><p>An·additional·filter,·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_integer/1"><code·class="inline">is_integer(X)</code></a>,·can·be·added·to126 filter.</p><p>An·additional·filter,·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_integer/1"><code·class="inline">is_integer(X)</code></a>,·can·be·added·to
127 restrict·the·result·to·integers:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="5471070468-1">[</span><span·class="n">X</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="5471070[·...·truncated·by·diffoscope;·len:·861,·SHA:·d544e94a8ca57ccfcf1807a2b79902a2acf7b50c675ec7e4f8be00b43836ccbb·...·]-1">]</span><span·class="p">.</span><span·class="w">127 restrict·the·result·to·integers:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="5216905264-1">[</span><span·class="n">X</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="5216905[·...·truncated·by·diffoscope;·len:·861,·SHA:·193d2ed8621ff2302ef9607318a48112b03cbade6bc553b521afb67c7aa4db8e·...·]-1">]</span><span·class="p">.</span><span·class="w">
128 </span><span·class="p"·data-group-id="5471070468-4">[</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5471070468-4">]</span></code></pre><p>Generators·can·be·combined.·For·example,·the·Cartesian·product·of·two·lists·can128 </span><span·class="p"·data-group-id="5216905264-4">[</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5216905264-4">]</span></code></pre><p>Generators·can·be·combined.·For·example,·the·Cartesian·product·of·two·lists·can
129 be·written·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="3175424231-1">[</span><span·class="p"·data-group-id="3175424231-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="3175424231-2">}</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·739,·SHA:·6740d8ca8e1cee67f1d3b26873afe224181c4c4115ea56bb626bdbe9cb54bf06·...·]-1">]</span><span·class="p">.</span><span·class="w">129 be·written·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="6753655715-1">[</span><span·class="p"·data-group-id="6753655715-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="6753655715-2">}</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·739,·SHA:·c4e7bb2882f667cd6e64a25a022cb796cfbd80c35744ac88668f43eb8bf358b1·...·]-1">]</span><span·class="p">.</span><span·class="w">
130 </span><span·class="p"·data-group-id="3175424231-5">[</span><span·class="p"·data-group-id="3175424231-6">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="3175424231-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·1011,·SHA:·0dd583dcbc974a1992b0bcbb83c9e2696ee6ff2da4c53c3e5d4fe85bc6a1f739·...·]-5">]</span></code></pre><h2·id="quick-sort"·class="section-heading">130 </span><span·class="p"·data-group-id="6753655715-5">[</span><span·class="p"·data-group-id="6753655715-6">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="6753655715-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·1011,·SHA:·73fe87990d4d6a44abd24650eeac635ba348fe254adf246567ccecf7efaef9c4·...·]-5">]</span></code></pre><h2·id="quick-sort"·class="section-heading">
131 ··<a·href="#quick-sort"·class="hover-link">131 ··<a·href="#quick-sort"·class="hover-link">
132 ····<i·class="ri-link-m"·aria-hidden="true"></i>132 ····<i·class="ri-link-m"·aria-hidden="true"></i>
133 ··</a>133 ··</a>
134 ··<span·class="text">Quick·Sort</span>134 ··<span·class="text">Quick·Sort</span>
135 </h2>135 </h2>
136 <p>The·well-known·quick·sort·routine·can·be·written·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">sort</span><span·class="p"·data-group-id="1409947738-1">(</span><span·class="p"·data-group-id="1409947738-2">[</span><span·class="p"·data-group-id="1409947738-2">]</span><span·class="p"·data-group-id="1409947738-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·bb7cb9ce0eacecd21cfc5be7de287871a361fd78c00d7acab26481d123180134·...·]-3">]</span><span·class="p">;</span><span·class="w">136 <p>The·well-known·quick·sort·routine·can·be·written·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">sort</span><span·class="p"·data-group-id="5604679191-1">(</span><span·class="p"·data-group-id="5604679191-2">[</span><span·class="p"·data-group-id="5604679191-2">]</span><span·class="p"·data-group-id="5604679191-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·1149566565d1ff06904d9044c61eb0cfbbfb13905b958b91031c1fa823055e7f·...·]-3">]</span><span·class="p">;</span><span·class="w">
137 </span><span·class="nf">sort</span><span·class="p"·data-group-id="1409947738-4">(</span><span·class="p"·data-group-id="1409947738-5">[</span><span·class="p">_</span><span·class="p"·data-group-id="1409947738-5">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·61ae460dcb612864807952d7255a840c6dbb7486aee9e8a17ce6e780015e230e·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">L</span><span·class="p">;</span><span·class="w">137 </span><span·class="nf">sort</span><span·class="p"·data-group-id="5604679191-4">(</span><span·class="p"·data-group-id="5604679191-5">[</span><span·class="p">_</span><span·class="p"·data-group-id="5604679191-5">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·0e43a70b068413e4b7df6e264bd91844f86cccd450ff28d8e6edab66e6bf0ae1·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">L</span><span·class="p">;</span><span·class="w">
138 </span><span·class="nf">sort</span><span·class="p"·data-group-id="1409947738-6">(</span><span·class="p"·data-group-id="1409947738-7">[</span><span·class="n">Pivot</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="1409947738-7">]</span><span·class="p"·data-group-id="1409947738-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">138 </span><span·class="nf">sort</span><span·class="p"·data-group-id="5604679191-6">(</span><span·class="p"·data-group-id="5604679191-7">[</span><span·class="n">Pivot</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="5604679191-7">]</span><span·class="p"·data-group-id="5604679191-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
139 ····</span><span·class="nf">sort</span><span·class="p"·data-group-id="1409947738-8">(</span><span·class="p"·data-group-id="1409947738-9">[</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·333,·SHA:·479c0a2a1fb71952990b287b9493d8745e923de3e3ad77405a8d3538ff43ecb0·...·]-8">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">139 ····</span><span·class="nf">sort</span><span·class="p"·data-group-id="5604679191-8">(</span><span·class="p"·data-group-id="5604679191-9">[</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·333,·SHA:·7d08027f40c1290e58ff2d9862da10dd2029d442d2d6cd463fd6fd4c91035018·...·]-8">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">
140 ····</span><span·class="p"·data-group-id="1409947738-10">[</span><span·class="n">Pivot</span><span·class="p"·data-group-id="1409947738-10">]</span><span·class="w">·</span><span·class="o">++</span><span·class="w">140 ····</span><span·class="p"·data-group-id="5604679191-10">[</span><span·class="n">Pivot</span><span·class="p"·data-group-id="5604679191-10">]</span><span·class="w">·</span><span·class="o">++</span><span·class="w">
141 ····</span><span·class="nf">sort</span><span·class="p"·data-group-id="1409947738-11">(</span><span·class="p"·data-group-id="1409947738-12">[</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·337,·SHA:·1dc548054b5f7c5109216e9aa4677c916c218440b95c2d3dae2859d1dfe71c17·...·]-11">)</span><span·class="p">.</span></code></pre><p>The·expression·<code·class="inline">[X·||·X·&lt;-·T,·X·&lt;·Pivot]</code>·is·the·list·of·all·elements·in·<code·class="inline">T</code>141 ····</span><span·class="nf">sort</span><span·class="p"·data-group-id="5604679191-11">(</span><span·class="p"·data-group-id="5604679191-12">[</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·337,·SHA:·3335f0fc0e5ba611a141319a498bf53e66f6027136fa357f91cc1be91bec9154·...·]-11">)</span><span·class="p">.</span></code></pre><p>The·expression·<code·class="inline">[X·||·X·&lt;-·T,·X·&lt;·Pivot]</code>·is·the·list·of·all·elements·in·<code·class="inline">T</code>
142 that·are·less·than·<code·class="inline">Pivot</code>.</p><p><code·class="inline">[X·||·X·&lt;-·T,·X·&gt;=·Pivot]</code>·is·the·list·of·all·elements·in·<code·class="inline">T</code>·that·are·greater142 that·are·less·than·<code·class="inline">Pivot</code>.</p><p><code·class="inline">[X·||·X·&lt;-·T,·X·&gt;=·Pivot]</code>·is·the·list·of·all·elements·in·<code·class="inline">T</code>·that·are·greater
143 than·or·equal·to·<code·class="inline">Pivot</code>.</p><p>With·the·algorithm·above,·a·list·is·sorted·as·follows:</p><ul><li>A·list·with·zero·or·one·element·is·trivially·sorted.</li><li>For·lists·with·more·than·one·element:<ol><li>The·first·element·in·the·list·is·isolated·as·the·pivot·element.</li><li>The·remaining·list·is·partitioned·into·two·sublists,·such·that:</li></ol><ul><li>The·first·sublist·contains·all·elements·that·are·smaller·than·the·pivot143 than·or·equal·to·<code·class="inline">Pivot</code>.</p><p>With·the·algorithm·above,·a·list·is·sorted·as·follows:</p><ul><li>A·list·with·zero·or·one·element·is·trivially·sorted.</li><li>For·lists·with·more·than·one·element:<ol><li>The·first·element·in·the·list·is·isolated·as·the·pivot·element.</li><li>The·remaining·list·is·partitioned·into·two·sublists,·such·that:</li></ol><ul><li>The·first·sublist·contains·all·elements·that·are·smaller·than·the·pivot
144 element.</li><li>The·second·sublist·contains·all·elements·that·are·greater·than·or·equal·to144 element.</li><li>The·second·sublist·contains·all·elements·that·are·greater·than·or·equal·to
145 the·pivot·element.</li></ul><ol><li>The·sublists·are·recursively·sorted·by·the·same·algorithm·and·the·results145 the·pivot·element.</li></ul><ol><li>The·sublists·are·recursively·sorted·by·the·same·algorithm·and·the·results
146 are·combined,·resulting·in·a·list·consisting·of:</li></ol><ul><li>All·elements·from·the·first·sublist,·that·is·all·elements·smaller·than·the146 are·combined,·resulting·in·a·list·consisting·of:</li></ol><ul><li>All·elements·from·the·first·sublist,·that·is·all·elements·smaller·than·the
147 pivot·element,·in·sorted·order.</li><li>The·pivot·element.</li><li>All·elements·from·the·second·sublist,·that·is·all·elements·greater·than·or147 pivot·element,·in·sorted·order.</li><li>The·pivot·element.</li><li>All·elements·from·the·second·sublist,·that·is·all·elements·greater·than·or
148 equal·to·the·pivot·element,·in·sorted·order.</li></ul></li></ul><blockquote><h4·class="info">Note</h4><p>While·the·sorting·algorithm·as·shown·above·serves·as·a·nice·example·to148 equal·to·the·pivot·element,·in·sorted·order.</li></ul></li></ul><blockquote><h4·class="info">Note</h4><p>While·the·sorting·algorithm·as·shown·above·serves·as·a·nice·example·to
Offset 151, 93 lines modifiedOffset 151, 93 lines modified
151 <a·href="../../lib/stdlib-6.0.1/doc/html/lists.html"><code·class="inline">lists</code></a>·module·contains·sorting·functions·that·are·implemented·in·a·more151 <a·href="../../lib/stdlib-6.0.1/doc/html/lists.html"><code·class="inline">lists</code></a>·module·contains·sorting·functions·that·are·implemented·in·a·more
152 efficient·way.</p></blockquote><h2·id="permutations"·class="section-heading">152 efficient·way.</p></blockquote><h2·id="permutations"·class="section-heading">
153 ··<a·href="#permutations"·class="hover-link">153 ··<a·href="#permutations"·class="hover-link">
154 ····<i·class="ri-link-m"·aria-hidden="true"></i>154 ····<i·class="ri-link-m"·aria-hidden="true"></i>
155 ··</a>155 ··</a>
156 ··<span·class="text">Permutations</span>156 ··<span·class="text">Permutations</span>
157 </h2>157 </h2>
158 <p>The·following·example·generates·all·permutations·of·the·elements·in·a·list:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">perms</span><span·class="p"·data-group-id="9500261392-1">(</span><span·class="p"·data-group-id="9500261392-2">[</span><span·class="p"·data-group-id="9500261392-2">]</span><span·class="p"·data-group-id="9500261392-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·201,·SHA:·020e4256c63121a9c32a4055041488f156918aff5ffacd1baf9dc91fe9ad88c1·...·]-3">]</span><span·class="p">;</span><span·class="w">158 <p>The·following·example·generates·all·permutations·of·the·elements·in·a·list:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">perms</span><span·class="p"·data-group-id="2863130991-1">(</span><span·class="p"·data-group-id="2863130991-2">[</span><span·class="p"·data-group-id="2863130991-2">]</span><span·class="p"·data-group-id="2863130991-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·201,·SHA:·66a32af5d7574ff4c2c0004d46dda2c8a3dfae89bc26d2139d01e9a81c700e92·...·]-3">]</span><span·class="p">;</span><span·class="w">
159 </span><span·class="nf">perms</span><span·class="p"·data-group-id="9500261392-5">(</span><span·class="n">L</span><span·class="p"·data-group-id="9500261392-5">)</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9500261392-6">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·851,·SHA:·6f1f59b15d68bccb31781f7e3b934f42ce82e1e2e43cace954421464a3b456e3·...·]-6">]</span><span·class="p">.</span></code></pre><p>This·takes·<code·class="inline">H</code>·from·<code·class="inline">L</code>·in·all·possible·ways.·The·result·is·the·set·of·all·lists159 </span><span·class="nf">perms</span><span·class="p"·data-group-id="2863130991-5">(</span><span·class="n">L</span><span·class="p"·data-group-id="2863130991-5">)</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2863130991-6">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·851,·SHA:·9df1c49bff2cb26ca431f9cc4a986374d7d21f3a56024e82a4c95497bdafb58b·...·]-6">]</span><span·class="p">.</span></code></pre><p>This·takes·<code·class="inline">H</code>·from·<code·class="inline">L</code>·in·all·possible·ways.·The·result·is·the·set·of·all·lists
160 <code·class="inline">[H|T]</code>,·where·<code·class="inline">T</code>·is·the·set·of·all·possible·permutations·of·<code·class="inline">L</code>,·with·<code·class="inline">H</code>160 <code·class="inline">[H|T]</code>,·where·<code·class="inline">T</code>·is·the·set·of·all·possible·permutations·of·<code·class="inline">L</code>,·with·<code·class="inline">H</code>
161 removed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">perms</span><span·class="p"·data-group-id="5393954672-1">(</span><span·class="p"·data-group-id="5393954672-2">[</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">u</span><span·class="p">,</span><span·class="ss">g</span><span·class="p"·data-group-id="5393954672-2">]</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·7f7ab495441b470410ec8bbab6b4d2a786007cbf3c936d65b7309d2bd55fdae4·...·]-1">)</span><span·class="p">.</span><span·class="w">161 removed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">perms</span><span·class="p"·data-group-id="3036884298-1">(</span><span·class="p"·data-group-id="3036884298-2">[</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">u</span><span·class="p">,</span><span·class="ss">g</span><span·class="p"·data-group-id="3036884298-2">]</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·752d0f1f2d9608b7b4a2661e196af6b0e229b4eb6cb7e6836ede78cfb9a6b640·...·]-1">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p"·data-group-id="5393954672-3">[</span><span·class="p"·data-group-id="5393954672-4">[</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">u</span><span·class="p">,</span><span·class="ss">g</span><span·class="p"·data-group-id="5393954672-4">]</span><span[·...·truncated·by·diffoscope;·len:·1301,·SHA:·fc975bbcb33456d0d0f92f6910b29a7fb35bb6b8abe4cbbacc09aabae6bca91d·...·]-3">]</span></code></pre><h2·id="pythagorean-triplets"·class="section-heading">162 </span><span·class="p"·data-group-id="3036884298-3">[</span><span·class="p"·data-group-id="3036884298-4">[</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">u</span><span·class="p">,</span><span·class="ss">g</span><span·class="p"·data-group-id="3036884298-4">]</span><span[·...·truncated·by·diffoscope;·len:·1301,·SHA:·b649ed0c01757168609cafb8dd714dc5d1568b54dfff678d339130ce0b77f848·...·]-3">]</span></code></pre><h2·id="pythagorean-triplets"·class="section-heading">
163 ··<a·href="#pythagorean-triplets"·class="hover-link">163 ··<a·href="#pythagorean-triplets"·class="hover-link">
164 ····<i·class="ri-link-m"·aria-hidden="true"></i>164 ····<i·class="ri-link-m"·aria-hidden="true"></i>
165 ··</a>165 ··</a>
166 ··<span·class="text">Pythagorean·Triplets</span>166 ··<span·class="text">Pythagorean·Triplets</span>
167 </h2>167 </h2>
168 <p>Pythagorean·triplets·are·sets·of·integers·<code·class="inline">{A,B,C}</code>·such·that168 <p>Pythagorean·triplets·are·sets·of·integers·<code·class="inline">{A,B,C}</code>·such·that
169 <code·class="inline">A**2·+·B**2·=·C**2</code>.</p><p>The·function·<code·class="inline">pyth(N)</code>·generates·a·list·of·all·integers·<code·class="inline">{A,B,C}</code>·such·that169 <code·class="inline">A**2·+·B**2·=·C**2</code>.</p><p>The·function·<code·class="inline">pyth(N)</code>·generates·a·list·of·all·integers·<code·class="inline">{A,B,C}</code>·such·that
170 <code·class="inline">A**2·+·B**2·=·C**2</code>·and·where·the·sum·of·the·sides·is·equal·to,·or·less·than,170 <code·class="inline">A**2·+·B**2·=·C**2</code>·and·where·the·sum·of·the·sides·is·equal·to,·or·less·than,
171 <code·class="inline">N</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">pyth</span><span·class="p"·data-group-id="4181743285-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="4181743285-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">171 <code·class="inline">N</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">pyth</span><span·class="p"·data-group-id="2990298212-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="2990298212-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ····</span><span·class="p"·data-group-id="4181743285-2">[</span><span·class="w">·</span><span·class="p"·data-group-id="4181743285-3">{</span><span·class="n">A</span><span·class="p">,</span><span·class="n">B</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="418174[·...·truncated·by·diffoscope;·len:·4,·SHA:·aff4b5855447e95d8af83a24048c3f3e2320be9f5dde915ba81015e18802e0b2·...·]-3">}</span><span·class="w">·</span><span·class="p">||</span><span·class="w">172 ····</span><span·class="p"·data-group-id="2990298212-2">[</span><span·class="w">·</span><span·class="p"·data-group-id="2990298212-3">{</span><span·class="n">A</span><span·class="p">,</span><span·class="n">B</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="299029[·...·truncated·by·diffoscope;·len:·4,·SHA:·5f65bd0309b05d2a595c7067618d833c4bc7a3ef720f715857c413512de1b0c2·...·]-3">}</span><span·class="w">·</span><span·class="p">||</span><span·class="w">
173 ········</span><span·class="n">A</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="4181743285-4">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="4181743285-4">)</span><span·class="p">,</span><span·class="w">173 ········</span><span·class="n">A</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="2990298212-4">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="2990298212-4">)</span><span·class="p">,</span><span·class="w">
174 ········</span><span·class="n">B</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="4181743285-5">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="4181743285-5">)</span><span·class="p">,</span><span·class="w">174 ········</span><span·class="n">B</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="2990298212-5">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="2990298212-5">)</span><span·class="p">,</span><span·class="w">
175 ········</span><span·class="n">C</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="4181743285-6">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="4181743285-6">)</span><span·class="p">,</span><span·class="w">175 ········</span><span·class="n">C</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="2990298212-6">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="2990298212-6">)</span><span·class="p">,</span><span·class="w">
176 ········</span><span·class="n">A</span><span·class="o">+</span><span·class="n">B</span><span·class="o">+</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=&lt;</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">176 ········</span><span·class="n">A</span><span·class="o">+</span><span·class="n">B</span><span·class="o">+</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=&lt;</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">
177 ········</span><span·class="n">A</span><span·class="o">*</span><span·class="n">A</span><span·class="o">+</span><span·class="n">B</span><span·class="o">*</span><span·class="n">B</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">C</span><span·class="o">*</span><span·class="n">C</span><span·class="w">177 ········</span><span·class="n">A</span><span·class="o">*</span><span·class="n">A</span><span·class="o">+</span><span·class="n">B</span><span·class="o">*</span><span·class="n">B</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">C</span><span·class="o">*</span><span·class="n">C</span><span·class="w">
178 ····</span><span·class="p"·data-group-id="4181743285-2">]</span><span·class="p">.</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="9686867687-1">(</span><span·class="mi">3</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·42b0a5c808b4a148ff9fc51077c10813b4fbc033f6bda759dd9f6099c1ed2121·...·]-1">)</span><span·class="p">.</span><span·class="w">178 ····</span><span·class="p"·data-group-id="2990298212-2">]</span><span·class="p">.</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="1290540400-1">(</span><span·class="mi">3</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·99f89cf251dee0acb616b56c111b3a943ca59d4c030fc26b396b99b5c634a97e·...·]-1">)</span><span·class="p">.</span><span·class="w">
179 </span><span·class="p"·data-group-id="9686867687-2">[</span><span·class="p"·data-group-id="9686867687-2">]</span><span·class="p">.</span><span·class="gp·unselectable">179 </span><span·class="p"·data-group-id="1290540400-2">[</span><span·class="p"·data-group-id="1290540400-2">]</span><span·class="p">.</span><span·class="gp·unselectable">
180 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="9686867687-3">(</span><span·class="mi">11</span><span·class="p"·data-group-id="9686867687-3">)</span><span·class="p">.</span><span·class="w">180 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="1290540400-3">(</span><span·class="mi">11</span><span·class="p"·data-group-id="1290540400-3">)</span><span·class="p">.</span><span·class="w">
181 </span><span·class="p"·data-group-id="9686867687-4">[</span><span·class="p"·data-group-id="9686867687-4">]</span><span·class="p">.</span><span·class="gp·unselectable">181 </span><span·class="p"·data-group-id="1290540400-4">[</span><span·class="p"·data-group-id="1290540400-4">]</span><span·class="p">.</span><span·class="gp·unselectable">
182 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="9686867687-5">(</span><span·class="mi">12</span><span·class="p"·data-group-id="9686867687-5">)</span><span·class="p">.</span><span·class="w">182 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="1290540400-5">(</span><span·class="mi">12</span><span·class="p"·data-group-id="1290540400-5">)</span><span·class="p">.</span><span·class="w">
183 </span><span·class="p"·data-group-id="9686867687-6">[</span><span·class="p"·data-group-id="9686867687-7">{</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="9686867687-7">}</span><span[·...·truncated·by·diffoscope;·len:·289,·SHA:·1995c29e66268209da18b1982ccb83fe07b9d6b08896264b3981b8c32b96c1b2·...·]-6">]</span><span·class="gp·unselectable">183 </span><span·class="p"·data-group-id="1290540400-6">[</span><span·class="p"·data-group-id="1290540400-7">{</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="1290540400-7">}</span><span[·...·truncated·by·diffoscope;·len:·289,·SHA:·572722793bbebfb3676beb59cb499171a80bdedf3ca4883b556e79adaf894727·...·]-6">]</span><span·class="gp·unselectable">
184 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="9686867687-9">(</span><span·class="mi">50</span><span·class="p"·data-group-id="9686867687-9">)</span><span·class="p">.</span><span·class="w">184 &gt;·</span><span·class="nf">pyth</span><span·class="p"·data-group-id="1290540400-9">(</span><span·class="mi">50</span><span·class="p"·data-group-id="1290540400-9">)</span><span·class="p">.</span><span·class="w">
185 </span><span·class="p"·data-group-id="9686867687-10">[</span><span·class="p"·data-group-id="9686867687-11">{</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="9686867687-11">}</span><span·class="p">,</span><span·class="w">185 </span><span·class="p"·data-group-id="1290540400-10">[</span><span·class="p"·data-group-id="1290540400-11">{</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="1290540400-11">}</span><span·class="p">,</span><span·class="w">
186 ·</span><span·class="p"·data-group-id="9686867687-12">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="9686867687-12">}</span><span·class="p">,</span><span·class="w">186 ·</span><span·class="p"·data-group-id="1290540400-12">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="1290540400-12">}</span><span·class="p">,</span><span·class="w">
187 ·</span><span·class="p"·data-group-id="9686867687-13">{</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">13</span><span·class="p"·data-group-id="9686867687-13">}</span><span·class="p">,</span><span·class="w">187 ·</span><span·class="p"·data-group-id="1290540400-13">{</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">13</span><span·class="p"·data-group-id="1290540400-13">}</span><span·class="p">,</span><span·class="w">
188 ·</span><span·class="p"·data-group-id="9686867687-14">{</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="9686867687-14">}</span><span·class="p">,</span><span·class="w">188 ·</span><span·class="p"·data-group-id="1290540400-14">{</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="1290540400-14">}</span><span·class="p">,</span><span·class="w">
189 ·</span><span·class="p"·data-group-id="9686867687-15">{</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="9686867687-15">}</span><span·class="p">,</span><span·class="w">189 ·</span><span·class="p"·data-group-id="1290540400-15">{</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="1290540400-15">}</span><span·class="p">,</span><span·class="w">
190 ·</span><span·class="p"·data-group-id="9686867687-16">{</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">17</span><span·class="p"·data-group-id="9686867687-16">}</span><span·class="p">,</span><span·class="w">190 ·</span><span·class="p"·data-group-id="1290540400-16">{</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">17</span><span·class="p"·data-group-id="1290540400-16">}</span><span·class="p">,</span><span·class="w">
191 ·</span><span·class="p"·data-group-id="9686867687-17">{</span><span·class="mi">9</span><span·class="p">,</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">15</span><span·class="p"·data-group-id="9686867687-17">}</span><span·class="p">,</span><span·class="w">191 ·</span><span·class="p"·data-group-id="1290540400-17">{</span><span·class="mi">9</span><span·class="p">,</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">15</span><span·class="p"·data-group-id="1290540400-17">}</span><span·class="p">,</span><span·class="w">
192 ·</span><span·class="p"·data-group-id="9686867687-18">{</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">13</span><span·class="p"·data-group-id="9686867687-18">}</span><span·class="p">,</span><span·class="w">192 ·</span><span·class="p"·data-group-id="1290540400-18">{</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">13</span><span·class="p"·data-group-id="1290540400-18">}</span><span·class="p">,</span><span·class="w">
193 ·</span><span·class="p"·data-group-id="9686867687-19">{</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="mi">15</span><span·class="p"·data-group-id="9686867687-19">}</span><span·class="p">,</span><span·class="w">193 ·</span><span·class="p"·data-group-id="1290540400-19">{</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="mi">15</span><span·class="p"·data-group-id="1290540400-19">}</span><span·class="p">,</span><span·class="w">
194 ·</span><span·class="p"·data-group-id="9686867687-20">{</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">20</span><span·class="p"·data-group-id="9686867687-20">}</span><span·class="p">,</span><span·class="w">194 ·</span><span·class="p"·data-group-id="1290540400-20">{</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">20</span><span·class="p"·data-group-id="1290540400-20">}</span><span·class="p">,</span><span·class="w">
195 ·</span><span·class="p"·data-group-id="9686867687-21">{</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">17</span><span·class="p"·data-group-id="9686867687-21">}</span><span·class="p">,</span><span·class="w">195 ·</span><span·class="p"·data-group-id="1290540400-21">{</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">17</span><span·class="p"·data-group-id="1290540400-21">}</span><span·class="p">,</span><span·class="w">
196 ·</span><span·class="p"·data-group-id="9686867687-22">{</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">20</span><span·class="p"·data-group-id="9686867687-22">}</span><span·class="p"·data-group-id="9686867687-10">]</span[·...·truncated·by·diffoscope;·len:·281,·SHA:·594ab6210be42467b6c89d82e9fc690312cfb32a71884163347bfb34b0014230·...·]6-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">196 ·</span><span·class="p"·data-group-id="1290540400-22">{</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">12</span><span·class="p">,</span><span·class="mi">20</span><span·class="p"·data-group-id="1290540400-22">}</span><span·class="p"·data-group-id="1290540400-10">]</span[·...·truncated·by·diffoscope;·len:·281,·SHA:·36aacc91d1e22e33b2a0a02c6ea678677c942aa76c83f6cf4b039eb1336ffca8·...·]6-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
197 ···</span><span·class="p"·data-group-id="9853140316-2">[</span><span·class="p"·data-group-id="9853140316-3">{</span><span·class="n">A</span><span·class="p">,</span><span·class="n">B</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="9853140316-3">}</span><span·class="w">·</span><span·class="p">||</span><span·class="w">197 ···</span><span·class="p"·data-group-id="6122501296-2">[</span><span·class="p"·data-group-id="6122501296-3">{</span><span·class="n">A</span><span·class="p">,</span><span·class="n">B</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="6122501296-3">}</span><span·class="w">·</span><span·class="p">||</span><span·class="w">
198 ·······</span><span·class="n">A</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="9853140316-4">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">2</span><span·class="p"·data-group-id="9853140316-4">)</span><span·class="p">,</span><span·class="w">198 ·······</span><span·class="n">A</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="6122501296-4">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">2</span><span·class="p"·data-group-id="6122501296-4">)</span><span·class="p">,</span><span·class="w">
199 ·······</span><span·class="n">B</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="9853140316-5">(</span><span·class="n">A</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="9853140316-5">)</span><span·class="p">,</span><span·class="w">199 ·······</span><span·class="n">B</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="6122501296-5">(</span><span·class="n">A</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="6122501296-5">)</span><span·class="p">,</span><span·class="w">
200 ·······</span><span·class="n">C</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="9853140316-6">(</span><span·class="n">B</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="9853140316-6">)</span><span·class="p">,</span><span·class="w">200 ·······</span><span·class="n">C</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="6122501296-6">(</span><span·class="n">B</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="6122501296-6">)</span><span·class="p">,</span><span·class="w">
201 ·······</span><span·class="n">A</span><span·class="o">+</span><span·class="n">B</span><span·class="o">+</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=&lt;</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">201 ·······</span><span·class="n">A</span><span·class="o">+</span><span·class="n">B</span><span·class="o">+</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=&lt;</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">
202 ·······</span><span·class="n">A</span><span·class="o">*</span><span·class="n">A</span><span·class="o">+</span><span·class="n">B</span><span·class="o">*</span><span·class="n">B</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">C</span><span·class="o">*</span><span·class="n">C</span><span·class="w">·</span><span·class="p"·data-group-id="9853140316-2">]</span><span·class="p">.</span></code></pre><h2·id="simplifications-with-list-comprehensions"·class="section-heading">202 ·······</span><span·class="n">A</span><span·class="o">*</span><span·class="n">A</span><span·class="o">+</span><span·class="n">B</span><span·class="o">*</span><span·class="n">B</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">C</span><span·class="o">*</span><span·class="n">C</span><span·class="w">·</span><span·class="p"·data-group-id="6122501296-2">]</span><span·class="p">.</span></code></pre><h2·id="simplifications-with-list-comprehensions"·class="section-heading">
203 ··<a·href="#simplifications-with-list-comprehensions"·class="hover-link">203 ··<a·href="#simplifications-with-list-comprehensions"·class="hover-link">
204 ····<i·class="ri-link-m"·aria-hidden="true"></i>204 ····<i·class="ri-link-m"·aria-hidden="true"></i>
205 ··</a>205 ··</a>
206 ··<span·class="text">Simplifications·With·List·Comprehensions</span>206 ··<span·class="text">Simplifications·With·List·Comprehensions</span>
207 </h2>207 </h2>
208 <p>As·an·example,·list·comprehensions·can·be·used·to·simplify·some·of·the·functions208 <p>As·an·example,·list·comprehensions·can·be·used·to·simplify·some·of·the·functions
209 in·<code·class="inline">lists.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">append</span><span·class="p"·data-group-id="3152075005-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="3152075005-1">)</span><span·class="w">···</span><span·class="p">-&gt;</span><span·class="w">··</span><span·class="p"·data-group-id="3152075005-2">[</span><span·class="n">X</span><[·...·truncated·by·diffoscope;·len:·411,·SHA:·7a1989132430dbeed1d6e42d4b7d36925aa91729ceefa88745126dce60e2b1cc·...·]-2">]</span><span·class="p">.</span><span·class="w">209 in·<code·class="inline">lists.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">append</span><span·class="p"·data-group-id="5838532860-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="5838532860-1">)</span><span·class="w">···</span><span·class="p">-&gt;</span><span·class="w">··</span><span·class="p"·data-group-id="5838532860-2">[</span><span·class="n">X</span><[·...·truncated·by·diffoscope;·len:·411,·SHA:·571000c7d140c8a4716da16f0d553c6dd41a3b15157ff65e47d7b4eb3145ed1a·...·]-2">]</span><span·class="p">.</span><span·class="w">
210 </span><span·class="nf">map</span><span·class="p"·data-group-id="3152075005-3">(</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="3152075005-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·440,·SHA:·906232f7df7aec93ef73cade2e6ab8a3c7d957ec29f40d188ff653a92f570f75·...·]-4">]</span><span·class="p">.</span><span·class="w">210 </span><span·class="nf">map</span><span·class="p"·data-group-id="5838532860-3">(</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="5838532860-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·440,·SHA:·774b82bdf491611ff5c8d19ba9db3961ff18beae85a7f8eac4b9990adcff11aa·...·]-4">]</span><span·class="p">.</span><span·class="w">
211 </span><span·class="nf">filter</span><span·class="p"·data-group-id="3152075005-6">(</span><span·class="n">Pred</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="3152075005-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·514,·SHA:·776e4d601645d40af80e94f145a2cd3c3a8416652089297bfff677d7792d79a8·...·]-7">]</span><span·class="p">.</span></code></pre><h2·id="variable-bindings-in-list-comprehensions"·class="section-heading">211 </span><span·class="nf">filter</span><span·class="p"·data-group-id="5838532860-6">(</span><span·class="n">Pred</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="5838532860-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·514,·SHA:·75a4c62808c21f2ccf9b9129d2d6104cc0f28a6c216ffa40a9c13dc53c3d0f91·...·]-7">]</span><span·class="p">.</span></code></pre><h2·id="variable-bindings-in-list-comprehensions"·class="section-heading">
212 ··<a·href="#variable-bindings-in-list-comprehensions"·class="hover-link">212 ··<a·href="#variable-bindings-in-list-comprehensions"·class="hover-link">
213 ····<i·class="ri-link-m"·aria-hidden="true"></i>213 ····<i·class="ri-link-m"·aria-hidden="true"></i>
214 ··</a>214 ··</a>
215 ··<span·class="text">Variable·Bindings·in·List·Comprehensions</span>215 ··<span·class="text">Variable·Bindings·in·List·Comprehensions</span>
216 </h2>216 </h2>
217 <p>The·scope·rules·for·variables·that·occur·in·list·comprehensions·are·as·follows:</p><ul><li>All·variables·that·occur·in·a·generator·pattern·are·assumed·to·be·&quot;fresh&quot;217 <p>The·scope·rules·for·variables·that·occur·in·list·comprehensions·are·as·follows:</p><ul><li>All·variables·that·occur·in·a·generator·pattern·are·assumed·to·be·&quot;fresh&quot;
218 variables.</li><li>Any·variables·that·are·defined·before·the·list·comprehension,·and·that·are218 variables.</li><li>Any·variables·that·are·defined·before·the·list·comprehension,·and·that·are
219 used·in·filters,·have·the·values·they·had·before·the·list·comprehension.</li><li>Variables·cannot·be·exported·from·a·list·comprehension.</li></ul><p>As·an·example·of·these·rules,·suppose·you·want·to·write·the·function·<code·class="inline">select</code>,219 used·in·filters,·have·the·values·they·had·before·the·list·comprehension.</li><li>Variables·cannot·be·exported·from·a·list·comprehension.</li></ul><p>As·an·example·of·these·rules,·suppose·you·want·to·write·the·function·<code·class="inline">select</code>,
220 which·selects·certain·elements·from·a·list·of·tuples.·Suppose·you·write220 which·selects·certain·elements·from·a·list·of·tuples.·Suppose·you·write
221 <code·class="inline">select(X,·L)·-&gt;·[Y·||·{X,·Y}·&lt;-·L].</code>·with·the·intention·of·extracting·all221 <code·class="inline">select(X,·L)·-&gt;·[Y·||·{X,·Y}·&lt;-·L].</code>·with·the·intention·of·extracting·all
222 tuples·from·<code·class="inline">L</code>,·where·the·first·item·is·<code·class="inline">X</code>.</p><p>Compiling·this·gives·the·following·diagnostic:</p><pre><code·class="text">./FileName.erl:Line:·Warning:·variable·'X'·shadowed·in·generate</code></pre><p>This·diagnostic·warns·that·the·variable·<code·class="inline">X</code>·in·the·pattern·is·not·the·same·as222 tuples·from·<code·class="inline">L</code>,·where·the·first·item·is·<code·class="inline">X</code>.</p><p>Compiling·this·gives·the·following·diagnostic:</p><pre><code·class="text">./FileName.erl:Line:·Warning:·variable·'X'·shadowed·in·generate</code></pre><p>This·diagnostic·warns·that·the·variable·<code·class="inline">X</code>·in·the·pattern·is·not·the·same·as
223 the·variable·<code·class="inline">X</code>·that·occurs·in·the·function·head.</p><p>Evaluating·<code·class="inline">select</code>·gives·the·following·result:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">select</span><span·class="p"·data-group-id="1302113609-1">(</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="1302113609-2">[</span><span·class="p"·data-group-id="1302113609-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·754,·SHA:·85bbb2881319c608620a263dd0f09c1edf23fdaa69630baeffa52d9f1725b855·...·]-1">)</span><span·class="p">.</span><span·class="w">223 the·variable·<code·class="inline">X</code>·that·occurs·in·the·function·head.</p><p>Evaluating·<code·class="inline">select</code>·gives·the·following·result:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">select</span><span·class="p"·data-group-id="9737955246-1">(</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="9737955246-2">[</span><span·class="p"·data-group-id="9737955246-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·754,·SHA:·1bf1e6e3ac6977e7a5f81f47d1ae3f7985144f967ccbe54a6a7166475efb4631·...·]-1">)</span><span·class="p">.</span><span·class="w">
224 </span><span·class="p"·data-group-id="1302113609-7">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="1302113609-7">]</span></code></pre><p>This·is·not·the·wanted·result.·To·achieve·the·desired·effect,·<code·class="inline">select</code>·must·be224 </span><span·class="p"·data-group-id="9737955246-7">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="9737955246-7">]</span></code></pre><p>This·is·not·the·wanted·result.·To·achieve·the·desired·effect,·<code·class="inline">select</code>·must·be
225 written·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">select</span><span·class="p"·data-group-id="1728616631-1">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="1728616631-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">··</span><span·class="p"·data-group-id="1728616631-2">[</span><span·class="n">Y</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="p"·data-group-id="1728616631-3">{</span><span·class="n">X1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="1728616631-3">}</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="n">L</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">X1</span><span·class="p"·data-group-id="1728616631-2">]</span><span·class="p">.</span></code></pre><p>The·generator·now·contains·unbound·variables·and·the·test·has·been·moved·into 
226 the·filter.</p><p>This·now·works·as·expected:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">select</span><span·class="p"·data-group-id="7581485992-1">(</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="7581485992-2">[</span><span·class="p"·data-group-id="7581485992-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="7581485992-3">}</span><span·class="p">,</span><span·class="p"·data-group-id="7581485992-4">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="7581485992-4">}</span><span·class="p">,</span><span·class="p"·data-group-id="7581485992-5">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="7581485992-5">}</span><span·class="p">,</span><span·class="p"·data-group-id="7581485992-6">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="7581485992-6">}</span><span·class="p"·data-group-id="7581485992-2">]</span><span·class="p"·data-group-id="7581485992-1">)</span><span·class="p">.</span><span·class="w"> 
227 </span><span·class="p"·data-group-id="7581485992-7">[</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="7581485992-7">]</span></code></pre><p>Also·note·that·a·variable·in·a·generator·pattern·will·shadow·a·variable·with·the 
228 same·name·bound·in·a·previous·generator·pattern.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="0787610957-1">[</span><span·class="p"·data-group-id="0787610957-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p"·data-group-id="0787610957-2">}</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="0787610957-3">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="0787610957-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="o">=</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="0787610957-4">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="0787610957-4">]</span><span·class="p"·data-group-id="0787610957-1">]</span><span·class="p">.</span><span·class="w"> 
229 </span><span·class="p"·data-group-id="0787610957-5">[</span><span·class="p"·data-group-id="0787610957-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="0787610957-6">}</span><span·class="p">[·...·truncated·by·diffoscope;·len:·1775,·SHA:·e9a597b3016de6140b468e83d02d4ea4ceefa0177020ef211b19ea0f7993cff1·...·]225 written·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">select</span><span·class="p"·data-group-id="0722295114-1">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·[·...·truncated·by·diffoscope;·len:·917,·SHA:·71723face3a5a099933be857953363be09139f0d3f02a821a64d7537da0cb29e·...·]
 226 the·filter.</p><p>This·now·works·as·expected:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">select</span><span·class="p"·data-group-id="1655267619-1">(</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="1655267619-2">[</span><span·class="p"·data-group-id="1655267619-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="1655267619-3">}</span><span·class="p">,</span><span·class="p"·data-group-id="1655267619-4">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1655267619-4">}</span><span·class="p">,</span><span·class="p"·data-group-id="1655267619-5">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="1655267619-5">}</span><span·class="p">,</span><span·class="p"·data-group-id="1655267619-6">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="1655267619-6">}</span><span·class="p"·data-group-id="1655267619-2">]</span><span·class="p"·data-group-id="1655267619-1">)</span><span·class="p">.</span><span·class="w">
 227 </span><span·class="p"·data-group-id="1655267619-7">[</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="1655267619-7">]</span></code></pre><p>Also·note·that·a·variable·in·a·generator·pattern·will·shadow·a·variable·with·the
 228 same·name·bound·in·a·previous·generator·pattern.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="9887387908-1">[</span><span·class="p"·data-group-id="9887387908-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p"·data-group-id="9887387908-2">}</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="9887387908-3">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="9887387908-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="o">=</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="9887387908-4">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="9887387908-4">]</span><span·class="p"·data-group-id="9887387908-1">]</span><span·class="p">.</span><span·class="w">
 229 </span><span·class="p"·data-group-id="9887387908-5">[</span><span·class="p"·data-group-id="9887387908-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="9887387908-6">}</span><span·class="p">,</span><span·class="p"·data-group-id="9887387908-7">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="9887387908-7">}</span><span·class="p">,</span><span·class="p"·data-group-id="9887387908-8">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="9887387908-8">}</span><span·class="p">,</span><span·class="p"·data-group-id="9887387908-9">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="9887387908-9">}</span><span·class="p">,</span><span·class="p"·data-group-id="9887387908-10">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="9887387908-10">}</span><span·class="p">,</span><span·class="p"·data-group-id="9887387908-11">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="9887387908-11">}</span><span·class="p">,</span><span·class="p"·data-group-id="9887387908-12">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p"·data-group-id="9887387908-12">}</span><span·class="p">,</span><span·class="p"·data-group-id="9887387908-13">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="9887387908-13">}</span><span·class="p">,</span><span·class="p"·data-group-id="9887387908-14">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="9887387908-14">}</span><span·class="p"·data-group-id="9887387908-5">]</span></code></pre><p>A·consequence·of·the·rules·for·importing·variables·into·a·list·comprehensions·is
230 that·certain·pattern·matching·operations·must·be·moved·into·the·filters·and230 that·certain·pattern·matching·operations·must·be·moved·into·the·filters·and
231 cannot·be·written·directly·in·the·generators.</p><p>To·illustrate·this,·do·<em>not</em>·write·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="5697377653-1">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="5697377653-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 cannot·be·written·directly·in·the·generators.</p><p>To·illustrate·this,·do·<em>not</em>·write·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="0889753104-1">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="0889753104-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 ····</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">232 ····</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
233 ····</span><span·class="p"·data-group-id="5697377653-2">[</span><span·class="w">·</span><span·class="n">Expression</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">PatternInvolving</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·248,·SHA:·7f98274d84bdb3ba923c19adccc224be128caf26ba986c4cd82f1f52b46c6ed1·...·]-2">]</span><span·class="w">233 ····</span><span·class="p"·data-group-id="0889753104-2">[</span><span·class="w">·</span><span·class="n">Expression</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">PatternInvolving</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·248,·SHA:·277ce20aecebabc31e2e1348155b44047cfe29671dbe5593237436a71e755dfa·...·]-2">]</span><span·class="w">
234 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Instead,·write·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="4362345678-1">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="4362345678-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">234 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Instead,·write·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="1741083934-1">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="1741083934-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
235 ····</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">235 ····</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
236 ····</span><span·class="p"·data-group-id="4362345678-2">[</span><span·class="w">·</span><span·class="n">Expression</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">PatternInvolving</span><span·class="w">·</span><span·class="n">Y1</span><span·class="w">[·...·truncated·by·diffoscope;·len:·419,·SHA:·9599d9bd303aa8ab0d63e8afa5cfa6172dacc05aa167514fcda3d9d699437a47·...·]-2">]</span><span·class="w">236 ····</span><span·class="p"·data-group-id="1741083934-2">[</span><span·class="w">·</span><span·class="n">Expression</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">PatternInvolving</span><span·class="w">·</span><span·class="n">Y1</span><span·class="w">[·...·truncated·by·diffoscope;·len:·419,·SHA:·43937577c0db7bb0b1d7cc58919b78eb22618960bd7157a8c2e1b85c793387e5·...·]-2">]</span><span·class="w">
237 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>237 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>
238 </div>238 </div>
  
Max diff block lines reached; 810/79388 bytes (1.02%) of diff not shown.
584 B
html2text {}
Max HTML report size reached
56.7 KB
./usr/share/doc/erlang-doc/html/doc/system/listhandling.html
    
Offset 120, 105 lines modifiedOffset 120, 105 lines modified
120 ····<i·class="ri-link-m"·aria-hidden="true"></i>120 ····<i·class="ri-link-m"·aria-hidden="true"></i>
121 ··</a>121 ··</a>
122 ··<span·class="text">Creating·a·List</span>122 ··<span·class="text">Creating·a·List</span>
123 </h2>123 </h2>
124 <p>Lists·can·only·be·built·starting·from·the·end·and·attaching·list·elements·at·the124 <p>Lists·can·only·be·built·starting·from·the·end·and·attaching·list·elements·at·the
125 beginning.·If·you·use·the·<code·class="inline">++</code>·operator·as·follows,·a·new·list·is·created·that125 beginning.·If·you·use·the·<code·class="inline">++</code>·operator·as·follows,·a·new·list·is·created·that
126 is·a·copy·of·the·elements·in·<code·class="inline">List1</code>,·followed·by·<code·class="inline">List2</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">List1</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="n">List2</span></code></pre><p>Looking·at·how·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#append/2"><code·class="inline">lists:append/2</code></a>·or·<code·class="inline">++</code>·would·be·implemented·in·plain·Erlang,126 is·a·copy·of·the·elements·in·<code·class="inline">List1</code>,·followed·by·<code·class="inline">List2</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">List1</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="n">List2</span></code></pre><p>Looking·at·how·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#append/2"><code·class="inline">lists:append/2</code></a>·or·<code·class="inline">++</code>·would·be·implemented·in·plain·Erlang,
127 clearly·the·first·list·is·copied:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">append</span><span·class="p"·data-group-id="0178202951-1">(</span><span·class="p"·data-group-id="0178202951-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="0178202951-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·8e2a36b3f1cc6fdd84aed04a47f9e36fb9d2a42b0bee668ec50be8a15db8e0e9·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">127 clearly·the·first·list·is·copied:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">append</span><span·class="p"·data-group-id="6035073503-1">(</span><span·class="p"·data-group-id="6035073503-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6035073503-2">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·75d9a3570f4b38fe1f883accdfd378139de483566a1603e4edc1c699ba8bb20a·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
128 ····</span><span·class="p"·data-group-id="0178202951-3">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">append</span><span·class="p"·data-group-id="0178202951-4">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·8553fd94ba288431700bd2aba50cc5275d4c79b17a248982a78787d832e58bb3·...·]-3">]</span><span·class="p">;</span><span·class="w">128 ····</span><span·class="p"·data-group-id="6035073503-3">[</span><span·class="n">H</span><span·class="p">|</span><span·class="nf">append</span><span·class="p"·data-group-id="6035073503-4">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·6f90e611255816003345049ed588967568c9787b6578cf0fe2565fdcf2a38712·...·]-3">]</span><span·class="p">;</span><span·class="w">
129 </span><span·class="nf">append</span><span·class="p"·data-group-id="0178202951-5">(</span><span·class="p"·data-group-id="0178202951-6">[</span><span·class="p"·data-group-id="0178202951-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><span·class="p"·data-group-id="0178202951-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">129 </span><span·class="nf">append</span><span·class="p"·data-group-id="6035073503-5">(</span><span·class="p"·data-group-id="6035073503-6">[</span><span·class="p"·data-group-id="6035073503-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tail</span><span·class="p"·data-group-id="6035073503-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
130 ····</span><span·class="n">Tail</span><span·class="p">.</span></code></pre><p>When·recursing·and·building·a·list,·it·is·important·to·ensure·that·you·attach130 ····</span><span·class="n">Tail</span><span·class="p">.</span></code></pre><p>When·recursing·and·building·a·list,·it·is·important·to·ensure·that·you·attach
131 the·new·elements·to·the·beginning·of·the·list.·In·this·way,·you·will·build·<em>one</em>131 the·new·elements·to·the·beginning·of·the·list.·In·this·way,·you·will·build·<em>one</em>
132 list,·not·hundreds·or·thousands·of·copies·of·the·growing·result·list.</p><p>Let·us·first·see·how·it·is·not·to·be·done:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bad_fib</span><span·class="p"·data-group-id="9527221241-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="9527221241-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">132 list,·not·hundreds·or·thousands·of·copies·of·the·growing·result·list.</p><p>Let·us·first·see·how·it·is·not·to·be·done:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bad_fib</span><span·class="p"·data-group-id="4502028334-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="4502028334-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
133 ····</span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="9527221241-2">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·131,·SHA:·5f12ecbca057c71daf98f78f6b5ea823dcf746af4d40f0a0f88cfda32bf5982a·...·]-2">)</span><span·class="p">.</span><span·class="w">133 ····</span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="4502028334-2">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·131,·SHA:·495457b3664317d078c48fedce9bff673fe365b09f7d53da8b4cb76e972ba509·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
134 </span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="9527221241-4">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Current</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Next</span><span·cl[·...·truncated·by·diffoscope;·len:·108,·SHA:·ed7968d3a319cfeb86436ac4ea6458b7ed50f7780d5d7701a0a41a88adb5bbd3·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">134 </span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="4502028334-4">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Current</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Next</span><span·cl[·...·truncated·by·diffoscope;·len:·108,·SHA:·9acd6853a5763ec0c1563a3e8eab03f7aa57adbf773aeabd7091971e22a3a72f·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
135 ····</span><span·class="n">Fibs</span><span·class="p">;</span><span·class="w">135 ····</span><span·class="n">Fibs</span><span·class="p">;</span><span·class="w">
136 </span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="9527221241-5">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Current</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Next</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·59,·SHA:·3d6aa53a467389551766ee53ac1a231855124da77f22045be48904558b880d7f·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">136 </span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="4502028334-5">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Current</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Next</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·59,·SHA:·ff6d8b3903a791b72638e0bd29365ab970ed5bf6675cb9c4c49ba36efe8e2417·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
137 ····</span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="9527221241-6">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Next</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·464,·SHA:·2f0248e4eb66032900f3290caa96549ed3bd670d06d01be201ca654b4df72089·...·]-6">)</span><span·class="p">.</span></code></pre><p>Here·more·than·one·list·is·built.·In·each·iteration·step·a·new·list·is·created137 ····</span><span·class="nf">bad_fib</span><span·class="p"·data-group-id="4502028334-6">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Next</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·464,·SHA:·0c0b1657e042c455ce7b35610f5e74651088083130bff369dfa410bb303ce000·...·]-6">)</span><span·class="p">.</span></code></pre><p>Here·more·than·one·list·is·built.·In·each·iteration·step·a·new·list·is·created
138 that·is·one·element·longer·than·the·new·previous·list.</p><p>To·avoid·copying·the·result·in·each·iteration,·build·the·list·in·reverse·order138 that·is·one·element·longer·than·the·new·previous·list.</p><p>To·avoid·copying·the·result·in·each·iteration,·build·the·list·in·reverse·order
139 and·reverse·the·list·when·you·are·done:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="9206381758-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="9206381758-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">139 and·reverse·the·list·when·you·are·done:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="2092928077-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="2092928077-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
140 ····</span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="9206381758-2">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·131,·SHA:·78c67bfa47b552ab4b54a233000e000dcbf5893282ce277bdd352c49e3e14b71·...·]-2">)</span><span·class="p">.</span><span·class="w">140 ····</span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="2092928077-2">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·131,·SHA:·d9c4b426c901be64df1a150556145b1d891dcdb317a72f59fbd0dd8c1b551136·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
141 </span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="9206381758-4">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Current</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Next</span><span·cl[·...·truncated·by·diffoscope;·len:·108,·SHA:·4762618874cde1610f7ec2d195a961960b2fbb1d6f866207dfae4947406fd0cd·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">141 </span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="2092928077-4">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Current</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Next</span><span·cl[·...·truncated·by·diffoscope;·len:·108,·SHA:·c55f135d0f2ed7de6a24ab39125a6d14b76d4de5d6e1cf3f23cff628bafa38f0·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
142 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="9206381758-5">(</span><span·class="n">Fibs</span><span·class="p"·data-group-id="9206381758-5">)</span><span·class="p">;</span><span·class="w">142 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="2092928077-5">(</span><span·class="n">Fibs</span><span·class="p"·data-group-id="2092928077-5">)</span><span·class="p">;</span><span·class="w">
143 </span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="9206381758-6">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Current</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Next</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·59,·SHA:·dbe07bc7841fc1a8b1b5a7005dfa968ae56a798fb3f7b98ba5d5abffb68641da·...·]-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">143 </span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="2092928077-6">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Current</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Next</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·59,·SHA:·f39cd796496cb21688cc42f6eb17104ff1ea0dc36c48b18bc32aa1a11725d77a·...·]-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
144 ····</span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="9206381758-7">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Next</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·415,·SHA:·0eccb6c946431c77905d97a1f1fe672bd6c622826fd3e3d7dedc0879352a992d·...·]-7">)</span><span·class="p">.</span></code></pre><h2·id="list-comprehensions"·class="section-heading">144 ····</span><span·class="nf">tail_recursive_fib</span><span·class="p"·data-group-id="2092928077-7">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Next</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·415,·SHA:·4fc5224112e3abdf0303cfb85437e8fa824932b119265efaefa1a2d0d1193e58·...·]-7">)</span><span·class="p">.</span></code></pre><h2·id="list-comprehensions"·class="section-heading">
145 ··<a·href="#list-comprehensions"·class="hover-link">145 ··<a·href="#list-comprehensions"·class="hover-link">
146 ····<i·class="ri-link-m"·aria-hidden="true"></i>146 ····<i·class="ri-link-m"·aria-hidden="true"></i>
147 ··</a>147 ··</a>
148 ··<span·class="text">List·Comprehensions</span>148 ··<span·class="text">List·Comprehensions</span>
149 </h2>149 </h2>
150 <p>A·list·comprehension:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1184516027-1">[</span><span·class="n">Expr</span><span·class="p"·data-group-id="1184516027-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="1184516027-2">)</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·676,·SHA:·06c0bfd6d3c5455f38d1e7704e33da095ea1bf822380debb5f53db03dd99472f·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">150 <p>A·list·comprehension:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9813345253-1">[</span><span·class="n">Expr</span><span·class="p"·data-group-id="9813345253-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="9813345253-2">)</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·676,·SHA:·3ca0a25d31c07d2e07e11029db02871a51fda8fd52a4769b11249546aa4b26ce·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
151 ····</span><span·class="p"·data-group-id="7013322307-3">[</span><span·class="n">Expr</span><span·class="p"·data-group-id="7013322307-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="7013322307-4">)</span><span·class="p">|</span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"[·...·truncated·by·diffoscope;·len:·234,·SHA:·3142c8800ac0bdcb2ea1b4c85445c3b2436e458e9cb885178b54fa58e11c606d·...·]-3">]</span><span·class="p">;</span><span·class="w">151 ····</span><span·class="p"·data-group-id="8437752144-3">[</span><span·class="n">Expr</span><span·class="p"·data-group-id="8437752144-4">(</span><span·class="n">E</span><span·class="p"·data-group-id="8437752144-4">)</span><span·class="p">|</span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"[·...·truncated·by·diffoscope;·len:·234,·SHA:·7797e1c3d0ed5269b482f06288f9719468e707238f1fb06d99de8126946f75ae·...·]-3">]</span><span·class="p">;</span><span·class="w">
152 </span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"·data-group-id="7013322307-6">(</span><span·class="p"·data-group-id="7013322307-7">[</span><span·class="p"·data-group-id="7013322307-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Expr</span><span·class="p"·data-group-id="7013322307-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7013322307-8">[</span><span·class="p"·data-group-id="7013322307-8">]</span><span·class="p">.</span></code></pre><p>If·the·result·of·the·list·comprehension·will·<em>obviously</em>·not·be·used,·a·list 
153 will·not·be·constructed.·For·example,·in·this·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8152554146-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·406,·SHA:·ac1aa10965fb5b7b43c0531a085464c6dc02b97c69ae8b344c5599877d629acb·...·]152 </span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"·data-group-id="8437752144-6">(</span><span·class="p"·data-group-id="8437752144-7">[</span><span·class="p"·data-group-id="8437752144-7">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·405,·SHA:·8e6c2eab94e32625700fc1c686eee2eb2f8604cce43944cffb130394aa875ad4·...·]
 153 will·not·be·constructed.·For·example,·in·this·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3405731692-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="3405731692-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="3405731692-2">)</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">E</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="n">List</span><span·class="p"·data-group-id="3405731692-1">]</span><span·class="p">,</span><span·class="w">
154 </span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>or·in·this·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="n">Var</span><span·class="w">·</span><span·class="k">of</span><span·class="w">154 </span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>or·in·this·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="n">Var</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
155 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">155 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
156 ········</span><span·class="p"·data-group-id="8149355661-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="8149355661-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="8149355661-2">)</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·220,·SHA:·07fedfc9b1147a096eb48b899d9ad7632f20b3437914528a0252111236bcb1f7·...·]-1">]</span><span·class="p">;</span><span·class="w">156 ········</span><span·class="p"·data-group-id="9499982608-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="9499982608-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="9499982608-2">)</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·220,·SHA:·228c67f69a2dc40353faa209c6fc64f79048db32e921b0dfc716a27c61aa4655·...·]-1">]</span><span·class="p">;</span><span·class="w">
157 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 </span><span·class="k">end</span><span·class="p">,</span><span·class="w">158 </span><span·class="k">end</span><span·class="p">,</span><span·class="w">
159 </span><span·class="nf">some_function</span><span·class="p"·data-group-id="8149355661-3">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="8149355661-3">)</span><span·class="p">,</span></code></pre><p>the·value·is·not·assigned·to·a·variable,·not·passed·to·another·function,·and·not159 </span><span·class="nf">some_function</span><span·class="p"·data-group-id="9499982608-3">(</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="9499982608-3">)</span><span·class="p">,</span></code></pre><p>the·value·is·not·assigned·to·a·variable,·not·passed·to·another·function,·and·not
160 returned.·This·means·that·there·is·no·need·to·construct·a·list·and·the·compiler160 returned.·This·means·that·there·is·no·need·to·construct·a·list·and·the·compiler
161 will·simplify·the·code·for·the·list·comprehension·to:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">&#39;lc^0&#39;</span><span·class="p"·data-group-id="0828382884-1">(</span><span·class="p"·data-group-id="0828382884-2">[</span><span·class="n">E</span><span·class="p">|</span><span·class="n">Tail</span><span·class="p"·data-group-id="0828382884-2">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·63,·SHA:·ac3669cc541c75a9a9f11a8536688bce526b905f8559f560130880cba3d8aca0·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">161 will·simplify·the·code·for·the·list·comprehension·to:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">&#39;lc^0&#39;</span><span·class="p"·data-group-id="7458078103-1">(</span><span·class="p"·data-group-id="7458078103-2">[</span><span·class="n">E</span><span·class="p">|</span><span·class="n">Tail</span><span·class="p"·data-group-id="7458078103-2">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·63,·SHA:·f5ebe00077982f8f72efafd9bbcb81bc7847ea6d847d39e13b25e7fab39d0725·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 ····</span><span·class="n">Expr</span><span·class="p"·data-group-id="0828382884-3">(</span><span·class="n">E</span><span·class="p"·data-group-id="0828382884-3">)</span><span·class="p">,</span><span·class="w">162 ····</span><span·class="n">Expr</span><span·class="p"·data-group-id="7458078103-3">(</span><span·class="n">E</span><span·class="p"·data-group-id="7458078103-3">)</span><span·class="p">,</span><span·class="w">
163 ····</span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"·data-group-id="0828382884-4">(</span><span·class="n">Tail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Expr</span><span·class="p"·data-group-id="0828382884-4">)</span><span·class="p">;</span><span·class="w">163 ····</span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"·data-group-id="7458078103-4">(</span><span·class="n">Tail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Expr</span><span·class="p"·data-group-id="7458078103-4">)</span><span·class="p">;</span><span·class="w">
164 </span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"·data-group-id="0828382884-5">(</span><span·class="p"·data-group-id="0828382884-6">[</span><span·class="p"·data-group-id="0828382884-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Expr</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·194,·SHA:·17731c1ff826bd8659afbd9d7a56c35b0bd41352c488f6abb9d611e00189c365·...·]-7">]</span><span·class="p">.</span></code></pre><p>The·compiler·also·understands·that·assigning·to·<code·class="inline">_</code>·means·that·the·value·will164 </span><span·class="nf">&#39;lc^0&#39;</span><span·class="p"·data-group-id="7458078103-5">(</span><span·class="p"·data-group-id="7458078103-6">[</span><span·class="p"·data-group-id="7458078103-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Expr</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·194,·SHA:·34222532676345f2e0b3e88d33dec57a9b2beb5813c43c7ae48715042ae811d3·...·]-7">]</span><span·class="p">.</span></code></pre><p>The·compiler·also·understands·that·assigning·to·<code·class="inline">_</code>·means·that·the·value·will
165 not·be·used.·Therefore,·the·code·in·the·following·example·will·also·be·optimized:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9403222930-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="9403222930-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="9403222930-2">)</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·220,·SHA:·5132e1f94030e4d6968ed0afa10c3fc080dbd5d117c9c338979350544de0161e·...·]-1">]</span><span·class="p">,</span><span·class="w">165 not·be·used.·Therefore,·the·code·in·the·following·example·will·also·be·optimized:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2508668782-1">[</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">put_chars</span><span·class="p"·data-group-id="2508668782-2">(</span><span·class="n">E</span><span·class="p"·data-group-id="2508668782-2">)</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·220,·SHA:·a2fbbf8a802aa980d3a6017a8e2712ce8a1e21513006c1b4b04128af3206fad4·...·]-1">]</span><span·class="p">,</span><span·class="w">
166 </span><span·class="ss">ok</span><span·class="p">.</span></code></pre><h2·id="deep-and-flat-lists"·class="section-heading">166 </span><span·class="ss">ok</span><span·class="p">.</span></code></pre><h2·id="deep-and-flat-lists"·class="section-heading">
167 ··<a·href="#deep-and-flat-lists"·class="hover-link">167 ··<a·href="#deep-and-flat-lists"·class="hover-link">
168 ····<i·class="ri-link-m"·aria-hidden="true"></i>168 ····<i·class="ri-link-m"·aria-hidden="true"></i>
169 ··</a>169 ··</a>
170 ··<span·class="text">Deep·and·Flat·Lists</span>170 ··<span·class="text">Deep·and·Flat·Lists</span>
171 </h2>171 </h2>
172 <p><a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#flatten/1"><code·class="inline">lists:flatten/1</code></a>·builds·an·entirely·new·list.·It·is·therefore·expensive,·and172 <p><a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#flatten/1"><code·class="inline">lists:flatten/1</code></a>·builds·an·entirely·new·list.·It·is·therefore·expensive,·and
173 even·<em>more</em>·expensive·than·the·<code·class="inline">++</code>·operator·(which·copies·its·left·argument,173 even·<em>more</em>·expensive·than·the·<code·class="inline">++</code>·operator·(which·copies·its·left·argument,
174 but·not·its·right·argument).</p><p>In·the·following·situations·it·is·unnecessary·to·call·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#flatten/1"><code·class="inline">lists:flatten/1</code></a>:</p><ul><li>When·sending·data·to·a·port.·Ports·understand·deep·lists·so·there·is·no·reason174 but·not·its·right·argument).</p><p>In·the·following·situations·it·is·unnecessary·to·call·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#flatten/1"><code·class="inline">lists:flatten/1</code></a>:</p><ul><li>When·sending·data·to·a·port.·Ports·understand·deep·lists·so·there·is·no·reason
175 to·flatten·the·list·before·sending·it·to·the·port.</li><li>When·calling·BIFs·that·accept·deep·lists,·such·as175 to·flatten·the·list·before·sending·it·to·the·port.</li><li>When·calling·BIFs·that·accept·deep·lists,·such·as
176 <a·href="../../erts-15.0.1/doc/html/erlang.html#list_to_binary/1"><code·class="inline">list_to_binary/1</code></a>·or176 <a·href="../../erts-15.0.1/doc/html/erlang.html#list_to_binary/1"><code·class="inline">list_to_binary/1</code></a>·or
177 <a·href="../../erts-15.0.1/doc/html/erlang.html#iolist_to_binary/1"><code·class="inline">iolist_to_binary/1</code></a>.</li><li>When·you·know·that·your·list·is·only·one·level·deep.·Use·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#append/1"><code·class="inline">lists:append/1</code></a>177 <a·href="../../erts-15.0.1/doc/html/erlang.html#iolist_to_binary/1"><code·class="inline">iolist_to_binary/1</code></a>.</li><li>When·you·know·that·your·list·is·only·one·level·deep.·Use·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#append/1"><code·class="inline">lists:append/1</code></a>
178 instead.</li></ul><p><em>Examples:</em></p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">port_command</span><span·class="p"·data-group-id="4722714670-1">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DeepList</span><span·class="p"·data-group-id="4722714670-1">)</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"[·...·truncated·by·diffoscope;·len:·954,·SHA:·4a442b10baa51746544d4cfbe72e98895831b46fafe723b641e27d658b4a4fb0·...·]-1">]</span><span·class="p">,</span><span·class="w">178 instead.</li></ul><p><em>Examples:</em></p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">port_command</span><span·class="p"·data-group-id="2151481400-1">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DeepList</span><span·class="p"·data-group-id="2151481400-1">)</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"[·...·truncated·by·diffoscope;·len:·954,·SHA:·d99b3011dbb49c6d2902a8a3577d4aa16b692150529f07e391d1f2c3781c98e2·...·]-1">]</span><span·class="p">,</span><span·class="w">
179 </span><span·class="nf">port_command</span><span·class="p"·data-group-id="5328735902-2">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TerminatedStr</span><span·class="p"·data-group-id="5328735902-2">)</span></code></pre><p>Instead:</p><p><strong>DO</strong></p><pre><code·class[·...·truncated·by·diffoscope;·len:·335,·SHA:·4242c1338b3ea2824d61b42f525bab581d0a21f6abdc173bd5c174587302ae26·...·]2-1">]</span><span·class="p">,</span><span·class="w">179 </span><span·class="nf">port_command</span><span·class="p"·data-group-id="4625041490-2">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TerminatedStr</span><span·class="p"·data-group-id="4625041490-2">)</span></code></pre><p>Instead:</p><p><strong>DO</strong></p><pre><code·class[·...·truncated·by·diffoscope;·len:·335,·SHA:·e7287b3fcda73ed0c399234857c7fb6a0047a5a9a77c44f93f0790ede71366e1·...·]2-1">]</span><span·class="p">,</span><span·class="w">
180 </span><span·class="nf">port_command</span><span·class="p"·data-group-id="7586138642-2">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TerminatedStr</span><span·class="p"·data-group-id="7586138642-2">)</span></code></pre><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="0293668606-1">(</span><span·class="p"·data-group-id="0293668606-2">[</span><span·class="p"·data-group-id="0293668606-3">[</span><span·class="mi">1</span><span·class="p"·data-group-id="0293668606-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0293668606-4">[</span><span·class="mi">2</span><span·class="p"·data-group-id="0293668606-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0293668606-5">[</span><span·class="mi">3</span><span·class="p"·data-group-id="0293668606-5">]</span><span·class="p"·data-group-id="0293668606-2">]</span><span·class="p"·data-group-id="0293668606-1">)</span><span·class="p">.</span><span·class="w"> 
181 </span><span·class="p"·data-group-id="0293668606-6">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="0293668606-6">]</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">flatten</span><span·class="p"·data-group-id="3248356811-1">(</span><span·class="p"·data-group-id="3248356811-2">[</span><span·class="p"·data-group-id="3248356811-3">[</span><span·class="mi">1</span><span·class="p"·data-group-id="3248356811-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3248356811-4">[</span><span·class="mi">2</span><span·class="p"·data-group-id="3248356811-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3248356811-5">[</span><span·class="mi">3</span><span·class="p"·data-group-id="3248356811-5">]</span><span·class="p"·data-group-id="3248356811-2">]</span><span·class="p"·data-group-id="3248356811-1">)</span><span·class="p">.</span><span·class="w"> 
182 </span><span·class="p"·data-group-id="3248356811-6">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="3248356811-6">]</span></code></pre><h2·id="recursive-list-func[·...·truncated·by·diffoscope;·len:·29,·SHA:·4a97f155337d912116f87b534666017ee54bb6a09ff913e0b6272dafbe3ba7c0·...·]">180 </span><span·class="nf">port_command</span><span·class="p"·data-group-id="3762961202-2">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TerminatedStr</span><span·class="p"·data-group-id="3762961202-2">)</span></code></pre><p>[·...·truncated·by·diffoscope;·len:·936,·SHA:·ac1dcc3c3ed86c6ab19d371da770d355b867e0c878cf4d64456ddb1233db45d0·...·]">
 181 </span><span·class="p"·data-group-id="3015449497-6">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="3015449497-6">]</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">flatten</span><span·class="p"·data-group-id="7890845318-1">(</span><span·class="p"·data-group-id="7890845318-2">[</span><span·class="p"·data-group-id="7890845318-3">[</span><span·class="mi">1</span><span·class="p"·data-group-id="7890845318-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7890845318-4">[</span><span·class="mi">2</span><span·class="p"·data-group-id="7890845318-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7890845318-5">[</span><span·class="mi">3</span><span·class="p"·data-group-id="7890845318-5">]</span><span·class="p"·data-group-id="7890845318-2">]</span><span·class="p"·data-group-id="7890845318-1">)</span><span·class="p">.</span><span·class="w">
 182 </span><span·class="p"·data-group-id="7890845318-6">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="7890845318-6">]</span></code></pre><h2·id="recursive-list-functions"·class="section-heading">
183 ··<a·href="#recursive-list-functions"·class="hover-link">183 ··<a·href="#recursive-list-functions"·class="hover-link">
184 ····<i·class="ri-link-m"·aria-hidden="true"></i>184 ····<i·class="ri-link-m"·aria-hidden="true"></i>
185 ··</a>185 ··</a>
186 ··<span·class="text">Recursive·List·Functions</span>186 ··<span·class="text">Recursive·List·Functions</span>
187 </h2>187 </h2>
188 <p>There·are·two·basic·ways·to·write·a·function·that·traverses·a·list·and188 <p>There·are·two·basic·ways·to·write·a·function·that·traverses·a·list·and
189 produces·a·new·list.</p><p>The·first·way·is·writing·a·<em>body-recursive</em>·function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Add·42·to·each·integer·in·the·list.</span><span·class="w">189 produces·a·new·list.</p><p>The·first·way·is·writing·a·<em>body-recursive</em>·function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Add·42·to·each·integer·in·the·list.</span><span·class="w">
190 </span><span·class="nf">add_42_body</span><span·class="p"·data-group-id="2028657807-1">(</span><span·class="p"·data-group-id="2028657807-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="2028657807-2">]</span><span·class="p"·data-group-id="2028657807-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">190 </span><span·class="nf">add_42_body</span><span·class="p"·data-group-id="3792927775-1">(</span><span·class="p"·data-group-id="3792927775-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3792927775-2">]</span><span·class="p"·data-group-id="3792927775-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
191 ····</span><span·class="p"·data-group-id="2028657807-3">[</span><span·class="n">H</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">42</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">add_42_body</span><span[·...·truncated·by·diffoscope;·len:·166,·SHA:·737082df50fa02ba2e2367c5c706487db30033c778c7f7c1a404b71689558d9e·...·]-3">]</span><span·class="p">;</span><span·class="w">191 ····</span><span·class="p"·data-group-id="3792927775-3">[</span><span·class="n">H</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">42</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">add_42_body</span><span[·...·truncated·by·diffoscope;·len:·166,·SHA:·4343376b257102dc9b064a858664c3c5c5a558bfbd379dd089a515133f2a4b72·...·]-3">]</span><span·class="p">;</span><span·class="w">
192 </span><span·class="nf">add_42_body</span><span·class="p"·data-group-id="2028657807-5">(</span><span·class="p"·data-group-id="2028657807-6">[</span><span·class="p"·data-group-id="2028657807-6">]</span><span·class="p"·data-group-id="2028657807-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">192 </span><span·class="nf">add_42_body</span><span·class="p"·data-group-id="3792927775-5">(</span><span·class="p"·data-group-id="3792927775-6">[</span><span·class="p"·data-group-id="3792927775-6">]</span><span·class="p"·data-group-id="3792927775-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
193 ····</span><span·class="p"·data-group-id="2028657807-7">[</span><span·class="p"·data-group-id="2028657807-7">]</span><span·class="p">.</span></code></pre><p>The·second·way·is·writing·a·<em>tail-recursive</em>·function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Add·42·to·each·integer·in·the·list.</span><span·class="w">193 ····</span><span·class="p"·data-group-id="3792927775-7">[</span><span·class="p"·data-group-id="3792927775-7">]</span><span·class="p">.</span></code></pre><p>The·second·way·is·writing·a·<em>tail-recursive</em>·function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Add·42·to·each·integer·in·the·list.</span><span·class="w">
194 </span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="4821140951-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="4821140951-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">194 </span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="9221803308-1">(</span><span·class="n">List</span><span·class="p"·data-group-id="9221803308-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
195 ····</span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="4821140951-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4821140951-3">[</span><span·class="p"·data-group-id="4821140951-3">]</span><span·class="p"·data-group-id="4821140951-2">)</span><span·class="p">.</span><span·class="w">195 ····</span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="9221803308-2">(</span><span·class="n">List</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9221803308-3">[</span><span·class="p"·data-group-id="9221803308-3">]</span><span·class="p"·data-group-id="9221803308-2">)</span><span·class="p">.</span><span·class="w">
  
196 </span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="4821140951-4">(</span><span·class="p"·data-group-id="4821140951-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="4821140951-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·089aeb9dd3056591148b73c93bfa50aa43034e24d2ee020ff5aa3f4d7f6c09e2·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">196 </span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="9221803308-4">(</span><span·class="p"·data-group-id="9221803308-5">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="9221803308-5">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·59,·SHA:·23d9da71ffc6d24d28246b80cea42f171a1238ea75baa1fa56fe3f5b27fcb107·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
197 ····</span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="4821140951-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4821140951-7">[</span><span·class="n">H</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·205,·SHA:·9da60460266d39e134f02f74b0d310e07f92013a8666cda85c93fc22f69ffc4b·...·]-6">)</span><span·class="p">;</span><span·class="w">197 ····</span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="9221803308-6">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9221803308-7">[</span><span·class="n">H</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·205,·SHA:·abda6481b7e3f200ccaa434ffda79e4948adaa68863d60b7b4486984ac109e14·...·]-6">)</span><span·class="p">;</span><span·class="w">
198 </span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="4821140951-8">(</span><span·class="p"·data-group-id="4821140951-9">[</span><span·class="p"·data-group-id="4821140951-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="4821140951-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">198 </span><span·class="nf">add_42_tail</span><span·class="p"·data-group-id="9221803308-8">(</span><span·class="p"·data-group-id="9221803308-9">[</span><span·class="p"·data-group-id="9221803308-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="9221803308-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
199 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="4821140951-10">(</span><span·class="n">Acc</span><span·class="p"·data-group-id="4821140951-10">)</span><span·class="p">.</span></code></pre><p>In·early·version·of·Erlang·the·tail-recursive·function·would·typically199 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="9221803308-10">(</span><span·class="n">Acc</span><span·class="p"·data-group-id="9221803308-10">)</span><span·class="p">.</span></code></pre><p>In·early·version·of·Erlang·the·tail-recursive·function·would·typically
200 be·more·efficient.·In·modern·versions·of·Erlang,·there·is·usually·not200 be·more·efficient.·In·modern·versions·of·Erlang,·there·is·usually·not
201 much·difference·in·performance·between·a·body-recursive·list·function·and201 much·difference·in·performance·between·a·body-recursive·list·function·and
202 tail-recursive·function·that·reverses·the·list·at·the·end.·Therefore,202 tail-recursive·function·that·reverses·the·list·at·the·end.·Therefore,
203 concentrate·on·writing·beautiful·code·and·forget·about·the·performance203 concentrate·on·writing·beautiful·code·and·forget·about·the·performance
204 of·your·list·functions.·In·the·time-critical·parts·of·your·code,204 of·your·list·functions.·In·the·time-critical·parts·of·your·code,
205 <em>measure</em>·before·rewriting·your·code.</p><p>For·a·thorough·discussion·about·tail·and·body·recursion,·see205 <em>measure</em>·before·rewriting·your·code.</p><p>For·a·thorough·discussion·about·tail·and·body·recursion,·see
206 <a·href="http://ferd.ca/erlang-s-tail-recursion-is-not-a-silver-bullet.html">Erlang's·Tail·Recursion·is·Not·a·Silver·Bullet</a>.</p><blockquote><h4·class="info">Note</h4><p>This·section·is·about·list·functions·that·<em>construct</em>·lists.·A·tail-recursive206 <a·href="http://ferd.ca/erlang-s-tail-recursion-is-not-a-silver-bullet.html">Erlang's·Tail·Recursion·is·Not·a·Silver·Bullet</a>.</p><blockquote><h4·class="info">Note</h4><p>This·section·is·about·list·functions·that·<em>construct</em>·lists.·A·tail-recursive
207 function·that·does·not·construct·a·list·runs·in·constant·space,·while·the207 function·that·does·not·construct·a·list·runs·in·constant·space,·while·the
208 corresponding·body-recursive·function·uses·stack·space·proportional·to·the208 corresponding·body-recursive·function·uses·stack·space·proportional·to·the
209 length·of·the·list.</p></blockquote><p>For·example,·a·function·that·sums·a·list·of·integers,·is·<em>not</em>·to·be·written·as209 length·of·the·list.</p></blockquote><p>For·example,·a·function·that·sums·a·list·of·integers,·is·<em>not</em>·to·be·written·as
210 follows:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">recursive_sum</span><span·class="p"·data-group-id="8887962452-1">(</span><span·class="p"·data-group-id="8887962452-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="8887962452-2">]</span><span·class="p"·data-group-id="8887962452-1">)</span><sp[·...·truncated·by·diffoscope;·len:·276,·SHA:·f9dfefb4dc2eb9c635dc1ade2ab599b454506580870b1e6f8e2ad56cfe1519c5·...·]-3">)</span><span·class="p">;</span><span·class="w">210 follows:</p><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">recursive_sum</span><span·class="p"·data-group-id="3442140215-1">(</span><span·class="p"·data-group-id="3442140215-2">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3442140215-2">]</span><span·class="p"·data-group-id="3442140215-1">)</span><sp[·...·truncated·by·diffoscope;·len:·276,·SHA:·e43633d1fc798991b48bf3dba590edda873b4d36e5567d87d69ce63d7349528e·...·]-3">)</span><span·class="p">;</span><span·class="w">
211 </span><span·class="nf">recursive_sum</span><span·class="p"·data-group-id="8887962452-4">(</span><span·class="p"·data-group-id="8887962452-5">[</span><span·class="p"·data-group-id="8887962452-5">]</span><span·class="p"·data-group-id="8887962452-4">)</span><span·class="w">····</span><span·class="p">-&gt;</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·606,·SHA:·cfd481a594ba6e1e7b1f1bde521e98ad709b73b1e7fd3f91e0bdf8b6840d4997·...·]-2">)</span><span·class="p">.</span><span·class="w">211 </span><span·class="nf">recursive_sum</span><span·class="p"·data-group-id="3442140215-4">(</span><span·class="p"·data-group-id="3442140215-5">[</span><span·class="p"·data-group-id="3442140215-5">]</span><span·class="p"·data-group-id="3442140215-4">)</span><span·class="w">····</span><span·class="p">-&gt;</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·606,·SHA:·2e45861ffe8d7efb0a3bb80bf7c7b92f6948eb50934f92b02e40d02f08860fa2·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
212 </span><span·class="nf">sum</span><span·class="p"·data-group-id="6613497013-3">(</span><span·class="p"·data-group-id="6613497013-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="6613497013-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·462,·SHA:·2be58e86416fa817170941a3e8775c51c9adeba94e41122129d9d516ed38dfb6·...·]-5">)</span><span·class="p">;</span><span·class="w">212 </span><span·class="nf">sum</span><span·class="p"·data-group-id="3617490166-3">(</span><span·class="p"·data-group-id="3617490166-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3617490166-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·462,·SHA:·28ed621f7052e976951125e9f292056d46606cd14933b6d5e183a4f9be687f1f·...·]-5">)</span><span·class="p">;</span><span·class="w">
213 </span><span·class="nf">sum</span><span·class="p"·data-group-id="6613497013-6">(</span><span·class="p"·data-group-id="6613497013-7">[</span><span·class="p"·data-group-id="6613497013-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="6613497013-6">)</span><span·class="w">····</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p">.</span></code></pre>213 </span><span·class="nf">sum</span><span·class="p"·data-group-id="3617490166-6">(</span><span·class="p"·data-group-id="3617490166-7">[</span><span·class="p"·data-group-id="3617490166-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="3617490166-6">)</span><span·class="w">····</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p">.</span></code></pre>
214 </div>214 </div>
  
215 <div·class="bottom-actions"·id="bottom-actions">215 <div·class="bottom-actions"·id="bottom-actions">
216 ··<div·class="bottom-actions-item">216 ··<div·class="bottom-actions-item">
  
217 ······<a·href="maps.html"·class="bottom-actions-button"·rel="prev">217 ······<a·href="maps.html"·class="bottom-actions-button"·rel="prev">
218 ········<span·class="subheader">218 ········<span·class="subheader">
Offset 261, 15 lines modifiedOffset 261, 15 lines modified
261 ······<p·class="built-using">261 ······<p·class="built-using">
262 ········Built·using262 ········Built·using
263 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the263 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
264 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>264 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
265 ······</p>265 ······</p>
266 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>266 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
267 ····</footer>267 ····</footer>
268 ··</div>268 ··</div>
269 </main>269 </main>
270 </div>270 </div>
271 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>271 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
272 <script>272 <script>
273 ··document.addEventListener("DOMContentLoaded",·function·()·{273 ··document.addEventListener("DOMContentLoaded",·function·()·{
558 B
html2text {}
Max HTML report size reached
59.7 KB
./usr/share/doc/erlang-doc/html/doc/system/macros.html
    
Offset 117, 56 lines modifiedOffset 117, 56 lines modified
  
117 <h2·id="file-inclusion"·class="section-heading">117 <h2·id="file-inclusion"·class="section-heading">
118 ··<a·href="#file-inclusion"·class="hover-link">118 ··<a·href="#file-inclusion"·class="hover-link">
119 ····<i·class="ri-link-m"·aria-hidden="true"></i>119 ····<i·class="ri-link-m"·aria-hidden="true"></i>
120 ··</a>120 ··</a>
121 ··<span·class="text">File·Inclusion</span>121 ··<span·class="text">File·Inclusion</span>
122 </h2>122 </h2>
123 <p>A·file·can·be·included·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="2333835485-1">(</span><span·class="n">File</span><span·class="p"·data-group-id="2333835485-1">)</span><span·class="p">.</span><span·class="w"> 
124 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2333835485-2">(</span><span·class="n">File</span><span·class="p"·data-group-id="2333835485-2">)</span><span·class="p">.</span></code></pre><p><code·class="inlin[·...·truncated·by·diffoscope;·len:·88,·SHA:·eae51463b245131c3a443f27702d0623faa26c7deeeb9415aa013a52c942d16b·...·]123 <p>A·file·can·be·included·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="1505114103-1">(</span><span·class="n">File</span><span·class="p"·data-group-id="15[·...·truncated·by·diffoscope;·len:·60,·SHA:·fa2cce65eca454c3a551bcf306d25415b4d7edd49c5a700c0dada4ff32574347·...·]
 124 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="1505114103-2">(</span><span·class="n">File</span><span·class="p"·data-group-id="1505114103-2">)</span><span·class="p">.</span></code></pre><p><code·class="inline">File</code>,·a·string,·is·to·point·out·a·file.·The·contents·of·this·file·are·included
125 as·is,·at·the·position·of·the·directive.</p><p>Include·files·are·typically·used·for·record·and·macro·definitions·that·are125 as·is,·at·the·position·of·the·directive.</p><p>Include·files·are·typically·used·for·record·and·macro·definitions·that·are
126 shared·by·several·modules.·It·is·recommended·to·use·the·file·name·extension126 shared·by·several·modules.·It·is·recommended·to·use·the·file·name·extension
127 <code·class="inline">.hrl</code>·for·include·files.</p><p><code·class="inline">File</code>·can·start·with·a·path·component·<code·class="inline">$VAR</code>,·for·some·string·<code·class="inline">VAR</code>.·If·that·is127 <code·class="inline">.hrl</code>·for·include·files.</p><p><code·class="inline">File</code>·can·start·with·a·path·component·<code·class="inline">$VAR</code>,·for·some·string·<code·class="inline">VAR</code>.·If·that·is
128 the·case,·the·value·of·the·environment·variable·<code·class="inline">VAR</code>·as·returned·by128 the·case,·the·value·of·the·environment·variable·<code·class="inline">VAR</code>·as·returned·by
129 <code·class="inline">os:getenv(VAR)</code>·is·substituted·for·<code·class="inline">$VAR</code>.·If·<code·class="inline">os:getenv(VAR)</code>·returns·<code·class="inline">false</code>,129 <code·class="inline">os:getenv(VAR)</code>·is·substituted·for·<code·class="inline">$VAR</code>.·If·<code·class="inline">os:getenv(VAR)</code>·returns·<code·class="inline">false</code>,
130 <code·class="inline">$VAR</code>·is·left·as·is.</p><p>If·the·filename·<code·class="inline">File</code>·is·absolute·(possibly·after·variable·substitution),·the130 <code·class="inline">$VAR</code>·is·left·as·is.</p><p>If·the·filename·<code·class="inline">File</code>·is·absolute·(possibly·after·variable·substitution),·the
131 include·file·with·that·name·is·included.·Otherwise,·the·specified·file·is131 include·file·with·that·name·is·included.·Otherwise,·the·specified·file·is
132 searched·for·in·the·following·directories,·and·in·this·order:</p><ol><li>The·current·working·directory</li><li>The·directory·where·the·module·is·being·compiled</li><li>The·directories·given·by·the·<code·class="inline">include</code>·option</li></ol><p>For·details,·see·<a·href="../../erts-15.0.1/doc/html/erlc_cmd.html">erlc</a>·in·ERTS·and132 searched·for·in·the·following·directories,·and·in·this·order:</p><ol><li>The·current·working·directory</li><li>The·directory·where·the·module·is·being·compiled</li><li>The·directories·given·by·the·<code·class="inline">include</code>·option</li></ol><p>For·details,·see·<a·href="../../erts-15.0.1/doc/html/erlc_cmd.html">erlc</a>·in·ERTS·and
133 <a·href="../../lib/compiler-8.5.1/doc/html/compile.html"><code·class="inline">compile</code></a>·in·Compiler.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="6786023965-1">(</span><span·class="s">&quot;my_records.hrl&quot;</span><span·class="p"·data-group-id="6786023965-1">)</span><span·class="p">.</span><span·class="w">133 <a·href="../../lib/compiler-8.5.1/doc/html/compile.html"><code·class="inline">compile</code></a>·in·Compiler.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="6463611798-1">(</span><span·class="s">&quot;my_records.hrl&quot;</span><span·class="p"·data-group-id="6463611798-1">)</span><span·class="p">.</span><span·class="w">
134 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="6786023965-2">(</span><span·class="s">&quot;incdir/my_records.hrl&quot;</span><span·class="p"·data-group-id="6786023965-2">)</span><span·class="p">.</span><span·class="w">134 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="6463611798-2">(</span><span·class="s">&quot;incdir/my_records.hrl&quot;</span><span·class="p"·data-group-id="6463611798-2">)</span><span·class="p">.</span><span·class="w">
135 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="6786023965-3">(</span><span·class="s">&quot;/home/user/proj/my_records.hrl&quot;</span><span·class="p"·data-group-id="6786023965-3">)</span><span·class="p">.</span><span·class="w">135 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="6463611798-3">(</span><span·class="s">&quot;/home/user/proj/my_records.hrl&quot;</span><span·class="p"·data-group-id="6463611798-3">)</span><span·class="p">.</span><span·class="w">
136 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="6786023965-4">(</span><span·class="s">&quot;$PROJ_ROOT/my_records.hrl&quot;</span><span·class="p"·data-group-id="6786023965-4">)</span><span·class="p">.</span></code></pre><p><code·class="inline">include_lib</code>·is·similar·to·<code·class="inline">include</code>,·but·is·not·to·point·out·an·absolute·file.136 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="6463611798-4">(</span><span·class="s">&quot;$PROJ_ROOT/my_records.hrl&quot;</span><span·class="p"·data-group-id="6463611798-4">)</span><span·class="p">.</span></code></pre><p><code·class="inline">include_lib</code>·is·similar·to·<code·class="inline">include</code>,·but·is·not·to·point·out·an·absolute·file.
137 Instead,·the·first·path·component·(possibly·after·variable·substitution)·is137 Instead,·the·first·path·component·(possibly·after·variable·substitution)·is
138 assumed·to·be·the·name·of·an·application.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="3122751354-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="3122751354-1">)</span><span·class="p">.</span></code></pre><p>The·code·server·uses·<code·class="inline">code:lib_dir(kernel)</code>·to·find·the·directory·of·the·current138 assumed·to·be·the·name·of·an·application.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7425530263-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="7425530263-1">)</span><span·class="p">.</span></code></pre><p>The·code·server·uses·<code·class="inline">code:lib_dir(kernel)</code>·to·find·the·directory·of·the·current
139 (latest)·version·of·Kernel,·and·then·the·subdirectory·<code·class="inline">include</code>·is·searched·for139 (latest)·version·of·Kernel,·and·then·the·subdirectory·<code·class="inline">include</code>·is·searched·for
140 the·file·<code·class="inline">file.hrl</code>.</p><h2·id="defining-and-using-macros"·class="section-heading">140 the·file·<code·class="inline">file.hrl</code>.</p><h2·id="defining-and-using-macros"·class="section-heading">
141 ··<a·href="#defining-and-using-macros"·class="hover-link">141 ··<a·href="#defining-and-using-macros"·class="hover-link">
142 ····<i·class="ri-link-m"·aria-hidden="true"></i>142 ····<i·class="ri-link-m"·aria-hidden="true"></i>
143 ··</a>143 ··</a>
144 ··<span·class="text">Defining·and·Using·Macros</span>144 ··<span·class="text">Defining·and·Using·Macros</span>
145 </h2>145 </h2>
146 <p>A·macro·is·defined·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8815468369-1">(</span><span·class="n">Const</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Replacement</span><span·class="p"·data-group-id="8815468369-1">)</span><span·class="p">.</span><span·class="w"> 
147 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8815468369-2">(</span><span·class="n">Func</span><span·class="p"·data-group-id="8815468369-3">(</span><span·class="n">Var1</span><span·class="p">,</span><span·class=[·...·truncated·by·diffoscope;·len:·414,·SHA:·99e128aa27fdd5628f1148e477090de2fd08436712f570e3925d577c291cae68·...·]146 <p>A·macro·is·defined·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8267688096-1">(</span><span·class="n">Const</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·138,·SHA:·a760b8c1c8339d351bb3902ac399652edf9c04966bba1ac7b790f7c2ee452a75·...·]
 147 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8267688096-2">(</span><span·class="n">Func</span><span·class="p"·data-group-id="8267688096-3">(</span><span·class="n">Var1</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="n">VarN</span><span·class="p"·data-group-id="8267688096-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Replacement</span><span·class="p"·data-group-id="8267688096-2">)</span><span·class="p">.</span></code></pre><p>A·macro·definition·can·be·placed·anywhere·among·the·attributes·and·function
148 declarations·of·a·module,·but·the·definition·must·come·before·any·usage·of·the148 declarations·of·a·module,·but·the·definition·must·come·before·any·usage·of·the
149 macro.</p><p>If·a·macro·is·used·in·several·modules,·it·is·recommended·that·the·macro149 macro.</p><p>If·a·macro·is·used·in·several·modules,·it·is·recommended·that·the·macro
150 definition·is·placed·in·an·include·file.</p><p>A·macro·is·used·as·follows:</p><pre><code·class="text">?Const150 definition·is·placed·in·an·include·file.</p><p>A·macro·is·used·as·follows:</p><pre><code·class="text">?Const
151 ?Func(Arg1,...,ArgN)</code></pre><p>Macros·are·expanded·during·compilation.·A·simple·macro·<code·class="inline">?Const</code>·is·replaced·with151 ?Func(Arg1,...,ArgN)</code></pre><p>Macros·are·expanded·during·compilation.·A·simple·macro·<code·class="inline">?Const</code>·is·replaced·with
152 <code·class="inline">Replacement</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="1886435295-1">(</span><span·class="n">TIMEOUT</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">200</span><span·class="p"·data-group-id="1886435295-1">)</span><span·class="p">.</span><span·class="w">152 <code·class="inline">Replacement</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8386069599-1">(</span><span·class="n">TIMEOUT</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">200</span><span·class="p"·data-group-id="8386069599-1">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">153 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
154 </span><span·class="nf">call</span><span·class="p"·data-group-id="1886435295-2">(</span><span·class="n">Request</span><span·class="p"·data-group-id="1886435295-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">154 </span><span·class="nf">call</span><span·class="p"·data-group-id="8386069599-2">(</span><span·class="n">Request</span><span·class="p"·data-group-id="8386069599-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
155 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="1886435295-3">(</span><span·class="ss">refserver</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Request</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">TIMEOUT</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·295,·SHA:·ba9dd15ddc3ef611e72487f42866201d9f206de4d6fa2772bc51e1a2ad678751·...·]6-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">155 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="8386069599-3">(</span><span·class="ss">refserver</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Request</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">TIMEOUT</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·295,·SHA:·e1952d396ed547a5cd701fe65d451bc629d997b641431ee9906fbf1844570dca·...·]6-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
156 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="0067951446-2">(</span><span·class="ss">refserver</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Request</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">200</span><span·class="p"·data-group-id="0067951446-2">)</span><span·class="p">.</span></code></pre><p>A·macro·<code·class="inline">?Func(Arg1,...,ArgN)</code>·is·replaced·with·<code·class="inline">Replacement</code>,·where·all156 ····</span><span·class="nc">server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="4956089726-2">(</span><span·class="ss">refserver</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Request</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">200</span><span·class="p"·data-group-id="4956089726-2">)</span><span·class="p">.</span></code></pre><p>A·macro·<code·class="inline">?Func(Arg1,...,ArgN)</code>·is·replaced·with·<code·class="inline">Replacement</code>,·where·all
157 occurrences·of·a·variable·<code·class="inline">Var</code>·from·the·macro·definition·are·replaced·with·the157 occurrences·of·a·variable·<code·class="inline">Var</code>·from·the·macro·definition·are·replaced·with·the
158 corresponding·argument·<code·class="inline">Arg</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="3145549651-1">(</span><span·class="n">MACRO1</span><span·class="p"·data-group-id="3145549651-2">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="3145549651-2">)</span><sp[·...·truncated·by·diffoscope;·len:·434,·SHA:·fa6922d82db5cc665d0d5ca71d8fd1d1defd9cc2c8ed4b9a543b4fb493141b5d·...·]-1">)</span><span·class="p">.</span><span·class="w">158 corresponding·argument·<code·class="inline">Arg</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="1814797865-1">(</span><span·class="n">MACRO1</span><span·class="p"·data-group-id="1814797865-2">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="1814797865-2">)</span><sp[·...·truncated·by·diffoscope;·len:·434,·SHA:·5fad7d6818ce9653d0eaf3efca74a114bef45261aefdbc0e32cf7fbbe8bd8c5e·...·]-1">)</span><span·class="p">.</span><span·class="w">
159 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">159 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
160 </span><span·class="nf">bar</span><span·class="p"·data-group-id="3145549651-4">(</span><span·class="n">X</span><span·class="p"·data-group-id="3145549651-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">160 </span><span·class="nf">bar</span><span·class="p"·data-group-id="1814797865-4">(</span><span·class="n">X</span><span·class="p"·data-group-id="1814797865-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
161 ····</span><span·class="o">?</span><span·class="n">MACRO1</span><span·class="p"·data-group-id="3145549651-5">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b</span><span·class="p"·data-group-id="3145549651-5">)</span><span·class="p">,</span><span·class="w">161 ····</span><span·class="o">?</span><span·class="n">MACRO1</span><span·class="p"·data-group-id="1814797865-5">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b</span><span·class="p"·data-group-id="1814797865-5">)</span><span·class="p">,</span><span·class="w">
162 ····</span><span·class="o">?</span><span·class="n">MACRO1</span><span·class="p"·data-group-id="3145549651-6">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">123</span><span·class="p"·data-group-id="3145549651-6">)</span></code></pre><p>This·is·expanded·to:</p><pre><code·class="makeup·erlang"·translate[·...·truncated·by·diffoscope;·len:·151,·SHA:·edd239ef3588c922df82c453a2d6ad4d85599a38cab150a3f2c6d3d66e5a5141·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">162 ····</span><span·class="o">?</span><span·class="n">MACRO1</span><span·class="p"·data-group-id="1814797865-6">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">123</span><span·class="p"·data-group-id="1814797865-6">)</span></code></pre><p>This·is·expanded·to:</p><pre><code·class="makeup·erlang"·translate[·...·truncated·by·diffoscope;·len:·151,·SHA:·3693acee859df93d6754b456e51a3490bd632db886e1fd7ec3e9be9c278e8d36·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
163 ····</span><span·class="p"·data-group-id="7169346149-2">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="7169346149-2">}</span><span·class="p">,</span><span·class="w">163 ····</span><span·class="p"·data-group-id="0837120992-2">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="0837120992-2">}</span><span·class="p">,</span><span·class="w">
164 ····</span><span·class="p"·data-group-id="7169346149-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="n">X</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">123</span><span·class="p"·data-group-id="7169346149-3">}</span><span·class="p">.</span></code></pre><p>It·is·good·programming·practice,·but·not·mandatory,·to·ensure·that·a·macro164 ····</span><span·class="p"·data-group-id="0837120992-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="n">X</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">123</span><span·class="p"·data-group-id="0837120992-3">}</span><span·class="p">.</span></code></pre><p>It·is·good·programming·practice,·but·not·mandatory,·to·ensure·that·a·macro
165 definition·is·a·valid·Erlang·syntactic·form.</p><p>To·view·the·result·of·macro·expansion,·a·module·can·be·compiled·with·the·<code·class="inline">'P'</code>165 definition·is·a·valid·Erlang·syntactic·form.</p><p>To·view·the·result·of·macro·expansion,·a·module·can·be·compiled·with·the·<code·class="inline">'P'</code>
166 option.·<code·class="inline">compile:file(File,·['P'])</code>.·This·produces·a·listing·of·the·parsed·code166 option.·<code·class="inline">compile:file(File,·['P'])</code>.·This·produces·a·listing·of·the·parsed·code
167 after·preprocessing·and·parse·transforms,·in·the·file·<code·class="inline">File.P</code>.</p><h2·id="predefined-macros"·class="section-heading">167 after·preprocessing·and·parse·transforms,·in·the·file·<code·class="inline">File.P</code>.</p><h2·id="predefined-macros"·class="section-heading">
168 ··<a·href="#predefined-macros"·class="hover-link">168 ··<a·href="#predefined-macros"·class="hover-link">
169 ····<i·class="ri-link-m"·aria-hidden="true"></i>169 ····<i·class="ri-link-m"·aria-hidden="true"></i>
170 ··</a>170 ··</a>
171 ··<span·class="text">Predefined·Macros</span>171 ··<span·class="text">Predefined·Macros</span>
Offset 182, 29 lines modifiedOffset 182, 29 lines modified
182 ····<i·class="ri-link-m"·aria-hidden="true"></i>182 ····<i·class="ri-link-m"·aria-hidden="true"></i>
183 ··</a>183 ··</a>
184 ··<span·class="text">Macros·Overloading</span>184 ··<span·class="text">Macros·Overloading</span>
185 </h2>185 </h2>
186 <p>It·is·possible·to·overload·macros,·except·for·predefined·macros.·An·overloaded186 <p>It·is·possible·to·overload·macros,·except·for·predefined·macros.·An·overloaded
187 macro·has·more·than·one·definition,·each·with·a·different·number·of·arguments.</p><blockquote><h4·class="info">Change</h4><p>Support·for·overloading·of·macros·was·added·in·Erlang·5.7.5/OTP·R13B04.</p></blockquote><p>A·macro·<code·class="inline">?Func(Arg1,...,ArgN)</code>·with·a·(possibly·empty)·list·of·arguments·results187 macro·has·more·than·one·definition,·each·with·a·different·number·of·arguments.</p><blockquote><h4·class="info">Change</h4><p>Support·for·overloading·of·macros·was·added·in·Erlang·5.7.5/OTP·R13B04.</p></blockquote><p>A·macro·<code·class="inline">?Func(Arg1,...,ArgN)</code>·with·a·(possibly·empty)·list·of·arguments·results
188 in·an·error·message·if·there·is·at·least·one·definition·of·<code·class="inline">Func</code>·with188 in·an·error·message·if·there·is·at·least·one·definition·of·<code·class="inline">Func</code>·with
189 arguments,·but·none·with·N·arguments.</p><p>Assuming·these·definitions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="3540103197-1">(</span><span·class="n">F0</span><span·class="p"·data-group-id="3540103197-2">(</span><span·class="p"·data-group-id="3540103197-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">c</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·b4491a1851d7baf8fd03f48863331f2171457b1935b3655b18381c0db8633826·...·]-1">)</span><span·class="p">.</span><span·class="w">189 arguments,·but·none·with·N·arguments.</p><p>Assuming·these·definitions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="2448119510-1">(</span><span·class="n">F0</span><span·class="p"·data-group-id="2448119510-2">(</span><span·class="p"·data-group-id="2448119510-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">c</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·28843aa638387c564510dfd2f50d8a8c4568d18953cc7862dce506c0b578876c·...·]-1">)</span><span·class="p">.</span><span·class="w">
190 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="3540103197-3">(</span><span·class="n">F1</span><span·class="p"·data-group-id="3540103197-4">(</span><span·class="n">A</span><span·class="p"·data-group-id="3540103197-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·ee1c924b9bcb83de34c6703bd53e9d229ac5fe3a467e7299a33c1a017ae4700d·...·]-3">)</span><span·class="p">.</span><span·class="w">190 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="2448119510-3">(</span><span·class="n">F1</span><span·class="p"·data-group-id="2448119510-4">(</span><span·class="n">A</span><span·class="p"·data-group-id="2448119510-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·c2872033cd916b8037b559a1085934c871fbd67a0f0c403662bd0765fc1e365b·...·]-3">)</span><span·class="p">.</span><span·class="w">
191 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="3540103197-5">(</span><span·class="n">C</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">m</span><span·class="p">:</span><span·class="ss">f</span><span·class="p"·data-group-id="3540103197-5">)</span><span·class="p">.</span></code></pr[·...·truncated·by·diffoscope;·len:·204,·SHA:·79a8d1b5f1b84f5f1475b4189a97f590b2f8683997acaa0ba4d07964e905bb10·...·]8-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">191 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="2448119510-5">(</span><span·class="n">C</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">m</span><span·class="p">:</span><span·class="ss">f</span><span·class="p"·data-group-id="2448119510-5">)</span><span·class="p">.</span></code></pr[·...·truncated·by·diffoscope;·len:·204,·SHA:·46333fa9e5025566e9cd68a89e29015edadc3e0b650cd546881aa5f4f8d52a34·...·]8-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
192 ····</span><span·class="o">?</span><span·class="n">F0</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·No,·an·empty·list·of·arguments·expected.</span><span·class="w">192 ····</span><span·class="o">?</span><span·class="n">F0</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·No,·an·empty·list·of·arguments·expected.</span><span·class="w">
  
193 </span><span·class="nf">f1</span><span·class="p"·data-group-id="4350005128-2">(</span><span·class="n">A</span><span·class="p"·data-group-id="4350005128-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 </span><span·class="nf">f1</span><span·class="p"·data-group-id="6115082458-2">(</span><span·class="n">A</span><span·class="p"·data-group-id="6115082458-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 ····</span><span·class="o">?</span><span·class="n">F1</span><span·class="p"·data-group-id="4350005128-3">(</span><span·class="n">A</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p"·data-group-id="4350005128-3">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·No,·exactly·one·argument·expected.</span></code></pre><p>On·the·other·hand,</p><pre><code·class="text">f()·-&gt;194 ····</span><span·class="o">?</span><span·class="n">F1</span><span·class="p"·data-group-id="6115082458-3">(</span><span·class="n">A</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p"·data-group-id="6115082458-3">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·No,·exactly·one·argument·expected.</span></code></pre><p>On·the·other·hand,</p><pre><code·class="text">f()·-&gt;
195 ····?C().</code></pre><p>is·expanded·to</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="5747650504-1">(</span><span·class="p"·data-group-id="5747650504-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">195 ····?C().</code></pre><p>is·expanded·to</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="8368777875-1">(</span><span·class="p"·data-group-id="8368777875-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
196 ····</span><span·class="nc">m</span><span·class="p">:</span><span·class="nf">f</span><span·class="p"·data-group-id="5747650504-2">(</span><span·class="p"·data-group-id="5747650504-2">)</span><span·class="p">.</span></code></pre><h2·id="removing-a-macro-definition"·class="section-heading">196 ····</span><span·class="nc">m</span><span·class="p">:</span><span·class="nf">f</span><span·class="p"·data-group-id="8368777875-2">(</span><span·class="p"·data-group-id="8368777875-2">)</span><span·class="p">.</span></code></pre><h2·id="removing-a-macro-definition"·class="section-heading">
197 ··<a·href="#removing-a-macro-definition"·class="hover-link">197 ··<a·href="#removing-a-macro-definition"·class="hover-link">
198 ····<i·class="ri-link-m"·aria-hidden="true"></i>198 ····<i·class="ri-link-m"·aria-hidden="true"></i>
199 ··</a>199 ··</a>
200 ··<span·class="text">Removing·a·macro·definition</span>200 ··<span·class="text">Removing·a·macro·definition</span>
201 </h2>201 </h2>
202 <p>A·definition·of·macro·can·be·removed·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">undef</span><span·class="p"·data-group-id="0899522375-1">(</span><span·class="n">Macro</span><span·class="p"·data-group-id="0899522375-1">)</span><span·class="p">.</span></code></pre><h2·id="conditional-compilation"·class="section-heading">202 <p>A·definition·of·macro·can·be·removed·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">undef</span><span·class="p"·data-group-id="8070407388-1">(</span><span·class="n">Macro</span><span·class="p"·data-group-id="8070407388-1">)</span><span·class="p">.</span></code></pre><h2·id="conditional-compilation"·class="section-heading">
203 ··<a·href="#conditional-compilation"·class="hover-link">203 ··<a·href="#conditional-compilation"·class="hover-link">
204 ····<i·class="ri-link-m"·aria-hidden="true"></i>204 ····<i·class="ri-link-m"·aria-hidden="true"></i>
205 ··</a>205 ··</a>
206 ··<span·class="text">Conditional·Compilation</span>206 ··<span·class="text">Conditional·Compilation</span>
207 </h2>207 </h2>
208 <p>The·following·macro·directives·support·conditional·compilation:</p><ul><li><p><strong><code·class="inline">-ifdef(Macro).</code></strong>·-·Evaluate·the·following·lines·only·if·<code·class="inline">Macro</code>·is208 <p>The·following·macro·directives·support·conditional·compilation:</p><ul><li><p><strong><code·class="inline">-ifdef(Macro).</code></strong>·-·Evaluate·the·following·lines·only·if·<code·class="inline">Macro</code>·is
209 defined.</p></li><li><p><strong><code·class="inline">-ifndef(Macro).</code></strong>·-·Evaluate·the·following·lines·only·if·<code·class="inline">Macro</code>·is·not209 defined.</p></li><li><p><strong><code·class="inline">-ifndef(Macro).</code></strong>·-·Evaluate·the·following·lines·only·if·<code·class="inline">Macro</code>·is·not
Offset 216, 43 lines modifiedOffset 216, 43 lines modified
216 true,·and·the·<code·class="inline">Condition</code>·evaluates·to·true,·the·lines·following·the·<code·class="inline">elif</code>216 true,·and·the·<code·class="inline">Condition</code>·evaluates·to·true,·the·lines·following·the·<code·class="inline">elif</code>
217 are·evaluated·instead.</p></li><li><p><strong><code·class="inline">-endif.</code></strong>·-·Specifies·the·end·of·a·series·of·control·flow·directives.</p></li></ul><blockquote><h4·class="info">Note</h4><p>Macro·directives·cannot·be·used·inside·functions.</p></blockquote><p>Syntactically,·the·<code·class="inline">Condition</code>·in·<code·class="inline">if</code>·and·<code·class="inline">elif</code>·must·be·a217 are·evaluated·instead.</p></li><li><p><strong><code·class="inline">-endif.</code></strong>·-·Specifies·the·end·of·a·series·of·control·flow·directives.</p></li></ul><blockquote><h4·class="info">Note</h4><p>Macro·directives·cannot·be·used·inside·functions.</p></blockquote><p>Syntactically,·the·<code·class="inline">Condition</code>·in·<code·class="inline">if</code>·and·<code·class="inline">elif</code>·must·be·a
218 <a·href="expressions.html#guard-expressions">guard·expression</a>.·Other·constructs·(such·as218 <a·href="expressions.html#guard-expressions">guard·expression</a>.·Other·constructs·(such·as
219 a·<code·class="inline">case</code>·expression)·result·in·a·compilation·error.</p><p>As·opposed·to·the·standard·guard·expressions,·an·expression·in·an·<code·class="inline">if</code>·and219 a·<code·class="inline">case</code>·expression)·result·in·a·compilation·error.</p><p>As·opposed·to·the·standard·guard·expressions,·an·expression·in·an·<code·class="inline">if</code>·and
220 <code·class="inline">elif</code>·also·supports·calling·the·psuedo-function·<code·class="inline">defined(Name)</code>,·which·tests220 <code·class="inline">elif</code>·also·supports·calling·the·psuedo-function·<code·class="inline">defined(Name)</code>,·which·tests
221 whether·the·<code·class="inline">Name</code>·argument·is·the·name·of·a·previously·defined·macro.221 whether·the·<code·class="inline">Name</code>·argument·is·the·name·of·a·previously·defined·macro.
222 <code·class="inline">defined(Name)</code>·evaluates·to·<code·class="inline">true</code>·if·the·macro·is·defined·and·<code·class="inline">false</code>222 <code·class="inline">defined(Name)</code>·evaluates·to·<code·class="inline">true</code>·if·the·macro·is·defined·and·<code·class="inline">false</code>
223 otherwise.·An·attempt·to·call·other·functions·results·in·a·compilation·error.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8889647093-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="8889647093-1">)</span><span·class="p">.</span><span·class="w">223 otherwise.·An·attempt·to·call·other·functions·results·in·a·compilation·error.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0645173781-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="0645173781-1">)</span><span·class="p">.</span><span·class="w">
224 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">224 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
225 </span><span·class="w">225 </span><span·class="w">
226 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="8889647093-2">(</span><span·class="ss">debug</span><span·class="p"·data-group-id="8889647093-2">)</span><span·class="p">.</span><span·class="w">226 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="0645173781-2">(</span><span·class="ss">debug</span><span·class="p"·data-group-id="0645173781-2">)</span><span·class="p">.</span><span·class="w">
227 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8889647093-3">(</span><span·class="n">LOG</span><span·class="p"·data-group-id="8889647093-4">(</span><span·class="n">X</span><span·class="p"·data-group-id="8889647093-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">io</span><spa[·...·truncated·by·diffoscope;·len:·740,·SHA:·81c41d5e11fc1c3307213b8c128e718481d2442442444a5f08c31a9ba46a1a62·...·]-3">)</span><span·class="p">.</span><span·class="w">227 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="0645173781-3">(</span><span·class="n">LOG</span><span·class="p"·data-group-id="0645173781-4">(</span><span·class="n">X</span><span·class="p"·data-group-id="0645173781-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">io</span><spa[·...·truncated·by·diffoscope;·len:·740,·SHA:·431888b84a55be6a8194ce8237b08dd687675a5e3e14443c3766407140732e72·...·]-3">)</span><span·class="p">.</span><span·class="w">
228 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">228 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
229 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8889647093-7">(</span><span·class="n">LOG</span><span·class="p"·data-group-id="8889647093-8">(</span><span·class="n">X</span><span·class="p"·data-group-id="8889647093-8">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·1fe006527152b15adfedb1efad71cf1930277f7c98ec7e396c6764bcce2b0999·...·]-7">)</span><span·class="p">.</span><span·class="w">229 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="0645173781-7">(</span><span·class="n">LOG</span><span·class="p"·data-group-id="0645173781-8">(</span><span·class="n">X</span><span·class="p"·data-group-id="0645173781-8">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·68697020f38b070eee04921b60bfb0cd1d6b18e803ac479e207e5b1eea483b1c·...·]-7">)</span><span·class="p">.</span><span·class="w">
230 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">230 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
  
231 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>When·trace·output·is·desired,·<code·class="inline">debug</code>·is·to·be·defined·when·the·module·<code·class="inline">m</code>·is231 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>When·trace·output·is·desired,·<code·class="inline">debug</code>·is·to·be·defined·when·the·module·<code·class="inline">m</code>·is
232 compiled:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erlc·-Ddebug·m.erl</span><span·class="w">232 compiled:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erlc·-Ddebug·m.erl</span><span·class="w">
  
233 </span><span·class="ow">or</span><span·class="w">233 </span><span·class="ow">or</span><span·class="w">
  
234 </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">c</span><span·class="p"·data-group-id="3585547121-1">(</span><span·class="ss">m</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3585547121-2">{</span><span·class="ss">d</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">debug</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·3c42d7fb62bfccb9396b20e9f45daedbd38a9d1a701b2ea761f5669b033931de·...·]-1">)</span><span·class="p">.</span><span·class="w">234 </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">c</span><span·class="p"·data-group-id="4248204518-1">(</span><span·class="ss">m</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4248204518-2">{</span><span·class="ss">d</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">debug</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·aca205baecec946fb02466e7f5ad2cf5ce47df3d3026cc33b2f06fabb22cbf02·...·]-1">)</span><span·class="p">.</span><span·class="w">
235 </span><span·class="p"·data-group-id="3585547121-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">m</span><span·class="p"·data-group-id="3585547121-3">}</span></code></pre><p><code·class="inline">?LOG(Arg)</code>·is·then·expanded·to·a·call·to·<a·href="../../lib/stdlib-6.0.1/doc/html/io.html#format/2"><code·class="inline">io:format/2</code></a>·and·provide·the·user235 </span><span·class="p"·data-group-id="4248204518-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">m</span><span·class="p"·data-group-id="4248204518-3">}</span></code></pre><p><code·class="inline">?LOG(Arg)</code>·is·then·expanded·to·a·call·to·<a·href="../../lib/stdlib-6.0.1/doc/html/io.html#format/2"><code·class="inline">io:format/2</code></a>·and·provide·the·user
236 with·some·simple·trace·output.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1482207567-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="1482207567-1">)</span><span·class="w">236 with·some·simple·trace·output.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2999949756-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="2999949756-1">)</span><span·class="w">
237 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">237 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
238 </span><span·class="p">-</span><span·class="na">if</span><span·class="p"·data-group-id="1482207567-2">(</span><span·class="o">?</span><span·class="n">OTP_RELEASE</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">25</span><span·class="p"·data-group-id="1482207567-2">)</span><span·class="p">.</span><span·class="w">238 </span><span·class="p">-</span><span·class="na">if</span><span·class="p"·data-group-id="2999949756-2">(</span><span·class="o">?</span><span·class="n">OTP_RELEASE</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">25</span><span·class="p"·data-group-id="2999949756-2">)</span><span·class="p">.</span><span·class="w">
239 </span><span·class="c1">%%·Code·that·will·work·in·OTP·25·or·higher</span><span·class="w">239 </span><span·class="c1">%%·Code·that·will·work·in·OTP·25·or·higher</span><span·class="w">
240 </span><span·class="p">-</span><span·class="na">elif</span><span·class="p"·data-group-id="1482207567-3">(</span><span·class="o">?</span><span·class="n">OTP_RELEASE</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">26</span><span·class="p"·data-group-id="1482207567-3">)</span><span·class="p">.</span><span·class="w">240 </span><span·class="p">-</span><span·class="na">elif</span><span·class="p"·data-group-id="2999949756-3">(</span><span·class="o">?</span><span·class="n">OTP_RELEASE</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">26</span><span·class="p"·data-group-id="2999949756-3">)</span><span·class="p">.</span><span·class="w">
241 </span><span·class="c1">%%·Code·that·will·work·in·OTP·26·or·higher</span><span·class="w">241 </span><span·class="c1">%%·Code·that·will·work·in·OTP·26·or·higher</span><span·class="w">
242 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">242 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
243 </span><span·class="c1">%%·Code·that·will·work·in·OTP·24·or·lower.</span><span·class="w">243 </span><span·class="c1">%%·Code·that·will·work·in·OTP·24·or·lower.</span><span·class="w">
244 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">244 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
245 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>This·code·uses·the·<code·class="inline">OTP_RELEASE</code>·macro·to·conditionally·select·code·depending·on245 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>This·code·uses·the·<code·class="inline">OTP_RELEASE</code>·macro·to·conditionally·select·code·depending·on
246 release.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6056638515-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="6056638515-1">)</span><span·class="w">246 release.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0772278436-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="0772278436-1">)</span><span·class="w">
247 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">247 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
248 </span><span·class="p">-</span><span·class="na">if</span><span·class="p"·data-group-id="6056638515-2">(</span><span·class="o">?</span><span·class="n">OTP_RELEASE</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">26</span><span·class="w">·</span><span·class="ow">andalso</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·212,·SHA:·7a9d289c942428449780394a46cb446cdbaeceef3c36254fc5aa1a111eba60a0·...·]-2">)</span><span·class="p">.</span><span·class="w">248 </span><span·class="p">-</span><span·class="na">if</span><span·class="p"·data-group-id="0772278436-2">(</span><span·class="o">?</span><span·class="n">OTP_RELEASE</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">26</span><span·class="w">·</span><span·class="ow">andalso</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·212,·SHA:·2f2d03319e151b78c098a10199d43805d2f455c9b8ab1343f07506a50e236246·...·]-2">)</span><span·class="p">.</span><span·class="w">
249 </span><span·class="c1">%%·Debugging·code·that·requires·OTP·26·or·later.</span><span·class="w">249 </span><span·class="c1">%%·Debugging·code·that·requires·OTP·26·or·later.</span><span·class="w">
250 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">250 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
Max diff block lines reached; 18859/60268 bytes (31.29%) of diff not shown.
736 B
html2text {}
Max HTML report size reached
36.2 KB
./usr/share/doc/erlang-doc/html/doc/system/maps.html
    
Offset 148, 16 lines modifiedOffset 148, 16 lines modified
148 single·function·that·constructs·the·map·using·the·map·syntax·and·always·use148 single·function·that·constructs·the·map·using·the·map·syntax·and·always·use
149 it.</p></li><li><p>Always·update·the·map·using·the·<code·class="inline">:=</code>·operator·(that·is,·requiring·that·an149 it.</p></li><li><p>Always·update·the·map·using·the·<code·class="inline">:=</code>·operator·(that·is,·requiring·that·an
150 element·with·that·key·already·exists).·The·<code·class="inline">:=</code>·operator·is·slightly·more150 element·with·that·key·already·exists).·The·<code·class="inline">:=</code>·operator·is·slightly·more
151 efficient,·and·it·helps·catching·mispellings·of·keys.</p></li><li><p>Whenever·possible,·match·multiple·map·elements·at·once.</p></li><li><p>Whenever·possible,·update·multiple·map·elements·at·once.</p></li><li><p>Avoid·default·values·and·the·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>·function.·If·there·are·default151 efficient,·and·it·helps·catching·mispellings·of·keys.</p></li><li><p>Whenever·possible,·match·multiple·map·elements·at·once.</p></li><li><p>Whenever·possible,·update·multiple·map·elements·at·once.</p></li><li><p>Avoid·default·values·and·the·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>·function.·If·there·are·default
152 values,·sharing·of·keys·between·different·instances·of·the·map·will·be·less152 values,·sharing·of·keys·between·different·instances·of·the·map·will·be·less
153 effective,·and·it·is·not·possible·to·match·multiple·elements·having·default153 effective,·and·it·is·not·possible·to·match·multiple·elements·having·default
154 values·in·one·go.</p></li><li><p>To·avoid·having·to·deal·with·a·map·that·may·lack·some·keys,·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#merge/2"><code·class="inline">maps:merge/2</code></a>·can154 values·in·one·go.</p></li><li><p>To·avoid·having·to·deal·with·a·map·that·may·lack·some·keys,·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#merge/2"><code·class="inline">maps:merge/2</code></a>·can
155 efficiently·add·multiple·default·values.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">DefaultMap</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3678754104-1">#{</span><span·class="ss">shoe_size</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">editor</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·126,·SHA:·2aff4f477e31e156f54aef58490d7f833c1d32f95311076e348ffe7228e4970b·...·]-1">}</span><span·class="p">,</span><span·class="w">155 efficiently·add·multiple·default·values.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">DefaultMap</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9687398512-1">#{</span><span·class="ss">shoe_size</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">editor</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·126,·SHA:·899a3aa23ed6f7cac0c02d29afdd32aa5b92ffbd18e26477b8b46fd2fb3df421·...·]-1">}</span><span·class="p">,</span><span·class="w">
156 </span><span·class="n">MapWithDefaultsApplied</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">merge</span><span·class="p"·data-group-id="3678754104-2">(</span><span·class="n">DefaultMap</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OtherMap</span><span·class="p"·data-group-id="3678754104-2">)</span></code></pre></li></ul><h2·id="using-maps-as-dictionaries"·class="section-heading">156 </span><span·class="n">MapWithDefaultsApplied</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">merge</span><span·class="p"·data-group-id="9687398512-2">(</span><span·class="n">DefaultMap</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OtherMap</span><span·class="p"·data-group-id="9687398512-2">)</span></code></pre></li></ul><h2·id="using-maps-as-dictionaries"·class="section-heading">
157 ··<a·href="#using-maps-as-dictionaries"·class="hover-link">157 ··<a·href="#using-maps-as-dictionaries"·class="hover-link">
158 ····<i·class="ri-link-m"·aria-hidden="true"></i>158 ····<i·class="ri-link-m"·aria-hidden="true"></i>
159 ··</a>159 ··</a>
160 ··<span·class="text">Using·Maps·as·Dictionaries</span>160 ··<span·class="text">Using·Maps·as·Dictionaries</span>
161 </h2>161 </h2>
162 <p>Using·a·map·as·a·dictionary·implies·the·following·usage·pattern:</p><ul><li>Keys·are·usually·variables·not·known·at·compile-time.</li><li>There·can·be·any·number·of·elements·in·the·map.</li><li>Usually,·no·more·than·one·element·is·looked·up·or·updated·at·once.</li></ul><p>Given·that·usage·pattern,·the·difference·in·performance·between·using·the·map162 <p>Using·a·map·as·a·dictionary·implies·the·following·usage·pattern:</p><ul><li>Keys·are·usually·variables·not·known·at·compile-time.</li><li>There·can·be·any·number·of·elements·in·the·map.</li><li>Usually,·no·more·than·one·element·is·looked·up·or·updated·at·once.</li></ul><p>Given·that·usage·pattern,·the·difference·in·performance·between·using·the·map
163 syntax·and·the·maps·module·is·usually·small.·Therefore,·which·one·to·use·is163 syntax·and·the·maps·module·is·usually·small.·Therefore,·which·one·to·use·is
Offset 167, 18 lines modifiedOffset 167, 18 lines modified
167 choice.</li></ul><h2·id="using-maps-as-sets"·class="section-heading">167 choice.</li></ul><h2·id="using-maps-as-sets"·class="section-heading">
168 ··<a·href="#using-maps-as-sets"·class="hover-link">168 ··<a·href="#using-maps-as-sets"·class="hover-link">
169 ····<i·class="ri-link-m"·aria-hidden="true"></i>169 ····<i·class="ri-link-m"·aria-hidden="true"></i>
170 ··</a>170 ··</a>
171 ··<span·class="text">Using·Maps·as·Sets</span>171 ··<span·class="text">Using·Maps·as·Sets</span>
172 </h2>172 </h2>
173 <p>Starting·in·OTP·24,·the·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html"><code·class="inline">sets</code></a>·module·has·an·option·to·represent·sets·as·maps.173 <p>Starting·in·OTP·24,·the·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html"><code·class="inline">sets</code></a>·module·has·an·option·to·represent·sets·as·maps.
174 Examples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="3743085038-1">(</span><span·class="p"·data-group-id="3743085038-2">[</span><span·class="p"·data-group-id="3743085038-3">{</span><span·class="ss">version</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3743085038-3">}</[·...·truncated·by·diffoscope;·len:·99,·SHA:·f51523bf9440bb373705b34ea94174f4db103a23d2f0e73835f79081d6fa2dbf·...·]-1">)</span><span·class="p">.</span><span·class="w">174 Examples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="4717294839-1">(</span><span·class="p"·data-group-id="4717294839-2">[</span><span·class="p"·data-group-id="4717294839-3">{</span><span·class="ss">version</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4717294839-3">}</[·...·truncated·by·diffoscope;·len:·99,·SHA:·477a96fb8722b7b8ac2f5c56a60a4c1a9c34790f24a273070bd35c43f878fd47·...·]-1">)</span><span·class="p">.</span><span·class="w">
175 </span><span·class="p"·data-group-id="3743085038-4">#{</span><span·class="p"·data-group-id="3743085038-4">}</span><span·class="gp·unselectable">175 </span><span·class="p"·data-group-id="4717294839-4">#{</span><span·class="p"·data-group-id="4717294839-4">}</span><span·class="gp·unselectable">
176 2&gt;·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="3743085038-5">(</span><span·class="p"·data-group-id="3743085038-6">[</span><span·class="ss">x</span><span·class="p">,</span><span·class="ss">y</span><span·class="p">,</span><span·class="ss">z</span><span·class="p"·data-group-id="3743085038-6">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3743085038-7">[</span><span·class="p"·data-group-id="3743085038-8">{</span><span·class="ss">version</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3743085038-8">}</span><span·class="p"·data-group-id="3743085038-7">]</span><span·class="p"·data-group-id="3743085038-5">)</span><span·class="p">.</span><span·class="w"> 
177 </span><span·class="p"·data-group-id="3743085038-9">#{</span><span·class="ss">x</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3743085038-10">[</span><span·class="p"·data-group-id="374308503[·...·truncated·by·diffoscope;·len:·655,·SHA:·615f9598a43ec89ccf728d39d2372a0dd733342fadf3d72451f0ce06923d208d·...·]176 2&gt;·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="4717294839-5">(</span><span·class="p"·data-group-id="4717294839-6">[</span><span·class="ss">x</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·557,·SHA:·da4af69a7f1be6b8c8056655e65f6c4b674324fdcaec6f122001aaccb50519ed·...·]
 177 </span><span·class="p"·data-group-id="4717294839-9">#{</span><span·class="ss">x</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4717294839-10">[</span><span·class="p"·data-group-id="4717294839-10">]</span><span·class="p">,</span><span·class="ss">y</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4717294839-11">[</span><span·class="p"·data-group-id="4717294839-11">]</span><span·class="p">,</span><span·class="ss">z</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4717294839-12">[</span><span·class="p"·data-group-id="4717294839-12">]</span><span·class="p"·data-group-id="4717294839-9">}</span></code></pre><p><code·class="inline">sets</code>·backed·by·maps·is·generally·the·most·efficient·set·representation,·with·a
178 few·possible·exceptions:</p><ul><li><a·href="../../lib/stdlib-6.0.1/doc/html/ordsets.html#intersection/2"><code·class="inline">ordsets:intersection/2</code></a>·can·be·more·efficient·than·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#intersection/2"><code·class="inline">sets:intersection/2</code></a>.·If178 few·possible·exceptions:</p><ul><li><a·href="../../lib/stdlib-6.0.1/doc/html/ordsets.html#intersection/2"><code·class="inline">ordsets:intersection/2</code></a>·can·be·more·efficient·than·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#intersection/2"><code·class="inline">sets:intersection/2</code></a>.·If
179 the·intersection·operation·is·frequently·used·and·operations·that·operate·on·a179 the·intersection·operation·is·frequently·used·and·operations·that·operate·on·a
180 single·element·in·a·set·(such·as·<code·class="inline">is_element/2</code>)·are·avoided,·<a·href="../../lib/stdlib-6.0.1/doc/html/ordsets.html"><code·class="inline">ordsets</code></a>·can180 single·element·in·a·set·(such·as·<code·class="inline">is_element/2</code>)·are·avoided,·<a·href="../../lib/stdlib-6.0.1/doc/html/ordsets.html"><code·class="inline">ordsets</code></a>·can
181 be·a·better·choice·than·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html"><code·class="inline">sets</code></a>.</li><li>If·the·intersection·operation·is·frequently·used·and·operations·that·operate181 be·a·better·choice·than·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html"><code·class="inline">sets</code></a>.</li><li>If·the·intersection·operation·is·frequently·used·and·operations·that·operate
182 on·a·single·element·in·a·set·(such·as·<code·class="inline">is_element/2</code>)·must·also·be·efficient,182 on·a·single·element·in·a·set·(such·as·<code·class="inline">is_element/2</code>)·must·also·be·efficient,
183 <a·href="../../lib/stdlib-6.0.1/doc/html/gb_sets.html"><code·class="inline">gb_sets</code></a>·can·potentially·be·a·better·choice·than·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html"><code·class="inline">sets</code></a>.</li><li>If·the·elements·of·the·set·are·integers·in·a·fairly·compact·range,·the·set·can183 <a·href="../../lib/stdlib-6.0.1/doc/html/gb_sets.html"><code·class="inline">gb_sets</code></a>·can·potentially·be·a·better·choice·than·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html"><code·class="inline">sets</code></a>.</li><li>If·the·elements·of·the·set·are·integers·in·a·fairly·compact·range,·the·set·can
184 be·represented·as·an·integer·where·each·bit·represents·an·element·in·the·set.184 be·represented·as·an·integer·where·each·bit·represents·an·element·in·the·set.
Offset 203, 18 lines modifiedOffset 203, 18 lines modified
203 for·the·runtime·system).</p></li><li><p><strong>N</strong>·-·The·number·of·elements·in·the·map.</p></li><li><p><strong>Keys</strong>·-·A·tuple·with·keys·of·the·map:·<code·class="inline">{Key1,...,KeyN}</code>.·The·keys·are203 for·the·runtime·system).</p></li><li><p><strong>N</strong>·-·The·number·of·elements·in·the·map.</p></li><li><p><strong>Keys</strong>·-·A·tuple·with·keys·of·the·map:·<code·class="inline">{Key1,...,KeyN}</code>.·The·keys·are
204 sorted.</p></li><li><p><strong>Value1</strong>·-·The·value·corresponding·to·the·first·key·in·the·key·tuple.</p></li><li><p><strong>ValueN</strong>·-·The·value·corresponding·to·the·last·key·in·the·key·tuple.</p></li></ul><p>As·an·example,·let·us·look·at·how·the·map·<code·class="inline">#{a·=&gt;·foo,·z·=&gt;·bar}</code>·is204 sorted.</p></li><li><p><strong>Value1</strong>·-·The·value·corresponding·to·the·first·key·in·the·key·tuple.</p></li><li><p><strong>ValueN</strong>·-·The·value·corresponding·to·the·last·key·in·the·key·tuple.</p></li></ul><p>As·an·example,·let·us·look·at·how·the·map·<code·class="inline">#{a·=&gt;·foo,·z·=&gt;·bar}</code>·is
205 represented:</p><table><thead><tr><th·style="text-align:·center;">0</th><th·style="text-align:·left;">1</th><th·style="text-align:·center;">2</th><th·style="text-align:·center;">3</th><th·style="text-align:·left;">4</th></tr></thead><tbody><tr><td·style="text-align:·center;"><strong>FLATMAP</strong></td><td·style="text-align:·left;"><em>2</em></td><td·style="text-align:·center;"><code·class="inline">{a,z}</code></td><td·style="text-align:·center;"><code·class="inline">foo</code></td><td·style="text-align:·left;"><code·class="inline">bar</code></td></tr></tbody></table><p><em>Table:·#{a·=&gt;·foo,·z·=&gt;·bar}</em></p><p>Let·us·update·the·map:·<code·class="inline">M#{q·=&gt;·baz}</code>.·The·map·now·looks·like·this:</p><table><thead><tr><th·style="text-align:·center;">0</th><th·style="text-align:·left;">1</th><th·style="text-align:·center;">2</th><th·style="text-align:·center;">3</th><th·style="text-align:·center;">4</th><th·style="text-align:·center;">5</th></tr></thead><tbody><tr><td·style="text-align:·center;"><strong>FLATMAP</strong></td><td·style="text-align:·left;"><em>3</em></td><td·style="text-align:·center;"><code·class="inline">{a,q,z}</code></td><td·style="text-align:·center;"><code·class="inline">foo</code></td><td·style="text-align:·center;"><code·class="inline">baz</code></td><td·style="text-align:·center;"><code·class="inline">bar</code></td></tr></tbody></table><p><em>Table:·#{a·=&gt;·foo,·q·=&gt;·baz,·z·=&gt;·bar}</em></p><p>Finally,·change·the·value·of·one·element:·<code·class="inline">M#{z·:=·bird}</code>.·The·map·now·looks205 represented:</p><table><thead><tr><th·style="text-align:·center;">0</th><th·style="text-align:·left;">1</th><th·style="text-align:·center;">2</th><th·style="text-align:·center;">3</th><th·style="text-align:·left;">4</th></tr></thead><tbody><tr><td·style="text-align:·center;"><strong>FLATMAP</strong></td><td·style="text-align:·left;"><em>2</em></td><td·style="text-align:·center;"><code·class="inline">{a,z}</code></td><td·style="text-align:·center;"><code·class="inline">foo</code></td><td·style="text-align:·left;"><code·class="inline">bar</code></td></tr></tbody></table><p><em>Table:·#{a·=&gt;·foo,·z·=&gt;·bar}</em></p><p>Let·us·update·the·map:·<code·class="inline">M#{q·=&gt;·baz}</code>.·The·map·now·looks·like·this:</p><table><thead><tr><th·style="text-align:·center;">0</th><th·style="text-align:·left;">1</th><th·style="text-align:·center;">2</th><th·style="text-align:·center;">3</th><th·style="text-align:·center;">4</th><th·style="text-align:·center;">5</th></tr></thead><tbody><tr><td·style="text-align:·center;"><strong>FLATMAP</strong></td><td·style="text-align:·left;"><em>3</em></td><td·style="text-align:·center;"><code·class="inline">{a,q,z}</code></td><td·style="text-align:·center;"><code·class="inline">foo</code></td><td·style="text-align:·center;"><code·class="inline">baz</code></td><td·style="text-align:·center;"><code·class="inline">bar</code></td></tr></tbody></table><p><em>Table:·#{a·=&gt;·foo,·q·=&gt;·baz,·z·=&gt;·bar}</em></p><p>Finally,·change·the·value·of·one·element:·<code·class="inline">M#{z·:=·bird}</code>.·The·map·now·looks
206 like·this:</p><table><thead><tr><th·style="text-align:·center;">0</th><th·style="text-align:·left;">1</th><th·style="text-align:·center;">2</th><th·style="text-align:·center;">3</th><th·style="text-align:·center;">4</th><th·style="text-align:·center;">5</th></tr></thead><tbody><tr><td·style="text-align:·center;"><strong>FLATMAP</strong></td><td·style="text-align:·left;"><em>3</em></td><td·style="text-align:·center;"><code·class="inline">{a,q,z}</code></td><td·style="text-align:·center;"><code·class="inline">foo</code></td><td·style="text-align:·center;"><code·class="inline">baz</code></td><td·style="text-align:·center;"><code·class="inline">bird</code></td></tr></tbody></table><p><em>Table:·#{a·=&gt;·foo,·q·=&gt;·baz,·z·=&gt;·bird}</em></p><p>When·the·value·for·an·existing·key·is·updated,·the·key·tuple·is·not·updated,206 like·this:</p><table><thead><tr><th·style="text-align:·center;">0</th><th·style="text-align:·left;">1</th><th·style="text-align:·center;">2</th><th·style="text-align:·center;">3</th><th·style="text-align:·center;">4</th><th·style="text-align:·center;">5</th></tr></thead><tbody><tr><td·style="text-align:·center;"><strong>FLATMAP</strong></td><td·style="text-align:·left;"><em>3</em></td><td·style="text-align:·center;"><code·class="inline">{a,q,z}</code></td><td·style="text-align:·center;"><code·class="inline">foo</code></td><td·style="text-align:·center;"><code·class="inline">baz</code></td><td·style="text-align:·center;"><code·class="inline">bird</code></td></tr></tbody></table><p><em>Table:·#{a·=&gt;·foo,·q·=&gt;·baz,·z·=&gt;·bird}</em></p><p>When·the·value·for·an·existing·key·is·updated,·the·key·tuple·is·not·updated,
207 allowing·the·key·tuple·to·be·shared·with·other·instances·of·the·map·that·have207 allowing·the·key·tuple·to·be·shared·with·other·instances·of·the·map·that·have
208 the·same·keys.·In·fact,·the·key·tuple·can·be·shared·between·all·maps·with·the208 the·same·keys.·In·fact,·the·key·tuple·can·be·shared·between·all·maps·with·the
209 same·keys·with·some·care.·To·arrange·that,·define·a·function·that·returns·a·map.209 same·keys·with·some·care.·To·arrange·that,·define·a·function·that·returns·a·map.
210 For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">new</span><span·class="p"·data-group-id="9146455503-1">(</span><span·class="p"·data-group-id="9146455503-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">210 For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">new</span><span·class="p"·data-group-id="2247246728-1">(</span><span·class="p"·data-group-id="2247246728-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
211 ····</span><span·class="p"·data-group-id="9146455503-2">#{</span><span·class="ss">a</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·300,·SHA:·ffefa82e08ad17c4ea7e3143c6824fda29779cccdc03d08bec51af48e4e5a55f·...·]-2">}</span><span·class="p">.</span></code></pre><p>Defined·like·this,·the·key·tuple·<code·class="inline">{a,b,c}</code>·will·be·a·global·literal.·To·ensure211 ····</span><span·class="p"·data-group-id="2247246728-2">#{</span><span·class="ss">a</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·300,·SHA:·8e9f06ca27b1523b648ca9a68df7459fa98a87d60268573d93041d3007a163cd·...·]-2">}</span><span·class="p">.</span></code></pre><p>Defined·like·this,·the·key·tuple·<code·class="inline">{a,b,c}</code>·will·be·a·global·literal.·To·ensure
212 that·the·key·tuple·is·shared·when·creating·an·instance·of·the·map,·always·call212 that·the·key·tuple·is·shared·when·creating·an·instance·of·the·map,·always·call
213 <code·class="inline">new()</code>·and·modify·the·returned·map:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="p"·data-group-id="6074401574-1">(</span><span·class="n">SOME_MODULE</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="6074401574-2">(</span><span·class="p"·data-group-id="6074401574-2">)</span><span·class="p"·data-group-id="6074401574-1[·...·truncated·by·diffoscope;·len:·229,·SHA:·5ef9d81544a00cbbda3423bf712cb36e5f0447dcc6b7f33cd6054876f1564331·...·]-3">}</span><span·class="p">.</span></code></pre><p>Using·the·map·syntax·with·small·maps·is·particularly·efficient.·As·long·as·the213 <code·class="inline">new()</code>·and·modify·the·returned·map:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="p"·data-group-id="2826521163-1">(</span><span·class="n">SOME_MODULE</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="2826521163-2">(</span><span·class="p"·data-group-id="2826521163-2">)</span><span·class="p"·data-group-id="2826521163-1[·...·truncated·by·diffoscope;·len:·229,·SHA:·cfd2386983dd3ff7407e3159e2bf223de32b62f2a391759fc5a97d31502d1fa4·...·]-3">}</span><span·class="p">.</span></code></pre><p>Using·the·map·syntax·with·small·maps·is·particularly·efficient.·As·long·as·the
214 keys·are·known·at·compile-time,·the·map·is·updated·in·one·go,·making·the·time·to214 keys·are·known·at·compile-time,·the·map·is·updated·in·one·go,·making·the·time·to
215 update·a·map·essentially·constant·regardless·of·the·number·of·keys·updated.·The215 update·a·map·essentially·constant·regardless·of·the·number·of·keys·updated.·The
216 same·goes·for·matching.·(When·the·keys·are·variables,·one·or·more·of·the·keys216 same·goes·for·matching.·(When·the·keys·are·variables,·one·or·more·of·the·keys
217 could·be·identical,·so·the·operations·need·to·be·performed·sequentially·from217 could·be·identical,·so·the·operations·need·to·be·performed·sequentially·from
218 left·to·right.)</p><p>The·memory·size·for·a·small·map·is·the·size·of·all·keys·and·values·plus·5·words.218 left·to·right.)</p><p>The·memory·size·for·a·small·map·is·the·size·of·all·keys·and·values·plus·5·words.
219 See·<a·href="memory.html">Memory</a>·for·more·information·about·memory·sizes.</p><h3·id="how-large-maps-are-implemented"·class="section-heading">219 See·<a·href="memory.html">Memory</a>·for·more·information·about·memory·sizes.</p><h3·id="how-large-maps-are-implemented"·class="section-heading">
220 ··<a·href="#how-large-maps-are-implemented"·class="hover-link">220 ··<a·href="#how-large-maps-are-implemented"·class="hover-link">
Offset 241, 21 lines modifiedOffset 241, 21 lines modified
241 ··<a·href="#using-the-map-syntax"·class="hover-link">241 ··<a·href="#using-the-map-syntax"·class="hover-link">
242 ····<i·class="ri-link-m"·aria-hidden="true"></i>242 ····<i·class="ri-link-m"·aria-hidden="true"></i>
243 ··</a>243 ··</a>
244 ··<span·class="text">Using·the·Map·Syntax</span>244 ··<span·class="text">Using·the·Map·Syntax</span>
245 </h2>245 </h2>
246 <p>Using·the·map·syntax·is·usually·slightly·more·efficient·than·using·the246 <p>Using·the·map·syntax·is·usually·slightly·more·efficient·than·using·the
247 corresponding·function·in·the·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html"><code·class="inline">maps</code></a>·module.</p><p>The·gain·in·efficiency·for·the·map·syntax·is·more·noticeable·for·the·following247 corresponding·function·in·the·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html"><code·class="inline">maps</code></a>·module.</p><p>The·gain·in·efficiency·for·the·map·syntax·is·more·noticeable·for·the·following
248 operations·that·can·only·be·achieved·using·the·map·syntax:</p><ul><li>Matching·multiple·literal·keys</li><li>Updating·multiple·literal·keys</li><li>Adding·multiple·literal·keys·to·a·map</li></ul><p>For·example:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Map</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map1</span><span·class="p"·data-group-id="7607565093-1">#{</span><span·class="ss">x</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">y</span><span·class="w">·</span><span·class="p[·...·truncated·by·diffoscope;·len:·820,·SHA:·36850990a736922013297e69df068e70d14c7987e52dfa7ce981abdae87805e1·...·]-1">)</span><span·class="p">,</span><span·class="w">248 operations·that·can·only·be·achieved·using·the·map·syntax:</p><ul><li>Matching·multiple·literal·keys</li><li>Updating·multiple·literal·keys</li><li>Adding·multiple·literal·keys·to·a·map</li></ul><p>For·example:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Map</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map1</span><span·class="p"·data-group-id="0185705613-1">#{</span><span·class="ss">x</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">y</span><span·class="w">·</span><span·class="p[·...·truncated·by·diffoscope;·len:·820,·SHA:·43197eab31b9c09cbd6d3038dea1cee39b7e6d9ee3cad3a276472160daca6c50·...·]-1">)</span><span·class="p">,</span><span·class="w">
249 </span><span·class="n">Map3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">update</span><span·class="p"·data-group-id="6641612689-2">(</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Map2</span><span·class="p"·data-group-id="6641612689-2">)</span><span·class="p">,</span><span·class="w">249 </span><span·class="n">Map3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">update</span><span·class="p"·data-group-id="7616559828-2">(</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Map2</span><span·class="p"·data-group-id="7616559828-2">)</span><span·class="p">,</span><span·class="w">
250 </span><span·class="n">Map</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">update</span><span·class="p"·data-group-id="6641612689-3">(</span><span·class="ss">z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Map3</span><span·class="p"·data-group-id="6641612689-3">)</span></code></pre><p>If·the·map·is·a·small·map,·the·first·example·runs·roughly·three·times·as·fast.</p><p>Note·that·for·variable·keys,·the·elements·are·updated·sequentially·from·left·to250 </span><span·class="n">Map</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">update</span><span·class="p"·data-group-id="7616559828-3">(</span><span·class="ss">z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Map3</span><span·class="p"·data-group-id="7616559828-3">)</span></code></pre><p>If·the·map·is·a·small·map,·the·first·example·runs·roughly·three·times·as·fast.</p><p>Note·that·for·variable·keys,·the·elements·are·updated·sequentially·from·left·to
251 right.·For·example,·given·the·following·update·with·variable·keys:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Map</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map1</span><span·class="p"·data-group-id="1331508552-1">#{</span><span·class="n">Key1</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key2</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·276,·SHA:·83874e0267b9c28d02e6187e16cef0327b08e52e01e299a9177f4092b5fbb5f2·...·]-1">}</span></code></pre><p>the·compiler·rewrites·it·like·this·to·ensure·that·the·updates·are·applied·from251 right.·For·example,·given·the·following·update·with·variable·keys:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Map</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map1</span><span·class="p"·data-group-id="2515607277-1">#{</span><span·class="n">Key1</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key2</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·276,·SHA:·1f291e542f594fb4d00e79e7d0a64431adb3dbd49bcf4f35d6f1ce07566b9f42·...·]-1">}</span></code></pre><p>the·compiler·rewrites·it·like·this·to·ensure·that·the·updates·are·applied·from
252 left·to·right:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Map2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map1</span><span·class="p"·data-group-id="5007030162-1">#{</span><span·class="n">Key1</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="5007030162-1">}</span><span·class="p">,</span><span·class="w">252 left·to·right:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Map2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map1</span><span·class="p"·data-group-id="0920263265-1">#{</span><span·class="n">Key1</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="0920263265-1">}</span><span·class="p">,</span><span·class="w">
253 </span><span·class="n">Map3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map2</span><span·class="p"·data-group-id="5007030162-2">#{</span><span·class="n">Key2</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="5007030162-2">}</span><span·class="p">,</span><span·class="w">253 </span><span·class="n">Map3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map2</span><span·class="p"·data-group-id="0920263265-2">#{</span><span·class="n">Key2</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="0920263265-2">}</span><span·class="p">,</span><span·class="w">
254 </span><span·class="n">Map</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map3</span><span·class="p"·data-group-id="5007030162-3">#{</span><span·class="n">Key3</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Z</span><span·class="p"·data-group-id="5007030162-3">}</span></code></pre><p>If·a·key·is·known·to·exist·in·a·map,·using·the·<code·class="inline">:=</code>·operator·is·slightly·more254 </span><span·class="n">Map</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Map3</span><span·class="p"·data-group-id="0920263265-3">#{</span><span·class="n">Key3</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Z</span><span·class="p"·data-group-id="0920263265-3">}</span></code></pre><p>If·a·key·is·known·to·exist·in·a·map,·using·the·<code·class="inline">:=</code>·operator·is·slightly·more
255 efficient·than·using·the·<code·class="inline">=&gt;</code>·operator·for·a·small·map.</p><h2·id="using-the-functions-in-the-maps-module"·class="section-heading">255 efficient·than·using·the·<code·class="inline">=&gt;</code>·operator·for·a·small·map.</p><h2·id="using-the-functions-in-the-maps-module"·class="section-heading">
256 ··<a·href="#using-the-functions-in-the-maps-module"·class="hover-link">256 ··<a·href="#using-the-functions-in-the-maps-module"·class="hover-link">
257 ····<i·class="ri-link-m"·aria-hidden="true"></i>257 ····<i·class="ri-link-m"·aria-hidden="true"></i>
258 ··</a>258 ··</a>
259 ··<span·class="text">Using·the·Functions·in·the·maps·Module</span>259 ··<span·class="text">Using·the·Functions·in·the·maps·Module</span>
260 </h2>260 </h2>
261 <p>Here·follows·some·notes·about·most·of·the·functions·in·the·<code·class="inline">maps</code>·module.·For261 <p>Here·follows·some·notes·about·most·of·the·functions·in·the·<code·class="inline">maps</code>·module.·For
Offset 306, 23 lines modifiedOffset 306, 23 lines modified
306 ··<a·href="#maps-get-3"·class="hover-link">306 ··<a·href="#maps-get-3"·class="hover-link">
307 ····<i·class="ri-link-m"·aria-hidden="true"></i>307 ····<i·class="ri-link-m"·aria-hidden="true"></i>
308 ··</a>308 ··</a>
309 ··<span·class="text">maps:get/3</span>309 ··<span·class="text">maps:get/3</span>
310 </h3>310 </h3>
311 <p>As·an·optimization,·the·compiler·will·rewrite·a·call·to·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>·to·Erlang311 <p>As·an·optimization,·the·compiler·will·rewrite·a·call·to·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>·to·Erlang
312 code·similar·to·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Result</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Map</span><span·class="w">·</span><span·class="k">of</span><span·class="w">312 code·similar·to·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Result</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Map</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
313 ·············</span><span·class="p"·data-group-id="5976100951-1">#{</span><span·class="n">Key</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Value</span><span·class="p"·data-group-id="5976100951-1">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Value</span><span·class="p">;</span><span·class="w">313 ·············</span><span·class="p"·data-group-id="7883963164-1">#{</span><span·class="n">Key</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Value</span><span·class="p"·data-group-id="7883963164-1">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Value</span><span·class="p">;</span><span·class="w">
314 ·············</span><span·class="p"·data-group-id="5976100951-2">#{</span><span·class="p"·data-group-id="5976100951-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Default</span><span·class="w">314 ·············</span><span·class="p"·data-group-id="7883963164-2">#{</span><span·class="p"·data-group-id="7883963164-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Default</span><span·class="w">
315 ·········</span><span·class="k">end</span></code></pre><p>This·is·reasonably·efficient,·but·if·a·small·map·is·used·as·an·alternative·to315 ·········</span><span·class="k">end</span></code></pre><p>This·is·reasonably·efficient,·but·if·a·small·map·is·used·as·an·alternative·to
316 using·a·record·it·is·often·better·not·to·rely·on·default·values·as·it·prevents316 using·a·record·it·is·often·better·not·to·rely·on·default·values·as·it·prevents
317 sharing·of·keys,·which·may·in·the·end·use·more·memory·than·what·you·save·from317 sharing·of·keys,·which·may·in·the·end·use·more·memory·than·what·you·save·from
318 not·storing·default·values·in·the·map.</p><p>If·default·values·are·nevertheless·required,·instead·of·calling·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>318 not·storing·default·values·in·the·map.</p><p>If·default·values·are·nevertheless·required,·instead·of·calling·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>
319 multiple·times,·consider·putting·the·default·values·in·a·map·and·merging·that319 multiple·times,·consider·putting·the·default·values·in·a·map·and·merging·that
320 map·with·the·other·map:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">DefaultMap</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7174251164-1">#{</span><span·class="n">Key1</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Value2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key2</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·419,·SHA:·66d3f603032921108ff821d468ae45500a758a864b4f60d1976a14d87c002e92·...·]4-1">}</span><span·class="p">,</span><span·class="w">320 map·with·the·other·map:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">DefaultMap</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5147542634-1">#{</span><span·class="n">Key1</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Value2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key2</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·419,·SHA:·78ead97ad11c348c1355c75e46a544a7afa7f1237cfbadd8c9b13970dbe7c773·...·]4-1">}</span><span·class="p">,</span><span·class="w">
321 </span><span·class="n">MapWithDefaultsApplied</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">merge</span><span·class="p"·data-group-id="7174251164-2">(</span><span·class="n">DefaultMap</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OtherMap</span><span·class="p"·data-group-id="7174251164-2">)</span></code></pre><p>This·helps·share·keys·between·the·default·map·and·the·one·you·applied·defaults321 </span><span·class="n">MapWithDefaultsApplied</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">merge</span><span·class="p"·data-group-id="5147542634-2">(</span><span·class="n">DefaultMap</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OtherMap</span><span·class="p"·data-group-id="5147542634-2">)</span></code></pre><p>This·helps·share·keys·between·the·default·map·and·the·one·you·applied·defaults
322 to,·as·long·as·the·default·map·contains·<em>all</em>·the·keys·that·will·ever·be·used322 to,·as·long·as·the·default·map·contains·<em>all</em>·the·keys·that·will·ever·be·used
323 and·not·just·the·ones·with·default·values.·Whether·this·is·faster·than·calling323 and·not·just·the·ones·with·default·values.·Whether·this·is·faster·than·calling
324 <a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>·multiple·times·depends·on·the·size·of·the·map·and·the·number·of324 <a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>·multiple·times·depends·on·the·size·of·the·map·and·the·number·of
325 default·values.</p><blockquote><h4·class="info">Change</h4><p>Before·OTP·26.0·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>·was·implemented·by·calling·the·function·instead325 default·values.</p><blockquote><h4·class="info">Change</h4><p>Before·OTP·26.0·<a·href="../../lib/stdlib-6.0.1/doc/html/maps.html#get/3"><code·class="inline">maps:get/3</code></a>·was·implemented·by·calling·the·function·instead
326 of·rewriting·it·as·an·Erlang·expression.·It·is·now·slightly·faster·but·can·no326 of·rewriting·it·as·an·Erlang·expression.·It·is·now·slightly·faster·but·can·no
327 longer·be·traced.</p></blockquote><h3·id="maps-intersect-2-maps-intersect_with-3"·class="section-heading">327 longer·be·traced.</p></blockquote><h3·id="maps-intersect-2-maps-intersect_with-3"·class="section-heading">
328 ··<a·href="#maps-intersect-2-maps-intersect_with-3"·class="hover-link">328 ··<a·href="#maps-intersect-2-maps-intersect_with-3"·class="hover-link">
Offset 519, 15 lines modifiedOffset 519, 15 lines modified
519 ······<p·class="built-using">519 ······<p·class="built-using">
520 ········Built·using520 ········Built·using
521 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the521 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
522 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>522 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
523 ······</p>523 ······</p>
524 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>524 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
525 ····</footer>525 ····</footer>
526 ··</div>526 ··</div>
527 </main>527 </main>
528 </div>528 </div>
529 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>529 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
530 <script>530 <script>
531 ··document.addEventListener("DOMContentLoaded",·function·()·{531 ··document.addEventListener("DOMContentLoaded",·function·()·{
756 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/doc/system/memory.html
    
Offset 218, 15 lines modifiedOffset 218, 15 lines modified
218 ······<p·class="built-using">218 ······<p·class="built-using">
219 ········Built·using219 ········Built·using
220 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the220 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
221 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>221 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
222 ······</p>222 ······</p>
223 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>223 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
224 ····</footer>224 ····</footer>
225 ··</div>225 ··</div>
226 </main>226 </main>
227 </div>227 </div>
228 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>228 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
229 <script>229 <script>
230 ··document.addEventListener("DOMContentLoaded",·function·()·{230 ··document.addEventListener("DOMContentLoaded",·function·()·{
770 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/doc/system/misc.html
    
Offset 237, 15 lines modifiedOffset 237, 15 lines modified
237 ······<p·class="built-using">237 ······<p·class="built-using">
238 ········Built·using238 ········Built·using
239 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the239 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
240 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>240 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
241 ······</p>241 ······</p>
242 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>242 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
243 ····</footer>243 ····</footer>
244 ··</div>244 ··</div>
245 </main>245 </main>
246 </div>246 </div>
247 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>247 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
248 <script>248 <script>
249 ··document.addEventListener("DOMContentLoaded",·function·()·{249 ··document.addEventListener("DOMContentLoaded",·function·()·{
772 B
html2text {}
Max HTML report size reached
25.1 KB
./usr/share/doc/erlang-doc/html/doc/system/modules.html
    
Offset 118, 20 lines modifiedOffset 118, 20 lines modified
118 <h2·id="module-syntax"·class="section-heading">118 <h2·id="module-syntax"·class="section-heading">
119 ··<a·href="#module-syntax"·class="hover-link">119 ··<a·href="#module-syntax"·class="hover-link">
120 ····<i·class="ri-link-m"·aria-hidden="true"></i>120 ····<i·class="ri-link-m"·aria-hidden="true"></i>
121 ··</a>121 ··</a>
122 ··<span·class="text">Module·Syntax</span>122 ··<span·class="text">Module·Syntax</span>
123 </h2>123 </h2>
124 <p>Erlang·code·is·divided·into·<em>modules</em>.·A·module·consists·of·a·sequence·of124 <p>Erlang·code·is·divided·into·<em>modules</em>.·A·module·consists·of·a·sequence·of
125 attributes·and·function·declarations,·each·terminated·by·a·period·(<code·class="inline">.</code>).</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7891399287-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="7891399287-1">)</span><span·class="p">.</span><span·class="w">··········</span><span·class="c1">%·module·attribute</span><span·class="w">125 attributes·and·function·declarations,·each·terminated·by·a·period·(<code·class="inline">.</code>).</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9390891518-1">(</span><span·class="ss">m</span><span·class="p"·data-group-id="9390891518-1">)</span><span·class="p">.</span><span·class="w">··········</span><span·class="c1">%·module·attribute</span><span·class="w">
126 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7891399287-2">(</span><span·class="p"·data-group-id="7891399287-3">[</span><span·class="ss">fact</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="7891399287-3">]</span><span·class="p"·data-group-id="7891399287-2">)</span><span·class="p">.</span><span·class="w">···</span><span·class="c1">%·module·attribute</span><span·class="w">126 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9390891518-2">(</span><span·class="p"·data-group-id="9390891518-3">[</span><span·class="ss">fact</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="9390891518-3">]</span><span·class="p"·data-group-id="9390891518-2">)</span><span·class="p">.</span><span·class="w">···</span><span·class="c1">%·module·attribute</span><span·class="w">
  
127 </span><span·class="nf">fact</span><span·class="p"·data-group-id="7891399287-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="7891399287-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="o">&gt;</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">··</span><span·class="c1">%·beginning·of·function·declaration</span><span·class="w">127 </span><span·class="nf">fact</span><span·class="p"·data-group-id="9390891518-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="9390891518-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="o">&gt;</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">··</span><span·class="c1">%·beginning·of·function·declaration</span><span·class="w">
128 ····</span><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="7891399287-5">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="7891399287-5">)</span><span·class="p">;</span><span·class="w">···</span><span·class="c1">%··|</span><span·class="w">128 ····</span><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="9390891518-5">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="9390891518-5">)</span><span·class="p">;</span><span·class="w">···</span><span·class="c1">%··|</span><span·class="w">
129 </span><span·class="nf">fact</span><span·class="p"·data-group-id="7891399287-6">(</span><span·class="mi">0</span><span·class="p"·data-group-id="7891399287-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">···········</span><span·class="c1">%··|</span><span·class="w">129 </span><span·class="nf">fact</span><span·class="p"·data-group-id="9390891518-6">(</span><span·class="mi">0</span><span·class="p"·data-group-id="9390891518-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">···········</span><span·class="c1">%··|</span><span·class="w">
130 ····</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">···············</span><span·class="c1">%·end·of·function·declaration</span></code></pre><p>For·a·description·of·function·declarations,·see130 ····</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">···············</span><span·class="c1">%·end·of·function·declaration</span></code></pre><p>For·a·description·of·function·declarations,·see
131 <a·href="ref_man_functions.html">Function·Declaration·Syntax</a>.</p><h2·id="module-attributes"·class="section-heading">131 <a·href="ref_man_functions.html">Function·Declaration·Syntax</a>.</p><h2·id="module-attributes"·class="section-heading">
132 ··<a·href="#module-attributes"·class="hover-link">132 ··<a·href="#module-attributes"·class="hover-link">
133 ····<i·class="ri-link-m"·aria-hidden="true"></i>133 ····<i·class="ri-link-m"·aria-hidden="true"></i>
134 ··</a>134 ··</a>
135 ··<span·class="text">Module·Attributes</span>135 ··<span·class="text">Module·Attributes</span>
136 </h2>136 </h2>
Offset 176, 71 lines modifiedOffset 176, 71 lines modified
176 meaning.</p></blockquote></li></ul><h3·id="behaviour-module-attribute"·class="section-heading">176 meaning.</p></blockquote></li></ul><h3·id="behaviour-module-attribute"·class="section-heading">
177 ··<a·href="#behaviour-module-attribute"·class="hover-link">177 ··<a·href="#behaviour-module-attribute"·class="hover-link">
178 ····<i·class="ri-link-m"·aria-hidden="true"></i>178 ····<i·class="ri-link-m"·aria-hidden="true"></i>
179 ··</a>179 ··</a>
180 ··<span·class="text">Behaviour·Module·Attribute</span>180 ··<span·class="text">Behaviour·Module·Attribute</span>
181 </h3>181 </h3>
182 <p>It·is·possible·to·specify·that·the·module·is·the·callback·module·for·a182 <p>It·is·possible·to·specify·that·the·module·is·the·callback·module·for·a
183 <em>behaviour</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="8085823483-1">(</span><span·class="n">Behaviour</span><span·class="p"·data-group-id="8085823483-1">)</span><span·class="p">.</span></code></pre><p>The·atom·<code·class="inline">Behaviour</code>·gives·the·name·of·the·behaviour,·which·can·be·a183 <em>behaviour</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="5443727359-1">(</span><span·class="n">Behaviour</span><span·class="p"·data-group-id="5443727359-1">)</span><span·class="p">.</span></code></pre><p>The·atom·<code·class="inline">Behaviour</code>·gives·the·name·of·the·behaviour,·which·can·be·a
184 user-defined·behaviour·or·one·of·the·following·OTP·standard·behaviours:</p><ul><li><code·class="inline">gen_server</code></li><li><code·class="inline">gen_statem</code></li><li><code·class="inline">gen_event</code></li><li><code·class="inline">supervisor</code></li></ul><p>The·spelling·<code·class="inline">behavior</code>·is·also·accepted.</p><p>The·callback·functions·of·the·module·can·be·specified·either·directly·by·the184 user-defined·behaviour·or·one·of·the·following·OTP·standard·behaviours:</p><ul><li><code·class="inline">gen_server</code></li><li><code·class="inline">gen_statem</code></li><li><code·class="inline">gen_event</code></li><li><code·class="inline">supervisor</code></li></ul><p>The·spelling·<code·class="inline">behavior</code>·is·also·accepted.</p><p>The·callback·functions·of·the·module·can·be·specified·either·directly·by·the
185 exported·function·<code·class="inline">behaviour_info/1</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">behaviour_info</span><span·class="p"·data-group-id="0536666592-1">(</span><span·class="ss">callbacks</span><span·class="p"·data-group-id="0536666592-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Callbacks</span><span·class="p">.</span></code></pre><p>[·...·truncated·by·diffoscope;·len:·368,·SHA:·8a76b54ebe70e5c357ec987c23287d7fcbd9ee268056231c179fc4b0ed52987f·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Result</span><span·class="p">.</span></code></pre><p>Here,·<code·class="inline">Arguments</code>·is·a·list·of·zero·or·more·arguments.·The·<code·class="inline">-callback</code>·attribute185 exported·function·<code·class="inline">behaviour_info/1</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">behaviour_info</span><span·class="p"·data-group-id="2813108607-1">(</span><span·class="ss">callbacks</span><span·class="p"·data-group-id="2813108607-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Callbacks</span><span·class="p">.</span></code></pre><p>[·...·truncated·by·diffoscope;·len:·368,·SHA:·5d86c1bbf0674a00b6170f29fedcc5f32b55fc47664e97104b49fdaaf5c01f71·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Result</span><span·class="p">.</span></code></pre><p>Here,·<code·class="inline">Arguments</code>·is·a·list·of·zero·or·more·arguments.·The·<code·class="inline">-callback</code>·attribute
186 is·to·be·preferred·since·the·extra·type·information·can·be·used·by·tools·to186 is·to·be·preferred·since·the·extra·type·information·can·be·used·by·tools·to
187 produce·documentation·or·find·discrepancies.</p><p>Read·more·about·behaviours·and·callback·modules·in187 produce·documentation·or·find·discrepancies.</p><p>Read·more·about·behaviours·and·callback·modules·in
188 <a·href="../../doc/system/spec_proc.html#behaviours">OTP·Design·Principles</a>.</p><h3·id="record-definitions"·class="section-heading">188 <a·href="../../doc/system/spec_proc.html#behaviours">OTP·Design·Principles</a>.</p><h3·id="record-definitions"·class="section-heading">
189 ··<a·href="#record-definitions"·class="hover-link">189 ··<a·href="#record-definitions"·class="hover-link">
190 ····<i·class="ri-link-m"·aria-hidden="true"></i>190 ····<i·class="ri-link-m"·aria-hidden="true"></i>
191 ··</a>191 ··</a>
192 ··<span·class="text">Record·Definitions</span>192 ··<span·class="text">Record·Definitions</span>
193 </h3>193 </h3>
194 <p>The·same·syntax·as·for·module·attributes·is·used·for·record·definitions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="7157105663-1">(</span><span·class="n">Record</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fields</span><span·class="p"·data-group-id="7157105663-1">)</span><span·class="p">.</span></code></pre><p>Record·definitions·are·allowed·anywhere·in·a·module,·also·among·the·function194 <p>The·same·syntax·as·for·module·attributes·is·used·for·record·definitions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3885454728-1">(</span><span·class="n">Record</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fields</span><span·class="p"·data-group-id="3885454728-1">)</span><span·class="p">.</span></code></pre><p>Record·definitions·are·allowed·anywhere·in·a·module,·also·among·the·function
195 declarations.·Read·more·in·<a·href="ref_man_records.html">Records</a>.</p><h3·id="preprocessor"·class="section-heading">195 declarations.·Read·more·in·<a·href="ref_man_records.html">Records</a>.</p><h3·id="preprocessor"·class="section-heading">
196 ··<a·href="#preprocessor"·class="hover-link">196 ··<a·href="#preprocessor"·class="hover-link">
197 ····<i·class="ri-link-m"·aria-hidden="true"></i>197 ····<i·class="ri-link-m"·aria-hidden="true"></i>
198 ··</a>198 ··</a>
199 ··<span·class="text">Preprocessor</span>199 ··<span·class="text">Preprocessor</span>
200 </h3>200 </h3>
201 <p>The·same·syntax·as·for·module·attributes·is·used·by·the·preprocessor,·which201 <p>The·same·syntax·as·for·module·attributes·is·used·by·the·preprocessor,·which
202 supports·file·inclusion,·macros,·and·conditional·compilation:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="9461836912-1">(</span><span·class="s">&quot;SomeFile.hrl&quot;</span><span·class="p"·data-group-id="9461836912-1">)</span><span·class="p">.</span><span·class="w">202 supports·file·inclusion,·macros,·and·conditional·compilation:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="3787227621-1">(</span><span·class="s">&quot;SomeFile.hrl&quot;</span><span·class="p"·data-group-id="3787227621-1">)</span><span·class="p">.</span><span·class="w">
203 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="9461836912-2">(</span><span·class="n">Macro</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Replacement</span><span·class="p"·data-group-id="9461836912-2">)</span><span·class="p">.</span></code></pre><p>Read·more·in·<a·href="macros.html">Preprocessor</a>.</p><h3·id="setting-file-and-line"·class="section-heading">203 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="3787227621-2">(</span><span·class="n">Macro</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Replacement</span><span·class="p"·data-group-id="3787227621-2">)</span><span·class="p">.</span></code></pre><p>Read·more·in·<a·href="macros.html">Preprocessor</a>.</p><h3·id="setting-file-and-line"·class="section-heading">
204 ··<a·href="#setting-file-and-line"·class="hover-link">204 ··<a·href="#setting-file-and-line"·class="hover-link">
205 ····<i·class="ri-link-m"·aria-hidden="true"></i>205 ····<i·class="ri-link-m"·aria-hidden="true"></i>
206 ··</a>206 ··</a>
207 ··<span·class="text">Setting·File·and·Line</span>207 ··<span·class="text">Setting·File·and·Line</span>
208 </h3>208 </h3>
209 <p>The·same·syntax·as·for·module·attributes·is·used·for·changing·the·pre-defined209 <p>The·same·syntax·as·for·module·attributes·is·used·for·changing·the·pre-defined
210 macros·<code·class="inline">?FILE</code>·and·<code·class="inline">?LINE</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">file</span><span·class="p"·data-group-id="8176802598-1">(</span><span·class="n">File</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Line</span><span·class="p"·data-group-id="8176802598-1">)</span><span·class="p">.</span></code></pre><p>This·attribute·is·used·by·tools,·such·as·Yecc,·to·inform·the·compiler·that·the210 macros·<code·class="inline">?FILE</code>·and·<code·class="inline">?LINE</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">file</span><span·class="p"·data-group-id="8728773896-1">(</span><span·class="n">File</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Line</span><span·class="p"·data-group-id="8728773896-1">)</span><span·class="p">.</span></code></pre><p>This·attribute·is·used·by·tools,·such·as·Yecc,·to·inform·the·compiler·that·the
211 source·program·is·generated·by·another·tool.·It·also·indicates·the211 source·program·is·generated·by·another·tool.·It·also·indicates·the
212 correspondence·of·source·files·to·lines·of·the·original·user-written·file,·from212 correspondence·of·source·files·to·lines·of·the·original·user-written·file,·from
213 which·the·source·program·is·produced.</p><h3·id="types-and-function-specifications"·class="section-heading">213 which·the·source·program·is·produced.</p><h3·id="types-and-function-specifications"·class="section-heading">
214 ··<a·href="#types-and-function-specifications"·class="hover-link">214 ··<a·href="#types-and-function-specifications"·class="hover-link">
215 ····<i·class="ri-link-m"·aria-hidden="true"></i>215 ····<i·class="ri-link-m"·aria-hidden="true"></i>
216 ··</a>216 ··</a>
217 ··<span·class="text">Types·and·function·specifications</span>217 ··<span·class="text">Types·and·function·specifications</span>
218 </h3>218 </h3>
219 <p>A·similar·syntax·as·for·module·attributes·is·used·for·specifying·types·and219 <p>A·similar·syntax·as·for·module·attributes·is·used·for·specifying·types·and
220 function·specifications:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">my_type</span><span·class="p"·data-group-id="3523879742-1">(</span><span·class="p"·data-group-id="3523879742-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="3523879742-2">(</span><spa[·...·truncated·by·diffoscope;·len:·246,·SHA:·3fea88d511923c9dde1ef33f7db9a3ecdda37d1beb9789f8982603951eeb46c2·...·]-3">)</span><span·class="p">.</span><span·class="w">220 function·specifications:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">my_type</span><span·class="p"·data-group-id="8809752823-1">(</span><span·class="p"·data-group-id="8809752823-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="8809752823-2">(</span><spa[·...·truncated·by·diffoscope;·len:·246,·SHA:·475a8c561fea2e3b6a414e02574463a7f9975eaf9f707522f21ffc82c470f064·...·]-3">)</span><span·class="p">.</span><span·class="w">
221 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">my_function</span><span·class="p"·data-group-id="3523879742-4">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="3523879742-5">(</span><span·class="p"·data-group-id="3523879742-5">)</span><span·class="p"·data-group-id="3523879742-4">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·157,·SHA:·fb3aadd3108e72c27907e0da1f1020573af0c1a29c7349b4ba1389412b08c95b·...·]-6">)</span><span·class="p">.</span></code></pre><p>Read·more·in·<a·href="typespec.html">Types·and·Function·specifications</a>.</p><p>The·description·is·based·on221 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">my_function</span><span·class="p"·data-group-id="8809752823-4">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="8809752823-5">(</span><span·class="p"·data-group-id="8809752823-5">)</span><span·class="p"·data-group-id="8809752823-4">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·157,·SHA:·a59047cb7b84f285bf8551663441a0e4e873c745a69c0c055584dcf4ff0e5c2a·...·]-6">)</span><span·class="p">.</span></code></pre><p>Read·more·in·<a·href="typespec.html">Types·and·Function·specifications</a>.</p><p>The·description·is·based·on
222 <a·href="http://www.erlang.org/eeps/eep-0008.html">EEP8·-·Types·and·function·specifications</a>,222 <a·href="http://www.erlang.org/eeps/eep-0008.html">EEP8·-·Types·and·function·specifications</a>,
223 which·is·not·to·be·further·updated.</p><h3·id="documentation-attributes"·class="section-heading">223 which·is·not·to·be·further·updated.</p><h3·id="documentation-attributes"·class="section-heading">
224 ··<a·href="#documentation-attributes"·class="hover-link">224 ··<a·href="#documentation-attributes"·class="hover-link">
225 ····<i·class="ri-link-m"·aria-hidden="true"></i>225 ····<i·class="ri-link-m"·aria-hidden="true"></i>
226 ··</a>226 ··</a>
227 ··<span·class="text">Documentation·attributes</span>227 ··<span·class="text">Documentation·attributes</span>
228 </h3>228 </h3>
229 <p>The·module·attribute·<code·class="inline">-doc(Documentation)</code>·is·used·to·provide·user·documentation229 <p>The·module·attribute·<code·class="inline">-doc(Documentation)</code>·is·used·to·provide·user·documentation
230 for·a·function/type/callback:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="9111920033-1">(</span><span·class="s">&quot;Example·documentation&quot;</span><span·class="p"·data-group-id="9111920033-1">)</span><span·class="p">.</span><span·class="w">230 for·a·function/type/callback:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="7243971691-1">(</span><span·class="s">&quot;Example·documentation&quot;</span><span·class="p"·data-group-id="7243971691-1">)</span><span·class="p">.</span><span·class="w">
231 </span><span·class="nf">example</span><span·class="p"·data-group-id="9111920033-2">(</span><span·class="p"·data-group-id="9111920033-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>The·attribute·should·be·placed·just·before·the·entity·it·documents.The231 </span><span·class="nf">example</span><span·class="p"·data-group-id="7243971691-2">(</span><span·class="p"·data-group-id="7243971691-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>The·attribute·should·be·placed·just·before·the·entity·it·documents.The
232 parenthesis·are·optional·around·<code·class="inline">Documentation</code>.·The·allowed·values·for232 parenthesis·are·optional·around·<code·class="inline">Documentation</code>.·The·allowed·values·for
233 <code·class="inline">Documentation</code>·are:</p><ul><li><p><strong><a·href="data_types.html#string">literal·string</a>·or233 <code·class="inline">Documentation</code>·are:</p><ul><li><p><strong><a·href="data_types.html#string">literal·string</a>·or
234 <a·href="expressions.html#unicode-segments">utf-8·encoded·binary·string</a></strong>·-·The·string234 <a·href="expressions.html#unicode-segments">utf-8·encoded·binary·string</a></strong>·-·The·string
235 documenting·the·entity.·Any·literal·string·is·allowed,·so·both235 documenting·the·entity.·Any·literal·string·is·allowed,·so·both
236 <a·href="data_types.html#tqstring">triple·quoted·strings</a>·and236 <a·href="data_types.html#tqstring">triple·quoted·strings</a>·and
237 <a·href="data_types.html#sigil">sigils</a>·that·translate·to·literal·strings·can·be·used.237 <a·href="data_types.html#sigil">sigils</a>·that·translate·to·literal·strings·can·be·used.
238 The·following·examples·are·equivalent:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="1131783280-1">(</span><span·class="s">&quot;Example·\&quot;docs\&quot;&quot;</span><span·class="p"·data-group-id="1131783280-1">)</span><span·class="p">.</span><span·class="w">238 The·following·examples·are·equivalent:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="8755547212-1">(</span><span·class="s">&quot;Example·\&quot;docs\&quot;&quot;</span><span·class="p"·data-group-id="8755547212-1">)</span><span·class="p">.</span><span·class="w">
239 </span><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="1131783280-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Example·\&quot;docs\&quot;&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1131783280-2">)</span><span·class="p">.</span><span·class="w">239 </span><span·class="p">-</span><span·class="na">doc</span><span·class="p"·data-group-id="8755547212-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Example·\&quot;docs\&quot;&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8755547212-2">)</span><span·class="p">.</span><span·class="w">
240 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">~S/Example·&quot;docs&quot;/</span><span·class="p">.</span><span·class="w">240 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">~S/Example·&quot;docs&quot;/</span><span·class="p">.</span><span·class="w">
241 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="s">&quot;241 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="s">&quot;
242 ···Example·&quot;</span><span·class="ss">docs</span><span·class="s">&quot;242 ···Example·&quot;</span><span·class="ss">docs</span><span·class="s">&quot;
243 ···&quot;</span><span·class="s">&quot;&quot;</span><span·class="w">243 ···&quot;</span><span·class="s">&quot;&quot;</span><span·class="w">
244 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">~B|Example·&quot;docs&quot;|</span><span·class="p">.</span></code></pre><p>For·clarity·it·is·recommended·to·use·either·normal·<code·class="inline">&quot;strings&quot;</code>·or·triple244 </span><span·class="p">-</span><span·class="na">doc</span><span·class="w">·</span><span·class="s">~B|Example·&quot;docs&quot;|</span><span·class="p">.</span></code></pre><p>For·clarity·it·is·recommended·to·use·either·normal·<code·class="inline">&quot;strings&quot;</code>·or·triple
245 quoted·strings·for·documentation·attributes.</p></li><li><p><strong><code·class="inline">{file,</code>·<a·href="../../lib/kernel-10.0.1/doc/html/file.html#t:name/0"><code·class="inline">file:name/0</code></a>·<code·class="inline">}</code></strong>·-·Read·the·contents·of·filename·and·use245 quoted·strings·for·documentation·attributes.</p></li><li><p><strong><code·class="inline">{file,</code>·<a·href="../../lib/kernel-10.0.1/doc/html/file.html#t:name/0"><code·class="inline">file:name/0</code></a>·<code·class="inline">}</code></strong>·-·Read·the·contents·of·filename·and·use
246 that·as·the·documentation·string.</p></li><li><p><strong><code·class="inline">false</code></strong>·-·Set·the·current·entity·as·hidden,·that·is,·it·should·not·be246 that·as·the·documentation·string.</p></li><li><p><strong><code·class="inline">false</code></strong>·-·Set·the·current·entity·as·hidden,·that·is,·it·should·not·be
Offset 253, 15 lines modifiedOffset 253, 15 lines modified
253 ··<a·href="#the-feature-directive"·class="hover-link">253 ··<a·href="#the-feature-directive"·class="hover-link">
254 ····<i·class="ri-link-m"·aria-hidden="true"></i>254 ····<i·class="ri-link-m"·aria-hidden="true"></i>
255 ··</a>255 ··</a>
256 ··<span·class="text">The·feature·directive</span>256 ··<span·class="text">The·feature·directive</span>
257 </h2>257 </h2>
258 <p>While·not·a·module·attribute,·but·rather·a·directive·(since·it·might·affect258 <p>While·not·a·module·attribute,·but·rather·a·directive·(since·it·might·affect
259 syntax),·there·is·the·<code·class="inline">-feature(..)</code>·directive·used·for·enabling·and·disabling259 syntax),·there·is·the·<code·class="inline">-feature(..)</code>·directive·used·for·enabling·and·disabling
260 <a·href="../../doc/system/features.html#features">features</a>.</p><p>The·syntax·is·similar·to·that·of·an·attribute,·but·has·two·arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">feature</span><span·class="p"·data-group-id="8814158351-1">(</span><span·class="n">FeatureName</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">enable</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">disable</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·a8c11a4e35ce86728725ed26b2f547a1c24c148e3d14d885d2057d21cb141c9a·...·]-1">)</span><span·class="p">.</span></code></pre><p>Note·that·the·<a·href="macros.html#feature-directive">feature·directive</a>·can·only·appear260 <a·href="../../doc/system/features.html#features">features</a>.</p><p>The·syntax·is·similar·to·that·of·an·attribute,·but·has·two·arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">feature</span><span·class="p"·data-group-id="7568599486-1">(</span><span·class="n">FeatureName</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">enable</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">disable</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·79d7bd88d7bacf1eb5c93b70ada7fe9cdf1a906cfb7f5256ebad7392ad99ca23·...·]-1">)</span><span·class="p">.</span></code></pre><p>Note·that·the·<a·href="macros.html#feature-directive">feature·directive</a>·can·only·appear
261 in·a·prefix·of·the·module.</p><h2·id="comments"·class="section-heading">261 in·a·prefix·of·the·module.</p><h2·id="comments"·class="section-heading">
262 ··<a·href="#comments"·class="hover-link">262 ··<a·href="#comments"·class="hover-link">
263 ····<i·class="ri-link-m"·aria-hidden="true"></i>263 ····<i·class="ri-link-m"·aria-hidden="true"></i>
264 ··</a>264 ··</a>
265 ··<span·class="text">Comments</span>265 ··<span·class="text">Comments</span>
266 </h2>266 </h2>
267 <p>Comments·can·be·placed·anywhere·in·a·module·except·within·strings·and267 <p>Comments·can·be·placed·anywhere·in·a·module·except·within·strings·and
Offset 347, 15 lines modifiedOffset 347, 15 lines modified
347 ······<p·class="built-using">347 ······<p·class="built-using">
348 ········Built·using348 ········Built·using
349 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the349 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
350 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>350 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
351 ······</p>351 ······</p>
352 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>352 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
353 ····</footer>353 ····</footer>
354 ··</div>354 ··</div>
355 </main>355 </main>
356 </div>356 </div>
357 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>357 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
358 <script>358 <script>
359 ··document.addEventListener("DOMContentLoaded",·function·()·{359 ··document.addEventListener("DOMContentLoaded",·function·()·{
666 B
html2text {}
Max HTML report size reached
17.4 KB
./usr/share/doc/erlang-doc/html/doc/system/nif.html
    
Offset 133, 26 lines modifiedOffset 133, 26 lines modified
133 ··<span·class="text">Erlang·Program</span>133 ··<span·class="text">Erlang·Program</span>
134 </h2>134 </h2>
135 <p>Even·if·all·functions·of·a·module·are·NIFs,·an·Erlang·module·is·still·needed·for135 <p>Even·if·all·functions·of·a·module·are·NIFs,·an·Erlang·module·is·still·needed·for
136 two·reasons:</p><ul><li>The·NIF·library·must·be·explicitly·loaded·by·Erlang·code·in·the·same·module.</li><li>All·NIFs·of·a·module·must·have·an·Erlang·implementation·as·well.</li></ul><p>Normally·these·are·minimal·stub·implementations·that·throw·an·exception.·But136 two·reasons:</p><ul><li>The·NIF·library·must·be·explicitly·loaded·by·Erlang·code·in·the·same·module.</li><li>All·NIFs·of·a·module·must·have·an·Erlang·implementation·as·well.</li></ul><p>Normally·these·are·minimal·stub·implementations·that·throw·an·exception.·But
137 they·can·also·be·used·as·fallback·implementations·for·functions·that·do·not·have137 they·can·also·be·used·as·fallback·implementations·for·functions·that·do·not·have
138 native·implementations·on·some·architectures.</p><p>NIF·libraries·are·loaded·by·calling·<a·href="../../erts-15.0.1/doc/html/erlang.html#load_nif/2"><code·class="inline">erlang:load_nif/2</code></a>,·with·the·name·of·the138 native·implementations·on·some·architectures.</p><p>NIF·libraries·are·loaded·by·calling·<a·href="../../erts-15.0.1/doc/html/erlang.html#load_nif/2"><code·class="inline">erlang:load_nif/2</code></a>,·with·the·name·of·the
139 shared·library·as·argument.·The·second·argument·can·be·any·term·that·will·be139 shared·library·as·argument.·The·second·argument·can·be·any·term·that·will·be
140 passed·on·to·the·library·and·used·for·initialization:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0351774283-1">(</span><span·class="ss">complex6</span><span·class="p"·data-group-id="0351774283-1">)</span><span·class="p">.</span><span·class="w">140 passed·on·to·the·library·and·used·for·initialization:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="3941619106-1">(</span><span·class="ss">complex6</span><span·class="p"·data-group-id="3941619106-1">)</span><span·class="p">.</span><span·class="w">
141 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0351774283-2">(</span><span·class="p"·data-group-id="0351774283-3">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·1dbfaffc137441868a49657cf47babf698f7fa8d05ee6808829f233bea534aa1·...·]-2">)</span><span·class="p">.</span><span·class="w">141 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3941619106-2">(</span><span·class="p"·data-group-id="3941619106-3">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·2a3c432b675509ba70c0f7dfd455ac7fb64d377128a51aa3795ede36be9d95d9·...·]-2">)</span><span·class="p">.</span><span·class="w">
142 </span><span·class="p">-</span><span·class="na">nifs</span><span·class="p"·data-group-id="0351774283-4">(</span><span·class="p"·data-group-id="0351774283-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·2da3ac30ef0c13755c3d56abe23acca059577eb44c99607c43fae1a6723ad3af·...·]-4">)</span><span·class="p">.</span><span·class="w">142 </span><span·class="p">-</span><span·class="na">nifs</span><span·class="p"·data-group-id="3941619106-4">(</span><span·class="p"·data-group-id="3941619106-5">[</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·546575171d060086fa837667f43f260e2e7ce9b8f6c835406d703b9ebaee987c·...·]-4">)</span><span·class="p">.</span><span·class="w">
143 </span><span·class="p">-</span><span·class="na">on_load</span><span·class="p"·data-group-id="0351774283-6">(</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0351774283-6">)</span><span·class="p">.</span><span·class="w">143 </span><span·class="p">-</span><span·class="na">on_load</span><span·class="p"·data-group-id="3941619106-6">(</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="3941619106-6">)</span><span·class="p">.</span><span·class="w">
  
144 </span><span·class="nf">init</span><span·class="p"·data-group-id="0351774283-7">(</span><span·class="p"·data-group-id="0351774283-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">144 </span><span·class="nf">init</span><span·class="p"·data-group-id="3941619106-7">(</span><span·class="p"·data-group-id="3941619106-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
145 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">load_nif</span><span·class="p"·data-group-id="0351774283-8">(</span><span·class="s">&quot;./complex6_nif&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="0351774283-8">)</span><span·class="p">.</span><span·class="w">145 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">load_nif</span><span·class="p"·data-group-id="3941619106-8">(</span><span·class="s">&quot;./complex6_nif&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="3941619106-8">)</span><span·class="p">.</span><span·class="w">
  
146 </span><span·class="nf">foo</span><span·class="p"·data-group-id="0351774283-9">(</span><span·class="p">_</span><span·class="n">X</span><span·class="p"·data-group-id="0351774283-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">146 </span><span·class="nf">foo</span><span·class="p"·data-group-id="3941619106-9">(</span><span·class="p">_</span><span·class="n">X</span><span·class="p"·data-group-id="3941619106-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
147 ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">nif_error</span><span·class="p"·data-group-id="0351774283-10">(</span><span·class="ss">nif_library_not_loaded</span><span·class="p"·data-group-id="0351774283-10">)</span><span·class="p">.</span><span·class="w">147 ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">nif_error</span><span·class="p"·data-group-id="3941619106-10">(</span><span·class="ss">nif_library_not_loaded</span><span·class="p"·data-group-id="3941619106-10">)</span><span·class="p">.</span><span·class="w">
148 </span><span·class="nf">bar</span><span·class="p"·data-group-id="0351774283-11">(</span><span·class="p">_</span><span·class="n">Y</span><span·class="p"·data-group-id="0351774283-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">148 </span><span·class="nf">bar</span><span·class="p"·data-group-id="3941619106-11">(</span><span·class="p">_</span><span·class="n">Y</span><span·class="p"·data-group-id="3941619106-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
149 ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">nif_error</span><span·class="p"·data-group-id="0351774283-12">(</span><span·class="ss">nif_library_not_loaded</span><span·class="p"·data-group-id="0351774283-12">)</span><span·class="p">.</span></code></pre><p>Here,·the·directive·<code·class="inline">on_load</code>·is·used·to·get·function·<code·class="inline">init</code>·to·be·automatically149 ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">nif_error</span><span·class="p"·data-group-id="3941619106-12">(</span><span·class="ss">nif_library_not_loaded</span><span·class="p"·data-group-id="3941619106-12">)</span><span·class="p">.</span></code></pre><p>Here,·the·directive·<code·class="inline">on_load</code>·is·used·to·get·function·<code·class="inline">init</code>·to·be·automatically
150 called·when·the·module·is·loaded.·If·<code·class="inline">init</code>·returns·anything·other·than·<code·class="inline">ok</code>,150 called·when·the·module·is·loaded.·If·<code·class="inline">init</code>·returns·anything·other·than·<code·class="inline">ok</code>,
151 such·when·the·loading·of·the·NIF·library·fails·in·this·example,·the·module·is151 such·when·the·loading·of·the·NIF·library·fails·in·this·example,·the·module·is
152 unloaded·and·calls·to·functions·within·it,·fail.</p><p>Loading·the·NIF·library·overrides·the·stub·implementations·and·cause·calls·to152 unloaded·and·calls·to·functions·within·it,·fail.</p><p>Loading·the·NIF·library·overrides·the·stub·implementations·and·cause·calls·to
153 <code·class="inline">foo</code>·and·<code·class="inline">bar</code>·to·be·dispatched·to·the·NIF·implementations·instead.</p><h2·id="nif-library-code"·class="section-heading">153 <code·class="inline">foo</code>·and·<code·class="inline">bar</code>·to·be·dispatched·to·the·NIF·implementations·instead.</p><h2·id="nif-library-code"·class="section-heading">
154 ··<a·href="#nif-library-code"·class="hover-link">154 ··<a·href="#nif-library-code"·class="hover-link">
155 ····<i·class="ri-link-m"·aria-hidden="true"></i>155 ····<i·class="ri-link-m"·aria-hidden="true"></i>
156 ··</a>156 ··</a>
Offset 209, 23 lines modifiedOffset 209, 23 lines modified
209 ··<a·href="#running-the-example"·class="hover-link">209 ··<a·href="#running-the-example"·class="hover-link">
210 ····<i·class="ri-link-m"·aria-hidden="true"></i>210 ····<i·class="ri-link-m"·aria-hidden="true"></i>
211 ··</a>211 ··</a>
212 ··<span·class="text">Running·the·Example</span>212 ··<span·class="text">Running·the·Example</span>
213 </h2>213 </h2>
214 <p><em>Step·1.</em>·Compile·the·C·code:</p><pre><code·class="text">unix&gt;·gcc·-o·complex6_nif.so·-fpic·-shared·complex.c·complex6_nif.c214 <p><em>Step·1.</em>·Compile·the·C·code:</p><pre><code·class="text">unix&gt;·gcc·-o·complex6_nif.so·-fpic·-shared·complex.c·complex6_nif.c
215 windows&gt;·cl·-LD·-MD·-Fe·complex6_nif.dll·complex.c·complex6_nif.c</code></pre><p><em>Step·2:</em>·Start·Erlang·and·compile·the·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="ss">erl</span><span·class="w">215 windows&gt;·cl·-LD·-MD·-Fe·complex6_nif.dll·complex.c·complex6_nif.c</code></pre><p><em>Step·2:</em>·Start·Erlang·and·compile·the·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="ss">erl</span><span·class="w">
216 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R13B04</span><span·class="w">·</span><span·class="p"·data-group-id="4624992649-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.7</span><span·class="p">.</span><span·class="mi">5</span><span·class="p"·data-group-id="4624992649-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1129,·SHA:·be170d727622204e4a1d19194c761a2d5691e9cd8b970c30ad39b8a4f813e844·...·]9-6">]</span><span·class="w">216 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R13B04</span><span·class="w">·</span><span·class="p"·data-group-id="0783824779-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.7</span><span·class="p">.</span><span·class="mi">5</span><span·class="p"·data-group-id="0783824779-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1129,·SHA:·fed5e3d4f105f2d9743efbd6f9aa889df0191daff14a943abe2a038ba946b85f·...·]9-6">]</span><span·class="w">
  
217 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">7.5</span><span·class="w">··</span><span·class="p"·data-group-id="4624992649-7">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="4624992649-7">)</span><span·class="gp·unselectable">217 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">7.5</span><span·class="w">··</span><span·class="p"·data-group-id="0783824779-7">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="0783824779-7">)</span><span·class="gp·unselectable">
218 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="4624992649-8">(</span><span·class="ss">complex6</span><span·class="p"·data-group-id="4624992649-8">)</span><span·class="p">.</span><span·class="w">218 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="0783824779-8">(</span><span·class="ss">complex6</span><span·class="p"·data-group-id="0783824779-8">)</span><span·class="p">.</span><span·class="w">
219 </span><span·class="p"·data-group-id="4624992649-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex6</span><span·class="p"·data-group-id="4624992649-9">}</span></code></pre><p><em>Step·3:</em>·Run·the·example:</p><pre><code·class="makeup·erlang"·translate="no[·...·truncated·by·diffoscope;·len:·247,·SHA:·2191833a66338ca21b52c97fa8e64db9aa1bc4ad217fa5e6cf2c4250a99a8073·...·]-1">)</span><span·class="p">.</span><span·class="w">219 </span><span·class="p"·data-group-id="0783824779-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">complex6</span><span·class="p"·data-group-id="0783824779-9">}</span></code></pre><p><em>Step·3:</em>·Run·the·example:</p><pre><code·class="makeup·erlang"·translate="no[·...·truncated·by·diffoscope;·len:·247,·SHA:·ea0d8a3b829080a61fabb30dc25ef1de962d817902a99b33249fd142cead3c18·...·]-1">)</span><span·class="p">.</span><span·class="w">
220 </span><span·class="mi">4</span><span·class="gp·unselectable">220 </span><span·class="mi">4</span><span·class="gp·unselectable">
221 4&gt;·</span><span·class="nc">complex6</span><span·class="p">:</span><span·class="nf">bar</span><span·class="p"·data-group-id="1878004865-2">(</span><span·class="mi">5</span><span·class="p"·data-group-id="1878004865-2">)</span><span·class="p">.</span><span·class="w">221 4&gt;·</span><span·class="nc">complex6</span><span·class="p">:</span><span·class="nf">bar</span><span·class="p"·data-group-id="9765908018-2">(</span><span·class="mi">5</span><span·class="p"·data-group-id="9765908018-2">)</span><span·class="p">.</span><span·class="w">
222 </span><span·class="mi">10</span><span·class="gp·unselectable">222 </span><span·class="mi">10</span><span·class="gp·unselectable">
223 5&gt;·</span><span·class="nc">complex6</span><span·class="p">:</span><span·class="nf">foo</span><span·class="p"·data-group-id="1878004865-3">(</span><span·class="s">&quot;not·an·integer&quot;</span><span·class="p"·data-group-id="1878004865-3">)</span><span·class="p">.</span><span·class="w">223 5&gt;·</span><span·class="nc">complex6</span><span·class="p">:</span><span·class="nf">foo</span><span·class="p"·data-group-id="9765908018-3">(</span><span·class="s">&quot;not·an·integer&quot;</span><span·class="p"·data-group-id="9765908018-3">)</span><span·class="p">.</span><span·class="w">
224 </span><span·class="gt">**·exception·error:·bad·argument224 </span><span·class="gt">**·exception·error:·bad·argument
225 ·····in·function··complex6:foo/1225 ·····in·function··complex6:foo/1
226 ········called·as·comlpex6:foo(&quot;not·an·integer&quot;)</span></code></pre>226 ········called·as·comlpex6:foo(&quot;not·an·integer&quot;)</span></code></pre>
227 </div>227 </div>
  
228 <div·class="bottom-actions"·id="bottom-actions">228 <div·class="bottom-actions"·id="bottom-actions">
229 ··<div·class="bottom-actions-item">229 ··<div·class="bottom-actions-item">
Offset 271, 15 lines modifiedOffset 271, 15 lines modified
271 ······<p·class="built-using">271 ······<p·class="built-using">
272 ········Built·using272 ········Built·using
273 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the273 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
274 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>274 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
275 ······</p>275 ······</p>
276 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>276 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
277 ····</footer>277 ····</footer>
278 ··</div>278 ··</div>
279 </main>279 </main>
280 </div>280 </div>
281 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>281 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
282 <script>282 <script>
283 ··document.addEventListener("DOMContentLoaded",·function·()·{283 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
6.46 KB
./usr/share/doc/erlang-doc/html/doc/system/oam.html
    
Offset 203, 17 lines modifiedOffset 203, 17 lines modified
203 ··<span·class="text">MIB·Structure</span>203 ··<span·class="text">MIB·Structure</span>
204 </h3>204 </h3>
205 <p>The·top-level·OTP·MIB·is·called·<code·class="inline">OTP-REG</code>·and·it·is·included·in·the·SNMP205 <p>The·top-level·OTP·MIB·is·called·<code·class="inline">OTP-REG</code>·and·it·is·included·in·the·SNMP
206 application.·All·other·OTP·MIBs·import·some·objects·from·this·MIB.</p><p>Each·MIB·is·contained·in·one·application.·The·MIB·text·files·are·stored·under206 application.·All·other·OTP·MIBs·import·some·objects·from·this·MIB.</p><p>Each·MIB·is·contained·in·one·application.·The·MIB·text·files·are·stored·under
207 <code·class="inline">mibs/&lt;MIB&gt;.mib</code>·in·the·application·directory.·The·generated·<code·class="inline">.hrl</code>·files·with207 <code·class="inline">mibs/&lt;MIB&gt;.mib</code>·in·the·application·directory.·The·generated·<code·class="inline">.hrl</code>·files·with
208 constant·declarations·are·stored·under·<code·class="inline">include/&lt;MIB&gt;.hrl</code>,·and·the·compiled208 constant·declarations·are·stored·under·<code·class="inline">include/&lt;MIB&gt;.hrl</code>,·and·the·compiled
209 MIBs·are·stored·under·<code·class="inline">priv/mibs/&lt;MIB&gt;.bin</code>.</p><p>An·application·that·needs·to·import·an·MIB·into·another·MIB·is·to·use·the·<code·class="inline">il</code>209 MIBs·are·stored·under·<code·class="inline">priv/mibs/&lt;MIB&gt;.bin</code>.</p><p>An·application·that·needs·to·import·an·MIB·into·another·MIB·is·to·use·the·<code·class="inline">il</code>
210 option·to·the·SNMP·MIB·compiler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">c</span><span·class="p"·data-group-id="5255577014-1">(</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5255577014-2">[</span><span·class="p"·data-group-id="5255577014-3">{</span><span·class="ss">il</span><span·class="[·...·truncated·by·diffoscope;·len:·337,·SHA:·93e7d6c9ea236f502d7dfd8f38ca50183075a904d6f35e62e8ee1e1f12ebcf12·...·]-1">)</span><span·class="p">.</span></code></pre><p>If·the·application·needs·to·include·a·generated·<code·class="inline">.hrl</code>·file,·it·is·to·use·the210 option·to·the·SNMP·MIB·compiler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">c</span><span·class="p"·data-group-id="2592015607-1">(</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2592015607-2">[</span><span·class="p"·data-group-id="2592015607-3">{</span><span·class="ss">il</span><span·class="[·...·truncated·by·diffoscope;·len:·337,·SHA:·33e3218eade992f9c9f50fd8ecb1925318636ec9005b54b0a84b44ac03145fe8·...·]-1">)</span><span·class="p">.</span></code></pre><p>If·the·application·needs·to·include·a·generated·<code·class="inline">.hrl</code>·file,·it·is·to·use·the
211 <code·class="inline">-include_lib</code>·directive·to·the·Erlang·compiler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1143439178-1">(</span><span·class="ss">my_mib</span><span·class="p"·data-group-id="1143439178-1">)</span><span·class="p">.</span><span·class="w">211 <code·class="inline">-include_lib</code>·directive·to·the·Erlang·compiler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2478633466-1">(</span><span·class="ss">my_mib</span><span·class="p"·data-group-id="2478633466-1">)</span><span·class="p">.</span><span·class="w">
212 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="1143439178-2">(</span><span·class="s">&quot;snmp/include/OTP-REG.hrl&quot;</span><span·class="p"·data-group-id="1143439178-2">)</span><span·class="p">.</span></code></pre><p>Here·is·a·list·of·some·of·the·MIBs·defined·in·the·OTP·system:</p><ul><li><code·class="inline">OTP-REG</code>·(in·SNMP)·contains·the·top-level·OTP·registration·objects,·used·by212 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2478633466-2">(</span><span·class="s">&quot;snmp/include/OTP-REG.hrl&quot;</span><span·class="p"·data-group-id="2478633466-2">)</span><span·class="p">.</span></code></pre><p>Here·is·a·list·of·some·of·the·MIBs·defined·in·the·OTP·system:</p><ul><li><code·class="inline">OTP-REG</code>·(in·SNMP)·contains·the·top-level·OTP·registration·objects,·used·by
213 all·other·MIBs.</li><li><code·class="inline">OTP-TC</code>·(in·SNMP)·contains·the·general·Textual·Conventions,·which·can·be·used213 all·other·MIBs.</li><li><code·class="inline">OTP-TC</code>·(in·SNMP)·contains·the·general·Textual·Conventions,·which·can·be·used
214 by·any·other·MIB.</li><li><code·class="inline">OTP-SNMPEA-MIB</code>·(in·<code·class="inline">snmp</code>)·contains·objects·for·instrumentation·and·control214 by·any·other·MIB.</li><li><code·class="inline">OTP-SNMPEA-MIB</code>·(in·<code·class="inline">snmp</code>)·contains·objects·for·instrumentation·and·control
215 of·the·extensible·SNMP·agent·itself.·The·agent·also·implements·the·standard215 of·the·extensible·SNMP·agent·itself.·The·agent·also·implements·the·standard
216 SNMPv2-MIB·(or·v1·part·of·MIB-II,·if·SNMPv1·is·used).</li></ul><p>The·different·applications·use·different·strategies·for·loading·the·MIBs·into216 SNMPv2-MIB·(or·v1·part·of·MIB-II,·if·SNMPv1·is·used).</li></ul><p>The·different·applications·use·different·strategies·for·loading·the·MIBs·into
217 the·agent.·Some·MIB·implementations·are·code-only,·while·others·need·a·server.217 the·agent.·Some·MIB·implementations·are·code-only,·while·others·need·a·server.
218 One·way,·used·by·the·code-only·MIB·implementations,·is·for·the·user·to·call·a218 One·way,·used·by·the·code-only·MIB·implementations,·is·for·the·user·to·call·a
219 function·such·as·<code·class="inline">snmpa:load_mibs(Agent,·[Mib])</code>·to·load·the·MIB,·and219 function·such·as·<code·class="inline">snmpa:load_mibs(Agent,·[Mib])</code>·to·load·the·MIB,·and
Offset 265, 15 lines modifiedOffset 265, 15 lines modified
265 ······<p·class="built-using">265 ······<p·class="built-using">
266 ········Built·using266 ········Built·using
267 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the267 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
268 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>268 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
269 ······</p>269 ······</p>
270 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>270 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
271 ····</footer>271 ····</footer>
272 ··</div>272 ··</div>
273 </main>273 </main>
274 </div>274 </div>
275 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>275 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
276 <script>276 <script>
277 ··document.addEventListener("DOMContentLoaded",·function·()·{277 ··document.addEventListener("DOMContentLoaded",·function·()·{
791 B
html2text {}
Max HTML report size reached
10.8 KB
./usr/share/doc/erlang-doc/html/doc/system/opaques.html
    
Offset 122, 24 lines modifiedOffset 122, 24 lines modified
122 ··<span·class="text">Opaque·Type·Aliases</span>122 ··<span·class="text">Opaque·Type·Aliases</span>
123 </h2>123 </h2>
124 <p>The·main·use·case·for·opacity·in·Erlang·is·to·hide·the·implementation·of·a·data124 <p>The·main·use·case·for·opacity·in·Erlang·is·to·hide·the·implementation·of·a·data
125 type,·enabling·evolving·the·API·while·minimizing·the·risk·of·breaking·consumers.125 type,·enabling·evolving·the·API·while·minimizing·the·risk·of·breaking·consumers.
126 The·runtime·does·not·check·opacity.·Dialyzer·provides·some·opacity-checking,·but126 The·runtime·does·not·check·opacity.·Dialyzer·provides·some·opacity-checking,·but
127 the·rest·is·up·to·convention.</p><p>This·document·explains·what·Erlang·opacity·is·(and·the·trade-offs·involved)·via127 the·rest·is·up·to·convention.</p><p>This·document·explains·what·Erlang·opacity·is·(and·the·trade-offs·involved)·via
128 the·example·of·the·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#t:set/0"><code·class="inline">sets:set()</code></a>·data·type.·This·type·<em>was</em>128 the·example·of·the·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#t:set/0"><code·class="inline">sets:set()</code></a>·data·type.·This·type·<em>was</em>
129 defined·in·the·<code·class="inline">sets</code>·module·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">opaque</span><span·class="w">·</span><span·class="nf">set</span><span·class="p"·data-group-id="2530874894-1">(</span><span·class="n">Element</span><span·class="p"·data-group-id="2530874894-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">set</span><span·class="p"·data-group-id="2530874894-2">{</span><span·class="ss">segs</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">segs</span><span·class="p"·data-group-id="2530874894-3">(</span><span·class="n">Element</span><span·class="p"·data-group-id="2530874894-3">)</span><span·class="p"·data-group-id="2530874894-2">}</span><span·class="p">.</span></code></pre><p>OTP·24·changed·the·definition·to·the·following·in 
130 <a·href="https://github.com/erlang/otp/commit/e66941e8d7c47b973dff94c0308ea85a6be1958e">this·commit</a>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">opaque</span><span·class="w">·</span><span·class="nf">set</[·...·truncated·by·diffoscope;·len:·1135,·SHA:·de519b6f0617a7c6500b4a0d909f159f5099d94ea468a0e62a23ac237bd8f771·...·]129 defined·in·the·<code·class="inline">sets</code>·module·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">opaque</span><span·class="w">·</span><span·class="nf">set</span><span·class="p"·data-group-id="573[·...·truncated·by·diffoscope;·len:·732,·SHA:·caa270a09cd7ad327c80c26be57f31ddc08de79ff1d6740b99dbd3e9bd54abfb·...·]
 130 <a·href="https://github.com/erlang/otp/commit/e66941e8d7c47b973dff94c0308ea85a6be1958e">this·commit</a>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">opaque</span><span·class="w">·</span><span·class="nf">set</span><span·class="p"·data-group-id="3717740165-1">(</span><span·class="n">Element</span><span·class="p"·data-group-id="3717740165-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">set</span><span·class="p"·data-group-id="3717740165-2">{</span><span·class="ss">segs</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">segs</span><span·class="p"·data-group-id="3717740165-3">(</span><span·class="n">Element</span><span·class="p"·data-group-id="3717740165-3">)</span><span·class="p"·data-group-id="3717740165-2">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="3717740165-4">#{</span><span·class="n">Element</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="o">?</span><span·class="n">VALUE</span><span·class="p"·data-group-id="3717740165-4">}</span><span·class="p">.</span></code></pre><p>And·this·change·was·safer·and·more·backwards-compatible·than·if·the·type·had
131 been·defined·with·<code·class="inline">-type</code>·instead·of·<code·class="inline">-opaque</code>.·Here·is·why:·when·a·module131 been·defined·with·<code·class="inline">-type</code>·instead·of·<code·class="inline">-opaque</code>.·Here·is·why:·when·a·module
132 defines·an·<code·class="inline">-opaque</code>,·the·contract·is·that·only·the·defining·module·should·rely132 defines·an·<code·class="inline">-opaque</code>,·the·contract·is·that·only·the·defining·module·should·rely
133 on·the·definition·of·the·type:·no·other·modules·should·rely·on·the·definition.</p><p>This·means·that·code·that·pattern-matched·on·<code·class="inline">set</code>·as·a·record/tuple·technically133 on·the·definition·of·the·type:·no·other·modules·should·rely·on·the·definition.</p><p>This·means·that·code·that·pattern-matched·on·<code·class="inline">set</code>·as·a·record/tuple·technically
134 broke·the·contract,·and·opted·in·to·being·potentially·broken·when·the·definition134 broke·the·contract,·and·opted·in·to·being·potentially·broken·when·the·definition
135 of·<code·class="inline">set()</code>·changed.·Before·OTP·24,·this·code·printed·<code·class="inline">ok</code>.·In·OTP·24·it·may135 of·<code·class="inline">set()</code>·changed.·Before·OTP·24,·this·code·printed·<code·class="inline">ok</code>.·In·OTP·24·it·may
136 error:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="4684710509-1">(</span><span·class="p"·data-group-id="4684710509-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">136 error:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="4817078317-1">(</span><span·class="p"·data-group-id="4817078317-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
137 ····</span><span·class="n">Set</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_tuple</span><span·class="p"·data-group-id="4684710509-2">(</span><span·class="n">Set</span><span·class="p"·data-group-id="4684710509-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">137 ····</span><span·class="n">Set</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_tuple</span><span·class="p"·data-group-id="4817078317-2">(</span><span·class="n">Set</span><span·class="p"·data-group-id="4817078317-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
138 ········</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="4684710509-3">(</span><span·class="s">&quot;ok&quot;</span><span·class="p"·data-group-id="4684710509-3">)</span><span·class="w">138 ········</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="4817078317-3">(</span><span·class="s">&quot;ok&quot;</span><span·class="p"·data-group-id="4817078317-3">)</span><span·class="w">
139 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p><strong>When·working·with·an·opaque·defined·in·another·module,·here·are·some139 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p><strong>When·working·with·an·opaque·defined·in·another·module,·here·are·some
140 recommendations:</strong></p><ul><li>Don't·examine·the·underlying·type·using·pattern-matching,·guards,·or·functions140 recommendations:</strong></p><ul><li>Don't·examine·the·underlying·type·using·pattern-matching,·guards,·or·functions
141 that·reveal·the·type,·such·as·<a·href="../../erts-15.0.1/doc/html/erlang.html#tuple_size/1"><code·class="inline">tuple_size/1</code></a>·.</li><li>Instead,·use·functions·provided·by·the·module·for·working·with·the·type.·For141 that·reveal·the·type,·such·as·<a·href="../../erts-15.0.1/doc/html/erlang.html#tuple_size/1"><code·class="inline">tuple_size/1</code></a>·.</li><li>Instead,·use·functions·provided·by·the·module·for·working·with·the·type.·For
142 example,·<code·class="inline">sets</code>·module·provides·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#new/0"><code·class="inline">sets:new/0</code></a>,·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#add_element/2"><code·class="inline">sets:add_element/2</code></a>,142 example,·<code·class="inline">sets</code>·module·provides·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#new/0"><code·class="inline">sets:new/0</code></a>,·<a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#add_element/2"><code·class="inline">sets:add_element/2</code></a>,
143 <a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#is_element/2"><code·class="inline">sets:is_element/2</code></a>,·and·so·on.</li><li><p><a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#t:set/1"><code·class="inline">sets:set(a)</code></a>·is·a·subtype·of·<code·class="inline">sets:set(a·|·b)</code>·and·not·the143 <a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#is_element/2"><code·class="inline">sets:is_element/2</code></a>,·and·so·on.</li><li><p><a·href="../../lib/stdlib-6.0.1/doc/html/sets.html#t:set/1"><code·class="inline">sets:set(a)</code></a>·is·a·subtype·of·<code·class="inline">sets:set(a·|·b)</code>·and·not·the
144 other·way·around.·Generally,·you·can·rely·on·the·property·that·<code·class="inline">the_opaque(T)</code>144 other·way·around.·Generally,·you·can·rely·on·the·property·that·<code·class="inline">the_opaque(T)</code>
145 is·a·subtype·of·<code·class="inline">the_opaque(U)</code>·when·T·is·a·subtype·of·U.</p></li></ul><p><strong>When·defining·your·own·opaques,·here·are·some·recommendations:</strong></p><ul><li>Since·consumers·are·expected·to·not·rely·on·the·definition·of·the·opaque·type,145 is·a·subtype·of·<code·class="inline">the_opaque(U)</code>·when·T·is·a·subtype·of·U.</p></li></ul><p><strong>When·defining·your·own·opaques,·here·are·some·recommendations:</strong></p><ul><li>Since·consumers·are·expected·to·not·rely·on·the·definition·of·the·opaque·type,
Offset 205, 15 lines modifiedOffset 205, 15 lines modified
205 ······<p·class="built-using">205 ······<p·class="built-using">
206 ········Built·using206 ········Built·using
207 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the207 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
208 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>208 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
209 ······</p>209 ······</p>
210 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>210 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
211 ····</footer>211 ····</footer>
212 ··</div>212 ··</div>
213 </main>213 </main>
214 </div>214 </div>
215 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>215 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
216 <script>216 <script>
217 ··document.addEventListener("DOMContentLoaded",·function·()·{217 ··document.addEventListener("DOMContentLoaded",·function·()·{
832 B
html2text {}
Max HTML report size reached
3.01 KB
./usr/share/doc/erlang-doc/html/doc/system/otp-patch-apply.html
    
Offset 201, 15 lines modifiedOffset 201, 15 lines modified
201 ··</a>201 ··</a>
202 ··<span·class="text">Sanity·check</span>202 ··<span·class="text">Sanity·check</span>
203 </h2>203 </h2>
204 <p>The·application·dependencies·can·be·checked·using·the·Erlang·shell.204 <p>The·application·dependencies·can·be·checked·using·the·Erlang·shell.
205 Application·dependencies·are·verified·among·installed·applications·by205 Application·dependencies·are·verified·among·installed·applications·by
206 <code·class="inline">otp_patch_apply</code>,·but·these·are·not·necessarily·those·actually·loaded.206 <code·class="inline">otp_patch_apply</code>,·but·these·are·not·necessarily·those·actually·loaded.
207 By·calling·<code·class="inline">system_information:sanity_check()</code>·one·can·validate207 By·calling·<code·class="inline">system_information:sanity_check()</code>·one·can·validate
208 dependencies·among·applications·actually·loaded.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">system_information</span><span·class="p">:</span><span·class="nf">sanity_check</span><span·class="p"·data-group-id="4616715293-1">(</span><span·class="p"·data-group-id="4616715293-1">)</span><span·class="p">.</span><span·class="w">208 dependencies·among·applications·actually·loaded.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">system_information</span><span·class="p">:</span><span·class="nf">sanity_check</span><span·class="p"·data-group-id="6253444778-1">(</span><span·class="p"·data-group-id="6253444778-1">)</span><span·class="p">.</span><span·class="w">
209 </span><span·class="ss">ok</span></code></pre><p>Please·take·a·look·at·the·reference·of·<a·href="../../lib/runtime_tools-2.1/doc/html/system_information.html#sanity_check/0"·title="">sanity_check()</a>·for·more209 </span><span·class="ss">ok</span></code></pre><p>Please·take·a·look·at·the·reference·of·<a·href="../../lib/runtime_tools-2.1/doc/html/system_information.html#sanity_check/0"·title="">sanity_check()</a>·for·more
210 information.</p>210 information.</p>
211 </div>211 </div>
  
212 <div·class="bottom-actions"·id="bottom-actions">212 <div·class="bottom-actions"·id="bottom-actions">
213 ··<div·class="bottom-actions-item">213 ··<div·class="bottom-actions-item">
  
Offset 254, 15 lines modifiedOffset 254, 15 lines modified
254 ······<p·class="built-using">254 ······<p·class="built-using">
255 ········Built·using255 ········Built·using
256 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the256 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
257 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>257 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
258 ······</p>258 ······</p>
259 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>259 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
260 ····</footer>260 ····</footer>
261 ··</div>261 ··</div>
262 </main>262 </main>
263 </div>263 </div>
264 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>264 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
265 <script>265 <script>
266 ··document.addEventListener("DOMContentLoaded",·function·()·{266 ··document.addEventListener("DOMContentLoaded",·function·()·{
729 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/doc/system/overview.html
    
Offset 307, 15 lines modifiedOffset 307, 15 lines modified
307 ······<p·class="built-using">307 ······<p·class="built-using">
308 ········Built·using308 ········Built·using
309 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the309 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
310 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>310 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
311 ······</p>311 ······</p>
312 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>312 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
313 ····</footer>313 ····</footer>
314 ··</div>314 ··</div>
315 </main>315 </main>
316 </div>316 </div>
317 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>317 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
318 <script>318 <script>
319 ··document.addEventListener("DOMContentLoaded",·function·()·{319 ··document.addEventListener("DOMContentLoaded",·function·()·{
731 B
html2text {}
Max HTML report size reached
5.03 KB
./usr/share/doc/erlang-doc/html/doc/system/patterns.html
    
Offset 128, 18 lines modifiedOffset 128, 18 lines modified
128 succeeds,·any·unbound·variables·in·the·pattern·become·bound.·If·the·matching128 succeeds,·any·unbound·variables·in·the·pattern·become·bound.·If·the·matching
129 fails,·an·exception·is·raised.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">X</span><span·class="p">.</span><span·class="w">129 fails,·an·exception·is·raised.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">X</span><span·class="p">.</span><span·class="w">
130 </span><span·class="gt">**·1:1:·variable·&#39;X&#39;·is·unbound·**</span><span·class="gp·unselectable">130 </span><span·class="gt">**·1:1:·variable·&#39;X&#39;·is·unbound·**</span><span·class="gp·unselectable">
131 2&gt;·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">.</span><span·class="w">131 2&gt;·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">.</span><span·class="w">
132 </span><span·class="mi">2</span><span·class="gp·unselectable">132 </span><span·class="mi">2</span><span·class="gp·unselectable">
133 3&gt;·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">133 3&gt;·</span><span·class="n">X</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">
134 </span><span·class="mi">3</span><span·class="gp·unselectable">134 </span><span·class="mi">3</span><span·class="gp·unselectable">
135 4&gt;·</span><span·class="p"·data-group-id="8245242183-1">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8245242183-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·179,·SHA:·9729421906020d04e3bf6fbf5b0618548adc5f5d09044d0657363bc74e3873a4·...·]-2">}</span><span·class="p">.</span><span·class="w">135 4&gt;·</span><span·class="p"·data-group-id="0823532831-1">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="0823532831-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·179,·SHA:·4359ceaeec3161350e42ebed13fa3f09649fee311234dec20517b516f602c73b·...·]-2">}</span><span·class="p">.</span><span·class="w">
136 </span><span·class="gt">**·exception·error:·no·match·of·right·hand·side·value·{1,2}</span><span·class="gp·unselectable">136 </span><span·class="gt">**·exception·error:·no·match·of·right·hand·side·value·{1,2}</span><span·class="gp·unselectable">
137 5&gt;·</span><span·class="p"·data-group-id="8245242183-3">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="8245242183-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·179,·SHA:·7ec0dea14d016a57da95a31162f50513e306d432af67ea73d8b850a26af00723·...·]-4">}</span><span·class="p">.</span><span·class="w">137 5&gt;·</span><span·class="p"·data-group-id="0823532831-3">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="0823532831-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·179,·SHA:·350859989882a301f6eeb9381421ffe5a4a1e69f6d80e883efd4aa9c2da2b8d6·...·]-4">}</span><span·class="p">.</span><span·class="w">
138 </span><span·class="p"·data-group-id="8245242183-5">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="8245242183-5">}</span><span·class="gp·unselectable">138 </span><span·class="p"·data-group-id="0823532831-5">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="0823532831-5">}</span><span·class="gp·unselectable">
139 6&gt;·</span><span·class="n">Y</span><span·class="p">.</span><span·class="w">139 6&gt;·</span><span·class="n">Y</span><span·class="p">.</span><span·class="w">
140 </span><span·class="mi">3</span></code></pre>140 </span><span·class="mi">3</span></code></pre>
141 </div>141 </div>
  
142 <div·class="bottom-actions"·id="bottom-actions">142 <div·class="bottom-actions"·id="bottom-actions">
143 ··<div·class="bottom-actions-item">143 ··<div·class="bottom-actions-item">
  
Offset 184, 15 lines modifiedOffset 184, 15 lines modified
184 ······<p·class="built-using">184 ······<p·class="built-using">
185 ········Built·using185 ········Built·using
186 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the186 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
187 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>187 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
188 ······</p>188 ······</p>
189 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>189 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
190 ····</footer>190 ····</footer>
191 ··</div>191 ··</div>
192 </main>192 </main>
193 </div>193 </div>
194 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>194 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
195 <script>195 <script>
196 ··document.addEventListener("DOMContentLoaded",·function·()·{196 ··document.addEventListener("DOMContentLoaded",·function·()·{
521 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/doc/system/ports.html
    
Offset 225, 15 lines modifiedOffset 225, 15 lines modified
225 ······<p·class="built-using">225 ······<p·class="built-using">
226 ········Built·using226 ········Built·using
227 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the227 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
228 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>228 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
229 ······</p>229 ······</p>
230 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>230 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
231 ····</footer>231 ····</footer>
232 ··</div>232 ··</div>
233 </main>233 </main>
234 </div>234 </div>
235 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>235 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
236 <script>236 <script>
237 ··document.addEventListener("DOMContentLoaded",·function·()·{237 ··document.addEventListener("DOMContentLoaded",·function·()·{
754 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/doc/system/profiling.html
    
Offset 311, 15 lines modifiedOffset 311, 15 lines modified
311 ······<p·class="built-using">311 ······<p·class="built-using">
312 ········Built·using312 ········Built·using
313 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the313 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
314 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>314 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
315 ······</p>315 ······</p>
316 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>316 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
317 ····</footer>317 ····</footer>
318 ··</div>318 ··</div>
319 </main>319 </main>
320 </div>320 </div>
321 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>321 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
322 <script>322 <script>
323 ··document.addEventListener("DOMContentLoaded",·function·()·{323 ··document.addEventListener("DOMContentLoaded",·function·()·{
741 B
html2text {}
Max HTML report size reached
71.4 KB
./usr/share/doc/erlang-doc/html/doc/system/prog_ex_records.html
    
Offset 122, 105 lines modifiedOffset 122, 105 lines modified
122 ··<span·class="text">Records·and·Tuples</span>122 ··<span·class="text">Records·and·Tuples</span>
123 </h2>123 </h2>
124 <p>The·main·advantage·of·using·records·rather·than·tuples·is·that·fields·in·a124 <p>The·main·advantage·of·using·records·rather·than·tuples·is·that·fields·in·a
125 record·are·accessed·by·name,·whereas·fields·in·a·tuple·are·accessed·by·position.125 record·are·accessed·by·name,·whereas·fields·in·a·tuple·are·accessed·by·position.
126 To·illustrate·these·differences,·suppose·that·you·want·to·represent·a·person126 To·illustrate·these·differences,·suppose·that·you·want·to·represent·a·person
127 with·the·tuple·<code·class="inline">{Name,·Address,·Phone}</code>.</p><p>To·write·functions·that·manipulate·this·data,·remember·the·following:</p><ul><li>The·<code·class="inline">Name</code>·field·is·the·first·element·of·the·tuple.</li><li>The·<code·class="inline">Address</code>·field·is·the·second·element.</li><li>The·<code·class="inline">Phone</code>·field·is·the·third·element.</li></ul><p>For·example,·to·extract·data·from·a·variable·<code·class="inline">P</code>·that·contains·such·a·tuple,·you127 with·the·tuple·<code·class="inline">{Name,·Address,·Phone}</code>.</p><p>To·write·functions·that·manipulate·this·data,·remember·the·following:</p><ul><li>The·<code·class="inline">Name</code>·field·is·the·first·element·of·the·tuple.</li><li>The·<code·class="inline">Address</code>·field·is·the·second·element.</li><li>The·<code·class="inline">Phone</code>·field·is·the·third·element.</li></ul><p>For·example,·to·extract·data·from·a·variable·<code·class="inline">P</code>·that·contains·such·a·tuple,·you
128 can·write·the·following·code·and·then·use·pattern·matching·to·extract·the128 can·write·the·following·code·and·then·use·pattern·matching·to·extract·the
129 relevant·fields:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="4018091571-1">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">P</span><span·class="p"·data-group-id="4018091571-1">)</span><span·class="p">,</span><span·class="w">129 relevant·fields:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="1530100026-1">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">P</span><span·class="p"·data-group-id="1530100026-1">)</span><span·class="p">,</span><span·class="w">
130 </span><span·class="n">Address</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="4018091571-2">(</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">P</span><span·class="p"·data-group-id="4018091571-2">)</span><span·class="p">,</span><span·class="w">130 </span><span·class="n">Address</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="1530100026-2">(</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">P</span><span·class="p"·data-group-id="1530100026-2">)</span><span·class="p">,</span><span·class="w">
131 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Such·code·is·difficult·to·read·and·understand,·and·errors·occur·if·the·numbering131 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Such·code·is·difficult·to·read·and·understand,·and·errors·occur·if·the·numbering
132 of·the·elements·in·the·tuple·is·wrong.·If·the·data·representation·of·the·fields132 of·the·elements·in·the·tuple·is·wrong.·If·the·data·representation·of·the·fields
133 is·changed,·by·re-ordering,·adding,·or·removing·fields,·all·references·to·the133 is·changed,·by·re-ordering,·adding,·or·removing·fields,·all·references·to·the
134 person·tuple·must·be·checked·and·possibly·modified.</p><p>Records·allow·references·to·the·fields·by·name,·instead·of·by·position.·In·the134 person·tuple·must·be·checked·and·possibly·modified.</p><p>Records·allow·references·to·the·fields·by·name,·instead·of·by·position.·In·the
135 following·example,·a·record·instead·of·a·tuple·is·used·to·store·the·data:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3506449754-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3506449754-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</spa[·...·truncated·by·diffoscope;·len:·174,·SHA:·27bec674c352ee723a9f4cb61c168e38d13b000c3558fd48c42ab22a9f60515b·...·]4-1">)</span><span·class="p">.</span></code></pre><p>This·enables·references·to·the·fields·of·the·record·by·name.·For·example,·if·<code·class="inline">P</code>135 following·example,·a·record·instead·of·a·tuple·is·used·to·store·the·data:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="9194394274-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9194394274-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</spa[·...·truncated·by·diffoscope;·len:·174,·SHA:·0ec9cfff62bddc3a95eb7a463686b948885fb5eb9b94eab195b2805a98735dae·...·]4-1">)</span><span·class="p">.</span></code></pre><p>This·enables·references·to·the·fields·of·the·record·by·name.·For·example,·if·<code·class="inline">P</code>
136 is·a·variable·whose·value·is·a·<code·class="inline">person</code>·record,·the·following·code·access·the136 is·a·variable·whose·value·is·a·<code·class="inline">person</code>·record,·the·following·code·access·the
137 name·and·address·fields·of·the·records:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">137 name·and·address·fields·of·the·records:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">
138 </span><span·class="n">Address</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">address</span><span·class="p">,</span><span·class="w">138 </span><span·class="n">Address</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">address</span><span·class="p">,</span><span·class="w">
139 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Internally,·records·are·represented·using·tagged·tuples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1920258195-1">{</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Phone</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·66,·SHA:·4de3436b717a675f6044604a562fe7170806440e4c5edf4acd4592111cbf7d6e·...·]-1">}</span></code></pre><h2·id="defining-a-record"·class="section-heading">139 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Internally,·records·are·represented·using·tagged·tuples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4759026321-1">{</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Phone</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·66,·SHA:·4d00779ff100ff1ea3cd3f7a74430cec4914c59f162b8b06312cbc0162a13471·...·]-1">}</span></code></pre><h2·id="defining-a-record"·class="section-heading">
140 ··<a·href="#defining-a-record"·class="hover-link">140 ··<a·href="#defining-a-record"·class="hover-link">
141 ····<i·class="ri-link-m"·aria-hidden="true"></i>141 ····<i·class="ri-link-m"·aria-hidden="true"></i>
142 ··</a>142 ··</a>
143 ··<span·class="text">Defining·a·Record</span>143 ··<span·class="text">Defining·a·Record</span>
144 </h2>144 </h2>
145 <p>This·following·definition·of·a·<code·class="inline">person</code>·is·used·in·several·examples·in·this145 <p>This·following·definition·of·a·<code·class="inline">person</code>·is·used·in·several·examples·in·this
146 section.·Three·fields·are·included,·<code·class="inline">name</code>,·<code·class="inline">phone</code>,·and·<code·class="inline">address</code>.·The·default146 section.·Three·fields·are·included,·<code·class="inline">name</code>,·<code·class="inline">phone</code>,·and·<code·class="inline">address</code>.·The·default
147 values·for·<code·class="inline">name</code>·and·<code·class="inline">phone</code>·is·&quot;&quot;·and·[],·respectively.·The·default·value·for147 values·for·<code·class="inline">name</code>·and·<code·class="inline">phone</code>·is·&quot;&quot;·and·[],·respectively.·The·default·value·for
148 <code·class="inline">address</code>·is·the·atom·<code·class="inline">undefined</code>,·since·no·default·value·is·supplied·for·this148 <code·class="inline">address</code>·is·the·atom·<code·class="inline">undefined</code>,·since·no·default·value·is·supplied·for·this
149 field:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="7643512845-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7643512845-2">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7643512845-3">[</span><span·class="p"·data-group-id="7643512845-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">address</span><span·class="p"·data-group-id="7643512845-2">}</span><span·class="p"·data-group-id="7643512845-1">)</span><span·class="p">.</span></code></pre><p>The·record·must·be·defined·in·the·shell·to·enable·use·of·the·record·syntax·in 
150 the·examples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">rd</span><span·class="p"·data-group-id="8547076168-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">[·...·truncated·by·diffoscope;·len:·676,·SHA:·1ee565c1fc351fe02a5aef899187f7d812c3e9bbe9802e0e1927589aedd0e41e·...·]149 field:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="2180841371-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·732,·SHA:·e95d6c453e99860e044dcaa3f918e7f19aca8b6f9dd12bb087456066ed1ee92b·...·]
 150 the·examples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">rd</span><span·class="p"·data-group-id="1356807018-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1356807018-2">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1356807018-3">[</span><span·class="p"·data-group-id="1356807018-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">address</span><span·class="p"·data-group-id="1356807018-2">}</span><span·class="p"·data-group-id="1356807018-1">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="ss">person</span></code></pre><p>This·is·because·record·definitions·are·only·available·at·compile·time,·not·at151 </span><span·class="ss">person</span></code></pre><p>This·is·because·record·definitions·are·only·available·at·compile·time,·not·at
152 runtime.·For·details·on·records·in·the·shell,·see·the·<a·href="../../lib/stdlib-6.0.1/doc/html/shell.html"><code·class="inline">shell</code></a>·manual·page·in152 runtime.·For·details·on·records·in·the·shell,·see·the·<a·href="../../lib/stdlib-6.0.1/doc/html/shell.html"><code·class="inline">shell</code></a>·manual·page·in
153 STDLIB.</p><h2·id="creating-a-record"·class="section-heading">153 STDLIB.</p><h2·id="creating-a-record"·class="section-heading">
154 ··<a·href="#creating-a-record"·class="hover-link">154 ··<a·href="#creating-a-record"·class="hover-link">
155 ····<i·class="ri-link-m"·aria-hidden="true"></i>155 ····<i·class="ri-link-m"·aria-hidden="true"></i>
156 ··</a>156 ··</a>
157 ··<span·class="text">Creating·a·Record</span>157 ··<span·class="text">Creating·a·Record</span>
158 </h2>158 </h2>
159 <p>A·new·<code·class="inline">person</code>·record·is·created·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8581422484-1">{</span><span·class="ss">phone</span><span·class="o">=</span><span·class="p"·data-group-id="8581422484-2">[</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">2</span><span·[·...·truncated·by·diffoscope;·len:·474,·SHA:·72d13b33c76ef10ab228864acedb35fcb18bab224a18b14a514eb34880927281·...·]-1">}</span><span·class="p">.</span><span·class="w">159 <p>A·new·<code·class="inline">person</code>·record·is·created·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8810595260-1">{</span><span·class="ss">phone</span><span·class="o">=</span><span·class="p"·data-group-id="8810595260-2">[</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">2</span><span·[·...·truncated·by·diffoscope;·len:·474,·SHA:·c00e9a01dd9f0a1d1146fb214435e0097691a62a3911a2e6de143f925232d384·...·]-1">}</span><span·class="p">.</span><span·class="w">
160 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8581422484-3">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Robert&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=[·...·truncated·by·diffoscope;·len:·706,·SHA:·1b4d9cbc8dc4bd98cc4d09f6aa59ebef06b7f4a96c0922eb0e722422bfd23a31·...·]-3">}</span></code></pre><p>As·the·<code·class="inline">address</code>·field·was·omitted,·its·default·value·is·used.</p><p>From·Erlang·5.1/OTP·R8B,·a·value·to·all·fields·in·a·record·can·be·set·with·the160 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8810595260-3">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Robert&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=[·...·truncated·by·diffoscope;·len:·706,·SHA:·558857462af6e17727dcf63f576db19f0170ba8d04554ad2615c7987c89fcbac·...·]-3">}</span></code></pre><p>As·the·<code·class="inline">address</code>·field·was·omitted,·its·default·value·is·used.</p><p>From·Erlang·5.1/OTP·R8B,·a·value·to·all·fields·in·a·record·can·be·set·with·the
161 special·field·<code·class="inline">_</code>.·<code·class="inline">_</code>·means·&quot;all·fields·not·explicitly·specified&quot;.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9428840991-1">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Jakob&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·126,·SHA:·5a19583a49a59f70273ce7812d1edbd6b8da3863616ebeba1ecd7fd768cab35f·...·]-1">}</span><span·class="p">.</span><span·class="w">161 special·field·<code·class="inline">_</code>.·<code·class="inline">_</code>·means·&quot;all·fields·not·explicitly·specified&quot;.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="2733284267-1">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Jakob&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·126,·SHA:·428e3999789f30e024ef393c07afb5d88d4e02cf33412de419e3644d5cc2c116·...·]-1">}</span><span·class="p">.</span><span·class="w">
162 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9428840991-2">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Jakob&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=[·...·truncated·by·diffoscope;·len:·269,·SHA:·d0c5d41bc0554d75d431d557011d7153f387070657af0beadfc8f2e7a11e3103·...·]-2">}</span></code></pre><p>It·is·primarily·intended·to·be·used·in·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#match/2"><code·class="inline">ets:match/2</code></a>·and162 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="2733284267-2">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Jakob&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=[·...·truncated·by·diffoscope;·len:·269,·SHA:·ef75a146c5132894744ae9c70e2c5a1fd93b88c0d7d85311b13d400d9ce26824·...·]-2">}</span></code></pre><p>It·is·primarily·intended·to·be·used·in·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#match/2"><code·class="inline">ets:match/2</code></a>·and
163 <a·href="../../lib/mnesia-4.23.2/doc/html/mnesia.html#match_object/3"><code·class="inline">mnesia:match_object/3</code></a>,·to·set·record·fields·to·the·atom·<code·class="inline">'_'</code>.·(This·is·a163 <a·href="../../lib/mnesia-4.23.2/doc/html/mnesia.html#match_object/3"><code·class="inline">mnesia:match_object/3</code></a>,·to·set·record·fields·to·the·atom·<code·class="inline">'_'</code>.·(This·is·a
164 wildcard·in·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#match/2"><code·class="inline">ets:match/2</code></a>.)</p><h2·id="accessing-a-record-field"·class="section-heading">164 wildcard·in·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#match/2"><code·class="inline">ets:match/2</code></a>.)</p><h2·id="accessing-a-record-field"·class="section-heading">
165 ··<a·href="#accessing-a-record-field"·class="hover-link">165 ··<a·href="#accessing-a-record-field"·class="hover-link">
166 ····<i·class="ri-link-m"·aria-hidden="true"></i>166 ····<i·class="ri-link-m"·aria-hidden="true"></i>
167 ··</a>167 ··</a>
168 ··<span·class="text">Accessing·a·Record·Field</span>168 ··<span·class="text">Accessing·a·Record·Field</span>
169 </h2>169 </h2>
170 <p>The·following·example·shows·how·to·access·a·record·field:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8361688124-1">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·568,·SHA:·ed58582e72c3b0c0d711d8c671aaa3705f26c6fc5ca51530f978c512a897bbfb·...·]-1">}</span><span·class="p">.</span><span·class="w">170 <p>The·following·example·shows·how·to·access·a·record·field:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="5936835796-1">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·568,·SHA:·d7a977f46778bc3cfa07c5f5426a711e491a353ea5401e8e5329389464d4c4d9·...·]-1">}</span><span·class="p">.</span><span·class="w">
171 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8361688124-3">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=</[·...·truncated·by·diffoscope;·len:·704,·SHA:·9f7d5db4a49f50ceefd3e4efc7d64838dfc9e8464e510eb2c296fe8913587ee7·...·]-3">}</span><span·class="gp·unselectable">171 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="5936835796-3">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=</[·...·truncated·by·diffoscope;·len:·704,·SHA:·28aa374e505f6c7830d0732a3cc3bdd743775b5755e1714a8d28becbac4e3923·...·]-3">}</span><span·class="gp·unselectable">
172 &gt;·</span><span·class="n">P</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p">.</span><span·class="w">172 &gt;·</span><span·class="n">P</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p">.</span><span·class="w">
173 </span><span·class="s">&quot;Joe&quot;</span></code></pre><h2·id="updating-a-record"·class="section-heading">173 </span><span·class="s">&quot;Joe&quot;</span></code></pre><h2·id="updating-a-record"·class="section-heading">
174 ··<a·href="#updating-a-record"·class="hover-link">174 ··<a·href="#updating-a-record"·class="hover-link">
175 ····<i·class="ri-link-m"·aria-hidden="true"></i>175 ····<i·class="ri-link-m"·aria-hidden="true"></i>
176 ··</a>176 ··</a>
177 ··<span·class="text">Updating·a·Record</span>177 ··<span·class="text">Updating·a·Record</span>
178 </h2>178 </h2>
179 <p>The·following·example·shows·how·to·update·a·record:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">P1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8812890232-1">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</span><span·class="o">=</span><span·class="p"·data-group-id="8812890232-2[·...·truncated·by·diffoscope;·len:·373,·SHA:·d1596616e571b30da7781bdcf969f4a550ac795e249535182c9967bc050fef4d·...·]-1">}</span><span·class="p">.</span><span·class="w">179 <p>The·following·example·shows·how·to·update·a·record:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">P1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1285216239-1">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</span><span·class="o">=</span><span·class="p"·data-group-id="1285216239-2[·...·truncated·by·diffoscope;·len:·373,·SHA:·820663842e751eeee45e8d9e55ad43b585b4f64aa6fcc4ec38c58ae4dfa62078·...·]-1">}</span><span·class="p">.</span><span·class="w">
180 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8812890232-3">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=</[·...·truncated·by·diffoscope;·len:·469,·SHA:·de87165fc3a794d85cae4336c8c4201e8fda7fb89a3a6461d2b74c7d500dabf4·...·]-3">}</span><span·class="gp·unselectable">180 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1285216239-3">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=</[·...·truncated·by·diffoscope;·len:·469,·SHA:·ffefefb79a9d9088bd0141d0ebe2abd2495a9d85595a9a7a6cda546c371bcc5c·...·]-3">}</span><span·class="gp·unselectable">
181 &gt;·</span><span·class="n">P2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P1</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8812890232-5">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Robert&quot;</span><span·class="p"·data-group-id="8812890232-5">}</span><span·class="p">.</span><span·class="w">181 &gt;·</span><span·class="n">P2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P1</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1285216239-5">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Robert&quot;</span><span·class="p"·data-group-id="1285216239-5">}</span><span·class="p">.</span><span·class="w">
182 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8812890232-6">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Robert&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">[·...·truncated·by·diffoscope;·len:·472,·SHA:·bb3f251a06435642e956a80563175c0099ea91e1941502674d827585ebd97501·...·]-6">}</span></code></pre><h2·id="type-testing"·class="section-heading">182 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1285216239-6">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Robert&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">[·...·truncated·by·diffoscope;·len:·472,·SHA:·c59c899c9d83c57d25b9acdffccc8ac3a106b87c677b323f90d39280b7c6a274·...·]-6">}</span></code></pre><h2·id="type-testing"·class="section-heading">
183 ··<a·href="#type-testing"·class="hover-link">183 ··<a·href="#type-testing"·class="hover-link">
184 ····<i·class="ri-link-m"·aria-hidden="true"></i>184 ····<i·class="ri-link-m"·aria-hidden="true"></i>
185 ··</a>185 ··</a>
186 ··<span·class="text">Type·Testing</span>186 ··<span·class="text">Type·Testing</span>
187 </h2>187 </h2>
188 <p>The·following·example·shows·that·the·guard·succeeds·if·<code·class="inline">P</code>·is·record·of·type188 <p>The·following·example·shows·that·the·guard·succeeds·if·<code·class="inline">P</code>·is·record·of·type
189 <code·class="inline">person</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="4403775078-1">(</span><span·class="n">P</span><span·class="p"·data-group-id="4403775078-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_record</span><span·class="p"·data-group-id="4403775078-2">(</s[·...·truncated·by·diffoscope;·len:·147,·SHA:·5f7023984c74de3e961d89f6ad009b78cc2ee361f5cc1972cd90a6394fdbba18·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">a_person</span><span·class="p">;</span><span·class="w">189 <code·class="inline">person</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="8532680445-1">(</span><span·class="n">P</span><span·class="p"·data-group-id="8532680445-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_record</span><span·class="p"·data-group-id="8532680445-2">(</s[·...·truncated·by·diffoscope;·len:·147,·SHA:·9cce554fd79451890d8fd7940900100558fb07d9c46ca42a1ae1af974d793ab3·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">a_person</span><span·class="p">;</span><span·class="w">
190 </span><span·class="nf">foo</span><span·class="p"·data-group-id="4403775078-3">(</span><span·class="p">_</span><span·class="p"·data-group-id="4403775078-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">not_a_person</span><span·class="p">.</span></code></pre><h2·id="pattern-matching"·class="section-heading">190 </span><span·class="nf">foo</span><span·class="p"·data-group-id="8532680445-3">(</span><span·class="p">_</span><span·class="p"·data-group-id="8532680445-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">not_a_person</span><span·class="p">.</span></code></pre><h2·id="pattern-matching"·class="section-heading">
191 ··<a·href="#pattern-matching"·class="hover-link">191 ··<a·href="#pattern-matching"·class="hover-link">
192 ····<i·class="ri-link-m"·aria-hidden="true"></i>192 ····<i·class="ri-link-m"·aria-hidden="true"></i>
193 ··</a>193 ··</a>
194 ··<span·class="text">Pattern·Matching</span>194 ··<span·class="text">Pattern·Matching</span>
195 </h2>195 </h2>
196 <p>Matching·can·be·used·in·combination·with·records,·as·shown·in·the·following196 <p>Matching·can·be·used·in·combination·with·records,·as·shown·in·the·following
197 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">P3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9609802685-1">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</span><span·class="o">=</span><span·class="p"·data-group-id="9609802685-2[·...·truncated·by·diffoscope;·len:·373,·SHA:·7b31d0a5aea4e91a7869c12e9e3ef13333850bb606690aeda96747a8584e743b·...·]-1">}</span><span·class="p">.</span><span·class="w">197 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">P3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="4545588704-1">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</span><span·class="o">=</span><span·class="p"·data-group-id="4545588704-2[·...·truncated·by·diffoscope;·len:·373,·SHA:·7f80435e06d93c656630896b63c17d1f9434fcfce04608d4617d69560a82abc4·...·]-1">}</span><span·class="p">.</span><span·class="w">
198 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9609802685-3">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=</[·...·truncated·by·diffoscope;·len:·469,·SHA:·7f817ecf25052140e041e2b92d73a9aabd0334329ddefd04f2b21f22e080e825·...·]-3">}</span><span·class="gp·unselectable">198 </span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="4545588704-3">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;Joe&quot;</span><span·class="p">,</span><span·class="ss">phone</span><span·class="w">·</span><span·class="o">=</[·...·truncated·by·diffoscope;·len:·469,·SHA:·f28f272f748f55b5989f462710d7e69763616f77baa03d9511fb9b6801812b1a·...·]-3">}</span><span·class="gp·unselectable">
199 &gt;·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9609802685-5">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="9609802685-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">.</span><span·class="w">199 &gt;·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="4545588704-5">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="4545588704-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">.</span><span·class="w">
200 </span><span·class="s">&quot;Joe&quot;</span></code></pre><p>The·following·function·takes·a·list·of·<code·class="inline">person</code>·records·and·searches·for·the200 </span><span·class="s">&quot;Joe&quot;</span></code></pre><p>The·following·function·takes·a·list·of·<code·class="inline">person</code>·records·and·searches·for·the
201 phone·number·of·a·person·with·a·particular·name:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">find_phone</span><span·class="p"·data-group-id="1225742723-1">(</span><span·class="p"·data-group-id="1225742723-2">[</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1225742723-3">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="n">Name</[·...·truncated·by·diffoscope;·len:·452,·SHA:·fade964a8027201954982e93e468dc4c59423d44bce53dc0d992c9bbfe743de6·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">201 phone·number·of·a·person·with·a·particular·name:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">find_phone</span><span·class="p"·data-group-id="4570137790-1">(</span><span·class="p"·data-group-id="4570137790-2">[</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="4570137790-3">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="n">Name</[·...·truncated·by·diffoscope;·len:·452,·SHA:·75efe8af62b853a1f984d972e3d68dfe015a93c8071b5c8942f97cdf22e800d0·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
202 ····</span><span·class="p"·data-group-id="1225742723-4">{</span><span·class="ss">found</span><span·class="p">,</span><span·class="w">··</span><span·class="n">Phone</span><span·class="p"·data-group-id="1225742723-4">}</span><span·class="p">;</span><span·class="w">202 ····</span><span·class="p"·data-group-id="4570137790-4">{</span><span·class="ss">found</span><span·class="p">,</span><span·class="w">··</span><span·class="n">Phone</span><span·class="p"·data-group-id="4570137790-4">}</span><span·class="p">;</span><span·class="w">
203 </span><span·class="nf">find_phone</span><span·class="p"·data-group-id="1225742723-5">(</span><span·class="p"·data-group-id="1225742723-6">[</span><span·class="p">_</span><span·class="p">|</span><span·class="w">·</span><span·class="n">T</span><span·class="p"·data-group-id="1225742723-6">]</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·84,·SHA:·f4e2d17f3e838db48517862730ba292c1a750cd65b96297ee57909fd296f026d·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">203 </span><span·class="nf">find_phone</span><span·class="p"·data-group-id="4570137790-5">(</span><span·class="p"·data-group-id="4570137790-6">[</span><span·class="p">_</span><span·class="p">|</span><span·class="w">·</span><span·class="n">T</span><span·class="p"·data-group-id="4570137790-6">]</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·84,·SHA:·05a402d50179e409892a7a5edc19bf3d52224e2734432b74775a75af9279ee91·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
204 ····</span><span·class="nf">find_phone</span><span·class="p"·data-group-id="1225742723-7">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="1225742723-7">)</span><span·class="p">;</span><span·class="w">204 ····</span><span·class="nf">find_phone</span><span·class="p"·data-group-id="4570137790-7">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="4570137790-7">)</span><span·class="p">;</span><span·class="w">
205 </span><span·class="nf">find_phone</span><span·class="p"·data-group-id="1225742723-8">(</span><span·class="p"·data-group-id="1225742723-9">[</span><span·class="p"·data-group-id="1225742723-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="1225742723-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">205 </span><span·class="nf">find_phone</span><span·class="p"·data-group-id="4570137790-8">(</span><span·class="p"·data-group-id="4570137790-9">[</span><span·class="p"·data-group-id="4570137790-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="4570137790-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 ····</span><span·class="ss">not_found</span><span·class="p">.</span></code></pre><p>The·fields·referred·to·in·the·pattern·can·be·given·in·any·order.</p><h2·id="nested-records"·class="section-heading">206 ····</span><span·class="ss">not_found</span><span·class="p">.</span></code></pre><p>The·fields·referred·to·in·the·pattern·can·be·given·in·any·order.</p><h2·id="nested-records"·class="section-heading">
207 ··<a·href="#nested-records"·class="hover-link">207 ··<a·href="#nested-records"·class="hover-link">
208 ····<i·class="ri-link-m"·aria-hidden="true"></i>208 ····<i·class="ri-link-m"·aria-hidden="true"></i>
209 ··</a>209 ··</a>
210 ··<span·class="text">Nested·Records</span>210 ··<span·class="text">Nested·Records</span>
211 </h2>211 </h2>
212 <p>The·value·of·a·field·in·a·record·can·be·an·instance·of·a·record.·Retrieval·of212 <p>The·value·of·a·field·in·a·record·can·be·an·instance·of·a·record.·Retrieval·of
213 nested·data·can·be·done·stepwise,·or·in·a·single·step,·as·shown·in·the·following213 nested·data·can·be·done·stepwise,·or·in·a·single·step,·as·shown·in·the·following
214 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6900103791-1">(</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6900103791-2">{</span><span·class="ss">first</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·322,·SHA:·21423ef8fa78ab351fc7070c6271f92c77f2d8337d28f2a8071be4834c6f90ae·...·]-1">)</span><span·class="p">.</span><span·class="w">214 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="9900584762-1">(</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9900584762-2">{</span><span·class="ss">first</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·322,·SHA:·94b971ea69a5ffb149e4d6da8f3c8c5c55e2f7fa506e8432685c6a143c0e5c67·...·]-1">)</span><span·class="p">.</span><span·class="w">
215 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6900103791-3">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6900103791-4">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·326,·SHA:·032a0b25ebb183d0483b140d3d3183ff43783ef34e2f7286deb36e9f20c3a485·...·]-3">)</span><span·class="p">.</span><span·class="w">215 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="9900584762-3">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9900584762-4">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·326,·SHA:·43c564c7205837ceca4b8fd82c53c0121e32bd108afd552b76db4442be440d7d·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
216 </span><span·class="nf">demo</span><span·class="p"·data-group-id="6900103791-6">(</span><span·class="p"·data-group-id="6900103791-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">216 </span><span·class="nf">demo</span><span·class="p"·data-group-id="9900584762-6">(</span><span·class="p"·data-group-id="9900584762-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
217 ··</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="6900103791-7">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">name</span><span·class="p"·data-group-id="6900103791-8">{</span><span·class="ss">first</span><span·class="o">=</span>[·...·truncated·by·diffoscope;·len:·381,·SHA:·936372d073fc53324f65eff8658f5bff46766a0aee6fccdcf7847a5be384ff8a·...·]-7">}</span><span·class="p">,</span><span·class="w">217 ··</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9900584762-7">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">name</span><span·class="p"·data-group-id="9900584762-8">{</span><span·class="ss">first</span><span·class="o">=</span>[·...·truncated·by·diffoscope;·len:·381,·SHA:·b318783588956503c795b247b5f9cd9e58eba8f948dc102904468e6db3e0e34e·...·]-7">}</span><span·class="p">,</span><span·class="w">
218 ··</span><span·class="n">First</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6900103791-9">(</span><span·class="n">P</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p"·data-group-id="6900103791-9">)</span><span·class="o">#</span><span·class="ss">name</span><span·class="p">.</span><span·class="ss">first</span><span·class="p">.</span></code></pre><p>Here,·<code·class="inline">demo()</code>·evaluates·to·<code·class="inline">&quot;Robert&quot;</code>.</p><h2·id="a-longer-example"·class="section-heading">218 ··</span><span·class="n">First</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9900584762-9">(</span><span·class="n">P</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p"·data-group-id="9900584762-9">)</span><span·class="o">#</span><span·class="ss">name</span><span·class="p">.</span><span·class="ss">first</span><span·class="p">.</span></code></pre><p>Here,·<code·class="inline">demo()</code>·evaluates·to·<code·class="inline">&quot;Robert&quot;</code>.</p><h2·id="a-longer-example"·class="section-heading">
219 ··<a·href="#a-longer-example"·class="hover-link">219 ··<a·href="#a-longer-example"·class="hover-link">
220 ····<i·class="ri-link-m"·aria-hidden="true"></i>220 ····<i·class="ri-link-m"·aria-hidden="true"></i>
221 ··</a>221 ··</a>
222 ··<span·class="text">A·Longer·Example</span>222 ··<span·class="text">A·Longer·Example</span>
223 </h2>223 </h2>
224 <p>Comments·are·embedded·in·the·following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·File:·person.hrl</span><span·class="w">224 <p>Comments·are·embedded·in·the·following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·File:·person.hrl</span><span·class="w">
  
Offset 230, 48 lines modifiedOffset 230, 48 lines modified
230 </span><span·class="c1">%%····name:··A·string·(default·is·undefined).</span><span·class="w">230 </span><span·class="c1">%%····name:··A·string·(default·is·undefined).</span><span·class="w">
231 </span><span·class="c1">%%····age:···An·integer·(default·is·undefined).</span><span·class="w">231 </span><span·class="c1">%%····age:···An·integer·(default·is·undefined).</span><span·class="w">
232 </span><span·class="c1">%%····phone:·A·list·of·integers·(default·is·[]).</span><span·class="w">232 </span><span·class="c1">%%····phone:·A·list·of·integers·(default·is·[]).</span><span·class="w">
233 </span><span·class="c1">%%····dict:··A·dictionary·containing·various·information</span><span·class="w">233 </span><span·class="c1">%%····dict:··A·dictionary·containing·various·information</span><span·class="w">
234 </span><span·class="c1">%%···········about·the·person.</span><span·class="w">234 </span><span·class="c1">%%···········about·the·person.</span><span·class="w">
235 </span><span·class="c1">%%···········A·{Key,·Value}·list·(default·is·the·empty·list).</span><span·class="w">235 </span><span·class="c1">%%···········A·{Key,·Value}·list·(default·is·the·empty·list).</span><span·class="w">
236 </span><span·class="c1">%%------------------------------------------------------------</span><span·class="w">236 </span><span·class="c1">%%------------------------------------------------------------</span><span·class="w">
237 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="1244672140-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1244672140-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">age</span>[·...·truncated·by·diffoscope;·len:·878,·SHA:·4ae3f031b09fe14f5297ba2cd6272344debf340ac32e7866ab43c82cd4a66b3a·...·]-1">)</span><span·class="p">.</span><span·class="w">237 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="0532488354-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0532488354-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">age</span>[·...·truncated·by·diffoscope;·len:·878,·SHA:·39d3c6816099193a066c857e9b31f32ea028c9e5269323d90b35d0a9a76f09e2·...·]-1">)</span><span·class="p">.</span><span·class="w">
238 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="9106494709-2">(</span><span·class="s">&quot;person.hrl&quot;</span><span·class="p"·data-group-id="9106494709-2">)</span><span·class="p">.</span><span·class="w">238 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="1830549400-2">(</span><span·class="s">&quot;person.hrl&quot;</span><span·class="p"·data-group-id="1830549400-2">)</span><span·class="p">.</span><span·class="w">
239 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="9106494709-3">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="9106494709-3">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·For·test·purposes·only.</span><span·class="w">239 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="1830549400-3">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="1830549400-3">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·For·test·purposes·only.</span><span·class="w">
  
240 </span><span·class="c1">%%·This·creates·an·instance·of·a·person.</span><span·class="w">240 </span><span·class="c1">%%·This·creates·an·instance·of·a·person.</span><span·class="w">
241 </span><span·class="c1">%%···Note:·The·phone·number·is·not·supplied·so·the</span><span·class="w">241 </span><span·class="c1">%%···Note:·The·phone·number·is·not·supplied·so·the</span><span·class="w">
242 </span><span·class="c1">%%·········default·value·[]·will·be·used.</span><span·class="w">242 </span><span·class="c1">%%·········default·value·[]·will·be·used.</span><span·class="w">
  
243 </span><span·class="nf">make_hacker_without_phone</span><span·class="p"·data-group-id="9106494709-4">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Age</span><span·class="p"·data-group-id="9106494709-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">243 </span><span·class="nf">make_hacker_without_phone</span><span·class="p"·data-group-id="1830549400-4">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Age</span><span·class="p"·data-group-id="1830549400-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
244 ···</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="9106494709-5">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">age</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Age</span><span·class="p">,</span><span·class="w">244 ···</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1830549400-5">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">age</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Age</span><span·class="p">,</span><span·class="w">
245 ···········</span><span·class="ss">dict</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9106494709-6">[</span><span·class="p"·data-group-id="9106494709-7">{</span><span·class="ss">computer_knowledge</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">excellent</span><span·class="p"·data-group-id="9106494709-7">}</span><span·class="p">,</span><span·class="w">245 ···········</span><span·class="ss">dict</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1830549400-6">[</span><span·class="p"·data-group-id="1830549400-7">{</span><span·class="ss">computer_knowledge</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">excellent</span><span·class="p"·data-group-id="1830549400-7">}</span><span·class="p">,</span><span·class="w">
246 ···················</span><span·class="p"·data-group-id="9106494709-8">{</span><span·class="ss">drinks</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">coke</span><span·class="p"·data-group-id="9106494709-8">}</span><span·class="p"·data-group-id="9106494709-6">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·dbaea1624587944d00d7085a17f5a2c9f8b15a932e9d315786a10479302b937d·...·]-5">}</span><span·class="p">.</span><span·class="w">246 ···················</span><span·class="p"·data-group-id="1830549400-8">{</span><span·class="ss">drinks</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">coke</span><span·class="p"·data-group-id="1830549400-8">}</span><span·class="p"·data-group-id="1830549400-6">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·3aa28a3251da01825d868ce25fa95706bac34f6c2f1db2e41e019844e3cf4e9e·...·]-5">}</span><span·class="p">.</span><span·class="w">
  
Max diff block lines reached; 13182/72325 bytes (18.23%) of diff not shown.
659 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/doc/system/programming_examples.html
    
Offset 163, 15 lines modifiedOffset 163, 15 lines modified
163 ······<p·class="built-using">163 ······<p·class="built-using">
164 ········Built·using164 ········Built·using
165 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the165 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
166 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>166 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
167 ······</p>167 ······</p>
168 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>168 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
169 ····</footer>169 ····</footer>
170 ··</div>170 ··</div>
171 </main>171 </main>
172 </div>172 </div>
173 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>173 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
174 <script>174 <script>
175 ··document.addEventListener("DOMContentLoaded",·function·()·{175 ··document.addEventListener("DOMContentLoaded",·function·()·{
650 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/doc/system/readme.html
    
Offset 166, 15 lines modifiedOffset 166, 15 lines modified
166 ······<p·class="built-using">166 ······<p·class="built-using">
167 ········Built·using167 ········Built·using
168 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the168 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
169 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>169 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
170 ······</p>170 ······</p>
171 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>171 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
172 ····</footer>172 ····</footer>
173 ··</div>173 ··</div>
174 </main>174 </main>
175 </div>175 </div>
176 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>176 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
177 <script>177 <script>
178 ··document.addEventListener("DOMContentLoaded",·function·()·{178 ··document.addEventListener("DOMContentLoaded",·function·()·{
771 B
html2text {}
Max HTML report size reached
85.5 KB
./usr/share/doc/erlang-doc/html/doc/system/records_macros.html
    
Offset 124, 40 lines modifiedOffset 124, 40 lines modified
124 </h2>124 </h2>
125 <p>To·illustrate·this,·the·messenger·example·from·the·previous·section·is·divided125 <p>To·illustrate·this,·the·messenger·example·from·the·previous·section·is·divided
126 into·the·following·five·files:</p><ul><li><p><code·class="inline">mess_config.hrl</code></p><p>Header·file·for·configuration·data</p></li><li><p><code·class="inline">mess_interface.hrl</code></p><p>Interface·definitions·between·the·client·and·the·messenger</p></li><li><p><code·class="inline">user_interface.erl</code></p><p>Functions·for·the·user·interface</p></li><li><p><code·class="inline">mess_client.erl</code></p><p>Functions·for·the·client·side·of·the·messenger</p></li><li><p><code·class="inline">mess_server.erl</code></p><p>Functions·for·the·server·side·of·the·messenger</p></li></ul><p>While·doing·this,·the·message·passing·interface·between·the·shell,·the·client,126 into·the·following·five·files:</p><ul><li><p><code·class="inline">mess_config.hrl</code></p><p>Header·file·for·configuration·data</p></li><li><p><code·class="inline">mess_interface.hrl</code></p><p>Interface·definitions·between·the·client·and·the·messenger</p></li><li><p><code·class="inline">user_interface.erl</code></p><p>Functions·for·the·user·interface</p></li><li><p><code·class="inline">mess_client.erl</code></p><p>Functions·for·the·client·side·of·the·messenger</p></li><li><p><code·class="inline">mess_server.erl</code></p><p>Functions·for·the·server·side·of·the·messenger</p></li></ul><p>While·doing·this,·the·message·passing·interface·between·the·shell,·the·client,
127 and·the·server·is·cleaned·up·and·is·defined·using·<em>records</em>.·Also,·<em>macros</em>·are127 and·the·server·is·cleaned·up·and·is·defined·using·<em>records</em>.·Also,·<em>macros</em>·are
128 introduced:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·mess_config.hrl----</span><span·class="w">128 introduced:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·mess_config.hrl----</span><span·class="w">
  
129 </span><span·class="c1">%%%·Configure·the·location·of·the·server·node,</span><span·class="w">129 </span><span·class="c1">%%%·Configure·the·location·of·the·server·node,</span><span·class="w">
130 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="9014979500-1">(</span><span·class="ss">server_node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">messenger@super</span><span·class="p"·data-group-id="9014979500-1">)</span><span·class="p">.</span><span·class="w">130 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8205735632-1">(</span><span·class="ss">server_node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">messenger@super</span><span·class="p"·data-group-id="8205735632-1">)</span><span·class="p">.</span><span·class="w">
  
131 </span><span·class="c1">%%%----END·FILE----</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·mess_interface.hrl----</span><span·class="w">131 </span><span·class="c1">%%%----END·FILE----</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·mess_interface.hrl----</span><span·class="w">
  
132 </span><span·class="c1">%%%·Message·interface·between·client·and·server·and·client·shell·for</span><span·class="w">132 </span><span·class="c1">%%%·Message·interface·between·client·and·server·and·client·shell·for</span><span·class="w">
133 </span><span·class="c1">%%%·messenger·program</span><span·class="w">133 </span><span·class="c1">%%%·messenger·program</span><span·class="w">
  
134 </span><span·class="c1">%%%Messages·from·Client·to·server·received·in·server/1·function.</span><span·class="w">134 </span><span·class="c1">%%%Messages·from·Client·to·server·received·in·server/1·function.</span><span·class="w">
135 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4205355053-1">(</span><span·class="ss">logon</span><span·class="p">,</span><span·class="p"·data-group-id="4205355053-2">{</span><span·class="ss">client_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">username</span><span·class="p"[·...·truncated·by·diffoscope;·len:·79,·SHA:·4a119775f6b837623f631cd7c96f62a77919d9108064eae6404c160b98ef9c57·...·]-1">)</span><span·class="p">.</span><span·class="w">135 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4984421572-1">(</span><span·class="ss">logon</span><span·class="p">,</span><span·class="p"·data-group-id="4984421572-2">{</span><span·class="ss">client_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">username</span><span·class="p"[·...·truncated·by·diffoscope;·len:·79,·SHA:·812bb6cfb7cd3275508df1ec16630dce0f752011b88e8c3d9d10f837f26d26c2·...·]-1">)</span><span·class="p">.</span><span·class="w">
136 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4205355053-3">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="4205355053-4">{</span><span·class="ss">client_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">to_name</span><span·class="p[·...·truncated·by·diffoscope;·len:·159,·SHA:·294e9153d3a4e6019e01865b102da6509f95dd6401a02c979e26a1cb567e8dbf·...·]-3">)</span><span·class="p">.</span><span·class="w">136 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4984421572-3">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="4984421572-4">{</span><span·class="ss">client_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">to_name</span><span·class="p[·...·truncated·by·diffoscope;·len:·159,·SHA:·02e49cfdf4bcf15c8259a5c672957853663b611cd9181aa6ed1f6ff172a05c44·...·]-3">)</span><span·class="p">.</span><span·class="w">
137 </span><span·class="c1">%%%·{&#39;EXIT&#39;,·ClientPid,·Reason}··(client·terminated·or·unreachable.</span><span·class="w">137 </span><span·class="c1">%%%·{&#39;EXIT&#39;,·ClientPid,·Reason}··(client·terminated·or·unreachable.</span><span·class="w">
  
138 </span><span·class="c1">%%%·Messages·from·Server·to·Client,·received·in·await_result/0·function</span><span·class="w">138 </span><span·class="c1">%%%·Messages·from·Server·to·Client,·received·in·await_result/0·function</span><span·class="w">
139 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4205355053-5">(</span><span·class="ss">abort_client</span><span·class="p">,</span><span·class="p"·data-group-id="4205355053-6">{</span><span·class="ss">message</span><span·class="p"·data-group-id="4205355053-6">}</span><span·class="p"·data-group-id="4205355[·...·truncated·by·diffoscope;·len:·3,·SHA:·9b23c0760f95b2c9234e032124d75a0ef265a1c5a1543227b60e0e3ee6a8f493·...·]-5">)</span><span·class="p">.</span><span·class="w">139 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4984421572-5">(</span><span·class="ss">abort_client</span><span·class="p">,</span><span·class="p"·data-group-id="4984421572-6">{</span><span·class="ss">message</span><span·class="p"·data-group-id="4984421572-6">}</span><span·class="p"·data-group-id="4984421[·...·truncated·by·diffoscope;·len:·3,·SHA:·5e74cb2ad4e2c9e2d3f59a1e6c8a5d4999df48e5dd69871d2798e0a146b91ee9·...·]-5">)</span><span·class="p">.</span><span·class="w">
140 </span><span·class="c1">%%%·Messages·are:·user_exists_at_other_node,</span><span·class="w">140 </span><span·class="c1">%%%·Messages·are:·user_exists_at_other_node,</span><span·class="w">
141 </span><span·class="c1">%%%···············you_are_not_logged_on</span><span·class="w">141 </span><span·class="c1">%%%···············you_are_not_logged_on</span><span·class="w">
142 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4205355053-7">(</span><span·class="ss">server_reply</span><span·class="p">,</span><span·class="p"·data-group-id="4205355053-8">{</span><span·class="ss">message</span><span·class="p"·data-group-id="4205355053-8">}</span><span·class="p"·data-group-id="4205355[·...·truncated·by·diffoscope;·len:·3,·SHA:·9b23c0760f95b2c9234e032124d75a0ef265a1c5a1543227b60e0e3ee6a8f493·...·]-7">)</span><span·class="p">.</span><span·class="w">142 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4984421572-7">(</span><span·class="ss">server_reply</span><span·class="p">,</span><span·class="p"·data-group-id="4984421572-8">{</span><span·class="ss">message</span><span·class="p"·data-group-id="4984421572-8">}</span><span·class="p"·data-group-id="4984421[·...·truncated·by·diffoscope;·len:·3,·SHA:·5e74cb2ad4e2c9e2d3f59a1e6c8a5d4999df48e5dd69871d2798e0a146b91ee9·...·]-7">)</span><span·class="p">.</span><span·class="w">
143 </span><span·class="c1">%%%·Messages·are:·logged_on</span><span·class="w">143 </span><span·class="c1">%%%·Messages·are:·logged_on</span><span·class="w">
144 </span><span·class="c1">%%%···············receiver_not_found</span><span·class="w">144 </span><span·class="c1">%%%···············receiver_not_found</span><span·class="w">
145 </span><span·class="c1">%%%···············sent··(Message·has·been·sent·(no·guarantee)</span><span·class="w">145 </span><span·class="c1">%%%···············sent··(Message·has·been·sent·(no·guarantee)</span><span·class="w">
146 </span><span·class="c1">%%%·Messages·from·Server·to·Client·received·in·client/1·function</span><span·class="w">146 </span><span·class="c1">%%%·Messages·from·Server·to·Client·received·in·client/1·function</span><span·class="w">
147 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4205355053-9">(</span><span·class="ss">message_from</span><span·class="p">,</span><span·class="p"·data-group-id="4205355053-10">{</span><span·class="ss">from_name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·cla[·...·truncated·by·diffoscope;·len:·86,·SHA:·90bcbdc8ff081571c82db05cfc884c495651ad92397fab8a36c5195e74f57712·...·]-9">)</span><span·class="p">.</span><span·class="w">147 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4984421572-9">(</span><span·class="ss">message_from</span><span·class="p">,</span><span·class="p"·data-group-id="4984421572-10">{</span><span·class="ss">from_name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·cla[·...·truncated·by·diffoscope;·len:·86,·SHA:·cd82d5ccbefa44cbfc53c81f944d5282e95fa972c28f6f97067253273bf2b1db·...·]-9">)</span><span·class="p">.</span><span·class="w">
  
148 </span><span·class="c1">%%%·Messages·from·shell·to·Client·received·in·client/1·function</span><span·class="w">148 </span><span·class="c1">%%%·Messages·from·shell·to·Client·received·in·client/1·function</span><span·class="w">
149 </span><span·class="c1">%%%·spawn(mess_client,·client,·[server_node(),·Name])</span><span·class="w">149 </span><span·class="c1">%%%·spawn(mess_client,·client,·[server_node(),·Name])</span><span·class="w">
150 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4205355053-11">(</span><span·class="ss">message_to</span><span·class="p">,</span><span·class="p"·data-group-id="4205355053-12">{</span><span·class="ss">to_name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·class=[·...·truncated·by·diffoscope;·len:·83,·SHA:·2cc2aa9b3afe966cb7325d671c2d18f8cfed14671f9a79d75cbda109289d17ea·...·]-11">)</span><span·class="p">.</span><span·class="w">150 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4984421572-11">(</span><span·class="ss">message_to</span><span·class="p">,</span><span·class="p"·data-group-id="4984421572-12">{</span><span·class="ss">to_name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·class=[·...·truncated·by·diffoscope;·len:·83,·SHA:·7294b7737d4113a499fecc65d2a575ef1c398f76524f7eebb0f6b95f35e11902·...·]-11">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="c1">%%%·logoff</span><span·class="w">151 </span><span·class="c1">%%%·logoff</span><span·class="w">
  
152 </span><span·class="c1">%%%----END·FILE----</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·user_interface.erl----</span><span·class="w">152 </span><span·class="c1">%%%----END·FILE----</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·user_interface.erl----</span><span·class="w">
  
153 </span><span·class="c1">%%%·User·interface·to·the·messenger·program</span><span·class="w">153 </span><span·class="c1">%%%·User·interface·to·the·messenger·program</span><span·class="w">
154 </span><span·class="c1">%%%·login(Name)</span><span·class="w">154 </span><span·class="c1">%%%·login(Name)</span><span·class="w">
155 </span><span·class="c1">%%%·····One·user·at·a·time·can·log·in·from·each·Erlang·node·in·the</span><span·class="w">155 </span><span·class="c1">%%%·····One·user·at·a·time·can·log·in·from·each·Erlang·node·in·the</span><span·class="w">
Offset 170, 177 lines modifiedOffset 170, 177 lines modified
170 </span><span·class="c1">%%%·····Logs·off·anybody·at·that·node</span><span·class="w">170 </span><span·class="c1">%%%·····Logs·off·anybody·at·that·node</span><span·class="w">
  
171 </span><span·class="c1">%%%·message(ToName,·Message)</span><span·class="w">171 </span><span·class="c1">%%%·message(ToName,·Message)</span><span·class="w">
172 </span><span·class="c1">%%%·····sends·Message·to·ToName.·Error·messages·if·the·user·of·this</span><span·class="w">172 </span><span·class="c1">%%%·····sends·Message·to·ToName.·Error·messages·if·the·user·of·this</span><span·class="w">
173 </span><span·class="c1">%%%·····function·is·not·logged·on·or·if·ToName·is·not·logged·on·at</span><span·class="w">173 </span><span·class="c1">%%%·····function·is·not·logged·on·or·if·ToName·is·not·logged·on·at</span><span·class="w">
174 </span><span·class="c1">%%%·····any·node.</span><span·class="w">174 </span><span·class="c1">%%%·····any·node.</span><span·class="w">
175 </span><span·class="w">175 </span><span·class="w">
176 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4567100555-1">(</span><span·class="ss">user_interface</span><span·class="p"·data-group-id="4567100555-1">)</span><span·class="p">.</span><span·class="w">176 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2987595511-1">(</span><span·class="ss">user_interface</span><span·class="p"·data-group-id="2987595511-1">)</span><span·class="p">.</span><span·class="w">
177 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4567100555-2">(</span><span·class="p"·data-group-id="4567100555-3">[</span><span·class="ss">logon</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logoff</span><span·class="p">/</span><[·...·truncated·by·diffoscope;·len:·246,·SHA:·58c3923662657b44a123af3020eaf05bef74847023970868dfd4b6d41858b538·...·]-2">)</span><span·class="p">.</span><span·class="w">177 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2987595511-2">(</span><span·class="p"·data-group-id="2987595511-3">[</span><span·class="ss">logon</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logoff</span><span·class="p">/</span><[·...·truncated·by·diffoscope;·len:·246,·SHA:·cdd6631fd4985f03b85b0492a5698c7f0fd45cbcef17f5696cad909cd9a55d1a·...·]-2">)</span><span·class="p">.</span><span·class="w">
178 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="4567100555-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="4567100555-4">)</span><span·class="p">.</span><span·class="w">178 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="2987595511-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="2987595511-4">)</span><span·class="p">.</span><span·class="w">
179 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="4567100555-5">(</span><span·class="s">&quot;mess_config.hrl&quot;</span><span·class="p"·data-group-id="4567100555-5">)</span><span·class="p">.</span><span·class="w">179 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="2987595511-5">(</span><span·class="s">&quot;mess_config.hrl&quot;</span><span·class="p"·data-group-id="2987595511-5">)</span><span·class="p">.</span><span·class="w">
  
180 </span><span·class="nf">logon</span><span·class="p"·data-group-id="4567100555-6">(</span><span·class="n">Name</span><span·class="p"·data-group-id="4567100555-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">180 </span><span·class="nf">logon</span><span·class="p"·data-group-id="2987595511-6">(</span><span·class="n">Name</span><span·class="p"·data-group-id="2987595511-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
181 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">whereis</span><span·class="p"·data-group-id="4567100555-7">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="4567100555-7">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">181 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">whereis</span><span·class="p"·data-group-id="2987595511-7">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="2987595511-7">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
182 ········</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">182 ········</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
183 ············</span><span·class="nf">register</span><span·class="p"·data-group-id="4567100555-8">(</span><span·class="ss">mess_client</span><span·class="p">,</span><span·class="w">183 ············</span><span·class="nf">register</span><span·class="p"·data-group-id="2987595511-8">(</span><span·class="ss">mess_client</span><span·class="p">,</span><span·class="w">
184 ·····················</span><span·class="nf">spawn</span><span·class="p"·data-group-id="4567100555-9">(</span><span·class="ss">mess_client</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">client</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4567100555-10">[</span><span·class="o">?</[·...·truncated·by·diffoscope;·len:·263,·SHA:·64b8cc2c5b4dbb452e5abcd961757c2c25b3bd8a9c6f2ad2fd8fcd0fc5e5cd2d·...·]-8">)</span><span·class="p">;</span><span·class="w">184 ·····················</span><span·class="nf">spawn</span><span·class="p"·data-group-id="2987595511-9">(</span><span·class="ss">mess_client</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">client</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2987595511-10">[</span><span·class="o">?</[·...·truncated·by·diffoscope;·len:·263,·SHA:·73166c1f4a51fc2e6a3701ebac1d9cdf4a138eddfe38fe7abb8dca87c71f5eb1·...·]-8">)</span><span·class="p">;</span><span·class="w">
185 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">already_logged_on</span><span·class="w">185 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">already_logged_on</span><span·class="w">
186 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">186 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
187 </span><span·class="nf">logoff</span><span·class="p"·data-group-id="4567100555-11">(</span><span·class="p"·data-group-id="4567100555-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">187 </span><span·class="nf">logoff</span><span·class="p"·data-group-id="2987595511-11">(</span><span·class="p"·data-group-id="2987595511-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
188 ····</span><span·class="ss">mess_client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">logoff</span><span·class="p">.</span><span·class="w">188 ····</span><span·class="ss">mess_client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">logoff</span><span·class="p">.</span><span·class="w">
  
189 </span><span·class="nf">message</span><span·class="p"·data-group-id="4567100555-12">(</span><span·class="n">ToName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="4567100555-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">189 </span><span·class="nf">message</span><span·class="p"·data-group-id="2987595511-12">(</span><span·class="n">ToName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="2987595511-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
190 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">whereis</span><span·class="p"·data-group-id="4567100555-13">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="4567100555-13">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">·</span><span·class="c1">%·Test·if·the·client·is·running</span><span·class="w">190 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">whereis</span><span·class="p"·data-group-id="2987595511-13">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="2987595511-13">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">·</span><span·class="c1">%·Test·if·the·client·is·running</span><span·class="w">
191 ········</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">191 ········</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
192 ············</span><span·class="ss">not_logged_on</span><span·class="p">;</span><span·class="w">192 ············</span><span·class="ss">not_logged_on</span><span·class="p">;</span><span·class="w">
193 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">mess_client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">message_to</span><span·class="p"·data-group-id="4567100555-14">{</span><span·class="ss">to_name</span><span·class="o">=</span><span·class="n">ToName</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">Message</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·3e46ed26b5eaf979795784dae4b489d071a99f185acc2883adcdaf4caf214a9a·...·]-14">}</span><span·class="p">,</span><span·class="w">193 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">mess_client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">message_to</span><span·class="p"·data-group-id="2987595511-14">{</span><span·class="ss">to_name</span><span·class="o">=</span><span·class="n">ToName</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">Message</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·27a2e143c892261f0f1a080218ec95da1967df2a90000f657ad34e83d9fb0088·...·]-14">}</span><span·class="p">,</span><span·class="w">
194 ·············</span><span·class="ss">ok</span><span·class="w">194 ·············</span><span·class="ss">ok</span><span·class="w">
195 </span><span·class="k">end</span><span·class="p">.</span><span·class="w">195 </span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
196 </span><span·class="c1">%%%----END·FILE----</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·mess_client.erl----</span><span·class="w">196 </span><span·class="c1">%%%----END·FILE----</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·mess_client.erl----</span><span·class="w">
  
197 </span><span·class="c1">%%%·The·client·process·which·runs·on·each·user·node</span><span·class="w">197 </span><span·class="c1">%%%·The·client·process·which·runs·on·each·user·node</span><span·class="w">
198 </span><span·class="w">198 </span><span·class="w">
199 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9857745074-1">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="9857745074-1">)</span><span·class="p">.</span><span·class="w">199 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="5226571325-1">(</span><span·class="ss">mess_client</span><span·class="p"·data-group-id="5226571325-1">)</span><span·class="p">.</span><span·class="w">
200 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9857745074-2">(</span><span·class="p"·data-group-id="9857745074-3">[</span><span·class="ss">client</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="9857745074-3">]</span><span·class="p"·data-group-id="9857745074-2">)</span><span·class="p">.</span><span·class="w">200 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5226571325-2">(</span><span·class="p"·data-group-id="5226571325-3">[</span><span·class="ss">client</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="5226571325-3">]</span><span·class="p"·data-group-id="5226571325-2">)</span><span·class="p">.</span><span·class="w">
201 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="9857745074-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="9857745074-4">)</span><span·class="p">.</span><span·class="w">201 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="5226571325-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="5226571325-4">)</span><span·class="p">.</span><span·class="w">
  
202 </span><span·class="nf">client</span><span·class="p"·data-group-id="9857745074-5">(</span><span·class="n">Server_Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="9857745074-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">202 </span><span·class="nf">client</span><span·class="p"·data-group-id="5226571325-5">(</span><span·class="n">Server_Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p"·data-group-id="5226571325-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
203 ····</span><span·class="p"·data-group-id="9857745074-6">{</span><span·class="ss">messenger</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="9857745074-6">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·476,·SHA:·32396395474c7578433ed27929628c4ad47b41d8a7f127e61209b5a41688bd92·...·]-7">}</span><span·class="p">,</span><span·class="w">203 ····</span><span·class="p"·data-group-id="5226571325-6">{</span><span·class="ss">messenger</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="5226571325-6">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·476,·SHA:·7bdc0d005c4521e64fa735a4937e723de5a766a8dc146bab539b567bcbdbd441·...·]-7">}</span><span·class="p">,</span><span·class="w">
204 ····</span><span·class="nf">await_result</span><span·class="p"·data-group-id="9857745074-9">(</span><span·class="p"·data-group-id="9857745074-9">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="nf">await_result</span><span·class="p"·data-group-id="5226571325-9">(</span><span·class="p"·data-group-id="5226571325-9">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="9857745074-10">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="9857745074-10">)</span><span·class="p">.</span><span·class="w">205 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="5226571325-10">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="5226571325-10">)</span><span·class="p">.</span><span·class="w">
  
206 </span><span·class="nf">client</span><span·class="p"·data-group-id="9857745074-11">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="9857745074-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">206 </span><span·class="nf">client</span><span·class="p"·data-group-id="5226571325-11">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="5226571325-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
207 ····</span><span·class="k">receive</span><span·class="w">207 ····</span><span·class="k">receive</span><span·class="w">
208 ········</span><span·class="ss">logoff</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 ········</span><span·class="ss">logoff</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
209 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="9857745074-12">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="9857745074-12">)</span><span·class="p">;</span><span·class="w">209 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="5226571325-12">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="5226571325-12">)</span><span·class="p">;</span><span·class="w">
210 ········</span><span·class="o">#</span><span·class="ss">message_to</span><span·class="p"·data-group-id="9857745074-13">{</span><span·class="ss">to_name</span><span·class="o">=</span><span·class="n">ToName</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">Message</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·b667ee986169ec7fbd45967a00fd635d9e8965352a691960a1ee80f0f606d6d4·...·]-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">210 ········</span><span·class="o">#</span><span·class="ss">message_to</span><span·class="p"·data-group-id="5226571325-13">{</span><span·class="ss">to_name</span><span·class="o">=</span><span·class="n">ToName</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">Message</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·427e8f382c87a475a3fc5db5dc078a5566177a2f5ec4079dafe4baf4e184b898·...·]-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
211 ············</span><span·class="p"·data-group-id="9857745074-14">{</span><span·class="ss">messenger</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="9857745074-14">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">211 ············</span><span·class="p"·data-group-id="5226571325-14">{</span><span·class="ss">messenger</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="5226571325-14">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">
212 ················</span><span·class="o">#</span><span·class="ss">message</span><span·class="p"·data-group-id="9857745074-15">{</span><span·class="ss">client_pid</span><span·class="o">=</span><span·class="nf">self</span><span·class="p"·data-group-id="9857745074-16">(</span><span·class="p"·data-group-id="9857745074-16">)</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·267,·SHA:·2b4480eda0163f18f54d3a63b095bd99d3d08debc1c3d75dbcdb709c4a2a3564·...·]-15">}</span><span·class="p">,</span><span·class="w">212 ················</span><span·class="o">#</span><span·class="ss">message</span><span·class="p"·data-group-id="5226571325-15">{</span><span·class="ss">client_pid</span><span·class="o">=</span><span·class="nf">self</span><span·class="p"·data-group-id="5226571325-16">(</span><span·class="p"·data-group-id="5226571325-16">)</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·267,·SHA:·09dd18f67e126563daf85e04d091936b1850bf9aec58ec846b023c21319bdd7d·...·]-15">}</span><span·class="p">,</span><span·class="w">
213 ············</span><span·class="nf">await_result</span><span·class="p"·data-group-id="9857745074-17">(</span><span·class="p"·data-group-id="9857745074-17">)</span><span·class="p">;</span><span·class="w">213 ············</span><span·class="nf">await_result</span><span·class="p"·data-group-id="5226571325-17">(</span><span·class="p"·data-group-id="5226571325-17">)</span><span·class="p">;</span><span·class="w">
214 ········</span><span·class="p"·data-group-id="9857745074-18">{</span><span·class="ss">message_from</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FromName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="985774507[·...·truncated·by·diffoscope;·len:·1,·SHA:·4b227777d4dd1fc61c6f884f48641d02b4d121d3fd328cb08b5531fcacdabf8a·...·]-18">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 ········</span><span·class="p"·data-group-id="5226571325-18">{</span><span·class="ss">message_from</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FromName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="522657132[·...·truncated·by·diffoscope;·len:·1,·SHA:·ef2d127de37b942baad06145e54b0c619a1f22327b2ebbcfbec78f5564afe39d·...·]-18">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9857745074-19">(</span><span·class="s">&quot;Message·from·</span><span·class="si">~p</span><span·class="s">:·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·247,·SHA:·0d3ac4dde4c408c29e24a2f368ddf54c9e70c47399e7e4073ca6d7dd2846cc48·...·]-19">)</span><span·class="w">215 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5226571325-19">(</span><span·class="s">&quot;Message·from·</span><span·class="si">~p</span><span·class="s">:·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·247,·SHA:·e29623a29c52296e19326f411f8019735c3d68bee342b59277b0d09a00acd265·...·]-19">)</span><span·class="w">
216 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">216 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
217 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="9857745074-21">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="9857745074-21">)</span><span·class="p">.</span><span·class="w">217 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="5226571325-21">(</span><span·class="n">Server_Node</span><span·class="p"·data-group-id="5226571325-21">)</span><span·class="p">.</span><span·class="w">
  
218 </span><span·class="c1">%%%·wait·for·a·response·from·the·server</span><span·class="w">218 </span><span·class="c1">%%%·wait·for·a·response·from·the·server</span><span·class="w">
219 </span><span·class="nf">await_result</span><span·class="p"·data-group-id="9857745074-22">(</span><span·class="p"·data-group-id="9857745074-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 </span><span·class="nf">await_result</span><span·class="p"·data-group-id="5226571325-22">(</span><span·class="p"·data-group-id="5226571325-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 ····</span><span·class="k">receive</span><span·class="w">220 ····</span><span·class="k">receive</span><span·class="w">
221 ········</span><span·class="o">#</span><span·class="ss">abort_client</span><span·class="p"·data-group-id="9857745074-23">{</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">Why</span><span·class="p"·data-group-id="9857745074-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">221 ········</span><span·class="o">#</span><span·class="ss">abort_client</span><span·class="p"·data-group-id="5226571325-23">{</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">Why</span><span·class="p"·data-group-id="5226571325-23">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
222 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9857745074-24">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9857745074-25">[</span><span·class="n">Why</[·...·truncated·by·diffoscope;·len:·100,·SHA:·c1e2b40f63f534ad005b6b73d09e0d17f68594ac7b026c09b38cca90dbaa5b78·...·]-24">)</span><span·class="p">,</span><span·class="w">222 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5226571325-24">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5226571325-25">[</span><span·class="n">Why</[·...·truncated·by·diffoscope;·len:·100,·SHA:·6b57259c87b2c5130771608e942c6f2f46f8d864c70c64c56b890239b1a17c4c·...·]-24">)</span><span·class="p">,</span><span·class="w">
223 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="9857745074-26">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="9857745074-26">)</span><span·class="p">;</span><span·class="w">223 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="5226571325-26">(</span><span·class="ss">normal</span><span·class="p"·data-group-id="5226571325-26">)</span><span·class="p">;</span><span·class="w">
224 ········</span><span·class="o">#</span><span·class="ss">server_reply</span><span·class="p"·data-group-id="9857745074-27">{</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">What</span><span·class="p"·data-group-id="9857745074-27">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 ········</span><span·class="o">#</span><span·class="ss">server_reply</span><span·class="p"·data-group-id="5226571325-27">{</span><span·class="ss">message</span><span·class="o">=</span><span·class="n">What</span><span·class="p"·data-group-id="5226571325-27">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9857745074-28">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9857745074-29">[</span><span·class="n">What<[·...·truncated·by·diffoscope;·len:·101,·SHA:·745fdc64fb8838ccd923eb358ae4587266011c1849f92172135b25ace10521ce·...·]-28">)</span><span·class="w">225 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5226571325-28">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5226571325-29">[</span><span·class="n">What<[·...·truncated·by·diffoscope;·len:·101,·SHA:·4cc8c5e519fee045696bb36a70a058aa27f972a550a13532ade36fc19a6866bc·...·]-28">)</span><span·class="w">
226 ····</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">226 ····</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
227 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9857745074-30">(</span><span·class="s">&quot;No·response·from·server</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9857745074-31">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·71,·SHA:·f44ebb1cbc34e37f06e37a0a7211ce94ef7e2afa8a0362b907647c112018c45a·...·]-30">)</span><span·class="p">,</span><span·class="w">227 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5226571325-30">(</span><span·class="s">&quot;No·response·from·server</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5226571325-31">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·71,·SHA:·1922a155f989d066a59e981c78677630f4bc1f7cb38ef4bab2d7bbf20a5dd98f·...·]-30">)</span><span·class="p">,</span><span·class="w">
228 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="9857745074-32">(</span><span·class="ss">timeout</span><span·class="p"·data-group-id="9857745074-32">)</span><span·class="w">228 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="5226571325-32">(</span><span·class="ss">timeout</span><span·class="p"·data-group-id="5226571325-32">)</span><span·class="w">
229 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">229 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
230 </span><span·class="c1">%%%----END·FILE---</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·mess_server.erl----</span><span·class="w">230 </span><span·class="c1">%%%----END·FILE---</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%----FILE·mess_server.erl----</span><span·class="w">
  
231 </span><span·class="c1">%%%·This·is·the·server·process·of·the·messenger·service</span><span·class="w">231 </span><span·class="c1">%%%·This·is·the·server·process·of·the·messenger·service</span><span·class="w">
232 </span><span·class="w">232 </span><span·class="w">
233 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4461851210-1">(</span><span·class="ss">mess_server</span><span·class="p"·data-group-id="4461851210-1">)</span><span·class="p">.</span><span·class="w">233 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9705969905-1">(</span><span·class="ss">mess_server</span><span·class="p"·data-group-id="9705969905-1">)</span><span·class="p">.</span><span·class="w">
234 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4461851210-2">(</span><span·class="p"·data-group-id="4461851210-3">[</span><span·class="ss">start_server</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">server</span><span·class="p">/<[·...·truncated·by·diffoscope;·len:·125,·SHA:·69c8f7271d15fca7eba0134e337f1c9a522f345f3c10acf7b4f05869d4e45383·...·]-2">)</span><span·class="p">.</span><span·class="w">234 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9705969905-2">(</span><span·class="p"·data-group-id="9705969905-3">[</span><span·class="ss">start_server</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">server</span><span·class="p">/<[·...·truncated·by·diffoscope;·len:·125,·SHA:·4d2ab43b4f893442686f9d96e6af0a27459e04c6b45a89b37f9ba0b68e2d1d19·...·]-2">)</span><span·class="p">.</span><span·class="w">
235 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="4461851210-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="4461851210-4">)</span><span·class="p">.</span><span·class="w">235 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="9705969905-4">(</span><span·class="s">&quot;mess_interface.hrl&quot;</span><span·class="p"·data-group-id="9705969905-4">)</span><span·class="p">.</span><span·class="w">
  
236 </span><span·class="nf">server</span><span·class="p"·data-group-id="4461851210-5">(</span><span·class="p"·data-group-id="4461851210-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">236 </span><span·class="nf">server</span><span·class="p"·data-group-id="9705969905-5">(</span><span·class="p"·data-group-id="9705969905-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
237 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="4461851210-6">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="4461851210-6">)</span><span·class="p">,</span><span·class="w">237 ····</span><span·class="nf">process_flag</span><span·class="p"·data-group-id="9705969905-6">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="9705969905-6">)</span><span·class="p">,</span><span·class="w">
238 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="4461851210-7">(</span><span·class="p"·data-group-id="4461851210-8">[</span><span·class="p"·data-group-id="4461851210-8">]</span><span·class="p"·data-group-id="4461851210-7">)</span><span·class="p">.</span><span·class="w">238 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="9705969905-7">(</span><span·class="p"·data-group-id="9705969905-8">[</span><span·class="p"·data-group-id="9705969905-8">]</span><span·class="p"·data-group-id="9705969905-7">)</span><span·class="p">.</span><span·class="w">
  
239 </span><span·class="c1">%%%·the·user·list·has·the·format·[{ClientPid1,·Name1},{ClientPid22,·Name2},...]</span><span·class="w">239 </span><span·class="c1">%%%·the·user·list·has·the·format·[{ClientPid1,·Name1},{ClientPid22,·Name2},...]</span><span·class="w">
240 </span><span·class="nf">server</span><span·class="p"·data-group-id="4461851210-9">(</span><span·class="n">User_List</span><span·class="p"·data-group-id="4461851210-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">240 </span><span·class="nf">server</span><span·class="p"·data-group-id="9705969905-9">(</span><span·class="n">User_List</span><span·class="p"·data-group-id="9705969905-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
241 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="4461851210-10">(</span><span·class="s">&quot;User·list·=·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4461851210-11">[</span><span·cla[·...·truncated·by·diffoscope;·len:·118,·SHA:·c9a6bbd3165d66d79f36a1ab936fe25c754da4c750a3921c7af97a7533ef8e3b·...·]-10">)</span><span·class="p">,</span><span·class="w">241 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9705969905-10">(</span><span·class="s">&quot;User·list·=·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9705969905-11">[</span><span·cla[·...·truncated·by·diffoscope;·len:·118,·SHA:·930b77f70ab9584b2d077ff7c8ba6acf2d01be337dcde18fb97a56d5f17db63f·...·]-10">)</span><span·class="p">,</span><span·class="w">
242 ····</span><span·class="k">receive</span><span·class="w">242 ····</span><span·class="k">receive</span><span·class="w">
Max diff block lines reached; 35669/86704 bytes (41.14%) of diff not shown.
685 B
html2text {}
Max HTML report size reached
22.5 KB
./usr/share/doc/erlang-doc/html/doc/system/ref_man_functions.html
    
Offset 120, 51 lines modifiedOffset 120, 51 lines modified
120 ····<i·class="ri-link-m"·aria-hidden="true"></i>120 ····<i·class="ri-link-m"·aria-hidden="true"></i>
121 ··</a>121 ··</a>
122 ··<span·class="text">Function·Declaration·Syntax</span>122 ··<span·class="text">Function·Declaration·Syntax</span>
123 </h2>123 </h2>
124 <p>A·<em>function·declaration</em>·is·a·sequence·of·function·clauses·separated·by124 <p>A·<em>function·declaration</em>·is·a·sequence·of·function·clauses·separated·by
125 semicolons,·and·terminated·by·a·period·(<code·class="inline">.</code>).</p><p>A·<em>function·clause</em>·consists·of·a·<em>clause·head</em>·and·a·<em>clause·body</em>,·separated·by125 semicolons,·and·terminated·by·a·period·(<code·class="inline">.</code>).</p><p>A·<em>function·clause</em>·consists·of·a·<em>clause·head</em>·and·a·<em>clause·body</em>,·separated·by
126 <code·class="inline">-&gt;</code>.</p><p>A·clause·<em>head</em>·consists·of·the·function·name,·an·argument·list,·and·an·optional126 <code·class="inline">-&gt;</code>.</p><p>A·clause·<em>head</em>·consists·of·the·function·name,·an·argument·list,·and·an·optional
127 guard·sequence·beginning·with·the·keyword·<code·class="inline">when</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Name</span><span·class="p"·data-group-id="9245063542-1">(</span><span·class="n">Pattern11</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="n">Pattern1N</span><span·class="p"·data-group-id="9245063542-1">)</sp[·...·truncated·by·diffoscope;·len:·204,·SHA:·8115c424a5000034c24209906d72058f59664f8bfbcef1125cad8d4cc1bbdd86·...·]-2">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">127 guard·sequence·beginning·with·the·keyword·<code·class="inline">when</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Name</span><span·class="p"·data-group-id="5441761709-1">(</span><span·class="n">Pattern11</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="n">Pattern1N</span><span·class="p"·data-group-id="5441761709-1">)</sp[·...·truncated·by·diffoscope;·len:·204,·SHA:·7b5219891fc81f414cce7a2778dcd9adba052029540eb3e1c5045c46be4f9d67·...·]-2">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
128 ····</span><span·class="n">Body1</span><span·class="p">;</span><span·class="w">128 ····</span><span·class="n">Body1</span><span·class="p">;</span><span·class="w">
129 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">;</span><span·class="w">129 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">;</span><span·class="w">
130 </span><span·class="n">Name</span><span·class="p"·data-group-id="9245063542-3">(</span><span·class="n">PatternK1</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="n">PatternKN</span><span·class="p"·data-group-id="9245063542-3">)</sp[·...·truncated·by·diffoscope;·len:·204,·SHA:·ecc0063fcfe8266322dffdcab373316c199abab709e8415219330881fa6adc3b·...·]-4">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">130 </span><span·class="n">Name</span><span·class="p"·data-group-id="5441761709-3">(</span><span·class="n">PatternK1</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="n">PatternKN</span><span·class="p"·data-group-id="5441761709-3">)</sp[·...·truncated·by·diffoscope;·len:·204,·SHA:·02a77ce20476c42e70b4136f3dc368e031c4aba862070e161dde0685662ac5ef·...·]-4">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
131 ····</span><span·class="n">BodyK</span><span·class="p">.</span></code></pre><p>The·function·name·is·an·atom.·Each·argument·is·a·pattern.</p><p>The·number·of·arguments·<code·class="inline">N</code>·is·the·<em>arity</em>·of·the·function.·A·function·is131 ····</span><span·class="n">BodyK</span><span·class="p">.</span></code></pre><p>The·function·name·is·an·atom.·Each·argument·is·a·pattern.</p><p>The·number·of·arguments·<code·class="inline">N</code>·is·the·<em>arity</em>·of·the·function.·A·function·is
132 uniquely·defined·by·the·module·name,·function·name,·and·arity.·That·is,·two132 uniquely·defined·by·the·module·name,·function·name,·and·arity.·That·is,·two
133 functions·with·the·same·name·and·in·the·same·module,·but·with·different·arities133 functions·with·the·same·name·and·in·the·same·module,·but·with·different·arities
134 are·two·different·functions.</p><p>A·function·named·<code·class="inline">f</code>·in·module·<code·class="inline">mod</code>·and·with·arity·<code·class="inline">N</code>·is·often·denoted·as134 are·two·different·functions.</p><p>A·function·named·<code·class="inline">f</code>·in·module·<code·class="inline">mod</code>·and·with·arity·<code·class="inline">N</code>·is·often·denoted·as
135 <code·class="inline">mod:f/N</code>.</p><p>A·clause·<em>body</em>·consists·of·a·sequence·of·expressions·separated·by·comma·(<code·class="inline">,</code>):</p><pre><code·class="text">Expr1,135 <code·class="inline">mod:f/N</code>.</p><p>A·clause·<em>body</em>·consists·of·a·sequence·of·expressions·separated·by·comma·(<code·class="inline">,</code>):</p><pre><code·class="text">Expr1,
136 ...,136 ...,
137 ExprN</code></pre><p>Valid·Erlang·expressions·and·guard·sequences·are·described·in137 ExprN</code></pre><p>Valid·Erlang·expressions·and·guard·sequences·are·described·in
138 <a·href="expressions.html">Expressions</a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fact</span><span·class="p"·data-group-id="0954374074-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="0954374074-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">··</span><span·class="c1">%·first·clause·head</span><span·class="w">138 <a·href="expressions.html">Expressions</a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fact</span><span·class="p"·data-group-id="4426026934-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="4426026934-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">··</span><span·class="c1">%·first·clause·head</span><span·class="w">
139 ····</span><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="0954374074-2">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="0954374074-2">)</span><span·class="p">;</span><span·class="w">·····</span><span·class="c1">%·first·clause·body</span><span·class="w">139 ····</span><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="4426026934-2">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="4426026934-2">)</span><span·class="p">;</span><span·class="w">·····</span><span·class="c1">%·first·clause·body</span><span·class="w">
  
140 </span><span·class="nf">fact</span><span·class="p"·data-group-id="0954374074-3">(</span><span·class="mi">0</span><span·class="p"·data-group-id="0954374074-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·············</span><span·class="c1">%·second·clause·head</span><span·class="w">140 </span><span·class="nf">fact</span><span·class="p"·data-group-id="4426026934-3">(</span><span·class="mi">0</span><span·class="p"·data-group-id="4426026934-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·············</span><span·class="c1">%·second·clause·head</span><span·class="w">
141 ····</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">·················</span><span·class="c1">%·second·clause·body</span></code></pre><p><a·href=""·id="eval"></a></p><h2·id="function-evaluation"·class="section-heading">141 ····</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">·················</span><span·class="c1">%·second·clause·body</span></code></pre><p><a·href=""·id="eval"></a></p><h2·id="function-evaluation"·class="section-heading">
142 ··<a·href="#function-evaluation"·class="hover-link">142 ··<a·href="#function-evaluation"·class="hover-link">
143 ····<i·class="ri-link-m"·aria-hidden="true"></i>143 ····<i·class="ri-link-m"·aria-hidden="true"></i>
144 ··</a>144 ··</a>
145 ··<span·class="text">Function·Evaluation</span>145 ··<span·class="text">Function·Evaluation</span>
146 </h2>146 </h2>
147 <p>When·a·function·<code·class="inline">M:F/N</code>·is·called,·first·the·code·for·the·function·is·located.147 <p>When·a·function·<code·class="inline">M:F/N</code>·is·called,·first·the·code·for·the·function·is·located.
148 If·the·function·cannot·be·found,·an·<code·class="inline">undef</code>·runtime·error·occurs.·Notice·that148 If·the·function·cannot·be·found,·an·<code·class="inline">undef</code>·runtime·error·occurs.·Notice·that
149 the·function·must·be·exported·to·be·visible·outside·the·module·it·is·defined·in.</p><p>If·the·function·is·found,·the·function·clauses·are·scanned·sequentially·until·a149 the·function·must·be·exported·to·be·visible·outside·the·module·it·is·defined·in.</p><p>If·the·function·is·found,·the·function·clauses·are·scanned·sequentially·until·a
150 clause·is·found·that·fulfills·both·of·the·following·two·conditions:</p><ol><li>The·patterns·in·the·clause·head·can·be·successfully·matched·against·the·given150 clause·is·found·that·fulfills·both·of·the·following·two·conditions:</p><ol><li>The·patterns·in·the·clause·head·can·be·successfully·matched·against·the·given
151 arguments.</li><li>The·guard·sequence,·if·any,·is·true.</li></ol><p>If·such·a·clause·cannot·be·found,·a·<code·class="inline">function_clause</code>·runtime·error·occurs.</p><p>If·such·a·clause·is·found,·the·corresponding·clause·body·is·evaluated.·That·is,151 arguments.</li><li>The·guard·sequence,·if·any,·is·true.</li></ol><p>If·such·a·clause·cannot·be·found,·a·<code·class="inline">function_clause</code>·runtime·error·occurs.</p><p>If·such·a·clause·is·found,·the·corresponding·clause·body·is·evaluated.·That·is,
152 the·expressions·in·the·body·are·evaluated·sequentially·and·the·value·of·the·last152 the·expressions·in·the·body·are·evaluated·sequentially·and·the·value·of·the·last
153 expression·is·returned.</p><p>Consider·the·function·<code·class="inline">fact</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6235756895-1">(</span><span·class="ss">mod</span><span·class="p"·data-group-id="6235756895-1">)</span><span·class="p">.</span><span·class="w">153 expression·is·returned.</p><p>Consider·the·function·<code·class="inline">fact</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6508958940-1">(</span><span·class="ss">mod</span><span·class="p"·data-group-id="6508958940-1">)</span><span·class="p">.</span><span·class="w">
154 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6235756895-2">(</span><span·class="p"·data-group-id="6235756895-3">[</span><span·class="ss">fact</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="6235756895-3">]</span><span·class="p"·data-group-id="6235756895-2">)</span><span·class="p">.</span><span·class="w">154 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6508958940-2">(</span><span·class="p"·data-group-id="6508958940-3">[</span><span·class="ss">fact</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="6508958940-3">]</span><span·class="p"·data-group-id="6508958940-2">)</span><span·class="p">.</span><span·class="w">
  
155 </span><span·class="nf">fact</span><span·class="p"·data-group-id="6235756895-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="6235756895-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">155 </span><span·class="nf">fact</span><span·class="p"·data-group-id="6508958940-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="6508958940-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
156 ····</span><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="6235756895-5">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="6235756895-5">)</span><span·class="p">;</span><span·class="w">156 ····</span><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="6508958940-5">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="6508958940-5">)</span><span·class="p">;</span><span·class="w">
157 </span><span·class="nf">fact</span><span·class="p"·data-group-id="6235756895-6">(</span><span·class="mi">0</span><span·class="p"·data-group-id="6235756895-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 </span><span·class="nf">fact</span><span·class="p"·data-group-id="6508958940-6">(</span><span·class="mi">0</span><span·class="p"·data-group-id="6508958940-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ····</span><span·class="mi">1</span><span·class="p">.</span></code></pre><p>Assume·that·you·want·to·calculate·the·factorial·for·1:</p><pre><code·class="text">1&gt;·mod:fact(1).</code></pre><p>Evaluation·starts·at·the·first·clause.·The·pattern·<code·class="inline">N</code>·is·matched·against158 ····</span><span·class="mi">1</span><span·class="p">.</span></code></pre><p>Assume·that·you·want·to·calculate·the·factorial·for·1:</p><pre><code·class="text">1&gt;·mod:fact(1).</code></pre><p>Evaluation·starts·at·the·first·clause.·The·pattern·<code·class="inline">N</code>·is·matched·against
159 argument·1.·The·matching·succeeds·and·the·guard·(<code·class="inline">N·&gt;·0</code>)·is·true,·thus·<code·class="inline">N</code>·is159 argument·1.·The·matching·succeeds·and·the·guard·(<code·class="inline">N·&gt;·0</code>)·is·true,·thus·<code·class="inline">N</code>·is
160 bound·to·1,·and·the·corresponding·body·is·evaluated:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="1549291151-1">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="1549291151-1">)</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·288,·SHA:·f4a70b8b18a6259f3f37008e8d9f63291a5f23c5549448f64f2183661259f6c3·...·]-2">)</span><span·class="w">160 bound·to·1,·and·the·corresponding·body·is·evaluated:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="8208335909-1">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="8208335909-1">)</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8[·...·truncated·by·diffoscope;·len:·288,·SHA:·dbeefec3576db2db6391edfe424629ff7922791e3c6843a14bf4736709f9b192·...·]-2">)</span><span·class="w">
161 </span><span·class="mi">1</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="1549291151-3">(</span><span·class="mi">0</span><span·class="p"·data-group-id="1549291151-3">)</span></code></pre><p>Now,·<code·class="inline">fact(0)</code>·is·called,·and·the·function·clauses·are·scanned161 </span><span·class="mi">1</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nf">fact</span><span·class="p"·data-group-id="8208335909-3">(</span><span·class="mi">0</span><span·class="p"·data-group-id="8208335909-3">)</span></code></pre><p>Now,·<code·class="inline">fact(0)</code>·is·called,·and·the·function·clauses·are·scanned
162 sequentially·again.·First,·the·pattern·<code·class="inline">N</code>·is·matched·against·0.·The162 sequentially·again.·First,·the·pattern·<code·class="inline">N</code>·is·matched·against·0.·The
163 matching·succeeds,·but·the·guard·(<code·class="inline">N·&gt;·0</code>)·is·false.·Second,·the163 matching·succeeds,·but·the·guard·(<code·class="inline">N·&gt;·0</code>)·is·false.·Second,·the
164 pattern·<code·class="inline">0</code>·is·matched·against·the·argument·<code·class="inline">0</code>.·The·matching·succeeds164 pattern·<code·class="inline">0</code>·is·matched·against·the·argument·<code·class="inline">0</code>.·The·matching·succeeds
165 and·the·body·is·evaluated:</p><pre><code·class="text">1·*·fact(0)·=&gt;165 and·the·body·is·evaluated:</p><pre><code·class="text">1·*·fact(0)·=&gt;
166 1·*·1·=&gt;166 1·*·1·=&gt;
167 1</code></pre><p>Evaluation·has·succeed·and·<code·class="inline">mod:fact(1)</code>·returns·1.</p><p>If·<code·class="inline">mod:fact/1</code>·is·called·with·a·negative·number·as·argument,·no·clause·head167 1</code></pre><p>Evaluation·has·succeed·and·<code·class="inline">mod:fact(1)</code>·returns·1.</p><p>If·<code·class="inline">mod:fact/1</code>·is·called·with·a·negative·number·as·argument,·no·clause·head
168 matches.·A·<code·class="inline">function_clause</code>·runtime·error·occurs.</p><h2·id="tail-recursion"·class="section-heading">168 matches.·A·<code·class="inline">function_clause</code>·runtime·error·occurs.</p><h2·id="tail-recursion"·class="section-heading">
Offset 173, 17 lines modifiedOffset 173, 17 lines modified
173 ··</a>173 ··</a>
174 ··<span·class="text">Tail·recursion</span>174 ··<span·class="text">Tail·recursion</span>
175 </h2>175 </h2>
176 <p>If·the·last·expression·of·a·function·body·is·a·function·call,·a176 <p>If·the·last·expression·of·a·function·body·is·a·function·call,·a
177 <em>tail-recursive·call</em>·is·done.·This·is·to·ensure·that·no·system177 <em>tail-recursive·call</em>·is·done.·This·is·to·ensure·that·no·system
178 resources,·for·example,·call·stack,·are·consumed.·This·means·that·an178 resources,·for·example,·call·stack,·are·consumed.·This·means·that·an
179 infinite·loop·using·tail-recursive·calls·will·not·exhaust·the·call179 infinite·loop·using·tail-recursive·calls·will·not·exhaust·the·call
180 stack·and·can·(in·principle)·run·forever.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="4010071056-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="4010071056-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">180 stack·and·can·(in·principle)·run·forever.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="5369745260-1">(</span><span·class="n">N</span><span·class="p"·data-group-id="5369745260-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
181 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="4010071056-2">(</span><span·class="s">&quot;</span><span·class="si">~w</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4010071056-3">[</span><span·class="n">N</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·8c665103bb7728438602e1619c7a0b3b821d436148ded1b8e9f02a3682fa75e8·...·]-2">)</span><span·class="p">,</span><span·class="w">181 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5369745260-2">(</span><span·class="s">&quot;</span><span·class="si">~w</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5369745260-3">[</span><span·class="n">N</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·f28dc9f30532ca1eaacb9bdf0d7e7fe0ce89d0a1c728e28c406414ac65763cfc·...·]-2">)</span><span·class="p">,</span><span·class="w">
182 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="4010071056-4">(</span><span·class="n">N</span><span·class="o">+</span><span·class="mi">1</span><span·class="p"·data-group-id="4010071056-4">)</span><span·class="p">.</span></code></pre><p>The·earlier·factorial·example·is·a·counter-example.·It·is·not182 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="5369745260-4">(</span><span·class="n">N</span><span·class="o">+</span><span·class="mi">1</span><span·class="p"·data-group-id="5369745260-4">)</span><span·class="p">.</span></code></pre><p>The·earlier·factorial·example·is·a·counter-example.·It·is·not
183 tail-recursive,·since·a·multiplication·is·done·on·the·result·of·the·recursive183 tail-recursive,·since·a·multiplication·is·done·on·the·result·of·the·recursive
184 call·to·<code·class="inline">fact(N-1)</code>.</p><h2·id="built-in-functions-bifs"·class="section-heading">184 call·to·<code·class="inline">fact(N-1)</code>.</p><h2·id="built-in-functions-bifs"·class="section-heading">
185 ··<a·href="#built-in-functions-bifs"·class="hover-link">185 ··<a·href="#built-in-functions-bifs"·class="hover-link">
186 ····<i·class="ri-link-m"·aria-hidden="true"></i>186 ····<i·class="ri-link-m"·aria-hidden="true"></i>
187 ··</a>187 ··</a>
188 ··<span·class="text">Built-In·Functions·(BIFs)</span>188 ··<span·class="text">Built-In·Functions·(BIFs)</span>
189 </h2>189 </h2>
Offset 191, 17 lines modifiedOffset 191, 17 lines modified
191 system.·BIFs·do·things·that·are·difficult·or·impossible·to·implement191 system.·BIFs·do·things·that·are·difficult·or·impossible·to·implement
192 in·Erlang.·Most·of·the·BIFs·belong·to·module·<a·href="../../erts-15.0.1/doc/html/erlang.html"><code·class="inline">erlang</code></a>,·but·there192 in·Erlang.·Most·of·the·BIFs·belong·to·module·<a·href="../../erts-15.0.1/doc/html/erlang.html"><code·class="inline">erlang</code></a>,·but·there
193 are·also·BIFs·belonging·to·a·few·other·modules,·for·example·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html"><code·class="inline">lists</code></a>193 are·also·BIFs·belonging·to·a·few·other·modules,·for·example·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html"><code·class="inline">lists</code></a>
194 and·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html"><code·class="inline">ets</code></a>.</p><p>The·most·commonly·used·BIFs·belonging·to·<a·href="../../erts-15.0.1/doc/html/erlang.html"><code·class="inline">erlang</code></a>·are·<em>auto-imported</em>.·They·do194 and·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html"><code·class="inline">ets</code></a>.</p><p>The·most·commonly·used·BIFs·belonging·to·<a·href="../../erts-15.0.1/doc/html/erlang.html"><code·class="inline">erlang</code></a>·are·<em>auto-imported</em>.·They·do
195 not·need·to·be·prefixed·with·the·module·name.·Which·BIFs·that·are·auto-imported195 not·need·to·be·prefixed·with·the·module·name.·Which·BIFs·that·are·auto-imported
196 is·specified·in·the·<a·href="../../erts-15.0.1/doc/html/erlang.html"><code·class="inline">erlang</code></a>·module·in·ERTS.·For·example,·standard-type196 is·specified·in·the·<a·href="../../erts-15.0.1/doc/html/erlang.html"><code·class="inline">erlang</code></a>·module·in·ERTS.·For·example,·standard-type
197 conversion·BIFs·like·<code·class="inline">atom_to_list</code>·and·BIFs·allowed·in·guards·can·be·called197 conversion·BIFs·like·<code·class="inline">atom_to_list</code>·and·BIFs·allowed·in·guards·can·be·called
198 without·specifying·the·module·name.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="7463858269-1">(</span><span·class="p"·data-group-id="7463858269-2">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="7463858269-2">}</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·b8fc9cc41b6ad6aab9ea11acb5f289e0215d4d6c0c21004b91319660394970e6·...·]-1">)</span><span·class="p">.</span><span·class="w">198 without·specifying·the·module·name.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">tuple_size</span><span·class="p"·data-group-id="4986376817-1">(</span><span·class="p"·data-group-id="4986376817-2">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·class="ss">c</span><span·class="p"·data-group-id="4986376817-2">}</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·7837f673f95cb00cd2f0c46e4d12eb6a818190a7f61166e6ac83ae4957a31de8·...·]-1">)</span><span·class="p">.</span><span·class="w">
199 </span><span·class="mi">3</span><span·class="gp·unselectable">199 </span><span·class="mi">3</span><span·class="gp·unselectable">
200 2&gt;·</span><span·class="nf">atom_to_list</span><span·class="p"·data-group-id="7463858269-3">(</span><span·class="ss">&#39;Erlang&#39;</span><span·class="p"·data-group-id="7463858269-3">)</span><span·class="p">.</span><span·class="w">200 2&gt;·</span><span·class="nf">atom_to_list</span><span·class="p"·data-group-id="4986376817-3">(</span><span·class="ss">&#39;Erlang&#39;</span><span·class="p"·data-group-id="4986376817-3">)</span><span·class="p">.</span><span·class="w">
201 </span><span·class="s">&quot;Erlang&quot;</span></code></pre>201 </span><span·class="s">&quot;Erlang&quot;</span></code></pre>
202 </div>202 </div>
  
203 <div·class="bottom-actions"·id="bottom-actions">203 <div·class="bottom-actions"·id="bottom-actions">
204 ··<div·class="bottom-actions-item">204 ··<div·class="bottom-actions-item">
  
205 ······<a·href="documentation.html"·class="bottom-actions-button"·rel="prev">205 ······<a·href="documentation.html"·class="bottom-actions-button"·rel="prev">
Offset 245, 15 lines modifiedOffset 245, 15 lines modified
245 ······<p·class="built-using">245 ······<p·class="built-using">
246 ········Built·using246 ········Built·using
247 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the247 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
248 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>248 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
249 ······</p>249 ······</p>
250 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>250 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
251 ····</footer>251 ····</footer>
252 ··</div>252 ··</div>
253 </main>253 </main>
254 </div>254 </div>
255 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>255 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
256 <script>256 <script>
257 ··document.addEventListener("DOMContentLoaded",·function·()·{257 ··document.addEventListener("DOMContentLoaded",·function·()·{
632 B
html2text {}
Max HTML report size reached
6.67 KB
./usr/share/doc/erlang-doc/html/doc/system/ref_man_processes.html
    
Offset 125, 18 lines modifiedOffset 125, 18 lines modified
125 (grow·and·shrink·dynamically)·with·small·memory·footprint,·fast·to·create·and125 (grow·and·shrink·dynamically)·with·small·memory·footprint,·fast·to·create·and
126 terminate,·and·the·scheduling·overhead·is·low.</p><h2·id="process-creation"·class="section-heading">126 terminate,·and·the·scheduling·overhead·is·low.</p><h2·id="process-creation"·class="section-heading">
127 ··<a·href="#process-creation"·class="hover-link">127 ··<a·href="#process-creation"·class="hover-link">
128 ····<i·class="ri-link-m"·aria-hidden="true"></i>128 ····<i·class="ri-link-m"·aria-hidden="true"></i>
129 ··</a>129 ··</a>
130 ··<span·class="text">Process·Creation</span>130 ··<span·class="text">Process·Creation</span>
131 </h2>131 </h2>
132 <p>A·process·is·created·by·calling·<a·href="../../erts-15.0.1/doc/html/erlang.html#spawn/3"><code·class="inline">spawn()</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">spawn</span><span·class="p"·data-group-id="2060102247-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Args</span><span·class="p"·data-group-id="2060102247-1">)</span><s[·...·truncated·by·diffoscope;·len:·195,·SHA:·29ac4c64ddc66af9a671662f921f744b40f3bc2d8204fb953aa6894bb40bde05·...·]-2">)</span><span·class="w">132 <p>A·process·is·created·by·calling·<a·href="../../erts-15.0.1/doc/html/erlang.html#spawn/3"><code·class="inline">spawn()</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">spawn</span><span·class="p"·data-group-id="5599306710-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Args</span><span·class="p"·data-group-id="5599306710-1">)</span><s[·...·truncated·by·diffoscope;·len:·195,·SHA:·6f2b2381538332353453be94a435065fe064336a89712a46801ca9232f7e5f0f·...·]-2">)</span><span·class="w">
133 ··</span><span·class="n">Module</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="2060102247-3">(</span><span·class="p"·data-group-id="2060102247-3">)</span><span·class="w">133 ··</span><span·class="n">Module</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="5599306710-3">(</span><span·class="p"·data-group-id="5599306710-3">)</span><span·class="w">
134 ··</span><span·class="n">Args</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2060102247-4">[</span><span·class="n">Arg1</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="n">ArgN</span><span·class="p"·data-group-id="2060102247-4">]</span><span·class="w">134 ··</span><span·class="n">Args</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5599306710-4">[</span><span·class="n">Arg1</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="n">ArgN</span><span·class="p"·data-group-id="5599306710-4">]</span><span·class="w">
135 ····</span><span·class="n">ArgI</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="2060102247-5">(</span><span·class="p"·data-group-id="2060102247-5">)</span></code></pre><p><code·class="inline">spawn()</code>·creates·a·new·process·and·returns·the·pid.</p><p>The·new·process·starts·executing·in·<code·class="inline">Module:Name(Arg1,...,ArgN)</code>·where·the135 ····</span><span·class="n">ArgI</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="5599306710-5">(</span><span·class="p"·data-group-id="5599306710-5">)</span></code></pre><p><code·class="inline">spawn()</code>·creates·a·new·process·and·returns·the·pid.</p><p>The·new·process·starts·executing·in·<code·class="inline">Module:Name(Arg1,...,ArgN)</code>·where·the
136 arguments·are·the·elements·of·the·(possible·empty)·<code·class="inline">Args</code>·argument·list.</p><p>There·exist·a·number·of·different·<code·class="inline">spawn</code>·BIFs:</p><ul><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn/4"><code·class="inline">spawn/1,2,3,4</code></a></li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_link/4"><code·class="inline">spawn_link/1,2,3,4</code></a></li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_monitor/4"><code·class="inline">spawn_monitor/1,2,3,4</code></a></li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_opt/5"><code·class="inline">spawn_opt/2,3,4,5</code></a></li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_request/5"><code·class="inline">spawn_request/1,2,3,4,5</code></a></li></ul><h2·id="registered-processes"·class="section-heading">136 arguments·are·the·elements·of·the·(possible·empty)·<code·class="inline">Args</code>·argument·list.</p><p>There·exist·a·number·of·different·<code·class="inline">spawn</code>·BIFs:</p><ul><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn/4"><code·class="inline">spawn/1,2,3,4</code></a></li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_link/4"><code·class="inline">spawn_link/1,2,3,4</code></a></li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_monitor/4"><code·class="inline">spawn_monitor/1,2,3,4</code></a></li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_opt/5"><code·class="inline">spawn_opt/2,3,4,5</code></a></li><li><a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_request/5"><code·class="inline">spawn_request/1,2,3,4,5</code></a></li></ul><h2·id="registered-processes"·class="section-heading">
137 ··<a·href="#registered-processes"·class="hover-link">137 ··<a·href="#registered-processes"·class="hover-link">
138 ····<i·class="ri-link-m"·aria-hidden="true"></i>138 ····<i·class="ri-link-m"·aria-hidden="true"></i>
139 ··</a>139 ··</a>
140 ··<span·class="text">Registered·Processes</span>140 ··<span·class="text">Registered·Processes</span>
141 </h2>141 </h2>
142 <p>Besides·addressing·a·process·by·using·its·pid,·there·are·also·BIFs·for142 <p>Besides·addressing·a·process·by·using·its·pid,·there·are·also·BIFs·for
Offset 583, 15 lines modifiedOffset 583, 15 lines modified
583 ······<p·class="built-using">583 ······<p·class="built-using">
584 ········Built·using584 ········Built·using
585 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the585 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
586 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>586 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
587 ······</p>587 ······</p>
588 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>588 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
589 ····</footer>589 ····</footer>
590 ··</div>590 ··</div>
591 </main>591 </main>
592 </div>592 </div>
593 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>593 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
594 <script>594 <script>
595 ··document.addEventListener("DOMContentLoaded",·function·()·{595 ··document.addEventListener("DOMContentLoaded",·function·()·{
653 B
html2text {}
Max HTML report size reached
31.7 KB
./usr/share/doc/erlang-doc/html/doc/system/ref_man_records.html
    
Offset 123, 17 lines modifiedOffset 123, 17 lines modified
123 ····<i·class="ri-link-m"·aria-hidden="true"></i>123 ····<i·class="ri-link-m"·aria-hidden="true"></i>
124 ··</a>124 ··</a>
125 ··<span·class="text">Defining·Records</span>125 ··<span·class="text">Defining·Records</span>
126 </h2>126 </h2>
127 <p>A·record·definition·consists·of·the·name·of·the·record,·followed·by·the·field127 <p>A·record·definition·consists·of·the·name·of·the·record,·followed·by·the·field
128 names·of·the·record.·Record·and·field·names·must·be·atoms.·Each·field·can·be128 names·of·the·record.·Record·and·field·names·must·be·atoms.·Each·field·can·be
129 given·an·optional·default·value.·If·no·default·value·is·supplied,·<code·class="inline">undefined</code>·is129 given·an·optional·default·value.·If·no·default·value·is·supplied,·<code·class="inline">undefined</code>·is
130 used.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="8664409128-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8664409128-2">{</span><span·class="n">Field1</span><span·class="w">·</span><span·class="p"·data-group-id="8664409128-3">[</span><[·...·truncated·by·diffoscope;·len:·116,·SHA:·ce729d373a46e6221248a7b59ebdd3b28ca1c908293aedb2b11faa24465535f5·...·]-3">]</span><span·class="p">,</span><span·class="w">130 used.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="8545877433-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8545877433-2">{</span><span·class="n">Field1</span><span·class="w">·</span><span·class="p"·data-group-id="8545877433-3">[</span><[·...·truncated·by·diffoscope;·len:·116,·SHA:·78e426d7ea7e0baca58d6e67fce9c15c16ff7ad20d03ab38dbc3395552c386a7·...·]-3">]</span><span·class="p">,</span><span·class="w">
131 ···············</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">131 ···············</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
132 ···············</span><span·class="n">FieldN</span><span·class="w">·</span><span·class="p"·data-group-id="8664409128-4">[</span><span·class="o">=</span><span·class="w">·</span><span·class="n">ExprN</span><span·class="p"·data-group-id="8664409128-4">]</span><span·class="p"·data-group-id="8664409128-2">}</span><span·class="p"·data-group-id="8664409128-1">)</span><span·class="p">.</span></code></pre><p>The·default·value·for·a·field·is·an·arbitrary·expression,·except·that·it·must132 ···············</span><span·class="n">FieldN</span><span·class="w">·</span><span·class="p"·data-group-id="8545877433-4">[</span><span·class="o">=</span><span·class="w">·</span><span·class="n">ExprN</span><span·class="p"·data-group-id="8545877433-4">]</span><span·class="p"·data-group-id="8545877433-2">}</span><span·class="p"·data-group-id="8545877433-1">)</span><span·class="p">.</span></code></pre><p>The·default·value·for·a·field·is·an·arbitrary·expression,·except·that·it·must
133 not·use·any·variables.</p><p>A·record·definition·can·be·placed·anywhere·among·the·attributes·and·function133 not·use·any·variables.</p><p>A·record·definition·can·be·placed·anywhere·among·the·attributes·and·function
134 declarations·of·a·module,·but·the·definition·must·come·before·any·usage·of·the134 declarations·of·a·module,·but·the·definition·must·come·before·any·usage·of·the
135 record.</p><p>If·a·record·is·used·in·several·modules,·it·is·recommended·that·the·record135 record.</p><p>If·a·record·is·used·in·several·modules,·it·is·recommended·that·the·record
136 definition·is·placed·in·an·include·file.</p><blockquote><h4·class="info">Change</h4><p>Starting·from·Erlang/OTP·26,·records·can·be·defined·in·the·Erlang·shell136 definition·is·placed·in·an·include·file.</p><blockquote><h4·class="info">Change</h4><p>Starting·from·Erlang/OTP·26,·records·can·be·defined·in·the·Erlang·shell
137 using·the·syntax·described·in·this·section.·In·earlier·releases,·it·was137 using·the·syntax·described·in·this·section.·In·earlier·releases,·it·was
138 necessary·to·use·the·<a·href="../../lib/stdlib-6.0.1/doc/html/shell.html"><code·class="inline">shell</code></a>·built-in·function·<code·class="inline">rd/2</code>.</p></blockquote><h2·id="creating-records"·class="section-heading">138 necessary·to·use·the·<a·href="../../lib/stdlib-6.0.1/doc/html/shell.html"><code·class="inline">shell</code></a>·built-in·function·<code·class="inline">rd/2</code>.</p></blockquote><h2·id="creating-records"·class="section-heading">
139 ··<a·href="#creating-records"·class="hover-link">139 ··<a·href="#creating-records"·class="hover-link">
Offset 143, 32 lines modifiedOffset 143, 32 lines modified
143 </h2>143 </h2>
144 <p>The·following·expression·creates·a·new·<code·class="inline">Name</code>·record·where·the·value·of·each144 <p>The·following·expression·creates·a·new·<code·class="inline">Name</code>·record·where·the·value·of·each
145 field·<code·class="inline">FieldI</code>·is·the·value·of·evaluating·the·corresponding·expression·<code·class="inline">ExprI</code>:</p><pre><code·class="text">#Name{Field1=Expr1,·...,·FieldK=ExprK}</code></pre><p>The·fields·can·be·in·any·order,·not·necessarily·the·same·order·as·in·the·record145 field·<code·class="inline">FieldI</code>·is·the·value·of·evaluating·the·corresponding·expression·<code·class="inline">ExprI</code>:</p><pre><code·class="text">#Name{Field1=Expr1,·...,·FieldK=ExprK}</code></pre><p>The·fields·can·be·in·any·order,·not·necessarily·the·same·order·as·in·the·record
146 definition,·and·fields·can·be·omitted.·Omitted·fields·get·their·respective146 definition,·and·fields·can·be·omitted.·Omitted·fields·get·their·respective
147 default·value·instead.</p><p>If·several·fields·are·to·be·assigned·the·same·value,·the·following·construction147 default·value·instead.</p><p>If·several·fields·are·to·be·assigned·the·same·value,·the·following·construction
148 can·be·used:</p><pre><code·class="text">#Name{Field1=Expr1,·...,·FieldK=ExprK,·_=ExprL}</code></pre><p>Omitted·fields·then·get·the·value·of·evaluating·<code·class="inline">ExprL</code>·instead·of·their·default148 can·be·used:</p><pre><code·class="text">#Name{Field1=Expr1,·...,·FieldK=ExprK,·_=ExprL}</code></pre><p>Omitted·fields·then·get·the·value·of·evaluating·<code·class="inline">ExprL</code>·instead·of·their·default
149 values.·This·feature·is·primarily·intended·to·be·used·to·create·patterns·for·ETS149 values.·This·feature·is·primarily·intended·to·be·used·to·create·patterns·for·ETS
150 and·Mnesia·match·functions.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6986432760-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6986432760-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·6039df80518167e006285b4afa192d0a84b253c8e70401a603dd6ef6fdf3fb2d·...·]-1">)</span><span·class="p">.</span><span·class="w">150 and·Mnesia·match·functions.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3769045899-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3769045899-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·f442c479bb53cd8d62dca9327a5fa68478a6c3ec2180b51e051bc9de927e1967·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
151 </span><span·class="nf">lookup</span><span·class="p"·data-group-id="6986432760-3">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p"·data-group-id="6986432760-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">151 </span><span·class="nf">lookup</span><span·class="p"·data-group-id="3769045899-3">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p"·data-group-id="3769045899-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
152 ····</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_object</span><span·class="p"·data-group-id="6986432760-4">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="6986432760-5">{</span><span·class="ss">name</span><span·class="o">=</span><[·...·truncated·by·diffoscope;·len:·251,·SHA:·e15dd0f312855b6afae83466fd4bdca24948e2b84b212000b2bc4ca36fc765ed·...·]-4">)</span><span·class="p">.</span></code></pre><h2·id="accessing-record-fields"·class="section-heading">152 ····</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_object</span><span·class="p"·data-group-id="3769045899-4">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="3769045899-5">{</span><span·class="ss">name</span><span·class="o">=</span><[·...·truncated·by·diffoscope;·len:·251,·SHA:·5524e5765ce201a7e867ba86f288d235d1902fdf319a2715a92c40b385614eb2·...·]-4">)</span><span·class="p">.</span></code></pre><h2·id="accessing-record-fields"·class="section-heading">
153 ··<a·href="#accessing-record-fields"·class="hover-link">153 ··<a·href="#accessing-record-fields"·class="hover-link">
154 ····<i·class="ri-link-m"·aria-hidden="true"></i>154 ····<i·class="ri-link-m"·aria-hidden="true"></i>
155 ··</a>155 ··</a>
156 ··<span·class="text">Accessing·Record·Fields</span>156 ··<span·class="text">Accessing·Record·Fields</span>
157 </h2>157 </h2>
158 <pre><code·class="text">Expr#Name.Field</code></pre><p>Returns·the·value·of·the·specified·field.·<code·class="inline">Expr</code>·is·to·evaluate·to·a·<code·class="inline">Name</code>158 <pre><code·class="text">Expr#Name.Field</code></pre><p>Returns·the·value·of·the·specified·field.·<code·class="inline">Expr</code>·is·to·evaluate·to·a·<code·class="inline">Name</code>
159 record.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="0272649465-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0272649465-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·aff887971263f899dbd25c2b22ea68c446d994c5c6e7a7019ce5dacab5e8c298·...·]-1">)</span><span·class="p">.</span><span·class="w">159 record.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="7668615751-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7668615751-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·0f84ab11e1e638b2293bde09bef2b382a4835fbe0be52146aa1c43f95a21d7b0·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
160 </span><span·class="nf">get_person_name</span><span·class="p"·data-group-id="0272649465-3">(</span><span·class="n">Person</span><span·class="p"·data-group-id="0272649465-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">160 </span><span·class="nf">get_person_name</span><span·class="p"·data-group-id="7668615751-3">(</span><span·class="n">Person</span><span·class="p"·data-group-id="7668615751-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
161 ····</span><span·class="n">Person</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p">.</span></code></pre><p>The·following·expression·returns·the·position·of·the·specified·field·in·the161 ····</span><span·class="n">Person</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p">.</span></code></pre><p>The·following·expression·returns·the·position·of·the·specified·field·in·the
162 tuple·representation·of·the·record:</p><pre><code·class="text">#Name.Field</code></pre><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="8220478442-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8220478442-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·4e945e80a4bc7d8dd7805ec5fbb0a7ab2dbbc8b8c8df318a8cae8bc870636dd2·...·]-1">)</span><span·class="p">.</span><span·class="w">162 tuple·representation·of·the·record:</p><pre><code·class="text">#Name.Field</code></pre><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6912585595-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6912585595-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">phone</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·9055a9b662049b53d59801c99644958e44fce6e18740c823789f7d5bdfa8c483·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
163 </span><span·class="nf">lookup</span><span·class="p"·data-group-id="8220478442-3">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">List</span><span·class="p"·data-group-id="8220478442-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">163 </span><span·class="nf">lookup</span><span·class="p"·data-group-id="6912585595-3">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">List</span><span·class="p"·data-group-id="6912585595-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
164 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">keyfind</span><span·class="p"·data-group-id="8220478442-4">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·63,·SHA:·5ca465453ec7f44a5d9bf8c942259267e65f5ad2c79c30bd210a6209d3846b20·...·]-4">)</span><span·class="p">.</span></code></pre><h2·id="updating-records"·class="section-heading">164 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">keyfind</span><span·class="p"·data-group-id="6912585595-4">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·63,·SHA:·ee65edbfcc7e9aee3ac28ea34355be0663f8f7cd93304de6943e1b7cc0a38e60·...·]-4">)</span><span·class="p">.</span></code></pre><h2·id="updating-records"·class="section-heading">
165 ··<a·href="#updating-records"·class="hover-link">165 ··<a·href="#updating-records"·class="hover-link">
166 ····<i·class="ri-link-m"·aria-hidden="true"></i>166 ····<i·class="ri-link-m"·aria-hidden="true"></i>
167 ··</a>167 ··</a>
168 ··<span·class="text">Updating·Records</span>168 ··<span·class="text">Updating·Records</span>
169 </h2>169 </h2>
170 <pre><code·class="text">Expr#Name{Field1=Expr1,·...,·FieldK=ExprK}</code></pre><p><code·class="inline">Expr</code>·is·to·evaluate·to·a·<code·class="inline">Name</code>·record.·A·copy·of·this·record·is·returned,170 <pre><code·class="text">Expr#Name{Field1=Expr1,·...,·FieldK=ExprK}</code></pre><p><code·class="inline">Expr</code>·is·to·evaluate·to·a·<code·class="inline">Name</code>·record.·A·copy·of·this·record·is·returned,
171 with·the·value·of·each·specified·field·<code·class="inline">FieldI</code>·changed·to·the·value·of171 with·the·value·of·each·specified·field·<code·class="inline">FieldI</code>·changed·to·the·value·of
Offset 178, 51 lines modifiedOffset 178, 51 lines modified
178 ····<i·class="ri-link-m"·aria-hidden="true"></i>178 ····<i·class="ri-link-m"·aria-hidden="true"></i>
179 ··</a>179 ··</a>
180 ··<span·class="text">Records·in·Guards</span>180 ··<span·class="text">Records·in·Guards</span>
181 </h2>181 </h2>
182 <p>Since·record·expressions·are·expanded·to·tuple·expressions,·creating182 <p>Since·record·expressions·are·expanded·to·tuple·expressions,·creating
183 records·and·accessing·record·fields·are·allowed·in·guards.·However,183 records·and·accessing·record·fields·are·allowed·in·guards.·However,
184 all·subexpressions·(for·initializing·fields),·must·be·valid·guard184 all·subexpressions·(for·initializing·fields),·must·be·valid·guard
185 expressions·as·well.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle</span><span·class="p"·data-group-id="2953581079-1">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="2953581079-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·441,·SHA:·85c0c8eef76d0c92159c879d5a2ab90e20ed884397272b4bb4bcc7ec9fcc749d·...·]9-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">185 expressions·as·well.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">handle</span><span·class="p"·data-group-id="1983659439-1">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="1983659439-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·441,·SHA:·5cad9993ed7558e01fc4fc3f8f4697d132248dd2a459c8a3675e177a7067b945·...·]9-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
186 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">186 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
  
187 </span><span·class="nf">handle</span><span·class="p"·data-group-id="2953581079-3">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="2953581079-3">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">running</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">187 </span><span·class="nf">handle</span><span·class="p"·data-group-id="1983659439-3">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="1983659439-3">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">running</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
188 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>There·is·also·a·type·test·BIF·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_record/2"><code·class="inline">is_record(Term,·RecordTag)</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">is_person</span><span·class="p"·data-group-id="1054778071-1">(</span><span·class="n">P</span><span·class="p"·data-group-id="1054778071-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_record</span><span·class="p"·data-group-id="1054778071-2">(</s[·...·truncated·by·diffoscope;·len:·147,·SHA:·864a9a4e73156ddea94da4662b295a53ec2794d454e08b668409724bb253e697·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">188 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>There·is·also·a·type·test·BIF·<a·href="../../erts-15.0.1/doc/html/erlang.html#is_record/2"><code·class="inline">is_record(Term,·RecordTag)</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">is_person</span><span·class="p"·data-group-id="8642287603-1">(</span><span·class="n">P</span><span·class="p"·data-group-id="8642287603-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_record</span><span·class="p"·data-group-id="8642287603-2">(</s[·...·truncated·by·diffoscope;·len:·147,·SHA:·510cabd13c0b5f9454afcae9a0d74e5b673ca99df098a9cb7c2d61ed2432f392·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
189 ····</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">189 ····</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">
190 </span><span·class="nf">is_person</span><span·class="p"·data-group-id="1054778071-3">(</span><span·class="p">_</span><span·class="n">P</span><span·class="p"·data-group-id="1054778071-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">190 </span><span·class="nf">is_person</span><span·class="p"·data-group-id="8642287603-3">(</span><span·class="p">_</span><span·class="n">P</span><span·class="p"·data-group-id="8642287603-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
191 ····</span><span·class="ss">false</span><span·class="p">.</span></code></pre><h2·id="records-in-patterns"·class="section-heading">191 ····</span><span·class="ss">false</span><span·class="p">.</span></code></pre><h2·id="records-in-patterns"·class="section-heading">
192 ··<a·href="#records-in-patterns"·class="hover-link">192 ··<a·href="#records-in-patterns"·class="hover-link">
193 ····<i·class="ri-link-m"·aria-hidden="true"></i>193 ····<i·class="ri-link-m"·aria-hidden="true"></i>
194 ··</a>194 ··</a>
195 ··<span·class="text">Records·in·Patterns</span>195 ··<span·class="text">Records·in·Patterns</span>
196 </h2>196 </h2>
197 <p>A·pattern·that·matches·a·certain·record·is·created·in·the·same·way·as·a·record197 <p>A·pattern·that·matches·a·certain·record·is·created·in·the·same·way·as·a·record
198 is·created:</p><pre><code·class="text">#Name{Field1=Expr1,·...,·FieldK=ExprK}</code></pre><p>In·this·case,·one·or·more·of·<code·class="inline">Expr1</code>·...·<code·class="inline">ExprK</code>·can·be·unbound·variables.</p><h2·id="nested-records"·class="section-heading">198 is·created:</p><pre><code·class="text">#Name{Field1=Expr1,·...,·FieldK=ExprK}</code></pre><p>In·this·case,·one·or·more·of·<code·class="inline">Expr1</code>·...·<code·class="inline">ExprK</code>·can·be·unbound·variables.</p><h2·id="nested-records"·class="section-heading">
199 ··<a·href="#nested-records"·class="hover-link">199 ··<a·href="#nested-records"·class="hover-link">
200 ····<i·class="ri-link-m"·aria-hidden="true"></i>200 ····<i·class="ri-link-m"·aria-hidden="true"></i>
201 ··</a>201 ··</a>
202 ··<span·class="text">Nested·Records</span>202 ··<span·class="text">Nested·Records</span>
203 </h2>203 </h2>
204 <p>Assume·the·following·record·definitions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6851404520-1">(</span><span·class="ss">nrec0</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6851404520-2">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;nested0&quot;</span><span·class="p"·data-group-id="6851404520-2">}</span><span·class="p"·data-group-id="6851404520-1">)</span><span·class="p">.</span><span·class="w"> 
205 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6851404520-3">(</span><span·class="ss">nrec1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6851404520-4">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;nested1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">nrec0</span><span·class="o">=</span><span·class="o">#</span><span·class="ss">nrec0</span><span·class="p"·data-group-id="6851404520-5">{</span><span·class="p"·data-group-id="6851404520-5">}</span><span·class="p"·data-group-id="6851404520-4">}</span><span·class="p"·data-group-id="6851404520-3">)</span><span·class="p">.</span><span·class="w"> 
206 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6851404520-6">(</span><span·class="ss">nrec2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6851404520-7">{</span><span·class="[·...·truncated·by·diffoscope;·len:·485,·SHA:·70a0254d567c77727dcbbb5cbc05a95ced424199e2644889b7747bc9eabe0933·...·]">)</span><span·class="p">.</span><span·class="w">204 <p>Assume·the·following·record·definitions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6499925241-1">(</span><span·class="ss">nrec0</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·313,·SHA:·05efcca8d7ff153b1952454c5db9a50326750ea0a96bc6a2cda7369b3446ad14·...·]">)</span><span·class="p">.</span><span·class="w">
 205 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6499925241-3">(</span><span·class="ss">nrec1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6499925241-4">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;nested1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">nrec0</span><span·class="o">=</span><span·class="o">#</span><span·class="ss">nrec0</span><span·class="p"·data-group-id="6499925241-5">{</span><span·class="p"·data-group-id="6499925241-5">}</span><span·class="p"·data-group-id="6499925241-4">}</span><span·class="p"·data-group-id="6499925241-3">)</span><span·class="p">.</span><span·class="w">
 206 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6499925241-6">(</span><span·class="ss">nrec2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6499925241-7">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;nested2&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">nrec1</span><span·class="o">=</span><span·class="o">#</span><span·class="ss">nrec1</span><span·class="p"·data-group-id="6499925241-8">{</span><span·class="p"·data-group-id="6499925241-8">}</span><span·class="p"·data-group-id="6499925241-7">}</span><span·class="p"·data-group-id="6499925241-6">)</span><span·class="p">.</span><span·class="w">
  
207 </span><span·class="n">N2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">nrec2</span><span·class="p"·data-group-id="6851404520-9">{</span><span·class="p"·data-group-id="6851404520-9">}</span><span·class="p">,</span></code></pre><p>Accessing·or·updating·nested·records·can·be·written·without·parentheses:</p><pre><code·class="text">&quot;nested0&quot;·=·N2#nrec2.nrec1#nrec1.nrec0#nrec0.name,207 </span><span·class="n">N2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">nrec2</span><span·class="p"·data-group-id="6499925241-9">{</span><span·class="p"·data-group-id="6499925241-9">}</span><span·class="p">,</span></code></pre><p>Accessing·or·updating·nested·records·can·be·written·without·parentheses:</p><pre><code·class="text">&quot;nested0&quot;·=·N2#nrec2.nrec1#nrec1.nrec0#nrec0.name,
208 ····N0n·=·N2#nrec2.nrec1#nrec1.nrec0#nrec0{name·=·&quot;nested0a&quot;},</code></pre><p>which·is·equivalent·to:</p><pre><code·class="text">&quot;nested0&quot;·=·((N2#nrec2.nrec1)#nrec1.nrec0)#nrec0.name,208 ····N0n·=·N2#nrec2.nrec1#nrec1.nrec0#nrec0{name·=·&quot;nested0a&quot;},</code></pre><p>which·is·equivalent·to:</p><pre><code·class="text">&quot;nested0&quot;·=·((N2#nrec2.nrec1)#nrec1.nrec0)#nrec0.name,
209 N0n·=·((N2#nrec2.nrec1)#nrec1.nrec0)#nrec0{name·=·&quot;nested0a&quot;},</code></pre><blockquote><h4·class="info">Change</h4><p>Before·Erlang/OTP·R14,·parentheses·were·necessary·when·accessing·or·updating209 N0n·=·((N2#nrec2.nrec1)#nrec1.nrec0)#nrec0{name·=·&quot;nested0a&quot;},</code></pre><blockquote><h4·class="info">Change</h4><p>Before·Erlang/OTP·R14,·parentheses·were·necessary·when·accessing·or·updating
210 nested·records.</p></blockquote><h2·id="internal-representation-of-records"·class="section-heading">210 nested·records.</p></blockquote><h2·id="internal-representation-of-records"·class="section-heading">
211 ··<a·href="#internal-representation-of-records"·class="hover-link">211 ··<a·href="#internal-representation-of-records"·class="hover-link">
212 ····<i·class="ri-link-m"·aria-hidden="true"></i>212 ····<i·class="ri-link-m"·aria-hidden="true"></i>
213 ··</a>213 ··</a>
214 ··<span·class="text">Internal·Representation·of·Records</span>214 ··<span·class="text">Internal·Representation·of·Records</span>
215 </h2>215 </h2>
216 <p>Record·expressions·are·translated·to·tuple·expressions·during·compilation.·A216 <p>Record·expressions·are·translated·to·tuple·expressions·during·compilation.·A
217 record·defined·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="5845792768-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5845792768-2">{</span><span·class="n">Field1</span><span·class="p">,</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FieldN</span><span·class="p"·data-group-id="5845792768-2">}</span><span·class="p"·data-group-id="5845792768-1">)</span><span·class="p">.</span></code></pre><p>is·internally·represented·by·the·tuple:</p><pre><code·class="text">{Name,·Value1,·...,·ValueN}</code></pre><p>Here·each·<code·class="inline">ValueI</code>·is·the·default·value·for·<code·class="inline">FieldI</code>.</p><p>To·each·module·using·records,·a·pseudo·function·is·added·during·compilation·to 
218 obtain·information·about·records:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">record_info</span><span·class="p"·data-group-id="9851034669-1">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="9851034669-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9851034669-2">[</span><span·class="n">Field</span><span·class="p"·data-group-id="9851034669-2">]</span><span·class="w"> 
219 </span><span·class="nf">record_info</span><span·class="p"·data-group-id="9851034669-3">(</span><span·class="nb">size</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="9851034669-3">)</span><sp[·...·truncated·by·diffoscope;·len:·216,·SHA:·dbe5cd2b032485dac7384e2d3ff22e1357da302e3c3e9f59d7f5b684c3d56890·...·]217 record·defined·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="0892365396-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·721,·SHA:·43be039d2def5564ec7babe52c33661f92c056515f0b09687af6cbd76ee1a2ed·...·]
 218 obtain·information·about·records:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">record_info</span><span·class="p"·data-group-id="6195117990-1">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="6195117990-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6195117990-2">[</span><span·class="n">Field</span><span·class="p"·data-group-id="6195117990-2">]</span><span·class="w">
 219 </span><span·class="nf">record_info</span><span·class="p"·data-group-id="6195117990-3">(</span><span·class="nb">size</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="6195117990-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Size</span></code></pre><p><code·class="inline">Size</code>·is·the·size·of·the·tuple·representation,·that·is,·one·more·than·the
220 number·of·fields.</p>220 number·of·fields.</p>
221 </div>221 </div>
  
222 <div·class="bottom-actions"·id="bottom-actions">222 <div·class="bottom-actions"·id="bottom-actions">
223 ··<div·class="bottom-actions-item">223 ··<div·class="bottom-actions-item">
  
224 ······<a·href="macros.html"·class="bottom-actions-button"·rel="prev">224 ······<a·href="macros.html"·class="bottom-actions-button"·rel="prev">
Offset 266, 15 lines modifiedOffset 266, 15 lines modified
266 ······<p·class="built-using">266 ······<p·class="built-using">
267 ········Built·using267 ········Built·using
268 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the268 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
269 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>269 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
270 ······</p>270 ······</p>
271 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>271 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
272 ····</footer>272 ····</footer>
273 ··</div>273 ··</div>
274 </main>274 </main>
275 </div>275 </div>
276 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>276 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
277 <script>277 <script>
278 ··document.addEventListener("DOMContentLoaded",·function·()·{278 ··document.addEventListener("DOMContentLoaded",·function·()·{
694 B
html2text {}
Max HTML report size reached
1.59 KB
./usr/share/doc/erlang-doc/html/doc/system/reference_manual.html
    
Offset 209, 15 lines modifiedOffset 209, 15 lines modified
209 ······<p·class="built-using">209 ······<p·class="built-using">
210 ········Built·using210 ········Built·using
211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
213 ······</p>213 ······</p>
214 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
215 ····</footer>215 ····</footer>
216 ··</div>216 ··</div>
217 </main>217 </main>
218 </div>218 </div>
219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
220 <script>220 <script>
221 ··document.addEventListener("DOMContentLoaded",·function·()·{221 ··document.addEventListener("DOMContentLoaded",·function·()·{
802 B
html2text {}
Max HTML report size reached
68.8 KB
./usr/share/doc/erlang-doc/html/doc/system/release_handling.html
    
Offset 223, 38 lines modifiedOffset 223, 38 lines modified
223 ··<span·class="text">update</span>223 ··<span·class="text">update</span>
224 </h3>224 </h3>
225 <p>If·a·more·complex·change·has·been·made,·for·example,·a·change·to·the·format·of225 <p>If·a·more·complex·change·has·been·made,·for·example,·a·change·to·the·format·of
226 the·internal·state·of·a·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html"><code·class="inline">gen_server</code></a>,·simple·code·replacement·is·not·sufficient.226 the·internal·state·of·a·<a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html"><code·class="inline">gen_server</code></a>,·simple·code·replacement·is·not·sufficient.
227 Instead,·it·is·necessary·to:</p><ul><li>Suspend·the·processes·using·the·module·(to·avoid·that·they·try·to·handle·any227 Instead,·it·is·necessary·to:</p><ul><li>Suspend·the·processes·using·the·module·(to·avoid·that·they·try·to·handle·any
228 requests·before·the·code·replacement·is·completed).</li><li>Ask·them·to·transform·the·internal·state·format·and·switch·to·the·new·version228 requests·before·the·code·replacement·is·completed).</li><li>Ask·them·to·transform·the·internal·state·format·and·switch·to·the·new·version
229 of·the·module.</li><li>Remove·the·old·version.</li><li>Resume·the·processes.</li></ul><p>This·is·called·<em>synchronized·code·replacement</em>·and·for·this·the·following229 of·the·module.</li><li>Remove·the·old·version.</li><li>Resume·the·processes.</li></ul><p>This·is·called·<em>synchronized·code·replacement</em>·and·for·this·the·following
230 instructions·are·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3917714494-1">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3917714494-2">{</span><span·class="ss">advanced<[·...·truncated·by·diffoscope;·len:·176,·SHA:·75a7d038272092ee387a3db25b985065143039fc0c0ee50d30fa1e84d09911df·...·]-1">}</span><span·class="w">230 instructions·are·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2391341839-1">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2391341839-2">{</span><span·class="ss">advanced<[·...·truncated·by·diffoscope;·len:·176,·SHA:·8d532e7707db2549948a008523702ead15c66df57e19935b6aa0fe46906bb185·...·]-1">}</span><span·class="w">
231 </span><span·class="p"·data-group-id="3917714494-3">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="3917714494-3">}</span></code></pre><p><code·class="inline">update</code>·with·argument·<code·class="inline">{advanced,Extra}</code>·is·used·when·changing·the·internal231 </span><span·class="p"·data-group-id="2391341839-3">{</span><span·class="ss">update</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="2391341839-3">}</span></code></pre><p><code·class="inline">update</code>·with·argument·<code·class="inline">{advanced,Extra}</code>·is·used·when·changing·the·internal
232 state·of·a·behaviour·as·described·above.·It·causes·behaviour·processes·to·call232 state·of·a·behaviour·as·described·above.·It·causes·behaviour·processes·to·call
233 the·callback·function·<code·class="inline">code_change/3</code>,·passing·the·term·<code·class="inline">Extra</code>·and·some·other233 the·callback·function·<code·class="inline">code_change/3</code>,·passing·the·term·<code·class="inline">Extra</code>·and·some·other
234 information·as·arguments.·See·the·manual·pages·for·the·respective·behaviours·and234 information·as·arguments.·See·the·manual·pages·for·the·respective·behaviours·and
235 <a·href="appup_cookbook.html#int_state">Appup·Cookbook</a>.</p><p><code·class="inline">update</code>·with·argument·<code·class="inline">supervisor</code>·is·used·when·changing·the·start235 <a·href="appup_cookbook.html#int_state">Appup·Cookbook</a>.</p><p><code·class="inline">update</code>·with·argument·<code·class="inline">supervisor</code>·is·used·when·changing·the·start
236 specification·of·a·supervisor.·See·<a·href="appup_cookbook.html#sup">Appup·Cookbook</a>.</p><p>When·a·module·is·to·be·updated,·the·release·handler·finds·which·processes·that236 specification·of·a·supervisor.·See·<a·href="appup_cookbook.html#sup">Appup·Cookbook</a>.</p><p>When·a·module·is·to·be·updated,·the·release·handler·finds·which·processes·that
237 are·<em>using</em>·the·module·by·traversing·the·supervision·tree·of·each·running237 are·<em>using</em>·the·module·by·traversing·the·supervision·tree·of·each·running
238 application·and·checking·all·the·child·specifications:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3889092404-1">{</span><span·class="n">Id</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StartFunc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Restart</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·222,·SHA:·b04d7e942da8a22e4e1a8e833cd47fbaf773ce9eff3d037852e5a91daa827675·...·]-1">}</span></code></pre><p>A·process·uses·a·module·if·the·name·is·listed·in·<code·class="inline">Modules</code>·in·the·child238 application·and·checking·all·the·child·specifications:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7337406439-1">{</span><span·class="n">Id</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StartFunc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Restart</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·222,·SHA:·6954fdde00a10f002077734cc3ea338b45e13725e1811a81a6ac6e3e7d53da83·...·]-1">}</span></code></pre><p>A·process·uses·a·module·if·the·name·is·listed·in·<code·class="inline">Modules</code>·in·the·child
239 specification·for·the·process.</p><p>If·<code·class="inline">Modules=dynamic</code>,·which·is·the·case·for·event·managers,·the·event·manager239 specification·for·the·process.</p><p>If·<code·class="inline">Modules=dynamic</code>,·which·is·the·case·for·event·managers,·the·event·manager
240 process·informs·the·release·handler·about·the·list·of·currently·installed·event240 process·informs·the·release·handler·about·the·list·of·currently·installed·event
241 handlers·(<code·class="inline">gen_event</code>),·and·it·is·checked·if·the·module·name·is·in·this·list241 handlers·(<code·class="inline">gen_event</code>),·and·it·is·checked·if·the·module·name·is·in·this·list
242 instead.</p><p>The·release·handler·suspends,·asks·for·code·change,·and·resumes·processes·by242 instead.</p><p>The·release·handler·suspends,·asks·for·code·change,·and·resumes·processes·by
243 calling·the·functions·<code·class="inline">sys:suspend/1,2</code>,·<code·class="inline">sys:change_code/4,5</code>,·and243 calling·the·functions·<code·class="inline">sys:suspend/1,2</code>,·<code·class="inline">sys:change_code/4,5</code>,·and
244 <code·class="inline">sys:resume/1,2</code>,·respectively.</p><h3·id="add_module-and-delete_module"·class="section-heading">244 <code·class="inline">sys:resume/1,2</code>,·respectively.</p><h3·id="add_module-and-delete_module"·class="section-heading">
245 ··<a·href="#add_module-and-delete_module"·class="hover-link">245 ··<a·href="#add_module-and-delete_module"·class="hover-link">
246 ····<i·class="ri-link-m"·aria-hidden="true"></i>246 ····<i·class="ri-link-m"·aria-hidden="true"></i>
247 ··</a>247 ··</a>
248 ··<span·class="text">add_module·and·delete_module</span>248 ··<span·class="text">add_module·and·delete_module</span>
249 </h3>249 </h3>
250 <p>If·a·new·module·is·introduced,·the·following·instruction·is·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0394627463-1">{</span><span·class="ss">add_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p"·data-group-id="0394627463-1">}</span></code></pre><p>This·instruction·loads·module·<code·class="inline">Module</code>.·When·running·Erlang·in250 <p>If·a·new·module·is·introduced,·the·following·instruction·is·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7796078610-1">{</span><span·class="ss">add_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p"·data-group-id="7796078610-1">}</span></code></pre><p>This·instruction·loads·module·<code·class="inline">Module</code>.·When·running·Erlang·in
251 embedded·mode·it·is·necessary·to·use·this·this·instruction.·It·is·not251 embedded·mode·it·is·necessary·to·use·this·this·instruction.·It·is·not
252 strictly·required·when·running·Erlang·in·interactive·mode,·since·the252 strictly·required·when·running·Erlang·in·interactive·mode,·since·the
253 code·server·automatically·searches·for·and·loads·unloaded·modules.</p><p>The·opposite·of·<code·class="inline">add_module</code>·is·<code·class="inline">delete_module</code>,·which·unloads·a·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7026604522-1">{</span><span·class="nb">delete_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p"·data-group-id="7026604522-1">}</span></code></pre><p>Any·process,·in·any·application,·with·<code·class="inline">Module</code>·as·residence·module,·is253 code·server·automatically·searches·for·and·loads·unloaded·modules.</p><p>The·opposite·of·<code·class="inline">add_module</code>·is·<code·class="inline">delete_module</code>,·which·unloads·a·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0673976091-1">{</span><span·class="nb">delete_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p"·data-group-id="0673976091-1">}</span></code></pre><p>Any·process,·in·any·application,·with·<code·class="inline">Module</code>·as·residence·module,·is
254 killed·when·the·instruction·is·evaluated.·Therefore,·the·user·must254 killed·when·the·instruction·is·evaluated.·Therefore,·the·user·must
255 ensure·that·all·such·processes·are·terminated·before·deleting·module255 ensure·that·all·such·processes·are·terminated·before·deleting·module
256 <code·class="inline">Module</code>·to·avoid·a·situation·with·failing·supervisor·restarts.</p><h3·id="application-instructions"·class="section-heading">256 <code·class="inline">Module</code>·to·avoid·a·situation·with·failing·supervisor·restarts.</p><h3·id="application-instructions"·class="section-heading">
257 ··<a·href="#application-instructions"·class="hover-link">257 ··<a·href="#application-instructions"·class="hover-link">
258 ····<i·class="ri-link-m"·aria-hidden="true"></i>258 ····<i·class="ri-link-m"·aria-hidden="true"></i>
259 ··</a>259 ··</a>
260 ··<span·class="text">Application·Instructions</span>260 ··<span·class="text">Application·Instructions</span>
Offset 341, 60 lines modifiedOffset 341, 60 lines modified
341 <code·class="inline">.app</code>·file.</li><li>Each·<code·class="inline">UpFromVsn</code>·is·a·previous·version·of·the·application·to·upgrade·from.</li><li>Each·<code·class="inline">DownToVsn</code>·is·a·previous·version·of·the·application·to·downgrade·to.</li><li>Each·<code·class="inline">Instructions</code>·is·a·list·of·release·handling·instructions.</li></ul><p><code·class="inline">UpFromVsn</code>·and·<code·class="inline">DownToVsn</code>·can·also·be·specified·as·regular·expressions.·For341 <code·class="inline">.app</code>·file.</li><li>Each·<code·class="inline">UpFromVsn</code>·is·a·previous·version·of·the·application·to·upgrade·from.</li><li>Each·<code·class="inline">DownToVsn</code>·is·a·previous·version·of·the·application·to·downgrade·to.</li><li>Each·<code·class="inline">Instructions</code>·is·a·list·of·release·handling·instructions.</li></ul><p><code·class="inline">UpFromVsn</code>·and·<code·class="inline">DownToVsn</code>·can·also·be·specified·as·regular·expressions.·For
342 more·information·about·the·syntax·and·contents·of·the·<code·class="inline">.appup</code>·file,·see342 more·information·about·the·syntax·and·contents·of·the·<code·class="inline">.appup</code>·file,·see
343 <a·href="../../lib/sasl-4.2.2/doc/html/appup.html"><code·class="inline">appup</code></a>·in·SASL.</p><p><a·href="appup_cookbook.html">Appup·Cookbook</a>·includes·examples·of·<code·class="inline">.appup</code>·files·for343 <a·href="../../lib/sasl-4.2.2/doc/html/appup.html"><code·class="inline">appup</code></a>·in·SASL.</p><p><a·href="appup_cookbook.html">Appup·Cookbook</a>·includes·examples·of·<code·class="inline">.appup</code>·files·for
344 typical·upgrade/downgrade·cases.</p><p><em>Example:</em>·Consider·the·release·<code·class="inline">ch_rel-1</code>·from344 typical·upgrade/downgrade·cases.</p><p><em>Example:</em>·Consider·the·release·<code·class="inline">ch_rel-1</code>·from
345 <a·href="release_structure.html#ch_rel">Releases</a>.·Assume·you·want·to·add·a·function345 <a·href="release_structure.html#ch_rel">Releases</a>.·Assume·you·want·to·add·a·function
346 <code·class="inline">available/0</code>·to·server·<code·class="inline">ch3</code>,·which·returns·the·number·of·available·channels346 <code·class="inline">available/0</code>·to·server·<code·class="inline">ch3</code>,·which·returns·the·number·of·available·channels
347 (when·trying·out·the·example,·make·the·change·in·a·copy·of·the·original347 (when·trying·out·the·example,·make·the·change·in·a·copy·of·the·original
348 directory,·to·ensure·that·the·first·version·is·still·available):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4496366777-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="4496366777-1">)</span><span·class="p">.</span><span·class="w">348 directory,·to·ensure·that·the·first·version·is·still·available):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4645280587-1">(</span><span·class="ss">ch3</span><span·class="p"·data-group-id="4645280587-1">)</span><span·class="p">.</span><span·class="w">
349 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="4496366777-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="4496366777-2">)</span><span·class="p">.</span><span·class="w">349 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="4645280587-2">(</span><span·class="ss">gen_server</span><span·class="p"·data-group-id="4645280587-2">)</span><span·class="p">.</span><span·class="w">
350 </span><span·class="w">350 </span><span·class="w">
351 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4496366777-3">(</span><span·class="p"·data-group-id="4496366777-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4496366777-4">]</span><span·class="p"·data-group-id="4496366777-3">)</span><span·class="p">.</span><span·class="w">351 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4645280587-3">(</span><span·class="p"·data-group-id="4645280587-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4645280587-4">]</span><span·class="p"·data-group-id="4645280587-3">)</span><span·class="p">.</span><span·class="w">
352 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4496366777-5">(</span><span·class="p"·data-group-id="4496366777-6">[</span><span·class="ss">alloc</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">free</span><span·class="p">/</span><spa[·...·truncated·by·diffoscope;·len:·114,·SHA:·3d806c0f7d184d58e9ec922759a73da07ae4d84324e776d7ad90c16dde3c359c·...·]7-5">)</span><span·class="p">.</span><span·class="w">352 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4645280587-5">(</span><span·class="p"·data-group-id="4645280587-6">[</span><span·class="ss">alloc</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">free</span><span·class="p">/</span><spa[·...·truncated·by·diffoscope;·len:·114,·SHA:·f86ffec0cd53ae23e382e4479077c9a24ad97d28f460dc5ea0c0e3c514119adc·...·]7-5">)</span><span·class="p">.</span><span·class="w">
353 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4496366777-7">(</span><span·class="p"·data-group-id="4496366777-8">[</span><span·class="ss">available</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4496366777-8">]</span><span·class="p"·data-group-id="4496366777-7">)</span><span·class="p">.</span><span·class="w">353 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4645280587-7">(</span><span·class="p"·data-group-id="4645280587-8">[</span><span·class="ss">available</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4645280587-8">]</span><span·class="p"·data-group-id="4645280587-7">)</span><span·class="p">.</span><span·class="w">
354 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4496366777-9">(</span><span·class="p"·data-group-id="4496366777-10">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</sp[·...·truncated·by·diffoscope;·len:·254,·SHA:·e774e2b0ded3dcb67b54619cb948cbc2b38d3cae48c8e4728758ff3e2a28f4de·...·]7-9">)</span><span·class="p">.</span><span·class="w">354 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4645280587-9">(</span><span·class="p"·data-group-id="4645280587-10">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</sp[·...·truncated·by·diffoscope;·len:·254,·SHA:·9381f0ad7b9d1edea7cff5075e47424d281902174c97eed2df3eea11b711e793·...·]7-9">)</span><span·class="p">.</span><span·class="w">
  
355 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="4496366777-11">(</span><span·class="p"·data-group-id="4496366777-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">355 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="4645280587-11">(</span><span·class="p"·data-group-id="4645280587-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
356 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="4496366777-12">(</span><span·class="p"·data-group-id="4496366777-13">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="4496366777-13">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·405,·SHA:·685af29a30002799bf6d837831c0d04fdc416c0cec628a6941b3ffa1b4c7c05a·...·]7-12">)</span><span·class="p">.</span><span·class="w">356 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="4645280587-12">(</span><span·class="p"·data-group-id="4645280587-13">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p"·data-group-id="4645280587-13">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·405,·SHA:·451582eba4d56dc6bbbd001699fc2aa6a3d9e1e667ca4a7c39e6528a68bbf139·...·]7-12">)</span><span·class="p">.</span><span·class="w">
  
357 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="4496366777-16">(</span><span·class="p"·data-group-id="4496366777-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">357 </span><span·class="nf">alloc</span><span·class="p"·data-group-id="4645280587-16">(</span><span·class="p"·data-group-id="4645280587-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
358 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="4496366777-17">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data-group-id="4496366777-17">)</span><span·class="p">.</span><span·class="w">358 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="4645280587-17">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">alloc</span><span·class="p"·data-group-id="4645280587-17">)</span><span·class="p">.</span><span·class="w">
  
359 </span><span·class="nf">free</span><span·class="p"·data-group-id="4496366777-18">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="4496366777-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">359 </span><span·class="nf">free</span><span·class="p"·data-group-id="4645280587-18">(</span><span·class="n">Ch</span><span·class="p"·data-group-id="4645280587-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
360 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="4496366777-19">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4496366777-20">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·d61fc5b46d67bc45e186231c30a0f10c398b74aaa159ae43bc635b19823164c0·...·]7-19">)</span><span·class="p">.</span><span·class="w">360 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="4645280587-19">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4645280587-20">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·5e9526bede75a33efb637e12bd34bb1599a48313db1b03aa2133eb32e179c6a3·...·]7-19">)</span><span·class="p">.</span><span·class="w">
  
361 </span><span·class="nf">available</span><span·class="p"·data-group-id="4496366777-21">(</span><span·class="p"·data-group-id="4496366777-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">361 </span><span·class="nf">available</span><span·class="p"·data-group-id="4645280587-21">(</span><span·class="p"·data-group-id="4645280587-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
362 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="4496366777-22">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">available</span><span·class="p"·data-group-id="4496366777-22">)</span><span·class="p">.</span><span·class="w">362 ····</span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="4645280587-22">(</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">available</span><span·class="p"·data-group-id="4645280587-22">)</span><span·class="p">.</span><span·class="w">
  
363 </span><span·class="nf">init</span><span·class="p"·data-group-id="4496366777-23">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="4496366777-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">363 </span><span·class="nf">init</span><span·class="p"·data-group-id="4645280587-23">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="4645280587-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
364 ····</span><span·class="p"·data-group-id="4496366777-24">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">channels</span><span·class="p"·data-group-id="4496366777-25">(</span><span·class="p"·data-group-id="4496366777-25">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·20,·SHA:·01117755df4503828636b14fcf16d8be450ed4f4f06f74bb83ca87f6df10559d·...·]7-24">}</span><span·class="p">.</span><span·class="w">364 ····</span><span·class="p"·data-group-id="4645280587-24">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">channels</span><span·class="p"·data-group-id="4645280587-25">(</span><span·class="p"·data-group-id="4645280587-25">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·20,·SHA:·4e09260011717ba5c943d7fd41a9ee570f3a37824604ac2b1a00dd17c3bce043·...·]7-24">}</span><span·class="p">.</span><span·class="w">
  
365 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="4496366777-26">(</span><span·class="ss">alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="4[·...·truncated·by·diffoscope;·len:·8,·SHA:·b1791eca147724c786672c91060e9b7e439fb7cbedac99012028a7292deb0d2b·...·]7-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">365 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="4645280587-26">(</span><span·class="ss">alloc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="4[·...·truncated·by·diffoscope;·len:·8,·SHA:·231e4fcd5a81ccfa4fd88ede01598ccdd460c690772526b5dbffacd9f2f44d2b·...·]7-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
366 ····</span><span·class="p"·data-group-id="4496366777-27">{</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="4496366777-27">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·141,·SHA:·48bdc2744effca43fa3ce844d83d63979a4f28ffa488a5e50aeeb8206af1cdaf·...·]7-28">)</span><span·class="p">,</span><span·class="w">366 ····</span><span·class="p"·data-group-id="4645280587-27">{</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="4645280587-27">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·141,·SHA:·2f2ab788d8b2fb03846416c7cb536d103f177b09408997719c96249067f0c137·...·]7-28">)</span><span·class="p">,</span><span·class="w">
367 ····</span><span·class="p"·data-group-id="4496366777-29">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="4496366777-29">}</span><span·class="p">;</span><span·class="w">367 ····</span><span·class="p"·data-group-id="4645280587-29">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="4645280587-29">}</span><span·class="p">;</span><span·class="w">
368 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="4496366777-30">(</span><span·class="ss">available</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·12,·SHA:·62c20aa6794fbe0817188216df308de1d2f69c360e2326f5ca678f2c08ec3626·...·]7-30">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">368 </span><span·class="nf">handle_call</span><span·class="p"·data-group-id="4645280587-30">(</span><span·class="ss">available</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·12,·SHA:·18376a42a1f814a52bf2b2c2ea1199704fffa889d08dbc5245f8e8aa5178f67b·...·]7-30">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
369 ····</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">available</span><span·class="p"·data-group-id="4496366777-31">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="4496366777-31">)</span><span·class="p">,</span><span·class="w">369 ····</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">available</span><span·class="p"·data-group-id="4645280587-31">(</span><span·class="n">Chs</span><span·class="p"·data-group-id="4645280587-31">)</span><span·class="p">,</span><span·class="w">
370 ····</span><span·class="p"·data-group-id="4496366777-32">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="4496366777-32">}</span><span·class="p">.</span><span·class="w">370 ····</span><span·class="p"·data-group-id="4645280587-32">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="4645280587-32">}</span><span·class="p">.</span><span·class="w">
  
371 </span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="4496366777-33">(</span><span·class="p"·data-group-id="4496366777-34">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="4496366777-34">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·89,·SHA:·94df16f896707956580a36b75daf67aef6a3b8cb83e661d3d052db217a533293·...·]7-33">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">371 </span><span·class="nf">handle_cast</span><span·class="p"·data-group-id="4645280587-33">(</span><span·class="p"·data-group-id="4645280587-34">{</span><span·class="ss">free</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ch</span><span·class="p"·data-group-id="4645280587-34">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·89,·SHA:·34e1b7472f2aff0028a4a2ccc5bb477e3aa5ad714b8bd7375ee838fdbf46a196·...·]7-33">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
372 ····</span><span·class="n">Chs2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">free</span><span·class="p"·data-group-id="4496366777-35">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="4496366777-35">)</span><span·class="p">,</span><span·class="w">372 ····</span><span·class="n">Chs2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">free</span><span·class="p"·data-group-id="4645280587-35">(</span><span·class="n">Ch</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs</span><span·class="p"·data-group-id="4645280587-35">)</span><span·class="p">,</span><span·class="w">
373 ····</span><span·class="p"·data-group-id="4496366777-36">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="4496366777-36">}</span><span·class="p">.</span></code></pre><p>A·new·version·of·the·<code·class="inline">ch_app.app</code>·file·must·now·be·created,·where·the·version·is373 ····</span><span·class="p"·data-group-id="4645280587-36">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Chs2</span><span·class="p"·data-group-id="4645280587-36">}</span><span·class="p">.</span></code></pre><p>A·new·version·of·the·<code·class="inline">ch_app.app</code>·file·must·now·be·created,·where·the·version·is
374 updated:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5274638606-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">374 updated:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6141778376-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">
375 ·</span><span·class="p"·data-group-id="5274638606-2">[</span><span·class="p"·data-group-id="5274638606-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p"·data-group-id="5274638606-3">}</span><span·class="p">,</span><span·class="w">375 ·</span><span·class="p"·data-group-id="6141778376-2">[</span><span·class="p"·data-group-id="6141778376-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p"·data-group-id="6141778376-3">}</span><span·class="p">,</span><span·class="w">
376 ··</span><span·class="p"·data-group-id="5274638606-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;2&quot;</span><span·class="p"·data-group-id="5274638606-4">}</span><span·class="p">,</span><span·class="w">376 ··</span><span·class="p"·data-group-id="6141778376-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;2&quot;</span><span·class="p"·data-group-id="6141778376-4">}</span><span·class="p">,</span><span·class="w">
377 ··</span><span·class="p"·data-group-id="5274638606-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5274638606-6">[</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_sup<[·...·truncated·by·diffoscope;·len:·174,·SHA:·dc7744890edf55e81bd09109b36b8724cabbae7568131f721d3eb02a02b347dc·...·]6-5">}</span><span·class="p">,</span><span·class="w">377 ··</span><span·class="p"·data-group-id="6141778376-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6141778376-6">[</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_sup<[·...·truncated·by·diffoscope;·len:·174,·SHA:·7444785dc05842eccf22a2efd118a34fde0125cacd9583eade2e4e780f1346e1·...·]6-5">}</span><span·class="p">,</span><span·class="w">
378 ··</span><span·class="p"·data-group-id="5274638606-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5274638606-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="5274638606-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·21,·SHA:·ab9fbe68ed0d103a7d912e31443c8eb50f3fc025768f9388aeb98de5b92c0afb·...·]6-7">}</span><span·class="p">,</span><span·class="w">378 ··</span><span·class="p"·data-group-id="6141778376-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6141778376-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="6141778376-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·21,·SHA:·e8ca04481a8430a61bb1d8a5e35b1faa3391051db96aa5053c2134ffe9c9c28a·...·]6-7">}</span><span·class="p">,</span><span·class="w">
379 ··</span><span·class="p"·data-group-id="5274638606-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5274638606-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·182,·SHA:·459e018120534d045ad3d9a774d472822bf174236705831cc92694234227ab48·...·]6-9">}</span><span·class="p">,</span><span·class="w">379 ··</span><span·class="p"·data-group-id="6141778376-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6141778376-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·182,·SHA:·578f9b502b4480cb1d605619ce976e06b5fd5dcf9bc2daaf41771fa5e3d1399d·...·]6-9">}</span><span·class="p">,</span><span·class="w">
380 ··</span><span·class="p"·data-group-id="5274638606-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5274638606-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="5274638606-13">[</s[·...·truncated·by·diffoscope;·len:·152,·SHA:·e18a24e3578a15080e0f69e65f62e296c5116cd47f5139e381b0c90a3c1068e6·...·]6-11">}</span><span·class="w">380 ··</span><span·class="p"·data-group-id="6141778376-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6141778376-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="6141778376-13">[</s[·...·truncated·by·diffoscope;·len:·152,·SHA:·de046c204780220f81ebd532af6213a56b7e3fd9d8f9791d6c948fa799474f65·...·]6-11">}</span><span·class="w">
381 ·</span><span·class="p"·data-group-id="5274638606-2">]</span><span·class="p"·data-group-id="5274638606-1">}</span><span·class="p">.</span></code></pre><p>To·upgrade·<code·class="inline">ch_app</code>·from·<code·class="inline">&quot;1&quot;</code>·to·<code·class="inline">&quot;2&quot;</code>·(and·to·downgrade·from·<code·class="inline">&quot;2&quot;</code>·to·<code·class="inline">&quot;1&quot;</code>),381 ·</span><span·class="p"·data-group-id="6141778376-2">]</span><span·class="p"·data-group-id="6141778376-1">}</span><span·class="p">.</span></code></pre><p>To·upgrade·<code·class="inline">ch_app</code>·from·<code·class="inline">&quot;1&quot;</code>·to·<code·class="inline">&quot;2&quot;</code>·(and·to·downgrade·from·<code·class="inline">&quot;2&quot;</code>·to·<code·class="inline">&quot;1&quot;</code>),
382 you·only·need·to·load·the·new·(old)·version·of·the·<code·class="inline">ch3</code>·callback·module.·Create382 you·only·need·to·load·the·new·(old)·version·of·the·<code·class="inline">ch3</code>·callback·module.·Create
383 the·application·upgrade·file·<code·class="inline">ch_app.appup</code>·in·the·<code·class="inline">ebin</code>·directory:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0546989566-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">383 the·application·upgrade·file·<code·class="inline">ch_app.appup</code>·in·the·<code·class="inline">ebin</code>·directory:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1916049367-1">{</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">
384 ·</span><span·class="p"·data-group-id="0546989566-2">[</span><span·class="p"·data-group-id="0546989566-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0546989566-4">[</span><span·class="p"·data-group-id="0546989566-5"[·...·truncated·by·diffoscope;·len:·319,·SHA:·61f1875f03e1a324b603b5d7e426f891645e2c8483188b182df8bd0560822e03·...·]-2">]</span><span·class="p">,</span><span·class="w">384 ·</span><span·class="p"·data-group-id="1916049367-2">[</span><span·class="p"·data-group-id="1916049367-3">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1916049367-4">[</span><span·class="p"·data-group-id="1916049367-5"[·...·truncated·by·diffoscope;·len:·319,·SHA:·3b8af63cd462575774a917825cac8605cfe5ee88c2182c997051ae799cffd1dc·...·]-2">]</span><span·class="p">,</span><span·class="w">
385 ·</span><span·class="p"·data-group-id="0546989566-6">[</span><span·class="p"·data-group-id="0546989566-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0546989566-8">[</span><span·class="p"·data-group-id="0546989566-9"[·...·truncated·by·diffoscope;·len:·319,·SHA:·152a5d8729b6ae503a096b79d3751de1e3a56fb003a33e10c2fb695882daa50b·...·]-6">]</span><span·class="w">385 ·</span><span·class="p"·data-group-id="1916049367-6">[</span><span·class="p"·data-group-id="1916049367-7">{</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1916049367-8">[</span><span·class="p"·data-group-id="1916049367-9"[·...·truncated·by·diffoscope;·len:·319,·SHA:·48674e26567f4701ef8d3ed019837fd21121578632bcc92c18e95e7e72459dfc·...·]-6">]</span><span·class="w">
386 </span><span·class="p"·data-group-id="0546989566-1">}</span><span·class="p">.</span></code></pre><p><a·href=""·id="relup"></a></p><h2·id="release-upgrade-file"·class="section-heading">386 </span><span·class="p"·data-group-id="1916049367-1">}</span><span·class="p">.</span></code></pre><p><a·href=""·id="relup"></a></p><h2·id="release-upgrade-file"·class="section-heading">
387 ··<a·href="#release-upgrade-file"·class="hover-link">387 ··<a·href="#release-upgrade-file"·class="hover-link">
388 ····<i·class="ri-link-m"·aria-hidden="true"></i>388 ····<i·class="ri-link-m"·aria-hidden="true"></i>
389 ··</a>389 ··</a>
390 ··<span·class="text">Release·Upgrade·File</span>390 ··<span·class="text">Release·Upgrade·File</span>
391 </h2>391 </h2>
392 <p>To·define·how·to·upgrade/downgrade·between·the·new·version·and·previous·versions392 <p>To·define·how·to·upgrade/downgrade·between·the·new·version·and·previous·versions
393 of·a·release,·a·<em>release·upgrade·file</em>,·or·in·short·<code·class="inline">.relup</code>·file,·is·to·be393 of·a·release,·a·<em>release·upgrade·file</em>,·or·in·short·<code·class="inline">.relup</code>·file,·is·to·be
Offset 405, 22 lines modifiedOffset 405, 22 lines modified
405 are·to·be·added·and·deleted,·and·which·applications·that·must·be·upgraded·and/or405 are·to·be·added·and·deleted,·and·which·applications·that·must·be·upgraded·and/or
406 downgraded.·The·instructions·for·this·are·fetched·from·the·<code·class="inline">.appup</code>·files·and406 downgraded.·The·instructions·for·this·are·fetched·from·the·<code·class="inline">.appup</code>·files·and
407 transformed·into·a·single·list·of·low-level·instructions·in·the·right·order.</p><p>If·the·<code·class="inline">relup</code>·file·is·relatively·simple,·it·can·be·created·manually.·It·is·only407 transformed·into·a·single·list·of·low-level·instructions·in·the·right·order.</p><p>If·the·<code·class="inline">relup</code>·file·is·relatively·simple,·it·can·be·created·manually.·It·is·only
408 to·contain·low-level·instructions.</p><p>For·details·about·the·syntax·and·contents·of·the·release·upgrade·file,·see408 to·contain·low-level·instructions.</p><p>For·details·about·the·syntax·and·contents·of·the·release·upgrade·file,·see
409 <a·href="../../lib/sasl-4.2.2/doc/html/relup.html"><code·class="inline">relup</code></a>·in·SASL.</p><p><em>Example,·continued·from·the·previous·section:</em>·You·have·a·new·version·&quot;2&quot;·of409 <a·href="../../lib/sasl-4.2.2/doc/html/relup.html"><code·class="inline">relup</code></a>·in·SASL.</p><p><em>Example,·continued·from·the·previous·section:</em>·You·have·a·new·version·&quot;2&quot;·of
410 <code·class="inline">ch_app</code>·and·an·<code·class="inline">.appup</code>·file.·A·new·version·of·the·<code·class="inline">.rel</code>·file·is·also·needed.410 <code·class="inline">ch_app</code>·and·an·<code·class="inline">.appup</code>·file.·A·new·version·of·the·<code·class="inline">.rel</code>·file·is·also·needed.
411 This·time·the·file·is·called·<code·class="inline">ch_rel-2.rel</code>·and·the·release·version·string·is411 This·time·the·file·is·called·<code·class="inline">ch_rel-2.rel</code>·and·the·release·version·string·is
412 changed·from·&quot;A&quot;·to·&quot;B&quot;:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1745386012-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">412 changed·from·&quot;A&quot;·to·&quot;B&quot;:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2974164251-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">
413 ·</span><span·class="p"·data-group-id="1745386012-2">{</span><span·class="s">&quot;ch_rel&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;B&quot;</span><span·class="p"·data-group-id="1745386012-2">}</span><span·class="p">,</span><span·class="w">413 ·</span><span·class="p"·data-group-id="2974164251-2">{</span><span·class="s">&quot;ch_rel&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;B&quot;</span><span·class="p"·data-group-id="2974164251-2">}</span><span·class="p">,</span><span·class="w">
414 ·</span><span·class="p"·data-group-id="1745386012-3">{</span><span·class="ss">erts</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;14.2.5&quot;</span><span·class="p"·data-group-id="1745386012-3">}</span><span·class="p">,</span><span·class="w">414 ·</span><span·class="p"·data-group-id="2974164251-3">{</span><span·class="ss">erts</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;14.2.5&quot;</span><span·class="p"·data-group-id="2974164251-3">}</span><span·class="p">,</span><span·class="w">
415 ·</span><span·class="p"·data-group-id="1745386012-4">[</span><span·class="p"·data-group-id="1745386012-5">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;9.2.4&quot;</span><span·class="p"·data-group-id="1745386012-5">}</span><span·class="p">,</span><span·class="w">415 ·</span><span·class="p"·data-group-id="2974164251-4">[</span><span·class="p"·data-group-id="2974164251-5">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;9.2.4&quot;</span><span·class="p"·data-group-id="2974164251-5">}</span><span·class="p">,</span><span·class="w">
416 ··</span><span·class="p"·data-group-id="1745386012-6">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;5.2.3&quot;</span><span·class="p"·data-group-id="1745386012-6">}</span><span·class="p">,</span><span·class="w">416 ··</span><span·class="p"·data-group-id="2974164251-6">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;5.2.3&quot;</span><span·class="p"·data-group-id="2974164251-6">}</span><span·class="p">,</span><span·class="w">
417 ··</span><span·class="p"·data-group-id="1745386012-7">{</span><span·class="ss">sasl</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;4.2.1&quot;</span><span·class="p"·data-group-id="1745386012-7">}</span><span·class="p">,</span><span·class="w">417 ··</span><span·class="p"·data-group-id="2974164251-7">{</span><span·class="ss">sasl</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;4.2.1&quot;</span><span·class="p"·data-group-id="2974164251-7">}</span><span·class="p">,</span><span·class="w">
418 ··</span><span·class="p"·data-group-id="1745386012-8">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;2&quot;</span><span·class="p"·data-group-id="1745386012-8">}</span><span·class="p"·data-group-id="1745386012-4">]</span><span·class="w">418 ··</span><span·class="p"·data-group-id="2974164251-8">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;2&quot;</span><span·class="p"·data-group-id="2974164251-8">}</span><span·class="p"·data-group-id="2974164251-4">]</span><span·class="w">
419 </span><span·class="p"·data-group-id="1745386012-1">}</span><span·class="p">.</span></code></pre><p>Now·the·<code·class="inline">relup</code>·file·can·be·generated:</p><pre><code·class="text">1&gt;·systools:make_relup(&quot;ch_rel-2&quot;,·[&quot;ch_rel-1&quot;],·[&quot;ch_rel-1&quot;]).419 </span><span·class="p"·data-group-id="2974164251-1">}</span><span·class="p">.</span></code></pre><p>Now·the·<code·class="inline">relup</code>·file·can·be·generated:</p><pre><code·class="text">1&gt;·systools:make_relup(&quot;ch_rel-2&quot;,·[&quot;ch_rel-1&quot;],·[&quot;ch_rel-1&quot;]).
420 ok</code></pre><p>This·generates·a·<code·class="inline">relup</code>·file·with·instructions·for·how·to·upgrade·from·version420 ok</code></pre><p>This·generates·a·<code·class="inline">relup</code>·file·with·instructions·for·how·to·upgrade·from·version
421 &quot;A&quot;·(&quot;ch_rel-1&quot;)·to·version·&quot;B&quot;·(&quot;ch_rel-2&quot;)·and·how·to·downgrade·from·version421 &quot;A&quot;·(&quot;ch_rel-1&quot;)·to·version·&quot;B&quot;·(&quot;ch_rel-2&quot;)·and·how·to·downgrade·from·version
422 &quot;B&quot;·to·version·&quot;A&quot;.</p><p>Both·the·old·and·new·versions·of·the·<code·class="inline">.app</code>·and·<code·class="inline">.rel</code>·files·must·be·in·the·code422 &quot;B&quot;·to·version·&quot;A&quot;.</p><p>Both·the·old·and·new·versions·of·the·<code·class="inline">.app</code>·and·<code·class="inline">.rel</code>·files·must·be·in·the·code
423 path,·as·well·as·the·<code·class="inline">.appup</code>·and·(new)·<code·class="inline">.beam</code>·files.·The·code·path·can·be423 path,·as·well·as·the·<code·class="inline">.appup</code>·and·(new)·<code·class="inline">.beam</code>·files.·The·code·path·can·be
424 extended·by·using·the·option·<code·class="inline">path</code>:</p><pre><code·class="text">1&gt;·systools:make_relup(&quot;ch_rel-2&quot;,·[&quot;ch_rel-1&quot;],·[&quot;ch_rel-1&quot;],424 extended·by·using·the·option·<code·class="inline">path</code>:</p><pre><code·class="text">1&gt;·systools:make_relup(&quot;ch_rel-2&quot;,·[&quot;ch_rel-1&quot;],·[&quot;ch_rel-1&quot;],
425 [{path,[&quot;../ch_rel-1&quot;,425 [{path,[&quot;../ch_rel-1&quot;,
426 &quot;../ch_rel-1/lib/ch_app-1/ebin&quot;]}]).426 &quot;../ch_rel-1/lib/ch_app-1/ebin&quot;]}]).
Offset 433, 25 lines modifiedOffset 433, 25 lines modified
433 <p>When·you·have·made·a·new·version·of·a·release,·a·release·package·can·be·created433 <p>When·you·have·made·a·new·version·of·a·release,·a·release·package·can·be·created
434 with·this·new·version·and·transferred·to·the·target·environment.</p><p>To·install·the·new·version·of·the·release·in·runtime,·the·<em>release434 with·this·new·version·and·transferred·to·the·target·environment.</p><p>To·install·the·new·version·of·the·release·in·runtime,·the·<em>release
435 handler</em>·is·used.·This·is·a·process·belonging·to·the·SASL·application,435 handler</em>·is·used.·This·is·a·process·belonging·to·the·SASL·application,
436 which·handles·unpacking,·installation,·and·removal·of·release436 which·handles·unpacking,·installation,·and·removal·of·release
Max diff block lines reached; 22919/69670 bytes (32.90%) of diff not shown.
688 B
html2text {}
Max HTML report size reached
19.5 KB
./usr/share/doc/erlang-doc/html/doc/system/release_structure.html
    
Offset 136, 37 lines modifiedOffset 136, 37 lines modified
136 ··<a·href="#release-resource-file"·class="hover-link">136 ··<a·href="#release-resource-file"·class="hover-link">
137 ····<i·class="ri-link-m"·aria-hidden="true"></i>137 ····<i·class="ri-link-m"·aria-hidden="true"></i>
138 ··</a>138 ··</a>
139 ··<span·class="text">Release·Resource·File</span>139 ··<span·class="text">Release·Resource·File</span>
140 </h2>140 </h2>
141 <p>To·define·a·release,·create·a·<em>release·resource·file</em>,·or·in·short·a·<code·class="inline">.rel</code>141 <p>To·define·a·release,·create·a·<em>release·resource·file</em>,·or·in·short·a·<code·class="inline">.rel</code>
142 file.·In·the·file,·specify·the·name·and·version·of·the·release,·which·ERTS142 file.·In·the·file,·specify·the·name·and·version·of·the·release,·which·ERTS
143 version·it·is·based·on,·and·which·applications·it·consists·of:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8603773052-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8603773052-2">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">Vsn</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·273,·SHA:·6635f1c5f5f7dbc24fe183f3720d77d299be3cb527ec38166ceb297f3cc65f2a·...·]-3">}</span><span·class="p">,</span><span·class="w">143 version·it·is·based·on,·and·which·applications·it·consists·of:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7651835243-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7651835243-2">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">Vsn</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·273,·SHA:·d8d61064ca61800f13c57c63a80139dac9551445564ca64ccb319d79b83d319f·...·]-3">}</span><span·class="p">,</span><span·class="w">
144 ·</span><span·class="p"·data-group-id="8603773052-4">[</span><span·class="p"·data-group-id="8603773052-5">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn1</span><span·class="p"·data-group-id="8603773052-5">}</span><span·class="p">,</span><span·class="w">144 ·</span><span·class="p"·data-group-id="7651835243-4">[</span><span·class="p"·data-group-id="7651835243-5">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn1</span><span·class="p"·data-group-id="7651835243-5">}</span><span·class="p">,</span><span·class="w">
145 ···</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">145 ···</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
146 ··</span><span·class="p"·data-group-id="8603773052-6">{</span><span·class="n">ApplicationN</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsnN</span><span·class="p"·data-group-id="8603773052-6">}</span><span·class="p"·data-group-id="8603773052-4">]</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·37c78de35f5a35046d2cc1effa79843e36d14d7cb249c8d706ad746d06470a83·...·]-1">}</span><span·class="p">.</span></code></pre><p><code·class="inline">Name</code>,·<code·class="inline">Vsn</code>,·<code·class="inline">EVsn</code>,·and·<code·class="inline">AppVsn</code>·are·strings.</p><p>The·file·must·be·named·<code·class="inline">Rel.rel</code>,·where·<code·class="inline">Rel</code>·is·a·unique·name.</p><p>Each·<code·class="inline">Application</code>·(atom)·and·<code·class="inline">AppVsn</code>·is·the·name·and·version·of·an·application146 ··</span><span·class="p"·data-group-id="7651835243-6">{</span><span·class="n">ApplicationN</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsnN</span><span·class="p"·data-group-id="7651835243-6">}</span><span·class="p"·data-group-id="7651835243-4">]</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·2723ad7d9a1c5f9102b60d41a5b5b1bc221c0c8b5e8c9b16ea0c5b4d3ba89742·...·]-1">}</span><span·class="p">.</span></code></pre><p><code·class="inline">Name</code>,·<code·class="inline">Vsn</code>,·<code·class="inline">EVsn</code>,·and·<code·class="inline">AppVsn</code>·are·strings.</p><p>The·file·must·be·named·<code·class="inline">Rel.rel</code>,·where·<code·class="inline">Rel</code>·is·a·unique·name.</p><p>Each·<code·class="inline">Application</code>·(atom)·and·<code·class="inline">AppVsn</code>·is·the·name·and·version·of·an·application
147 included·in·the·release.·The·minimal·release·based·on·Erlang/OTP·consists·of·the147 included·in·the·release.·The·minimal·release·based·on·Erlang/OTP·consists·of·the
148 Kernel·and·STDLIB·applications,·so·these·applications·must·be·included·in·the148 Kernel·and·STDLIB·applications,·so·these·applications·must·be·included·in·the
149 list.</p><p>If·the·release·is·to·be·upgraded,·it·must·also·include·the·SASL·application.</p><p><a·href=""·id="ch_rel"></a></p><p>Here·is·an·example·showing·the·<code·class="inline">.app</code>·file·for·a·release·of·<code·class="inline">ch_app</code>·from149 list.</p><p>If·the·release·is·to·be·upgraded,·it·must·also·include·the·SASL·application.</p><p><a·href=""·id="ch_rel"></a></p><p>Here·is·an·example·showing·the·<code·class="inline">.app</code>·file·for·a·release·of·<code·class="inline">ch_app</code>·from
150 the·<a·href="applications.html#ch_app">Applications</a>·section:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4700823990-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">150 the·<a·href="applications.html#ch_app">Applications</a>·section:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6407180844-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">
151 ·</span><span·class="p"·data-group-id="4700823990-2">[</span><span·class="p"·data-group-id="4700823990-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p"·data-group-id="4700823990-3">}</span><span·class="p">,</span><span·class="w">151 ·</span><span·class="p"·data-group-id="6407180844-2">[</span><span·class="p"·data-group-id="6407180844-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Channel·allocator&quot;</span><span·class="p"·data-group-id="6407180844-3">}</span><span·class="p">,</span><span·class="w">
152 ··</span><span·class="p"·data-group-id="4700823990-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="4700823990-4">}</span><span·class="p">,</span><span·class="w">152 ··</span><span·class="p"·data-group-id="6407180844-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="6407180844-4">}</span><span·class="p">,</span><span·class="w">
153 ··</span><span·class="p"·data-group-id="4700823990-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4700823990-6">[</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_sup<[·...·truncated·by·diffoscope;·len:·175,·SHA:·72d7291dbc04042b5af1e2b4e915a07d62ad8fab40ff96a0c67e5a14f2700632·...·]-5">}</span><span·class="p">,</span><span·class="w">153 ··</span><span·class="p"·data-group-id="6407180844-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6407180844-6">[</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ch_sup<[·...·truncated·by·diffoscope;·len:·175,·SHA:·deae6bac6df4574a50c886b82aff1942300dddc4f3c036f01077b264864fa642·...·]-5">}</span><span·class="p">,</span><span·class="w">
154 ··</span><span·class="p"·data-group-id="4700823990-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4700823990-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="4700823990-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·89992438604c709f575a6697abbad129018cd3528098b6e00c34a7a8d8a93cd7·...·]-7">}</span><span·class="p">,</span><span·class="w">154 ··</span><span·class="p"·data-group-id="6407180844-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6407180844-8">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="6407180844-8">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·115476bd5a367a12795ee68f45f013f68ea8caf589d5d2054c989615e27e576b·...·]-7">}</span><span·class="p">,</span><span·class="w">
155 ··</span><span·class="p"·data-group-id="4700823990-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4700823990-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·183,·SHA:·9a202536da56be9a304dbcad5286400a88b49ece65908ed4caf3bc47a47edd1c·...·]-9">}</span><span·class="p">,</span><span·class="w">155 ··</span><span·class="p"·data-group-id="6407180844-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6407180844-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·183,·SHA:·9ed906f73ec8b987b8b02b6bdcdbdfb93aea11a80272095800430f8e266a2de5·...·]-9">}</span><span·class="p">,</span><span·class="w">
156 ··</span><span·class="p"·data-group-id="4700823990-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4700823990-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="4700823990-13">[</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·fd5740d5370309516f01f46906fc2edc1cc1e7f3ccc06c2b5b209b273a0751ff·...·]-11">}</span><span·class="w">156 ··</span><span·class="p"·data-group-id="6407180844-11">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6407180844-12">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="p"·data-group-id="6407180844-13">[</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·02369deec909e897b7131b70ecf151cd557d68e27bd7d5832212018a85a53bf5·...·]-11">}</span><span·class="w">
157 ·</span><span·class="p"·data-group-id="4700823990-2">]</span><span·class="p"·data-group-id="4700823990-1">}</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">.rel</code>·file·must·also·contain·<code·class="inline">kernel</code>,·<code·class="inline">stdlib</code>,·and·<code·class="inline">sasl</code>,·as·these157 ·</span><span·class="p"·data-group-id="6407180844-2">]</span><span·class="p"·data-group-id="6407180844-1">}</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">.rel</code>·file·must·also·contain·<code·class="inline">kernel</code>,·<code·class="inline">stdlib</code>,·and·<code·class="inline">sasl</code>,·as·these
158 applications·are·required·by·<code·class="inline">ch_app</code>.·The·file·is·called·<code·class="inline">ch_rel-1.rel</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4315066605-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">158 applications·are·required·by·<code·class="inline">ch_app</code>.·The·file·is·called·<code·class="inline">ch_rel-1.rel</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1983587251-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">
159 ·</span><span·class="p"·data-group-id="4315066605-2">{</span><span·class="s">&quot;ch_rel&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;A&quot;</span><span·class="p"·data-group-id="4315066605-2">}</span><span·class="p">,</span><span·class="w">159 ·</span><span·class="p"·data-group-id="1983587251-2">{</span><span·class="s">&quot;ch_rel&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;A&quot;</span><span·class="p"·data-group-id="1983587251-2">}</span><span·class="p">,</span><span·class="w">
160 ·</span><span·class="p"·data-group-id="4315066605-3">{</span><span·class="ss">erts</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;14.2.5&quot;</span><span·class="p"·data-group-id="4315066605-3">}</span><span·class="p">,</span><span·class="w">160 ·</span><span·class="p"·data-group-id="1983587251-3">{</span><span·class="ss">erts</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;14.2.5&quot;</span><span·class="p"·data-group-id="1983587251-3">}</span><span·class="p">,</span><span·class="w">
161 ·</span><span·class="p"·data-group-id="4315066605-4">[</span><span·class="p"·data-group-id="4315066605-5">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;9.2.4&quot;</span><span·class="p"·data-group-id="4315066605-5">}</span><span·class="p">,</span><span·class="w">161 ·</span><span·class="p"·data-group-id="1983587251-4">[</span><span·class="p"·data-group-id="1983587251-5">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;9.2.4&quot;</span><span·class="p"·data-group-id="1983587251-5">}</span><span·class="p">,</span><span·class="w">
162 ··</span><span·class="p"·data-group-id="4315066605-6">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;5.2.3&quot;</span><span·class="p"·data-group-id="4315066605-6">}</span><span·class="p">,</span><span·class="w">162 ··</span><span·class="p"·data-group-id="1983587251-6">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;5.2.3&quot;</span><span·class="p"·data-group-id="1983587251-6">}</span><span·class="p">,</span><span·class="w">
163 ··</span><span·class="p"·data-group-id="4315066605-7">{</span><span·class="ss">sasl</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;4.2.1&quot;</span><span·class="p"·data-group-id="4315066605-7">}</span><span·class="p">,</span><span·class="w">163 ··</span><span·class="p"·data-group-id="1983587251-7">{</span><span·class="ss">sasl</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;4.2.1&quot;</span><span·class="p"·data-group-id="1983587251-7">}</span><span·class="p">,</span><span·class="w">
164 ··</span><span·class="p"·data-group-id="4315066605-8">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="4315066605-8">}</span><span·class="p"·data-group-id="4315066605-4">]</span><span·class="w">164 ··</span><span·class="p"·data-group-id="1983587251-8">{</span><span·class="ss">ch_app</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="1983587251-8">}</span><span·class="p"·data-group-id="1983587251-4">]</span><span·class="w">
165 </span><span·class="p"·data-group-id="4315066605-1">}</span><span·class="p">.</span></code></pre><p><a·href=""·id="boot"></a></p><h2·id="generating-boot-scripts"·class="section-heading">165 </span><span·class="p"·data-group-id="1983587251-1">}</span><span·class="p">.</span></code></pre><p><a·href=""·id="boot"></a></p><h2·id="generating-boot-scripts"·class="section-heading">
166 ··<a·href="#generating-boot-scripts"·class="hover-link">166 ··<a·href="#generating-boot-scripts"·class="hover-link">
167 ····<i·class="ri-link-m"·aria-hidden="true"></i>167 ····<i·class="ri-link-m"·aria-hidden="true"></i>
168 ··</a>168 ··</a>
169 ··<span·class="text">Generating·Boot·Scripts</span>169 ··<span·class="text">Generating·Boot·Scripts</span>
170 </h2>170 </h2>
171 <p><a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>·in·the·SASL·application·includes·tools·to·build·and·check171 <p><a·href="../../lib/sasl-4.2.2/doc/html/systools.html"><code·class="inline">systools</code></a>·in·the·SASL·application·includes·tools·to·build·and·check
172 releases.·The·functions·read·the·<code·class="inline">.rel</code>·and·<code·class="inline">.app</code>·files·and·perform172 releases.·The·functions·read·the·<code·class="inline">.rel</code>·and·<code·class="inline">.app</code>·files·and·perform
Offset 190, 17 lines modifiedOffset 190, 17 lines modified
190 ··<a·href="#creating-a-release-package"·class="hover-link">190 ··<a·href="#creating-a-release-package"·class="hover-link">
191 ····<i·class="ri-link-m"·aria-hidden="true"></i>191 ····<i·class="ri-link-m"·aria-hidden="true"></i>
192 ··</a>192 ··</a>
193 ··<span·class="text">Creating·a·Release·Package</span>193 ··<span·class="text">Creating·a·Release·Package</span>
194 </h2>194 </h2>
195 <p>The·<a·href="../../lib/sasl-4.2.2/doc/html/systools.html#make_tar/2"><code·class="inline">systools:make_tar/1,2</code></a>·function·takes·a195 <p>The·<a·href="../../lib/sasl-4.2.2/doc/html/systools.html#make_tar/2"><code·class="inline">systools:make_tar/1,2</code></a>·function·takes·a
196 <code·class="inline">.rel</code>·file·as·input·and·creates·a·zipped·tar·file·with·the·code·for196 <code·class="inline">.rel</code>·file·as·input·and·creates·a·zipped·tar·file·with·the·code·for
197 the·specified·applications,·a·<em>release·package</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">systools</span><span·class="p">:</span><span·class="nf">make_script</span><span·class="p"·data-group-id="3767191368-1">(</span><span·class="s">&quot;ch_rel-1&quot;</span><span·class="p"·data-group-id="3767191368-1">)</span><span·class="p">.</span><span·class="w">197 the·specified·applications,·a·<em>release·package</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">systools</span><span·class="p">:</span><span·class="nf">make_script</span><span·class="p"·data-group-id="1609076332-1">(</span><span·class="s">&quot;ch_rel-1&quot;</span><span·class="p"·data-group-id="1609076332-1">)</span><span·class="p">.</span><span·class="w">
198 </span><span·class="ss">ok</span><span·class="gp·unselectable">198 </span><span·class="ss">ok</span><span·class="gp·unselectable">
199 2&gt;·</span><span·class="nc">systools</span><span·class="p">:</span><span·class="nf">make_tar</span><span·class="p"·data-group-id="3767191368-2">(</span><span·class="s">&quot;ch_rel-1&quot;</span><span·class="p"·data-group-id="3767191368-2">)</span><span·class="p">.</span><span·class="w">199 2&gt;·</span><span·class="nc">systools</span><span·class="p">:</span><span·class="nf">make_tar</span><span·class="p"·data-group-id="1609076332-2">(</span><span·class="s">&quot;ch_rel-1&quot;</span><span·class="p"·data-group-id="1609076332-2">)</span><span·class="p">.</span><span·class="w">
200 </span><span·class="ss">ok</span></code></pre><p>The·release·package·by·default·contains:</p><ul><li>The·<code·class="inline">.app</code>·files</li><li>The·<code·class="inline">.rel</code>·file</li><li>The·object·code·for·all·applications,·structured·according·to·the200 </span><span·class="ss">ok</span></code></pre><p>The·release·package·by·default·contains:</p><ul><li>The·<code·class="inline">.app</code>·files</li><li>The·<code·class="inline">.rel</code>·file</li><li>The·object·code·for·all·applications,·structured·according·to·the
201 <a·href="applications.html#app_dir">application·directory·structure</a></li><li>The·binary·boot·script·renamed·to·<code·class="inline">start.boot</code></li></ul><pre><code·class="text">%·tar·tf·ch_rel-1.tar201 <a·href="applications.html#app_dir">application·directory·structure</a></li><li>The·binary·boot·script·renamed·to·<code·class="inline">start.boot</code></li></ul><pre><code·class="text">%·tar·tf·ch_rel-1.tar
202 lib/kernel-9.2.4/ebin/kernel.app202 lib/kernel-9.2.4/ebin/kernel.app
203 lib/kernel-9.2.4/ebin/application.beam203 lib/kernel-9.2.4/ebin/application.beam
204 ...204 ...
205 lib/stdlib-5.2.3/ebin/stdlib.app205 lib/stdlib-5.2.3/ebin/stdlib.app
206 lib/stdlib-5.2.3/ebin/argparse.beam206 lib/stdlib-5.2.3/ebin/argparse.beam
Offset 351, 15 lines modifiedOffset 351, 15 lines modified
351 ······<p·class="built-using">351 ······<p·class="built-using">
352 ········Built·using352 ········Built·using
353 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the353 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
354 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>354 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
355 ······</p>355 ······</p>
356 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>356 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
357 ····</footer>357 ····</footer>
358 ··</div>358 ··</div>
359 </main>359 </main>
360 </div>360 </div>
361 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>361 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
362 <script>362 <script>
363 ··document.addEventListener("DOMContentLoaded",·function·()·{363 ··document.addEventListener("DOMContentLoaded",·function·()·{
686 B
html2text {}
Max HTML report size reached
115 KB
./usr/share/doc/erlang-doc/html/doc/system/robustness.html
    
Offset 128, 68 lines modifiedOffset 128, 68 lines modified
128 </h2>128 </h2>
129 <p>Before·improving·the·messenger·program,·let·us·look·at·some·general·principles,129 <p>Before·improving·the·messenger·program,·let·us·look·at·some·general·principles,
130 using·the·ping·pong·program·as·an·example.·Recall·that·when·&quot;ping&quot;·finishes,·it130 using·the·ping·pong·program·as·an·example.·Recall·that·when·&quot;ping&quot;·finishes,·it
131 tells·&quot;pong&quot;·that·it·has·done·so·by·sending·the·atom·<code·class="inline">finished</code>·as·a·message·to131 tells·&quot;pong&quot;·that·it·has·done·so·by·sending·the·atom·<code·class="inline">finished</code>·as·a·message·to
132 &quot;pong&quot;·so·that·&quot;pong&quot;·can·also·finish.·Another·way·to·let·&quot;pong&quot;·finish·is·to132 &quot;pong&quot;·so·that·&quot;pong&quot;·can·also·finish.·Another·way·to·let·&quot;pong&quot;·finish·is·to
133 make·&quot;pong&quot;·exit·if·it·does·not·receive·a·message·from·ping·within·a·certain133 make·&quot;pong&quot;·exit·if·it·does·not·receive·a·message·from·ping·within·a·certain
134 time.·This·can·be·done·by·adding·a·<em>time-out</em>·to·<code·class="inline">pong</code>·as·shown·in·the134 time.·This·can·be·done·by·adding·a·<em>time-out</em>·to·<code·class="inline">pong</code>·as·shown·in·the
135 following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0510591964-1">(</span><span·class="ss">tut19</span><span·class="p"·data-group-id="0510591964-1">)</span><span·class="p">.</span><span·class="w">135 following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8241031553-1">(</span><span·class="ss">tut19</span><span·class="p"·data-group-id="8241031553-1">)</span><span·class="p">.</span><span·class="w">
136 </span><span·class="w">136 </span><span·class="w">
137 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0510591964-2">(</span><span·class="p"·data-group-id="0510591964-3">[</span><span·class="ss">start_ping</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_pong</span><span·class="p">[·...·truncated·by·diffoscope;·len:·378,·SHA:·a8221aad9885a797cd0080fb6ce7a998b28976cc28f843801c536d195cb55865·...·]-2">)</span><span·class="p">.</span><span·class="w">137 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8241031553-2">(</span><span·class="p"·data-group-id="8241031553-3">[</span><span·class="ss">start_ping</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_pong</span><span·class="p">[·...·truncated·by·diffoscope;·len:·378,·SHA:·c844df7029a6953349a55bd81295e2d7ee78da1a1c18b77236fbd263df756922·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
138 </span><span·class="nf">ping</span><span·class="p"·data-group-id="0510591964-4">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="0510591964-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">138 </span><span·class="nf">ping</span><span·class="p"·data-group-id="8241031553-4">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="8241031553-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
139 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0510591964-5">(</span><span·class="s">&quot;ping·finished</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0510591964-6">[</span><span·class="p"·data-group-id="05105[·...·truncated·by·diffoscope;·len:·58,·SHA:·52f6936e5779b6a59e5ab93eb08133d0ce38196ea0c62e6fabdc244981a024dd·...·]-5">)</span><span·class="p">;</span><span·class="w">139 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8241031553-5">(</span><span·class="s">&quot;ping·finished</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8241031553-6">[</span><span·class="p"·data-group-id="82410[·...·truncated·by·diffoscope;·len:·58,·SHA:·259cf82cd60e9009e622e0a4fc500c28cdd771279a003d50439bb432336dcc10·...·]-5">)</span><span·class="p">;</span><span·class="w">
  
140 </span><span·class="nf">ping</span><span·class="p"·data-group-id="0510591964-7">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="0510591964-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">140 </span><span·class="nf">ping</span><span·class="p"·data-group-id="8241031553-7">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="8241031553-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
141 ····</span><span·class="p"·data-group-id="0510591964-8">{</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="0510591964-8">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·305,·SHA:·8f6ab5690ade6fff39295f0108ecab3c6f2a6dbcddbe3846213a36cf42bde244·...·]-9">}</span><span·class="p">,</span><span·class="w">141 ····</span><span·class="p"·data-group-id="8241031553-8">{</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="8241031553-8">}</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·305,·SHA:·eabe54e5b208d173fbf11be95251b9788a873f908b5b59a4452d3bd65cbac075·...·]-9">}</span><span·class="p">,</span><span·class="w">
142 ····</span><span·class="k">receive</span><span·class="w">142 ····</span><span·class="k">receive</span><span·class="w">
143 ········</span><span·class="ss">pong</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">143 ········</span><span·class="ss">pong</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
144 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0510591964-11">(</span><span·class="s">&quot;Ping·received·pong</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0510591964-12">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·5bbb8456cf5c14ef84ab1b00de7917a18e8161501fa5f93ac79040b7984c2992·...·]-11">)</span><span·class="w">144 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8241031553-11">(</span><span·class="s">&quot;Ping·received·pong</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8241031553-12">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·4cab94be45d1d2ed9ae83fe28ec5433fb6664bdb9b4ca36cf9d54ed2e8004850·...·]-11">)</span><span·class="w">
145 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">145 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
146 ····</span><span·class="nf">ping</span><span·class="p"·data-group-id="0510591964-13">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="0[·...·truncated·by·diffoscope;·len:·9,·SHA:·0083657f3631bda129d098e9f149b066b2d6544eae57c6a1bffe84e28a9e4fe4·...·]-13">)</span><span·class="p">.</span><span·class="w">146 ····</span><span·class="nf">ping</span><span·class="p"·data-group-id="8241031553-13">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="8[·...·truncated·by·diffoscope;·len:·9,·SHA:·c251afc3f2337f82b59ea7a5724a892639596b0f6db45f30572ea8cc71dc117b·...·]-13">)</span><span·class="p">.</span><span·class="w">
  
147 </span><span·class="nf">pong</span><span·class="p"·data-group-id="0510591964-14">(</span><span·class="p"·data-group-id="0510591964-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">147 </span><span·class="nf">pong</span><span·class="p"·data-group-id="8241031553-14">(</span><span·class="p"·data-group-id="8241031553-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
148 ····</span><span·class="k">receive</span><span·class="w">148 ····</span><span·class="k">receive</span><span·class="w">
149 ········</span><span·class="p"·data-group-id="0510591964-15">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ping_PID</span><span·class="p"·data-group-id="0510591964-15">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 ········</span><span·class="p"·data-group-id="8241031553-15">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ping_PID</span><span·class="p"·data-group-id="8241031553-15">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
150 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0510591964-16">(</span><span·class="s">&quot;Pong·received·ping</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0510591964-17">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·165de4c27d7cc19c93595b9a9ed26852bd07a65c14fc4560f25618dd01f6cbcd·...·]-16">)</span><span·class="p">,</span><span·class="w">150 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8241031553-16">(</span><span·class="s">&quot;Pong·received·ping</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8241031553-17">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·1a5bd7c8ad05f2268ee229c86d23577fafb9d66a4fe7f4c90ffd987df1a24374·...·]-16">)</span><span·class="p">,</span><span·class="w">
151 ············</span><span·class="n">Ping_PID</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">151 ············</span><span·class="n">Ping_PID</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">
152 ············</span><span·class="nf">pong</span><span·class="p"·data-group-id="0510591964-18">(</span><span·class="p"·data-group-id="0510591964-18">)</span><span·class="w">152 ············</span><span·class="nf">pong</span><span·class="p"·data-group-id="8241031553-18">(</span><span·class="p"·data-group-id="8241031553-18">)</span><span·class="w">
153 ····</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">153 ····</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
154 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0510591964-19">(</span><span·class="s">&quot;Pong·timed·out</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0510591964-20">[</span><span·class="p"·data-group-id="05[·...·truncated·by·diffoscope;·len:·62,·SHA:·b14b2558f5096298c4ec2bace13a25615aa47d97cfdc0d71aa96039072e1bdf7·...·]-19">)</span><span·class="w">154 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8241031553-19">(</span><span·class="s">&quot;Pong·timed·out</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8241031553-20">[</span><span·class="p"·data-group-id="82[·...·truncated·by·diffoscope;·len:·62,·SHA:·7f2412e16bec466cfd60fb9982452567d00fcf5d1e09ab13b0d91e3a67e1cbf1·...·]-19">)</span><span·class="w">
155 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">155 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
156 </span><span·class="nf">start_pong</span><span·class="p"·data-group-id="0510591964-21">(</span><span·class="p"·data-group-id="0510591964-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">156 </span><span·class="nf">start_pong</span><span·class="p"·data-group-id="8241031553-21">(</span><span·class="p"·data-group-id="8241031553-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
157 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="0510591964-22">(</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="0510591964-23">(</span><span·class="ss">tut19</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·282,·SHA:·43388afcf43181e99887cd469be9875b9a963f67573f033d5fc1b1a7054de012·...·]-22">)</span><span·class="p">.</span><span·class="w">157 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="8241031553-22">(</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8241031553-23">(</span><span·class="ss">tut19</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·282,·SHA:·47a22e38b5f3b30aa3f0843af16f022fd98e52e33b4c8f2ebe1f07b08ab890e6·...·]-22">)</span><span·class="p">.</span><span·class="w">
  
158 </span><span·class="nf">start_ping</span><span·class="p"·data-group-id="0510591964-25">(</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="0510591964-25">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">158 </span><span·class="nf">start_ping</span><span·class="p"·data-group-id="8241031553-25">(</span><span·class="n">Pong_Node</span><span·class="p"·data-group-id="8241031553-25">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
159 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="0510591964-26">(</span><span·class="ss">tut19</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0510591964-27">[</span><span·class="mi">3</span><[·...·truncated·by·diffoscope;·len:·174,·SHA:·d9f210e92a1cfdd265ed3ba5bc3ad7e71734229e5d687179004c7bef8ce918cf·...·]-26">)</span><span·class="p">.</span></code></pre><p>After·this·is·compiled·and·the·file·<code·class="inline">tut19.beam</code>·is·copied·to·the·necessary159 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8241031553-26">(</span><span·class="ss">tut19</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8241031553-27">[</span><span·class="mi">3</span><[·...·truncated·by·diffoscope;·len:·174,·SHA:·b4969ab729b1aae9ba63376b42ce58f731edb76eb44bc74aa8971378f90c6b89·...·]-26">)</span><span·class="p">.</span></code></pre><p>After·this·is·compiled·and·the·file·<code·class="inline">tut19.beam</code>·is·copied·to·the·necessary
160 directories,·the·following·is·seen·on·(pong@kosken):</p><pre><code·class="text">(pong@kosken)1&gt;·tut19:start_pong().160 directories,·the·following·is·seen·on·(pong@kosken):</p><pre><code·class="text">(pong@kosken)1&gt;·tut19:start_pong().
161 true161 true
162 Pong·received·ping162 Pong·received·ping
163 Pong·received·ping163 Pong·received·ping
164 Pong·received·ping164 Pong·received·ping
165 Pong·timed·out</code></pre><p>And·the·following·is·seen·on·(ping@gollum):</p><pre><code·class="text">(ping@gollum)1&gt;·tut19:start_ping(pong@kosken).165 Pong·timed·out</code></pre><p>And·the·following·is·seen·on·(ping@gollum):</p><pre><code·class="text">(ping@gollum)1&gt;·tut19:start_ping(pong@kosken).
166 &lt;0.36.0&gt;166 &lt;0.36.0&gt;
167 Ping·received·pong167 Ping·received·pong
168 Ping·received·pong168 Ping·received·pong
169 Ping·received·pong169 Ping·received·pong
170 ping·finished</code></pre><p>The·time-out·is·set·in:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">pong</span><span·class="p"·data-group-id="5946364711-1">(</span><span·class="p"·data-group-id="5946364711-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">170 ping·finished</code></pre><p>The·time-out·is·set·in:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">pong</span><span·class="p"·data-group-id="5955308110-1">(</span><span·class="p"·data-group-id="5955308110-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
171 ····</span><span·class="k">receive</span><span·class="w">171 ····</span><span·class="k">receive</span><span·class="w">
172 ········</span><span·class="p"·data-group-id="5946364711-2">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ping_PID</span><span·class="p"·data-group-id="5946364711-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 ········</span><span·class="p"·data-group-id="5955308110-2">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ping_PID</span><span·class="p"·data-group-id="5955308110-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
173 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5946364711-3">(</span><span·class="s">&quot;Pong·received·ping</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5946364711-4">[</span><span·class="p"·data-group-id="59[·...·truncated·by·diffoscope;·len:·61,·SHA:·80de98ef76dc1eace218e94a5ed45e9b08f284fc7cb02b732833061c4ef74b3b·...·]-3">)</span><span·class="p">,</span><span·class="w">173 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5955308110-3">(</span><span·class="s">&quot;Pong·received·ping</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5955308110-4">[</span><span·class="p"·data-group-id="59[·...·truncated·by·diffoscope;·len:·61,·SHA:·c746055d98de1dfa876a6b3ffb9c85e38d7a6ab8020620cdbaa95a218a54b018·...·]-3">)</span><span·class="p">,</span><span·class="w">
174 ············</span><span·class="n">Ping_PID</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">174 ············</span><span·class="n">Ping_PID</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">
175 ············</span><span·class="nf">pong</span><span·class="p"·data-group-id="5946364711-5">(</span><span·class="p"·data-group-id="5946364711-5">)</span><span·class="w">175 ············</span><span·class="nf">pong</span><span·class="p"·data-group-id="5955308110-5">(</span><span·class="p"·data-group-id="5955308110-5">)</span><span·class="w">
176 ····</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 ····</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5946364711-6">(</span><span·class="s">&quot;Pong·timed·out</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5946364711-7">[</span><span·class="p"·data-group-id="594636[·...·truncated·by·diffoscope;·len:·57,·SHA:·59a16a86d66806c9ee92b570ed0b846b2d0fc7b64cbb3d306fe7ad3cd2bb4532·...·]-6">)</span><span·class="w">177 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5955308110-6">(</span><span·class="s">&quot;Pong·timed·out</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5955308110-7">[</span><span·class="p"·data-group-id="595530[·...·truncated·by·diffoscope;·len:·57,·SHA:·ec0c1ab006fd63c92804073d69d6bac8c6f1bd6d759cb3290b97112a2d1125b3·...·]-6">)</span><span·class="w">
178 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·time-out·(<code·class="inline">after·5000</code>)·is·started·when·<code·class="inline">receive</code>·is·entered.·The·time-out178 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·time-out·(<code·class="inline">after·5000</code>)·is·started·when·<code·class="inline">receive</code>·is·entered.·The·time-out
179 is·canceled·if·<code·class="inline">{ping,Ping_PID}</code>·is·received.·If·<code·class="inline">{ping,Ping_PID}</code>·is·not179 is·canceled·if·<code·class="inline">{ping,Ping_PID}</code>·is·received.·If·<code·class="inline">{ping,Ping_PID}</code>·is·not
180 received,·the·actions·following·the·time-out·are·done·after·5000·milliseconds.180 received,·the·actions·following·the·time-out·are·done·after·5000·milliseconds.
181 <code·class="inline">after</code>·must·be·last·in·the·<code·class="inline">receive</code>,·that·is,·preceded·by·all·other·message181 <code·class="inline">after</code>·must·be·last·in·the·<code·class="inline">receive</code>,·that·is,·preceded·by·all·other·message
182 reception·specifications·in·the·<code·class="inline">receive</code>.·It·is·also·possible·to·call·a182 reception·specifications·in·the·<code·class="inline">receive</code>.·It·is·also·possible·to·call·a
183 function·that·returned·an·integer·for·the·time-out:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">after</span><span·class="w">·</span><span·class="nf">pong_timeout</span><span·class="p"·data-group-id="6233006599-1">(</span><span·class="p"·data-group-id="6233006599-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span></code></pre><p>In·general,·there·are·better·ways·than·using·time-outs·to·supervise·parts·of·a183 function·that·returned·an·integer·for·the·time-out:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">after</span><span·class="w">·</span><span·class="nf">pong_timeout</span><span·class="p"·data-group-id="7814829203-1">(</span><span·class="p"·data-group-id="7814829203-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span></code></pre><p>In·general,·there·are·better·ways·than·using·time-outs·to·supervise·parts·of·a
184 distributed·Erlang·system.·Time-outs·are·usually·appropriate·to·supervise184 distributed·Erlang·system.·Time-outs·are·usually·appropriate·to·supervise
185 external·events,·for·example,·if·you·have·expected·a·message·from·some·external185 external·events,·for·example,·if·you·have·expected·a·message·from·some·external
186 system·within·a·specified·time.·For·example,·a·time-out·can·be·used·to·log·a186 system·within·a·specified·time.·For·example,·a·time-out·can·be·used·to·log·a
187 user·out·of·the·messenger·system·if·they·have·not·accessed·it·for,·say,·ten187 user·out·of·the·messenger·system·if·they·have·not·accessed·it·for,·say,·ten
188 minutes.</p><h2·id="error-handling"·class="section-heading">188 minutes.</p><h2·id="error-handling"·class="section-heading">
189 ··<a·href="#error-handling"·class="hover-link">189 ··<a·href="#error-handling"·class="hover-link">
190 ····<i·class="ri-link-m"·aria-hidden="true"></i>190 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 209, 96 lines modifiedOffset 209, 96 lines modified
209 something·called·a·<em>signal</em>·to·all·the·processes·it·has·links·to.</p><p>The·signal·carries·information·about·the·pid·it·was·sent·from·and·the·exit209 something·called·a·<em>signal</em>·to·all·the·processes·it·has·links·to.</p><p>The·signal·carries·information·about·the·pid·it·was·sent·from·and·the·exit
210 reason.</p><p>The·default·behaviour·of·a·process·that·receives·a·normal·exit·is·to·ignore·the210 reason.</p><p>The·default·behaviour·of·a·process·that·receives·a·normal·exit·is·to·ignore·the
211 signal.</p><p>The·default·behaviour·in·the·two·other·cases·(that·is,·abnormal·exit)·above·is211 signal.</p><p>The·default·behaviour·in·the·two·other·cases·(that·is,·abnormal·exit)·above·is
212 to:</p><ul><li>Bypass·all·messages·to·the·receiving·process.</li><li>Kill·the·receiving·process.</li><li>Propagate·the·same·error·signal·to·the·links·of·the·killed·process.</li></ul><p>In·this·way·you·can·connect·all·processes·in·a·transaction·together·using·links.212 to:</p><ul><li>Bypass·all·messages·to·the·receiving·process.</li><li>Kill·the·receiving·process.</li><li>Propagate·the·same·error·signal·to·the·links·of·the·killed·process.</li></ul><p>In·this·way·you·can·connect·all·processes·in·a·transaction·together·using·links.
213 If·one·of·the·processes·exits·abnormally,·all·the·processes·in·the·transaction213 If·one·of·the·processes·exits·abnormally,·all·the·processes·in·the·transaction
214 are·killed.·As·it·is·often·wanted·to·create·a·process·and·link·to·it·at·the·same214 are·killed.·As·it·is·often·wanted·to·create·a·process·and·link·to·it·at·the·same
215 time,·there·is·a·special·BIF,·<a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_link/1">spawn_link</a>·that·does·the215 time,·there·is·a·special·BIF,·<a·href="../../erts-15.0.1/doc/html/erlang.html#spawn_link/1">spawn_link</a>·that·does·the
216 same·as·<code·class="inline">spawn</code>,·but·also·creates·a·link·to·the·spawned·process.</p><p>Now·an·example·of·the·ping·pong·example·using·links·to·terminate·&quot;pong&quot;:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0648790415-1">(</span><span·class="ss">tut20</span><span·class="p"·data-group-id="0648790415-1">)</span><span·class="p">.</span><span·class="w">216 same·as·<code·class="inline">spawn</code>,·but·also·creates·a·link·to·the·spawned·process.</p><p>Now·an·example·of·the·ping·pong·example·using·links·to·terminate·&quot;pong&quot;:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="3758162397-1">(</span><span·class="ss">tut20</span><span·class="p"·data-group-id="3758162397-1">)</span><span·class="p">.</span><span·class="w">
217 </span><span·class="w">217 </span><span·class="w">
218 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0648790415-2">(</span><span·class="p"·data-group-id="0648790415-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">··</span><span·class="ss">ping</span><span·class="p">/</span><s[·...·truncated·by·diffoscope;·len:·242,·SHA:·de7de147a33cbe4fcd283742e61a11b934464b7469544e997808b23690caf46e·...·]-2">)</span><span·class="p">.</span><span·class="w">218 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3758162397-2">(</span><span·class="p"·data-group-id="3758162397-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">··</span><span·class="ss">ping</span><span·class="p">/</span><s[·...·truncated·by·diffoscope;·len:·242,·SHA:·b8e598da6fc0f0547b45a074c8f511a7034b8a1ce3639748a18b4333620cab5f·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
219 </span><span·class="nf">ping</span><span·class="p"·data-group-id="0648790415-4">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="0648790415-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 </span><span·class="nf">ping</span><span·class="p"·data-group-id="3758162397-4">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="3758162397-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 ····</span><span·class="nf">link</span><span·class="p"·data-group-id="0648790415-5">(</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="0648790415-5">)</span><span·class="p">,</span><span·class="w">220 ····</span><span·class="nf">link</span><span·class="p"·data-group-id="3758162397-5">(</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="3758162397-5">)</span><span·class="p">,</span><span·class="w">
221 ····</span><span·class="nf">ping1</span><span·class="p"·data-group-id="0648790415-6">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="0648790415-6">)</span><span·class="p">.</span><span·class="w">221 ····</span><span·class="nf">ping1</span><span·class="p"·data-group-id="3758162397-6">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="3758162397-6">)</span><span·class="p">.</span><span·class="w">
  
222 </span><span·class="nf">ping1</span><span·class="p"·data-group-id="0648790415-7">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="0648790415-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">222 </span><span·class="nf">ping1</span><span·class="p"·data-group-id="3758162397-7">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="3758162397-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
223 ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="0648790415-8">(</span><span·class="ss">ping</span><span·class="p"·data-group-id="0648790415-8">)</span><span·class="p">;</span><span·class="w">223 ····</span><span·class="nf">exit</span><span·class="p"·data-group-id="3758162397-8">(</span><span·class="ss">ping</span><span·class="p"·data-group-id="3758162397-8">)</span><span·class="p">;</span><span·class="w">
  
224 </span><span·class="nf">ping1</span><span·class="p"·data-group-id="0648790415-9">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="0648790415-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 </span><span·class="nf">ping1</span><span·class="p"·data-group-id="3758162397-9">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="3758162397-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 ····</span><span·class="n">Pong_Pid</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="0648790415-10">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="0648790415-11">(</span><span·class="p"·data-group-id="0648790415-11">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·fa31da9ee6c9a5c1736c6b632a7bc29df4f897a0693cedce8bbf800251aa8b80·...·]-10">}</span><span·class="p">,</span><span·class="w">225 ····</span><span·class="n">Pong_Pid</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="3758162397-10">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="3758162397-11">(</span><span·class="p"·data-group-id="3758162397-11">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·7dfc4c64c760be8a2072fa76ffe0e1ad80d4d34bcf78bc0a44be2f7432144afd·...·]-10">}</span><span·class="p">,</span><span·class="w">
226 ····</span><span·class="k">receive</span><span·class="w">226 ····</span><span·class="k">receive</span><span·class="w">
227 ········</span><span·class="ss">pong</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 ········</span><span·class="ss">pong</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0648790415-12">(</span><span·class="s">&quot;Ping·received·pong</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0648790415-13">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·105cccf89b3b18c87ec39a3f16cfa4ac13541ea26c7eaa2d05c4a6d495743b25·...·]-12">)</span><span·class="w">228 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3758162397-12">(</span><span·class="s">&quot;Ping·received·pong</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3758162397-13">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·b4094116b40ad6047b76e86e7e51a1589ff4e4704bca862306b5bb0bfd16fea2·...·]-12">)</span><span·class="w">
229 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">229 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
230 ····</span><span·class="nf">ping1</span><span·class="p"·data-group-id="0648790415-14">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="06[·...·truncated·by·diffoscope;·len:·8,·SHA:·14430672b1007fffe95491910d07dd1e9a50be98df5ff3a260e1a07d41e132d1·...·]-14">)</span><span·class="p">.</span><span·class="w">230 ····</span><span·class="nf">ping1</span><span·class="p"·data-group-id="3758162397-14">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="37[·...·truncated·by·diffoscope;·len:·8,·SHA:·2140079c9c4c5c8128740b64e2711143a0556a3e8abd23707624bafc80fc48e0·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
231 </span><span·class="nf">pong</span><span·class="p"·data-group-id="0648790415-15">(</span><span·class="p"·data-group-id="0648790415-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 </span><span·class="nf">pong</span><span·class="p"·data-group-id="3758162397-15">(</span><span·class="p"·data-group-id="3758162397-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 ····</span><span·class="k">receive</span><span·class="w">232 ····</span><span·class="k">receive</span><span·class="w">
233 ········</span><span·class="p"·data-group-id="0648790415-16">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ping_PID</span><span·class="p"·data-group-id="0648790415-16">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">233 ········</span><span·class="p"·data-group-id="3758162397-16">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ping_PID</span><span·class="p"·data-group-id="3758162397-16">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
234 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0648790415-17">(</span><span·class="s">&quot;Pong·received·ping</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0648790415-18">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·b02e9f5cc50bbf85b0c9852a0498ee295a4679b903b27f36c8cb0a8928e17d35·...·]-17">)</span><span·class="p">,</span><span·class="w">234 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3758162397-17">(</span><span·class="s">&quot;Pong·received·ping</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3758162397-18">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·5762a8aa917e0e6451ee0ec61f777ebd622173fa87fd4f7bd7d82d02df38deff·...·]-17">)</span><span·class="p">,</span><span·class="w">
235 ············</span><span·class="n">Ping_PID</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">235 ············</span><span·class="n">Ping_PID</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">
236 ············</span><span·class="nf">pong</span><span·class="p"·data-group-id="0648790415-19">(</span><span·class="p"·data-group-id="0648790415-19">)</span><span·class="w">236 ············</span><span·class="nf">pong</span><span·class="p"·data-group-id="3758162397-19">(</span><span·class="p"·data-group-id="3758162397-19">)</span><span·class="w">
237 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">237 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
238 </span><span·class="nf">start</span><span·class="p"·data-group-id="0648790415-20">(</span><span·class="n">Ping_Node</span><span·class="p"·data-group-id="0648790415-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">238 </span><span·class="nf">start</span><span·class="p"·data-group-id="3758162397-20">(</span><span·class="n">Ping_Node</span><span·class="p"·data-group-id="3758162397-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
239 ····</span><span·class="n">PongPID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="0648790415-21">(</span><span·class="ss">tut20</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0648790415-22">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·69,·SHA:·b426daf34f34cfc59a605d53c5add72a3cc32745c6700c53a749693f079f1ca7·...·]-21">)</span><span·class="p">,</span><span·class="w">239 ····</span><span·class="n">PongPID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3758162397-21">(</span><span·class="ss">tut20</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3758162397-22">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·69,·SHA:·a3fd725b7d7593c95b5f6febd2b04976540b949b4e61df946dfe8b948a5e1e26·...·]-21">)</span><span·class="p">,</span><span·class="w">
240 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="0648790415-23">(</span><span·class="n">Ping_Node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tut20</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·252,·SHA:·c372a41a197adb2c05f502316c44e0d6d51f3e5da18f9d5fe7577c8c7a0e0ead·...·]-23">)</span><span·class="p">.</span></code></pre><pre><code·class="text">(s1@bill)3&gt;·tut20:start(s2@kosken).240 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3758162397-23">(</span><span·class="n">Ping_Node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tut20</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·252,·SHA:·40ac2512ec57287124c2d93a777ab627873d8d93bb16829dc293b845bdd5c098·...·]-23">)</span><span·class="p">.</span></code></pre><pre><code·class="text">(s1@bill)3&gt;·tut20:start(s2@kosken).
241 Pong·received·ping241 Pong·received·ping
242 &lt;3820.41.0&gt;242 &lt;3820.41.0&gt;
243 Ping·received·pong243 Ping·received·pong
244 Pong·received·ping244 Pong·received·ping
245 Ping·received·pong245 Ping·received·pong
246 Pong·received·ping246 Pong·received·ping
247 Ping·received·pong</code></pre><p>This·is·a·slight·modification·of·the·ping·pong·program·where·both·processes·are247 Ping·received·pong</code></pre><p>This·is·a·slight·modification·of·the·ping·pong·program·where·both·processes·are
248 spawned·from·the·same·<code·class="inline">start/1</code>·function,·and·the·&quot;ping&quot;·process·can·be·spawned248 spawned·from·the·same·<code·class="inline">start/1</code>·function,·and·the·&quot;ping&quot;·process·can·be·spawned
249 on·a·separate·node.·Notice·the·use·of·the·<code·class="inline">link</code>·BIF.·&quot;Ping&quot;·calls249 on·a·separate·node.·Notice·the·use·of·the·<code·class="inline">link</code>·BIF.·&quot;Ping&quot;·calls
250 <a·href="../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit(ping)</code></a>·when·it·finishes·and·this·causes·an·exit·signal·to·be250 <a·href="../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit(ping)</code></a>·when·it·finishes·and·this·causes·an·exit·signal·to·be
251 sent·to·&quot;pong&quot;,·which·also·terminates.</p><p>It·is·possible·to·modify·the·default·behaviour·of·a·process·so·that·it·does·not251 sent·to·&quot;pong&quot;,·which·also·terminates.</p><p>It·is·possible·to·modify·the·default·behaviour·of·a·process·so·that·it·does·not
252 get·killed·when·it·receives·abnormal·exit·signals.·Instead,·all·signals·are252 get·killed·when·it·receives·abnormal·exit·signals.·Instead,·all·signals·are
253 turned·into·normal·messages·on·the·format·<code·class="inline">{'EXIT',FromPID,Reason}</code>·and·added·to253 turned·into·normal·messages·on·the·format·<code·class="inline">{'EXIT',FromPID,Reason}</code>·and·added·to
254 the·end·of·the·receiving·process'·message·queue.·This·behaviour·is·set·by:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">process_flag</span><span·class="p"·data-group-id="9165527825-1">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="9165527825-1">)</span></code></pre><p>There·are·several·other·process·flags,·see·<a·href="../../erts-15.0.1/doc/html/erlang.html#process_flag/2">erlang(3)</a>.254 the·end·of·the·receiving·process'·message·queue.·This·behaviour·is·set·by:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">process_flag</span><span·class="p"·data-group-id="2257445215-1">(</span><span·class="ss">trap_exit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="2257445215-1">)</span></code></pre><p>There·are·several·other·process·flags,·see·<a·href="../../erts-15.0.1/doc/html/erlang.html#process_flag/2">erlang(3)</a>.
255 Changing·the·default·behaviour·of·a·process·in·this·way·is·usually·not·done·in255 Changing·the·default·behaviour·of·a·process·in·this·way·is·usually·not·done·in
256 standard·user·programs,·but·is·left·to·the·supervisory·programs·in·OTP.·However,256 standard·user·programs,·but·is·left·to·the·supervisory·programs·in·OTP.·However,
257 the·ping·pong·program·is·modified·to·illustrate·exit·trapping.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6962846662-1">(</span><span·class="ss">tut21</span><span·class="p"·data-group-id="6962846662-1">)</span><span·class="p">.</span><span·class="w">257 the·ping·pong·program·is·modified·to·illustrate·exit·trapping.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9960927295-1">(</span><span·class="ss">tut21</span><span·class="p"·data-group-id="9960927295-1">)</span><span·class="p">.</span><span·class="w">
258 </span><span·class="w">258 </span><span·class="w">
259 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6962846662-2">(</span><span·class="p"·data-group-id="6962846662-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">··</span><span·class="ss">ping</span><span·class="p">/</span><s[·...·truncated·by·diffoscope;·len:·242,·SHA:·ac55cf3b39af9ea59c024746b738a057c2107afccd211547bb1bc9bd365d986a·...·]-2">)</span><span·class="p">.</span><span·class="w">259 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9960927295-2">(</span><span·class="p"·data-group-id="9960927295-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">··</span><span·class="ss">ping</span><span·class="p">/</span><s[·...·truncated·by·diffoscope;·len:·242,·SHA:·19e7f41ec7906558815ab155deb2ac67cb9db72d33053d4e85e7a34b7dfbe0c1·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
260 </span><span·class="nf">ping</span><span·class="p"·data-group-id="6962846662-4">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="6962846662-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">260 </span><span·class="nf">ping</span><span·class="p"·data-group-id="9960927295-4">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pong_Pid</span><span·class="p"·data-group-id="9960927295-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
Max diff block lines reached; 73434/116490 bytes (63.04%) of diff not shown.
793 B
html2text {}
Max HTML report size reached
1.81 KB
./usr/share/doc/erlang-doc/html/doc/system/search.html
    
Offset 108, 15 lines modifiedOffset 108, 15 lines modified
108 <div·id="search">108 <div·id="search">
109 ··<h1>109 ··<h1>
110 ····<span></span>110 ····<span></span>
111 ··</h1>111 ··</h1>
  
112 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>112 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
113 </div>113 </div>
114 <script·src="dist/search_data-82F2C43B.js"></script>114 <script·src="dist/search_data-EE0C1DEB.js"></script>
115 ····<footer·class="footer">115 ····<footer·class="footer">
116 ······<p>116 ······<p>
  
117 ········<span·class="line">117 ········<span·class="line">
118 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">118 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
119 ············Search·HexDocs119 ············Search·HexDocs
120 ··········</button>120 ··········</button>
Offset 131, 15 lines modifiedOffset 131, 15 lines modified
131 ······<p·class="built-using">131 ······<p·class="built-using">
132 ········Built·using132 ········Built·using
133 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the133 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
134 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>134 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
135 ······</p>135 ······</p>
136 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>136 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
137 ····</footer>137 ····</footer>
138 ··</div>138 ··</div>
139 </main>139 </main>
140 </div>140 </div>
141 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>141 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
142 <script>142 <script>
143 ··document.addEventListener("DOMContentLoaded",·function·()·{143 ··document.addEventListener("DOMContentLoaded",·function·()·{
553 B
html2text {}
Max HTML report size reached
428 KB
./usr/share/doc/erlang-doc/html/doc/system/seq_prog.html
Max HTML report size reached
198 KB
./usr/share/doc/erlang-doc/html/doc/system/spec_proc.html
Max HTML report size reached
370 KB
./usr/share/doc/erlang-doc/html/doc/system/statem.html
Max HTML report size reached
65.2 KB
./usr/share/doc/erlang-doc/html/doc/system/sup_princ.html
    
Offset 128, 48 lines modifiedOffset 128, 48 lines modified
128 the·order·specified·by·this·list,·and·are·terminated·in·the·reverse·order.</p><h2·id="example"·class="section-heading">128 the·order·specified·by·this·list,·and·are·terminated·in·the·reverse·order.</p><h2·id="example"·class="section-heading">
129 ··<a·href="#example"·class="hover-link">129 ··<a·href="#example"·class="hover-link">
130 ····<i·class="ri-link-m"·aria-hidden="true"></i>130 ····<i·class="ri-link-m"·aria-hidden="true"></i>
131 ··</a>131 ··</a>
132 ··<span·class="text">Example</span>132 ··<span·class="text">Example</span>
133 </h2>133 </h2>
134 <p>The·callback·module·for·a·supervisor·starting·the·server·from134 <p>The·callback·module·for·a·supervisor·starting·the·server·from
135 <a·href="gen_server_concepts.html#ex">gen_server·Behaviour</a>·can·look·as·follows:</p><p><a·href=""·id="ex"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9998362192-1">(</span><span·class="ss">ch_sup</span><span·class="p"·data-group-id="9998362192-1">)</span><span·class="p">.</span><span·class="w">135 <a·href="gen_server_concepts.html#ex">gen_server·Behaviour</a>·can·look·as·follows:</p><p><a·href=""·id="ex"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6688468606-1">(</span><span·class="ss">ch_sup</span><span·class="p"·data-group-id="6688468606-1">)</span><span·class="p">.</span><span·class="w">
136 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="9998362192-2">(</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="9998362192-2">)</span><span·class="p">.</span><span·class="w">136 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="6688468606-2">(</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="6688468606-2">)</span><span·class="p">.</span><span·class="w">
137 </span><span·class="w">137 </span><span·class="w">
138 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9998362192-3">(</span><span·class="p"·data-group-id="9998362192-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="9998362192-4">]</span><span·class="p"·data-group-id="9998362192-3">)</span><span·class="p">.</span><span·class="w"> 
139 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9998362192-5">(</span><span·class="p"·data-group-id="9998362192-6">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="9998362192-6">]</span><span·class="p"·data-group-id="9998362192-5">)</span><span·class="p">.</span><span·class="w">138 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6688468606-3">(</span><span·class="p"·data-group-id="6688468606-4">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="6688468606-4">]</span><span·class="p"·data-group-id="6688468606-3">)</span><span·class="p">.</span><span·class="w">
 139 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6688468606-5">(</span><span·class="p"·data-group-id="6688468606-6">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="6688468606-6">]</span><span·class="p"·data-group-id="6688468606-5">)</span><span·class="p">.</span><span·class="w">
  
140 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="9998362192-7">(</span><span·class="p"·data-group-id="9998362192-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">140 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="6688468606-7">(</span><span·class="p"·data-group-id="6688468606-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
141 ····</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="9998362192-8">(</span><span·class="ss">ch_sup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9998362192-9">[</span><span·class="p"·data-group-id="9998362192-9">]</span><span·class="p"·data-group-id="9998362192-8">)</span><span·class="p">.</span><span·class="w">141 ····</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="6688468606-8">(</span><span·class="ss">ch_sup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6688468606-9">[</span><span·class="p"·data-group-id="6688468606-9">]</span><span·class="p"·data-group-id="6688468606-8">)</span><span·class="p">.</span><span·class="w">
  
142 </span><span·class="nf">init</span><span·class="p"·data-group-id="9998362192-10">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="9998362192-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">142 </span><span·class="nf">init</span><span·class="p"·data-group-id="6688468606-10">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="6688468606-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
143 ····</span><span·class="n">SupFlags</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9998362192-11">#{</span><span·class="ss">strategy</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">one_for_one</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">intensity</span><span·cl[·...·truncated·by·diffoscope;·len:·313,·SHA:·5abb5f7ed6a1ee28ab289c9d009e21401595894f137e7d0c05905a7e1c201b17·...·]-11">}</span><span·class="p">,</span><span·class="w">143 ····</span><span·class="n">SupFlags</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6688468606-11">#{</span><span·class="ss">strategy</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">one_for_one</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">intensity</span><span·cl[·...·truncated·by·diffoscope;·len:·313,·SHA:·7bf62f0a112accd3ea730c6935ea6879e94e14d32a4d7687c60733374ce17013·...·]-11">}</span><span·class="p">,</span><span·class="w">
144 ····</span><span·class="n">ChildSpecs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9998362192-12">[</span><span·class="p"·data-group-id="9998362192-13">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">144 ····</span><span·class="n">ChildSpecs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6688468606-12">[</span><span·class="p"·data-group-id="6688468606-13">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">
145 ····················</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9998362192-14">{</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9998362192-15">[</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·73,·SHA:·77c85208ff36d4cdf624dbe5015637c06526b69cee003d423664fd4db5d75539·...·]-14">}</span><span·class="p">,</span><span·class="w">145 ····················</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6688468606-14">{</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6688468606-15">[</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·73,·SHA:·75ff530a05c95df241c1c3c91db560b349bd82bb8d47b9dd52265dea7f156ee3·...·]-14">}</span><span·class="p">,</span><span·class="w">
146 ····················</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">permanent</span><span·class="p">,</span><span·class="w">146 ····················</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">permanent</span><span·class="p">,</span><span·class="w">
147 ····················</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="p">,</span><span·class="w">147 ····················</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="p">,</span><span·class="w">
148 ····················</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">worker</span><span·class="p">,</span><span·class="w">148 ····················</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">worker</span><span·class="p">,</span><span·class="w">
149 ····················</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9998362192-16">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="9998362192-16">]</span><span·class="p"·data-group-id="9998362192-13">}</span><span·class="p"·data-group-id="9998362192-12">]</span><span·class="p">,</span><span·class="w">149 ····················</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6688468606-16">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="6688468606-16">]</span><span·class="p"·data-group-id="6688468606-13">}</span><span·class="p"·data-group-id="6688468606-12">]</span><span·class="p">,</span><span·class="w">
150 ····</span><span·class="p"·data-group-id="9998362192-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9998362192-18">{</span><span·class="n">SupFlags</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ChildSpecs[·...·truncated·by·diffoscope;·len:·102,·SHA:·69224eb77763e748d2cfaaa5576f796ad1013400948d4d843b5ec8f611183f61·...·]-17">}</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">SupFlags</code>·variable·in·the·return·value·from·<code·class="inline">init/1</code>·represents·the150 ····</span><span·class="p"·data-group-id="6688468606-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6688468606-18">{</span><span·class="n">SupFlags</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ChildSpecs[·...·truncated·by·diffoscope;·len:·102,·SHA:·10b8a5f186f96fa3848bfb8ebf9f6e75ff4fb814635a36c2c2b03688945ea976·...·]-17">}</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">SupFlags</code>·variable·in·the·return·value·from·<code·class="inline">init/1</code>·represents·the
151 <a·href="sup_princ.html#flags">supervisor·flags</a>.</p><p>The·<code·class="inline">ChildSpecs</code>·variable·in·the·return·value·from·<code·class="inline">init/1</code>·is·a·list·of151 <a·href="sup_princ.html#flags">supervisor·flags</a>.</p><p>The·<code·class="inline">ChildSpecs</code>·variable·in·the·return·value·from·<code·class="inline">init/1</code>·is·a·list·of
152 <a·href="sup_princ.html#spec">child·specifications</a>.</p><p><a·href=""·id="flags"></a></p><h2·id="supervisor-flags"·class="section-heading">152 <a·href="sup_princ.html#spec">child·specifications</a>.</p><p><a·href=""·id="flags"></a></p><h2·id="supervisor-flags"·class="section-heading">
153 ··<a·href="#supervisor-flags"·class="hover-link">153 ··<a·href="#supervisor-flags"·class="hover-link">
154 ····<i·class="ri-link-m"·aria-hidden="true"></i>154 ····<i·class="ri-link-m"·aria-hidden="true"></i>
155 ··</a>155 ··</a>
156 ··<span·class="text">Supervisor·Flags</span>156 ··<span·class="text">Supervisor·Flags</span>
157 </h2>157 </h2>
158 <p>This·is·the·type·definition·for·the·supervisor·flags:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">sup_flags</span><span·class="p"·data-group-id="4204338971-1">(</span><span·class="p"·data-group-id="4204338971-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4204338971-2">#{</span><span·class="ss">strategy</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">strategy</span><span·class="p"·data-group-id="4204338971-3">(</span><span·class="p"·data-group-id="4204338971-3">)</span><span·class="p">,</span><span·class="w">···········</span><span·class="c1">%·optional</span><span·class="w"> 
159 ················</span><span·class="ss">intensity</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">non_neg_integer</span><span·class="p"·data-group-id="4204338971-4">(</span><span·class="p"·data-group-id="4204338971-4">)</span><span·class="p">,</span><span·class="w">···</span><span·class="c1">%·optional</span><span·class="w"> 
160 ················</span><span·class="ss">period</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">pos_integer</span><span·class="p"·data-group-id="4204338971-5">(</span><span·class="p"·data-group-id="42043389[·...·truncated·by·diffoscope;·len:·54,·SHA:·2ca6ce11f2974afc7432fa8634d7412882e96d2b13f5559be8ce23842d45a5bf·...·]··········</span><span·class="c1">%·optional</span><span·class="w">158 <p>This·is·the·type·definition·for·the·supervisor·flags:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">sup_flags</span><span·class="p"·data-group-id="4083190802-1">(</span><span·class="p"·data-group-id="4083190802-1">)</span><span·cla[·...·truncated·by·diffoscope;·len:·404,·SHA:·79e11f0515885c8cfae89d31a0d3a9e5a81a600d9c4a84638b78f7030d086558·...·]··········</span><span·class="c1">%·optional</span><span·class="w">
 159 ················</span><span·class="ss">intensity</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">non_neg_integer</span><span·class="p"·data-group-id="4083190802-4">(</span><span·class="p"·data-group-id="4083190802-4">)</span><span·class="p">,</span><span·class="w">···</span><span·class="c1">%·optional</span><span·class="w">
 160 ················</span><span·class="ss">period</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">pos_integer</span><span·class="p"·data-group-id="4083190802-5">(</span><span·class="p"·data-group-id="4083190802-5">)</span><span·class="p">,</span><span·class="w">··········</span><span·class="c1">%·optional</span><span·class="w">
161 ················</span><span·class="ss">auto_shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">auto_shutdown</span><span·class="p"·data-group-id="4204338971-6">(</span><span·class="p"·data-group-id="4204338971-6">)</span><span·class="p"·data-group-id="4204338971-2">}</span><span·class="w">·</span><span·class="c1">%·optional</span><span·class="w">161 ················</span><span·class="ss">auto_shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">auto_shutdown</span><span·class="p"·data-group-id="4083190802-6">(</span><span·class="p"·data-group-id="4083190802-6">)</span><span·class="p"·data-group-id="4083190802-2">}</span><span·class="w">·</span><span·class="c1">%·optional</span><span·class="w">
162 ····</span><span·class="nf">strategy</span><span·class="p"·data-group-id="4204338971-7">(</span><span·class="p"·data-group-id="4204338971-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">one_for_all</span><span·class="w">162 ····</span><span·class="nf">strategy</span><span·class="p"·data-group-id="4083190802-7">(</span><span·class="p"·data-group-id="4083190802-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">one_for_all</span><span·class="w">
163 ···············</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">one_for_one</span><span·class="w">163 ···············</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">one_for_one</span><span·class="w">
164 ···············</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">rest_for_one</span><span·class="w">164 ···············</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">rest_for_one</span><span·class="w">
165 ···············</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">simple_one_for_one</span><span·class="w">165 ···············</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">simple_one_for_one</span><span·class="w">
166 ····</span><span·class="nf">auto_shutdown</span><span·class="p"·data-group-id="4204338971-8">(</span><span·class="p"·data-group-id="4204338971-8">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">never</span><span·class="w">166 ····</span><span·class="nf">auto_shutdown</span><span·class="p"·data-group-id="4083190802-8">(</span><span·class="p"·data-group-id="4083190802-8">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">never</span><span·class="w">
167 ····················</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">any_significant</span><span·class="w">167 ····················</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">any_significant</span><span·class="w">
168 ····················</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">all_significant</span></code></pre><ul><li><code·class="inline">strategy</code>·specifies·the·<a·href="sup_princ.html#strategy">restart·strategy</a>.</li><li><code·class="inline">intensity</code>·and·<code·class="inline">period</code>·specify·the168 ····················</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">all_significant</span></code></pre><ul><li><code·class="inline">strategy</code>·specifies·the·<a·href="sup_princ.html#strategy">restart·strategy</a>.</li><li><code·class="inline">intensity</code>·and·<code·class="inline">period</code>·specify·the
169 <a·href="sup_princ.html#max_intensity">maximum·restart·intensity</a>.</li><li><code·class="inline">auto_shutdown</code>·specifies·whether·and·when·a·supervisor·should169 <a·href="sup_princ.html#max_intensity">maximum·restart·intensity</a>.</li><li><code·class="inline">auto_shutdown</code>·specifies·whether·and·when·a·supervisor·should
170 <a·href="sup_princ.html#automatic-shutdown">automatically·shut·itself·down</a>.</li></ul><p><a·href=""·id="strategy"></a></p><h2·id="restart-strategy"·class="section-heading">170 <a·href="sup_princ.html#automatic-shutdown">automatically·shut·itself·down</a>.</li></ul><p><a·href=""·id="strategy"></a></p><h2·id="restart-strategy"·class="section-heading">
171 ··<a·href="#restart-strategy"·class="hover-link">171 ··<a·href="#restart-strategy"·class="hover-link">
172 ····<i·class="ri-link-m"·aria-hidden="true"></i>172 ····<i·class="ri-link-m"·aria-hidden="true"></i>
173 ··</a>173 ··</a>
Offset 408, 28 lines modifiedOffset 408, 28 lines modified
408 exhaust·the·<a·href="sup_princ.html#max_intensity">Maximum·Restart·Intensity</a>·of·the408 exhaust·the·<a·href="sup_princ.html#max_intensity">Maximum·Restart·Intensity</a>·of·the
409 parent·supervisor.</p></blockquote><p><a·href=""·id="spec"></a></p><h2·id="child-specification"·class="section-heading">409 parent·supervisor.</p></blockquote><p><a·href=""·id="spec"></a></p><h2·id="child-specification"·class="section-heading">
410 ··<a·href="#child-specification"·class="hover-link">410 ··<a·href="#child-specification"·class="hover-link">
411 ····<i·class="ri-link-m"·aria-hidden="true"></i>411 ····<i·class="ri-link-m"·aria-hidden="true"></i>
412 ··</a>412 ··</a>
413 ··<span·class="text">Child·Specification</span>413 ··<span·class="text">Child·Specification</span>
414 </h2>414 </h2>
415 <p>The·type·definition·for·a·child·specification·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">child_spec</span><span·class="p"·data-group-id="6697537722-1">(</span><span·class="p"·data-group-id="6697537722-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6697537722-2">#{</span><span·class="ss">id</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·173,·SHA:·ae57f80372c188b066d2f769a4126e987863c38085789f9a2935e4ce80753403·...·]-3">)</span><span·class="p">,</span><span·class="w">·············</span><span·class="c1">%·mandatory</span><span·class="w">415 <p>The·type·definition·for·a·child·specification·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">child_spec</span><span·class="p"·data-group-id="3955440693-1">(</span><span·class="p"·data-group-id="3955440693-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3955440693-2">#{</span><span·class="ss">id</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·173,·SHA:·ffe56d4d8cd92bcca08b8e9bd6f8f3db72d84afb9917f274b5d6f71195947c30·...·]-3">)</span><span·class="p">,</span><span·class="w">·············</span><span·class="c1">%·mandatory</span><span·class="w">
416 ·················</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">mfargs</span><span·class="p"·data-group-id="6697537722-4">(</span><span·class="p"·data-group-id="6697537722-4">)</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·mandatory</span><span·class="w">416 ·················</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">mfargs</span><span·class="p"·data-group-id="3955440693-4">(</span><span·class="p"·data-group-id="3955440693-4">)</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·mandatory</span><span·class="w">
417 ·················</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">restart</span><span·class="p"·data-group-id="6697537722-5">(</span><span·class="p"·data-group-id="6697537722-5">)</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·optional</span><span·class="w">417 ·················</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">restart</span><span·class="p"·data-group-id="3955440693-5">(</span><span·class="p"·data-group-id="3955440693-5">)</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·optional</span><span·class="w">
418 ·················</span><span·class="ss">significant</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">significant</span><span·class="p"·data-group-id="6697537722-6">(</span><span·class="p"·data-group-id="6697537722-6">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·optional</span><span·class="w">418 ·················</span><span·class="ss">significant</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">significant</span><span·class="p"·data-group-id="3955440693-6">(</span><span·class="p"·data-group-id="3955440693-6">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·optional</span><span·class="w">
419 ·················</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="6697537722-7">(</span><span·class="p"·data-group-id="6697537722-7">)</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·optional</span><span·class="w">419 ·················</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="3955440693-7">(</span><span·class="p"·data-group-id="3955440693-7">)</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·optional</span><span·class="w">
420 ·················</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">worker</span><span·class="p"·data-group-id="6697537722-8">(</span><span·class="p"·data-group-id="6697537722-8">)</span><span·class="p">,</span><span·class="w">·············</span><span·class="c1">%·optional</span><span·class="w">420 ·················</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">worker</span><span·class="p"·data-group-id="3955440693-8">(</span><span·class="p"·data-group-id="3955440693-8">)</span><span·class="p">,</span><span·class="w">·············</span><span·class="c1">%·optional</span><span·class="w">
421 ·················</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">modules</span><span·class="p"·data-group-id="6697537722-9">(</span><span·class="p"·data-group-id="6697537722-9">)</span><span·class="p"·data-group-id="6697537722-2">}</span><span·class="w">·········</span><span·class="c1">%·optional</span><span·class="w">421 ·················</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">modules</span><span·class="p"·data-group-id="3955440693-9">(</span><span·class="p"·data-group-id="3955440693-9">)</span><span·class="p"·data-group-id="3955440693-2">}</span><span·class="w">·········</span><span·class="c1">%·optional</span><span·class="w">
422 ····</span><span·class="nf">child_id</span><span·class="p"·data-group-id="6697537722-10">(</span><span·class="p"·data-group-id="6697537722-10">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6697537722-11">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·21553731efd914572426de158de5f78f857922912a23f34617836dc6c6a6c0c8·...·]-11">)</span><span·class="w">422 ····</span><span·class="nf">child_id</span><span·class="p"·data-group-id="3955440693-10">(</span><span·class="p"·data-group-id="3955440693-10">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="3955440693-11">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·cacad269db8b253422e1aba530bfa4e1d2cf7b845d18ff29bb468161fbef0bf8·...·]-11">)</span><span·class="w">
423 ····</span><span·class="nf">mfargs</span><span·class="p"·data-group-id="6697537722-12">(</span><span·class="p"·data-group-id="6697537722-12">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6697537722-13">{</span><span·class="n">M</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·962,·SHA:·419277c6d5454df9de40423661452262b743e46ef8b531ffd668bf0108ef76d5·...·]-13">}</span><span·class="w">423 ····</span><span·class="nf">mfargs</span><span·class="p"·data-group-id="3955440693-12">(</span><span·class="p"·data-group-id="3955440693-12">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3955440693-13">{</span><span·class="n">M</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·962,·SHA:·b87e4b06ffd069b98f4902e18684bc58fc22c13e4cf107832b2dc1fa82719e67·...·]-13">}</span><span·class="w">
424 ····</span><span·class="nf">modules</span><span·class="p"·data-group-id="6697537722-18">(</span><span·class="p"·data-group-id="6697537722-18">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6697537722-19">[</span><span·class="nf">module</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·126,·SHA:·be54664cb3164b569564b08471ac00d5866061581f07dd2b672d97e1fe413f4a·...·]-19">]</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">dynamic</span><span·class="w">424 ····</span><span·class="nf">modules</span><span·class="p"·data-group-id="3955440693-18">(</span><span·class="p"·data-group-id="3955440693-18">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3955440693-19">[</span><span·class="nf">module</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·126,·SHA:·c40d73a8db494ba2df149654536c558f5eeed339556becf5e3df86f31ea924a9·...·]-19">]</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">dynamic</span><span·class="w">
425 ····</span><span·class="nf">restart</span><span·class="p"·data-group-id="6697537722-21">(</span><span·class="p"·data-group-id="6697537722-21">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">permanent</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">transient</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">temporary</span><span·class="w">425 ····</span><span·class="nf">restart</span><span·class="p"·data-group-id="3955440693-21">(</span><span·class="p"·data-group-id="3955440693-21">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">permanent</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">transient</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">temporary</span><span·class="w">
426 ····</span><span·class="nf">significant</span><span·class="p"·data-group-id="6697537722-22">(</span><span·class="p"·data-group-id="6697537722-22">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="6697537722-23">(</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·cc928e7b71b7c4b55e97ddb9db6259de30baeb4d5a27baabca33e7fe96e565b6·...·]-23">)</span><span·class="w">426 ····</span><span·class="nf">significant</span><span·class="p"·data-group-id="3955440693-22">(</span><span·class="p"·data-group-id="3955440693-22">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="3955440693-23">(</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·5475996efe04d8719e075364a46544a5c65a4297ed0c58d20c8de321fa8e2397·...·]-23">)</span><span·class="w">
427 ····</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="6697537722-24">(</span><span·class="p"·data-group-id="6697537722-24">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·126,·SHA:·836d7ffe00cf8ccc4e7d9c5f6cb4e591fb6fb1bceb0c018647a1c377e17f5381·...·]-25">)</span><span·class="w">427 ····</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="3955440693-24">(</span><span·class="p"·data-group-id="3955440693-24">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·126,·SHA:·a56feb0cdd28bb3eeee144b853b2dcfa97baf84de40aae207edb853b30b9c18e·...·]-25">)</span><span·class="w">
428 ····</span><span·class="nf">worker</span><span·class="p"·data-group-id="6697537722-26">(</span><span·class="p"·data-group-id="6697537722-26">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">worker</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">supervisor</span></code></pre><ul><li><p><code·class="inline">id</code>·is·used·to·identify·the·child·specification·internally·by·the·supervisor.</p><p>The·<code·class="inline">id</code>·key·is·mandatory.</p><p>Note·that·this·identifier·occasionally·has·been·called·&quot;name&quot;.·As·far·as428 ····</span><span·class="nf">worker</span><span·class="p"·data-group-id="3955440693-26">(</span><span·class="p"·data-group-id="3955440693-26">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">worker</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">supervisor</span></code></pre><ul><li><p><code·class="inline">id</code>·is·used·to·identify·the·child·specification·internally·by·the·supervisor.</p><p>The·<code·class="inline">id</code>·key·is·mandatory.</p><p>Note·that·this·identifier·occasionally·has·been·called·&quot;name&quot;.·As·far·as
429 possible,·the·terms·&quot;identifier&quot;·or·&quot;id&quot;·are·now·used·but·in·order·to·keep429 possible,·the·terms·&quot;identifier&quot;·or·&quot;id&quot;·are·now·used·but·in·order·to·keep
430 backwards·compatibility,·some·occurrences·of·&quot;name&quot;·can·still·be·found,·for430 backwards·compatibility,·some·occurrences·of·&quot;name&quot;·can·still·be·found,·for
431 example·in·error·messages.</p></li><li><p><code·class="inline">start</code>·defines·the·function·call·used·to·start·the·child·process.·It·is·a431 example·in·error·messages.</p></li><li><p><code·class="inline">start</code>·defines·the·function·call·used·to·start·the·child·process.·It·is·a
432 module-function-arguments·tuple·used·as·<a·href="../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(M,·F,·A)</code></a>.</p><p>It·is·to·be·(or·result·in)·a·call·to·any·of·the·following:</p><ul><li><a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html#start_link/3"><code·class="inline">supervisor:start_link/2,3</code></a></li><li><a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start_link/4"><code·class="inline">gen_server:start_link/3,4</code></a></li><li><a·href="../../lib/stdlib-6.0.1/doc/html/gen_statem.html#start_link/4"><code·class="inline">gen_statem:start_link/3,4</code></a></li><li><a·href="../../lib/stdlib-6.0.1/doc/html/gen_event.html#start_link/2"><code·class="inline">gen_event:start_link/0,1,2</code></a></li><li>A·function·compliant·with·these·functions.·For·details,·see432 module-function-arguments·tuple·used·as·<a·href="../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(M,·F,·A)</code></a>.</p><p>It·is·to·be·(or·result·in)·a·call·to·any·of·the·following:</p><ul><li><a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html#start_link/3"><code·class="inline">supervisor:start_link/2,3</code></a></li><li><a·href="../../lib/stdlib-6.0.1/doc/html/gen_server.html#start_link/4"><code·class="inline">gen_server:start_link/3,4</code></a></li><li><a·href="../../lib/stdlib-6.0.1/doc/html/gen_statem.html#start_link/4"><code·class="inline">gen_statem:start_link/3,4</code></a></li><li><a·href="../../lib/stdlib-6.0.1/doc/html/gen_event.html#start_link/2"><code·class="inline">gen_event:start_link/0,1,2</code></a></li><li>A·function·compliant·with·these·functions.·For·details,·see
433 <a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html"><code·class="inline">supervisor</code></a>.</li></ul><p>The·<code·class="inline">start</code>·key·is·mandatory.</p></li><li><p><a·href=""·id="restart"></a>·<code·class="inline">restart</code>·defines·when·a·terminated·child·process·is·to·be433 <a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html"><code·class="inline">supervisor</code></a>.</li></ul><p>The·<code·class="inline">start</code>·key·is·mandatory.</p></li><li><p><a·href=""·id="restart"></a>·<code·class="inline">restart</code>·defines·when·a·terminated·child·process·is·to·be
434 restarted.</p><ul><li>A·<code·class="inline">permanent</code>·child·process·is·always·restarted.</li><li>A·<code·class="inline">temporary</code>·child·process·is·never·restarted·(not·even·when·the·supervisor434 restarted.</p><ul><li>A·<code·class="inline">permanent</code>·child·process·is·always·restarted.</li><li>A·<code·class="inline">temporary</code>·child·process·is·never·restarted·(not·even·when·the·supervisor
435 restart·strategy·is·<code·class="inline">rest_for_one</code>·or·<code·class="inline">one_for_all</code>·and·a·sibling·death435 restart·strategy·is·<code·class="inline">rest_for_one</code>·or·<code·class="inline">one_for_all</code>·and·a·sibling·death
Offset 457, 53 lines modifiedOffset 457, 53 lines modified
457 <code·class="inline">supervisor</code>,·the·default·value·<code·class="inline">infinity</code>·will·be·used.</p></li><li><p><code·class="inline">type</code>·specifies·whether·the·child·process·is·a·supervisor·or·a·worker.</p><p>The·<code·class="inline">type</code>·key·is·optional.·If·it·is·not·given,·the·default·value·<code·class="inline">worker</code>457 <code·class="inline">supervisor</code>,·the·default·value·<code·class="inline">infinity</code>·will·be·used.</p></li><li><p><code·class="inline">type</code>·specifies·whether·the·child·process·is·a·supervisor·or·a·worker.</p><p>The·<code·class="inline">type</code>·key·is·optional.·If·it·is·not·given,·the·default·value·<code·class="inline">worker</code>
458 will·be·used.</p></li><li><p><code·class="inline">modules</code>·has·to·be·a·list·consisting·of·a·single·element.·The·value458 will·be·used.</p></li><li><p><code·class="inline">modules</code>·has·to·be·a·list·consisting·of·a·single·element.·The·value
459 of·that·element·depends·on·the·behaviour·of·the·process:</p><ul><li>If·the·child·process·is·a·<code·class="inline">gen_event</code>,·the·element·has·to·be·the·atom459 of·that·element·depends·on·the·behaviour·of·the·process:</p><ul><li>If·the·child·process·is·a·<code·class="inline">gen_event</code>,·the·element·has·to·be·the·atom
460 <code·class="inline">dynamic</code>.</li><li>Otherwise,·the·element·should·be·<code·class="inline">Module</code>,·where·<code·class="inline">Module</code>·is·the460 <code·class="inline">dynamic</code>.</li><li>Otherwise,·the·element·should·be·<code·class="inline">Module</code>,·where·<code·class="inline">Module</code>·is·the
461 name·of·the·callback·module.</li></ul><p>This·information·is·used·by·the·release·handler·during·upgrades·and461 name·of·the·callback·module.</li></ul><p>This·information·is·used·by·the·release·handler·during·upgrades·and
462 downgrades;·see·<a·href="release_handling.html">Release·Handling</a>.</p><p>The·<code·class="inline">modules</code>·key·is·optional.·If·it·is·not·given,·it·defaults·to·<code·class="inline">[M]</code>,·where462 downgrades;·see·<a·href="release_handling.html">Release·Handling</a>.</p><p>The·<code·class="inline">modules</code>·key·is·optional.·If·it·is·not·given,·it·defaults·to·<code·class="inline">[M]</code>,·where
463 <code·class="inline">M</code>·comes·from·the·child's·start·<code·class="inline">{M,F,A}</code>.</p></li></ul><p><em>Example:</em>·The·child·specification·to·start·the·server·<code·class="inline">ch3</code>·in·the·previous463 <code·class="inline">M</code>·comes·from·the·child's·start·<code·class="inline">{M,F,A}</code>.</p></li></ul><p><em>Example:</em>·The·child·specification·to·start·the·server·<code·class="inline">ch3</code>·in·the·previous
464 example·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4841568697-1">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">464 example·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9190089735-1">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">
465 ··</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4841568697-2">{</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4841568697-3">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·d1b81e1d0b9a2d7ff617cb5305d3a5771e053e310823d8a169bb943f7df8815b·...·]-2">}</span><span·class="p">,</span><span·class="w">465 ··</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9190089735-2">{</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9190089735-3">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·ba6258e52e51c4fbd6df328b3236b3699f2390a2581daa9357ccb10335e0826d·...·]-2">}</span><span·class="p">,</span><span·class="w">
466 ··</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">permanent</span><span·class="p">,</span><span·class="w">466 ··</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">permanent</span><span·class="p">,</span><span·class="w">
467 ··</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="p">,</span><span·class="w">467 ··</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="p">,</span><span·class="w">
468 ··</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">worker</span><span·class="p">,</span><span·class="w">468 ··</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">worker</span><span·class="p">,</span><span·class="w">
469 ··</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4841568697-4">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="4841568697-4">]</span><span·class="p"·data-group-id="4841568697-1">}</span></code></pre><p>or·simplified,·relying·on·the·default·values:</p><pre><code·class="text">#{id·=&gt;·ch3,469 ··</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9190089735-4">[</span><span·class="ss">ch3</span><span·class="p"·data-group-id="9190089735-4">]</span><span·class="p"·data-group-id="9190089735-1">}</span></code></pre><p>or·simplified,·relying·on·the·default·values:</p><pre><code·class="text">#{id·=&gt;·ch3,
470 ··start·=&gt;·{ch3,·start_link,·[]},470 ··start·=&gt;·{ch3,·start_link,·[]},
471 ··shutdown·=&gt;·brutal_kill}</code></pre><p>Example:·A·child·specification·to·start·the·event·manager·from·the·chapter·about471 ··shutdown·=&gt;·brutal_kill}</code></pre><p>Example:·A·child·specification·to·start·the·event·manager·from·the·chapter·about
472 <a·href="events.html#mgr">gen_event</a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4544140616-1">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">error_man</span><span·class="p">,</span><span·class="w">472 <a·href="events.html#mgr">gen_event</a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3635731435-1">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">error_man</span><span·class="p">,</span><span·class="w">
473 ··</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4544140616-2">{</span><span·class="ss">gen_event</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4544140616-3">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·292,·SHA:·fbdc029f790710f5650be26d86b78f2b24587a5be48207509082f0585655f890·...·]-2">}</span><span·class="p">,</span><span·class="w">473 ··</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3635731435-2">{</span><span·class="ss">gen_event</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3635731435-3">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·292,·SHA:·cbc16abc72f447760421ef50ba66d37c5908879028518170ab3f7d697c1d182c·...·]-2">}</span><span·class="p">,</span><span·class="w">
474 ··</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">dynamic</span><span·class="p"·data-group-id="4544140616-1">}</span></code></pre><p>Both·server·and·event·manager·are·registered·processes·which·can·be·expected·to474 ··</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">dynamic</span><span·class="p"·data-group-id="3635731435-1">}</span></code></pre><p>Both·server·and·event·manager·are·registered·processes·which·can·be·expected·to
475 be·always·accessible.·Thus·they·are·specified·to·be·<code·class="inline">permanent</code>.</p><p><code·class="inline">ch3</code>·does·not·need·to·do·any·cleaning·up·before·termination.·Thus,·no·shutdown475 be·always·accessible.·Thus·they·are·specified·to·be·<code·class="inline">permanent</code>.</p><p><code·class="inline">ch3</code>·does·not·need·to·do·any·cleaning·up·before·termination.·Thus,·no·shutdown
476 time·is·needed,·but·<code·class="inline">brutal_kill</code>·is·sufficient.·<code·class="inline">error_man</code>·can·need·some·time476 time·is·needed,·but·<code·class="inline">brutal_kill</code>·is·sufficient.·<code·class="inline">error_man</code>·can·need·some·time
477 for·the·event·handlers·to·clean·up,·thus·the·shutdown·time·is·set·to·5000·ms477 for·the·event·handlers·to·clean·up,·thus·the·shutdown·time·is·set·to·5000·ms
478 (which·is·the·default·value).</p><p>Example:·A·child·specification·to·start·another·supervisor:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3898198895-1">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">sup</span><span·class="p">,</span><span·class="w">478 (which·is·the·default·value).</p><p>Example:·A·child·specification·to·start·another·supervisor:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9759212185-1">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">sup</span><span·class="p">,</span><span·class="w">
479 ··</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3898198895-2">{</span><span·class="ss">sup</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3898198895-3">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·69,·SHA:·f6f26b84cf48226b821f8107e798f37c5136a0968d8570d1776e005d3dc81f3c·...·]5-2">}</span><span·class="p">,</span><span·class="w">479 ··</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9759212185-2">{</span><span·class="ss">sup</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9759212185-3">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·69,·SHA:·8be3ceaba33dc0b74ebf7447519460c3241fa6bc95c1ee7c884a569e3230d4d8·...·]5-2">}</span><span·class="p">,</span><span·class="w">
480 ··</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">transient</span><span·class="p">,</span><span·class="w">480 ··</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">transient</span><span·class="p">,</span><span·class="w">
481 ··</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="3898198895-1">}</span><span·class="w">·</span><span·class="c1">%·will·cause·default·shutdown=&gt;infinity</span></code></pre><p><a·href=""·id="super_tree"></a></p><h2·id="starting-a-supervisor"·class="section-heading">481 ··</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">supervisor</span><span·class="p"·data-group-id="9759212185-1">}</span><span·class="w">·</span><span·class="c1">%·will·cause·default·shutdown=&gt;infinity</span></code></pre><p><a·href=""·id="super_tree"></a></p><h2·id="starting-a-supervisor"·class="section-heading">
482 ··<a·href="#starting-a-supervisor"·class="hover-link">482 ··<a·href="#starting-a-supervisor"·class="hover-link">
483 ····<i·class="ri-link-m"·aria-hidden="true"></i>483 ····<i·class="ri-link-m"·aria-hidden="true"></i>
484 ··</a>484 ··</a>
485 ··<span·class="text">Starting·a·Supervisor</span>485 ··<span·class="text">Starting·a·Supervisor</span>
486 </h2>486 </h2>
487 <p>In·the·previous·example,·the·supervisor·is·started·by·calling487 <p>In·the·previous·example,·the·supervisor·is·started·by·calling
488 <code·class="inline">ch_sup:start_link()</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start_link</span><span·class="p"·data-group-id="4263012772-1">(</span><span·class="p"·data-group-id="4263012772-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">488 <code·class="inline">ch_sup:start_link()</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start_link</span><span·class="p"·data-group-id="8021857716-1">(</span><span·class="p"·data-group-id="8021857716-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
489 ····</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="4263012772-2">(</span><span·class="ss">ch_sup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4263012772-3">[</span><span·class="p"·data-group-id="4263012772-3">]</span><span·class="p"·data-group-id="4263012772-2">)</span><span·class="p">.</span></code></pre><p><code·class="inline">ch_sup:start_link</code>·calls·function·<a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html#start_link/2"><code·class="inline">supervisor:start_link/2</code></a>,·which·spawns·and489 ····</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="8021857716-2">(</span><span·class="ss">ch_sup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8021857716-3">[</span><span·class="p"·data-group-id="8021857716-3">]</span><span·class="p"·data-group-id="8021857716-2">)</span><span·class="p">.</span></code></pre><p><code·class="inline">ch_sup:start_link</code>·calls·function·<a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html#start_link/2"><code·class="inline">supervisor:start_link/2</code></a>,·which·spawns·and
490 links·to·a·new·process,·a·supervisor.</p><ul><li>The·first·argument,·<code·class="inline">ch_sup</code>,·is·the·name·of·the·callback·module,·that·is,·the490 links·to·a·new·process,·a·supervisor.</p><ul><li>The·first·argument,·<code·class="inline">ch_sup</code>,·is·the·name·of·the·callback·module,·that·is,·the
491 module·where·the·<code·class="inline">init</code>·callback·function·is·located.</li><li>The·second·argument,·<code·class="inline">[]</code>,·is·a·term·that·is·passed·as·is·to·the·callback491 module·where·the·<code·class="inline">init</code>·callback·function·is·located.</li><li>The·second·argument,·<code·class="inline">[]</code>,·is·a·term·that·is·passed·as·is·to·the·callback
492 function·<code·class="inline">init</code>.·Here,·<code·class="inline">init</code>·does·not·need·any·data·and·ignores·the·argument.</li></ul><p>In·this·case,·the·supervisor·is·not·registered.·Instead·its·pid·must·be·used.·A492 function·<code·class="inline">init</code>.·Here,·<code·class="inline">init</code>·does·not·need·any·data·and·ignores·the·argument.</li></ul><p>In·this·case,·the·supervisor·is·not·registered.·Instead·its·pid·must·be·used.·A
493 name·can·be·specified·by·calling493 name·can·be·specified·by·calling
494 <a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html#start_link/3"><code·class="inline">supervisor:start_link({local,·Name},·Module,·Args)</code></a>494 <a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html#start_link/3"><code·class="inline">supervisor:start_link({local,·Name},·Module,·Args)</code></a>
495 or495 or
496 <a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html#start_link/3"><code·class="inline">supervisor:start_link({global,·Name},·Module,·Args)</code></a>.</p><p>The·new·supervisor·process·calls·the·callback·function·<code·class="inline">ch_sup:init([])</code>.·<code·class="inline">init</code>496 <a·href="../../lib/stdlib-6.0.1/doc/html/supervisor.html#start_link/3"><code·class="inline">supervisor:start_link({global,·Name},·Module,·Args)</code></a>.</p><p>The·new·supervisor·process·calls·the·callback·function·<code·class="inline">ch_sup:init([])</code>.·<code·class="inline">init</code>
497 has·to·return·<code·class="inline">{ok,·{SupFlags,·ChildSpecs}}</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="5786576445-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="5786576445-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">497 has·to·return·<code·class="inline">{ok,·{SupFlags,·ChildSpecs}}</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init</span><span·class="p"·data-group-id="9868698247-1">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="9868698247-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
498 ····</span><span·class="n">SupFlags</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5786576445-2">#{</span><span·class="p"·data-group-id="5786576445-2">}</span><span·class="p">,</span><span·class="w">498 ····</span><span·class="n">SupFlags</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9868698247-2">#{</span><span·class="p"·data-group-id="9868698247-2">}</span><span·class="p">,</span><span·class="w">
499 ····</span><span·class="n">ChildSpecs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5786576445-3">[</span><span·class="p"·data-group-id="5786576445-4">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">499 ····</span><span·class="n">ChildSpecs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9868698247-3">[</span><span·class="p"·data-group-id="9868698247-4">#{</span><span·class="ss">id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">
500 ····················</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5786576445-5">{</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5786576445-6">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·ae428a35fc6194fc53d5e614e96e9f08f61973fa55ebc376cc86039c44afbe67·...·]-5">}</span><span·class="p">,</span><span·class="w">500 ····················</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9868698247-5">{</span><span·class="ss">ch3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_link</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9868698247-6">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·7126a46a8675edf0146e4d9cb134d9bc8f8d97200e4f87623734d5e00abe013e·...·]-5">}</span><span·class="p">,</span><span·class="w">
501 ····················</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="p"·data-group-id="5786576445-4">}</span><span·class="p"·data-group-id="5786576445-3">]</span><span·class="p">,</span><span·class="w">501 ····················</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">brutal_kill</span><span·class="p"·data-group-id="9868698247-4">}</span><span·class="p"·data-group-id="9868698247-3">]</span><span·class="p">,</span><span·class="w">
502 ····</span><span·class="p"·data-group-id="5786576445-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5786576445-8">{</span><span·class="n">SupFlags</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ChildSpecs</[·...·truncated·by·diffoscope;·len:·99,·SHA:·7dc2eb1fcf061142448f90e224c68d66caaf33c8068218fc50f85cf996a024bf·...·]-7">}</span><span·class="p">.</span></code></pre><p>Subsequently,·the·supervisor·starts·its·child·processes·according·to·the·child502 ····</span><span·class="p"·data-group-id="9868698247-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9868698247-8">{</span><span·class="n">SupFlags</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ChildSpecs</[·...·truncated·by·diffoscope;·len:·99,·SHA:·cd2d94812163008a2f943e53e4288dd990d3c918defdd9d1c961f51fd40b58fc·...·]-7">}</span><span·class="p">.</span></code></pre><p>Subsequently,·the·supervisor·starts·its·child·processes·according·to·the·child
Max diff block lines reached; 12726/65941 bytes (19.30%) of diff not shown.
759 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/doc/system/system_limits.html
    
Offset 213, 15 lines modifiedOffset 213, 15 lines modified
213 ······<p·class="built-using">213 ······<p·class="built-using">
214 ········Built·using214 ········Built·using
215 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the215 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
216 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>216 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
217 ······</p>217 ······</p>
218 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>218 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
219 ····</footer>219 ····</footer>
220 ··</div>220 ··</div>
221 </main>221 </main>
222 </div>222 </div>
223 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>223 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
224 <script>224 <script>
225 ··document.addEventListener("DOMContentLoaded",·function·()·{225 ··document.addEventListener("DOMContentLoaded",·function·()·{
722 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/doc/system/system_principles.html
    
Offset 266, 15 lines modifiedOffset 266, 15 lines modified
266 ······<p·class="built-using">266 ······<p·class="built-using">
267 ········Built·using267 ········Built·using
268 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the268 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
269 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>269 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
270 ······</p>270 ······</p>
271 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>271 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
272 ····</footer>272 ····</footer>
273 ··</div>273 ··</div>
274 </main>274 </main>
275 </div>275 </div>
276 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>276 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
277 <script>277 <script>
278 ··document.addEventListener("DOMContentLoaded",·function·()·{278 ··document.addEventListener("DOMContentLoaded",·function·()·{
739 B
html2text {}
Max HTML report size reached
71.3 KB
./usr/share/doc/erlang-doc/html/doc/system/tablesdatabases.html
    
Offset 146, 73 lines modifiedOffset 146, 73 lines modified
146 ····<i·class="ri-link-m"·aria-hidden="true"></i>146 ····<i·class="ri-link-m"·aria-hidden="true"></i>
147 ··</a>147 ··</a>
148 ··<span·class="text">Deleting·an·Element</span>148 ··<span·class="text">Deleting·an·Element</span>
149 </h3>149 </h3>
150 <p>The·<code·class="inline">delete</code>·operation·is·considered·successful·if·the·element·was·not·present150 <p>The·<code·class="inline">delete</code>·operation·is·considered·successful·if·the·element·was·not·present
151 in·the·table.·Hence·all·attempts·to·check·that·the·element·is·present·in·the151 in·the·table.·Hence·all·attempts·to·check·that·the·element·is·present·in·the
152 Ets/Mnesia·table·before·deletion·are·unnecessary.·Here·follows·an·example·for152 Ets/Mnesia·table·before·deletion·are·unnecessary.·Here·follows·an·example·for
153 Ets·tables:</p><p><strong>DO</strong></p><pre><code·class="text">ets:delete(Tab,·Key),</code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="3522962996-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="3522962996-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">153 Ets·tables:</p><p><strong>DO</strong></p><pre><code·class="text">ets:delete(Tab,·Key),</code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="1116697337-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1116697337-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
154 ····</span><span·class="p"·data-group-id="3522962996-2">[</span><span·class="p"·data-group-id="3522962996-2">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">154 ····</span><span·class="p"·data-group-id="1116697337-2">[</span><span·class="p"·data-group-id="1116697337-2">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
155 ········</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">155 ········</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
156 ····</span><span·class="p"·data-group-id="3522962996-3">[</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class="p"·data-group-id="3522962996-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">156 ····</span><span·class="p"·data-group-id="1116697337-3">[</span><span·class="p">_</span><span·class="p">|</span><span·class="p">_</span><span·class="p"·data-group-id="1116697337-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
157 ········</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="3522962996-4">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="3522962996-4">)</span><span·class="w">157 ········</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="1116697337-4">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1116697337-4">)</span><span·class="w">
158 </span><span·class="k">end</span><span·class="p">,</span></code></pre><h3·id="fetching-data"·class="section-heading">158 </span><span·class="k">end</span><span·class="p">,</span></code></pre><h3·id="fetching-data"·class="section-heading">
159 ··<a·href="#fetching-data"·class="hover-link">159 ··<a·href="#fetching-data"·class="hover-link">
160 ····<i·class="ri-link-m"·aria-hidden="true"></i>160 ····<i·class="ri-link-m"·aria-hidden="true"></i>
161 ··</a>161 ··</a>
162 ··<span·class="text">Fetching·Data</span>162 ··<span·class="text">Fetching·Data</span>
163 </h3>163 </h3>
164 <p>Do·not·fetch·data·that·you·already·have.</p><p>Consider·that·you·have·a·module·that·handles·the·abstract·data·type·<code·class="inline">Person</code>.164 <p>Do·not·fetch·data·that·you·already·have.</p><p>Consider·that·you·have·a·module·that·handles·the·abstract·data·type·<code·class="inline">Person</code>.
165 You·export·the·interface·function·<code·class="inline">print_person/1</code>,·which·uses·the·internal165 You·export·the·interface·function·<code·class="inline">print_person/1</code>,·which·uses·the·internal
166 functions·<code·class="inline">print_name/1</code>,·<code·class="inline">print_age/1</code>,·and·<code·class="inline">print_occupation/1</code>.</p><blockquote><h4·class="info">Note</h4><p>If·the·function·<code·class="inline">print_name/1</code>,·and·so·on,·had·been·interface·functions,·the166 functions·<code·class="inline">print_name/1</code>,·<code·class="inline">print_age/1</code>,·and·<code·class="inline">print_occupation/1</code>.</p><blockquote><h4·class="info">Note</h4><p>If·the·function·<code·class="inline">print_name/1</code>,·and·so·on,·had·been·interface·functions,·the
167 situation·would·have·been·different,·as·you·do·not·want·the·user·of·the167 situation·would·have·been·different,·as·you·do·not·want·the·user·of·the
168 interface·to·know·about·the·internal·data·representation.</p></blockquote><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%·Interface·function</span><span·class="w">168 interface·to·know·about·the·internal·data·representation.</p></blockquote><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%·Interface·function</span><span·class="w">
169 </span><span·class="nf">print_person</span><span·class="p"·data-group-id="8287043460-1">(</span><span·class="n">PersonId</span><span·class="p"·data-group-id="8287043460-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">169 </span><span·class="nf">print_person</span><span·class="p"·data-group-id="2372100062-1">(</span><span·class="n">PersonId</span><span·class="p"·data-group-id="2372100062-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
170 ····</span><span·class="c1">%%·Look·up·the·person·in·the·named·table·person,</span><span·class="w">170 ····</span><span·class="c1">%%·Look·up·the·person·in·the·named·table·person,</span><span·class="w">
171 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="8287043460-2">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PersonId</span><span·class="p"·data-group-id="8287043460-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">171 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="2372100062-2">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PersonId</span><span·class="p"·data-group-id="2372100062-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
172 ········</span><span·class="p"·data-group-id="8287043460-3">[</span><span·class="n">Person</span><span·class="p"·data-group-id="8287043460-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 ········</span><span·class="p"·data-group-id="2372100062-3">[</span><span·class="n">Person</span><span·class="p"·data-group-id="2372100062-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
173 ············</span><span·class="nf">print_name</span><span·class="p"·data-group-id="8287043460-4">(</span><span·class="n">Person</span><span·class="p"·data-group-id="8287043460-4">)</span><span·class="p">,</span><span·class="w">173 ············</span><span·class="nf">print_name</span><span·class="p"·data-group-id="2372100062-4">(</span><span·class="n">Person</span><span·class="p"·data-group-id="2372100062-4">)</span><span·class="p">,</span><span·class="w">
174 ············</span><span·class="nf">print_age</span><span·class="p"·data-group-id="8287043460-5">(</span><span·class="n">Person</span><span·class="p"·data-group-id="8287043460-5">)</span><span·class="p">,</span><span·class="w">174 ············</span><span·class="nf">print_age</span><span·class="p"·data-group-id="2372100062-5">(</span><span·class="n">Person</span><span·class="p"·data-group-id="2372100062-5">)</span><span·class="p">,</span><span·class="w">
175 ············</span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="8287043460-6">(</span><span·class="n">Person</span><span·class="p"·data-group-id="8287043460-6">)</span><span·class="p">;</span><span·class="w">175 ············</span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="2372100062-6">(</span><span·class="n">Person</span><span·class="p"·data-group-id="2372100062-6">)</span><span·class="p">;</span><span·class="w">
176 ········</span><span·class="p"·data-group-id="8287043460-7">[</span><span·class="p"·data-group-id="8287043460-7">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 ········</span><span·class="p"·data-group-id="2372100062-7">[</span><span·class="p"·data-group-id="2372100062-7">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8287043460-8">(</span><span·class="s">&quot;No·person·with·ID·=·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8287043460-9">[</span><sp[·...·truncated·by·diffoscope;·len:·122,·SHA:·9e385ffafe854a09188b1da6f9b4563566de022dc81d7922871c746e80148ac6·...·]-8">)</span><span·class="w">177 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="2372100062-8">(</span><span·class="s">&quot;No·person·with·ID·=·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2372100062-9">[</span><sp[·...·truncated·by·diffoscope;·len:·122,·SHA:·488b44c1d4d1101df0b034f97fb0631f9eff9e8037982ab4a15d27b9301731a2·...·]-8">)</span><span·class="w">
178 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">178 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
179 </span><span·class="c1">%%%·Internal·functions</span><span·class="w">179 </span><span·class="c1">%%%·Internal·functions</span><span·class="w">
180 </span><span·class="nf">print_name</span><span·class="p"·data-group-id="8287043460-10">(</span><span·class="n">Person</span><span·class="p"·data-group-id="8287043460-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">180 </span><span·class="nf">print_name</span><span·class="p"·data-group-id="2372100062-10">(</span><span·class="n">Person</span><span·class="p"·data-group-id="2372100062-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
181 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8287043460-11">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8287043460-12">[</span><span·class[·...·truncated·by·diffoscope;·len:·219,·SHA:·e389074d55e0350e5af5c6c07b91d7a550723cf314366a1abdd88e3209425620·...·]-11">)</span><span·class="p">.</span><span·class="w">181 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="2372100062-11">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2372100062-12">[</span><span·class[·...·truncated·by·diffoscope;·len:·219,·SHA:·429afeb2c4abb01ee056eee9ef8cc113bb9430bcfa989b4dc100acf7d5c37f0f·...·]-11">)</span><span·class="p">.</span><span·class="w">
  
182 </span><span·class="nf">print_age</span><span·class="p"·data-group-id="8287043460-13">(</span><span·class="n">Person</span><span·class="p"·data-group-id="8287043460-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">182 </span><span·class="nf">print_age</span><span·class="p"·data-group-id="2372100062-13">(</span><span·class="n">Person</span><span·class="p"·data-group-id="2372100062-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
183 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8287043460-14">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8287043460-15">[</span><span·class[·...·truncated·by·diffoscope;·len:·218,·SHA:·33902f913093fce0ac0c5706a36fd22fecb9b360d63e11dd136eadd1b92d70e1·...·]-14">)</span><span·class="p">.</span><span·class="w">183 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="2372100062-14">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2372100062-15">[</span><span·class[·...·truncated·by·diffoscope;·len:·218,·SHA:·236d74168615bdf9352cc5edef1d52ea1127507dd13ff821f36e15ba8c11b7ea·...·]-14">)</span><span·class="p">.</span><span·class="w">
  
184 </span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="8287043460-16">(</span><span·class="n">Person</span><span·class="p"·data-group-id="8287043460-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">184 </span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="2372100062-16">(</span><span·class="n">Person</span><span·class="p"·data-group-id="2372100062-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
185 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8287043460-17">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8287043460-18">[</span><span·class[·...·truncated·by·diffoscope;·len:·225,·SHA:·d58b5a961bcc7220bf3e3657475ede4f7bfd3ce5ac53451e525f307fd3cfa3a9·...·]-17">)</span><span·class="p">.</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%·Interface·function</span><span·class="w">185 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="2372100062-17">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2372100062-18">[</span><span·class[·...·truncated·by·diffoscope;·len:·225,·SHA:·29f9b661a35afd4b70caf7d37a80a7af8d4d167e16fdb07fe8e8d244060a5a81·...·]-17">)</span><span·class="p">.</span></code></pre><p><strong>DO·NOT</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%·Interface·function</span><span·class="w">
186 </span><span·class="nf">print_person</span><span·class="p"·data-group-id="8583031000-1">(</span><span·class="n">PersonId</span><span·class="p"·data-group-id="8583031000-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">186 </span><span·class="nf">print_person</span><span·class="p"·data-group-id="3983800746-1">(</span><span·class="n">PersonId</span><span·class="p"·data-group-id="3983800746-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
187 ····</span><span·class="c1">%%·Look·up·the·person·in·the·named·table·person,</span><span·class="w">187 ····</span><span·class="c1">%%·Look·up·the·person·in·the·named·table·person,</span><span·class="w">
188 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="8583031000-2">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PersonId</span><span·class="p"·data-group-id="8583031000-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">188 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="3983800746-2">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PersonId</span><span·class="p"·data-group-id="3983800746-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
189 ········</span><span·class="p"·data-group-id="8583031000-3">[</span><span·class="n">Person</span><span·class="p"·data-group-id="8583031000-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">189 ········</span><span·class="p"·data-group-id="3983800746-3">[</span><span·class="n">Person</span><span·class="p"·data-group-id="3983800746-3">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
190 ············</span><span·class="nf">print_name</span><span·class="p"·data-group-id="8583031000-4">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="8583031000-4">)</span><span·class="p">,</span><span·class="w">190 ············</span><span·class="nf">print_name</span><span·class="p"·data-group-id="3983800746-4">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="3983800746-4">)</span><span·class="p">,</span><span·class="w">
191 ············</span><span·class="nf">print_age</span><span·class="p"·data-group-id="8583031000-5">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="8583031000-5">)</span><span·class="p">,</span><span·class="w">191 ············</span><span·class="nf">print_age</span><span·class="p"·data-group-id="3983800746-5">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="3983800746-5">)</span><span·class="p">,</span><span·class="w">
192 ············</span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="8583031000-6">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="8583031000-6">)</span><span·class="p">;</span><span·class="w">192 ············</span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="3983800746-6">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="3983800746-6">)</span><span·class="p">;</span><span·class="w">
193 ········</span><span·class="p"·data-group-id="8583031000-7">[</span><span·class="p"·data-group-id="8583031000-7">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 ········</span><span·class="p"·data-group-id="3983800746-7">[</span><span·class="p"·data-group-id="3983800746-7">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8583031000-8">(</span><span·class="s">&quot;No·person·with·ID·=·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8583031000-9">[</span><sp[·...·truncated·by·diffoscope;·len:·122,·SHA:·d3c91fcb26b85abb8b1c7727ed540f807972c75274d02746debcb3be575a6a2b·...·]-8">)</span><span·class="w">194 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3983800746-8">(</span><span·class="s">&quot;No·person·with·ID·=·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3983800746-9">[</span><sp[·...·truncated·by·diffoscope;·len:·122,·SHA:·9f0c4e81b092fc7c578274b1b850c23a95c38242d3141471ef5247baf2fa80ad·...·]-8">)</span><span·class="w">
195 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">195 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
196 </span><span·class="c1">%%%·Internal·functions</span><span·class="w">196 </span><span·class="c1">%%%·Internal·functions</span><span·class="w">
197 </span><span·class="nf">print_name</span><span·class="p"·data-group-id="8583031000-10">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="8583031000-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">197 </span><span·class="nf">print_name</span><span·class="p"·data-group-id="3983800746-10">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="3983800746-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
198 ····</span><span·class="p"·data-group-id="8583031000-11">[</span><span·class="n">Person</span><span·class="p"·data-group-id="8583031000-11">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</sp[·...·truncated·by·diffoscope;·len:·207,·SHA:·847d82036933a70534c6337e7ebc7623fede66808898b2789d72a6aa47b7ae87·...·]-12">)</span><span·class="p">,</span><span·class="w">198 ····</span><span·class="p"·data-group-id="3983800746-11">[</span><span·class="n">Person</span><span·class="p"·data-group-id="3983800746-11">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</sp[·...·truncated·by·diffoscope;·len:·207,·SHA:·fdaf22dce6f0b21f57d1a58bd9ee4cff1a9b46c611fa5a4ca3171f0540fb2277·...·]-12">)</span><span·class="p">,</span><span·class="w">
199 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8583031000-13">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8583031000-14">[</span><span·class[·...·truncated·by·diffoscope;·len:·219,·SHA:·e42e3e6d21add3b939feb3c94d584f909ea55eb905386aa7b33135843eee2853·...·]-13">)</span><span·class="p">.</span><span·class="w">199 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3983800746-13">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3983800746-14">[</span><span·class[·...·truncated·by·diffoscope;·len:·219,·SHA:·42279bcdf1f3511b266df8cc86f8b5bd9acdcb5b8dafc268299cc63e9aa46677·...·]-13">)</span><span·class="p">.</span><span·class="w">
  
200 </span><span·class="nf">print_age</span><span·class="p"·data-group-id="8583031000-15">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="8583031000-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">200 </span><span·class="nf">print_age</span><span·class="p"·data-group-id="3983800746-15">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="3983800746-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
201 ····</span><span·class="p"·data-group-id="8583031000-16">[</span><span·class="n">Person</span><span·class="p"·data-group-id="8583031000-16">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</sp[·...·truncated·by·diffoscope;·len:·207,·SHA:·14b5a49d6b6c5217a639fcdb6cd9d909e00eaf51b57501802ec80c342d820907·...·]-17">)</span><span·class="p">,</span><span·class="w">201 ····</span><span·class="p"·data-group-id="3983800746-16">[</span><span·class="n">Person</span><span·class="p"·data-group-id="3983800746-16">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</sp[·...·truncated·by·diffoscope;·len:·207,·SHA:·6e74fc9e52b550f960d28c38b5fcb62a7b588fda87e8aa4f91714141fc5dd3e5·...·]-17">)</span><span·class="p">,</span><span·class="w">
202 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8583031000-18">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8583031000-19">[</span><span·class[·...·truncated·by·diffoscope;·len:·218,·SHA:·4029c525a1483e05d775561f8bbfc983383d429e0e0bc0fe794e58eebe64a92d·...·]-18">)</span><span·class="p">.</span><span·class="w">202 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3983800746-18">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3983800746-19">[</span><span·class[·...·truncated·by·diffoscope;·len:·218,·SHA:·a30cf29912d81c6976440b01d92f20a992b661f67c7f12e6fc952b6b53fd6375·...·]-18">)</span><span·class="p">.</span><span·class="w">
  
203 </span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="8583031000-20">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="8583031000-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">203 </span><span·class="nf">print_occupation</span><span·class="p"·data-group-id="3983800746-20">(</span><span·class="n">PersonID</span><span·class="p"·data-group-id="3983800746-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
204 ····</span><span·class="p"·data-group-id="8583031000-21">[</span><span·class="n">Person</span><span·class="p"·data-group-id="8583031000-21">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</sp[·...·truncated·by·diffoscope;·len:·207,·SHA:·bc40ec60f63a5623e8ed975b9128fedfda5e701176cc93f64ae14f61e58f3979·...·]-22">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="p"·data-group-id="3983800746-21">[</span><span·class="n">Person</span><span·class="p"·data-group-id="3983800746-21">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</sp[·...·truncated·by·diffoscope;·len:·207,·SHA:·b6de37caf74c9575492d8fd0265a946715d0a19bc7d45d8ffec922e3bd55fee2·...·]-22">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8583031000-23">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8583031000-24">[</span><span·class[·...·truncated·by·diffoscope;·len:·225,·SHA:·b8f442bab509eed2855d0032f005b9caed6213dba654b27a4b11df9c742bf0a0·...·]-23">)</span><span·class="p">.</span></code></pre><h3·id="non-persistent-database-storage"·class="section-heading">205 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3983800746-23">(</span><span·class="s">&quot;No·person·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3983800746-24">[</span><span·class[·...·truncated·by·diffoscope;·len:·225,·SHA:·875c56b11c20e3854d12086e028bedfc293e83e4c3d144ddd2c0e6c9d3b9b38f·...·]-23">)</span><span·class="p">.</span></code></pre><h3·id="non-persistent-database-storage"·class="section-heading">
206 ··<a·href="#non-persistent-database-storage"·class="hover-link">206 ··<a·href="#non-persistent-database-storage"·class="hover-link">
207 ····<i·class="ri-link-m"·aria-hidden="true"></i>207 ····<i·class="ri-link-m"·aria-hidden="true"></i>
208 ··</a>208 ··</a>
209 ··<span·class="text">Non-Persistent·Database·Storage</span>209 ··<span·class="text">Non-Persistent·Database·Storage</span>
210 </h3>210 </h3>
211 <p>For·non-persistent·database·storage,·prefer·Ets·tables·over·Mnesia211 <p>For·non-persistent·database·storage,·prefer·Ets·tables·over·Mnesia
212 <code·class="inline">local_content</code>·tables.·Even·the·Mnesia·<code·class="inline">dirty_write</code>·operations·carry·a·fixed212 <code·class="inline">local_content</code>·tables.·Even·the·Mnesia·<code·class="inline">dirty_write</code>·operations·carry·a·fixed
Offset 226, 38 lines modifiedOffset 226, 38 lines modified
226 </h3>226 </h3>
227 <p>Assuming·an·Ets·table·that·uses·<code·class="inline">idno</code>·as·key·and·contains·the·following:</p><pre><code·class="text">[#person{idno·=·1,·name·=·&quot;Adam&quot;,··age·=·31,·occupation·=·&quot;mailman&quot;},227 <p>Assuming·an·Ets·table·that·uses·<code·class="inline">idno</code>·as·key·and·contains·the·following:</p><pre><code·class="text">[#person{idno·=·1,·name·=·&quot;Adam&quot;,··age·=·31,·occupation·=·&quot;mailman&quot;},
228 ·#person{idno·=·2,·name·=·&quot;Bryan&quot;,·age·=·31,·occupation·=·&quot;cashier&quot;},228 ·#person{idno·=·2,·name·=·&quot;Bryan&quot;,·age·=·31,·occupation·=·&quot;cashier&quot;},
229 ·#person{idno·=·3,·name·=·&quot;Bryan&quot;,·age·=·35,·occupation·=·&quot;banker&quot;},229 ·#person{idno·=·3,·name·=·&quot;Bryan&quot;,·age·=·35,·occupation·=·&quot;banker&quot;},
230 ·#person{idno·=·4,·name·=·&quot;Carl&quot;,··age·=·25,·occupation·=·&quot;mailman&quot;}]</code></pre><p>If·you·<em>must</em>·return·all·data·stored·in·the·Ets·table,·you·can·use230 ·#person{idno·=·4,·name·=·&quot;Carl&quot;,··age·=·25,·occupation·=·&quot;mailman&quot;}]</code></pre><p>If·you·<em>must</em>·return·all·data·stored·in·the·Ets·table,·you·can·use
231 <a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#tab2list/1"><code·class="inline">ets:tab2list/1</code></a>.·However,·usually·you·are·only·interested·in·a·subset·of·the231 <a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#tab2list/1"><code·class="inline">ets:tab2list/1</code></a>.·However,·usually·you·are·only·interested·in·a·subset·of·the
232 information·in·which·case·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#tab2list/1"><code·class="inline">ets:tab2list/1</code></a>·is·expensive.·If·you·only·want·to232 information·in·which·case·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#tab2list/1"><code·class="inline">ets:tab2list/1</code></a>·is·expensive.·If·you·only·want·to
233 extract·one·field·from·each·record,·for·example,·the·age·of·every·person,·then:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="8324304094-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8324304094-2">[</span><span·class="p"·data-group-id="8324304094-3">{</span><span·class="o">#</span><span·class="ss">person</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·a115a05b4e62c00e70680d685904b78218eb0c3036b6562252cc4c92c9579387·...·]-4">{</span><span·class="ss">idno</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">233 extract·one·field·from·each·record,·for·example,·the·age·of·every·person,·then:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="6351052259-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6351052259-2">[</span><span·class="p"·data-group-id="6351052259-3">{</span><span·class="o">#</span><span·class="ss">person</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·4dcaf89d572d4d194c075277ea8a6cd77fa54da0442bf90b3ee5f52c0f9178e9·...·]-4">{</span><span·class="ss">idno</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">
234 ··························</span><span·class="ss">name</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">234 ··························</span><span·class="ss">name</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">
235 ··························</span><span·class="ss">age</span><span·class="o">=</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">235 ··························</span><span·class="ss">age</span><span·class="o">=</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
236 ··························</span><span·class="ss">occupation</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="8324304094-4">}</span><span·class="p">,</span><span·class="w">236 ··························</span><span·class="ss">occupation</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="6351052259-4">}</span><span·class="p">,</span><span·class="w">
237 ················</span><span·class="p"·data-group-id="8324304094-5">[</span><span·class="p"·data-group-id="8324304094-5">]</span><span·class="p">,</span><span·class="w">237 ················</span><span·class="p"·data-group-id="6351052259-5">[</span><span·class="p"·data-group-id="6351052259-5">]</span><span·class="p">,</span><span·class="w">
238 ················</span><span·class="p"·data-group-id="8324304094-6">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="8324304094-6">]</span><span·class="p"·data-group-id="8324304094-3">}</span><span·class="p"·data-group-id="8324304094-2">]</span><span·class="p"·data-group-id="83243040[·...·truncated·by·diffoscope;·len:·434,·SHA:·bd30b32ea131b3d06aa3f7046386e2e7db1ce66bd0e7dda225cc63804aaa88f8·...·]-1">)</span><span·class="p">,</span><span·class="w">238 ················</span><span·class="p"·data-group-id="6351052259-6">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="6351052259-6">]</span><span·class="p"·data-group-id="6351052259-3">}</span><span·class="p"·data-group-id="6351052259-2">]</span><span·class="p"·data-group-id="63510522[·...·truncated·by·diffoscope;·len:·434,·SHA:·8a1643cbac9f810d568f66dd666f12f42120d66c2fea4d481883762675554790·...·]-1">)</span><span·class="p">,</span><span·class="w">
239 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="0359015396-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0359015396-3">(</span><span·class="n">X</span><span·class="p"·data-group-id="0359015396-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·919,·SHA:·8ad9b012713fa947a20826ff5fc4041f60f5d9a5b8ce0398006497e57e54b55c·...·]-4">{</span><span·class="ss">idno</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">239 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="5258055037-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5258055037-3">(</span><span·class="n">X</span><span·class="p"·data-group-id="5258055037-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·919,·SHA:·864a77b2134bd68faa3ba4cf49c5379ed04b571adf8e1a2a33ee7a00c82caed0·...·]-4">{</span><span·class="ss">idno</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">
240 ··························</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Bryan&quot;</span><span·class="p">,</span><span·class="w">240 ··························</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Bryan&quot;</span><span·class="p">,</span><span·class="w">
241 ··························</span><span·class="ss">age</span><span·class="o">=</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">241 ··························</span><span·class="ss">age</span><span·class="o">=</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
242 ··························</span><span·class="ss">occupation</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="7460027367-4">}</span><span·class="p">,</span><span·class="w">242 ··························</span><span·class="ss">occupation</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="4380757339-4">}</span><span·class="p">,</span><span·class="w">
243 ················</span><span·class="p"·data-group-id="7460027367-5">[</span><span·class="p"·data-group-id="7460027367-5">]</span><span·class="p">,</span><span·class="w">243 ················</span><span·class="p"·data-group-id="4380757339-5">[</span><span·class="p"·data-group-id="4380757339-5">]</span><span·class="p">,</span><span·class="w">
244 ················</span><span·class="p"·data-group-id="7460027367-6">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="7460027367-6">]</span><span·class="p"·data-group-id="7460027367-3">}</span><span·class="p"·data-group-id="7460027367-2">]</span><span·class="p"·data-group-id="74600273[·...·truncated·by·diffoscope;·len:·410,·SHA:·06c6f4441282a96669a20d509e418f4e2b6e4a23d0cdcfffdb548db3e695daed·...·]-1">)</span><span·class="p">,</span><span·class="w">244 ················</span><span·class="p"·data-group-id="4380757339-6">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="4380757339-6">]</span><span·class="p"·data-group-id="4380757339-3">}</span><span·class="p"·data-group-id="4380757339-2">]</span><span·class="p"·data-group-id="43807573[·...·truncated·by·diffoscope;·len:·410,·SHA:·64b92dd6540700fc1ddd8f6fc1196dc8fbbdd4093f9ea8f6efae4f5a1ade02c0·...·]-1">)</span><span·class="p">,</span><span·class="w">
245 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="3168457836-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3168457836-3">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="3168457836-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="k">case</span><span·class="w">·</span><span·class="n">X</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="w">·</span><span·class="k">of</span><span·class="w">245 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="4441874575-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4441874575-3">(</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="4441874575-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="k">case</span><span·class="w">·</span><span·class="n">X</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">name</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
246 ································</span><span·class="s">&quot;Bryan&quot;</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">246 ································</span><span·class="s">&quot;Bryan&quot;</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
247 ····································</span><span·class="p"·data-group-id="3168457836-4">[</span><span·class="n">X</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">age</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="3168457836-4">]</span><span·class="p">;</span><span·class="w">247 ····································</span><span·class="p"·data-group-id="4441874575-4">[</span><span·class="n">X</span><span·class="o">#</span><span·class="ss">person</span><span·class="p">.</span><span·class="ss">age</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="4441874575-4">]</span><span·class="p">;</span><span·class="w">
248 ·································</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">248 ·································</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
249 ·····································</span><span·class="n">Acc</span><span·class="w">249 ·····································</span><span·class="n">Acc</span><span·class="w">
250 ···························</span><span·class="k">end</span><span·class="w">250 ···························</span><span·class="k">end</span><span·class="w">
251 ·············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3168457836-5">[</span><span·class="p"·data-group-id="3168457836-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabList</span><span·class="p"·data-group-id="3168457836-2">)</span></code></pre><p>If·you·need·all·information·stored·in·the·Ets·table·about·persons·named·&quot;Bryan&quot;,251 ·············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4441874575-5">[</span><span·class="p"·data-group-id="4441874575-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabList</span><span·class="p"·data-group-id="4441874575-2">)</span></code></pre><p>If·you·need·all·information·stored·in·the·Ets·table·about·persons·named·&quot;Bryan&quot;,
252 then:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="9610629420-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9610629420-2">[</span><span·class="p"·data-group-id="9610629420-3">{</span><span·class="o">#</span><span·class="ss">person</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·dda7b7608bc2a042b2bcd33066bac573b178bb72214d6dd545624aac0396bcd6·...·]-4">{</span><span·class="ss">idno</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">252 then:</p><p><strong>DO</strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="8573594356-1">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8573594356-2">[</span><span·class="p"·data-group-id="8573594356-3">{</span><span·class="o">#</span><span·class="ss">person</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·d22fb191fde430112f701eafb861bf56a73939c48f38f4772862f48899d71ce1·...·]-4">{</span><span·class="ss">idno</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">
253 ··························</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Bryan&quot;</span><span·class="p">,</span><span·class="w">253 ··························</span><span·class="ss">name</span><span·class="o">=</span><span·class="s">&quot;Bryan&quot;</span><span·class="p">,</span><span·class="w">
254 ··························</span><span·class="ss">age</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">254 ··························</span><span·class="ss">age</span><span·class="o">=</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">
255 ··························</span><span·class="ss">occupation</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="9610629420-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9610629420-5">[</span><span·class="p"·data-group-id="9610629420-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9[·...·truncated·by·diffoscope;·len:·689,·SHA:·ef589b938726be78a22a0bf5f2db25b059078866bf7272058f5f97dce76e5c1a·...·]-1">)</span><span·class="p">,</span><span·class="w">255 ··························</span><span·class="ss">occupation</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="8573594356-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8573594356-5">[</span><span·class="p"·data-group-id="8573594356-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8[·...·truncated·by·diffoscope;·len:·689,·SHA:·75c8fd68673961a6cfd369ffd3eb6829742104876cecc7e78b4431eb0b3dc0c5·...·]-1">)</span><span·class="p">,</span><span·class="w">
256 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">filter</span><span·class="p"·data-group-id="4635581527-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4635581527-3">(</span><span·class="n">X</span><span·class="p"·data-group-id="4635581527-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·411,·SHA:·a9d08ed5421a670d85e9e4928d0db27361043477132b86ee2f6bdcc78ef1d630·...·]-2">)</span><span·class="p">,</span></code></pre><h3·id="ordered_set-tables"·class="section-heading">256 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">filter</span><span·class="p"·data-group-id="7649014825-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7649014825-3">(</span><span·class="n">X</span><span·class="p"·data-group-id="7649014825-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·411,·SHA:·6da6527f33fb197a9040d738441d67fef527bddc5d48e41fc335807f475a9f57·...·]-2">)</span><span·class="p">,</span></code></pre><h3·id="ordered_set-tables"·class="section-heading">
257 ··<a·href="#ordered_set-tables"·class="hover-link">257 ··<a·href="#ordered_set-tables"·class="hover-link">
258 ····<i·class="ri-link-m"·aria-hidden="true"></i>258 ····<i·class="ri-link-m"·aria-hidden="true"></i>
259 ··</a>259 ··</a>
260 ··<span·class="text"><code·class="inline">ordered_set</code>·Tables</span>260 ··<span·class="text"><code·class="inline">ordered_set</code>·Tables</span>
261 </h3>261 </h3>
262 <p>If·the·data·in·the·table·is·to·be·accessed·so·that·the·order·of·the·keys·in·the262 <p>If·the·data·in·the·table·is·to·be·accessed·so·that·the·order·of·the·keys·in·the
263 table·is·significant,·the·table·type·<code·class="inline">ordered_set</code>·can·be·used·instead·of·the263 table·is·significant,·the·table·type·<code·class="inline">ordered_set</code>·can·be·used·instead·of·the
Offset 293, 20 lines modifiedOffset 293, 20 lines modified
293 Clearly,·the·second·table·would·have·to·be·kept·consistent·with·the·master293 Clearly,·the·second·table·would·have·to·be·kept·consistent·with·the·master
294 table.·Mnesia·can·do·this·for·you,·but·a·home-brew·index·table·can·be·very294 table.·Mnesia·can·do·this·for·you,·but·a·home-brew·index·table·can·be·very
295 efficient·compared·to·the·overhead·involved·in·using·Mnesia.</p><p>An·index·table·for·the·table·in·the·previous·examples·would·have·to·be·a·bag·(as295 efficient·compared·to·the·overhead·involved·in·using·Mnesia.</p><p>An·index·table·for·the·table·in·the·previous·examples·would·have·to·be·a·bag·(as
296 keys·would·appear·more·than·once)·and·can·have·the·following·contents:</p><pre><code·class="text">[#index_entry{name=&quot;Adam&quot;,·idno=1},296 keys·would·appear·more·than·once)·and·can·have·the·following·contents:</p><pre><code·class="text">[#index_entry{name=&quot;Adam&quot;,·idno=1},
297 ·#index_entry{name=&quot;Bryan&quot;,·idno=2},297 ·#index_entry{name=&quot;Bryan&quot;,·idno=2},
298 ·#index_entry{name=&quot;Bryan&quot;,·idno=3},298 ·#index_entry{name=&quot;Bryan&quot;,·idno=3},
299 ·#index_entry{name=&quot;Carl&quot;,·idno=4}]</code></pre><p>Given·this·index·table,·a·lookup·of·the·<code·class="inline">age</code>·fields·for·all·persons·named299 ·#index_entry{name=&quot;Carl&quot;,·idno=4}]</code></pre><p>Given·this·index·table,·a·lookup·of·the·<code·class="inline">age</code>·fields·for·all·persons·named
300 &quot;Bryan&quot;·can·be·done·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">MatchingIDs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="1248463217-1">(</span><span·class="n">IndexTable</span><span·class="p">,</span><span·class="s">&quot;Bryan&quot;</span><span·class="p"·data-group-id="1248463217-1">)</span><span·class="p">,</span><span·class="w">300 &quot;Bryan&quot;·can·be·done·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">MatchingIDs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="7743743501-1">(</span><span·class="n">IndexTable</span><span·class="p">,</span><span·class="s">&quot;Bryan&quot;</span><span·class="p"·data-group-id="7743743501-1">)</span><span·class="p">,</span><span·class="w">
301 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="1248463217-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1248463217-3">(</span><span·class="o">#</span><span·class="ss">index_entry</span><span·class="p"·data-group-id="1248463217-4">{</span><span·class="ss">idno</span><span·class="w[·...·truncated·by·diffoscope;·len:·177,·SHA:·06ec759fabd59e28f3658d470f7715c57fcf95efa1e8b6d66c753de8009a2cae·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">301 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="7743743501-2">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7743743501-3">(</span><span·class="o">#</span><span·class="ss">index_entry</span><span·class="p"·data-group-id="7743743501-4">{</span><span·class="ss">idno</span><span·class="w[·...·truncated·by·diffoscope;·len:·177,·SHA:·2790f3c80866c3bf98eea3e75309ac16e008e3958c229606e922cd606fd5e3fb·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
302 ·················</span><span·class="p"·data-group-id="1248463217-5">[</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1248463217-6">{</span><span·class="ss">age</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Age</span><s[·...·truncated·by·diffoscope;·len:·458,·SHA:·25f22d4e8ebce9b47a436d594fe70bdafe1a34851bce1dd9b03db54f41472ab5·...·]-7">)</span><span·class="p">,</span><span·class="w">302 ·················</span><span·class="p"·data-group-id="7743743501-5">[</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="7743743501-6">{</span><span·class="ss">age</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Age</span><s[·...·truncated·by·diffoscope;·len:·458,·SHA:·1890a468c8b0ff69164a602b910e868e8e59261bf58252c2de1f011bc43a7906·...·]-7">)</span><span·class="p">,</span><span·class="w">
303 ·················</span><span·class="n">Age</span><span·class="w">303 ·················</span><span·class="n">Age</span><span·class="w">
304 ··········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">304 ··········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
305 ··········</span><span·class="n">MatchingIDs</span><span·class="p"·data-group-id="1248463217-2">)</span><span·class="p">,</span></code></pre><p>Notice·that·this·code·does·not·use·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#match/2"><code·class="inline">ets:match/2</code></a>,·but·instead·uses·the305 ··········</span><span·class="n">MatchingIDs</span><span·class="p"·data-group-id="7743743501-2">)</span><span·class="p">,</span></code></pre><p>Notice·that·this·code·does·not·use·<a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#match/2"><code·class="inline">ets:match/2</code></a>,·but·instead·uses·the
306 <a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#lookup/2"><code·class="inline">ets:lookup/2</code></a>·call.·The·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#map/2"><code·class="inline">lists:map/2</code></a>·call·is·only·used·to·traverse·the·<code·class="inline">idno</code>s306 <a·href="../../lib/stdlib-6.0.1/doc/html/ets.html#lookup/2"><code·class="inline">ets:lookup/2</code></a>·call.·The·<a·href="../../lib/stdlib-6.0.1/doc/html/lists.html#map/2"><code·class="inline">lists:map/2</code></a>·call·is·only·used·to·traverse·the·<code·class="inline">idno</code>s
Max diff block lines reached; 16977/72330 bytes (23.47%) of diff not shown.
601 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/doc/system/tutorial.html
    
Offset 184, 15 lines modifiedOffset 184, 15 lines modified
184 ······<p·class="built-using">184 ······<p·class="built-using">
185 ········Built·using185 ········Built·using
186 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the186 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
187 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>187 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
188 ······</p>188 ······</p>
189 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>189 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
190 ····</footer>190 ····</footer>
191 ··</div>191 ··</div>
192 </main>192 </main>
193 </div>193 </div>
194 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>194 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
195 <script>195 <script>
196 ··document.addEventListener("DOMContentLoaded",·function·()·{196 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
69.7 KB
./usr/share/doc/erlang-doc/html/doc/system/typespec.html
    
Offset 237, 124 lines modifiedOffset 237, 124 lines modified
237 and·optional·<code·class="inline">(=&gt;)</code>·association·types.·If·an·association·type·is·mandatory,·an237 and·optional·<code·class="inline">(=&gt;)</code>·association·types.·If·an·association·type·is·mandatory,·an
238 association·with·that·type·needs·to·be·present.·In·the·case·of·an·optional238 association·with·that·type·needs·to·be·present.·In·the·case·of·an·optional
239 association·type·it·is·not·required·for·the·key·type·to·be·present.</p><p>The·notation·<code·class="inline">#{}</code>·specifies·the·singleton·type·for·the·empty·map.·Note·that239 association·type·it·is·not·required·for·the·key·type·to·be·present.</p><p>The·notation·<code·class="inline">#{}</code>·specifies·the·singleton·type·for·the·empty·map.·Note·that
240 this·notation·is·not·a·shorthand·for·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:map/0"><code·class="inline">map/0</code></a>·type.</p><p>For·convenience,·the·following·types·are·also·built-in.·They·can·be·thought·as240 this·notation·is·not·a·shorthand·for·the·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:map/0"><code·class="inline">map/0</code></a>·type.</p><p>For·convenience,·the·following·types·are·also·built-in.·They·can·be·thought·as
241 predefined·aliases·for·the·type·unions·also·shown·in·the·table.</p><p><a·href=""·id="builtin_types"></a></p><table><thead><tr><th·style="text-align:·left;"><em>Built-in·type</em></th><th·style="text-align:·left;"><em>Defined·as</em></th></tr></thead><tbody><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:term/0"><code·class="inline">term/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:any/0"><code·class="inline">any/0</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:binary/0"><code·class="inline">binary/0</code></a></td><td·style="text-align:·left;"><code·class="inline">&lt;&lt;_:_*8&gt;&gt;</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_binary/0"><code·class="inline">nonempty_binary/0</code></a></td><td·style="text-align:·left;"><code·class="inline">&lt;&lt;_:8,·_:_*8&gt;&gt;</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:bitstring/0"><code·class="inline">bitstring/0</code></a></td><td·style="text-align:·left;"><code·class="inline">&lt;&lt;_:_*1&gt;&gt;</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_bitstring/0"><code·class="inline">nonempty_bitstring/0</code></a></td><td·style="text-align:·left;"><code·class="inline">&lt;&lt;_:1,·_:_*1&gt;&gt;</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:boolean/0"><code·class="inline">boolean/0</code></a></td><td·style="text-align:·left;"><code·class="inline">'false'</code>·|·<code·class="inline">'true'</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:byte/0"><code·class="inline">byte/0</code></a></td><td·style="text-align:·left;"><code·class="inline">0..255</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:char/0"><code·class="inline">char/0</code></a></td><td·style="text-align:·left;"><code·class="inline">0..16#10ffff</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nil/0"><code·class="inline">nil/0</code></a></td><td·style="text-align:·left;"><code·class="inline">[]</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:number/0"><code·class="inline">number/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>·|·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:float/0"><code·class="inline">float/0</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:list/0"><code·class="inline">list/0</code></a></td><td·style="text-align:·left;"><code·class="inline">[any()]</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:maybe_improper_list/0"><code·class="inline">maybe_improper_list/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:maybe_improper_list/2"><code·class="inline">maybe_improper_list(any(),·any())</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_list/0"><code·class="inline">nonempty_list/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_list/1"><code·class="inline">nonempty_list(any())</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:string/0"><code·class="inline">string/0</code></a></td><td·style="text-align:·left;"><code·class="inline">[char()]</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_string/0"><code·class="inline">nonempty_string/0</code></a></td><td·style="text-align:·left;"><code·class="inline">[char(),...]</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:iodata/0"><code·class="inline">iodata/0</code></a></td><td·style="text-align:·left;"><code·class="inline">iolist()</code>·|·<code·class="inline">binary()</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:iolist/0"><code·class="inline">iolist/0</code></a></td><td·style="text-align:·left;"><code·class="inline">maybe_improper_list(byte()</code>·|·<code·class="inline">binary()</code>·|·<code·class="inline">iolist(),·binary()</code>·|·<code·class="inline">[])</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:map/0"><code·class="inline">map/0</code></a></td><td·style="text-align:·left;"><code·class="inline">#{any()·=&gt;·any()}</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:function/0"><code·class="inline">function/0</code></a></td><td·style="text-align:·left;"><code·class="inline">fun()</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:module/0"><code·class="inline">module/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:atom/0"><code·class="inline">atom/0</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:mfa/0"><code·class="inline">mfa/0</code></a></td><td·style="text-align:·left;"><code·class="inline">{module(),atom(),arity()}</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:arity/0"><code·class="inline">arity/0</code></a></td><td·style="text-align:·left;"><code·class="inline">0..255</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:identifier/0"><code·class="inline">identifier/0</code></a></td><td·style="text-align:·left;"><code·class="inline">pid()</code>·|·<code·class="inline">port()</code>·|·<code·class="inline">reference()</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#node/0"><code·class="inline">node/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:atom/0"><code·class="inline">atom/0</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:timeout/0"><code·class="inline">timeout/0</code></a></td><td·style="text-align:·left;"><code·class="inline">'infinity'</code>·|·<code·class="inline">non_neg_integer()</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:no_return/0"><code·class="inline">no_return/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:none/0"><code·class="inline">none/0</code></a></td></tr></tbody></table><p><em>Table:·Built-in·types,·predefined·aliases</em></p><p>In·addition,·the·following·three·built-in·types·exist·and·can·be·thought·as241 predefined·aliases·for·the·type·unions·also·shown·in·the·table.</p><p><a·href=""·id="builtin_types"></a></p><table><thead><tr><th·style="text-align:·left;"><em>Built-in·type</em></th><th·style="text-align:·left;"><em>Defined·as</em></th></tr></thead><tbody><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:term/0"><code·class="inline">term/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:any/0"><code·class="inline">any/0</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:binary/0"><code·class="inline">binary/0</code></a></td><td·style="text-align:·left;"><code·class="inline">&lt;&lt;_:_*8&gt;&gt;</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_binary/0"><code·class="inline">nonempty_binary/0</code></a></td><td·style="text-align:·left;"><code·class="inline">&lt;&lt;_:8,·_:_*8&gt;&gt;</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:bitstring/0"><code·class="inline">bitstring/0</code></a></td><td·style="text-align:·left;"><code·class="inline">&lt;&lt;_:_*1&gt;&gt;</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_bitstring/0"><code·class="inline">nonempty_bitstring/0</code></a></td><td·style="text-align:·left;"><code·class="inline">&lt;&lt;_:1,·_:_*1&gt;&gt;</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:boolean/0"><code·class="inline">boolean/0</code></a></td><td·style="text-align:·left;"><code·class="inline">'false'</code>·|·<code·class="inline">'true'</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:byte/0"><code·class="inline">byte/0</code></a></td><td·style="text-align:·left;"><code·class="inline">0..255</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:char/0"><code·class="inline">char/0</code></a></td><td·style="text-align:·left;"><code·class="inline">0..16#10ffff</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nil/0"><code·class="inline">nil/0</code></a></td><td·style="text-align:·left;"><code·class="inline">[]</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:number/0"><code·class="inline">number/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>·|·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:float/0"><code·class="inline">float/0</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:list/0"><code·class="inline">list/0</code></a></td><td·style="text-align:·left;"><code·class="inline">[any()]</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:maybe_improper_list/0"><code·class="inline">maybe_improper_list/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:maybe_improper_list/2"><code·class="inline">maybe_improper_list(any(),·any())</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_list/0"><code·class="inline">nonempty_list/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_list/1"><code·class="inline">nonempty_list(any())</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:string/0"><code·class="inline">string/0</code></a></td><td·style="text-align:·left;"><code·class="inline">[char()]</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:nonempty_string/0"><code·class="inline">nonempty_string/0</code></a></td><td·style="text-align:·left;"><code·class="inline">[char(),...]</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:iodata/0"><code·class="inline">iodata/0</code></a></td><td·style="text-align:·left;"><code·class="inline">iolist()</code>·|·<code·class="inline">binary()</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:iolist/0"><code·class="inline">iolist/0</code></a></td><td·style="text-align:·left;"><code·class="inline">maybe_improper_list(byte()</code>·|·<code·class="inline">binary()</code>·|·<code·class="inline">iolist(),·binary()</code>·|·<code·class="inline">[])</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:map/0"><code·class="inline">map/0</code></a></td><td·style="text-align:·left;"><code·class="inline">#{any()·=&gt;·any()}</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:function/0"><code·class="inline">function/0</code></a></td><td·style="text-align:·left;"><code·class="inline">fun()</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:module/0"><code·class="inline">module/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:atom/0"><code·class="inline">atom/0</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:mfa/0"><code·class="inline">mfa/0</code></a></td><td·style="text-align:·left;"><code·class="inline">{module(),atom(),arity()}</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:arity/0"><code·class="inline">arity/0</code></a></td><td·style="text-align:·left;"><code·class="inline">0..255</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:identifier/0"><code·class="inline">identifier/0</code></a></td><td·style="text-align:·left;"><code·class="inline">pid()</code>·|·<code·class="inline">port()</code>·|·<code·class="inline">reference()</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#node/0"><code·class="inline">node/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:atom/0"><code·class="inline">atom/0</code></a></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:timeout/0"><code·class="inline">timeout/0</code></a></td><td·style="text-align:·left;"><code·class="inline">'infinity'</code>·|·<code·class="inline">non_neg_integer()</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:no_return/0"><code·class="inline">no_return/0</code></a></td><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:none/0"><code·class="inline">none/0</code></a></td></tr></tbody></table><p><em>Table:·Built-in·types,·predefined·aliases</em></p><p>In·addition,·the·following·three·built-in·types·exist·and·can·be·thought·as
242 defined·below,·though·strictly·their·&quot;type·definition&quot;·is·not·valid·syntax242 defined·below,·though·strictly·their·&quot;type·definition&quot;·is·not·valid·syntax
243 according·to·the·type·language·defined·above.</p><table><thead><tr><th·style="text-align:·left;"><em>Built-in·type</em></th><th·style="text-align:·left;"><em>Can·be·thought·defined·by·the·syntax</em></th></tr></thead><tbody><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></td><td·style="text-align:·left;"><code·class="inline">0..</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:pos_integer/0"><code·class="inline">pos_integer/0</code></a></td><td·style="text-align:·left;"><code·class="inline">1..</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:neg_integer/0"><code·class="inline">neg_integer/0</code></a></td><td·style="text-align:·left;"><code·class="inline">..-1</code></td></tr></tbody></table><p><em>Table:·Additional·built-in·types</em></p><blockquote><h4·class="info">Note</h4><p>The·following·built-in·list·types·also·exist,·but·they·are·expected·to·be243 according·to·the·type·language·defined·above.</p><table><thead><tr><th·style="text-align:·left;"><em>Built-in·type</em></th><th·style="text-align:·left;"><em>Can·be·thought·defined·by·the·syntax</em></th></tr></thead><tbody><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></td><td·style="text-align:·left;"><code·class="inline">0..</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:pos_integer/0"><code·class="inline">pos_integer/0</code></a></td><td·style="text-align:·left;"><code·class="inline">1..</code></td></tr><tr><td·style="text-align:·left;"><a·href="../../erts-15.0.1/doc/html/erlang.html#t:neg_integer/0"><code·class="inline">neg_integer/0</code></a></td><td·style="text-align:·left;"><code·class="inline">..-1</code></td></tr></tbody></table><p><em>Table:·Additional·built-in·types</em></p><blockquote><h4·class="info">Note</h4><p>The·following·built-in·list·types·also·exist,·but·they·are·expected·to·be
244 rarely·used.·Hence,·they·have·long·names:</p></blockquote><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">nonempty_maybe_improper_list</span><span·class="p"·data-group-id="1789172452-1">(</span><span·class="p"·data-group-id="1789172452-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">nonempty_maybe_improper_list</span><span·class="p"·data-group-id="17[·...·truncated·by·diffoscope;·len:·375,·SHA:·ada0aa571d06fc00134642c40888b5f6231c4a4138d03434a3f6c73f0caf2902·...·]-2">)</span><span·class="w">244 rarely·used.·Hence,·they·have·long·names:</p></blockquote><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">nonempty_maybe_improper_list</span><span·class="p"·data-group-id="0836701255-1">(</span><span·class="p"·data-group-id="0836701255-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">nonempty_maybe_improper_list</span><span·class="p"·data-group-id="08[·...·truncated·by·diffoscope;·len:·375,·SHA:·4c6edb860d524b6f4d9344652e47cdbd4891fe9d0b0d22075d6c3f5caa05a041·...·]-2">)</span><span·class="w">
245 </span><span·class="nf">nonempty_improper_list</span><span·class="p"·data-group-id="1789172452-5">(</span><span·class="n">Type1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type2</span><span·class="p"·data-group-id="1789172452-5">)</span><span·class="w">245 </span><span·class="nf">nonempty_improper_list</span><span·class="p"·data-group-id="0836701255-5">(</span><span·class="n">Type1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type2</span><span·class="p"·data-group-id="0836701255-5">)</span><span·class="w">
246 </span><span·class="nf">nonempty_maybe_improper_list</span><span·class="p"·data-group-id="1789172452-6">(</span><span·class="n">Type1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type2</span><span·class="p"·data-group-id="1789172452-6">)</span></code></pre><p>where·the·last·two·types·define·the·set·of·Erlang·terms·one·would·expect.</p><p>Also·for·convenience,·record·notation·is·allowed·to·be·used.·Records·are246 </span><span·class="nf">nonempty_maybe_improper_list</span><span·class="p"·data-group-id="0836701255-6">(</span><span·class="n">Type1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type2</span><span·class="p"·data-group-id="0836701255-6">)</span></code></pre><p>where·the·last·two·types·define·the·set·of·Erlang·terms·one·would·expect.</p><p>Also·for·convenience,·record·notation·is·allowed·to·be·used.·Records·are
247 shorthands·for·the·corresponding·tuples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Record</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Erlang_Atom</span><span·class="p"·data-group-id="3902554799-1">{</span><span·class="p"·data-group-id="3902554799-1">}</span><span·class="w">247 shorthands·for·the·corresponding·tuples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Record</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Erlang_Atom</span><span·class="p"·data-group-id="5607996631-1">{</span><span·class="p"·data-group-id="5607996631-1">}</span><span·class="w">
248 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Erlang_Atom</span><span·class="p"·data-group-id="3902554799-2">{</span><span·class="n">Fields</span><span·class="p"·data-group-id="3902554799-2">}</span></code></pre><p>Records·are·extended·to·possibly·contain·type·information.·This·is·described·in248 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Erlang_Atom</span><span·class="p"·data-group-id="5607996631-2">{</span><span·class="n">Fields</span><span·class="p"·data-group-id="5607996631-2">}</span></code></pre><p>Records·are·extended·to·possibly·contain·type·information.·This·is·described·in
249 <a·href="typespec.html#typeinrecords">Type·Information·in·Record·Declarations</a>.</p><h3·id="redefining-built-in-types"·class="section-heading">249 <a·href="typespec.html#typeinrecords">Type·Information·in·Record·Declarations</a>.</p><h3·id="redefining-built-in-types"·class="section-heading">
250 ··<a·href="#redefining-built-in-types"·class="hover-link">250 ··<a·href="#redefining-built-in-types"·class="hover-link">
251 ····<i·class="ri-link-m"·aria-hidden="true"></i>251 ····<i·class="ri-link-m"·aria-hidden="true"></i>
252 ··</a>252 ··</a>
253 ··<span·class="text">Redefining·built-in·types</span>253 ··<span·class="text">Redefining·built-in·types</span>
254 </h3>254 </h3>
255 <blockquote><h4·class="info">Change</h4><p>Starting·from·Erlang/OTP·26,·is·is·permitted·to·define·a·type·having·the·same255 <blockquote><h4·class="info">Change</h4><p>Starting·from·Erlang/OTP·26,·is·is·permitted·to·define·a·type·having·the·same
256 name·as·a·built-in·type.</p></blockquote><p>It·is·recommended·to·avoid·deliberately·reusing·built-in·names·because·it·can·be256 name·as·a·built-in·type.</p></blockquote><p>It·is·recommended·to·avoid·deliberately·reusing·built-in·names·because·it·can·be
257 confusing.·However,·when·an·Erlang/OTP·release·introduces·a·new·type,·code·that257 confusing.·However,·when·an·Erlang/OTP·release·introduces·a·new·type,·code·that
258 happened·to·define·its·own·type·having·the·same·name·will·continue·to·work.</p><p>As·an·example,·imagine·that·the·Erlang/OTP·42·release·introduces·a·new·type258 happened·to·define·its·own·type·having·the·same·name·will·continue·to·work.</p><p>As·an·example,·imagine·that·the·Erlang/OTP·42·release·introduces·a·new·type
259 <code·class="inline">gadget()</code>·defined·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">gadget</span><span·class="p"·data-group-id="3320805131-1">(</span><span·class="p"·data-group-id="3320805131-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="3320805131-2">{</span><span·class="ss">&#39;gadget&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">reference</span><span·class="p"·data-group-id="3320805131-3">(</span><span·class="p"·data-group-id="3320805131-3">)</span><span·class="p"·data-group-id="3320805131-2">}</span><span·class="p">.</span></code></pre><p>Further·imagine·that·some·code·has·its·own·(different)·definition·of·<code·class="inline">gadget()</code>, 
260 for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">gadget</span><span·class="p"·data-group-id="4401784597-1">(</span><span·class="p"·data-group-id="44[·...·truncated·by·diffoscope;·len:·335,·SHA:·1f4675d7c65a9e74c3a1800cf512535ce1b31a0f4d3354edd6e318812fa5622d·...·]259 <code·class="inline">gadget()</code>·defined·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">gadget</span><span·class="p"·data-group-id="2609475619-1[·...·truncated·by·diffoscope;·len:·638,·SHA:·75213414fd6ef21d83d6b558857c0986102b7a498e62274cbd927bb71766ebf1·...·]
 260 for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">gadget</span><span·class="p"·data-group-id="3722904868-1">(</span><span·class="p"·data-group-id="3722904868-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="3722904868-2">#{</span><span·class="p"·data-group-id="3722904868-2">}</span><span·class="p">.</span></code></pre><p>Since·redefinitions·are·allowed,·the·code·will·still·compile·(but·with·a
261 warning),·and·Dialyzer·will·not·emit·any·additional·warnings.</p><h2·id="type-declarations-of-user-defined-types"·class="section-heading">261 warning),·and·Dialyzer·will·not·emit·any·additional·warnings.</p><h2·id="type-declarations-of-user-defined-types"·class="section-heading">
262 ··<a·href="#type-declarations-of-user-defined-types"·class="hover-link">262 ··<a·href="#type-declarations-of-user-defined-types"·class="hover-link">
263 ····<i·class="ri-link-m"·aria-hidden="true"></i>263 ····<i·class="ri-link-m"·aria-hidden="true"></i>
264 ··</a>264 ··</a>
265 ··<span·class="text">Type·Declarations·of·User-Defined·Types</span>265 ··<span·class="text">Type·Declarations·of·User-Defined·Types</span>
266 </h2>266 </h2>
267 <p>As·seen,·the·basic·syntax·of·a·type·is·an·atom·followed·by·closed·parentheses.267 <p>As·seen,·the·basic·syntax·of·a·type·is·an·atom·followed·by·closed·parentheses.
268 New·types·are·declared·using·<code·class="inline">-type</code>·and·<code·class="inline">-opaque</code>·attributes·as·in·the268 New·types·are·declared·using·<code·class="inline">-type</code>·and·<code·class="inline">-opaque</code>·attributes·as·in·the
269 following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">my_struct_type</span><span·class="p"·data-group-id="7124947989-1">(</span><span·class="p"·data-group-id="7124947989-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">.</span><span·class="w">269 following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">my_struct_type</span><span·class="p"·data-group-id="4376813218-1">(</span><span·class="p"·data-group-id="4376813218-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">.</span><span·class="w">
270 </span><span·class="p">-</span><span·class="na">opaque</span><span·class="w">·</span><span·class="nf">my_opaq_type</span><span·class="p"·data-group-id="7124947989-2">(</span><span·class="p"·data-group-id="7124947989-2">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">.</span></code></pre><p>The·type·name·is·the·atom·<code·class="inline">my_struct_type</code>,·followed·by·parentheses.·<code·class="inline">Type</code>·is·a270 </span><span·class="p">-</span><span·class="na">opaque</span><span·class="w">·</span><span·class="nf">my_opaq_type</span><span·class="p"·data-group-id="4376813218-2">(</span><span·class="p"·data-group-id="4376813218-2">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">.</span></code></pre><p>The·type·name·is·the·atom·<code·class="inline">my_struct_type</code>,·followed·by·parentheses.·<code·class="inline">Type</code>·is·a
271 type·as·defined·in·the·previous·section.·A·current·restriction·is·that·<code·class="inline">Type</code>271 type·as·defined·in·the·previous·section.·A·current·restriction·is·that·<code·class="inline">Type</code>
272 can·contain·only·predefined·types,·or·user-defined·types·which·are·either·of·the272 can·contain·only·predefined·types,·or·user-defined·types·which·are·either·of·the
273 following:</p><ul><li>Module-local·type,·that·is,·with·a·definition·that·is·present·in·the·code·of273 following:</p><ul><li>Module-local·type,·that·is,·with·a·definition·that·is·present·in·the·code·of
274 the·module</li><li>Remote·type,·that·is,·type·defined·in,·and·exported·by,·other·modules;·more274 the·module</li><li>Remote·type,·that·is,·type·defined·in,·and·exported·by,·other·modules;·more
275 about·this·soon.</li></ul><p>For·module-local·types,·the·restriction·that·their·definition·exists·in·the275 about·this·soon.</li></ul><p>For·module-local·types,·the·restriction·that·their·definition·exists·in·the
276 module·is·enforced·by·the·compiler·and·results·in·a·compilation·error.·(A276 module·is·enforced·by·the·compiler·and·results·in·a·compilation·error.·(A
277 similar·restriction·currently·exists·for·records.)</p><p>Type·declarations·can·also·be·parameterized·by·including·type·variables·between277 similar·restriction·currently·exists·for·records.)</p><p>Type·declarations·can·also·be·parameterized·by·including·type·variables·between
278 the·parentheses.·The·syntax·of·type·variables·is·the·same·as·Erlang·variables,278 the·parentheses.·The·syntax·of·type·variables·is·the·same·as·Erlang·variables,
279 that·is,·starts·with·an·upper-case·letter.·These·variables·is·to279 that·is,·starts·with·an·upper-case·letter.·These·variables·is·to
280 appear·on·the·RHS·of·the·definition.·A·concrete·example·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">orddict</span><span·class="p"·data-group-id="9200012731-1">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Val</span><span·class="p"·data-group-id="9200012731-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9200012731-2">[</span><span·class="p"·data-group-id="9200012731-3">{</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Val</span><span·class="p"·data-group-id="9200012731-3">}</span><span·class="p"·data-group-id="9200012731-2">]</span><span·class="p">.</span></code></pre><p>A·module·can·export·some·types·to·declare·that·other·modules·are·allowed·to 
281 refer·to·them·as·<em>remote·types</em>.·This·declaration·has·the·following·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">export_type</span><span·class="p"·data-group-id="0609270790-1">(</span><span·class=[·...·truncated·by·diffoscope;·len:·1338,·SHA:·62e92faeb380879d110628f8fa6b22c63ec564a87efc5bc18bcc253f9c7f2859·...·]·to280 appear·on·the·RHS·of·the·definition.·A·concrete·example·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">orddict</span><span·class="p"·data-group-id="86[·...·truncated·by·diffoscope;·len:·693,·SHA:·6f1abeb5d5d1944ab6802093e93b237e22f76287d4d29867f926e5a5fca76601·...·]·to
 281 refer·to·them·as·<em>remote·types</em>.·This·declaration·has·the·following·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">export_type</span><span·class="p"·data-group-id="1606319777-1">(</span><span·class="p"·data-group-id="1606319777-2">[</span><span·class="n">T1</span><span·class="o">/</span><span·class="n">A1</span><span·class="p">,</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tk</span><span·class="o">/</span><span·class="n">Ak</span><span·class="p"·data-group-id="1606319777-2">]</span><span·class="p"·data-group-id="1606319777-1">)</span><span·class="p">.</span></code></pre><p>Here·the·<code·class="inline">Ti</code>s·are·atoms·(the·name·of·the·type)·and·the·<code·class="inline">Ai</code>s·are·their·arguments.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">export_type</span><span·class="p"·data-group-id="5297901434-1">(</span><span·class="p"·data-group-id="5297901434-2">[</span><span·class="ss">my_struct_type</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">orddict</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="5297901434-2">]</span><span·class="p"·data-group-id="5297901434-1">)</span><span·class="p">.</span></code></pre><p>Assuming·that·these·types·are·exported·from·module·<code·class="inline">'mod'</code>,·you·can·refer·to
282 them·from·other·modules·using·remote·type·expressions·like·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mod</span><span·class="p">:</span><span·class="nf">my_struct_type</span><span·class="p"·data-group-id="7513351584-1">(</span><span·class="p"·data-group-id="7513351584-1">)</span><span·class="w">282 them·from·other·modules·using·remote·type·expressions·like·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mod</span><span·class="p">:</span><span·class="nf">my_struct_type</span><span·class="p"·data-group-id="0032663171-1">(</span><span·class="p"·data-group-id="0032663171-1">)</span><span·class="w">
283 </span><span·class="nc">mod</span><span·class="p">:</span><span·class="nf">orddict</span><span·class="p"·data-group-id="7513351584-2">(</span><span·class="nf">atom</span><span·class="p"·data-group-id="7513351584-3">(</span><span·class="p"·data-group-id="7513351584-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·123,·SHA:·09b08857cb2db1a903264bf0c08478daaf8867885e5f3773988ff13a01003a8a·...·]-2">)</span></code></pre><p>It·is·not·allowed·to·refer·to·types·that·are·not·declared·as·exported.</p><p>Types·declared·as·<code·class="inline">opaque</code>·represent·sets·of·terms·whose·structure·is·not283 </span><span·class="nc">mod</span><span·class="p">:</span><span·class="nf">orddict</span><span·class="p"·data-group-id="0032663171-2">(</span><span·class="nf">atom</span><span·class="p"·data-group-id="0032663171-3">(</span><span·class="p"·data-group-id="0032663171-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·123,·SHA:·9eb10d74a26ce2e76f4442155a0978a43da0a2d016c4eb87de75b5b6c7d13671·...·]-2">)</span></code></pre><p>It·is·not·allowed·to·refer·to·types·that·are·not·declared·as·exported.</p><p>Types·declared·as·<code·class="inline">opaque</code>·represent·sets·of·terms·whose·structure·is·not
284 supposed·to·be·visible·from·outside·of·their·defining·module.·That·is,·only·the284 supposed·to·be·visible·from·outside·of·their·defining·module.·That·is,·only·the
285 module·defining·them·is·allowed·to·depend·on·their·term·structure.·Consequently,285 module·defining·them·is·allowed·to·depend·on·their·term·structure.·Consequently,
286 such·types·do·not·make·much·sense·as·module·local·-·module·local·types·are·not286 such·types·do·not·make·much·sense·as·module·local·-·module·local·types·are·not
287 accessible·by·other·modules·anyway·-·and·is·always·to·be·exported.</p><p>Read·more·on·<a·href="opaques.html">Opaques</a></p><p><a·href=""·id="typeinrecords"></a></p><h2·id="type-information-in-record-declarations"·class="section-heading">287 accessible·by·other·modules·anyway·-·and·is·always·to·be·exported.</p><p>Read·more·on·<a·href="opaques.html">Opaques</a></p><p><a·href=""·id="typeinrecords"></a></p><h2·id="type-information-in-record-declarations"·class="section-heading">
288 ··<a·href="#type-information-in-record-declarations"·class="hover-link">288 ··<a·href="#type-information-in-record-declarations"·class="hover-link">
289 ····<i·class="ri-link-m"·aria-hidden="true"></i>289 ····<i·class="ri-link-m"·aria-hidden="true"></i>
290 ··</a>290 ··</a>
291 ··<span·class="text">Type·Information·in·Record·Declarations</span>291 ··<span·class="text">Type·Information·in·Record·Declarations</span>
292 </h2>292 </h2>
293 <p>The·types·of·record·fields·can·be·specified·in·the·declaration·of·the·record.293 <p>The·types·of·record·fields·can·be·specified·in·the·declaration·of·the·record.
294 The·syntax·for·this·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="8956634432-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8956634432-2">{</span><span·class="ss">field1</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><spa[·...·truncated·by·diffoscope;·len:·422,·SHA:·a22682666626445f81f1240ae0265d8aa2a50ee650133c264f716e514f91235f·...·]-1">)</span><span·class="p">.</span></code></pre><p>For·fields·without·type·annotations,·their·type·defaults·to·<code·class="inline">any()</code>.·That·is,·the294 The·syntax·for·this·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4461292364-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4461292364-2">{</span><span·class="ss">field1</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><spa[·...·truncated·by·diffoscope;·len:·422,·SHA:·256541a6aa29e95446cfa6e52bf9e7ab727b006aa87936f211f031dabf433abc·...·]-1">)</span><span·class="p">.</span></code></pre><p>For·fields·without·type·annotations,·their·type·defaults·to·<code·class="inline">any()</code>.·That·is,·the
295 previous·example·is·a·shorthand·for·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3983600293-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3983600293-2">{</span><span·class="ss">field1</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><spa[·...·truncated·by·diffoscope;·len:·651,·SHA:·457eab844234cca5aaa9b17ac1b8310919b3a95802ae47988db8b7963e192ead·...·]-1">)</span><span·class="p">.</span></code></pre><p>In·the·presence·of·initial·values·for·fields,·the·type·must·be·declared·after295 previous·example·is·a·shorthand·for·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="1240396129-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1240396129-2">{</span><span·class="ss">field1</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><spa[·...·truncated·by·diffoscope;·len:·651,·SHA:·4923601f104945734466b13b7228a7067afa22cd8ebe813e902a73cad37fd69e·...·]-1">)</span><span·class="p">.</span></code></pre><p>In·the·presence·of·initial·values·for·fields,·the·type·must·be·declared·after
296 the·initialization,·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="7800245857-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7800245857-2">{</span><span·class="ss">field1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·697,·SHA:·2dd8aa0995025a3f2cf8ba6497be87ea7fcb05d79bbd9b7c7e462375d390bc52·...·]7-1">)</span><span·class="p">.</span></code></pre><p>The·initial·values·for·fields·are·to·be·compatible·with·(that·is,·a·member·of)296 the·initialization,·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="0164458397-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0164458397-2">{</span><span·class="ss">field1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·697,·SHA:·bbfb266ea415ebae280f1d6eaaf1958f9367704bff1a907e92a6c871fda298d2·...·]7-1">)</span><span·class="p">.</span></code></pre><p>The·initial·values·for·fields·are·to·be·compatible·with·(that·is,·a·member·of)
297 the·corresponding·types.·This·is·checked·by·the·compiler·and·results·in·a297 the·corresponding·types.·This·is·checked·by·the·compiler·and·results·in·a
298 compilation·error·if·a·violation·is·detected.</p><blockquote><h4·class="info">Change</h4><p>Before·Erlang/OTP·19,·for·fields·without·initial·values,·the·singleton·type298 compilation·error·if·a·violation·is·detected.</p><blockquote><h4·class="info">Change</h4><p>Before·Erlang/OTP·19,·for·fields·without·initial·values,·the·singleton·type
299 <code·class="inline">'undefined'</code>·was·added·to·all·declared·types.·In·other·words,·the·following299 <code·class="inline">'undefined'</code>·was·added·to·all·declared·types.·In·other·words,·the·following
300 two·record·declarations·had·identical·effects:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="5726504133-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5726504133-2">{</span><span·class="ss">f1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·239,·SHA:·d207349d89b3ec76ec6f58f01faf8d59cfdf30e192c39cbe904383a198a80102·...·]-3">)</span><span·class="p">,</span><span·class="w">300 two·record·declarations·had·identical·effects:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="0562041224-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0562041224-2">{</span><span·class="ss">f1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·239,·SHA:·b786f6162e0b97f976a98d5da2f76c4f793daa5ee0595ad9aae68ca0e502cd21·...·]-3">)</span><span·class="p">,</span><span·class="w">
301 ·············</span><span·class="ss">f2</span><span·class="w">······</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">float</span><span·class="p"·data-group-id="5726504133-4">(</span><span·class="p"·data-group-id="5726504133-4">)</span><span·class="p">,</span><span·class="w">301 ·············</span><span·class="ss">f2</span><span·class="w">······</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">float</span><span·class="p"·data-group-id="0562041224-4">(</span><span·class="p"·data-group-id="0562041224-4">)</span><span·class="p">,</span><span·class="w">
302 ·············</span><span·class="ss">f3</span><span·class="w">······</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;a&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;b&#39;</span><span·class="p"·data-group-id="5726504133-2">}</span><span·class="p"·data-group-id="5726504133-1">)</span><span·class="p">.</span><span·class="w">302 ·············</span><span·class="ss">f3</span><span·class="w">······</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;a&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;b&#39;</span><span·class="p"·data-group-id="0562041224-2">}</span><span·class="p"·data-group-id="0562041224-1">)</span><span·class="p">.</span><span·class="w">
303 </span><span·class="w">303 </span><span·class="w">
304 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="5726504133-5">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5726504133-6">{</span><span·class="ss">f1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·239,·SHA:·daf2439353f6fa373d2d5092afc86407edefdd2dbd64290d8bf8f71eb93ba8a4·...·]-7">)</span><span·class="p">,</span><span·class="w">304 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="0562041224-5">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0562041224-6">{</span><span·class="ss">f1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·239,·SHA:·23d0ddf2e9ee2e122879b0f5929043743913b2894120b094f2b8e7b99bb6fb39·...·]-7">)</span><span·class="p">,</span><span·class="w">
305 ··············</span><span·class="ss">f2</span><span·class="w">······</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;undefined&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">float</span><span·class="p"·data-group-id="5726504133-8">(</span><span·class="p"·data-group-id="5726504133-8">)</span><span·class="p">,</span><span·class="w">305 ··············</span><span·class="ss">f2</span><span·class="w">······</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;undefined&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">float</span><span·class="p"·data-group-id="0562041224-8">(</span><span·class="p"·data-group-id="0562041224-8">)</span><span·class="p">,</span><span·class="w">
306 ··············</span><span·class="ss">f3</span><span·class="w">······</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;undefined&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;a&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;b&#39;</span><span·class="p"·data-group-id="5726504133-6">}</span><span·class="p"·data-group-id="5726504133-5">)</span><span·class="p">.</span></code></pre><p>This·is·no·longer·the·case.·If·you·require·<code·class="inline">'undefined'</code>·in·your·record·field306 ··············</span><span·class="ss">f3</span><span·class="w">······</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;undefined&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;a&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;b&#39;</span><span·class="p"·data-group-id="0562041224-6">}</span><span·class="p"·data-group-id="0562041224-5">)</span><span·class="p">.</span></code></pre><p>This·is·no·longer·the·case.·If·you·require·<code·class="inline">'undefined'</code>·in·your·record·field
307 type,·you·must·explicitly·add·it·to·the·typespec,·as·in·the·2nd·example.</p></blockquote><p>Any·record,·containing·type·information·or·not,·once·defined,·can·be·used·as·a307 type,·you·must·explicitly·add·it·to·the·typespec,·as·in·the·2nd·example.</p></blockquote><p>Any·record,·containing·type·information·or·not,·once·defined,·can·be·used·as·a
308 type·using·the·following·syntax:</p><pre><code·class="text">#rec{}</code></pre><p>In·addition,·the·record·fields·can·be·further·specified·when·using·a·record·type308 type·using·the·following·syntax:</p><pre><code·class="text">#rec{}</code></pre><p>In·addition,·the·record·fields·can·be·further·specified·when·using·a·record·type
309 by·adding·type·information·about·the·field·as·follows:</p><pre><code·class="text">#rec{some_field·::·Type}</code></pre><p>Any·unspecified·fields·are·assumed·to·have·the·type·in·the·original·record309 by·adding·type·information·about·the·field·as·follows:</p><pre><code·class="text">#rec{some_field·::·Type}</code></pre><p>Any·unspecified·fields·are·assumed·to·have·the·type·in·the·original·record
310 declaration.</p><blockquote><h4·class="info">Note</h4><p>When·records·are·used·to·create·patterns·for·ETS·and·Mnesia·match·functions,310 declaration.</p><blockquote><h4·class="info">Note</h4><p>When·records·are·used·to·create·patterns·for·ETS·and·Mnesia·match·functions,
311 Dialyzer·may·need·some·help·not·to·emit·bad·warnings.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">height</span><span·class="p"·data-group-id="3704809717-1">(</span><span·class="p"·data-group-id="3704809717-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">pos_integer</span><span·class="p"·data-group-id="3704809717-2">(</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·acb8247f54575c5b0c590880873878c42177073a402b2426b660cc89cfaf5941·...·]-2">)</span><span·class="p">.</span><span·class="w">311 Dialyzer·may·need·some·help·not·to·emit·bad·warnings.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">height</span><span·class="p"·data-group-id="1352133582-1">(</span><span·class="p"·data-group-id="1352133582-1">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">pos_integer</span><span·class="p"·data-group-id="1352133582-2">(</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·3deb50086951753c85d09cbc2c204ee589b266890f46d8b360a07ac47b5a8bff·...·]-2">)</span><span·class="p">.</span><span·class="w">
312 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3704809717-3">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3704809717-4">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><sp[·...·truncated·by·diffoscope;·len:·561,·SHA:·cc196a338bbfb8582491d3f9b6e18084910ffaa0918592b8a196e8d808b61ddd·...·]-3">)</span><span·class="p">.</span><span·class="w">312 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="1352133582-3">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1352133582-4">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><sp[·...·truncated·by·diffoscope;·len:·561,·SHA:·595511b849f5827175fb2bb26b2d71d12ca379bfe757a5ff19a4605d2c33cb1d·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
313 </span><span·class="nf">lookup</span><span·class="p"·data-group-id="3704809717-7">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p"·data-group-id="3704809717-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">313 </span><span·class="nf">lookup</span><span·class="p"·data-group-id="1352133582-7">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p"·data-group-id="1352133582-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
314 ····</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_object</span><span·class="p"·data-group-id="3704809717-8">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="3704809717-9">{</span><span·class="ss">name</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·347,·SHA:·d1aa99e9266dd4cd9de8cce0e62692e55c68d604a3d333689851c80cfa7f4546·...·]-8">)</span><span·class="p">.</span></code></pre><p>Dialyzer·will·emit·a·warning·since·<code·class="inline">'_'</code>·is·not·in·the·type·of·record·field314 ····</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_object</span><span·class="p"·data-group-id="1352133582-8">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1352133582-9">{</span><span·class="ss">name</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·347,·SHA:·3655928a440628d79daf14d4b76f0b009a7c07f154bb3a6598413b3d0bb9b0aa·...·]-8">)</span><span·class="p">.</span></code></pre><p>Dialyzer·will·emit·a·warning·since·<code·class="inline">'_'</code>·is·not·in·the·type·of·record·field
315 <code·class="inline">height</code>.</p><p>The·recommended·way·of·dealing·with·this·is·to·declare·the·smallest·record315 <code·class="inline">height</code>.</p><p>The·recommended·way·of·dealing·with·this·is·to·declare·the·smallest·record
316 field·types·to·accommodate·all·your·needs,·and·then·create·refinements·as316 field·types·to·accommodate·all·your·needs,·and·then·create·refinements·as
317 needed.·The·modified·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="0763759590-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0763759590-2">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><sp[·...·truncated·by·diffoscope;·len:·668,·SHA:·f8124dc1efcefe9b7590a36f5dabf9eba594c2c71bd8c6fed41dffe8c61bc64f·...·]-1">)</span><span·class="p">.</span><span·class="w">317 needed.·The·modified·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6396179603-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6396179603-2">{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><sp[·...·truncated·by·diffoscope;·len:·668,·SHA:·c451cd6851c062254166b1435ec1d1afa0fb4b28f9a53cb73de7f10688e83442·...·]-1">)</span><span·class="p">.</span><span·class="w">
318 </span><span·class="w">318 </span><span·class="w">
319 </span><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">person</span><span·class="p"·data-group-id="0763759590-5">(</span><span·class="p"·data-group-id="0763759590-5">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·325,·SHA:·ad96202dd6f7677330b071eebb9908c944c799eef26d6866b3112d70957ffb6a·...·]-6">}</span><span·class="p">.</span></code></pre><p>In·specifications·and·type·declarations·the·type·<code·class="inline">person()</code>·is·to·be·preferred319 </span><span·class="p">-</span><span·class="na">type</span><span·class="w">·</span><span·class="nf">person</span><span·class="p"·data-group-id="6396179603-5">(</span><span·class="p"·data-group-id="6396179603-5">)</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·325,·SHA:·0c4d1c043c8f354f2e67eca8d92e73676c51109034c16439cb1356b2ab611a9f·...·]-6">}</span><span·class="p">.</span></code></pre><p>In·specifications·and·type·declarations·the·type·<code·class="inline">person()</code>·is·to·be·preferred
320 before·<code·class="inline">#person{}</code>.</p></blockquote><h2·id="specifications-for-functions"·class="section-heading">320 before·<code·class="inline">#person{}</code>.</p></blockquote><h2·id="specifications-for-functions"·class="section-heading">
321 ··<a·href="#specifications-for-functions"·class="hover-link">321 ··<a·href="#specifications-for-functions"·class="hover-link">
322 ····<i·class="ri-link-m"·aria-hidden="true"></i>322 ····<i·class="ri-link-m"·aria-hidden="true"></i>
323 ··</a>323 ··</a>
324 ··<span·class="text">Specifications·for·Functions</span>324 ··<span·class="text">Specifications·for·Functions</span>
325 </h2>325 </h2>
326 <p>A·specification·(or·contract)·for·a·function·is·given·using·the·<code·class="inline">-spec</code>326 <p>A·specification·(or·contract)·for·a·function·is·given·using·the·<code·class="inline">-spec</code>
327 attribute.·The·general·format·is·as·follows:</p><pre><code·class="text">-spec·Function(ArgType1,·...,·ArgTypeN)·-&gt;·ReturnType.</code></pre><p>An·implementation·of·the·function·with·the·same·name·<code·class="inline">Function</code>·must·exist·in327 attribute.·The·general·format·is·as·follows:</p><pre><code·class="text">-spec·Function(ArgType1,·...,·ArgTypeN)·-&gt;·ReturnType.</code></pre><p>An·implementation·of·the·function·with·the·same·name·<code·class="inline">Function</code>·must·exist·in
328 the·current·module,·and·the·arity·of·the·function·must·match·the·number·of328 the·current·module,·and·the·arity·of·the·function·must·match·the·number·of
329 arguments,·otherwise·the·compilation·fails.</p><p>The·following·longer·format·with·module·name·is·also·valid·as·long·as·<code·class="inline">Module</code>329 arguments,·otherwise·the·compilation·fails.</p><p>The·following·longer·format·with·module·name·is·also·valid·as·long·as·<code·class="inline">Module</code>
330 is·the·name·of·the·current·module.·This·can·be·useful·for·documentation330 is·the·name·of·the·current·module.·This·can·be·useful·for·documentation
331 purposes.</p><pre><code·class="text">-spec·Module:Function(ArgType1,·...,·ArgTypeN)·-&gt;·ReturnType.</code></pre><p>Also,·for·documentation·purposes,·argument·names·can·be·given:</p><pre><code·class="text">-spec·Function(ArgName1·::·Type1,·...,·ArgNameN·::·TypeN)·-&gt;·RT.</code></pre><p>A·function·specification·can·be·overloaded.·That·is,·it·can·have·several·types,331 purposes.</p><pre><code·class="text">-spec·Module:Function(ArgType1,·...,·ArgTypeN)·-&gt;·ReturnType.</code></pre><p>Also,·for·documentation·purposes,·argument·names·can·be·given:</p><pre><code·class="text">-spec·Function(ArgName1·::·Type1,·...,·ArgNameN·::·TypeN)·-&gt;·RT.</code></pre><p>A·function·specification·can·be·overloaded.·That·is,·it·can·have·several·types,
332 separated·by·a·semicolon·(<code·class="inline">;</code>).·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="4399187911-1">(</span><span·class="n">T1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T2</span><span·class="p"·data-group-id="4399187911-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">T3</span><span·class="p">;</span><span·class="w">332 separated·by·a·semicolon·(<code·class="inline">;</code>).·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="9131234305-1">(</span><span·class="n">T1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T2</span><span·class="p"·data-group-id="9131234305-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">T3</span><span·class="p">;</span><span·class="w">
333 ·········</span><span·class="p"·data-group-id="4399187911-2">(</span><span·class="n">T4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T5</span><span·class="p"·data-group-id="4399187911-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">T6</span><span·class="p">.</span></code></pre><p>A·current·restriction,·which·currently·results·in·a·warning·by·Dialyzer,·is·that333 ·········</span><span·class="p"·data-group-id="9131234305-2">(</span><span·class="n">T4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T5</span><span·class="p"·data-group-id="9131234305-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">T6</span><span·class="p">.</span></code></pre><p>A·current·restriction,·which·currently·results·in·a·warning·by·Dialyzer,·is·that
334 the·domains·of·the·argument·types·cannot·overlap.·For·example,·the·following334 the·domains·of·the·argument·types·cannot·overlap.·For·example,·the·following
335 specification·results·in·a·warning:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="9580699383-1">(</span><span·class="nf">pos_integer</span><span·class="p"·data-group-id="9580699383-2">(</span><span·class="p"·data-group-id="9580699383-2">)</span><span·class="p"·data-group-id="9580699383-1">)</span><span·class="w">·</span><span·class="p">[·...·truncated·by·diffoscope;·len:·165,·SHA:·ce84824258295998276744006b599da2a31ca15824fd81e24f4e9c2a656ee271·...·]-3">)</span><span·class="p">;</span><span·class="w">335 specification·results·in·a·warning:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="7560168808-1">(</span><span·class="nf">pos_integer</span><span·class="p"·data-group-id="7560168808-2">(</span><span·class="p"·data-group-id="7560168808-2">)</span><span·class="p"·data-group-id="7560168808-1">)</span><span·class="w">·</span><span·class="p">[·...·truncated·by·diffoscope;·len:·165,·SHA:·cf7f6ec9efe47a5fb68d4f4117998a3d546e6be58f29a0c0e9258cd126aaef13·...·]-3">)</span><span·class="p">;</span><span·class="w">
336 ·········</span><span·class="p"·data-group-id="9580699383-4">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="9580699383-5">(</span><span·class="p"·data-group-id="9580699383-5">)</span><span·class="p"·data-group-id="9580699383-4">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·157,·SHA:·bf4838db559a52265d545845fc4dd550f2e7607ca7b77632ee278242c42f612a·...·]-6">)</span><span·class="p">.</span></code></pre><p>Type·variables·can·be·used·in·specifications·to·specify·relations·for·the·input336 ·········</span><span·class="p"·data-group-id="7560168808-4">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="7560168808-5">(</span><span·class="p"·data-group-id="7560168808-5">)</span><span·class="p"·data-group-id="7560168808-4">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·157,·SHA:·d86d36cc71b3ad0d6982740a614e4a7c06f36dfbd8beb8cde76ca2e313af49a6·...·]-6">)</span><span·class="p">.</span></code></pre><p>Type·variables·can·be·used·in·specifications·to·specify·relations·for·the·input
337 and·output·arguments·of·a·function.·For·example,·the·following·specification337 and·output·arguments·of·a·function.·For·example,·the·following·specification
338 defines·the·type·of·a·polymorphic·identity·function:</p><pre><code·class="text">-spec·id(X)·-&gt;·X.</code></pre><p>Notice·that·the·above·specification·does·not·restrict·the·input·and·output·type338 defines·the·type·of·a·polymorphic·identity·function:</p><pre><code·class="text">-spec·id(X)·-&gt;·X.</code></pre><p>Notice·that·the·above·specification·does·not·restrict·the·input·and·output·type
339 in·any·way.·These·types·can·be·constrained·by·guard-like·subtype·constraints·and339 in·any·way.·These·types·can·be·constrained·by·guard-like·subtype·constraints·and
340 provide·bounded·quantification:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">id</span><span·class="p"·data-group-id="0889298212-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="0889298212-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="k">when</span><span·[·...·truncated·by·diffoscope;·len:·259,·SHA:·5420a12d12d1c27b031258f871aa74765fc3911d1233c537957158dddd592b69·...·]12-2">)</span><span·class="p">.</span></code></pre><p>Currently,·the·<code·class="inline">::</code>·constraint·(read·as·&quot;is·a·subtype·of&quot;)·is·the·only·guard340 provide·bounded·quantification:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">id</span><span·class="p"·data-group-id="1218501612-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="1218501612-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="k">when</span><span·[·...·truncated·by·diffoscope;·len:·259,·SHA:·e74b6012c443d068cc09d72a89376163ae2e0f333f1ba24967dbc550006fd171·...·]12-2">)</span><span·class="p">.</span></code></pre><p>Currently,·the·<code·class="inline">::</code>·constraint·(read·as·&quot;is·a·subtype·of&quot;)·is·the·only·guard
341 constraint·that·can·be·used·in·the·<code·class="inline">when</code>·part·of·a·<code·class="inline">-spec</code>·attribute.</p><blockquote><h4·class="info">Note</h4><p>The·above·function·specification·uses·multiple·occurrences·of·the·same·type341 constraint·that·can·be·used·in·the·<code·class="inline">when</code>·part·of·a·<code·class="inline">-spec</code>·attribute.</p><blockquote><h4·class="info">Note</h4><p>The·above·function·specification·uses·multiple·occurrences·of·the·same·type
342 variable.·That·provides·more·type·information·than·the·following·function342 variable.·That·provides·more·type·information·than·the·following·function
343 specification,·where·the·type·variables·are·missing:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">id</span><span·class="p"·data-group-id="1558957783-1">(</span><span·class="nf">tuple</span><span·class="p"·data-group-id="1558957783-2">(</span><span·class="p"·data-group-id="1558957783-2">)</span><span·class="p"·data-group-id="1558957783-1">)</span><span·class="w">·</span><span·class="p">-&gt;<[·...·truncated·by·diffoscope;·len:·153,·SHA:·22445b57b5cdafd46fd52a11c58362468ed5d68def3208f969d0ea81719c26ec·...·]-3">)</span><span·class="p">.</span></code></pre><p>The·latter·specification·says·that·the·function·takes·some·tuple·and·returns343 specification,·where·the·type·variables·are·missing:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">id</span><span·class="p"·data-group-id="7266499745-1">(</span><span·class="nf">tuple</span><span·class="p"·data-group-id="7266499745-2">(</span><span·class="p"·data-group-id="7266499745-2">)</span><span·class="p"·data-group-id="7266499745-1">)</span><span·class="w">·</span><span·class="p">-&gt;<[·...·truncated·by·diffoscope;·len:·153,·SHA:·05c2a922f89cf99f1be60ef1a93bbf8cd5979933ea79c3bc73715eff1d27d8cf·...·]-3">)</span><span·class="p">.</span></code></pre><p>The·latter·specification·says·that·the·function·takes·some·tuple·and·returns
344 some·tuple.·The·specification·with·the·<code·class="inline">X</code>·type·variable·specifies·that·the344 some·tuple.·The·specification·with·the·<code·class="inline">X</code>·type·variable·specifies·that·the
345 function·takes·a·tuple·and·returns·<em>the·same</em>·tuple.</p><p>However,·it·is·up·to·the·tools·that·process·the·specifications·to·choose345 function·takes·a·tuple·and·returns·<em>the·same</em>·tuple.</p><p>However,·it·is·up·to·the·tools·that·process·the·specifications·to·choose
346 whether·to·take·this·extra·information·into·account·or·not.</p></blockquote><p>The·scope·of·a·<code·class="inline">::</code>·constraint·is·the·<code·class="inline">(...)·-&gt;·RetType</code>·specification·after346 whether·to·take·this·extra·information·into·account·or·not.</p></blockquote><p>The·scope·of·a·<code·class="inline">::</code>·constraint·is·the·<code·class="inline">(...)·-&gt;·RetType</code>·specification·after
347 which·it·appears.·To·avoid·confusion,·it·is·suggested·that·different·variables347 which·it·appears.·To·avoid·confusion,·it·is·suggested·that·different·variables
348 are·used·in·different·constituents·of·an·overloaded·contract,·as·shown·in·the348 are·used·in·different·constituents·of·an·overloaded·contract,·as·shown·in·the
349 following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="7717967826-1">(</span><span·class="p"·data-group-id="7717967826-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="7717967826-3">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·551,·SHA:·bd36be930b9748c803f94be51a954938b688b633369f827b4f434fc4a215fceb·...·]-4">)</span><span·class="p">;</span><span·class="w">349 following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="4775140527-1">(</span><span·class="p"·data-group-id="4775140527-2">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="4775140527-3">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·551,·SHA:·3190c3055de49ba8a1a1733e8896c42e7789654425d5ee48f833d6abfb286cd5·...·]-4">)</span><span·class="p">;</span><span·class="w">
350 ·········</span><span·class="p"·data-group-id="7717967826-5">(</span><span·class="p"·data-group-id="7717967826-6">[</span><span·class="n">Y</span><span·class="p"·data-group-id="7717967826-6">]</span><span·class="p"·data-group-id="7717967826-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span[·...·truncated·by·diffoscope;·len:·368,·SHA:·55f3ad7c3425b91a5a4d55836c701a8b795fdf4c8f2dfab2932a9e0e5ddc7458·...·]-7">)</span><span·class="p">.</span></code></pre><p>Some·functions·in·Erlang·are·not·meant·to·return;·either·because·they·define350 ·········</span><span·class="p"·data-group-id="4775140527-5">(</span><span·class="p"·data-group-id="4775140527-6">[</span><span·class="n">Y</span><span·class="p"·data-group-id="4775140527-6">]</span><span·class="p"·data-group-id="4775140527-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span[·...·truncated·by·diffoscope;·len:·368,·SHA:·a30253726ef5fb8efde400426e82642ac22cb94894b95fdd37773aa983d97f75·...·]-7">)</span><span·class="p">.</span></code></pre><p>Some·functions·in·Erlang·are·not·meant·to·return;·either·because·they·define
351 servers·or·because·they·are·used·to·throw·exceptions,·as·in·the·following351 servers·or·because·they·are·used·to·throw·exceptions,·as·in·the·following
352 function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_error</span><span·class="p"·data-group-id="2691483477-1">(</span><span·class="n">Err</span><span·class="p"·data-group-id="2691483477-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">throw</span><span·class="p"·data-group-id="2691483477-2">(</sp[·...·truncated·by·diffoscope;·len:·253,·SHA:·d0aacc5e0d0d79ad0daca7942d16bb896c91efb72286ee35fd921334c636c7f7·...·]-2">)</span><span·class="p">.</span></code></pre><p>For·such·functions,·it·is·recommended·to·use·the·special·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:no_return/0"><code·class="inline">no_return/0</code></a>·type352 function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_error</span><span·class="p"·data-group-id="8475239846-1">(</span><span·class="n">Err</span><span·class="p"·data-group-id="8475239846-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">throw</span><span·class="p"·data-group-id="8475239846-2">(</sp[·...·truncated·by·diffoscope;·len:·253,·SHA:·4c8ffae16c260cb392c3b93f3c0d2a34b7f6f529bf91d17d424d393ade952249·...·]-2">)</span><span·class="p">.</span></code></pre><p>For·such·functions,·it·is·recommended·to·use·the·special·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:no_return/0"><code·class="inline">no_return/0</code></a>·type
353 for·their·&quot;return&quot;,·through·a·contract·of·the·following·form:</p><pre><code·class="text">-spec·my_error(term())·-&gt;·no_return().</code></pre><blockquote><h4·class="info">Note</h4><p>Erlang·uses·the·shorthand·version·<code·class="inline">_</code>·as·an·anonymous·type·variable·equivalent353 for·their·&quot;return&quot;,·through·a·contract·of·the·following·form:</p><pre><code·class="text">-spec·my_error(term())·-&gt;·no_return().</code></pre><blockquote><h4·class="info">Note</h4><p>Erlang·uses·the·shorthand·version·<code·class="inline">_</code>·as·an·anonymous·type·variable·equivalent
354 to·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:term/0"><code·class="inline">term/0</code></a>·or·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:any/0"><code·class="inline">any/0</code></a>.·For·example,·the·following·function</p><pre><code·class="text">-spec·Function(string(),·_)·-&gt;·string().</code></pre><p>is·equivalent·to:</p><pre><code·class="text">-spec·Function(string(),·any())·-&gt;·string().</code></pre></blockquote>354 to·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:term/0"><code·class="inline">term/0</code></a>·or·<a·href="../../erts-15.0.1/doc/html/erlang.html#t:any/0"><code·class="inline">any/0</code></a>.·For·example,·the·following·function</p><pre><code·class="text">-spec·Function(string(),·_)·-&gt;·string().</code></pre><p>is·equivalent·to:</p><pre><code·class="text">-spec·Function(string(),·any())·-&gt;·string().</code></pre></blockquote>
355 </div>355 </div>
  
356 <div·class="bottom-actions"·id="bottom-actions">356 <div·class="bottom-actions"·id="bottom-actions">
357 ··<div·class="bottom-actions-item">357 ··<div·class="bottom-actions-item">
  
Offset 399, 15 lines modifiedOffset 399, 15 lines modified
Max diff block lines reached; 680/70649 bytes (0.96%) of diff not shown.
625 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/doc/system/upgrade.html
    
Offset 215, 15 lines modifiedOffset 215, 15 lines modified
215 ······<p·class="built-using">215 ······<p·class="built-using">
216 ········Built·using216 ········Built·using
217 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the217 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
218 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>218 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
219 ······</p>219 ······</p>
220 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>220 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
221 ····</footer>221 ····</footer>
222 ··</div>222 ··</div>
223 </main>223 </main>
224 </div>224 </div>
225 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>225 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
226 <script>226 <script>
227 ··document.addEventListener("DOMContentLoaded",·function·()·{227 ··document.addEventListener("DOMContentLoaded",·function·()·{
753 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/doc/system/versions.html
    
Offset 329, 15 lines modifiedOffset 329, 15 lines modified
329 ······<p·class="built-using">329 ······<p·class="built-using">
330 ········Built·using330 ········Built·using
331 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the331 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
332 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>332 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
333 ······</p>333 ······</p>
334 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>334 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
335 ····</footer>335 ····</footer>
336 ··</div>336 ··</div>
337 </main>337 </main>
338 </div>338 </div>
339 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>339 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
340 <script>340 <script>
341 ··document.addEventListener("DOMContentLoaded",·function·()·{341 ··document.addEventListener("DOMContentLoaded",·function·()·{
762 B
html2text {}
Max HTML report size reached
4.58 KB
./usr/share/doc/erlang-doc/html/doc/system_principles.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>System·Principles··Erlang/OTP·v27.0.1</title>9 ····<title>System·Principles\n\n<script>window.location.replace("../doc/system/system_principles.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/system_principles.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/system_principles.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>System·Principles</span>112 ····<span>System·Principles\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/system_principles.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/system_principles.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="getting_started.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="getting_started.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 Getting·Started·With·Erlang122 Getting·Started·With·Erlang\n\n<script>window.location.replace("../doc/system/getting_started.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="design_principles.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="design_principles.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 OTP·Design·Principles132 OTP·Design·Principles\n\n<script>window.location.replace("../doc/system/design_principles.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.35 KB
html2text {}
Max HTML report size reached
4.06 KB
./usr/share/doc/erlang-doc/html/doc/tftp.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>tftp··Erlang/OTP·v27.0.1</title>9 ····<title>tftp\n\n<script>window.location.replace("../lib/tftp-1.2/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/tftp.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/tftp.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>tftp</span>112 ····<span>tftp\n\n&lt;script&gt;window.location.replace(&quot;../lib/tftp-1.2/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/tftp-1.2/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="ssl.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="ssl.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 ssl122 ssl\n\n<script>window.location.replace("../lib/ssl-11.2.1/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="wx.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="wx.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 wx132 wx\n\n<script>window.location.replace("../lib/wx-2.4.2/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.02 KB
html2text {}
Max HTML report size reached
4.25 KB
./usr/share/doc/erlang-doc/html/doc/tools.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>tools··Erlang/OTP·v27.0.1</title>9 ····<title>tools\n\n<script>window.location.replace("../lib/tools-4.0/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/tools.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/tools/tools.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>tools</span>112 ····<span>tools\n\n&lt;script&gt;window.location.replace(&quot;../lib/tools-4.0/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/tools-4.0/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="syntax_tools.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="syntax_tools.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 syntax_tools122 syntax_tools\n\n<script>window.location.replace("../lib/syntax_tools-3.2/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="common_test.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="common_test.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 common_test132 common_test\n\n<script>window.location.replace("../lib/common_test-1.27/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.14 KB
html2text {}
Max HTML report size reached
4.42 KB
./usr/share/doc/erlang-doc/html/doc/tutorial.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>Interoperability·Tutorial··Erlang/OTP·v27.0.1</title>9 ····<title>Interoperability·Tutorial\n\n<script>window.location.replace("../doc/system/tutorial.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/tutorial.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/system/tutorial.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>Interoperability·Tutorial</span>112 ····<span>Interoperability·Tutorial\n\n&lt;script&gt;window.location.replace(&quot;../doc/system/tutorial.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../doc/system/tutorial.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="efficiency_guide.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="efficiency_guide.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 Efficiency·Guide122 Efficiency·Guide\n\n<script>window.location.replace("../doc/system/efficiency_guide.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="oam.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="oam.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 OAM·Principles132 OAM·Principles\n\n<script>window.location.replace("../doc/system/oam.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.26 KB
html2text {}
Max HTML report size reached
13.1 KB
./usr/share/doc/erlang-doc/html/doc/upcoming_incompatibilities.html
    
Offset 10, 15 lines modifiedOffset 10, 15 lines modified
  
10 ····<title>Upcoming·Potential·Incompatibilities··Erlang/OTP·v27.0.1</title>10 ····<title>Upcoming·Potential·Incompatibilities··Erlang/OTP·v27.0.1</title>
11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>11 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>12 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>13 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
14 ····<script·src="dist/sidebar_items-35348DA6.js"></script>14 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
15 ····<script·src="docs_config.js"></script>15 ····<script·src="docs_config.js"></script>
16 ····<script·async·src="dist/html-7HPNBV52.js"></script>16 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
17 ··</head>17 ··</head>
18 ··<body·data-type="extras"·class="page-extra">18 ··<body·data-type="extras"·class="page-extra">
19 ····<script>19 ····<script>
  
Offset 166, 28 lines modifiedOffset 166, 28 lines modified
166 <code·class="inline">+0.0</code>·instead·of·<code·class="inline">0.0</code>.</p><p>We·plan·to·introduce·the·same·warning·in·OTP·26.1,·but·by·default·it·will·be166 <code·class="inline">+0.0</code>·instead·of·<code·class="inline">0.0</code>.</p><p>We·plan·to·introduce·the·same·warning·in·OTP·26.1,·but·by·default·it·will·be
167 disabled.</p><p><a·href=""·id="singleton_typevars"></a></p><h3·id="singleton-type-variables-will-become-a-compile-time-error"·class="section-heading">167 disabled.</p><p><a·href=""·id="singleton_typevars"></a></p><h3·id="singleton-type-variables-will-become-a-compile-time-error"·class="section-heading">
168 ··<a·href="#singleton-type-variables-will-become-a-compile-time-error"·class="hover-link">168 ··<a·href="#singleton-type-variables-will-become-a-compile-time-error"·class="hover-link">
169 ····<i·class="ri-link-m"·aria-hidden="true"></i>169 ····<i·class="ri-link-m"·aria-hidden="true"></i>
170 ··</a>170 ··</a>
171 ··<span·class="text">Singleton·type·variables·will·become·a·compile-time·error</span>171 ··<span·class="text">Singleton·type·variables·will·become·a·compile-time·error</span>
172 </h3>172 </h3>
173 <p>Before·Erlang/OTP·26,·the·compiler·would·silenty·accept·the·following·spec:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">f</span><span·class="p"·data-group-id="1634345418-1">(</span><span·class="n">Opts</span><span·class="p"·data-group-id="1634345418-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1634345418-2">(</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·805e0793323aedb0712989dde7edb30339fba896e3804815e909b6d03e1c9a17·...·]-2">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">173 <p>Before·Erlang/OTP·26,·the·compiler·would·silenty·accept·the·following·spec:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">f</span><span·class="p"·data-group-id="9078160827-1">(</span><span·class="n">Opts</span><span·class="p"·data-group-id="9078160827-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="9078160827-2">(</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·57c2cf1c06f712bd572d26f42dcdcd2f6884e62b04c00b8e69232500ac20ef7b·...·]-2">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">
174 ····</span><span·class="n">Opts</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1634345418-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Unknown</span><span·class="p"·data-group-id="1634345418-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·196,·SHA:·0236269ac63984d28c8428e57f8d064233444ba5b52baca0bf4017268e7d70ed·...·]-4">}</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="n">Opts</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9078160827-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Unknown</span><span·class="p"·data-group-id="9078160827-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·196,·SHA:·d8891d1b1abca9f8677bda3453a17213746579b0f3c5f244b9125a6e73a45ef8·...·]-4">}</span><span·class="p">.</span><span·class="w">
175 </span><span·class="nf">f</span><span·class="p"·data-group-id="1634345418-5">(</span><span·class="p">_</span><span·class="p"·data-group-id="1634345418-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="p">.</span></code></pre><p>In·OTP·26,·the·compiler·emits·a·warning·pointing·out·that·the·type·variable175 </span><span·class="nf">f</span><span·class="p"·data-group-id="9078160827-5">(</span><span·class="p">_</span><span·class="p"·data-group-id="9078160827-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="p">.</span></code></pre><p>In·OTP·26,·the·compiler·emits·a·warning·pointing·out·that·the·type·variable
176 <code·class="inline">Unknown</code>·is·unbound:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">t</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">6</span><span·class="p">:</span><span·class="mi">18</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span><span·class="ss">variable</span><span·class="w">·</span><span·class="ss">&#39;Unknown&#39;</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">only</span><span·class="w">·</span><span·class="ss">used</span><span·class="w">·</span><span·class="nf">once</span><span·class="w">·</span><span·class="p"·data-group-id="0241393876-1">(</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">unbound</span><span·class="p"·data-group-id="0241393876-1">)</span><span·class="w">176 <code·class="inline">Unknown</code>·is·unbound:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">t</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">6</span><span·class="p">:</span><span·class="mi">18</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span><span·class="ss">variable</span><span·class="w">·</span><span·class="ss">&#39;Unknown&#39;</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">only</span><span·class="w">·</span><span·class="ss">used</span><span·class="w">·</span><span·class="nf">once</span><span·class="w">·</span><span·class="p"·data-group-id="0966000231-1">(</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">unbound</span><span·class="p"·data-group-id="0966000231-1">)</span><span·class="w">
177 </span><span·class="c1">%····6|·····Opts·::·{ok,·Unknown}·|·{error,·Unknown}.</span><span·class="w">177 </span><span·class="c1">%····6|·····Opts·::·{ok,·Unknown}·|·{error,·Unknown}.</span><span·class="w">
178 </span><span·class="c1">%·····|··················^</span></code></pre><p>In·OTP·27,·that·warning·will·become·an·error.</p><p><a·href=""·id="escripts_will_be_compiled"></a></p><h3·id="escripts-will-be-compiled-by-default"·class="section-heading">178 </span><span·class="c1">%·····|··················^</span></code></pre><p>In·OTP·27,·that·warning·will·become·an·error.</p><p><a·href=""·id="escripts_will_be_compiled"></a></p><h3·id="escripts-will-be-compiled-by-default"·class="section-heading">
179 ··<a·href="#escripts-will-be-compiled-by-default"·class="hover-link">179 ··<a·href="#escripts-will-be-compiled-by-default"·class="hover-link">
180 ····<i·class="ri-link-m"·aria-hidden="true"></i>180 ····<i·class="ri-link-m"·aria-hidden="true"></i>
181 ··</a>181 ··</a>
182 ··<span·class="text">Escripts·will·be·compiled·by·default</span>182 ··<span·class="text">Escripts·will·be·compiled·by·default</span>
183 </h3>183 </h3>
184 <p>Escripts·will·be·compiled·by·default·instead·of·interpreted.·That·means·that·the184 <p>Escripts·will·be·compiled·by·default·instead·of·interpreted.·That·means·that·the
185 <code·class="inline">compiler</code>·application·must·be·available.</p><p>The·old·behavior·of·interpreting·escripts·can·be·restored·by·adding·the185 <code·class="inline">compiler</code>·application·must·be·available.</p><p>The·old·behavior·of·interpreting·escripts·can·be·restored·by·adding·the
186 following·line·to·the·script·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">mode</span><span·class="p"·data-group-id="7285395744-1">(</span><span·class="ss">interpret</span><span·class="p"·data-group-id="7285395744-1">)</span><span·class="p">.</span></code></pre><p>In·OTP·28,·support·for·interpreting·an·escript·will·be·removed.</p><h3·id="code_path_choice-will-default-to-strict"·class="section-heading">186 following·line·to·the·script·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">mode</span><span·class="p"·data-group-id="2807811929-1">(</span><span·class="ss">interpret</span><span·class="p"·data-group-id="2807811929-1">)</span><span·class="p">.</span></code></pre><p>In·OTP·28,·support·for·interpreting·an·escript·will·be·removed.</p><h3·id="code_path_choice-will-default-to-strict"·class="section-heading">
187 ··<a·href="#code_path_choice-will-default-to-strict"·class="hover-link">187 ··<a·href="#code_path_choice-will-default-to-strict"·class="hover-link">
188 ····<i·class="ri-link-m"·aria-hidden="true"></i>188 ····<i·class="ri-link-m"·aria-hidden="true"></i>
189 ··</a>189 ··</a>
190 ··<span·class="text">-code_path_choice·will·default·to·strict</span>190 ··<span·class="text">-code_path_choice·will·default·to·strict</span>
191 </h3>191 </h3>
192 <p>This·command·line·option·controls·if·paths·given·in·the·command·line,·boot192 <p>This·command·line·option·controls·if·paths·given·in·the·command·line,·boot
193 scripts,·and·the·code·server·should·be·interpreted·as·is·strict·or·relaxed.</p><p>OTP·26·and·earlier·defaults·to·<code·class="inline">relaxed</code>,·which·means·<code·class="inline">-pa·myapp/ebin</code>·would193 scripts,·and·the·code·server·should·be·interpreted·as·is·strict·or·relaxed.</p><p>OTP·26·and·earlier·defaults·to·<code·class="inline">relaxed</code>,·which·means·<code·class="inline">-pa·myapp/ebin</code>·would
Offset 231, 18 lines modifiedOffset 231, 18 lines modified
231 &quot;231 &quot;
232 String·Content232 String·Content
233 &quot;233 &quot;
234 %%234 %%
235 %%·In·OTP·27·it·is·instead·interpreted·as·a235 %%·In·OTP·27·it·is·instead·interpreted·as·a
236 %%·Triple-Quoted·String·equivalent·to236 %%·Triple-Quoted·String·equivalent·to
237 &quot;String·Content&quot;</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="s">&quot;&quot;</span><span·class="s">&quot;&quot;</span><span·class="w">237 &quot;String·Content&quot;</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="s">&quot;&quot;</span><span·class="s">&quot;&quot;</span><span·class="w">
238 </span><span·class="o">++</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="7098933344-1">(</span><span·class="p"·data-group-id="7098933344-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">238 </span><span·class="o">++</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="8812601618-1">(</span><span·class="p"·data-group-id="8812601618-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">
239 </span><span·class="s">&quot;&quot;</span><span·class="s">&quot;&quot;</span><span·class="w">239 </span><span·class="s">&quot;&quot;</span><span·class="s">&quot;&quot;</span><span·class="w">
240 </span><span·class="c1">%%·Became</span><span·class="w">240 </span><span·class="c1">%%·Became</span><span·class="w">
241 </span><span·class="s">&quot;&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="7098933344-2">(</span><span·class="p"·data-group-id="7098933344-2">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="w">241 </span><span·class="s">&quot;&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="8812601618-2">(</span><span·class="p"·data-group-id="8812601618-2">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="w">
242 </span><span·class="c1">%%</span><span·class="w">242 </span><span·class="c1">%%</span><span·class="w">
243 </span><span·class="c1">%%·In·OTP·27·it·is·instead·interpreted·as·a</span><span·class="w">243 </span><span·class="c1">%%·In·OTP·27·it·is·instead·interpreted·as·a</span><span·class="w">
244 </span><span·class="c1">%%·Triple-Quoted·String·(triple-or-more)·equivalent·to</span><span·class="w">244 </span><span·class="c1">%%·Triple-Quoted·String·(triple-or-more)·equivalent·to</span><span·class="w">
245 </span><span·class="s">&quot;++·foo()·++&quot;</span></code></pre><p>From·Erlang/OTP·26.1·up·to·27.0·the·compiler·issues·a·warning·for·a·sequence·of245 </span><span·class="s">&quot;++·foo()·++&quot;</span></code></pre><p>From·Erlang/OTP·26.1·up·to·27.0·the·compiler·issues·a·warning·for·a·sequence·of
246 3·or·more·double-quote·characters·since·that·is·almost·certainly·a·mistake·or246 3·or·more·double-quote·characters·since·that·is·almost·certainly·a·mistake·or
247 something·like·a·result·of·bad·automatic·code·generation.·If·a·users·gets·that247 something·like·a·result·of·bad·automatic·code·generation.·If·a·users·gets·that
248 warning,·the·code·should·be·corrected·for·example·by·inserting·appropriate248 warning,·the·code·should·be·corrected·for·example·by·inserting·appropriate
Offset 334, 15 lines modifiedOffset 334, 15 lines modified
334 ··<div·class="bottom-actions-item">334 ··<div·class="bottom-actions-item">
  
335 ······<a·href="installation_guide.html"·class="bottom-actions-button"·rel="next">335 ······<a·href="installation_guide.html"·class="bottom-actions-button"·rel="next">
336 ········<span·class="subheader">336 ········<span·class="subheader">
337 ··········Next·Page·337 ··········Next·Page·
338 ········</span>338 ········</span>
339 ········<span·class="title">339 ········<span·class="title">
340 Installation·Guide340 Installation·Guide\n\n<script>window.location.replace("../doc/system/installation_guide.html")</script>
341 ········</span>341 ········</span>
342 ······</a>342 ······</a>
  
343 ··</div>343 ··</div>
344 </div>344 </div>
345 ····<footer·class="footer">345 ····<footer·class="footer">
346 ······<p>346 ······<p>
Offset 358, 15 lines modifiedOffset 358, 15 lines modified
358 ······<p·class="built-using">358 ······<p·class="built-using">
359 ········Built·using359 ········Built·using
360 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the360 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
361 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>361 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
362 ······</p>362 ······</p>
363 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>363 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
364 ····</footer>364 ····</footer>
365 ··</div>365 ··</div>
366 </main>366 </main>
367 </div>367 </div>
368 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>368 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
369 <script>369 <script>
370 ··document.addEventListener("DOMContentLoaded",·function·()·{370 ··document.addEventListener("DOMContentLoaded",·function·()·{
1010 B
html2text {}
Max HTML report size reached
4.07 KB
./usr/share/doc/erlang-doc/html/doc/wx.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>wx··Erlang/OTP·v27.0.1</title>9 ····<title>wx\n\n<script>window.location.replace("../lib/wx-2.4.2/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/wx.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/wx.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>wx</span>112 ····<span>wx\n\n&lt;script&gt;window.location.replace(&quot;../lib/wx-2.4.2/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/wx-2.4.2/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="tftp.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="tftp.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 tftp122 tftp\n\n<script>window.location.replace("../lib/tftp-1.2/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="xmerl.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="xmerl.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 xmerl132 xmerl\n\n<script>window.location.replace("../lib/xmerl-2.0/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.03 KB
html2text {}
Max HTML report size reached
4.13 KB
./usr/share/doc/erlang-doc/html/doc/xmerl.html
    
Offset 4, 21 lines modifiedOffset 4, 21 lines modified
4 ····<meta·charset="utf-8">4 ····<meta·charset="utf-8">
5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">5 ····<meta·http-equiv="x-ua-compatible"·content="ie=edge">
6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">6 ····<meta·name="viewport"·content="width=device-width,·initial-scale=1.0">
7 ····<meta·name="generator"·content="ExDoc·v0.34.2">7 ····<meta·name="generator"·content="ExDoc·v0.34.2">
8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">8 ····<meta·name="project"·content="Erlang/OTP·v27.0.1">
  
  
9 ····<title>xmerl··Erlang/OTP·v27.0.1</title>9 ····<title>xmerl\n\n<script>window.location.replace("../lib/xmerl-2.0/doc/html/index.html")</script>··Erlang/OTP·v27.0.1</title>
10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>10 ····<link·rel="stylesheet"·href="dist/html-erlang-G5LYFEUD.css"·/>
  
  
11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>11 ····<script·src="dist/handlebars.runtime-CFQAK6SD.js"></script>
12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>12 ····<script·src="dist/handlebars.templates-K7URE6B4.js"></script>
13 ····<script·src="dist/sidebar_items-35348DA6.js"></script>13 ····<script·src="dist/sidebar_items-D0B3FEFA.js"></script>
14 ····<script·src="docs_config.js"></script>14 ····<script·src="docs_config.js"></script>
15 ····<script·async·src="dist/html-7HPNBV52.js"></script>15 ····<script·async·src="dist/html-7HPNBV52.js"></script>
  
16 ··</head>16 ··</head>
17 ··<body·data-type="extras"·class="page-extra">17 ··<body·data-type="extras"·class="page-extra">
18 ····<script>18 ····<script>
  
Offset 108, 41 lines modifiedOffset 108, 41 lines modified
  
108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/xmerl.md#L1"·title="View·Source"·class="icon-action"·rel="help">108 ······<a·href="https://github.com/erlang/otp/blob/master/system/doc/top/interfaces/xmerl.md#L1"·title="View·Source"·class="icon-action"·rel="help">
109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>109 ········<i·class="ri-code-s-slash-line"·aria-hidden="true"></i>
110 ········<span·class="sr-only">View·Source</span>110 ········<span·class="sr-only">View·Source</span>
111 ······</a>111 ······</a>
  
  
112 ····<span>xmerl</span>112 ····<span>xmerl\n\n&lt;script&gt;window.location.replace(&quot;../lib/xmerl-2.0/doc/html/index.html&quot;)&lt;/script&gt;</span>
113 ··</h1>113 ··</h1>
  
114 <script>window.location.replace("../lib/xmerl-2.0/doc/html/index.html")</script> 
115 </div>114 </div>
  
116 <div·class="bottom-actions"·id="bottom-actions">115 <div·class="bottom-actions"·id="bottom-actions">
117 ··<div·class="bottom-actions-item">116 ··<div·class="bottom-actions-item">
  
118 ······<a·href="wx.html"·class="bottom-actions-button"·rel="prev">117 ······<a·href="wx.html"·class="bottom-actions-button"·rel="prev">
119 ········<span·class="subheader">118 ········<span·class="subheader">
120 ···········Previous·Page119 ···········Previous·Page
121 ········</span>120 ········</span>
122 ········<span·class="title">121 ········<span·class="title">
123 wx122 wx\n\n<script>window.location.replace("../lib/wx-2.4.2/doc/html/index.html")</script>
124 ········</span>123 ········</span>
125 ······</a>124 ······</a>
  
126 ··</div>125 ··</div>
127 ··<div·class="bottom-actions-item">126 ··<div·class="bottom-actions-item">
  
128 ······<a·href="debugger.html"·class="bottom-actions-button"·rel="next">127 ······<a·href="debugger.html"·class="bottom-actions-button"·rel="next">
129 ········<span·class="subheader">128 ········<span·class="subheader">
130 ··········Next·Page·129 ··········Next·Page·
131 ········</span>130 ········</span>
132 ········<span·class="title">131 ········<span·class="title">
133 debugger132 debugger\n\n<script>window.location.replace("../lib/debugger-5.4/doc/html/index.html")</script>
134 ········</span>133 ········</span>
135 ······</a>134 ······</a>
  
136 ··</div>135 ··</div>
137 </div>136 </div>
138 ····<footer·class="footer">137 ····<footer·class="footer">
139 ······<p>138 ······<p>
Offset 158, 15 lines modifiedOffset 158, 15 lines modified
158 ······<p·class="built-using">158 ······<p·class="built-using">
159 ········Built·using159 ········Built·using
160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the160 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>161 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
162 ······</p>162 ······</p>
163 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>163 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
164 ····</footer>164 ····</footer>
165 ··</div>165 ··</div>
166 </main>166 </main>
167 </div>167 </div>
168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>168 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
169 <script>169 <script>
170 ··document.addEventListener("DOMContentLoaded",·function·()·{170 ··document.addEventListener("DOMContentLoaded",·function·()·{
1.06 KB
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/404.html
    
Offset 139, 15 lines modifiedOffset 139, 15 lines modified
139 ······<p·class="built-using">139 ······<p·class="built-using">
140 ········Built·using140 ········Built·using
141 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the141 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
142 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>142 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
143 ······</p>143 ······</p>
144 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>144 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
145 ····</footer>145 ····</footer>
146 ··</div>146 ··</div>
147 </main>147 </main>
148 </div>148 </div>
149 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>149 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
150 <script>150 <script>
151 ··document.addEventListener("DOMContentLoaded",·function·()·{151 ··document.addEventListener("DOMContentLoaded",·function·()·{
604 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/absform.html
    
Offset 512, 15 lines modifiedOffset 512, 15 lines modified
512 ······<p·class="built-using">512 ······<p·class="built-using">
513 ········Built·using513 ········Built·using
514 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the514 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
515 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>515 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
516 ······</p>516 ······</p>
517 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>517 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
518 ····</footer>518 ····</footer>
519 ··</div>519 ··</div>
520 </main>520 </main>
521 </div>521 </div>
522 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>522 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
523 <script>523 <script>
524 ··document.addEventListener("DOMContentLoaded",·function·()·{524 ··document.addEventListener("DOMContentLoaded",·function·()·{
818 B
html2text {}
Max HTML report size reached
1.74 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/alt_disco.html
    
Offset 202, 15 lines modifiedOffset 202, 15 lines modified
202 ······<p·class="built-using">202 ······<p·class="built-using">
203 ········Built·using203 ········Built·using
204 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the204 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
205 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>205 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
206 ······</p>206 ······</p>
207 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>207 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
208 ····</footer>208 ····</footer>
209 ··</div>209 ··</div>
210 </main>210 </main>
211 </div>211 </div>
212 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>212 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
213 <script>213 <script>
214 ··document.addEventListener("DOMContentLoaded",·function·()·{214 ··document.addEventListener("DOMContentLoaded",·function·()·{
942 B
html2text {}
Max HTML report size reached
55.1 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/alt_dist.html
    
Offset 237, 50 lines modifiedOffset 237, 50 lines modified
237 <code·class="inline">uds_dist</code>·example·using·a·port·driver·written·in·C,·<code·class="inline">erl_uds_dist</code>·is·written237 <code·class="inline">uds_dist</code>·example·using·a·port·driver·written·in·C,·<code·class="inline">erl_uds_dist</code>·is·written
238 entirely·in·Erlang.</p><h3·id="exported-callback-functions"·class="section-heading">238 entirely·in·Erlang.</p><h3·id="exported-callback-functions"·class="section-heading">
239 ··<a·href="#exported-callback-functions"·class="hover-link">239 ··<a·href="#exported-callback-functions"·class="hover-link">
240 ····<i·class="ri-link-m"·aria-hidden="true"></i>240 ····<i·class="ri-link-m"·aria-hidden="true"></i>
241 ··</a>241 ··</a>
242 ··<span·class="text">Exported·Callback·Functions</span>242 ··<span·class="text">Exported·Callback·Functions</span>
243 </h3>243 </h3>
244 <p>The·following·functions·are·mandatory:</p><ul><li><pre·id="listen"><code·class="makeup·erlang"·translate="no"><span·class="nf">listen</span><span·class="p"·data-group-id="3388490547-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="3388490547-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">244 <p>The·following·functions·are·mandatory:</p><ul><li><pre·id="listen"><code·class="makeup·erlang"·translate="no"><span·class="nf">listen</span><span·class="p"·data-group-id="3799214247-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="3799214247-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
245 </span><span·class="err"> </span><span·class="err"> </span><span·class="p"·data-group-id="3388490547-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3388490547-3">{</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Address</span><[·...·truncated·by·diffoscope;·len:·453,·SHA:·8adc059b4127bc10cb1f80ca931558ae799a2fcebcef374e966c6a1b885e2c8f·...·]47-4">}</span><span·class="w">245 </span><span·class="err"> </span><span·class="err"> </span><span·class="p"·data-group-id="3799214247-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3799214247-3">{</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Address</span><[·...·truncated·by·diffoscope;·len:·453,·SHA:·c5ba913620e758b8db0d5ac5d10dd5b9600413300bfa443713d2a9180f28f43b·...·]47-4">}</span><span·class="w">
246 </span><span·class="nf">listen</span><span·class="p"·data-group-id="3388490547-5">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">Host</span><span·class="p"·data-group-id="3388490547-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">246 </span><span·class="nf">listen</span><span·class="p"·data-group-id="3799214247-5">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">Host</span><span·class="p"·data-group-id="3799214247-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
247 </span><span·class="err"> </span><span·class="err"> </span><span·class="p"·data-group-id="3388490547-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3388490547-7">{</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Address</span><[·...·truncated·by·diffoscope;·len:·453,·SHA:·e48e176e849171e20d4ff191dc335490879c7b02b8a1003e1b3a77d86078ab90·...·]47-8">}</span></code></pre><p><code·class="inline">listen/2</code>·is·called·once·in·order·to·listen·for·incoming·connection·requests.247 </span><span·class="err"> </span><span·class="err"> </span><span·class="p"·data-group-id="3799214247-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3799214247-7">{</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Address</span><[·...·truncated·by·diffoscope;·len:·453,·SHA:·50738273356c0d1aa9205ff336f9a1a2a93aa9af574725c09efd51830bd87a1c·...·]47-8">}</span></code></pre><p><code·class="inline">listen/2</code>·is·called·once·in·order·to·listen·for·incoming·connection·requests.
248 The·call·is·made·when·the·distribution·is·brought·up.·The·argument·<code·class="inline">Name</code>·is248 The·call·is·made·when·the·distribution·is·brought·up.·The·argument·<code·class="inline">Name</code>·is
249 the·part·of·the·node·name·before·the·<code·class="inline">@</code>·sign·in·the·full·node·name.·It·can·be249 the·part·of·the·node·name·before·the·<code·class="inline">@</code>·sign·in·the·full·node·name.·It·can·be
250 either·an·atom·or·a·string.·The·argument·<code·class="inline">Host</code>·is·the·part·of·the·node·name250 either·an·atom·or·a·string.·The·argument·<code·class="inline">Host</code>·is·the·part·of·the·node·name
251 after·the·<code·class="inline">@</code>·sign·in·the·full·node·name.·It·is·always·a·string.</p><p>The·return·value·consists·of·a·<code·class="inline">Listen</code>·handle·(which·is·later·passed·to·the251 after·the·<code·class="inline">@</code>·sign·in·the·full·node·name.·It·is·always·a·string.</p><p>The·return·value·consists·of·a·<code·class="inline">Listen</code>·handle·(which·is·later·passed·to·the
252 <a·href="alt_dist.html#accept"><code·class="inline">accept/1</code></a>·callback),·<code·class="inline">Address</code>·which·is·a252 <a·href="alt_dist.html#accept"><code·class="inline">accept/1</code></a>·callback),·<code·class="inline">Address</code>·which·is·a
253 <code·class="inline">#net_address{}</code>·record·with·information·about·the·address·for·the·node·(the253 <code·class="inline">#net_address{}</code>·record·with·information·about·the·address·for·the·node·(the
254 <code·class="inline">#net_address{}</code>·record·is·defined·in·<code·class="inline">kernel/include/net_address.hrl</code>),·and254 <code·class="inline">#net_address{}</code>·record·is·defined·in·<code·class="inline">kernel/include/net_address.hrl</code>),·and
255 <code·class="inline">Creation</code>·which·(currently)·is·an·integer·<code·class="inline">1</code>,·<code·class="inline">2</code>,·or·<code·class="inline">3</code>.</p><p>If·<a·href="epmd_cmd.html"><code·class="inline">epmd</code></a>·is·to·be·used·for·node·discovery,·you·typically·want255 <code·class="inline">Creation</code>·which·(currently)·is·an·integer·<code·class="inline">1</code>,·<code·class="inline">2</code>,·or·<code·class="inline">3</code>.</p><p>If·<a·href="epmd_cmd.html"><code·class="inline">epmd</code></a>·is·to·be·used·for·node·discovery,·you·typically·want
256 to·use·the·<code·class="inline">erl_epmd</code>·module·(part·of·the·<code·class="inline">kernel</code>·application)·in·order·to256 to·use·the·<code·class="inline">erl_epmd</code>·module·(part·of·the·<code·class="inline">kernel</code>·application)·in·order·to
257 register·the·listen·port·with·<code·class="inline">epmd</code>·and·retrieve·<code·class="inline">Creation</code>·to·use.</p></li><li><pre·id="address"><code·class="makeup·erlang"·translate="no"><span·class="nf">address</span><span·class="p"·data-group-id="9147406292-1">(</span><span·class="p"·data-group-id="9147406292-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">257 register·the·listen·port·with·<code·class="inline">epmd</code>·and·retrieve·<code·class="inline">Creation</code>·to·use.</p></li><li><pre·id="address"><code·class="makeup·erlang"·translate="no"><span·class="nf">address</span><span·class="p"·data-group-id="4447282262-1">(</span><span·class="p"·data-group-id="4447282262-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
258 </span><span·class="err"> </span><span·class="err"> </span><span·class="n">Address</span></code></pre><p><code·class="inline">address/0</code>·is·called·in·order·to·get·the·<code·class="inline">Address</code>·part·of·the258 </span><span·class="err"> </span><span·class="err"> </span><span·class="n">Address</span></code></pre><p><code·class="inline">address/0</code>·is·called·in·order·to·get·the·<code·class="inline">Address</code>·part·of·the
259 <a·href="alt_dist.html#listen"><code·class="inline">listen/2</code></a>·function·without·creating·a·listen·socket.259 <a·href="alt_dist.html#listen"><code·class="inline">listen/2</code></a>·function·without·creating·a·listen·socket.
260 All·fields·except·<code·class="inline">address</code>·have·to·be·set·in·the·returned·record</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">address</span><span·class="p"·data-group-id="2620238839-1">(</span><span·class="p"·data-group-id="2620238839-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">260 All·fields·except·<code·class="inline">address</code>·have·to·be·set·in·the·returned·record</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">address</span><span·class="p"·data-group-id="3153124026-1">(</span><span·class="p"·data-group-id="3153124026-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
261 ····</span><span·class="p"·data-group-id="2620238839-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Host</span><span·class="p"·data-group-id="2620238839-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·173,·SHA:·1776739317f2519c86344f27beadedc31a4c94e254fcd1d968d6f5901e6a5fe9·...·]-3">)</span><span·class="p">,</span><span·class="w">261 ····</span><span·class="p"·data-group-id="3153124026-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Host</span><span·class="p"·data-group-id="3153124026-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·173,·SHA:·7081a27d1c80cdc139143271aaee3d771e8e0321977523dad4dcb1a36de38870·...·]-3">)</span><span·class="p">,</span><span·class="w">
262 ····</span><span·class="o">#</span><span·class="ss">net_address</span><span·class="p"·data-group-id="2620238839-4">{</span><span·class="w">·</span><span·class="ss">host</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Host</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">protocol</span><sp[·...·truncated·by·diffoscope;·len:·611,·SHA:·674645dcb80da2642ab7d9c83dec3a43ecb3f618bd5c5b9cbc7cd4633e2f9199·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">262 ····</span><span·class="o">#</span><span·class="ss">net_address</span><span·class="p"·data-group-id="3153124026-4">{</span><span·class="w">·</span><span·class="ss">host</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Host</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">protocol</span><sp[·...·truncated·by·diffoscope;·len:·611,·SHA:·8ad970fb4b946ea93b45826abd5c99aac3733899049f5a45796911b68b20f514·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
263 </span><span·class="err"> </span><span·class="err"> </span><span·class="n">AcceptorPid</span></code></pre><p><code·class="inline">accept/1</code>·should·spawn·a·process·that·accepts·connections.·This·process263 </span><span·class="err"> </span><span·class="err"> </span><span·class="n">AcceptorPid</span></code></pre><p><code·class="inline">accept/1</code>·should·spawn·a·process·that·accepts·connections.·This·process
264 should·preferably·execute·on·<code·class="inline">max</code>·priority.·The·process·identifier·of·this264 should·preferably·execute·on·<code·class="inline">max</code>·priority.·The·process·identifier·of·this
265 process·should·be·returned.</p><p>The·<code·class="inline">Listen</code>·argument·will·be·the·same·as·the·<code·class="inline">Listen</code>·handle·part·of·the265 process·should·be·returned.</p><p>The·<code·class="inline">Listen</code>·argument·will·be·the·same·as·the·<code·class="inline">Listen</code>·handle·part·of·the
266 return·value·of·the·<a·href="alt_dist.html#listen"><code·class="inline">listen/1</code></a>·callback·above.266 return·value·of·the·<a·href="alt_dist.html#listen"><code·class="inline">listen/1</code></a>·callback·above.
267 <code·class="inline">accept/1</code>·is·called·only·once·when·the·distribution·protocol·is·started.</p><p>The·caller·of·this·function·is·a·representative·for·<code·class="inline">net_kernel</code>·(this·may·or267 <code·class="inline">accept/1</code>·is·called·only·once·when·the·distribution·protocol·is·started.</p><p>The·caller·of·this·function·is·a·representative·for·<code·class="inline">net_kernel</code>·(this·may·or
268 may·not·be·the·process·registered·as·<code·class="inline">net_kernel</code>)·and·is·in·this·document268 may·not·be·the·process·registered·as·<code·class="inline">net_kernel</code>)·and·is·in·this·document
269 identified·as·<code·class="inline">Kernel</code>.·When·a·connection·has·been·accepted·by·the·acceptor269 identified·as·<code·class="inline">Kernel</code>.·When·a·connection·has·been·accepted·by·the·acceptor
270 process,·it·needs·to·inform·<code·class="inline">Kernel</code>·about·the·accepted·connection.·This·is270 process,·it·needs·to·inform·<code·class="inline">Kernel</code>·about·the·accepted·connection.·This·is
271 done·by·passing·a·message·on·the·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Kernel</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8198292028-1">{</span><span·class="ss">accept</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AcceptorPid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DistController</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·156,·SHA:·8f21581529851940c11fed34cb2ad6b2e4db764ecc3f5b8b200081130a616a0e·...·]8-1">}</span></code></pre><p><code·class="inline">DistController</code>·is·either·the·process·or·port·identifier·of·the·distribution271 done·by·passing·a·message·on·the·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Kernel</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="5467941758-1">{</span><span·class="ss">accept</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AcceptorPid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DistController</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·156,·SHA:·984585954fdc79e3d5304f507e421a8c714d5ecadf5c8314481de13cf1de5dc0·...·]8-1">}</span></code></pre><p><code·class="inline">DistController</code>·is·either·the·process·or·port·identifier·of·the·distribution
272 controller·for·the·connection.·The·distribution·controller·should·be·created272 controller·for·the·connection.·The·distribution·controller·should·be·created
273 by·the·acceptor·processes·when·a·new·connection·is·accepted.·Its·job·is·to273 by·the·acceptor·processes·when·a·new·connection·is·accepted.·Its·job·is·to
274 dispatch·traffic·on·the·connection.</p><p><code·class="inline">Kernel</code>·responds·with·one·of·the·following·messages:</p><ul><li><p><strong><code·class="inline">{Kernel,·controller,·SupervisorPid}</code></strong>·-·The·request·was·accepted·and274 dispatch·traffic·on·the·connection.</p><p><code·class="inline">Kernel</code>·responds·with·one·of·the·following·messages:</p><ul><li><p><strong><code·class="inline">{Kernel,·controller,·SupervisorPid}</code></strong>·-·The·request·was·accepted·and
275 <code·class="inline">SupervisorPid</code>·is·the·process·identifier·of·the·connection·supervisor275 <code·class="inline">SupervisorPid</code>·is·the·process·identifier·of·the·connection·supervisor
276 process·(which·is·created·in·the276 process·(which·is·created·in·the
277 <a·href="alt_dist.html#accept_connection"><code·class="inline">accept_connection/5</code></a>·callback).</p></li><li><p><strong><code·class="inline">{Kernel,·unsupported_protocol}</code></strong>·-·The·request·was·rejected.·This·is·a277 <a·href="alt_dist.html#accept_connection"><code·class="inline">accept_connection/5</code></a>·callback).</p></li><li><p><strong><code·class="inline">{Kernel,·unsupported_protocol}</code></strong>·-·The·request·was·rejected.·This·is·a
278 fatal·error.·The·acceptor·process·should·terminate.</p></li></ul><p>When·an·accept·sequence·has·been·completed·the·acceptor·process·is·expected·to278 fatal·error.·The·acceptor·process·should·terminate.</p></li></ul><p>When·an·accept·sequence·has·been·completed·the·acceptor·process·is·expected·to
279 continue·accepting·further·requests.</p></li><li><pre·id="accept_connection"><code·class="makeup·erlang"·translate="no"><span·class="nf">accept_connection</span><span·class="p"·data-group-id="1790702536-1">(</span><span·class="n">AcceptorPid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DistCtrl</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyNode</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·155,·SHA:·12d869d9b12c6e65eea2bc0e946a5571aaba88bcd93002631f1bd41da0bc4585·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">279 continue·accepting·further·requests.</p></li><li><pre·id="accept_connection"><code·class="makeup·erlang"·translate="no"><span·class="nf">accept_connection</span><span·class="p"·data-group-id="2699444437-1">(</span><span·class="n">AcceptorPid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DistCtrl</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyNode</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·155,·SHA:·eca9dc3031126806e65f22a20e0a3ae718bf4a31f63ee4d69290514dff0ab968·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
280 </span><span·class="err"> </span><span·class="err"> </span><span·class="n">ConnectionSupervisorPid</span></code></pre><p><code·class="inline">accept_connection/5</code>·should·spawn·a·process·that·will·perform·the·Erlang280 </span><span·class="err"> </span><span·class="err"> </span><span·class="n">ConnectionSupervisorPid</span></code></pre><p><code·class="inline">accept_connection/5</code>·should·spawn·a·process·that·will·perform·the·Erlang
281 distribution·handshake·for·the·connection.·If·the·handshake·successfully281 distribution·handshake·for·the·connection.·If·the·handshake·successfully
282 completes·it·should·continue·to·function·as·a·connection·supervisor.·This282 completes·it·should·continue·to·function·as·a·connection·supervisor.·This
283 process·should·preferably·execute·on·<code·class="inline">max</code>·priority·and·should·be·linked·to283 process·should·preferably·execute·on·<code·class="inline">max</code>·priority·and·should·be·linked·to
284 the·caller.·The·<code·class="inline">dist_util:net_ticker_spawn_options()</code>·function·can·be·called284 the·caller.·The·<code·class="inline">dist_util:net_ticker_spawn_options()</code>·function·can·be·called
285 to·get·spawn·options·suitable·for·this·process·which·can·be·passed·directly·to285 to·get·spawn·options·suitable·for·this·process·which·can·be·passed·directly·to
286 <a·href="erlang.html#spawn_opt/4"><code·class="inline">erlang:spawn_opt/4</code></a>.·<code·class="inline">dist_util:net_ticker_spawn_options()</code>·will·by·default286 <a·href="erlang.html#spawn_opt/4"><code·class="inline">erlang:spawn_opt/4</code></a>.·<code·class="inline">dist_util:net_ticker_spawn_options()</code>·will·by·default
Offset 294, 15 lines modifiedOffset 294, 15 lines modified
294 <code·class="inline">dist_util:handshake_other_started(HsData)</code>.</p></li><li><p><strong><code·class="inline">Allowed</code></strong>·-·To·be·passed·along·to294 <code·class="inline">dist_util:handshake_other_started(HsData)</code>.</p></li><li><p><strong><code·class="inline">Allowed</code></strong>·-·To·be·passed·along·to
295 <code·class="inline">dist_util:handshake_other_started(HsData)</code>.</p></li><li><p><strong><code·class="inline">SetupTime</code></strong>·-·Time·used·for·creating·a·setup·timer·by·a·call·to295 <code·class="inline">dist_util:handshake_other_started(HsData)</code>.</p></li><li><p><strong><code·class="inline">SetupTime</code></strong>·-·Time·used·for·creating·a·setup·timer·by·a·call·to
296 <code·class="inline">dist_util:start_timer(SetupTime)</code>.·The·timer·should·be·passed·along·to296 <code·class="inline">dist_util:start_timer(SetupTime)</code>.·The·timer·should·be·passed·along·to
297 <code·class="inline">dist_util:handshake_other_started(HsData)</code>.</p></li></ul><p>The·created·process·should·provide·callbacks·and·other·information·needed·for297 <code·class="inline">dist_util:handshake_other_started(HsData)</code>.</p></li></ul><p>The·created·process·should·provide·callbacks·and·other·information·needed·for
298 the·handshake·in·a·<a·href="alt_dist.html#hs_data_record"><code·class="inline">#hs_data{}</code></a>·record·and·call298 the·handshake·in·a·<a·href="alt_dist.html#hs_data_record"><code·class="inline">#hs_data{}</code></a>·record·and·call
299 <code·class="inline">dist_util:handshake_other_started(HsData)</code>·with·this·record.</p><p><code·class="inline">dist_util:handshake_other_started(HsData)</code>·will·perform·the·handshake·and·if299 <code·class="inline">dist_util:handshake_other_started(HsData)</code>·with·this·record.</p><p><code·class="inline">dist_util:handshake_other_started(HsData)</code>·will·perform·the·handshake·and·if
300 the·handshake·successfully·completes·this·process·will·then·continue·in·a300 the·handshake·successfully·completes·this·process·will·then·continue·in·a
301 connection·supervisor·loop·as·long·as·the·connection·is·up.</p></li><li><pre·id="setup"><code·class="makeup·erlang"·translate="no"><span·class="nf">setup</span><span·class="p"·data-group-id="0157281982-1">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyNode</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·153,·SHA:·7c11c0b5cdc3fbd26f42f434cafb166c53d1714c6798e693e2832773c7c02bee·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">301 connection·supervisor·loop·as·long·as·the·connection·is·up.</p></li><li><pre·id="setup"><code·class="makeup·erlang"·translate="no"><span·class="nf">setup</span><span·class="p"·data-group-id="9122138076-1">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyNode</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·153,·SHA:·b9f6fa123f5c6e4375995d7953e3c987fb6072c6b4883a9c806615aa82d8e4a3·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
302 </span><span·class="err"> </span><span·class="err"> </span><span·class="n">ConnectionSupervisorPid</span></code></pre><p><code·class="inline">setup/5</code>·should·spawn·a·process·that·connects·to·<code·class="inline">Node</code>.·When·connection·has302 </span><span·class="err"> </span><span·class="err"> </span><span·class="n">ConnectionSupervisorPid</span></code></pre><p><code·class="inline">setup/5</code>·should·spawn·a·process·that·connects·to·<code·class="inline">Node</code>.·When·connection·has
303 been·established·it·should·perform·the·Erlang·distribution·handshake·for·the303 been·established·it·should·perform·the·Erlang·distribution·handshake·for·the
304 connection.·If·the·handshake·successfully·completes·it·should·continue·to304 connection.·If·the·handshake·successfully·completes·it·should·continue·to
305 function·as·a·connection·supervisor.·This·process·should·preferably·execute·on305 function·as·a·connection·supervisor.·This·process·should·preferably·execute·on
306 <code·class="inline">max</code>·priority·and·should·be·linked·to·the·caller.·The306 <code·class="inline">max</code>·priority·and·should·be·linked·to·the·caller.·The
307 <code·class="inline">dist_util:net_ticker_spawn_options()</code>·function·can·be·called·to·get·spawn307 <code·class="inline">dist_util:net_ticker_spawn_options()</code>·function·can·be·called·to·get·spawn
308 options·suitable·for·this·process·which·can·be·passed·directly·to308 options·suitable·for·this·process·which·can·be·passed·directly·to
Offset 320, 23 lines modifiedOffset 320, 23 lines modified
320 may·not·be·the·process·registered·as·<code·class="inline">net_kernel</code>)·and·is·in·this·document320 may·not·be·the·process·registered·as·<code·class="inline">net_kernel</code>)·and·is·in·this·document
321 identified·as·<code·class="inline">Kernel</code>.</p><p>This·function·should,·besides·spawning·the·connection·supervisor,·also·create321 identified·as·<code·class="inline">Kernel</code>.</p><p>This·function·should,·besides·spawning·the·connection·supervisor,·also·create
322 a·distribution·controller.·The·distribution·controller·is·either·a·process·or322 a·distribution·controller.·The·distribution·controller·is·either·a·process·or
323 a·port·which·is·responsible·for·dispatching·traffic.</p><p>The·created·process·should·provide·callbacks·and·other·information·needed·for323 a·port·which·is·responsible·for·dispatching·traffic.</p><p>The·created·process·should·provide·callbacks·and·other·information·needed·for
324 the·handshake·in·a·<a·href="alt_dist.html#hs_data_record"><code·class="inline">#hs_data{}</code></a>·record·and·call324 the·handshake·in·a·<a·href="alt_dist.html#hs_data_record"><code·class="inline">#hs_data{}</code></a>·record·and·call
325 <code·class="inline">dist_util:handshake_we_started(HsData)</code>·with·this·record.</p><p><code·class="inline">dist_util:handshake_we_started(HsData)</code>·will·perform·the·handshake·and·the325 <code·class="inline">dist_util:handshake_we_started(HsData)</code>·with·this·record.</p><p><code·class="inline">dist_util:handshake_we_started(HsData)</code>·will·perform·the·handshake·and·the
326 handshake·successfully·completes·this·process·will·then·continue·in·a326 handshake·successfully·completes·this·process·will·then·continue·in·a
327 connection·supervisor·loop·as·long·as·the·connection·is·up.</p></li><li><pre·id="close"><code·class="makeup·erlang"·translate="no"><span·class="nf">close</span><span·class="p"·data-group-id="2592972074-1">(</span><span·class="n">Listen</span><span·class="p"·data-group-id="2592972074-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">327 connection·supervisor·loop·as·long·as·the·connection·is·up.</p></li><li><pre·id="close"><code·class="makeup·erlang"·translate="no"><span·class="nf">close</span><span·class="p"·data-group-id="9341929867-1">(</span><span·class="n">Listen</span><span·class="p"·data-group-id="9341929867-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
328 </span><span·class="err"> </span><span·class="err"> </span><span·class="nf">void</span><span·class="p"·data-group-id="2592972074-2">(</span><span·class="p"·data-group-id="2592972074-2">)</span></code></pre><p>Called·in·order·to·close·the·<code·class="inline">Listen</code>·handle·that·originally·was·passed·from328 </span><span·class="err"> </span><span·class="err"> </span><span·class="nf">void</span><span·class="p"·data-group-id="9341929867-2">(</span><span·class="p"·data-group-id="9341929867-2">)</span></code></pre><p>Called·in·order·to·close·the·<code·class="inline">Listen</code>·handle·that·originally·was·passed·from
329 the·<a·href="alt_dist.html#listen"><code·class="inline">listen/1</code></a>·callback.</p></li><li><pre·id="select"><code·class="makeup·erlang"·translate="no"><span·class="nf">select</span><span·class="p"·data-group-id="3851238968-1">(</span><span·class="n">NodeName</span><span·class="p"·data-group-id="3851238968-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">329 the·<a·href="alt_dist.html#listen"><code·class="inline">listen/1</code></a>·callback.</p></li><li><pre·id="select"><code·class="makeup·erlang"·translate="no"><span·class="nf">select</span><span·class="p"·data-group-id="3855338693-1">(</span><span·class="n">NodeName</span><span·class="p"·data-group-id="3855338693-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
330 </span><span·class="err"> </span><span·class="err"> </span><span·class="nf">boolean</span><span·class="p"·data-group-id="3851238968-2">(</span><span·class="p"·data-group-id="3851238968-2">)</span></code></pre><p>Return·<code·class="inline">true</code>·if·the·host·name·part·of·the·<code·class="inline">NodeName</code>·is·valid·for·use·with330 </span><span·class="err"> </span><span·class="err"> </span><span·class="nf">boolean</span><span·class="p"·data-group-id="3855338693-2">(</span><span·class="p"·data-group-id="3855338693-2">)</span></code></pre><p>Return·<code·class="inline">true</code>·if·the·host·name·part·of·the·<code·class="inline">NodeName</code>·is·valid·for·use·with
331 this·protocol;·otherwise,·<code·class="inline">false</code>.</p></li></ul><p>There·are·also·two·optional·functions·that·may·be·exported:</p><ul><li><pre·id="setopts"><code·class="makeup·erlang"·translate="no"><span·class="nf">setopts</span><span·class="p"·data-group-id="2173224430-1">(</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opts</span><span·class="p"·data-group-id="2173224430-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">331 this·protocol;·otherwise,·<code·class="inline">false</code>.</p></li></ul><p>There·are·also·two·optional·functions·that·may·be·exported:</p><ul><li><pre·id="setopts"><code·class="makeup·erlang"·translate="no"><span·class="nf">setopts</span><span·class="p"·data-group-id="8588591101-1">(</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opts</span><span·class="p"·data-group-id="8588591101-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
332 </span><span·class="err"> </span><span·class="err"> </span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="2173224430-2">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Error</span><span·class="p"·data-group-id="2173224430-2">}</span></code></pre><p>The·argument·<code·class="inline">Listen</code>·is·the·handle·originally·passed·from·the332 </span><span·class="err"> </span><span·class="err"> </span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="8588591101-2">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Error</span><span·class="p"·data-group-id="8588591101-2">}</span></code></pre><p>The·argument·<code·class="inline">Listen</code>·is·the·handle·originally·passed·from·the
333 <a·href="alt_dist.html#listen"><code·class="inline">listen/1</code></a>·callback.·The·argument·<code·class="inline">Opts</code>·is·a·list·of333 <a·href="alt_dist.html#listen"><code·class="inline">listen/1</code></a>·callback.·The·argument·<code·class="inline">Opts</code>·is·a·list·of
334 options·to·set·on·future·connections.</p></li><li><pre·id="getopts"><code·class="makeup·erlang"·translate="no"><span·class="nf">getopts</span><span·class="p"·data-group-id="0880081052-1">(</span><span·class="n">Listen</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opts</span><span·class="p"·data-group-id="0880081052-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
335 </span><span·class="err"> </span><span·class="err"> </span><span·class="p"·data-group-id="0880081052-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OptionValues</span><span·class="p"·data-group-id="0880[·...·truncated·by·diffoscope;·len:·405,·SHA:·be2e84f3a3b34e1db1c0ebf55a9765dff0854ef8d05fba3259d8bc230b62d569·...·]334 options·to·set·on·future·connections.</p></li><li><pre·id="getopts"><code·class="makeup·erlang"·translate="no"><span·class="nf">getopts</span><span·class="p"·data-group-id="8938027157-1">(</span><span·class="n">Listen</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·164,·SHA:·f94ed17ba7a4e5b4849023b00c940a989accac59aebccb4cde087e1644b66ced·...·]
 335 </span><span·class="err"> </span><span·class="err"> </span><span·class="p"·data-group-id="8938027157-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OptionValues</span><span·class="p"·data-group-id="8938027157-2">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="8938027157-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Error</span><span·class="p"·data-group-id="8938027157-3">}</span></code></pre><p>The·argument·<code·class="inline">Listen</code>·is·the·handle·originally·passed·from·the
336 <a·href="alt_dist.html#listen"><code·class="inline">listen/1</code></a>·callback.·The·argument·<code·class="inline">Opts</code>·is·a·list·of336 <a·href="alt_dist.html#listen"><code·class="inline">listen/1</code></a>·callback.·The·argument·<code·class="inline">Opts</code>·is·a·list·of
337 options·to·read·for·future·connections.</p></li></ul><p><a·href=""·id="hs_data_record"></a></p><h3·id="the-hs_data-record"·class="section-heading">337 options·to·read·for·future·connections.</p></li></ul><p><a·href=""·id="hs_data_record"></a></p><h3·id="the-hs_data-record"·class="section-heading">
338 ··<a·href="#the-hs_data-record"·class="hover-link">338 ··<a·href="#the-hs_data-record"·class="hover-link">
339 ····<i·class="ri-link-m"·aria-hidden="true"></i>339 ····<i·class="ri-link-m"·aria-hidden="true"></i>
340 ··</a>340 ··</a>
341 ··<span·class="text">The·#hs_data{}·Record</span>341 ··<span·class="text">The·#hs_data{}·Record</span>
342 </h3>342 </h3>
Offset 350, 44 lines modifiedOffset 350, 44 lines modified
350 <a·href="alt_dist.html#accept_connection"><code·class="inline">accept_connection/5</code></a>.</p></li><li><p><strong><code·class="inline"·id="hs_data_other_node">other_node</code></strong>·-·Name·of·the·other·node.·This·field350 <a·href="alt_dist.html#accept_connection"><code·class="inline">accept_connection/5</code></a>.</p></li><li><p><strong><code·class="inline"·id="hs_data_other_node">other_node</code></strong>·-·Name·of·the·other·node.·This·field
351 is·only·mandatory·when·this·node·initiates·the·connection.·That·is,·when351 is·only·mandatory·when·this·node·initiates·the·connection.·That·is,·when
352 connection·is·set·up·via·<a·href="alt_dist.html#setup"><code·class="inline">setup/5</code></a>.</p></li><li><p><strong><code·class="inline"·id="hs_data_this_node">this_node</code></strong>·-·The·node·name·of·this·node.</p></li><li><p><strong><code·class="inline"·id="hs_data_socket">socket</code></strong>·-·The·identifier·of·the·distribution352 connection·is·set·up·via·<a·href="alt_dist.html#setup"><code·class="inline">setup/5</code></a>.</p></li><li><p><strong><code·class="inline"·id="hs_data_this_node">this_node</code></strong>·-·The·node·name·of·this·node.</p></li><li><p><strong><code·class="inline"·id="hs_data_socket">socket</code></strong>·-·The·identifier·of·the·distribution
353 controller.</p></li><li><p><strong><code·class="inline"·id="hs_data_timer">timer</code></strong>·-·The·timer·created·using353 controller.</p></li><li><p><strong><code·class="inline"·id="hs_data_timer">timer</code></strong>·-·The·timer·created·using
354 <code·class="inline">dist_util:start_timer/1</code>.</p></li><li><p><strong><code·class="inline"·id="hs_data_allowed">allowed</code></strong>·-·Information·passed·as·<code·class="inline">Allowed</code>·to354 <code·class="inline">dist_util:start_timer/1</code>.</p></li><li><p><strong><code·class="inline"·id="hs_data_allowed">allowed</code></strong>·-·Information·passed·as·<code·class="inline">Allowed</code>·to
355 <code·class="inline">accept_connection/5</code>.·This·field·is·only·mandatory·when·the·remote·node355 <code·class="inline">accept_connection/5</code>.·This·field·is·only·mandatory·when·the·remote·node
356 initiated·the·connection.·That·is,·when·the·connection·is·set·up·via356 initiated·the·connection.·That·is,·when·the·connection·is·set·up·via
357 <a·href="alt_dist.html#accept_connection"><code·class="inline">accept_connection/5</code></a>.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_send">f_send</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="2320020910-1">(</span><span·class="n">DistCtrlr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="2320020910-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="2320020910-2">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Error</span><span·class="p"·data-group-id="2320020910-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller·and·<code·class="inline">Data</code> 
358 is·io·data·to·pass·to·the·other·side.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_recv">f_recv</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><s[·...·truncated·by·diffoscope;·len:·945,·SHA:·2a0ebde2f22e976c83f806cfed8051d97d1dcd0c9340fa6dc6315ee2570b3d5d·...·]357 <a·href="alt_dist.html#accept_connection"><code·class="inline">accept_connection/5</code></a>.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_send">f_send</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·[·...·truncated·by·diffoscope;·len:·809,·SHA:·3bd33f0908d13f5dabb841ffe618870635f70dc53ebba43f7980f718fe07e08d·...·]
 358 is·io·data·to·pass·to·the·other·side.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_recv">f_recv</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0182273273-1">(</span><span·class="n">DistCtrlr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Length</span><span·class="p"·data-group-id="0182273273-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0182273273-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Packet</span><span·class="p"·data-group-id="0182273273-2">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0182273273-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="0182273273-3">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller.·If
359 <code·class="inline">Length</code>·is·<code·class="inline">0</code>,·all·available·bytes·should·be·returned.·If·<code·class="inline">Length·&gt;·0</code>,359 <code·class="inline">Length</code>·is·<code·class="inline">0</code>,·all·available·bytes·should·be·returned.·If·<code·class="inline">Length·&gt;·0</code>,
360 exactly·<code·class="inline">Length</code>·bytes·should·be·returned,·or·an·error;·possibly·discarding360 exactly·<code·class="inline">Length</code>·bytes·should·be·returned,·or·an·error;·possibly·discarding
361 less·than·<code·class="inline">Length</code>·bytes·of·data·when·the·connection·is·closed·from·the·other361 less·than·<code·class="inline">Length</code>·bytes·of·data·when·the·connection·is·closed·from·the·other
362 side.·It·is·used·for·passive·receive·of·data·from·the·other·end.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_setopts_pre_nodeup">f_setopts_pre_nodeup</code></strong>·-·A·fun·with·the362 side.·It·is·used·for·passive·receive·of·data·from·the·other·end.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_setopts_pre_nodeup">f_setopts_pre_nodeup</code></strong>·-·A·fun·with·the
363 following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7355520038-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="7355520038-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">|</span[·...·truncated·by·diffoscope;·len:·224,·SHA:·e5e455bbedeb815ae04a69cb5587f2165499e65d918848b915db0e1691dc428b·...·]-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller.·Called363 following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="1053981193-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="1053981193-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">|</span[·...·truncated·by·diffoscope;·len:·224,·SHA:·f1309aaea92549cf09a585e2e80847566fe2e97fe40c7bbcefafa5779b8826f4·...·]-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller.·Called
364 just·before·the·distribution·channel·is·taken·up·for·normal·traffic.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_setopts_post_nodeup">f_setopts_post_nodeup</code></strong>·-·A·fun·with364 just·before·the·distribution·channel·is·taken·up·for·normal·traffic.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_setopts_post_nodeup">f_setopts_post_nodeup</code></strong>·-·A·fun·with
365 the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="4144681600-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="4144681600-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">|</span[·...·truncated·by·diffoscope;·len:·223,·SHA:·3e56ff725a66fdb38005b5f178985c2b7a4c307509882c748bf1cc58242c6b6f·...·]0-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller.·Called365 the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8361127380-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="8361127380-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">|</span[·...·truncated·by·diffoscope;·len:·223,·SHA:·08bafdfcf7b9c22562889c140a94b41cd0c9eaecfbf65edb3e9c5388ba5a9aba·...·]0-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller.·Called
366 just·after·distribution·channel·has·been·taken·up·for·normal·traffic.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_getll">f_getll</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="2805347439-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="2805347439-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">ID</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller·and·<code·class="inline">ID</code>·is366 just·after·distribution·channel·has·been·taken·up·for·normal·traffic.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_getll">f_getll</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="9354756106-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="9354756106-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">ID</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller·and·<code·class="inline">ID</code>·is
367 the·identifier·of·the·low·level·entity·that·handles·the·connection·(often367 the·identifier·of·the·low·level·entity·that·handles·the·connection·(often
368 <code·class="inline">DistCtrlr</code>·itself).</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_address">f_address</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0590506689-1">(</span><span·class="n">DistCtrlr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="0590506689-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">NetAddress</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller,·<code·class="inline">Node</code>·is368 <code·class="inline">DistCtrlr</code>·itself).</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_f_address">f_address</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0662576422-1">(</span><span·class="n">DistCtrlr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="0662576422-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">NetAddress</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller,·<code·class="inline">Node</code>·is
369 the·node·name·of·the·node·on·the·other·end,·and·<code·class="inline">NetAddress</code>·is·a369 the·node·name·of·the·node·on·the·other·end,·and·<code·class="inline">NetAddress</code>·is·a
370 <code·class="inline">#net_address{}</code>·record·with·information·about·the·address·for·the·<code·class="inline">Node</code>·on370 <code·class="inline">#net_address{}</code>·record·with·information·about·the·address·for·the·<code·class="inline">Node</code>·on
371 the·other·end·of·the·connection.·The·<code·class="inline">#net_address{}</code>·record·is·defined·in371 the·other·end·of·the·connection.·The·<code·class="inline">#net_address{}</code>·record·is·defined·in
372 <code·class="inline">kernel/include/net_address.hrl</code>.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_mf_tick">mf_tick</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="5955425009-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="5955425009-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">void</span><span·class="p"·data-group-id="5955425009-2">[·...·truncated·by·diffoscope;·len:·49,·SHA:·cdd52268a08e95d6606399c86074fc61963c483f20d5a10fa5b8004cb4b297f6·...·]-2">)</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller.·This372 <code·class="inline">kernel/include/net_address.hrl</code>.</p><p>Only·used·during·handshake·phase.</p></li><li><p><strong><code·class="inline"·id="hs_data_mf_tick">mf_tick</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="3499337397-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="3499337397-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">void</span><span·class="p"·data-group-id="3499337397-2">[·...·truncated·by·diffoscope;·len:·49,·SHA:·e440de579970e0f44909fc016065d2849f6bd1ade892d9c55db38d047ad635e1·...·]-2">)</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller.·This
373 function·should·send·information·over·the·connection·that·is·not·interpreted373 function·should·send·information·over·the·connection·that·is·not·interpreted
374 by·the·other·end·while·increasing·the·statistics·of·received·packets·on·the374 by·the·other·end·while·increasing·the·statistics·of·received·packets·on·the
375 other·end.·This·is·usually·implemented·by·sending·an·empty·packet.</p><blockquote><h4·class="info">Note</h4><p>It·is·of·vital·importance·that·this·operation·does·not·block·the·caller·for375 other·end.·This·is·usually·implemented·by·sending·an·empty·packet.</p><blockquote><h4·class="info">Note</h4><p>It·is·of·vital·importance·that·this·operation·does·not·block·the·caller·for
376 a·long·time.·This·since·it·is·called·from·the·connection·supervisor.</p></blockquote><p>Used·when·connection·is·up.</p></li><li><p><strong><code·class="inline"·id="hs_data_mf_getstat">mf_getstat</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0997179759-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="0997179759-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0997179759-2">{</span><span·class="ss">ok<[·...·truncated·by·diffoscope;·len:·280,·SHA:·d56097e1a933671f897f80fb7b3834679ded9867f68a4ec574659b425932b663·...·]-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller,·<code·class="inline">Received</code>376 a·long·time.·This·since·it·is·called·from·the·connection·supervisor.</p></blockquote><p>Used·when·connection·is·up.</p></li><li><p><strong><code·class="inline"·id="hs_data_mf_getstat">mf_getstat</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7479133980-1">(</span><span·class="n">DistCtrlr</span><span·class="p"·data-group-id="7479133980-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7479133980-2">{</span><span·class="ss">ok<[·...·truncated·by·diffoscope;·len:·280,·SHA:·dbf7f155f1f1ce1dee44201292e23793bf8c4f81333274d2816b7a370beca342·...·]-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller,·<code·class="inline">Received</code>
377 is·received·packets,·<code·class="inline">Sent</code>·is·sent·packets,·and·<code·class="inline">PendSend</code>·is·amount·of·data377 is·received·packets,·<code·class="inline">Sent</code>·is·sent·packets,·and·<code·class="inline">PendSend</code>·is·amount·of·data
378 in·queue·to·be·sent·(typically·in·bytes,·but·<code·class="inline">dist_util</code>·only·checks·whether378 in·queue·to·be·sent·(typically·in·bytes,·but·<code·class="inline">dist_util</code>·only·checks·whether
379 the·value·is·non-zero·to·know·there·is·data·in·queue)·or·a·<a·href="erlang.html#t:boolean/0"><code·class="inline">boolean/0</code></a>379 the·value·is·non-zero·to·know·there·is·data·in·queue)·or·a·<a·href="erlang.html#t:boolean/0"><code·class="inline">boolean/0</code></a>
380 indicating·whether·there·are·packets·in·queue·to·be·sent.</p><blockquote><h4·class="info">Note</h4><p>It·is·of·vital·importance·that·this·operation·does·not·block·the·caller·for380 indicating·whether·there·are·packets·in·queue·to·be·sent.</p><blockquote><h4·class="info">Note</h4><p>It·is·of·vital·importance·that·this·operation·does·not·block·the·caller·for
381 a·long·time.·This·since·it·is·called·from·the·connection·supervisor.</p></blockquote><p>Used·when·connection·is·up.</p></li><li><p><strong><code·class="inline"·id="hs_data_request_type">request_type</code></strong>·-·The·request·<code·class="inline">Type</code>·as·passed·to381 a·long·time.·This·since·it·is·called·from·the·connection·supervisor.</p></blockquote><p>Used·when·connection·is·up.</p></li><li><p><strong><code·class="inline"·id="hs_data_request_type">request_type</code></strong>·-·The·request·<code·class="inline">Type</code>·as·passed·to
382 <a·href="alt_dist.html#setup"><code·class="inline">setup/5</code></a>.·This·is·only·mandatory·when·the·connection·has382 <a·href="alt_dist.html#setup"><code·class="inline">setup/5</code></a>.·This·is·only·mandatory·when·the·connection·has
383 been·initiated·by·this·node.·That·is,·the·connection·is·set·up·via·<code·class="inline">setup/5</code>.</p></li><li><p><strong><code·class="inline"·id="hs_data_mf_setopts">mf_setopts</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="2697623641-1">(</span><span·class="n">DistCtrl</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opts</span><span·class="p"·data-group-id="2697623641-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·297,·SHA:·9ad394f4f021467e05f2a7e20792a64f074c4539bf6219cccc9b7aa3dd852731·...·]1-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller·and·<code·class="inline">Opts</code>383 been·initiated·by·this·node.·That·is,·the·connection·is·set·up·via·<code·class="inline">setup/5</code>.</p></li><li><p><strong><code·class="inline"·id="hs_data_mf_setopts">mf_setopts</code></strong>·-·A·fun·with·the·following·signature:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0132209751-1">(</span><span·class="n">DistCtrl</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opts</span><span·class="p"·data-group-id="0132209751-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·297,·SHA:·c4f0656bc9cb0111d533afa4471bdea31b5d9bab5c4bf811fc4a78166706df59·...·]1-2">}</span></code></pre><p>where·<code·class="inline">DistCtrlr</code>·is·the·identifier·of·the·distribution·controller·and·<code·class="inline">Opts</code>
Max diff block lines reached; 3566/55489 bytes (6.43%) of diff not shown.
780 B
html2text {}
Max HTML report size reached
1.31 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/api-reference.html
    
Offset 241, 15 lines modifiedOffset 241, 15 lines modified
241 ······<p·class="built-using">241 ······<p·class="built-using">
242 ········Built·using242 ········Built·using
243 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the243 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
244 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>244 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
245 ······</p>245 ······</p>
246 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>246 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
247 ····</footer>247 ····</footer>
248 ··</div>248 ··</div>
249 </main>249 </main>
250 </div>250 </div>
251 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>251 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
252 <script>252 <script>
253 ··document.addEventListener("DOMContentLoaded",·function·()·{253 ··document.addEventListener("DOMContentLoaded",·function·()·{
502 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/atomics.html
    
Offset 663, 15 lines modifiedOffset 663, 15 lines modified
663 ······<p·class="built-using">663 ······<p·class="built-using">
664 ········Built·using664 ········Built·using
665 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the665 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
666 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>666 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
667 ······</p>667 ······</p>
668 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>668 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
669 ····</footer>669 ····</footer>
670 ··</div>670 ··</div>
671 </main>671 </main>
672 </div>672 </div>
673 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>673 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
674 <script>674 <script>
675 ··document.addEventListener("DOMContentLoaded",·function·()·{675 ··document.addEventListener("DOMContentLoaded",·function·()·{
588 B
html2text {}
Max HTML report size reached
3.83 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/automaticyieldingofccode.html
    
Offset 209, 17 lines modifiedOffset 209, 17 lines modified
209 they·have·to·follow·certain·restrictions.·The·convention·for·making209 they·have·to·follow·certain·restrictions.·The·convention·for·making
210 this·clear·is·to·have·a·comment·above·the·function·that·explains·that210 this·clear·is·to·have·a·comment·above·the·function·that·explains·that
211 the·function·is·transformed·by·YCF·(see·<code·class="inline">maps_values_1_helper</code>·in211 the·function·is·transformed·by·YCF·(see·<code·class="inline">maps_values_1_helper</code>·in
212 <code·class="inline">erl_map.c</code>·for·an·example).·If·only·the·transformed·version·of·the212 <code·class="inline">erl_map.c</code>·for·an·example).·If·only·the·transformed·version·of·the
213 function·is·used,·the·convention·is·to·&quot;comment·out&quot;·the·source·for·the213 function·is·used,·the·convention·is·to·&quot;comment·out&quot;·the·source·for·the
214 function·by·surrounding·it·with·the·following·<code·class="inline">#ifdef</code>·(this·way,·one214 function·by·surrounding·it·with·the·following·<code·class="inline">#ifdef</code>·(this·way,·one
215 will·not·get·warnings·about·unused·functions):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">#</span><span·class="ss">ifdef</span><span·class="w">·</span><span·class="n">INCLUDE_YCF_TRANSFORMED_ONLY_FUNCTIONS</span><span·class="w">215 will·not·get·warnings·about·unused·functions):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">#</span><span·class="ss">ifdef</span><span·class="w">·</span><span·class="n">INCLUDE_YCF_TRANSFORMED_ONLY_FUNCTIONS</span><span·class="w">
216 </span><span·class="ss">void</span><span·class="w">·</span><span·class="nf">my_fun</span><span·class="p"·data-group-id="5287940195-1">(</span><span·class="p"·data-group-id="5287940195-1">)</span><span·class="w">·</span><span·class="p"·data-group-id="5287940195-2">{</span><span·class="w">216 </span><span·class="ss">void</span><span·class="w">·</span><span·class="nf">my_fun</span><span·class="p"·data-group-id="0888114892-1">(</span><span·class="p"·data-group-id="0888114892-1">)</span><span·class="w">·</span><span·class="p"·data-group-id="0888114892-2">{</span><span·class="w">
217 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">217 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
218 </span><span·class="p"·data-group-id="5287940195-2">}</span><span·class="w">218 </span><span·class="p"·data-group-id="0888114892-2">}</span><span·class="w">
219 </span><span·class="p">#</span><span·class="ss">endif</span><span·class="w">·</span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">INCLUDE_YCF_TRANSFORMED_ONLY_FUNCTIONS</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span></code></pre><p>While·editing·the·function·one·can·define219 </span><span·class="p">#</span><span·class="ss">endif</span><span·class="w">·</span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">INCLUDE_YCF_TRANSFORMED_ONLY_FUNCTIONS</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span></code></pre><p>While·editing·the·function·one·can·define
220 <code·class="inline">INCLUDE_YCF_TRANSFORMED_ONLY_FUNCTIONS</code>·so·that·one·can·see·errors220 <code·class="inline">INCLUDE_YCF_TRANSFORMED_ONLY_FUNCTIONS</code>·so·that·one·can·see·errors
221 and·warnings·in·the·non-transformed·source.</p><h3·id="where-to-place-ycf-transformed-functions"·class="section-heading">221 and·warnings·in·the·non-transformed·source.</p><h3·id="where-to-place-ycf-transformed-functions"·class="section-heading">
222 ··<a·href="#where-to-place-ycf-transformed-functions"·class="hover-link">222 ··<a·href="#where-to-place-ycf-transformed-functions"·class="hover-link">
223 ····<i·class="ri-link-m"·aria-hidden="true"></i>223 ····<i·class="ri-link-m"·aria-hidden="true"></i>
224 ··</a>224 ··</a>
225 ··<span·class="text">Where·to·Place·YCF·Transformed·Functions</span>225 ··<span·class="text">Where·to·Place·YCF·Transformed·Functions</span>
Offset 365, 15 lines modifiedOffset 365, 15 lines modified
365 ······<p·class="built-using">365 ······<p·class="built-using">
366 ········Built·using366 ········Built·using
367 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the367 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
368 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>368 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
369 ······</p>369 ······</p>
370 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>370 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
371 ····</footer>371 ····</footer>
372 ··</div>372 ··</div>
373 </main>373 </main>
374 </div>374 </div>
375 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>375 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
376 <script>376 <script>
377 ··document.addEventListener("DOMContentLoaded",·function·()·{377 ··document.addEventListener("DOMContentLoaded",·function·()·{
663 B
html2text {}
Max HTML report size reached
284 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/beam_makeops.html
Max HTML report size reached
45.9 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/beamasm.html
    
Offset 145, 26 lines modifiedOffset 145, 26 lines modified
145 </h2>145 </h2>
146 <p>The·code·is·loaded·very·similarly·to·how·it·is·loaded·for·the·interpreter.·Each·beam146 <p>The·code·is·loaded·very·similarly·to·how·it·is·loaded·for·the·interpreter.·Each·beam
147 file·is·parsed·and·then·optimized·through·the·transformations·described·in147 file·is·parsed·and·then·optimized·through·the·transformations·described·in
148 <a·href="beam_makeops.html#defining-transformation-rules">beam_makeops</a>.·The·transformations148 <a·href="beam_makeops.html#defining-transformation-rules">beam_makeops</a>.·The·transformations
149 used·in·BeamAsm·are·much·simpler·than·the·interpreter's,·as·most·of·the149 used·in·BeamAsm·are·much·simpler·than·the·interpreter's,·as·most·of·the
150 transformations·for·the·interpreter·are·done·only·to·eliminate·the·instruction150 transformations·for·the·interpreter·are·done·only·to·eliminate·the·instruction
151 dispatch·overhead.</p><p>Then·each·instruction·is·encoded·using·the·C++·functions·in·the151 dispatch·overhead.</p><p>Then·each·instruction·is·encoded·using·the·C++·functions·in·the
152 <code·class="inline">jit/$ARCH/instr_*.cpp</code>·files.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">void</span><span·class="w">·</span><span·class="n">BeamModuleAssembler</span><span·class="p">:</span><span·class="p">:</span><span·class="nf">emit_is_nonempty_list</span><span·class="p"·data-group-id="5698302992-1">(</span><span·class="ss">const</span><span·class="w">·</span><span·class="n">ArgVal</span><span·class="w">·</span><span·class="err">&amp;</span><span·class="n">Fail</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">const<[·...·truncated·by·diffoscope;·len:·257,·SHA:·6d06cd009d29672df56a7bb24f5de22e521ea4487cbd8586d8441cb827792cde·...·]-2">{</span><span·class="w">152 <code·class="inline">jit/$ARCH/instr_*.cpp</code>·files.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">void</span><span·class="w">·</span><span·class="n">BeamModuleAssembler</span><span·class="p">:</span><span·class="p">:</span><span·class="nf">emit_is_nonempty_list</span><span·class="p"·data-group-id="4440115003-1">(</span><span·class="ss">const</span><span·class="w">·</span><span·class="n">ArgVal</span><span·class="w">·</span><span·class="err">&amp;</span><span·class="n">Fail</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">const<[·...·truncated·by·diffoscope;·len:·257,·SHA:·88c0080f02d80bebedf2fa74e673cbf6725582741d3a53a38468b2f337e4fe1e·...·]-2">{</span><span·class="w">
153 ··</span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">test</span><span·class="p"·data-group-id="5698302992-3">(</span><span·class="nf">getArgRef</span><span·class="p"·data-group-id="5698302992-4">(</span><span·class="n">Src</span><span·class="p"·data-group-id="5698302992-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">imm<[·...·truncated·by·diffoscope;·len:·327,·SHA:·b499eededa8418ee6618094db101b72e7bdb4f7bf5d9e2bb3cf5a0af1a7a212c·...·]-3">)</span><span·class="p">;</span><span·class="w">153 ··</span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">test</span><span·class="p"·data-group-id="4440115003-3">(</span><span·class="nf">getArgRef</span><span·class="p"·data-group-id="4440115003-4">(</span><span·class="n">Src</span><span·class="p"·data-group-id="4440115003-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">imm<[·...·truncated·by·diffoscope;·len:·327,·SHA:·e8fd224742c2bc48fb4cd0953068e240f328642c3bae4495a4a4d7f71b5eddd6·...·]-3">)</span><span·class="p">;</span><span·class="w">
154 ··</span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">jne</span><span·class="p"·data-group-id="5698302992-6">(</span><span·class="ss">labels</span><span·class="p"·data-group-id="5698302992-7">[</span><span·class="n">Fail</span><span·class="p">.</span><span·class="nf">getLabel</span><span·class="p"·data-group-id="5698302992-8">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·132,·SHA:·82096b73cd0137fa3a0c272ceaebd87d98aa5d0d4a73994e4b5b287ae899b5be·...·]-6">)</span><span·class="p">;</span><span·class="w">154 ··</span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">jne</span><span·class="p"·data-group-id="4440115003-6">(</span><span·class="ss">labels</span><span·class="p"·data-group-id="4440115003-7">[</span><span·class="n">Fail</span><span·class="p">.</span><span·class="nf">getLabel</span><span·class="p"·data-group-id="4440115003-8">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·132,·SHA:·e66d04f5fe09e569c75e7b3b8be85472fd75aa89e28bc5d0a928333813870ed9·...·]-6">)</span><span·class="p">;</span><span·class="w">
155 </span><span·class="p"·data-group-id="5698302992-2">}</span></code></pre><p><a·href="https://github.com/asmjit/asmjit">asmjit</a>·provides·a·fairly·straightforward155 </span><span·class="p"·data-group-id="4440115003-2">}</span></code></pre><p><a·href="https://github.com/asmjit/asmjit">asmjit</a>·provides·a·fairly·straightforward
156 mapping·from·a·C++·function·call·to·the·x86·assembly·instruction.·The·above156 mapping·from·a·C++·function·call·to·the·x86·assembly·instruction.·The·above
157 instruction·tests·if·the·value·in·the·<code·class="inline">Src</code>·register·is·a·non-empty·list·and·if157 instruction·tests·if·the·value·in·the·<code·class="inline">Src</code>·register·is·a·non-empty·list·and·if
158 it·is·not·then·it·jumps·to·the·fail·label.</p><p>For·comparison,·the·interpreter·has·8·combinations·and·specializations·of158 it·is·not·then·it·jumps·to·the·fail·label.</p><p>For·comparison,·the·interpreter·has·8·combinations·and·specializations·of
159 this·implementation·to·minimize·the·instruction·dispatch·overhead·for159 this·implementation·to·minimize·the·instruction·dispatch·overhead·for
160 common·patterns.</p><p>The·original·register·allocation·done·by·the·Erlang·compiler·is·used·to·manage·the160 common·patterns.</p><p>The·original·register·allocation·done·by·the·Erlang·compiler·is·used·to·manage·the
161 liveness·of·values·and·the·physical·registers·are·statically·allocated·to·keep161 liveness·of·values·and·the·physical·registers·are·statically·allocated·to·keep
162 the·necessary·process·state.·At·the·moment·this·is·the·static·register162 the·necessary·process·state.·At·the·moment·this·is·the·static·register
163 allocation·on·x86-64:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">rbx</span><span·class="p">:</span><span·class="w">·</span><span·class="n">ErtsSchedulerRegisters</span><span·class="w">·</span><span·class="nf">struct</span><span·class="w">·</span><span·class="p"·data-group-id="0314636671-1">(</span><span·class="ss">contains</span><span·class="w">·</span><span·class="ss">x</span><span·class="o">/</span><span·class="nb">float</span><span·class="w">·</span><span·class="ss">registers</span><span·class="w">·</span><span·class="ow">an[·...·truncated·by·diffoscope;·len:·156,·SHA:·853380b56c379f262a82983efe010422a6bfbd12268ab53f2faeca77466e2ba0·...·]1-1">)</span><span·class="w">163 allocation·on·x86-64:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">rbx</span><span·class="p">:</span><span·class="w">·</span><span·class="n">ErtsSchedulerRegisters</span><span·class="w">·</span><span·class="nf">struct</span><span·class="w">·</span><span·class="p"·data-group-id="1628523441-1">(</span><span·class="ss">contains</span><span·class="w">·</span><span·class="ss">x</span><span·class="o">/</span><span·class="nb">float</span><span·class="w">·</span><span·class="ss">registers</span><span·class="w">·</span><span·class="ow">an[·...·truncated·by·diffoscope;·len:·156,·SHA:·8f7add447b9e789e255b7a826e200018b027f4c2a85fa601c34a864288167406·...·]1-1">)</span><span·class="w">
164 </span><span·class="nc">rbp</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Current</span><span·class="w">·</span><span·class="ss">frame</span><span·class="w">·</span><span·class="ss">pointer</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="err">`</span><span·class="ss">perf</span><span·class="err">`</span><span·class="w">·</span><span·class="ss">support</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">enabled</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">otherwise</span><span·class="w">·</span><span·class="ss">this</span><span·class="w">164 </span><span·class="nc">rbp</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Current</span><span·class="w">·</span><span·class="ss">frame</span><span·class="w">·</span><span·class="ss">pointer</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="err">`</span><span·class="ss">perf</span><span·class="err">`</span><span·class="w">·</span><span·class="ss">support</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">enabled</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">otherwise</span><span·class="w">·</span><span·class="ss">this</span><span·class="w">
165 ·····</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">an</span><span·class="w">·</span><span·class="ss">optional</span><span·class="w">·</span><span·class="ss">save</span><span·class="w">·</span><span·class="ss">slot</span><span·class="w">·</span><span·class="ss">for</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">Erlang</span><span·class="w">·</span><span·class="ss">stack</span><span·class="w">·</span><span·class="ss">pointer</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="ss">executing</span><span·class="w">·</span><span·class="n">C</span><span·class="w">165 ·····</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">an</span><span·class="w">·</span><span·class="ss">optional</span><span·class="w">·</span><span·class="ss">save</span><span·class="w">·</span><span·class="ss">slot</span><span·class="w">·</span><span·class="ss">for</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">Erlang</span><span·class="w">·</span><span·class="ss">stack</span><span·class="w">·</span><span·class="ss">pointer</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="ss">executing</span><span·class="w">·</span><span·class="n">C</span><span·class="w">
166 ·····</span><span·class="ss">code</span><span·class="p">.</span><span·class="w">166 ·····</span><span·class="ss">code</span><span·class="p">.</span><span·class="w">
167 </span><span·class="nc">r12</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Active</span><span·class="w">·</span><span·class="ss">code</span><span·class="w">·</span><span·class="ss">index</span><span·class="w">167 </span><span·class="nc">r12</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Active</span><span·class="w">·</span><span·class="ss">code</span><span·class="w">·</span><span·class="ss">index</span><span·class="w">
168 </span><span·class="nc">r13</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Current</span><span·class="w">·</span><span·class="ss">running</span><span·class="w">·</span><span·class="ss">process</span><span·class="w">168 </span><span·class="nc">r13</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Current</span><span·class="w">·</span><span·class="ss">running</span><span·class="w">·</span><span·class="ss">process</span><span·class="w">
169 </span><span·class="nc">r14</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Remaining</span><span·class="w">·</span><span·class="ss">reductions</span><span·class="w">169 </span><span·class="nc">r14</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Remaining</span><span·class="w">·</span><span·class="ss">reductions</span><span·class="w">
170 </span><span·class="nc">r15</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Erlang</span><span·class="w">·</span><span·class="ss">heap</span><span·class="w">·</span><span·class="ss">pointer</span></code></pre><p>Note·that·all·of·these·are·callee·save·registers·under·the·System·V·and·Windows170 </span><span·class="nc">r15</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Erlang</span><span·class="w">·</span><span·class="ss">heap</span><span·class="w">·</span><span·class="ss">pointer</span></code></pre><p>Note·that·all·of·these·are·callee·save·registers·under·the·System·V·and·Windows
Offset 183, 21 lines modifiedOffset 183, 21 lines modified
183 shared·and·only·the·arguments·to·the·instructions·vary.·Using·as·little·memory·as183 shared·and·only·the·arguments·to·the·instructions·vary.·Using·as·little·memory·as
184 possible·has·many·advantages;·less·memory·is·used,·loading·time·decreases,184 possible·has·many·advantages;·less·memory·is·used,·loading·time·decreases,
185 higher·cache·hit-rate.</p><p>In·BeamAsm·we·need·to·achieve·something·similar·since·the·load-time·of·a·module185 higher·cache·hit-rate.</p><p>In·BeamAsm·we·need·to·achieve·something·similar·since·the·load-time·of·a·module
186 scales·almost·linearly·with·the·amount·of·memory·it·uses.·Early·BeamAsm·prototypes186 scales·almost·linearly·with·the·amount·of·memory·it·uses.·Early·BeamAsm·prototypes
187 used·about·double·the·amount·of·memory·for·code·as·the·interpreter,·while·current187 used·about·double·the·amount·of·memory·for·code·as·the·interpreter,·while·current
188 versions·use·about·10%·more.·How·was·this·achieved?</p><p>In·BeamAsm·we·heavily·use·shared·code·fragments·to·try·to·emit·as·much·code·as188 versions·use·about·10%·more.·How·was·this·achieved?</p><p>In·BeamAsm·we·heavily·use·shared·code·fragments·to·try·to·emit·as·much·code·as
189 possible·as·global·shared·fragments·instead·of·duplicating·the·code·unnecessarily.189 possible·as·global·shared·fragments·instead·of·duplicating·the·code·unnecessarily.
190 For·instance,·the·return·instruction·looks·something·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Label</span><span·class="w">·</span><span·class="ss">yield</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">newLabel</span><span·class="p"·data-group-id="4249972020-1">(</span><span·class="p"·data-group-id="4249972020-1">)</span><span·class="p">;</span><span·class="w">190 For·instance,·the·return·instruction·looks·something·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Label</span><span·class="w">·</span><span·class="ss">yield</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">newLabel</span><span·class="p"·data-group-id="3034051295-1">(</span><span·class="p"·data-group-id="3034051295-1">)</span><span·class="p">;</span><span·class="w">
  
191 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Decrement</span><span·class="w">·</span><span·class="ss">reduction</span><span·class="w">·</span><span·class="ss">counter</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">191 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Decrement</span><span·class="w">·</span><span·class="ss">reduction</span><span·class="w">·</span><span·class="ss">counter</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">
192 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">dec</span><span·class="p"·data-group-id="4249972020-2">(</span><span·class="n">FCALLS</span><span·class="p"·data-group-id="4249972020-2">)</span><span·class="p">;</span><span·class="w">192 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">dec</span><span·class="p"·data-group-id="3034051295-2">(</span><span·class="n">FCALLS</span><span·class="p"·data-group-id="3034051295-2">)</span><span·class="p">;</span><span·class="w">
193 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">If</span><span·class="w">·</span><span·class="n">FCALLS</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">jump</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">yield</span><span·class="o">-</span><span·class="ss">on</span><span·class="o">-</span><span·class="ss">return</span><span·class="w">·</span><span·class="ss">fragment</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">193 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">If</span><span·class="w">·</span><span·class="n">FCALLS</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">jump</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">yield</span><span·class="o">-</span><span·class="ss">on</span><span·class="o">-</span><span·class="ss">return</span><span·class="w">·</span><span·class="ss">fragment</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">
194 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">jl</span><span·class="p"·data-group-id="4249972020-3">(</span><span·class="nf">resolve_fragment</span><span·class="p"·data-group-id="4249972020-4">(</span><span·class="ss">ga</span><span·class="p">-&gt;</span><span·class="nf">get_dispatch_return</span><span·class="p"·data-group-id="4249972020-5"[·...·truncated·by·diffoscope;·len:·156,·SHA:·edbbffd1f6c8e78d006675c3b3055bb257a0c21cf6e2d27008acce2c2c9806cf·...·]-3">)</span><span·class="p">;</span><span·class="w">194 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">jl</span><span·class="p"·data-group-id="3034051295-3">(</span><span·class="nf">resolve_fragment</span><span·class="p"·data-group-id="3034051295-4">(</span><span·class="ss">ga</span><span·class="p">-&gt;</span><span·class="nf">get_dispatch_return</span><span·class="p"·data-group-id="3034051295-5"[·...·truncated·by·diffoscope;·len:·156,·SHA:·5504cdb82ff00439234eec3185dc5c66fab11849cbf255026b2d909939e8b7e5·...·]-3">)</span><span·class="p">;</span><span·class="w">
195 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">ret</span><span·class="p"·data-group-id="4249972020-6">(</span><span·class="p"·data-group-id="4249972020-6">)</span><span·class="p">;</span></code></pre><p>The·code·above·is·not·exactly·what·is·emitted,·but·close·enough.·The·thing·to·note195 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">ret</span><span·class="p"·data-group-id="3034051295-6">(</span><span·class="p"·data-group-id="3034051295-6">)</span><span·class="p">;</span></code></pre><p>The·code·above·is·not·exactly·what·is·emitted,·but·close·enough.·The·thing·to·note
196 is·that·the·code·for·doing·the·context·switch·is·never·emitted.·Instead,·we·jump196 is·that·the·code·for·doing·the·context·switch·is·never·emitted.·Instead,·we·jump
197 to·a·global·fragment·that·all·return·instructions·share.·This·greatly·reduces197 to·a·global·fragment·that·all·return·instructions·share.·This·greatly·reduces
198 the·amount·of·code·that·has·to·be·emitted·for·each·module.</p><h2·id="running-erlang-code"·class="section-heading">198 the·amount·of·code·that·has·to·be·emitted·for·each·module.</p><h2·id="running-erlang-code"·class="section-heading">
199 ··<a·href="#running-erlang-code"·class="hover-link">199 ··<a·href="#running-erlang-code"·class="hover-link">
200 ····<i·class="ri-link-m"·aria-hidden="true"></i>200 ····<i·class="ri-link-m"·aria-hidden="true"></i>
201 ··</a>201 ··</a>
202 ··<span·class="text">Running·Erlang·code</span>202 ··<span·class="text">Running·Erlang·code</span>
Offset 239, 43 lines modifiedOffset 239, 43 lines modified
239 ··<a·href="#running-c-code"·class="hover-link">239 ··<a·href="#running-c-code"·class="hover-link">
240 ····<i·class="ri-link-m"·aria-hidden="true"></i>240 ····<i·class="ri-link-m"·aria-hidden="true"></i>
241 ··</a>241 ··</a>
242 ··<span·class="text">Running·C·code</span>242 ··<span·class="text">Running·C·code</span>
243 </h2>243 </h2>
244 <p>As·Erlang·stacks·can·be·very·small,·we·have·to·switch·over·to·a·different·stack244 <p>As·Erlang·stacks·can·be·very·small,·we·have·to·switch·over·to·a·different·stack
245 when·we·need·to·execute·C·code·(which·may·expect·a·much·larger·stack).·This·is245 when·we·need·to·execute·C·code·(which·may·expect·a·much·larger·stack).·This·is
246 done·through·<code·class="inline">emit_enter_runtime</code>·and·<code·class="inline">emit_leave_runtime</code>,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">mov_arg</span><span·class="p"·data-group-id="2131700465-1">(</span><span·class="n">ARG4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NumFree</span><span·class="p"·data-group-id="2131700465-1">)</span><span·class="p">;</span><span·class="w">246 done·through·<code·class="inline">emit_enter_runtime</code>·and·<code·class="inline">emit_leave_runtime</code>,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">mov_arg</span><span·class="p"·data-group-id="8429379366-1">(</span><span·class="n">ARG4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NumFree</span><span·class="p"·data-group-id="8429379366-1">)</span><span·class="p">;</span><span·class="w">
  
247 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Move</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">C</span><span·class="w">·</span><span·class="ss">stack</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="ss">swap</span><span·class="w">·</span><span·class="ss">out</span><span·class="w">·</span><span·class="ss">our</span><span·class="w">·</span><span·class="ss">current</span><span·class="w">·</span><span·class="ss">reductions</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stack</span><span·class="o">-</span><span·class="p">,</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">247 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Move</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">C</span><span·class="w">·</span><span·class="ss">stack</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="ss">swap</span><span·class="w">·</span><span·class="ss">out</span><span·class="w">·</span><span·class="ss">our</span><span·class="w">·</span><span·class="ss">current</span><span·class="w">·</span><span·class="ss">reductions</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stack</span><span·class="o">-</span><span·class="p">,</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">
248 ·</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">heap</span><span·class="w">·</span><span·class="ss">pointer</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">process</span><span·class="w">·</span><span·class="ss">structure</span><span·class="p">.</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">248 ·</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">heap</span><span·class="w">·</span><span·class="ss">pointer</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">process</span><span·class="w">·</span><span·class="ss">structure</span><span·class="p">.</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">
249 </span><span·class="ss">emit_enter_runtime</span><span·class="o">&lt;</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eReductions</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eStack</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eHeap</span><span·class="o">&gt;</span><span·class="p"·data-group-id="2131700465-2">(</span><span·class="p"·data-group-id="2131700465-2">)</span><span·class="p">;</span><span·class="w">249 </span><span·class="ss">emit_enter_runtime</span><span·class="o">&lt;</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eReductions</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eStack</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eHeap</span><span·class="o">&gt;</span><span·class="p"·data-group-id="8429379366-2">(</span><span·class="p"·data-group-id="8429379366-2">)</span><span·class="p">;</span><span·class="w">
  
250 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">mov</span><span·class="p"·data-group-id="2131700465-3">(</span><span·class="n">ARG1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">c_p</span><span·class="p"·data-group-id="2131700465-3">)</span><span·class="p">;</span><span·class="w">250 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">mov</span><span·class="p"·data-group-id="8429379366-3">(</span><span·class="n">ARG1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">c_p</span><span·class="p"·data-group-id="8429379366-3">)</span><span·class="p">;</span><span·class="w">
251 </span><span·class="nf">load_x_reg_array</span><span·class="p"·data-group-id="2131700465-4">(</span><span·class="n">ARG2</span><span·class="p"·data-group-id="2131700465-4">)</span><span·class="p">;</span><span·class="w">251 </span><span·class="nf">load_x_reg_array</span><span·class="p"·data-group-id="8429379366-4">(</span><span·class="n">ARG2</span><span·class="p"·data-group-id="8429379366-4">)</span><span·class="p">;</span><span·class="w">
252 </span><span·class="nf">make_move_patch</span><span·class="p"·data-group-id="2131700465-5">(</span><span·class="n">ARG3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">lambdas</span><span·class="p"·data-group-id="2131700465-6">[</span><span·class="n">Fun</span><span·class="p">.</span><span·class="nf">getValue[·...·truncated·by·diffoscope;·len:·262,·SHA:·73343a3e70dc70f04677510061bc248307aca6eda74c623caf96c269ea5bdf4d·...·]-5">)</span><span·class="p">;</span><span·class="w">252 </span><span·class="nf">make_move_patch</span><span·class="p"·data-group-id="8429379366-5">(</span><span·class="n">ARG3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">lambdas</span><span·class="p"·data-group-id="8429379366-6">[</span><span·class="n">Fun</span><span·class="p">.</span><span·class="nf">getValue[·...·truncated·by·diffoscope;·len:·262,·SHA:·7e8f4252ab4a4828865fa6eca4e54bbfa11312f4c13c274bc4cfca80ad297e8f·...·]-5">)</span><span·class="p">;</span><span·class="w">
  
253 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Call</span><span·class="w">·</span><span·class="err">`</span><span·class="ss">new_fun</span><span·class="err">`</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">asserting</span><span·class="w">·</span><span·class="ss">that</span><span·class="w">·</span><span·class="ss">we</span><span·class="err">&#39;</span><span·class="ss">re</span><span·class="w">·</span><span·class="ss">on</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">C</span><span·class="w">·</span><span·class="ss">stack</span><span·class="p">.</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">253 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Call</span><span·class="w">·</span><span·class="err">`</span><span·class="ss">new_fun</span><span·class="err">`</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">asserting</span><span·class="w">·</span><span·class="ss">that</span><span·class="w">·</span><span·class="ss">we</span><span·class="err">&#39;</span><span·class="ss">re</span><span·class="w">·</span><span·class="ss">on</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">C</span><span·class="w">·</span><span·class="ss">stack</span><span·class="p">.</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">
254 </span><span·class="ss">runtime_call</span><span·class="o">&lt;</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="p"·data-group-id="2131700465-8">(</span><span·class="ss">new_fun</span><span·class="p"·data-group-id="2131700465-8">)</span><span·class="p">;</span><span·class="w">254 </span><span·class="ss">runtime_call</span><span·class="o">&lt;</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="p"·data-group-id="8429379366-8">(</span><span·class="ss">new_fun</span><span·class="p"·data-group-id="8429379366-8">)</span><span·class="p">;</span><span·class="w">
  
255 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Move</span><span·class="w">·</span><span·class="ss">back</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">C</span><span·class="w">·</span><span·class="ss">stack</span><span·class="p">,</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="ss">read</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">updated</span><span·class="w">·</span><span·class="ss">values</span><span·class="w">·</span><span·class="ss">from</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">process</span><span·class="w">255 </span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Move</span><span·class="w">·</span><span·class="ss">back</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">C</span><span·class="w">·</span><span·class="ss">stack</span><span·class="p">,</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="ss">read</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">updated</span><span·class="w">·</span><span·class="ss">values</span><span·class="w">·</span><span·class="ss">from</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">process</span><span·class="w">
256 ·</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">structure</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">256 ·</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">structure</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">
257 </span><span·class="ss">emit_leave_runtime</span><span·class="o">&lt;</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eReductions</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eStack</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eHeap</span><span·class="o">&gt;</span><span·class="p"·data-group-id="2131700465-9">(</span><span·class="p"·data-group-id="2131700465-9">)</span><span·class="p">;</span><span·class="w">257 </span><span·class="ss">emit_leave_runtime</span><span·class="o">&lt;</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eReductions</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eStack</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Update</span><span·class="p">:</span><span·class="p">:</span><span·class="ss">eHeap</span><span·class="o">&gt;</span><span·class="p"·data-group-id="8429379366-9">(</span><span·class="p"·data-group-id="8429379366-9">)</span><span·class="p">;</span><span·class="w">
  
258 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">mov</span><span·class="p"·data-group-id="2131700465-10">(</span><span·class="nf">getXRef</span><span·class="p"·data-group-id="2131700465-11">(</span><span·class="mi">0</span><span·class="p"·data-group-id="2131700465-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RET</[·...·truncated·by·diffoscope;·len:·46,·SHA:·524005365674352d1bfb0bb0bb5d565a9369b06a5ba4694576da676d65885d31·...·]-10">)</span><span·class="p">;</span></code></pre><p>All·combinations·of·the·<code·class="inline">Update</code>·constants·are·legal,·but·the·ones·given·to258 </span><span·class="ss">a</span><span·class="p">.</span><span·class="nf">mov</span><span·class="p"·data-group-id="8429379366-10">(</span><span·class="nf">getXRef</span><span·class="p"·data-group-id="8429379366-11">(</span><span·class="mi">0</span><span·class="p"·data-group-id="8429379366-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RET</[·...·truncated·by·diffoscope;·len:·46,·SHA:·c63f3dacfe80e8f741c077f37db73463636efffe09953a4b3f0168c97817c119·...·]-10">)</span><span·class="p">;</span></code></pre><p>All·combinations·of·the·<code·class="inline">Update</code>·constants·are·legal,·but·the·ones·given·to
259 <code·class="inline">emit_leave_runtime</code>·<em>must</em>·be·the·same·as·those·given·to·<code·class="inline">emit_enter_runtime</code>.</p><h2·id="tracing-and-nif-loading"·class="section-heading">259 <code·class="inline">emit_leave_runtime</code>·<em>must</em>·be·the·same·as·those·given·to·<code·class="inline">emit_enter_runtime</code>.</p><h2·id="tracing-and-nif-loading"·class="section-heading">
260 ··<a·href="#tracing-and-nif-loading"·class="hover-link">260 ··<a·href="#tracing-and-nif-loading"·class="hover-link">
261 ····<i·class="ri-link-m"·aria-hidden="true"></i>261 ····<i·class="ri-link-m"·aria-hidden="true"></i>
262 ··</a>262 ··</a>
263 ··<span·class="text">Tracing·and·NIF·Loading</span>263 ··<span·class="text">Tracing·and·NIF·Loading</span>
264 </h2>264 </h2>
265 <p>To·make·tracing·and·NIF·loading·work·there·needs·to·be·a·way·to·intercept265 <p>To·make·tracing·and·NIF·loading·work·there·needs·to·be·a·way·to·intercept
266 any·function·call.·In·the·interpreter,·this·is·done·by·rewriting·the·loaded266 any·function·call.·In·the·interpreter,·this·is·done·by·rewriting·the·loaded
267 BEAM·code,·but·this·is·more·complicated·in·BeamAsm·as·we·want·to·have·a·fast267 BEAM·code,·but·this·is·more·complicated·in·BeamAsm·as·we·want·to·have·a·fast
268 and·compact·way·to·do·this.·This·is·solved·by·emitting·the·code·below·at·the268 and·compact·way·to·do·this.·This·is·solved·by·emitting·the·code·below·at·the
269 start·of·each·function·(x86·variant·below):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="mi">0</span><span·class="nc">x0</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">short</span><span·class="w">·</span><span·class="ss">jmp</span><span·class="w">·</span><span·class="mi">6</span><span·class="w">·</span><span·class="p"·data-group-id="1304083639-1">(</span><span·class="ss">address</span><span·class="w">·</span><span·class="mi">0</span><span·class="ss">x8</span><span·class="p"·data-group-id="1304083639-1">)</span><span·class="w">269 start·of·each·function·(x86·variant·below):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="mi">0</span><span·class="nc">x0</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">short</span><span·class="w">·</span><span·class="ss">jmp</span><span·class="w">·</span><span·class="mi">6</span><span·class="w">·</span><span·class="p"·data-group-id="7533737360-1">(</span><span·class="ss">address</span><span·class="w">·</span><span·class="mi">0</span><span·class="ss">x8</span><span·class="p"·data-group-id="7533737360-1">)</span><span·class="w">
270 ··</span><span·class="mi">0</span><span·class="nc">x2</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nop</span><span·class="w">270 ··</span><span·class="mi">0</span><span·class="nc">x2</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nop</span><span·class="w">
271 ··</span><span·class="mi">0</span><span·class="nc">x3</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">relative</span><span·class="w">·</span><span·class="ss">near</span><span·class="w">·</span><span·class="ss">call</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">shared</span><span·class="w">·</span><span·class="ss">breakpoint</span><span·class="w">·</span><span·class="ss">fragment</span><span·class="w">271 ··</span><span·class="mi">0</span><span·class="nc">x3</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">relative</span><span·class="w">·</span><span·class="ss">near</span><span·class="w">·</span><span·class="ss">call</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">shared</span><span·class="w">·</span><span·class="ss">breakpoint</span><span·class="w">·</span><span·class="ss">fragment</span><span·class="w">
272 ··</span><span·class="mi">0</span><span·class="nc">x8</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">actual</span><span·class="w">·</span><span·class="ss">code</span><span·class="w">·</span><span·class="ss">for</span><span·class="w">·</span><span·class="ss">function</span></code></pre><p>When·code·starts·to·execute·it·will·simply·see·the·<code·class="inline">short·jmp·6</code>·instruction272 ··</span><span·class="mi">0</span><span·class="nc">x8</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">actual</span><span·class="w">·</span><span·class="ss">code</span><span·class="w">·</span><span·class="ss">for</span><span·class="w">·</span><span·class="ss">function</span></code></pre><p>When·code·starts·to·execute·it·will·simply·see·the·<code·class="inline">short·jmp·6</code>·instruction
273 which·skips·the·prologue·and·starts·to·execute·the·code·directly.</p><p>When·we·want·to·enable·a·certain·breakpoint·we·set·the·jmp·target·to·be·1,273 which·skips·the·prologue·and·starts·to·execute·the·code·directly.</p><p>When·we·want·to·enable·a·certain·breakpoint·we·set·the·jmp·target·to·be·1,
274 which·means·it·will·land·on·the·call·to·the·shared·breakpoint·fragment.·This274 which·means·it·will·land·on·the·call·to·the·shared·breakpoint·fragment.·This
275 fragment·checks·the·current·<code·class="inline">breakpoint_flag</code>·stored·in·the·ErtsCodeInfo·of275 fragment·checks·the·current·<code·class="inline">breakpoint_flag</code>·stored·in·the·ErtsCodeInfo·of
276 this·function,·and·then·calls·<code·class="inline">erts_call_nif_early</code>·and276 this·function,·and·then·calls·<code·class="inline">erts_call_nif_early</code>·and
Offset 289, 31 lines modifiedOffset 289, 31 lines modified
289 ··<span·class="text">Updating·code</span>289 ··<span·class="text">Updating·code</span>
290 </h3>290 </h3>
291 <p>Because·many·environments·enforce·<a·href="https://en.wikipedia.org/wiki/W%5EX"·title="">W^X</a>·it's·not·always·possible·to·write291 <p>Because·many·environments·enforce·<a·href="https://en.wikipedia.org/wiki/W%5EX"·title="">W^X</a>·it's·not·always·possible·to·write
292 directly·to·the·code·pages.·Because·of·this·we·map·code·twice:·once·with·an292 directly·to·the·code·pages.·Because·of·this·we·map·code·twice:·once·with·an
293 executable·page·and·once·with·a·writable·page.·Since·they're·backed·by·the293 executable·page·and·once·with·a·writable·page.·Since·they're·backed·by·the
294 same·memory,·writes·to·the·writable·page·appear·magically·in·the·executable294 same·memory,·writes·to·the·writable·page·appear·magically·in·the·executable
295 one.</p><p>The·<code·class="inline">erts_writable_code_ptr</code>·function·can·be·used·to·get·writable·pointers295 one.</p><p>The·<code·class="inline">erts_writable_code_ptr</code>·function·can·be·used·to·get·writable·pointers
296 given·a·module·instance,·provided·that·it·has·been·unsealed·first:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">for</span><span·class="w">·</span><span·class="p"·data-group-id="7177425497-1">(</span><span·class="ss">i</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">;</span><span·class="w">·</span><span·class="ss">i</span><span·class="w">·</span><span·class="o"[·...·truncated·by·diffoscope;·len:·277,·SHA:·a524d6a1db1fc7836cb4e359c11ec86b575e52090680080a3e14d07eb53c29f1·...·]-2">{</span><span·class="w">296 given·a·module·instance,·provided·that·it·has·been·unsealed·first:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">for</span><span·class="w">·</span><span·class="p"·data-group-id="0723085658-1">(</span><span·class="ss">i</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">;</span><span·class="w">·</span><span·class="ss">i</span><span·class="w">·</span><span·class="o"[·...·truncated·by·diffoscope;·len:·277,·SHA:·0ee557be950a6272ac86266fac23e65645d4d6fef02889b9a8f29060989a6753·...·]-2">{</span><span·class="w">
297 ····</span><span·class="ss">const</span><span·class="w">·</span><span·class="n">ErtsCodeInfo</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">ci_exec</span><span·class="p">;</span><span·class="w">297 ····</span><span·class="ss">const</span><span·class="w">·</span><span·class="n">ErtsCodeInfo</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">ci_exec</span><span·class="p">;</span><span·class="w">
298 ····</span><span·class="n">ErtsCodeInfo</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">ci_rw</span><span·class="p">;</span><span·class="w">298 ····</span><span·class="n">ErtsCodeInfo</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">ci_rw</span><span·class="p">;</span><span·class="w">
299 ····</span><span·class="ss">void</span><span·class="w">·</span><span·class="o">*</span><span·class="ss">w_ptr</span><span·class="p">;</span><span·class="w">299 ····</span><span·class="ss">void</span><span·class="w">·</span><span·class="o">*</span><span·class="ss">w_ptr</span><span·class="p">;</span><span·class="w">
  
300 ····</span><span·class="nf">erts_unseal_module</span><span·class="p"·data-group-id="7177425497-3">(</span><span·class="err">&amp;</span><span·class="ss">modp</span><span·class="p">-&gt;</span><span·class="ss">curr</span><span·class="p"·data-group-id="7177425497-3">)</span><span·class="p">;</span><span·class="w">300 ····</span><span·class="nf">erts_unseal_module</span><span·class="p"·data-group-id="0723085658-3">(</span><span·class="err">&amp;</span><span·class="ss">modp</span><span·class="p">-&gt;</span><span·class="ss">curr</span><span·class="p"·data-group-id="0723085658-3">)</span><span·class="p">;</span><span·class="w">
  
301 ····</span><span·class="ss">ci_exec</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">code_hdr</span><span·class="p">-&gt;</span><span·class="ss">functions</span><span·class="p"·data-group-id="7177425497-4">[</span><span·class="ss">i</span><span·class="p"·data-group-id="7177425497-4">]</span><span·class="p">;</span><span·class="w">301 ····</span><span·class="ss">ci_exec</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">code_hdr</span><span·class="p">-&gt;</span><span·class="ss">functions</span><span·class="p"·data-group-id="0723085658-4">[</span><span·class="ss">i</span><span·class="p"·data-group-id="0723085658-4">]</span><span·class="p">;</span><span·class="w">
302 ····</span><span·class="ss">w_ptr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">erts_writable_code_ptr</span><span·class="p"·data-group-id="7177425497-5">(</span><span·class="err">&amp;</span><span·class="ss">modp</span><span·class="p">-&gt;</span><span·class="ss">curr</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ci_exec</span><span·class="p"·data-group-id="7177425497-5">)</span><span·class="p">;</span><span·class="w">302 ····</span><span·class="ss">w_ptr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">erts_writable_code_ptr</span><span·class="p"·data-group-id="0723085658-5">(</span><span·class="err">&amp;</span><span·class="ss">modp</span><span·class="p">-&gt;</span><span·class="ss">curr</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ci_exec</span><span·class="p"·data-group-id="0723085658-5">)</span><span·class="p">;</span><span·class="w">
303 ····</span><span·class="ss">ci_rw</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7177425497-6">(</span><span·class="n">ErtsCodeInfo</span><span·class="o">*</span><span·class="p"·data-group-id="7177425497-6">)</span><span·class="ss">w_ptr</span><span·class="p">;</span><span·class="w">303 ····</span><span·class="ss">ci_rw</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0723085658-6">(</span><span·class="n">ErtsCodeInfo</span><span·class="o">*</span><span·class="p"·data-group-id="0723085658-6">)</span><span·class="ss">w_ptr</span><span·class="p">;</span><span·class="w">
  
304 ····</span><span·class="nf">uninstall_breakpoint</span><span·class="p"·data-group-id="7177425497-7">(</span><span·class="ss">ci_rw</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ci_exec</span><span·class="p"·data-group-id="7177425497-7">)</span><span·class="p">;</span><span·class="w">304 ····</span><span·class="nf">uninstall_breakpoint</span><span·class="p"·data-group-id="0723085658-7">(</span><span·class="ss">ci_rw</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ci_exec</span><span·class="p"·data-group-id="0723085658-7">)</span><span·class="p">;</span><span·class="w">
305 ····</span><span·class="nf">consolidate_bp_data</span><span·class="p"·data-group-id="7177425497-8">(</span><span·class="ss">modp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ci_rw</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7177425497-8">)</span><span·class="p">;</span><span·class="w">305 ····</span><span·class="nf">consolidate_bp_data</span><span·class="p"·data-group-id="0723085658-8">(</span><span·class="ss">modp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ci_rw</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0723085658-8">)</span><span·class="p">;</span><span·class="w">
306 ····</span><span·class="n">ASSERT</span><span·class="p"·data-group-id="7177425497-9">(</span><span·class="ss">ci_rw</span><span·class="p">-&gt;</span><span·class="ss">gen_bp</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">NULL</span><span·class="p"·data-group-id="7177425497-9">)</span><span·class="p">;</span><span·class="w">306 ····</span><span·class="n">ASSERT</span><span·class="p"·data-group-id="0723085658-9">(</span><span·class="ss">ci_rw</span><span·class="p">-&gt;</span><span·class="ss">gen_bp</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">NULL</span><span·class="p"·data-group-id="0723085658-9">)</span><span·class="p">;</span><span·class="w">
  
307 ····</span><span·class="nf">erts_seal_module</span><span·class="p"·data-group-id="7177425497-10">(</span><span·class="err">&amp;</span><span·class="ss">modp</span><span·class="p">-&gt;</span><span·class="ss">curr</span><span·class="p"·data-group-id="7177425497-10">)</span><span·class="p">;</span><span·class="w">307 ····</span><span·class="nf">erts_seal_module</span><span·class="p"·data-group-id="0723085658-10">(</span><span·class="err">&amp;</span><span·class="ss">modp</span><span·class="p">-&gt;</span><span·class="ss">curr</span><span·class="p"·data-group-id="0723085658-10">)</span><span·class="p">;</span><span·class="w">
308 </span><span·class="p"·data-group-id="7177425497-2">}</span></code></pre><p>Without·the·module·instance·there's·no·reliable·way·to·figure·out·the·writable308 </span><span·class="p"·data-group-id="0723085658-2">}</span></code></pre><p>Without·the·module·instance·there's·no·reliable·way·to·figure·out·the·writable
309 address·of·a·code·page,·and·we·rely·on·<em>address·space·layout·randomization</em>309 address·of·a·code·page,·and·we·rely·on·<em>address·space·layout·randomization</em>
310 (ASLR)·to·make·it·difficult·to·guess.·On·some·platforms,·security·is·further310 (ASLR)·to·make·it·difficult·to·guess.·On·some·platforms,·security·is·further
311 enhanced·by·protecting·the·writable·area·from·writes·until·the·module·has·been311 enhanced·by·protecting·the·writable·area·from·writes·until·the·module·has·been
312 unsealed·by·<code·class="inline">erts_unseal_module</code>.</p><h3·id="export-tracing"·class="section-heading">312 unsealed·by·<code·class="inline">erts_unseal_module</code>.</p><h3·id="export-tracing"·class="section-heading">
313 ··<a·href="#export-tracing"·class="hover-link">313 ··<a·href="#export-tracing"·class="hover-link">
314 ····<i·class="ri-link-m"·aria-hidden="true"></i>314 ····<i·class="ri-link-m"·aria-hidden="true"></i>
315 ··</a>315 ··</a>
Offset 393, 15 lines modifiedOffset 393, 15 lines modified
393 </span><span·class="ss">perf</span><span·class="w">·</span><span·class="ss">script</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="ss">out</span><span·class="p">.</span><span·class="ss">perf</span><span·class="w">393 </span><span·class="ss">perf</span><span·class="w">·</span><span·class="ss">script</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="ss">out</span><span·class="p">.</span><span·class="ss">perf</span><span·class="w">
394 </span><span·class="p">#</span><span·class="p">#</span><span·class="w">·</span><span·class="ss">run</span><span·class="w">·</span><span·class="ss">stackcollapse</span><span·class="w">394 </span><span·class="p">#</span><span·class="p">#</span><span·class="w">·</span><span·class="ss">run</span><span·class="w">·</span><span·class="ss">stackcollapse</span><span·class="w">
Max diff block lines reached; 5982/46121 bytes (12.97%) of diff not shown.
735 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/carriermigration.html
    
Offset 403, 15 lines modifiedOffset 403, 15 lines modified
403 ······<p·class="built-using">403 ······<p·class="built-using">
404 ········Built·using404 ········Built·using
405 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the405 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
406 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>406 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
407 ······</p>407 ······</p>
408 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>408 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
409 ····</footer>409 ····</footer>
410 ··</div>410 ··</div>
411 </main>411 </main>
412 </div>412 </div>
413 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>413 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
414 <script>414 <script>
415 ··document.addEventListener("DOMContentLoaded",·function·()·{415 ··document.addEventListener("DOMContentLoaded",·function·()·{
755 B
html2text {}
Max HTML report size reached
4.72 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/codeloading.html
    
Offset 163, 16 lines modifiedOffset 163, 16 lines modified
163 only·be·done·by·one·loader·process·at·a·time.·A·second·loader·process163 only·be·done·by·one·loader·process·at·a·time.·A·second·loader·process
164 trying·to·enter·finishing·phase·will·be·suspended·until·the·first164 trying·to·enter·finishing·phase·will·be·suspended·until·the·first
165 loader·is·done.·This·will·only·block·the·process,·the·scheduler·is165 loader·is·done.·This·will·only·block·the·process,·the·scheduler·is
166 free·to·schedule·other·work·while·the·second·loader·is·waiting.·(See166 free·to·schedule·other·work·while·the·second·loader·is·waiting.·(See
167 <code·class="inline">erts_try_seize_code_load_permission</code>·and167 <code·class="inline">erts_try_seize_code_load_permission</code>·and
168 <code·class="inline">erts_release_code_load_permission</code>).</p><p>The·ability·to·prepare·several·modules·in·parallel·is·not·currently168 <code·class="inline">erts_release_code_load_permission</code>).</p><p>The·ability·to·prepare·several·modules·in·parallel·is·not·currently
169 used·as·almost·all·code·loading·is·serialized·by·the·code_server169 used·as·almost·all·code·loading·is·serialized·by·the·code_server
170 process.·The·BIF·interface·is·however·prepared·for·this.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">prepare_loading</span><span·class="p"·data-group-id="5093961374-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Code</span><span·class="p"·data-group-id="5093961374-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">LoaderState</span><span·class="w"> 
171 ··</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">finish_loading</span><span·class="p"·data-group-id="5093961374-2">(</span><span·class="p"·data-group-id="5093961374-3">[</span><span·class="n">LoaderState</span><span·class="p"[·...·truncated·by·diffoscope;·len:·199,·SHA:·344641fee617ad66175716b2ff8a7d9d2449d0f6f324565dcf76bec1d328ccaa·...·]170 process.·The·BIF·interface·is·however·prepared·for·this.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">prepare_loading</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·306,·SHA:·f887c1d8a8d1fb2092dbbce00ea910ea13a1ee59e01f5c523359b0111b55c2f2·...·]
 171 ··</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">finish_loading</span><span·class="p"·data-group-id="6919504391-2">(</span><span·class="p"·data-group-id="6919504391-3">[</span><span·class="n">LoaderState</span><span·class="p"·data-group-id="6919504391-3">]</span><span·class="p"·data-group-id="6919504391-2">)</span></code></pre><p>The·idea·is·that·<code·class="inline">prepare_loading</code>·could·be·called·in·parallel·for
172 different·modules·and·returns·a·&quot;magic·binary&quot;·containing·the·internal172 different·modules·and·returns·a·&quot;magic·binary&quot;·containing·the·internal
173 state·of·each·prepared·module.·Function·<code·class="inline">finish_loading</code>·could·take·a173 state·of·each·prepared·module.·Function·<code·class="inline">finish_loading</code>·could·take·a
174 list·of·such·states·and·do·the·finishing·of·all·of·them·in·one·go.</p><p>Currently·we·use·the·legacy·BIF·<code·class="inline">erlang:load_module</code>·which·is·now174 list·of·such·states·and·do·the·finishing·of·all·of·them·in·one·go.</p><p>Currently·we·use·the·legacy·BIF·<code·class="inline">erlang:load_module</code>·which·is·now
175 implemented·in·Erlang·by·calling·the·above·two·functions·in175 implemented·in·Erlang·by·calling·the·above·two·functions·in
176 sequence.·Function·<code·class="inline">finish_loading</code>·is·limited·to·only·accepts·a·list176 sequence.·Function·<code·class="inline">finish_loading</code>·is·limited·to·only·accepts·a·list
177 with·one·module·state·as·we·do·not·yet·use·the·multi·module·loading177 with·one·module·state·as·we·do·not·yet·use·the·multi·module·loading
178 feature.</p><h2·id="the-finishing-sequence"·class="section-heading">178 feature.</p><h2·id="the-finishing-sequence"·class="section-heading">
Offset 315, 15 lines modifiedOffset 315, 15 lines modified
315 ······<p·class="built-using">315 ······<p·class="built-using">
316 ········Built·using316 ········Built·using
317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
319 ······</p>319 ······</p>
320 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
321 ····</footer>321 ····</footer>
322 ··</div>322 ··</div>
323 </main>323 </main>
324 </div>324 </div>
325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
326 <script>326 <script>
327 ··document.addEventListener("DOMContentLoaded",·function·()·{327 ··document.addEventListener("DOMContentLoaded",·function·()·{
734 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/communication.html
    
Offset 198, 15 lines modifiedOffset 198, 15 lines modified
198 ······<p·class="built-using">198 ······<p·class="built-using">
199 ········Built·using199 ········Built·using
200 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the200 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
201 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>201 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
202 ······</p>202 ······</p>
203 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>203 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
204 ····</footer>204 ····</footer>
205 ··</div>205 ··</div>
206 </main>206 </main>
207 </div>207 </div>
208 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>208 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
209 <script>209 <script>
210 ··document.addEventListener("DOMContentLoaded",·function·()·{210 ··document.addEventListener("DOMContentLoaded",·function·()·{
649 B
html2text {}
Max HTML report size reached
1.35 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/counters.html
    
Offset 509, 15 lines modifiedOffset 509, 15 lines modified
509 ······<p·class="built-using">509 ······<p·class="built-using">
510 ········Built·using510 ········Built·using
511 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the511 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
512 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>512 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
513 ······</p>513 ······</p>
514 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>514 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
515 ····</footer>515 ····</footer>
516 ··</div>516 ··</div>
517 </main>517 </main>
518 </div>518 </div>
519 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>519 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
520 <script>520 <script>
521 ··document.addEventListener("DOMContentLoaded",·function·()·{521 ··document.addEventListener("DOMContentLoaded",·function·()·{
546 B
html2text {}
Max HTML report size reached
1.36 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/countinginstructions.html
    
Offset 216, 15 lines modifiedOffset 216, 15 lines modified
216 ······<p·class="built-using">216 ······<p·class="built-using">
217 ········Built·using217 ········Built·using
218 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the218 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
219 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>219 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
220 ······</p>220 ······</p>
221 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>221 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
222 ····</footer>222 ····</footer>
223 ··</div>223 ··</div>
224 </main>224 </main>
225 </div>225 </div>
226 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>226 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
227 <script>227 <script>
228 ··document.addEventListener("DOMContentLoaded",·function·()·{228 ··document.addEventListener("DOMContentLoaded",·function·()·{
537 B
html2text {}
Max HTML report size reached
12.1 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/crash_dump.html
    
Offset 401, 21 lines modifiedOffset 401, 21 lines modified
401 <a·href="erlang.html#put/2"><code·class="inline">put/2</code></a>·and·<a·href="erlang.html#get/1"><code·class="inline">get/1</code></a>·thing)·is·non-empty.</p><p>The·raw·memory·information·can·be·decoded·by·the·Crashdump·Viewer·tool.·You·can401 <a·href="erlang.html#put/2"><code·class="inline">put/2</code></a>·and·<a·href="erlang.html#get/1"><code·class="inline">get/1</code></a>·thing)·is·non-empty.</p><p>The·raw·memory·information·can·be·decoded·by·the·Crashdump·Viewer·tool.·You·can
402 then·see·the·stack·dump,·the·message·queue·(if·any),·and·the·dictionary·(if402 then·see·the·stack·dump,·the·message·queue·(if·any),·and·the·dictionary·(if
403 any).</p><p>The·stack·dump·is·a·dump·of·the·Erlang·process·stack.·Most·of·the·live·data403 any).</p><p>The·stack·dump·is·a·dump·of·the·Erlang·process·stack.·Most·of·the·live·data
404 (that·is,·variables·currently·in·use)·are·placed·on·the·stack;·thus·this·can·be404 (that·is,·variables·currently·in·use)·are·placed·on·the·stack;·thus·this·can·be
405 interesting.·One·has·to·&quot;guess&quot;·what·is·what,·but·as·the·information·is405 interesting.·One·has·to·&quot;guess&quot;·what·is·what,·but·as·the·information·is
406 symbolic,·thorough·reading·of·this·information·can·be·useful.·As·an·example,·we406 symbolic,·thorough·reading·of·this·information·can·be·useful.·As·an·example,·we
407 can·find·the·state·variable·of·the·Erlang·primitive·loader·online·<code·class="inline">(5)</code>·and407 can·find·the·state·variable·of·the·Erlang·primitive·loader·online·<code·class="inline">(5)</code>·and
408 <code·class="inline">(6)</code>·in·the·following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9729265333-1">(</span><span·class="mi">1</span><span·class="p"·data-group-id="9729265333-1">)</span><span·class="w">··</span><span·class="mi">3</span><span·class="ss">cac44</span><span·class="w">···</span><span·class="n">Return</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·426,·SHA:·947569ee862144efaa93ccd705138f7b991f960efcb8361e459ced5b26cb9b63·...·]-2">)</span><span·class="w">408 <code·class="inline">(6)</code>·in·the·following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4993427175-1">(</span><span·class="mi">1</span><span·class="p"·data-group-id="4993427175-1">)</span><span·class="w">··</span><span·class="mi">3</span><span·class="ss">cac44</span><span·class="w">···</span><span·class="n">Return</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·426,·SHA:·ebeae5eacb133a17459e9ab018d2ffe02cccce8c57018ca59759cc49b8655cd5·...·]-2">)</span><span·class="w">
409 </span><span·class="p"·data-group-id="9729265333-3">(</span><span·class="mi">2</span><span·class="p"·data-group-id="9729265333-3">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="9729265333-4">(</span><span·class="mi">0</span><span·class="p"·data-group-id="9729265333-4">)</span><span·class="w">·····</span><span·class="p"·data-group-id="9729265333-5">[</span><span·class="s">&quot;/view/siri_r10_dev/clearcase/otp/erts/lib/kernel/ebin&quot;</span><span·class="p">,</span><span·class="w"> 
410 </span><span·class="p"·data-group-id="9729265333-6">(</span><span·class="mi">3</span><span·class="p"·data-group-id="9729265333-6">)</span><span·class="w">············</span><span·class="s">&quot;/view/siri_r10_dev/clearcase/otp/erts/lib/stdlib/ebin&quot;</span><span·class="p"·data-group-id="97[·...·truncated·by·diffoscope;·len:·13,·SHA:·3ea1a75cd049561736bb2e58d30116fcf3e946386b63e0a9cf2553392da3b51e·...·]</span><span·class="w">409 </span><span·class="p"·data-group-id="4993427175-3">(</span><span·class="mi">2</span><span·class="p"·data-group-id="4993427175-3">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="4993427175-4">(</span><span·class="mi">0</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·211,·SHA:·ce2099c952364ac22347e5fa9cfe5ade8ab7d9eaf861bbc11cc034c71caaa155·...·]</span><span·class="w">
 410 </span><span·class="p"·data-group-id="4993427175-6">(</span><span·class="mi">3</span><span·class="p"·data-group-id="4993427175-6">)</span><span·class="w">············</span><span·class="s">&quot;/view/siri_r10_dev/clearcase/otp/erts/lib/stdlib/ebin&quot;</span><span·class="p"·data-group-id="4993427175-5">]</span><span·class="w">
411 </span><span·class="p"·data-group-id="9729265333-7">(</span><span·class="mi">4</span><span·class="p"·data-group-id="9729265333-7">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="9729265333-8">(</span><span·class="mi">1</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·f34950b09f5f635fa4968294549f4cd73fa35e1b3b2f09e5c2996b320c1d6d0c·...·]-8">)</span><span·class="w">·····</span><span·class="o">&lt;</span><span·class="mf">0.1</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">411 </span><span·class="p"·data-group-id="4993427175-7">(</span><span·class="mi">4</span><span·class="p"·data-group-id="4993427175-7">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="4993427175-8">(</span><span·class="mi">1</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·b795f09df2ee4c5c20dd86809ef982fb995941a286314e01cbbf4409cfb86391·...·]-8">)</span><span·class="w">·····</span><span·class="o">&lt;</span><span·class="mf">0.1</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">
412 </span><span·class="p"·data-group-id="9729265333-9">(</span><span·class="mi">5</span><span·class="p"·data-group-id="9729265333-9">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="9729265333-10">(</span><span·class="mi">2</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·257,·SHA:·ad27a5f87627460f9c5981bfb134698fcd84e0d351bf25548f284a1f6ad250b6·...·]-12">]</span><span·class="p">,</span><span·class="ss">none</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_prim_loader</span><span·class="p">.</span><span·class="mf">6.7085890</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_prim_loader</span><span·class="p">.</span><span·class="mf">7.9000327</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">412 </span><span·class="p"·data-group-id="4993427175-9">(</span><span·class="mi">5</span><span·class="p"·data-group-id="4993427175-9">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="4993427175-10">(</span><span·class="mi">2</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·257,·SHA:·0766c1c36a6e776129d4604ccf11942cde716b2cf1b6654d40c20b5625706960·...·]-12">]</span><span·class="p">,</span><span·class="ss">none</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_prim_loader</span><span·class="p">.</span><span·class="mf">6.7085890</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_prim_loader</span><span·class="p">.</span><span·class="mf">7.9000327</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">
413 </span><span·class="p"·data-group-id="9729265333-13">(</span><span·class="mi">6</span><span·class="p"·data-group-id="9729265333-13">)</span><span·class="w">············</span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_prim_loader</span><sp[·...·truncated·by·diffoscope;·len:·561,·SHA:·11e5b9a697f8458015296366f7a5aebf78e01408037e1036be576b11f4e4993e·...·]-11">}</span><span·class="w">413 </span><span·class="p"·data-group-id="4993427175-13">(</span><span·class="mi">6</span><span·class="p"·data-group-id="4993427175-13">)</span><span·class="w">············</span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_prim_loader</span><sp[·...·truncated·by·diffoscope;·len:·561,·SHA:·eca8fbd9bf93d1cb575f798538cddd30aa0bf4209600984f3b6d185ddad96747·...·]-11">}</span><span·class="w">
414 </span><span·class="p"·data-group-id="9729265333-14">(</span><span·class="mi">7</span><span·class="p"·data-group-id="9729265333-14">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="9729265333-15">(</span><span·class="mi">3</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·ec192e2b810465c203137c7fcdeb2ec9c16c9b4d7550e6bf322b56866f8c9b2f·...·]-15">)</span><span·class="w">·····</span><span·class="ss">infinity</span></code></pre><p>When·interpreting·the·data·for·a·process,·it·is·helpful·to·know·that·anonymous414 </span><span·class="p"·data-group-id="4993427175-14">(</span><span·class="mi">7</span><span·class="p"·data-group-id="4993427175-14">)</span><span·class="w">··</span><span·class="nf">y</span><span·class="p"·data-group-id="4993427175-15">(</span><span·class="mi">3</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·dee180b3b42fc410f2c736faf282b74242acfa89b4fa4f0845ee59b5e2e135b8·...·]-15">)</span><span·class="w">·····</span><span·class="ss">infinity</span></code></pre><p>When·interpreting·the·data·for·a·process,·it·is·helpful·to·know·that·anonymous
415 function·objects·(funs)·are·given·the·following:</p><ul><li>A·name·constructed·from·the·name·of·the·function·in·which·they·are·created</li><li>A·number·(starting·with·0)·indicating·the·number·of·that·fun·within·that415 function·objects·(funs)·are·given·the·following:</p><ul><li>A·name·constructed·from·the·name·of·the·function·in·which·they·are·created</li><li>A·number·(starting·with·0)·indicating·the·number·of·that·fun·within·that
416 function</li></ul><h2·id="atoms"·class="section-heading">416 function</li></ul><h2·id="atoms"·class="section-heading">
417 ··<a·href="#atoms"·class="hover-link">417 ··<a·href="#atoms"·class="hover-link">
418 ····<i·class="ri-link-m"·aria-hidden="true"></i>418 ····<i·class="ri-link-m"·aria-hidden="true"></i>
419 ··</a>419 ··</a>
420 ··<span·class="text">Atoms</span>420 ··<span·class="text">Atoms</span>
421 </h2>421 </h2>
Offset 473, 15 lines modifiedOffset 473, 15 lines modified
473 ······<p·class="built-using">473 ······<p·class="built-using">
474 ········Built·using474 ········Built·using
475 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the475 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
476 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>476 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
477 ······</p>477 ······</p>
478 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>478 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
479 ····</footer>479 ····</footer>
480 ··</div>480 ··</div>
481 </main>481 </main>
482 </div>482 </div>
483 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>483 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
484 <script>484 <script>
485 ··document.addEventListener("DOMContentLoaded",·function·()·{485 ··document.addEventListener("DOMContentLoaded",·function·()·{
850 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/delayeddealloc.html
    
Offset 338, 15 lines modifiedOffset 338, 15 lines modified
338 ······<p·class="built-using">338 ······<p·class="built-using">
339 ········Built·using339 ········Built·using
340 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the340 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
341 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>341 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
342 ······</p>342 ······</p>
343 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>343 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
344 ····</footer>344 ····</footer>
345 ··</div>345 ··</div>
346 </main>346 </main>
347 </div>347 </div>
348 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>348 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
349 <script>349 <script>
350 ··document.addEventListener("DOMContentLoaded",·function·()·{350 ··document.addEventListener("DOMContentLoaded",·function·()·{
720 B
html2text {}
Max HTML report size reached
58.0 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/driver.html
    
Offset 364, 41 lines modifiedOffset 364, 41 lines modified
364 <p>Before·a·driver·can·be·called·from·Erlang,·it·must·be·loaded·and·opened.·Loading364 <p>Before·a·driver·can·be·called·from·Erlang,·it·must·be·loaded·and·opened.·Loading
365 is·done·using·the·<a·href="../../../lib/kernel-10.0.1/doc/html/erl_ddll.html"><code·class="inline">erl_ddll</code></a>·module·(the·<a·href="../../../lib/kernel-10.0.1/doc/html/erl_ddll.html"><code·class="inline">erl_ddll</code></a>·driver·that·loads·dynamic365 is·done·using·the·<a·href="../../../lib/kernel-10.0.1/doc/html/erl_ddll.html"><code·class="inline">erl_ddll</code></a>·module·(the·<a·href="../../../lib/kernel-10.0.1/doc/html/erl_ddll.html"><code·class="inline">erl_ddll</code></a>·driver·that·loads·dynamic
366 driver·is·actually·a·driver·itself).·If·loading·is·successful,·the·port·can·be366 driver·is·actually·a·driver·itself).·If·loading·is·successful,·the·port·can·be
367 opened·with·<a·href="erlang.html#open_port/2"><code·class="inline">open_port/2</code></a>.·The·port·name·must·match·the·name·of367 opened·with·<a·href="erlang.html#open_port/2"><code·class="inline">open_port/2</code></a>.·The·port·name·must·match·the·name·of
368 the·shared·library·and·the·name·in·the·driver·entry·structure.</p><p>When·the·port·has·been·opened,·the·driver·can·be·called.·In·the·<code·class="inline">pg_sync</code>368 the·shared·library·and·the·name·in·the·driver·entry·structure.</p><p>When·the·port·has·been·opened,·the·driver·can·be·called.·In·the·<code·class="inline">pg_sync</code>
369 example,·we·do·not·have·any·data·from·the·port,·only·the·return·value·from·the369 example,·we·do·not·have·any·data·from·the·port,·only·the·return·value·from·the
370 <a·href="erlang.html#port_control/3"><code·class="inline">port_control/3</code></a>.</p><p>The·following·code·is·the·Erlang·part·of·the·synchronous·postgres·driver,370 <a·href="erlang.html#port_control/3"><code·class="inline">port_control/3</code></a>.</p><p>The·following·code·is·the·Erlang·part·of·the·synchronous·postgres·driver,
371 <code·class="inline">pg_sync.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9048505626-1">(</span><span·class="ss">pg_sync</span><span·class="p"·data-group-id="9048505626-1">)</span><span·class="p">.</span><span·class="w">371 <code·class="inline">pg_sync.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7470163071-1">(</span><span·class="ss">pg_sync</span><span·class="p"·data-group-id="7470163071-1">)</span><span·class="p">.</span><span·class="w">
372 </span><span·class="w">372 </span><span·class="w">
373 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="9048505626-2">(</span><span·class="n">DRV_CONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="9048505626-2">)</span><span·class="p">.</span><span·class="w">373 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7470163071-2">(</span><span·class="n">DRV_CONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7470163071-2">)</span><span·class="p">.</span><span·class="w">
374 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="9048505626-3">(</span><span·class="n">DRV_DISCONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="9048505626-3">)</span><span·class="p">.</span><span·class="w">374 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7470163071-3">(</span><span·class="n">DRV_DISCONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="7470163071-3">)</span><span·class="p">.</span><span·class="w">
375 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="9048505626-4">(</span><span·class="n">DRV_SELECT</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">3</span><span·class="p"·data-group-id="9048505626-4">)</span><span·class="p">.</span><span·class="w">375 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7470163071-4">(</span><span·class="n">DRV_SELECT</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">3</span><span·class="p"·data-group-id="7470163071-4">)</span><span·class="p">.</span><span·class="w">
376 </span><span·class="w">376 </span><span·class="w">
377 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9048505626-5">(</span><span·class="p"·data-group-id="9048505626-6">[</span><span·class="ss">connect</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disconnect</span><span·class="p">/</[·...·truncated·by·diffoscope;·len:·251,·SHA:·a5646a3fca0636a9a37a67a84f45acf20a4d89a2d63577201392432eddb8f7e0·...·]-5">)</span><span·class="p">.</span><span·class="w">377 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7470163071-5">(</span><span·class="p"·data-group-id="7470163071-6">[</span><span·class="ss">connect</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disconnect</span><span·class="p">/</[·...·truncated·by·diffoscope;·len:·251,·SHA:·9aa048911c1616e6449d1f2ecfae76a8ff2b4c3f2728945382594d3e6174c882·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
378 </span><span·class="nf">connect</span><span·class="p"·data-group-id="9048505626-7">(</span><span·class="n">ConnectStr</span><span·class="p"·data-group-id="9048505626-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">378 </span><span·class="nf">connect</span><span·class="p"·data-group-id="7470163071-7">(</span><span·class="n">ConnectStr</span><span·class="p"·data-group-id="7470163071-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
379 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="9048505626-8">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;pg_sync&quot;</span><span·class="p"·data-group-id="9048505626-8">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">379 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="7470163071-8">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;pg_sync&quot;</span><span·class="p"·data-group-id="7470163071-8">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
380 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">380 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
381 ········</span><span·class="p"·data-group-id="9048505626-9">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="9048505626-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">381 ········</span><span·class="p"·data-group-id="7470163071-9">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="7470163071-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
382 ········</span><span·class="n">E</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="9048505626-10">(</span><span·class="p"·data-group-id="9048505626-11">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="p"·data-group-id="9048505626-11">}</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·a0fca60f81caa737c33c3012bc5ad43c47c5ec2643cafefbd49acadc75526b7d·...·]-10">)</span><span·class="w">382 ········</span><span·class="n">E</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="7470163071-10">(</span><span·class="p"·data-group-id="7470163071-11">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="p"·data-group-id="7470163071-11">}</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·bbda8724f7297a7770a9649c82874de0e0a4a834c985c3c2f1c1448a3d447690·...·]-10">)</span><span·class="w">
383 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">383 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
384 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="9048505626-12">(</span><span·class="p"·data-group-id="9048505626-13">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p"·data-group-id="9048505626-13">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9048505626-14">[</span><span·class="p"·data-group-id="9048505626-14">]</span><span·class="p"·data-group-id="9048505626-12">)</span><span·class="p">,</span><span·class="w"> 
385 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="9048505626-15">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="9048505626-16">(</span><span·class="n">Port</span><span·cla[·...·truncated·by·diffoscope;·len:·328,·SHA:·d92718daabbd857d9f6c410839f82500cf52ec8dd1af01d7a228f22c50305d21·...·]</span><span·class="w">384 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="7470163071-12">(</span><span·class="p"·data-group-id="7470163071-13">{</span><span·class="nb">spawn</span>[·...·truncated·by·diffoscope;·len:·382,·SHA:·c34cd59d7fdf495d6c983e86081a7ee8b3048a6035ebcb573985fbe94ef1b796·...·]</span><span·class="w">
 385 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="7470163071-15">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7470163071-16">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_CONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ConnectStr</span><span·class="p"·data-group-id="7470163071-16">)</span><span·class="p"·data-group-id="7470163071-15">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
386 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9048505626-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="9048505626-17">}</span><span·class="p">;</span><span·class="w">386 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7470163071-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="7470163071-17">}</span><span·class="p">;</span><span·class="w">
387 ········</span><span·class="n">Error</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Error</span><span·class="w">387 ········</span><span·class="n">Error</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Error</span><span·class="w">
388 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">388 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
389 </span><span·class="nf">disconnect</span><span·class="p"·data-group-id="9048505626-18">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9048505626-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">389 </span><span·class="nf">disconnect</span><span·class="p"·data-group-id="7470163071-18">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7470163071-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
390 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="9048505626-19">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="9048505626-20">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_DISCONNECT</span><span·c[·...·truncated·by·diffoscope;·len:·171,·SHA:·360e0ccbdd2ee41d8eb9dfd81d0da82ebe7e85930c37e103b09ec41f6060a0cb·...·]-19">)</span><span·class="p">,</span><span·class="w">390 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="7470163071-19">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7470163071-20">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_DISCONNECT</span><span·c[·...·truncated·by·diffoscope;·len:·171,·SHA:·8377f8d69de0de5b52c05929e695b7bcf748b70e7947b4892c5d480353632a3f·...·]-19">)</span><span·class="p">,</span><span·class="w">
391 ····</span><span·class="nf">port_close</span><span·class="p"·data-group-id="9048505626-21">(</span><span·class="n">Port</span><span·class="p"·data-group-id="9048505626-21">)</span><span·class="p">,</span><span·class="w">391 ····</span><span·class="nf">port_close</span><span·class="p"·data-group-id="7470163071-21">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7470163071-21">)</span><span·class="p">,</span><span·class="w">
392 ····</span><span·class="n">R</span><span·class="p">.</span><span·class="w">392 ····</span><span·class="n">R</span><span·class="p">.</span><span·class="w">
  
393 </span><span·class="nf">select</span><span·class="p"·data-group-id="9048505626-22">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Query</span><span·class="p"·data-group-id="9048505626-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">393 </span><span·class="nf">select</span><span·class="p"·data-group-id="7470163071-22">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Query</span><span·class="p"·data-group-id="7470163071-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
394 ····</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="9048505626-23">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="9048505626-24">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_SELECT</span><span·class[·...·truncated·by·diffoscope;·len:·160,·SHA:·1f52fedf526337e5afb12960fe267867eb22472c8cb8fc8eb4b018e47c83cf42·...·]-23">)</span><span·class="p">.</span></code></pre><p>The·API·is·simple:</p><ul><li><code·class="inline">connect/1</code>·loads·the·driver,·opens·it,·and·logs·on·to·the·database,·returning394 ····</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="7470163071-23">(</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7470163071-24">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_SELECT</span><span·class[·...·truncated·by·diffoscope;·len:·160,·SHA:·c60d3e3cbad7ff2a327b6200db52939dd896abc95927b70cafd7096cb74c8dac·...·]-23">)</span><span·class="p">.</span></code></pre><p>The·API·is·simple:</p><ul><li><code·class="inline">connect/1</code>·loads·the·driver,·opens·it,·and·logs·on·to·the·database,·returning
395 the·Erlang·port·if·successful.</li><li><code·class="inline">select/2</code>·sends·a·query·to·the·driver·and·returns·the·result.</li><li><code·class="inline">disconnect/1</code>·closes·the·database·connection·and·the·driver.·(However,·it395 the·Erlang·port·if·successful.</li><li><code·class="inline">select/2</code>·sends·a·query·to·the·driver·and·returns·the·result.</li><li><code·class="inline">disconnect/1</code>·closes·the·database·connection·and·the·driver.·(However,·it
396 does·not·unload·it.)</li></ul><p>The·connection·string·is·to·be·a·connection·string·for·postgres.</p><p>The·driver·is·loaded·with·<a·href="../../../lib/kernel-10.0.1/doc/html/erl_ddll.html#load_driver/2"><code·class="inline">erl_ddll:load_driver/2</code></a>.·If·this·is·successful,·or·if396 does·not·unload·it.)</li></ul><p>The·connection·string·is·to·be·a·connection·string·for·postgres.</p><p>The·driver·is·loaded·with·<a·href="../../../lib/kernel-10.0.1/doc/html/erl_ddll.html#load_driver/2"><code·class="inline">erl_ddll:load_driver/2</code></a>.·If·this·is·successful,·or·if
397 it·is·already·loaded,·it·is·opened.·This·will·call·the·<code·class="inline">start</code>·function·in·the397 it·is·already·loaded,·it·is·opened.·This·will·call·the·<code·class="inline">start</code>·function·in·the
398 driver.</p><p>We·use·the·<a·href="erlang.html#port_control/3"><code·class="inline">port_control/3</code></a>·function·for·all·calls·into·the398 driver.</p><p>We·use·the·<a·href="erlang.html#port_control/3"><code·class="inline">port_control/3</code></a>·function·for·all·calls·into·the
399 driver.·The·result·from·the·driver·is·returned·immediately·and·converted·to399 driver.·The·result·from·the·driver·is·returned·immediately·and·converted·to
400 terms·by·calling·<a·href="erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>.·(We·trust·that·the400 terms·by·calling·<a·href="erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>.·(We·trust·that·the
401 terms·returned·from·the·driver·are·well-formed,·otherwise·the·<a·href="erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>401 terms·returned·from·the·driver·are·well-formed,·otherwise·the·<a·href="erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>
Offset 536, 51 lines modifiedOffset 536, 51 lines modified
536 successful,·or·error·if·it·is·not.·If·the·connection·is·not·yet·established,·we536 successful,·or·error·if·it·is·not.·If·the·connection·is·not·yet·established,·we
537 simply·return;·<code·class="inline">ready_io</code>·is·called·again.</p><p>If·we·have·a·result·from·a·connect,·indicated·by·having·data·in·the·<code·class="inline">x</code>·buffer,537 simply·return;·<code·class="inline">ready_io</code>·is·called·again.</p><p>If·we·have·a·result·from·a·connect,·indicated·by·having·data·in·the·<code·class="inline">x</code>·buffer,
538 we·no·longer·need·to·select·on·output·(<a·href="../../../erts-15.0.1/doc/html/driver_entry.html#ready_output"·title=""><code·class="inline">ready_output</code></a>),·so·we·remove·this·by538 we·no·longer·need·to·select·on·output·(<a·href="../../../erts-15.0.1/doc/html/driver_entry.html#ready_output"·title=""><code·class="inline">ready_output</code></a>),·so·we·remove·this·by
539 calling·<a·href="../../../erts-15.0.1/doc/html/erl_driver.html#driver_select"·title=""><code·class="inline">driver_select</code></a>.</p><p>If·we·are·not·connecting,·we·wait·for·results·from·a·<code·class="inline">PQsendQuery</code>,·so·we·get539 calling·<a·href="../../../erts-15.0.1/doc/html/erl_driver.html#driver_select"·title=""><code·class="inline">driver_select</code></a>.</p><p>If·we·are·not·connecting,·we·wait·for·results·from·a·<code·class="inline">PQsendQuery</code>,·so·we·get
540 the·result·and·return·it.·The·encoding·is·done·with·the·same·functions·as·in·the540 the·result·and·return·it.·The·encoding·is·done·with·the·same·functions·as·in·the
541 earlier·example.</p><p>Error·handling·is·to·be·added·here,·for·example,·checking·that·the·socket·is541 earlier·example.</p><p>Error·handling·is·to·be·added·here,·for·example,·checking·that·the·socket·is
542 still·open,·but·this·is·only·a·simple·example.</p><p>The·Erlang·part·of·the·asynchronous·driver·consists·of·the·sample·file542 still·open,·but·this·is·only·a·simple·example.</p><p>The·Erlang·part·of·the·asynchronous·driver·consists·of·the·sample·file
543 <code·class="inline">pg_async.erl</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7539854598-1">(</span><span·class="ss">pg_async</span><span·class="p"·data-group-id="7539854598-1">)</span><span·class="p">.</span><span·class="w">543 <code·class="inline">pg_async.erl</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7215873392-1">(</span><span·class="ss">pg_async</span><span·class="p"·data-group-id="7215873392-1">)</span><span·class="p">.</span><span·class="w">
544 </span><span·class="w">544 </span><span·class="w">
545 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7539854598-2">(</span><span·class="n">DRV_CONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$C</span><span·class="p"·data-group-id="7539854598-2">)</span><span·class="p">.</span><span·class="w">545 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7215873392-2">(</span><span·class="n">DRV_CONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$C</span><span·class="p"·data-group-id="7215873392-2">)</span><span·class="p">.</span><span·class="w">
546 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7539854598-3">(</span><span·class="n">DRV_DISCONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$D</span><span·class="p"·data-group-id="7539854598-3">)</span><span·class="p">.</span><span·class="w">546 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7215873392-3">(</span><span·class="n">DRV_DISCONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$D</span><span·class="p"·data-group-id="7215873392-3">)</span><span·class="p">.</span><span·class="w">
547 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7539854598-4">(</span><span·class="n">DRV_SELECT</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$S</span><span·class="p"·data-group-id="7539854598-4">)</span><span·class="p">.</span><span·class="w">547 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7215873392-4">(</span><span·class="n">DRV_SELECT</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$S</span><span·class="p"·data-group-id="7215873392-4">)</span><span·class="p">.</span><span·class="w">
548 </span><span·class="w">548 </span><span·class="w">
549 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7539854598-5">(</span><span·class="p"·data-group-id="7539854598-6">[</span><span·class="ss">connect</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disconnect</span><span·class="p">/</s[·...·truncated·by·diffoscope;·len:·250,·SHA:·1aff5766b371450047818f4e61d2424453ddd7ff28a2a1da429f39931ba4dcb9·...·]-5">)</span><span·class="p">.</span><span·class="w">549 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7215873392-5">(</span><span·class="p"·data-group-id="7215873392-6">[</span><span·class="ss">connect</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disconnect</span><span·class="p">/</s[·...·truncated·by·diffoscope;·len:·250,·SHA:·bfc4194d99356c2ad17621b57fea761efb21735d9510d987d8806cfcf02dd85c·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
550 </span><span·class="nf">connect</span><span·class="p"·data-group-id="7539854598-7">(</span><span·class="n">ConnectStr</span><span·class="p"·data-group-id="7539854598-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">550 </span><span·class="nf">connect</span><span·class="p"·data-group-id="7215873392-7">(</span><span·class="n">ConnectStr</span><span·class="p"·data-group-id="7215873392-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
551 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="7539854598-8">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;pg_async&quot;</span><span·class="p"·data-group-id="7539854598-8">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">551 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="7215873392-8">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;pg_async&quot;</span><span·class="p"·data-group-id="7215873392-8">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
552 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">552 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
553 ········</span><span·class="p"·data-group-id="7539854598-9">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="7539854598-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">553 ········</span><span·class="p"·data-group-id="7215873392-9">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="7215873392-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
554 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="7539854598-10">(</span><span·class="p"·data-group-id="7539854598-11">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">could_not_load_driver</span><span·class="p"·data-group-id="7539854598-11">}</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·d6fd57605278cf299770e4c1cf23d5b5db45181d712e8e41e18b9e874fe11e67·...·]-10">)</span><span·class="w">554 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="7215873392-10">(</span><span·class="p"·data-group-id="7215873392-11">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">could_not_load_driver</span><span·class="p"·data-group-id="7215873392-11">}</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·7f360d83f03a12918a7a2492857bca346f1d59c31feabf306101c66ccee5ff54·...·]-10">)</span><span·class="w">
555 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">555 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
556 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="7539854598-12">(</span><span·class="p"·data-group-id="7539854598-13">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p"·data-group-id="7539854598-13">}</s[·...·truncated·by·diffoscope;·len:·231,·SHA:·959a6d1ed25779e3b3bdbc34ba9c7390bc7eea903524c3b4eee9dc1507175f79·...·]-12">)</span><span·class="p">,</span><span·class="w">556 ····</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="7215873392-12">(</span><span·class="p"·data-group-id="7215873392-13">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p"·data-group-id="7215873392-13">}</s[·...·truncated·by·diffoscope;·len:·231,·SHA:·5e4ae13f03ec86acf109497053323b919ea19de221e868e7d697fa7178465bcb·...·]-12">)</span><span·class="p">,</span><span·class="w">
557 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7539854598-15">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_CONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ConnectStr</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·32be014a0ba96fb10f0d8db0479b1002eaf246fbe9ae56a5b3aeb3b55c26faaa·...·]-15">)</span><span·class="p">,</span><span·class="w">557 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7215873392-15">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_CONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ConnectStr</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·9a79acc7fcc9c3aa5c7a6650f95b3117c99bef15b849c1b25a63ef031513830d·...·]-15">)</span><span·class="p">,</span><span·class="w">
558 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="7539854598-16">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7539854598-16">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">558 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="7215873392-16">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7215873392-16">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
559 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">559 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
560 ············</span><span·class="p"·data-group-id="7539854598-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="7539854598-17">}</span><span·class="p">;</span><span·class="w">560 ············</span><span·class="p"·data-group-id="7215873392-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="7215873392-17">}</span><span·class="p">;</span><span·class="w">
561 ········</span><span·class="n">Error</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">561 ········</span><span·class="n">Error</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
562 ············</span><span·class="n">Error</span><span·class="w">562 ············</span><span·class="n">Error</span><span·class="w">
563 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">563 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
564 </span><span·class="nf">disconnect</span><span·class="p"·data-group-id="7539854598-18">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7539854598-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">564 </span><span·class="nf">disconnect</span><span·class="p"·data-group-id="7215873392-18">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7215873392-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
565 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7539854598-19">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_DISCONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·d455c9f4fc6350073d52c2bb8d2c357b77259c7c6bcfb00d296d69307560dbb4·...·]-19">)</span><span·class="p">,</span><span·class="w">565 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7215873392-19">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_DISCONNECT</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·f9a669a99e82f4385c20fb5fec1eeff4db71f97aa651e5f500a06650c4c9c5fc·...·]-19">)</span><span·class="p">,</span><span·class="w">
566 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="7539854598-20">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7539854598-20">)</span><span·class="p">,</span><span·class="w"> 
567 ····</span><span·class="nf">port_close</span><span·class="p"·data-group-id="7539854598-21">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7539854598-21">)</span><span·class="p">,</span><span·class="w">566 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="7215873392-20">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7215873392-20">)</span><span·class="p">,</span><span·class="w">
 567 ····</span><span·class="nf">port_close</span><span·class="p"·data-group-id="7215873392-21">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7215873392-21">)</span><span·class="p">,</span><span·class="w">
568 ····</span><span·class="n">R</span><span·class="p">.</span><span·class="w">568 ····</span><span·class="n">R</span><span·class="p">.</span><span·class="w">
  
569 </span><span·class="nf">select</span><span·class="p"·data-group-id="7539854598-22">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Query</span><span·class="p"·data-group-id="7539854598-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">569 </span><span·class="nf">select</span><span·class="p"·data-group-id="7215873392-22">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Query</span><span·class="p"·data-group-id="7215873392-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
570 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7539854598-23">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_SELECT</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Query</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·a11a09e129b68211e6e4f017b8132034d3d81a213b874671e666d29f2d859268·...·]-23">)</span><span·class="p">,</span><span·class="w">570 ····</span><span·class="nf">port_control</span><span·class="p"·data-group-id="7215873392-23">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">DRV_SELECT</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Query</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·36c2c8777dc7648f3c618e782bde677cc3e27d83ec0ee25f7fda05cd09acff96·...·]-23">)</span><span·class="p">,</span><span·class="w">
571 ····</span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="7539854598-24">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7539854598-24">)</span><span·class="p">.</span><span·class="w">571 ····</span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="7215873392-24">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7215873392-24">)</span><span·class="p">.</span><span·class="w">
  
572 </span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="7539854598-25">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7539854598-25">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">572 </span><span·class="nf">return_port_data</span><span·class="p"·data-group-id="7215873392-25">(</span><span·class="n">Port</span><span·class="p"·data-group-id="7215873392-25">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
573 ····</span><span·class="k">receive</span><span·class="w">573 ····</span><span·class="k">receive</span><span·class="w">
574 ········</span><span·class="p"·data-group-id="7539854598-26">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7539854598-27">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·a3af28f89b250d4fd7cd9e527490fe30e782204e065f135d7c8c13c2ccbc6a96·...·]-26">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">574 ········</span><span·class="p"·data-group-id="7215873392-26">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7215873392-27">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·986c27bee2aa79bd5237e8a7b6b64e792b55fd29b814034e41d03ddfafe094cb·...·]-26">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
575 ············</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="7539854598-28">(</span><span·class="n">Data</span><span·class="p"·data-group-id="7539854598-28">)</span><span·class="w">575 ············</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="7215873392-28">(</span><span·class="n">Data</span><span·class="p"·data-group-id="7215873392-28">)</span><span·class="w">
576 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·Erlang·code·is·slightly·different,·as·we·do·not·return·the·result576 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·Erlang·code·is·slightly·different,·as·we·do·not·return·the·result
577 synchronously·from·<a·href="erlang.html#port_control/3"><code·class="inline">port_control/3</code></a>,·instead·we·get·it·from·<a·href="../../../erts-15.0.1/doc/html/erl_driver.html#driver_output"·title=""><code·class="inline">driver_output</code></a>·as577 synchronously·from·<a·href="erlang.html#port_control/3"><code·class="inline">port_control/3</code></a>,·instead·we·get·it·from·<a·href="../../../erts-15.0.1/doc/html/erl_driver.html#driver_output"·title=""><code·class="inline">driver_output</code></a>·as
578 data·in·the·message·queue.·The·function·<code·class="inline">return_port_data</code>·above·receives·data578 data·in·the·message·queue.·The·function·<code·class="inline">return_port_data</code>·above·receives·data
579 from·the·port.·As·the·data·is·in·binary·format,·we·use579 from·the·port.·As·the·data·is·in·binary·format,·we·use
580 <a·href="erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>·to·convert·it·to·an·Erlang·term.·Notice580 <a·href="erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>·to·convert·it·to·an·Erlang·term.·Notice
581 that·the·driver·is·opened·in·binary·mode·(<a·href="erlang.html#open_port/2"><code·class="inline">open_port/2</code></a>·is581 that·the·driver·is·opened·in·binary·mode·(<a·href="erlang.html#open_port/2"><code·class="inline">open_port/2</code></a>·is
582 called·with·option·<code·class="inline">[binary]</code>).·This·means·that·data·sent·from·the·driver·to·the582 called·with·option·<code·class="inline">[binary]</code>).·This·means·that·data·sent·from·the·driver·to·the
Offset 677, 59 lines modifiedOffset 677, 59 lines modified
677 ····*rp++·=·ERL_DRV_LIST;677 ····*rp++·=·ERL_DRV_LIST;
678 ····*rp++·=·n+1;678 ····*rp++·=·n+1;
679 ····driver_output_term(port,·result,·result_n);679 ····driver_output_term(port,·result,·result_n);
680 ····delete[]·result;680 ····delete[]·result;
681 ····delete·d;681 ····delete·d;
682 }</code></pre><p>This·driver·is·called·like·the·others·from·Erlang.·However,·as·we·use682 }</code></pre><p>This·driver·is·called·like·the·others·from·Erlang.·However,·as·we·use
683 <a·href="../../../erts-15.0.1/doc/html/erl_driver.html#driver_output_term"·title=""><code·class="inline">driver_output_term</code></a>,·there·is·no·need·to·call·<a·href="erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>.·The·Erlang·code683 <a·href="../../../erts-15.0.1/doc/html/erl_driver.html#driver_output_term"·title=""><code·class="inline">driver_output_term</code></a>,·there·is·no·need·to·call·<a·href="erlang.html#binary_to_term/1"><code·class="inline">binary_to_term/1</code></a>.·The·Erlang·code
684 is·in·the·sample·file·<code·class="inline">next_perm.erl</code>.</p><p>The·input·is·changed·into·a·list·of·integers·and·sent·to·the·driver.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4503539360-1">(</span><span·class="ss">next_perm</span><span·class="p"·data-group-id="4503539360-1">)</span><span·class="p">.</span><span·class="w">684 is·in·the·sample·file·<code·class="inline">next_perm.erl</code>.</p><p>The·input·is·changed·into·a·list·of·integers·and·sent·to·the·driver.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7792397389-1">(</span><span·class="ss">next_perm</span><span·class="p"·data-group-id="7792397389-1">)</span><span·class="p">.</span><span·class="w">
685 </span><span·class="w">685 </span><span·class="w">
686 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4503539360-2">(</span><span·class="p"·data-group-id="4503539360-3">[</span><span·class="ss">next_perm</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prev_perm</span><span·class="p">/<[·...·truncated·by·diffoscope;·len:·379,·SHA:·8d479d257e3e1fb70ba0b54963dd4423504e2b25d2e343b2cc6d09bc53052b62·...·]-2">)</span><span·class="p">.</span><span·class="w">686 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7792397389-2">(</span><span·class="p"·data-group-id="7792397389-3">[</span><span·class="ss">next_perm</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prev_perm</span><span·class="p">/<[·...·truncated·by·diffoscope;·len:·379,·SHA:·38f58c09362c5074a76be2f88c08b8aee32f247085838df2b15a1cdf80666a9e·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
687 </span><span·class="nf">load</span><span·class="p"·data-group-id="4503539360-4">(</span><span·class="p"·data-group-id="4503539360-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">687 </span><span·class="nf">load</span><span·class="p"·data-group-id="7792397389-4">(</span><span·class="p"·data-group-id="7792397389-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
688 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">whereis</span><span·class="p"·data-group-id="4503539360-5">(</span><span·class="ss">next_perm</span><span·class="p"·data-group-id="4503539360-5">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">688 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">whereis</span><span·class="p"·data-group-id="7792397389-5">(</span><span·class="ss">next_perm</span><span·class="p"·data-group-id="7792397389-5">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
689 ········</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">689 ········</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
690 ············</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="4503539360-6">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;next_perm&quot;</span><span·class="p"·data-group-id="4503539360-6">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">690 ············</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">erl_ddll</span><span·class="p">:</span><span·class="nf">load_driver</span><span·class="p"·data-group-id="7792397389-6">(</span><span·class="s">&quot;.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;next_perm&quot;</span><span·class="p"·data-group-id="7792397389-6">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
691 ················</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">691 ················</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
692 ················</span><span·class="p"·data-group-id="4503539360-7">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="4503539360-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">692 ················</span><span·class="p"·data-group-id="7792397389-7">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">already_loaded</span><span·class="p"·data-group-id="7792397389-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
693 ················</span><span·class="n">E</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="4503539360-8">(</span><span·class="n">E</span><span·class="p"·data-group-id="4503539360-8">)</span><span·class="w">693 ················</span><span·class="n">E</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">exit</span><span·class="p"·data-group-id="7792397389-8">(</span><span·class="n">E</span><span·class="p"·data-group-id="7792397389-8">)</span><span·class="w">
694 ············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">694 ············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
695 ············</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="4503539360-9">(</span><span·class="p"·data-group-id="4503539360-10">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;next_perm&quot;</span><span·class="p"·data-group-id="4503539360-10">}</span><span[·...·truncated·by·diffoscope;·len:·192,·SHA:·ef3b7049db4a335203ea93d261cb83d93609bf8ad7af3b17f67842c9f224a596·...·]-9">)</span><span·class="p">,</span><span·class="w">695 ············</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">open_port</span><span·class="p"·data-group-id="7792397389-9">(</span><span·class="p"·data-group-id="7792397389-10">{</span><span·class="nb">spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;next_perm&quot;</span><span·class="p"·data-group-id="7792397389-10">}</span><span[·...·truncated·by·diffoscope;·len:·192,·SHA:·1a06f203fd5b0c73e3521ee73da2adcb2ed17ebd2f6396ca33da2b4fb430c94a·...·]-9">)</span><span·class="p">,</span><span·class="w">
696 ············</span><span·class="nf">register</span><span·class="p"·data-group-id="4503539360-12">(</span><span·class="ss">next_perm</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="4503539360-12">)</span><span·class="p">;</span><span·class="w">696 ············</span><span·class="nf">register</span><span·class="p"·data-group-id="7792397389-12">(</span><span·class="ss">next_perm</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="7792397389-12">)</span><span·class="p">;</span><span·class="w">
697 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">697 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
698 ············</span><span·class="ss">ok</span><span·class="w">698 ············</span><span·class="ss">ok</span><span·class="w">
699 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">699 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
700 </span><span·class="nf">list_to_integer_binaries</span><span·class="p"·data-group-id="4503539360-13">(</span><span·class="n">L</span><span·class="p"·data-group-id="4503539360-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">700 </span><span·class="nf">list_to_integer_binaries</span><span·class="p"·data-group-id="7792397389-13">(</span><span·class="n">L</span><span·class="p"·data-group-id="7792397389-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
701 ····</span><span·class="p"·data-group-id="4503539360-14">[</span><span·class="p">&lt;&lt;</span><span·class="n">I</span><span·class="p">:</span><span·class="mi">32</span><span·class="o">/</span><span·class="ss">integer</span><span·class="o">-</span><span·class="ss">native</span><span·class="p">&gt[·...·truncated·by·diffoscope;·len:·250,·SHA:·1a737bc71923a0eb3b193c3a25ab3bc0bba926a61d4bfc1bc30d8f94575e8d15·...·]-14">]</span><span·class="p">.</span><span·class="w">701 ····</span><span·class="p"·data-group-id="7792397389-14">[</span><span·class="p">&lt;&lt;</span><span·class="n">I</span><span·class="p">:</span><span·class="mi">32</span><span·class="o">/</span><span·class="ss">integer</span><span·class="o">-</span><span·class="ss">native</span><span·class="p">&gt[·...·truncated·by·diffoscope;·len:·250,·SHA:·6d0b00177ff2369d70c1846b916e0006db1328c9723745d78e238e263f333685·...·]-14">]</span><span·class="p">.</span><span·class="w">
  
702 </span><span·class="nf">next_perm</span><span·class="p"·data-group-id="4503539360-15">(</span><span·class="n">L</span><span·class="p"·data-group-id="4503539360-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">702 </span><span·class="nf">next_perm</span><span·class="p"·data-group-id="7792397389-15">(</span><span·class="n">L</span><span·class="p"·data-group-id="7792397389-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
703 ····</span><span·class="nf">next_perm</span><span·class="p"·data-group-id="4503539360-16">(</span><span·class="n">L</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="4503539360-16">)</span><span·class="p">.</span><span·class="w">703 ····</span><span·class="nf">next_perm</span><span·class="p"·data-group-id="7792397389-16">(</span><span·class="n">L</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7792397389-16">)</span><span·class="p">.</span><span·class="w">
  
Max diff block lines reached; 9112/58647 bytes (15.54%) of diff not shown.
626 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/driver_entry.html
    
Offset 417, 15 lines modifiedOffset 417, 15 lines modified
417 ······<p·class="built-using">417 ······<p·class="built-using">
418 ········Built·using418 ········Built·using
419 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the419 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
420 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>420 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
421 ······</p>421 ······</p>
422 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>422 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
423 ····</footer>423 ····</footer>
424 ··</div>424 ··</div>
425 </main>425 </main>
426 </div>426 </div>
427 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>427 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
428 <script>428 <script>
429 ··document.addEventListener("DOMContentLoaded",·function·()·{429 ··document.addEventListener("DOMContentLoaded",·function·()·{
578 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/epmd_cmd.html
    
Offset 301, 15 lines modifiedOffset 301, 15 lines modified
301 ······<p·class="built-using">301 ······<p·class="built-using">
302 ········Built·using302 ········Built·using
303 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the303 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
304 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>304 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
305 ······</p>305 ······</p>
306 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>306 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
307 ····</footer>307 ····</footer>
308 ··</div>308 ··</div>
309 </main>309 </main>
310 </div>310 </div>
311 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>311 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
312 <script>312 <script>
313 ··document.addEventListener("DOMContentLoaded",·function·()·{313 ··document.addEventListener("DOMContentLoaded",·function·()·{
618 B
html2text {}
Max HTML report size reached
29.8 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erl_cmd.html
    
Offset 143, 26 lines modifiedOffset 143, 26 lines modified
143 runtime·system,·more·specifically·to·the·<code·class="inline">init</code>·system·process,·see·<a·href="init.html"><code·class="inline">init</code></a>.</p><p>The·<code·class="inline">init</code>·process·itself·interprets·some·of·these·flags,·the·<em>init·flags</em>.·It143 runtime·system,·more·specifically·to·the·<code·class="inline">init</code>·system·process,·see·<a·href="init.html"><code·class="inline">init</code></a>.</p><p>The·<code·class="inline">init</code>·process·itself·interprets·some·of·these·flags,·the·<em>init·flags</em>.·It
144 also·stores·any·remaining·flags,·the·<em>user·flags</em>.·The·latter·can·be·retrieved144 also·stores·any·remaining·flags,·the·<em>user·flags</em>.·The·latter·can·be·retrieved
145 by·calling·<a·href="init.html#get_argument/1"><code·class="inline">init:get_argument/1</code></a>.</p><p>A·small·number·of·&quot;-&quot;·flags·exist,·which·now·actually·are·emulator·flags,·see145 by·calling·<a·href="init.html#get_argument/1"><code·class="inline">init:get_argument/1</code></a>.</p><p>A·small·number·of·&quot;-&quot;·flags·exist,·which·now·actually·are·emulator·flags,·see
146 the·description·below.</p></li><li><p>Plain·arguments·are·not·interpreted·in·any·way.·They·are·also·stored·by·the146 the·description·below.</p></li><li><p>Plain·arguments·are·not·interpreted·in·any·way.·They·are·also·stored·by·the
147 <code·class="inline">init</code>·process·and·can·be·retrieved·by·calling·<a·href="init.html#get_plain_arguments/0"><code·class="inline">init:get_plain_arguments/0</code></a>.147 <code·class="inline">init</code>·process·and·can·be·retrieved·by·calling·<a·href="init.html#get_plain_arguments/0"><code·class="inline">init:get_plain_arguments/0</code></a>.
148 Plain·arguments·can·occur·before·the·first·flag,·or·after·a·<code·class="inline">--</code>·flag.·Also,148 Plain·arguments·can·occur·before·the·first·flag,·or·after·a·<code·class="inline">--</code>·flag.·Also,
149 the·<code·class="inline">-extra</code>·flag·causes·everything·that·follows·to·become·plain·arguments.</p></li></ul><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·+W·w·-sname·arnie·+R·9·-s·my_init·-extra·+bertie</span><span·class="gp·unselectable">149 the·<code·class="inline">-extra</code>·flag·causes·everything·that·follows·to·become·plain·arguments.</p></li></ul><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·+W·w·-sname·arnie·+R·9·-s·my_init·-extra·+bertie</span><span·class="gp·unselectable">
150 (arnie@host)1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="9706569159-1">(</span><span·class="ss">sname</span><span·class="p"·data-group-id="9706569159-1">)</span><span·class="p">.</span><span·class="w">150 (arnie@host)1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="0294583107-1">(</span><span·class="ss">sname</span><span·class="p"·data-group-id="0294583107-1">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p"·data-group-id="9706569159-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9706569159-3">[</span><span·class="p"·data-group-id="9706569159-4">[</span><span·class="s">&quot;arnie&quot;</span><span·class="p"·data-group-id="9706569[·...·truncated·by·diffoscope;·len:·109,·SHA:·08349ee64a9da4a44972a4cfa28c3024e12fa453313c03f5596ac6cf852adf04·...·]-2">}</span><span·class="gp·unselectable">151 </span><span·class="p"·data-group-id="0294583107-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0294583107-3">[</span><span·class="p"·data-group-id="0294583107-4">[</span><span·class="s">&quot;arnie&quot;</span><span·class="p"·data-group-id="0294583[·...·truncated·by·diffoscope;·len:·109,·SHA:·b884643be9894a23e039d9d987fc47e260f7d6ff8064bca7ba201a6073136412·...·]-2">}</span><span·class="gp·unselectable">
152 (arnie@host)2&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_plain_arguments</span><span·class="p"·data-group-id="9706569159-5">(</span><span·class="p"·data-group-id="9706569159-5">)</span><span·class="p">.</span><span·class="w">152 (arnie@host)2&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_plain_arguments</span><span·class="p"·data-group-id="0294583107-5">(</span><span·class="p"·data-group-id="0294583107-5">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="p"·data-group-id="9706569159-6">[</span><span·class="s">&quot;+bertie&quot;</span><span·class="p"·data-group-id="9706569159-6">]</span></code></pre><p>Here·<code·class="inline">+W·w</code>·and·<code·class="inline">+R·9</code>·are·emulator·flags.·<code·class="inline">-s·my_init</code>·is·an·init·flag,153 </span><span·class="p"·data-group-id="0294583107-6">[</span><span·class="s">&quot;+bertie&quot;</span><span·class="p"·data-group-id="0294583107-6">]</span></code></pre><p>Here·<code·class="inline">+W·w</code>·and·<code·class="inline">+R·9</code>·are·emulator·flags.·<code·class="inline">-s·my_init</code>·is·an·init·flag,
154 interpreted·by·<code·class="inline">init</code>.·<code·class="inline">-sname·arnie</code>·is·a·user·flag,·stored·by·<code·class="inline">init</code>.·It·is154 interpreted·by·<code·class="inline">init</code>.·<code·class="inline">-sname·arnie</code>·is·a·user·flag,·stored·by·<code·class="inline">init</code>.·It·is
155 read·by·Kernel·and·causes·the·Erlang·runtime·system·to·become·distributed.155 read·by·Kernel·and·causes·the·Erlang·runtime·system·to·become·distributed.
156 Finally,·everything·after·<code·class="inline">-extra</code>·(that·is,·<code·class="inline">+bertie</code>)·is·considered·as·plain156 Finally,·everything·after·<code·class="inline">-extra</code>·(that·is,·<code·class="inline">+bertie</code>)·is·considered·as·plain
157 arguments.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-myflag·1</span><span·class="gp·unselectable">157 arguments.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-myflag·1</span><span·class="gp·unselectable">
158 1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="3375056013-1">(</span><span·class="ss">myflag</span><span·class="p"·data-group-id="3375056013-1">)</span><span·class="p">.</span><span·class="w">158 1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="3248334075-1">(</span><span·class="ss">myflag</span><span·class="p"·data-group-id="3248334075-1">)</span><span·class="p">.</span><span·class="w">
159 </span><span·class="p"·data-group-id="3375056013-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3375056013-3">[</span><span·class="p"·data-group-id="3375056013-4">[</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="3375056013-4[·...·truncated·by·diffoscope;·len:·104,·SHA:·561b0e29335bb40c73bdd571000319be70c5b204324bf8a39c77042edaf98862·...·]-2">}</span><span·class="gp·unselectable">159 </span><span·class="p"·data-group-id="3248334075-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3248334075-3">[</span><span·class="p"·data-group-id="3248334075-4">[</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="3248334075-4[·...·truncated·by·diffoscope;·len:·104,·SHA:·f44dcd16e6e505b786082298eda95b1402754fc27ba8dc3a6e69c27797ecee9d·...·]-2">}</span><span·class="gp·unselectable">
160 2&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_plain_arguments</span><span·class="p"·data-group-id="3375056013-5">(</span><span·class="p"·data-group-id="3375056013-5">)</span><span·class="p">.</span><span·class="w">160 2&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_plain_arguments</span><span·class="p"·data-group-id="3248334075-5">(</span><span·class="p"·data-group-id="3248334075-5">)</span><span·class="p">.</span><span·class="w">
161 </span><span·class="p"·data-group-id="3375056013-6">[</span><span·class="p"·data-group-id="3375056013-6">]</span></code></pre><p>Here·the·user·flag·<code·class="inline">-myflag·1</code>·is·passed·to·and·stored·by·the·<code·class="inline">init</code>·process.·It161 </span><span·class="p"·data-group-id="3248334075-6">[</span><span·class="p"·data-group-id="3248334075-6">]</span></code></pre><p>Here·the·user·flag·<code·class="inline">-myflag·1</code>·is·passed·to·and·stored·by·the·<code·class="inline">init</code>·process.·It
162 is·a·user-defined·flag,·presumably·used·by·some·user-defined·application.</p><p><a·href=""·id="init_flags"></a></p><h2·id="flags"·class="section-heading">162 is·a·user-defined·flag,·presumably·used·by·some·user-defined·application.</p><p><a·href=""·id="init_flags"></a></p><h2·id="flags"·class="section-heading">
163 ··<a·href="#flags"·class="hover-link">163 ··<a·href="#flags"·class="hover-link">
164 ····<i·class="ri-link-m"·aria-hidden="true"></i>164 ····<i·class="ri-link-m"·aria-hidden="true"></i>
165 ··</a>165 ··</a>
166 ··<span·class="text">Flags</span>166 ··<span·class="text">Flags</span>
167 </h2>167 </h2>
168 <p>In·the·following·list,·init·flags·are·marked·&quot;(init·flag)&quot;.·Unless·otherwise168 <p>In·the·following·list,·init·flags·are·marked·&quot;(init·flag)&quot;.·Unless·otherwise
Offset 709, 30 lines modifiedOffset 709, 30 lines modified
709 node.</li><li><code·class="inline">&lt;LogicalIds&gt;&lt;ThreadIds&gt;&lt;CoreIds&gt;&lt;NodeIds&gt;&lt;ProcessorIds&gt;</code>,·that·is,·thread709 node.</li><li><code·class="inline">&lt;LogicalIds&gt;&lt;ThreadIds&gt;&lt;CoreIds&gt;&lt;NodeIds&gt;&lt;ProcessorIds&gt;</code>,·that·is,·thread
710 is·part·of·a·core·that·is·part·of·a·NUMA·node,·which·is·part·of·a710 is·part·of·a·core·that·is·part·of·a·NUMA·node,·which·is·part·of·a
711 processor.</li></ul><p>A·CPU·topology·can·consist·of·both·processor·external,·and·processor711 processor.</li></ul><p>A·CPU·topology·can·consist·of·both·processor·external,·and·processor
712 internal·NUMA·nodes·as·long·as·each·logical·processor·belongs·to·only·one712 internal·NUMA·nodes·as·long·as·each·logical·processor·belongs·to·only·one
713 NUMA·node.·If·<code·class="inline">&lt;ProcessorIds&gt;</code>·is·omitted,·its·default·position·is·before713 NUMA·node.·If·<code·class="inline">&lt;ProcessorIds&gt;</code>·is·omitted,·its·default·position·is·before
714 <code·class="inline">&lt;NodeIds&gt;</code>.·That·is,·the·default·is·processor·external·NUMA·nodes.</p><p>If·a·list·of·identifiers·is·used·in·an·<code·class="inline">&lt;IdDefs&gt;</code>:</p><ul><li><code·class="inline">&lt;LogicalIds&gt;</code>·must·be·a·list·of·identifiers.</li><li>At·least·one·other·identifier·type·besides·<code·class="inline">&lt;LogicalIds&gt;</code>·must·also·have·a714 <code·class="inline">&lt;NodeIds&gt;</code>.·That·is,·the·default·is·processor·external·NUMA·nodes.</p><p>If·a·list·of·identifiers·is·used·in·an·<code·class="inline">&lt;IdDefs&gt;</code>:</p><ul><li><code·class="inline">&lt;LogicalIds&gt;</code>·must·be·a·list·of·identifiers.</li><li>At·least·one·other·identifier·type·besides·<code·class="inline">&lt;LogicalIds&gt;</code>·must·also·have·a
715 list·of·identifiers.</li><li>All·lists·of·identifiers·must·produce·the·same·number·of·identifiers.</li></ul><p>A·simple·example.·A·single·quad·core·processor·can·be·described·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·+sct·L0-3c0-3</span><span·class="gp·unselectable">715 list·of·identifiers.</li><li>All·lists·of·identifiers·must·produce·the·same·number·of·identifiers.</li></ul><p>A·simple·example.·A·single·quad·core·processor·can·be·described·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·+sct·L0-3c0-3</span><span·class="gp·unselectable">
716 1&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="8584563876-1">(</span><span·class="ss">cpu_topology</span><span·class="p"·data-group-id="8584563876-1">)</span><span·class="p">.</span><span·class="w">716 1&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="9290252922-1">(</span><span·class="ss">cpu_topology</span><span·class="p"·data-group-id="9290252922-1">)</span><span·class="p">.</span><span·class="w">
717 </span><span·class="p"·data-group-id="8584563876-2">[</span><span·class="p"·data-group-id="8584563876-3">{</span><span·class="ss">processor</span><span·class="p">,</span><span·class="p"·data-group-id="8584563876-4">[</span><span·class="p"·data-group-id="8584563876-5">{</span><span·class="ss">c[·...·truncated·by·diffoscope;·len:·261,·SHA:·43c84e6ea456c418a1bf0a2a47fed4bfe1c7a6a7d0aaf0523cd9308353d9e4aa·...·]-5">}</span><span·class="p">,</span><span·class="w">717 </span><span·class="p"·data-group-id="9290252922-2">[</span><span·class="p"·data-group-id="9290252922-3">{</span><span·class="ss">processor</span><span·class="p">,</span><span·class="p"·data-group-id="9290252922-4">[</span><span·class="p"·data-group-id="9290252922-5">{</span><span·class="ss">c[·...·truncated·by·diffoscope;·len:·261,·SHA:·8a3e8e948f981fd7ca5060c432bd1395775d8e2f3f962a1408aab60ccbb93e4a·...·]-5">}</span><span·class="p">,</span><span·class="w">
718 ·············</span><span·class="p"·data-group-id="8584563876-7">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="8584563876-8">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8584563876-8">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·8b1b2371f5b4470636720ff5a41ae79a40cd8477071ba7018f98b49bee49a146·...·]-7">}</span><span·class="p">,</span><span·class="w">718 ·············</span><span·class="p"·data-group-id="9290252922-7">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="9290252922-8">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9290252922-8">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·82902576931bbef3a7c37ea7eafe1a6bdf76ac29ff419d2273ca2296140177d0·...·]-7">}</span><span·class="p">,</span><span·class="w">
719 ·············</span><span·class="p"·data-group-id="8584563876-9">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="8584563876-10">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="8584563876-10">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·cf585936287d00a16a76645ac47ca81aafec1d78609627b0c7030a202fc48a32·...·]-9">}</span><span·class="p">,</span><span·class="w">719 ·············</span><span·class="p"·data-group-id="9290252922-9">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="9290252922-10">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="9290252922-10">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·49c50d5aa1f35ad23983c33be8c75437e75e90f96f3fcb5b4500a99320778e5d·...·]-9">}</span><span·class="p">,</span><span·class="w">
720 ·············</span><span·class="p"·data-group-id="8584563876-11">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="8584563876-12">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="8584563876-12">}[·...·truncated·by·diffoscope;·len:·208,·SHA:·1ffb08835397f9709d0bce4bcdb3d27fc1782ba88421386c2355ea1b438a7d9d·...·]-2">]</span></code></pre><p>A·more·complicated·example·with·two·quad·core·processors,·each·processor·in720 ·············</span><span·class="p"·data-group-id="9290252922-11">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="9290252922-12">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="9290252922-12">}[·...·truncated·by·diffoscope;·len:·208,·SHA:·5f74a13407ca2cffd9e7c273b065c3e66c65b32c0d2721f399591da684b52658·...·]-2">]</span></code></pre><p>A·more·complicated·example·with·two·quad·core·processors,·each·processor·in
721 its·own·NUMA·node.·The·ordering·of·logical·processors·is·a·bit·weird.·This721 its·own·NUMA·node.·The·ordering·of·logical·processors·is·a·bit·weird.·This
722 to·give·a·better·example·of·identifier·lists:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·+sct·L0-1,3-2c0-3p0N0:L7,4,6-5c0-3p1N1</span><span·class="gp·unselectable">722 to·give·a·better·example·of·identifier·lists:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·+sct·L0-1,3-2c0-3p0N0:L7,4,6-5c0-3p1N1</span><span·class="gp·unselectable">
723 1&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="2441302512-1">(</span><span·class="ss">cpu_topology</span><span·class="p"·data-group-id="2441302512-1">)</span><span·class="p">.</span><span·class="w">723 1&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="0010624983-1">(</span><span·class="ss">cpu_topology</span><span·class="p"·data-group-id="0010624983-1">)</span><span·class="p">.</span><span·class="w">
724 </span><span·class="p"·data-group-id="2441302512-2">[</span><span·class="p"·data-group-id="2441302512-3">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="2441302512-4">[</span><span·class="p"·data-group-id="2441302512-5">{</span><span·class="ss">proces[·...·truncated·by·diffoscope;·len:·419,·SHA:·3f658b6e394b5cce196721186396cc33f3a1b462636b1375c7a9f1e5c2c7ed1a·...·]-7">}</span><span·class="p">,</span><span·class="w">724 </span><span·class="p"·data-group-id="0010624983-2">[</span><span·class="p"·data-group-id="0010624983-3">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-4">[</span><span·class="p"·data-group-id="0010624983-5">{</span><span·class="ss">proces[·...·truncated·by·diffoscope;·len:·419,·SHA:·d2dad7913b0f0d6e150acec89d7af43785e6eb348498f004326235c9c8898971·...·]-7">}</span><span·class="p">,</span><span·class="w">
725 ····················</span><span·class="p"·data-group-id="2441302512-9">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2441302512-10">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2441302512-10">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·df8ce93323bdbfc3cd1b85f2613bcc50836a2a596e6f6bdb0275aed1e1939c3e·...·]-9">}</span><span·class="p">,</span><span·class="w">725 ····················</span><span·class="p"·data-group-id="0010624983-9">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-10">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0010624983-10">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·22cfc08cca72417f762c00ae075e0a192fea955ceae5333a8ba40e369cf51cce·...·]-9">}</span><span·class="p">,</span><span·class="w">
726 ····················</span><span·class="p"·data-group-id="2441302512-11">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2441302512-12">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="2441302512-12">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·e08dac91f65fed9a605ad2b1de597c9a28dc890b6117271d568fb92fc8924d2a·...·]-11">}</span><span·class="p">,</span><span·class="w">726 ····················</span><span·class="p"·data-group-id="0010624983-11">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-12">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="0010624983-12">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·a6947c587cc56236e2b866831846c508589d841450e494c87f07caefd045afb7·...·]-11">}</span><span·class="p">,</span><span·class="w">
727 ····················</span><span·class="p"·data-group-id="2441302512-13">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2441302512-14">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="2441302512-14">}</span><span·class="p"·data-group-id="2441302512-13">}</span><span·class="p"·data-group-id="2441302512-6">]</span><span·class="p"·data-group-id="2441302512-5">}</span><span·class="p"·data-group-id="2441302512-4">]</span><span·class="p"·data-group-id="2441302512-3">}</span><span·class="p">,</span><span·class="w"> 
728 ·</span><span·class="p"·data-group-id="2441302512-15">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="2441302512-16">[</span><span·class="p"·data-group-id="2441302512-17">{</span><span·class="ss">processor</span><s[·...·truncated·by·diffoscope;·len:·414,·SHA:·930ea591a76ae8869d3dad620f9003c1f7d31cfbe369f5d2bdd239e5d6f7a3e0·...·]">}</span><span·class="p">,</span><span·class="w">727 ····················</span><span·class="p"·data-group-id="0010624983-13">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-14">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·320,·SHA:·dd5cbf838cc2289963afcdd60b0eb883f52266e1bb899008a18a4b65cabaa32c·...·]">}</span><span·class="p">,</span><span·class="w">
 728 ·</span><span·class="p"·data-group-id="0010624983-15">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-16">[</span><span·class="p"·data-group-id="0010624983-17">{</span><span·class="ss">processor</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-18">[</span><span·class="p"·data-group-id="0010624983-19">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-20">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="0010624983-20">}</span><span·class="p"·data-group-id="0010624983-19">}</span><span·class="p">,</span><span·class="w">
729 ····················</span><span·class="p"·data-group-id="2441302512-21">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2441302512-22">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="2441302512-22">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·e08dac91f65fed9a605ad2b1de597c9a28dc890b6117271d568fb92fc8924d2a·...·]-21">}</span><span·class="p">,</span><span·class="w">729 ····················</span><span·class="p"·data-group-id="0010624983-21">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-22">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="0010624983-22">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·a6947c587cc56236e2b866831846c508589d841450e494c87f07caefd045afb7·...·]-21">}</span><span·class="p">,</span><span·class="w">
730 ····················</span><span·class="p"·data-group-id="2441302512-23">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2441302512-24">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="2441302512-24">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·e08dac91f65fed9a605ad2b1de597c9a28dc890b6117271d568fb92fc8924d2a·...·]-23">}</span><span·class="p">,</span><span·class="w">730 ····················</span><span·class="p"·data-group-id="0010624983-23">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-24">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0010624983-24">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·a6947c587cc56236e2b866831846c508589d841450e494c87f07caefd045afb7·...·]-23">}</span><span·class="p">,</span><span·class="w">
731 ····················</span><span·class="p"·data-group-id="2441302512-25">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="2441302512-26">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="2441302512-26">}[·...·truncated·by·diffoscope;·len:·318,·SHA:·09348910e361a02a8a9c28215e8dac7115183f710f195e75ebdb4cdb23091c31·...·]-2">]</span></code></pre><p>As·long·as·real·identifiers·are·correct,·it·is·OK·to·pass·a·CPU·topology731 ····················</span><span·class="p"·data-group-id="0010624983-25">{</span><span·class="ss">core</span><span·class="p">,</span><span·class="p"·data-group-id="0010624983-26">{</span><span·class="ss">logical</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="0010624983-26">}[·...·truncated·by·diffoscope;·len:·318,·SHA:·6c8b2001af3c83727f1dac3cc4bef2ae85fda49d647e211ef935163ae6a6853d·...·]-2">]</span></code></pre><p>As·long·as·real·identifiers·are·correct,·it·is·OK·to·pass·a·CPU·topology
732 that·is·not·a·correct·description·of·the·CPU·topology.·When·used·with·care732 that·is·not·a·correct·description·of·the·CPU·topology.·When·used·with·care
733 this·can·be·very·useful.·This·to·trick·the·emulator·to·bind·its·schedulers733 this·can·be·very·useful.·This·to·trick·the·emulator·to·bind·its·schedulers
734 as·you·want.·For·example,·if·you·want·to·run·multiple·Erlang·runtime·systems734 as·you·want.·For·example,·if·you·want·to·run·multiple·Erlang·runtime·systems
735 on·the·same·machine,·you·want·to·reduce·the·number·of·schedulers·used·and735 on·the·same·machine,·you·want·to·reduce·the·number·of·schedulers·used·and
736 manipulate·the·CPU·topology·so·that·they·bind·to·different·logical·CPUs.·An736 manipulate·the·CPU·topology·so·that·they·bind·to·different·logical·CPUs.·An
737 example,·with·two·Erlang·runtime·systems·on·a·quad·core·machine:</p><pre><code·class="text">%·erl·+sct·L0-3c0-3·+sbt·db·+S3:2·-detached·-noinput·-noshell·-sname·one737 example,·with·two·Erlang·runtime·systems·on·a·quad·core·machine:</p><pre><code·class="text">%·erl·+sct·L0-3c0-3·+sbt·db·+S3:2·-detached·-noinput·-noshell·-sname·one
738 %·erl·+sct·L3-0c0-3·+sbt·db·+S3:2·-detached·-noinput·-noshell·-sname·two</code></pre><p>In·this·example,·each·runtime·system·have·two·schedulers·each·online,·and738 %·erl·+sct·L3-0c0-3·+sbt·db·+S3:2·-detached·-noinput·-noshell·-sname·two</code></pre><p>In·this·example,·each·runtime·system·have·two·schedulers·each·online,·and
Offset 899, 18 lines modifiedOffset 899, 18 lines modified
899 </h2>899 </h2>
900 <p>The·standard·Erlang/OTP·system·can·be·reconfigured·to·change·the·default900 <p>The·standard·Erlang/OTP·system·can·be·reconfigured·to·change·the·default
901 behavior·on·startup.</p><ul><li><p><strong>The·<code·class="inline">.erlang</code>·startup·file</strong>·-·When·Erlang/OTP·is·started,·the·system901 behavior·on·startup.</p><ul><li><p><strong>The·<code·class="inline">.erlang</code>·startup·file</strong>·-·When·Erlang/OTP·is·started,·the·system
902 searches·for·a·file·named·<code·class="inline">.erlang</code>·in·the902 searches·for·a·file·named·<code·class="inline">.erlang</code>·in·the
903 <a·href="init.html#home">user's·home·directory</a>·and·then903 <a·href="init.html#home">user's·home·directory</a>·and·then
904 <a·href="../../../lib/stdlib-6.0.1/doc/html/filename.html#user_config"><code·class="inline">filename:basedir(user_config,·&quot;erlang&quot;)</code></a>.</p><p>If·an·<code·class="inline">.erlang</code>·file·is·found,·it·is·assumed·to·contain·valid·Erlang904 <a·href="../../../lib/stdlib-6.0.1/doc/html/filename.html#user_config"><code·class="inline">filename:basedir(user_config,·&quot;erlang&quot;)</code></a>.</p><p>If·an·<code·class="inline">.erlang</code>·file·is·found,·it·is·assumed·to·contain·valid·Erlang
905 expressions.·These·expressions·are·evaluated·as·if·they·were·input·to·the905 expressions.·These·expressions·are·evaluated·as·if·they·were·input·to·the
906 shell.</p><p>A·typical·<code·class="inline">.erlang</code>·file·contains·a·set·of·search·paths,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1016232468-1">(</span><span·class="s">&quot;executing·user·profile·in·$HOME/.erlang\n&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1016232468-2">[</span><span·class="p"·data-group-id="1016232468-2">]</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·11,·SHA:·1dbc8a1d8aedb2ee73008d3a4a54108897cb208aa6b9262d49604e15b3608fde·...·]68-1">)</span><span·class="p">.</span><span·class="w">906 shell.</p><p>A·typical·<code·class="inline">.erlang</code>·file·contains·a·set·of·search·paths,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9079506968-1">(</span><span·class="s">&quot;executing·user·profile·in·$HOME/.erlang\n&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="9079506968-2">[</span><span·class="p"·data-group-id="9079506968-2">]</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·11,·SHA:·6ec2fabf47bf619b4ae3305aa1f78dd73af728eb5d63f5a75b40377b81b43ff0·...·]68-1">)</span><span·class="p">.</span><span·class="w">
907 </span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">add_path</span><span·class="p"·data-group-id="1016232468-3">(</span><span·class="s">&quot;/home/calvin/test/ebin&quot;</span><span·class="p"·data-group-id="1016232468-3">)</span><span·class="p">.</span><span·class="w">907 </span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">add_path</span><span·class="p"·data-group-id="9079506968-3">(</span><span·class="s">&quot;/home/calvin/test/ebin&quot;</span><span·class="p"·data-group-id="9079506968-3">)</span><span·class="p">.</span><span·class="w">
908 </span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">add_path</span><span·class="p"·data-group-id="1016232468-4">(</span><span·class="s">&quot;/home/hobbes/bigappl-1.2/ebin&quot;</span><span·class="p"·data-group-id="1016232468-4">)</span><span·class="p">.</span><span·class="w">908 </span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">add_path</span><span·class="p"·data-group-id="9079506968-4">(</span><span·class="s">&quot;/home/hobbes/bigappl-1.2/ebin&quot;</span><span·class="p"·data-group-id="9079506968-4">)</span><span·class="p">.</span><span·class="w">
909 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1016232468-5">(</span><span·class="s">&quot;.erlang·rc·finished\n&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1016232468-6">[</span><span·class="p"·data-group-id="1016232468-6">]</span><span·class="p"·data-group-id="1016232468-5">)</span><span·class="p">.</span></code></pre></li><li><p><strong>user_default</strong>·and·<strong>shell_default</strong>·-·Functions·in·the·shell·that·are·not909 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9079506968-5">(</span><span·class="s">&quot;.erlang·rc·finished\n&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="9079506968-6">[</span><span·class="p"·data-group-id="9079506968-6">]</span><span·class="p"·data-group-id="9079506968-5">)</span><span·class="p">.</span></code></pre></li><li><p><strong>user_default</strong>·and·<strong>shell_default</strong>·-·Functions·in·the·shell·that·are·not
910 prefixed·by·a·module·name·are·assumed·to·be·functional·objects·(funs),910 prefixed·by·a·module·name·are·assumed·to·be·functional·objects·(funs),
911 built-in·functions·(BIFs),·or·belong·to·the·module·<code·class="inline">user_default</code>·or911 built-in·functions·(BIFs),·or·belong·to·the·module·<code·class="inline">user_default</code>·or
912 <code·class="inline">shell_default</code>.</p><p>To·include·private·shell·commands,·define·them·in·a·module·<code·class="inline">user_default</code>·and912 <code·class="inline">shell_default</code>.</p><p>To·include·private·shell·commands,·define·them·in·a·module·<code·class="inline">user_default</code>·and
913 add·the·following·argument·as·the·first·line·in·the·<code·class="inline">.erlang</code>·file:</p><pre><code·class="text">code:load_abs(&quot;..../user_default&quot;).</code></pre></li><li><p><strong>erl</strong>·-·If·the·contents·of·<code·class="inline">.erlang</code>·are·changed·and·a·private·version·of913 add·the·following·argument·as·the·first·line·in·the·<code·class="inline">.erlang</code>·file:</p><pre><code·class="text">code:load_abs(&quot;..../user_default&quot;).</code></pre></li><li><p><strong>erl</strong>·-·If·the·contents·of·<code·class="inline">.erlang</code>·are·changed·and·a·private·version·of
914 <code·class="inline">user_default</code>·is·defined,·the·Erlang/OTP·environment·can·be·customized.·More914 <code·class="inline">user_default</code>·is·defined,·the·Erlang/OTP·environment·can·be·customized.·More
915 powerful·changes·can·be·made·by·supplying·command-line·arguments·in·the915 powerful·changes·can·be·made·by·supplying·command-line·arguments·in·the
916 startup·script·<code·class="inline">erl</code>.·For·more·information,·see·<a·href="init.html"><code·class="inline">init</code></a>.</p></li></ul><h2·id="see-also"·class="section-heading">916 startup·script·<code·class="inline">erl</code>.·For·more·information,·see·<a·href="init.html"><code·class="inline">init</code></a>.</p></li></ul><h2·id="see-also"·class="section-heading">
Offset 964, 15 lines modifiedOffset 964, 15 lines modified
964 ······<p·class="built-using">964 ······<p·class="built-using">
965 ········Built·using965 ········Built·using
966 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the966 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
967 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>967 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
968 ······</p>968 ······</p>
969 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>969 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
970 ····</footer>970 ····</footer>
971 ··</div>971 ··</div>
972 </main>972 </main>
973 </div>973 </div>
974 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>974 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
975 <script>975 <script>
976 ··document.addEventListener("DOMContentLoaded",·function·()·{976 ··document.addEventListener("DOMContentLoaded",·function·()·{
740 B
html2text {}
Max HTML report size reached
28.4 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erl_dist_protocol.html
    
Offset 252, 32 lines modifiedOffset 252, 32 lines modified
252 ---252 ---
253 sequenceDiagram253 sequenceDiagram
254 ····participant·client·as·Client·(or·Node)254 ····participant·client·as·Client·(or·Node)
255 ····participant·EPMD255 ····participant·EPMD
256 ····256 ····
257 ····client·-&gt;&gt;·EPMD:·NAMES_REQ257 ····client·-&gt;&gt;·EPMD:·NAMES_REQ
258 ····EPMD·--&gt;&gt;·client:·NAMES_RESP</code></pre><table><thead><tr><th·style="text-align:·left;">1</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">110</code></td></tr></tbody></table><p><em>Table:·NAMES_REQ·(110)</em></p><p>The·response·for·a·<code·class="inline">NAMES_REQ</code>·is·as·follows:</p><table><thead><tr><th·style="text-align:·left;">4</th><th·style="text-align:·left;"></th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">EPMDPortNo</code></td><td·style="text-align:·left;"><code·class="inline">NodeInfo*</code></td></tr></tbody></table><p><em>Table:·NAMES_RESP</em></p><p><code·class="inline">NodeInfo</code>·is·a·string·written·for·each·active·node.·When·all·<code·class="inline">NodeInfo</code>·has258 ····EPMD·--&gt;&gt;·client:·NAMES_RESP</code></pre><table><thead><tr><th·style="text-align:·left;">1</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">110</code></td></tr></tbody></table><p><em>Table:·NAMES_REQ·(110)</em></p><p>The·response·for·a·<code·class="inline">NAMES_REQ</code>·is·as·follows:</p><table><thead><tr><th·style="text-align:·left;">4</th><th·style="text-align:·left;"></th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">EPMDPortNo</code></td><td·style="text-align:·left;"><code·class="inline">NodeInfo*</code></td></tr></tbody></table><p><em>Table:·NAMES_RESP</em></p><p><code·class="inline">NodeInfo</code>·is·a·string·written·for·each·active·node.·When·all·<code·class="inline">NodeInfo</code>·has
259 been·written·the·connection·is·closed·by·the·EPMD.</p><p><code·class="inline">NodeInfo</code>·is,·as·expressed·in·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8028205955-1">(</span><span·class="s">&quot;name·~ts·at·port·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8028205955-2">[</span><span·[·...·truncated·by·diffoscope;·len:·194,·SHA:·3df64827307b626beb14971b658e3893bdf98978646ff4795c3535f8c6b9b9be·...·]-1">)</span><span·class="p">.</span></code></pre><h3·id="dump-all-data-from-epmd"·class="section-heading">259 been·written·the·connection·is·closed·by·the·EPMD.</p><p><code·class="inline">NodeInfo</code>·is,·as·expressed·in·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5486413373-1">(</span><span·class="s">&quot;name·~ts·at·port·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5486413373-2">[</span><span·[·...·truncated·by·diffoscope;·len:·194,·SHA:·66831b5735fefe2631b23acca0a462316b1c0bae267dcca68afd7f34a828c7f2·...·]-1">)</span><span·class="p">.</span></code></pre><h3·id="dump-all-data-from-epmd"·class="section-heading">
260 ··<a·href="#dump-all-data-from-epmd"·class="hover-link">260 ··<a·href="#dump-all-data-from-epmd"·class="hover-link">
261 ····<i·class="ri-link-m"·aria-hidden="true"></i>261 ····<i·class="ri-link-m"·aria-hidden="true"></i>
262 ··</a>262 ··</a>
263 ··<span·class="text">Dump·All·Data·from·EPMD</span>263 ··<span·class="text">Dump·All·Data·from·EPMD</span>
264 </h3>264 </h3>
265 <p>This·request·is·not·really·used,·it·is·to·be·regarded·as·a·debug·feature.</p><pre><code·class="mermaid">---265 <p>This·request·is·not·really·used,·it·is·to·be·regarded·as·a·debug·feature.</p><pre><code·class="mermaid">---
266 title:·Dump·All·Data·from·EPMD266 title:·Dump·All·Data·from·EPMD
267 ---267 ---
268 sequenceDiagram268 sequenceDiagram
269 ····participant·client·as·Client·(or·Node)269 ····participant·client·as·Client·(or·Node)
270 ····participant·EPMD270 ····participant·EPMD
271 ····271 ····
272 ····client·-&gt;&gt;·EPMD:·DUMP_REQ272 ····client·-&gt;&gt;·EPMD:·DUMP_REQ
273 ····EPMD·--&gt;&gt;·client:·DUMP_RESP</code></pre><table><thead><tr><th·style="text-align:·left;">1</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">100</code></td></tr></tbody></table><p><em>Table:·DUMP_REQ</em></p><p>The·response·for·a·<code·class="inline">DUMP_REQ</code>·is·as·follows:</p><table><thead><tr><th·style="text-align:·left;">4</th><th·style="text-align:·left;"></th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">EPMDPortNo</code></td><td·style="text-align:·left;"><code·class="inline">NodeInfo*</code></td></tr></tbody></table><p><em>Table:·DUMP_RESP</em></p><p><code·class="inline">NodeInfo</code>·is·a·string·written·for·each·node·kept·in·the·EPMD.·When·all273 ····EPMD·--&gt;&gt;·client:·DUMP_RESP</code></pre><table><thead><tr><th·style="text-align:·left;">1</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">100</code></td></tr></tbody></table><p><em>Table:·DUMP_REQ</em></p><p>The·response·for·a·<code·class="inline">DUMP_REQ</code>·is·as·follows:</p><table><thead><tr><th·style="text-align:·left;">4</th><th·style="text-align:·left;"></th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">EPMDPortNo</code></td><td·style="text-align:·left;"><code·class="inline">NodeInfo*</code></td></tr></tbody></table><p><em>Table:·DUMP_RESP</em></p><p><code·class="inline">NodeInfo</code>·is·a·string·written·for·each·node·kept·in·the·EPMD.·When·all
274 <code·class="inline">NodeInfo</code>·has·been·written·the·connection·is·closed·by·the·EPMD.</p><p><code·class="inline">NodeInfo</code>·is,·as·expressed·in·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6195184870-1">(</span><span·class="s">&quot;active·name·····~ts·at·port·</span><span·class="si">~p</span><span·class="s">,·fd·=·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">274 <code·class="inline">NodeInfo</code>·has·been·written·the·connection·is·closed·by·the·EPMD.</p><p><code·class="inline">NodeInfo</code>·is,·as·expressed·in·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1473623568-1">(</span><span·class="s">&quot;active·name·····~ts·at·port·</span><span·class="si">~p</span><span·class="s">,·fd·=·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">
275 ··········</span><span·class="p"·data-group-id="6195184870-2">[</span><span·class="n">NodeName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="6195184870-2">]</span><span·class="p"·data-group-id="6195184870-1">)</span><span·class="p">.</span></code></pre><p>or</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="7598838825-1">(</span><span·class="s">&quot;old/unused·name·~ts·at·port·</span><span·class="si">~p</span><span·class="s">,·fd·=·</span><span·class="si">~p</span><span·class="s">·</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w"> 
276 ··········</span><span·class="p"·data-group-id="7598838825-2">[</span><span·class="n">NodeName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="7598838825-2">]</span><s[·...·truncated·by·diffoscope;·len:·129,·SHA:·32ab2e4652b001a8e94a2fb31ef5608360e8f5284eb0483a2886262d75520aec·...·]">275 ··········</span><span·class="p"·data-group-id="1473623568-2">[</span><span·class="n">NodeName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="1473623568-2">]</span><s[·...·truncated·by·diffoscope;·len:·534,·SHA:·3f6c14ce17d46a5340e74f0990f224abd9f78da9808fc0261ca2f355a2215d3c·...·]">
 276 ··········</span><span·class="p"·data-group-id="5579825656-2">[</span><span·class="n">NodeName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="5579825656-2">]</span><span·class="p"·data-group-id="5579825656-1">)</span><span·class="p">.</span></code></pre><h3·id="kill-epmd"·class="section-heading">
277 ··<a·href="#kill-epmd"·class="hover-link">277 ··<a·href="#kill-epmd"·class="hover-link">
278 ····<i·class="ri-link-m"·aria-hidden="true"></i>278 ····<i·class="ri-link-m"·aria-hidden="true"></i>
279 ··</a>279 ··</a>
280 ··<span·class="text">Kill·EPMD</span>280 ··<span·class="text">Kill·EPMD</span>
281 </h3>281 </h3>
282 <p>This·request·kills·the·running·EPMD.·It·is·almost·never·used.</p><pre><code·class="mermaid">---282 <p>This·request·kills·the·running·EPMD.·It·is·almost·never·used.</p><pre><code·class="mermaid">---
283 title:·Kill·EPMD283 title:·Kill·EPMD
Offset 407, 54 lines modifiedOffset 407, 54 lines modified
407 received·from·<code·class="inline">A</code>·is·correct·and·generates·a·digest·from·the·challenge407 received·from·<code·class="inline">A</code>·is·correct·and·generates·a·digest·from·the·challenge
408 received·from·<code·class="inline">A</code>.·The·digest·is·then·sent·to·<code·class="inline">A</code>.·The·message·is·as·follows:</p><table><thead><tr><th·style="text-align:·left;">1</th><th·style="text-align:·left;">16</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">'a'</code></td><td·style="text-align:·left;"><code·class="inline">Digest</code></td></tr></tbody></table><p><em>Table:·The·challenge_ack·message</em></p><p><code·class="inline">Digest</code>·is·the·digest·calculated·by·<code·class="inline">B</code>·for·<code·class="inline">A</code>'s·challenge.</p></li><li><p><strong>7)·check</strong>·-·<code·class="inline">A</code>·checks·the·digest·from·<code·class="inline">B</code>·and·the·connection·is·up.</p></li></ul><h3·id="semigraphic-view"·class="section-heading">408 received·from·<code·class="inline">A</code>.·The·digest·is·then·sent·to·<code·class="inline">A</code>.·The·message·is·as·follows:</p><table><thead><tr><th·style="text-align:·left;">1</th><th·style="text-align:·left;">16</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">'a'</code></td><td·style="text-align:·left;"><code·class="inline">Digest</code></td></tr></tbody></table><p><em>Table:·The·challenge_ack·message</em></p><p><code·class="inline">Digest</code>·is·the·digest·calculated·by·<code·class="inline">B</code>·for·<code·class="inline">A</code>'s·challenge.</p></li><li><p><strong>7)·check</strong>·-·<code·class="inline">A</code>·checks·the·digest·from·<code·class="inline">B</code>·and·the·connection·is·up.</p></li></ul><h3·id="semigraphic-view"·class="section-heading">
409 ··<a·href="#semigraphic-view"·class="hover-link">409 ··<a·href="#semigraphic-view"·class="hover-link">
410 ····<i·class="ri-link-m"·aria-hidden="true"></i>410 ····<i·class="ri-link-m"·aria-hidden="true"></i>
411 ··</a>411 ··</a>
412 ··<span·class="text">Semigraphic·View</span>412 ··<span·class="text">Semigraphic·View</span>
413 </h3>413 </h3>
414 <pre><code·class="makeup·erlang"·translate="no"><span·class="n">A</span><span·class="w">·</span><span·class="p"·data-group-id="5011635125-1">(</span><span·class="ss">initiator</span><span·class="p"·data-group-id="5011635125-1">)</span><span·class="w">······································</span><span·class="n">B</span><span·class="w">·</span><span·class="p"·data-group-id="50116351[·...·truncated·by·diffoscope;·len:·87,·SHA:·6f117b76fd8c754b27d29cdab93f6ec38685921608e7d6c6f04c22b3fbc37b7f·...·]-2">)</span><span·class="w">414 <pre><code·class="makeup·erlang"·translate="no"><span·class="n">A</span><span·class="w">·</span><span·class="p"·data-group-id="0795483084-1">(</span><span·class="ss">initiator</span><span·class="p"·data-group-id="0795483084-1">)</span><span·class="w">······································</span><span·class="n">B</span><span·class="w">·</span><span·class="p"·data-group-id="07954830[·...·truncated·by·diffoscope;·len:·87,·SHA:·391f60bd272c404b5569abe460cdfd3f6717492bac8b77029ac6119ded025b15·...·]-2">)</span><span·class="w">
  
415 </span><span·class="n">TCP</span><span·class="w">·</span><span·class="ss">connect</span><span·class="w">·</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">&gt;</span><span·class="w">415 </span><span·class="n">TCP</span><span·class="w">·</span><span·class="ss">connect</span><span·class="w">·</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">&gt;</span><span·class="w">
416 ···················································</span><span·class="n">TCP</span><span·class="w">·</span><span·class="ss">accept</span><span·class="w">416 ···················································</span><span·class="n">TCP</span><span·class="w">·</span><span·class="ss">accept</span><span·class="w">
  
417 </span><span·class="ss">send_name</span><span·class="w">·</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">&gt;</span><span·class="w">417 </span><span·class="ss">send_name</span><span·class="w">·</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">&gt;</span><span·class="w">
418 ···················································</span><span·class="ss">recv_name</span><span·class="w">418 ···················································</span><span·class="ss">recv_name</span><span·class="w">
  
419 ··</span><span·class="o">&lt;-</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">·</span><span·class="ss">send_status</span><span·class="w">419 ··</span><span·class="o">&lt;-</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">·</span><span·class="ss">send_status</span><span·class="w">
420 </span><span·class="nf">recv_status</span><span·class="w">420 </span><span·class="nf">recv_status</span><span·class="w">
421 </span><span·class="p"·data-group-id="5011635125-3">(</span><span·class="k">if</span><span·class="w">·</span><span·class="ss">status</span><span·class="w">·</span><span·class="ss">was</span><span·class="w">·</span><span·class="ss">&#39;alive&#39;</span><span·class="w">421 </span><span·class="p"·data-group-id="0795483084-3">(</span><span·class="k">if</span><span·class="w">·</span><span·class="ss">status</span><span·class="w">·</span><span·class="ss">was</span><span·class="w">·</span><span·class="ss">&#39;alive&#39;</span><span·class="w">
422 ·</span><span·class="ss">send_status</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">422 ·</span><span·class="ss">send_status</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
423 ···················································</span><span·class="ss">recv_status</span><span·class="p"·data-group-id="5011635125-3">)</span><span·class="w">423 ···················································</span><span·class="ss">recv_status</span><span·class="p"·data-group-id="0795483084-3">)</span><span·class="w">
  
424 ··························</span><span·class="p"·data-group-id="5011635125-4">(</span><span·class="n">ChB</span><span·class="p"·data-group-id="5011635125-4">)</span><span·class="w">······················</span><span·class="n">ChB</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·119,·SHA:·d71362866564cbc65dd0bf7f2e932470d95b0cf4802cc2bef6e5d8c8eb7dc399·...·]-5">)</span><span·class="w">424 ··························</span><span·class="p"·data-group-id="0795483084-4">(</span><span·class="n">ChB</span><span·class="p"·data-group-id="0795483084-4">)</span><span·class="w">······················</span><span·class="n">ChB</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·119,·SHA:·138228dfc1a1c796c6423891ad6c205f9c4a7211a8e4d7798dfd67c3b5ff4cd9·...·]-5">)</span><span·class="w">
425 ··</span><span·class="o">&lt;-</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">·</span><span·class="ss">send_challenge</span><span·class="w">425 ··</span><span·class="o">&lt;-</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">·</span><span·class="ss">send_challenge</span><span·class="w">
426 </span><span·class="nf">recv_challenge</span><span·class="w">426 </span><span·class="nf">recv_challenge</span><span·class="w">
  
427 </span><span·class="p"·data-group-id="5011635125-6">(</span><span·class="k">if</span><span·class="w">·</span><span·class="ss">old</span><span·class="w">·</span><span·class="ss">send_name</span><span·class="w">427 </span><span·class="p"·data-group-id="0795483084-6">(</span><span·class="k">if</span><span·class="w">·</span><span·class="ss">old</span><span·class="w">·</span><span·class="ss">send_name</span><span·class="w">
428 ·</span><span·class="ss">send_complement</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">428 ·</span><span·class="ss">send_complement</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
429 ···················································</span><span·class="ss">recv_complement</span><span·class="p"·data-group-id="5011635125-6">)</span><span·class="w">429 ···················································</span><span·class="ss">recv_complement</span><span·class="p"·data-group-id="0795483084-6">)</span><span·class="w">
  
430 </span><span·class="n">ChA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">gen_challenge</span><span·class="p"·data-group-id="5011635125-7">(</span><span·class="p"·data-group-id="5011635125-7">)</span><span·class="p">,</span><span·class="w">430 </span><span·class="n">ChA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">gen_challenge</span><span·class="p"·data-group-id="0795483084-7">(</span><span·class="p"·data-group-id="0795483084-7">)</span><span·class="p">,</span><span·class="w">
431 </span><span·class="n">OCA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">out_cookie</span><span·class="p"·data-group-id="5011635125-8">(</span><span·class="n">B</span><span·class="p"·data-group-id="5011635125-8">)</span><span·class="p">,</span><span·class="w">431 </span><span·class="n">OCA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">out_cookie</span><span·class="p"·data-group-id="0795483084-8">(</span><span·class="n">B</span><span·class="p"·data-group-id="0795483084-8">)</span><span·class="p">,</span><span·class="w">
432 </span><span·class="n">DiA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">gen_digest</span><span·class="p"·data-group-id="5011635125-9">(</span><span·class="n">ChB</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OCA</span><span·class="p"·data-group-id="5011635125-9">)</span><span·class="w">432 </span><span·class="n">DiA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">gen_digest</span><span·class="p"·data-group-id="0795483084-9">(</span><span·class="n">ChB</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OCA</span><span·class="p"·data-group-id="0795483084-9">)</span><span·class="w">
433 ··························</span><span·class="p"·data-group-id="5011635125-10">(</span><span·class="n">ChA</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DiA</span><span·class="p"·data-group-id="5011635125-10">)</span><span·class="w">433 ··························</span><span·class="p"·data-group-id="0795483084-10">(</span><span·class="n">ChA</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DiA</span><span·class="p"·data-group-id="0795483084-10">)</span><span·class="w">
434 </span><span·class="ss">send_challenge_reply</span><span·class="w">·</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="p">-&gt;</span><span·class="w">434 </span><span·class="ss">send_challenge_reply</span><span·class="w">·</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="p">-&gt;</span><span·class="w">
435 ···················································</span><span·class="ss">recv_challenge_reply</span><span·class="w">435 ···················································</span><span·class="ss">recv_challenge_reply</span><span·class="w">
436 ···················································</span><span·class="n">ICB</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">in_cookie</span><span·class="p"·data-group-id="5011635125-11">(</span><span·class="n">A</span><span·class="p"·data-group-id="5011635125-11">)</span><span·class="p">,</span><span·class="w">436 ···················································</span><span·class="n">ICB</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">in_cookie</span><span·class="p"·data-group-id="0795483084-11">(</span><span·class="n">A</span><span·class="p"·data-group-id="0795483084-11">)</span><span·class="p">,</span><span·class="w">
437 ···················································</span><span·class="nc">check</span><span·class="p">:</span><span·class="w">437 ···················································</span><span·class="nc">check</span><span·class="p">:</span><span·class="w">
438 ···················································</span><span·class="n">DiA</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="nf">gen_digest</span><span·class="w">·</span><span·class="p"·data-group-id="5011635125-12">(</span><span·class="n">ChB</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ICB</span><span·class="p"·data-group-id="5011635125-12">)</span><span·class="o">?</span><span·class="w">438 ···················································</span><span·class="n">DiA</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="nf">gen_digest</span><span·class="w">·</span><span·class="p"·data-group-id="0795483084-12">(</span><span·class="n">ChB</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ICB</span><span·class="p"·data-group-id="0795483084-12">)</span><span·class="o">?</span><span·class="w">
439 </span><span·class="w">···················································</span><span·class="p">-</span><span·class="w">·</span><span·class="na">if</span><span·class="w">·</span><span·class="n">OK</span><span·class="p">:</span><span·class="w">439 </span><span·class="w">···················································</span><span·class="p">-</span><span·class="w">·</span><span·class="na">if</span><span·class="w">·</span><span·class="n">OK</span><span·class="p">:</span><span·class="w">
440 ····················································</span><span·class="n">OCB</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">out_cookie</span><span·class="p"·data-group-id="5011635125-13">(</span><span·class="n">A</span><span·class="p"·data-group-id="5011635125-13">)</span><span·class="p">,</span><span·class="w">440 ····················································</span><span·class="n">OCB</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">out_cookie</span><span·class="p"·data-group-id="0795483084-13">(</span><span·class="n">A</span><span·class="p"·data-group-id="0795483084-13">)</span><span·class="p">,</span><span·class="w">
441 ····················································</span><span·class="n">DiB</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">gen_digest</span><span·class="w">·</span><span·class="p"·data-group-id="5011635125-14">(</span><span·class="n">ChA</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OCB</span><span·class="p"·data-group-id="5011635125-14">)</span><span·class="w">441 ····················································</span><span·class="n">DiB</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">gen_digest</span><span·class="w">·</span><span·class="p"·data-group-id="0795483084-14">(</span><span·class="n">ChA</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OCB</span><span·class="p"·data-group-id="0795483084-14">)</span><span·class="w">
442 ··························</span><span·class="p"·data-group-id="5011635125-15">(</span><span·class="n">DiB</span><span·class="p"·data-group-id="5011635125-15">)</span><span·class="w">442 ··························</span><span·class="p"·data-group-id="0795483084-15">(</span><span·class="n">DiB</span><span·class="p"·data-group-id="0795483084-15">)</span><span·class="w">
443 ··</span><span·class="o">&lt;-</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="w">·</span><span·class="ss">send_challenge_ack</span><span·class="w">443 ··</span><span·class="o">&lt;-</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="w">·</span><span·class="ss">send_challenge_ack</span><span·class="w">
444 </span><span·class="ss">recv_challenge_ack</span><span·class="w">··································</span><span·class="n">DONE</span><span·class="w">444 </span><span·class="ss">recv_challenge_ack</span><span·class="w">··································</span><span·class="n">DONE</span><span·class="w">
445 </span><span·class="n">ICA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">in_cookie</span><span·class="p"·data-group-id="5011635125-16">(</span><span·class="n">B</span><span·class="p"·data-group-id="5011635125-16">)</span><span·class="p">,</span><span·class="w">································</span><span·class="o">-</span><span·class="w">·</span><span·class="nc">else</span><span·class="p">:</span><span·class="w">445 </span><span·class="n">ICA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">in_cookie</span><span·class="p"·data-group-id="0795483084-16">(</span><span·class="n">B</span><span·class="p"·data-group-id="0795483084-16">)</span><span·class="p">,</span><span·class="w">································</span><span·class="o">-</span><span·class="w">·</span><span·class="nc">else</span><span·class="p">:</span><span·class="w">
446 </span><span·class="nc">check</span><span·class="p">:</span><span·class="w">··············································</span><span·class="n">CLOSE</span><span·class="w">446 </span><span·class="nc">check</span><span·class="p">:</span><span·class="w">··············································</span><span·class="n">CLOSE</span><span·class="w">
447 </span><span·class="n">DiB</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="nf">gen_digest</span><span·class="p"·data-group-id="5011635125-17">(</span><span·class="n">ChA</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ICA</span><span·class="p"·data-group-id="5011635125-17">)</span><span·class="o">?</span><span·class="w">447 </span><span·class="n">DiB</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="nf">gen_digest</span><span·class="p"·data-group-id="0795483084-17">(</span><span·class="n">ChA</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ICA</span><span·class="p"·data-group-id="0795483084-17">)</span><span·class="o">?</span><span·class="w">
448 </span><span·class="p">-</span><span·class="w">·</span><span·class="na">if</span><span·class="w">·</span><span·class="n">OK</span><span·class="p">:</span><span·class="w">448 </span><span·class="p">-</span><span·class="w">·</span><span·class="na">if</span><span·class="w">·</span><span·class="n">OK</span><span·class="p">:</span><span·class="w">
449 ·</span><span·class="n">DONE</span><span·class="w">449 ·</span><span·class="n">DONE</span><span·class="w">
450 </span><span·class="p">-</span><span·class="w">·</span><span·class="na">else</span><span·class="p">:</span><span·class="w">450 </span><span·class="p">-</span><span·class="w">·</span><span·class="na">else</span><span·class="p">:</span><span·class="w">
451 ·</span><span·class="n">CLOSE</span></code></pre><p><a·href=""·id="dflags"></a></p><h3·id="distribution-flags"·class="section-heading">451 ·</span><span·class="n">CLOSE</span></code></pre><p><a·href=""·id="dflags"></a></p><h3·id="distribution-flags"·class="section-heading">
452 ··<a·href="#distribution-flags"·class="hover-link">452 ··<a·href="#distribution-flags"·class="hover-link">
453 ····<i·class="ri-link-m"·aria-hidden="true"></i>453 ····<i·class="ri-link-m"·aria-hidden="true"></i>
454 ··</a>454 ··</a>
Offset 762, 15 lines modifiedOffset 762, 15 lines modified
762 ······<p·class="built-using">762 ······<p·class="built-using">
763 ········Built·using763 ········Built·using
764 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the764 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
765 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>765 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
766 ······</p>766 ······</p>
767 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>767 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
768 ····</footer>768 ····</footer>
769 ··</div>769 ··</div>
770 </main>770 </main>
771 </div>771 </div>
772 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>772 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
773 <script>773 <script>
774 ··document.addEventListener("DOMContentLoaded",·function·()·{774 ··document.addEventListener("DOMContentLoaded",·function·()·{
632 B
html2text {}
Max HTML report size reached
1.6 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erl_driver.html
    
Offset 1773, 15 lines modifiedOffset 1773, 15 lines modified
1773 ······<p·class="built-using">1773 ······<p·class="built-using">
1774 ········Built·using1774 ········Built·using
1775 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1775 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1776 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1776 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1777 ······</p>1777 ······</p>
1778 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1778 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1779 ····</footer>1779 ····</footer>
1780 ··</div>1780 ··</div>
1781 </main>1781 </main>
1782 </div>1782 </div>
1783 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1783 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1784 <script>1784 <script>
1785 ··document.addEventListener("DOMContentLoaded",·function·()·{1785 ··document.addEventListener("DOMContentLoaded",·function·()·{
797 B
html2text {}
Max HTML report size reached
5.97 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erl_ext_dist.html
    
Offset 436, 15 lines modifiedOffset 436, 15 lines modified
436 ··</a>436 ··</a>
437 ··<span·class="text">SMALL_BIG_EXT</span>437 ··<span·class="text">SMALL_BIG_EXT</span>
438 </h2>438 </h2>
439 <table><thead><tr><th·style="text-align:·left;">1</th><th·style="text-align:·left;">1</th><th·style="text-align:·left;">1</th><th·style="text-align:·left;">n</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">110</code></td><td·style="text-align:·left;"><code·class="inline">n</code></td><td·style="text-align:·left;"><code·class="inline">Sign</code></td><td·style="text-align:·left;"><code·class="inline">d(0)</code>·...·<code·class="inline">d(n-1)</code></td></tr></tbody></table><p>Bignums·are·stored·in·unary·form·with·a·<code·class="inline">Sign</code>·byte,·that·is,·0·if·the·bignum·is439 <table><thead><tr><th·style="text-align:·left;">1</th><th·style="text-align:·left;">1</th><th·style="text-align:·left;">1</th><th·style="text-align:·left;">n</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">110</code></td><td·style="text-align:·left;"><code·class="inline">n</code></td><td·style="text-align:·left;"><code·class="inline">Sign</code></td><td·style="text-align:·left;"><code·class="inline">d(0)</code>·...·<code·class="inline">d(n-1)</code></td></tr></tbody></table><p>Bignums·are·stored·in·unary·form·with·a·<code·class="inline">Sign</code>·byte,·that·is,·0·if·the·bignum·is
440 positive·and·1·if·it·is·negative.·The·digits·are·stored·with·the·least440 positive·and·1·if·it·is·negative.·The·digits·are·stored·with·the·least
441 significant·byte·stored·first.·To·calculate·the·integer,·the·following·formula441 significant·byte·stored·first.·To·calculate·the·integer,·the·following·formula
442 can·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">B</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">256</span><span·class="w">442 can·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">B</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">256</span><span·class="w">
443 </span><span·class="p"·data-group-id="5855200711-1">(</span><span·class="ss">d0</span><span·class="o">*</span><span·class="n">B</span><span·class="err">^</span><span·class="mi">0</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="ss">d1</span><span·class[·...·truncated·by·diffoscope;·len:·952,·SHA:·923fea4b414a041abd8957e90c3e754e700673153a05a83c3a4cc60f219864cd·...·]-1">)</span></code></pre><h2·id="large_big_ext"·class="section-heading">443 </span><span·class="p"·data-group-id="3326353983-1">(</span><span·class="ss">d0</span><span·class="o">*</span><span·class="n">B</span><span·class="err">^</span><span·class="mi">0</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="ss">d1</span><span·class[·...·truncated·by·diffoscope;·len:·952,·SHA:·0a89175c05de093750d279feededcda521d45328c116339f829f417b91560597·...·]-1">)</span></code></pre><h2·id="large_big_ext"·class="section-heading">
444 ··<a·href="#large_big_ext"·class="hover-link">444 ··<a·href="#large_big_ext"·class="hover-link">
445 ····<i·class="ri-link-m"·aria-hidden="true"></i>445 ····<i·class="ri-link-m"·aria-hidden="true"></i>
446 ··</a>446 ··</a>
447 ··<span·class="text">LARGE_BIG_EXT</span>447 ··<span·class="text">LARGE_BIG_EXT</span>
448 </h2>448 </h2>
449 <table><thead><tr><th·style="text-align:·left;">1</th><th·style="text-align:·left;">4</th><th·style="text-align:·left;">1</th><th·style="text-align:·left;">n</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">111</code></td><td·style="text-align:·left;"><code·class="inline">n</code></td><td·style="text-align:·left;"><code·class="inline">Sign</code></td><td·style="text-align:·left;"><code·class="inline">d(0)</code>·...·<code·class="inline">d(n-1)</code></td></tr></tbody></table><p>Same·as·<a·href="erl_ext_dist.html#small_big_ext"><code·class="inline">SMALL_BIG_EXT</code></a>·except·that·the·length449 <table><thead><tr><th·style="text-align:·left;">1</th><th·style="text-align:·left;">4</th><th·style="text-align:·left;">1</th><th·style="text-align:·left;">n</th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">111</code></td><td·style="text-align:·left;"><code·class="inline">n</code></td><td·style="text-align:·left;"><code·class="inline">Sign</code></td><td·style="text-align:·left;"><code·class="inline">d(0)</code>·...·<code·class="inline">d(n-1)</code></td></tr></tbody></table><p>Same·as·<a·href="erl_ext_dist.html#small_big_ext"><code·class="inline">SMALL_BIG_EXT</code></a>·except·that·the·length
450 field·is·an·unsigned·4·byte·integer.</p><h2·id="reference_ext-deprecated"·class="section-heading">450 field·is·an·unsigned·4·byte·integer.</p><h2·id="reference_ext-deprecated"·class="section-heading">
Offset 621, 15 lines modifiedOffset 621, 15 lines modified
621 ······<p·class="built-using">621 ······<p·class="built-using">
622 ········Built·using622 ········Built·using
623 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the623 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
624 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>624 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
625 ······</p>625 ······</p>
626 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>626 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
627 ····</footer>627 ····</footer>
628 ··</div>628 ··</div>
629 </main>629 </main>
630 </div>630 </div>
631 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>631 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
632 <script>632 <script>
633 ··document.addEventListener("DOMContentLoaded",·function·()·{633 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
7.49 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erl_nif.html
    
Offset 161, 27 lines modifiedOffset 161, 27 lines modified
161 }161 }
  
162 static·ErlNifFunc·nif_funcs[]·=162 static·ErlNifFunc·nif_funcs[]·=
163 {163 {
164 ····{&quot;hello&quot;,·0,·hello}164 ····{&quot;hello&quot;,·0,·hello}
165 };165 };
  
166 ERL_NIF_INIT(niftest,nif_funcs,NULL,NULL,NULL,NULL)</code></pre><p>The·Erlang·module·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1502008174-1">(</span><span·class="ss">niftest</span><span·class="p"·data-group-id="1502008174-1">)</span><span·class="p">.</span><span·class="w">166 ERL_NIF_INIT(niftest,nif_funcs,NULL,NULL,NULL,NULL)</code></pre><p>The·Erlang·module·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4544442407-1">(</span><span·class="ss">niftest</span><span·class="p"·data-group-id="4544442407-1">)</span><span·class="p">.</span><span·class="w">
167 </span><span·class="w">167 </span><span·class="w">
168 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1502008174-2">(</span><span·class="p"·data-group-id="1502008174-3">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">hello</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·4819ff406005947996b6d66e1217a2b89169a78fa9c96ac37195458f8779c199·...·]-2">)</span><span·class="p">.</span><span·class="w">168 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4544442407-2">(</span><span·class="p"·data-group-id="4544442407-3">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">hello</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·2ad7282d53fead6bf514c7430998998db93a523cddd77b49f70cafa7ba99885d·...·]-2">)</span><span·class="p">.</span><span·class="w">
169 </span><span·class="w">169 </span><span·class="w">
170 </span><span·class="p">-</span><span·class="na">nifs</span><span·class="p"·data-group-id="1502008174-4">(</span><span·class="p"·data-group-id="1502008174-5">[</span><span·class="ss">hello</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1502008174-5">]</span><span·class="p"·data-group-id="1502008174-4">)</span><span·class="p">.</span><span·class="w">170 </span><span·class="p">-</span><span·class="na">nifs</span><span·class="p"·data-group-id="4544442407-4">(</span><span·class="p"·data-group-id="4544442407-5">[</span><span·class="ss">hello</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4544442407-5">]</span><span·class="p"·data-group-id="4544442407-4">)</span><span·class="p">.</span><span·class="w">
171 </span><span·class="w">171 </span><span·class="w">
172 </span><span·class="p">-</span><span·class="na">on_load</span><span·class="p"·data-group-id="1502008174-6">(</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1502008174-6">)</span><span·class="p">.</span><span·class="w">172 </span><span·class="p">-</span><span·class="na">on_load</span><span·class="p"·data-group-id="4544442407-6">(</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4544442407-6">)</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">init</span><span·class="p"·data-group-id="1502008174-7">(</span><span·class="p"·data-group-id="1502008174-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 </span><span·class="nf">init</span><span·class="p"·data-group-id="4544442407-7">(</span><span·class="p"·data-group-id="4544442407-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ······</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">load_nif</span><span·class="p"·data-group-id="1502008174-8">(</span><span·class="s">&quot;./niftest&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="1502008174-8">)</span><span·class="p">.</span><span·class="w">174 ······</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">load_nif</span><span·class="p"·data-group-id="4544442407-8">(</span><span·class="s">&quot;./niftest&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="4544442407-8">)</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="nf">hello</span><span·class="p"·data-group-id="1502008174-9">(</span><span·class="p"·data-group-id="1502008174-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 </span><span·class="nf">hello</span><span·class="p"·data-group-id="4544442407-9">(</span><span·class="p"·data-group-id="4544442407-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
176 ······</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">nif_error</span><span·class="p"·data-group-id="1502008174-10">(</span><span·class="s">&quot;NIF·library·not·loaded&quot;</span><span·class="p"·data-group-id="1502008174-10">)</span><span·class="p">.</span></code></pre><p>Compile·and·test·can·look·as·follows·(on·Linux):</p><pre><code·class="text">$&gt;·gcc·-fPIC·-shared·-o·niftest.so·niftest.c·-I·$ERL_ROOT/usr/include/176 ······</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">nif_error</span><span·class="p"·data-group-id="4544442407-10">(</span><span·class="s">&quot;NIF·library·not·loaded&quot;</span><span·class="p"·data-group-id="4544442407-10">)</span><span·class="p">.</span></code></pre><p>Compile·and·test·can·look·as·follows·(on·Linux):</p><pre><code·class="text">$&gt;·gcc·-fPIC·-shared·-o·niftest.so·niftest.c·-I·$ERL_ROOT/usr/include/
177 $&gt;·erl177 $&gt;·erl
  
178 1&gt;·c(niftest).178 1&gt;·c(niftest).
179 {ok,niftest}179 {ok,niftest}
180 2&gt;·niftest:hello().180 2&gt;·niftest:hello().
181 &quot;Hello·world!&quot;</code></pre><p>In·the·example·above·the·<a·href="../../../doc/system/code_loading.html#on_load"><em><code·class="inline">on_load</code></em></a>181 &quot;Hello·world!&quot;</code></pre><p>In·the·example·above·the·<a·href="../../../doc/system/code_loading.html#on_load"><em><code·class="inline">on_load</code></em></a>
182 directive·is·used·get·function·<code·class="inline">init</code>·called·automatically·when·the·module·is182 directive·is·used·get·function·<code·class="inline">init</code>·called·automatically·when·the·module·is
Offset 2522, 15 lines modifiedOffset 2522, 15 lines modified
2522 ······<p·class="built-using">2522 ······<p·class="built-using">
2523 ········Built·using2523 ········Built·using
2524 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2524 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2525 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2525 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2526 ······</p>2526 ······</p>
2527 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2527 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2528 ····</footer>2528 ····</footer>
2529 ··</div>2529 ··</div>
2530 </main>2530 </main>
2531 </div>2531 </div>
2532 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2532 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2533 <script>2533 <script>
2534 ··document.addEventListener("DOMContentLoaded",·function·()·{2534 ··document.addEventListener("DOMContentLoaded",·function·()·{
648 B
html2text {}
Max HTML report size reached
3.56 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erl_prim_loader.html
    
Offset 408, 15 lines modifiedOffset 408, 15 lines modified
408 ························when·Filename·::·<a·href="erlang.html#t:string/0">string</a>(),·FileInfo·::·<a·href="../../../lib/kernel-10.0.1/doc/html/file.html#t:file_info/0">file:file_info</a>().</pre>408 ························when·Filename·::·<a·href="erlang.html#t:string/0">string</a>(),·FileInfo·::·<a·href="../../../lib/kernel-10.0.1/doc/html/file.html#t:file_info/0">file:file_info</a>().</pre>
  
409 ······</div>409 ······</div>
  
410 <p>Retrieves·information·about·a·file.</p><p>Returns·<code·class="inline">{ok,·FileInfo}</code>·if·successful,·otherwise·<code·class="inline">error</code>.·<code·class="inline">FileInfo</code>·is·a410 <p>Retrieves·information·about·a·file.</p><p>Returns·<code·class="inline">{ok,·FileInfo}</code>·if·successful,·otherwise·<code·class="inline">error</code>.·<code·class="inline">FileInfo</code>·is·a
411 record·<a·href="../../../lib/kernel-10.0.1/doc/html/file.html#t:file_info/0"><code·class="inline">file_info</code></a>,·defined·in·the·Kernel·include·file411 record·<a·href="../../../lib/kernel-10.0.1/doc/html/file.html#t:file_info/0"><code·class="inline">file_info</code></a>,·defined·in·the·Kernel·include·file
412 ·<code·class="inline">file.hrl</code>.·Include·the·following·directive·in·the·module·from·which·the412 ·<code·class="inline">file.hrl</code>.·Include·the·following·directive·in·the·module·from·which·the
413 function·is·called:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="8284991212-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="8284991212-1">)</span><span·class="p">.</span></code></pre><p>For·more·information·about·the·record·see·<a·href="../../../lib/kernel-10.0.1/doc/html/file.html#read_file_info/2"><code·class="inline">file:read_file_info/2</code></a>.</p><p><code·class="inline">Filename</code>·can·also·be·a·file·in·an·archive,·for·example,413 function·is·called:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2692967600-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="2692967600-1">)</span><span·class="p">.</span></code></pre><p>For·more·information·about·the·record·see·<a·href="../../../lib/kernel-10.0.1/doc/html/file.html#read_file_info/2"><code·class="inline">file:read_file_info/2</code></a>.</p><p><code·class="inline">Filename</code>·can·also·be·a·file·in·an·archive,·for·example,
414 <code·class="inline">$OTPROOT/lib/mnesia-4.4.7.ez/mnesia-4.4.7/ebin/mnesia</code>.·For·information414 <code·class="inline">$OTPROOT/lib/mnesia-4.4.7.ez/mnesia-4.4.7/ebin/mnesia</code>.·For·information
415 about·archive·files,·see·<a·href="../../../lib/kernel-10.0.1/doc/html/code.html"><code·class="inline">code</code></a>.</p>415 about·archive·files,·see·<a·href="../../../lib/kernel-10.0.1/doc/html/code.html"><code·class="inline">code</code></a>.</p>
416 ··</section>416 ··</section>
417 </section>417 </section>
418 <section·class="detail"·id="read_link_info/1">418 <section·class="detail"·id="read_link_info/1">
  
419 ··<div·class="detail-header">419 ··<div·class="detail-header">
Offset 500, 15 lines modifiedOffset 500, 15 lines modified
500 ······<p·class="built-using">500 ······<p·class="built-using">
501 ········Built·using501 ········Built·using
502 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the502 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
503 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>503 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
504 ······</p>504 ······</p>
505 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>505 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
506 ····</footer>506 ····</footer>
507 ··</div>507 ··</div>
508 </main>508 </main>
509 </div>509 </div>
510 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>510 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
511 <script>511 <script>
512 ··document.addEventListener("DOMContentLoaded",·function·()·{512 ··document.addEventListener("DOMContentLoaded",·function·()·{
585 B
html2text {}
Max HTML report size reached
28.2 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erl_tracer.html
    
Offset 145, 44 lines modifiedOffset 145, 44 lines modified
145 ··<span·class="text">Erl·Tracer·Module·Example</span>145 ··<span·class="text">Erl·Tracer·Module·Example</span>
146 </h2>146 </h2>
147 <p>In·this·example,·a·tracer·module·with·a·NIF·back·end·sends·a·message·for·each147 <p>In·this·example,·a·tracer·module·with·a·NIF·back·end·sends·a·message·for·each
148 <code·class="inline">send</code>·trace·tag·containing·only·the·sender·and·receiver.·Using·this·tracer148 <code·class="inline">send</code>·trace·tag·containing·only·the·sender·and·receiver.·Using·this·tracer
149 module,·a·much·more·lightweight·message·tracer·is·used,·which·only·records·who149 module,·a·much·more·lightweight·message·tracer·is·used,·which·only·records·who
150 sent·messages·to·who.</p><p>The·following·is·an·example·session·using·it·on·Linux:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">gcc</span><span·class="w">·</span><span·class="o">-</span><span·class="n">I</span><span·class="w">·</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">8.0</span><span·class="o">/</span><span·class="ss">include</span><span·class="o">/</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">fPIC</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">shared</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">o</span><span·class="w">·</span><span·class="ss">erl_msg_tracer</span><span·class="p">.</span><span·class="ss">so</span><span·class="w">·</span><span·class="ss">erl_msg_tracer</span><span·class="p">.</span><span·class="ss">c</span><span·class="w">150 sent·messages·to·who.</p><p>The·following·is·an·example·session·using·it·on·Linux:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">gcc</span><span·class="w">·</span><span·class="o">-</span><span·class="n">I</span><span·class="w">·</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">8.0</span><span·class="o">/</span><span·class="ss">include</span><span·class="o">/</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">fPIC</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">shared</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">o</span><span·class="w">·</span><span·class="ss">erl_msg_tracer</span><span·class="p">.</span><span·class="ss">so</span><span·class="w">·</span><span·class="ss">erl_msg_tracer</span><span·class="p">.</span><span·class="ss">c</span><span·class="w">
151 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">151 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">
152 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">19</span><span·class="w">·</span><span·class="p"·data-group-id="1705869298-1">[</span><span·class="n">DEVELOPMENT</span><span·class="p"·data-group-id="1705869298-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="1705869298-2">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">8[·...·truncated·by·diffoscope;·len:·1414,·SHA:·3e96d1767a839b376a8941e312239544a00b09ad568bdc0ee84188e468a5752f·...·]-8">]</span><span·class="w">152 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">19</span><span·class="w">·</span><span·class="p"·data-group-id="3228968142-1">[</span><span·class="n">DEVELOPMENT</span><span·class="p"·data-group-id="3228968142-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="3228968142-2">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">8[·...·truncated·by·diffoscope;·len:·1414,·SHA:·27d49a72d01bf8bfce61a3cdcaf118978fa5c3af2478e12d330a362b9c359cfa·...·]-8">]</span><span·class="w">
  
153 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V8</span><span·class="p">.</span><span·class="mi">0</span><span·class="w">··</span><span·class="p"·data-group-id="1705869298-9">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="1705869298-9">)</span><span·class="gp·unselectable">153 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V8</span><span·class="p">.</span><span·class="mi">0</span><span·class="w">··</span><span·class="p"·data-group-id="3228968142-9">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="3228968142-9">)</span><span·class="gp·unselectable">
154 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="1705869298-10">(</span><span·class="ss">erl_msg_tracer</span><span·class="p"·data-group-id="1705869298-10">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">erl_msg_tracer</span><span·class="p">:</span><span·class="nf">load</span><sp[·...·truncated·by·diffoscope;·len:·92,·SHA:·59c1f047761f192877abeb1dce358f38119f0ca10644daa8f14a3ccf21bf781d·...·]-11">)</span><span·class="p">.</span><span·class="w">154 1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="3228968142-10">(</span><span·class="ss">erl_msg_tracer</span><span·class="p"·data-group-id="3228968142-10">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">erl_msg_tracer</span><span·class="p">:</span><span·class="nf">load</span><sp[·...·truncated·by·diffoscope;·len:·92,·SHA:·174ce924565382632235ffced0e4180ec60f5451cdc12ae0737a24eb5d1b95ed·...·]-11">)</span><span·class="p">.</span><span·class="w">
155 </span><span·class="ss">ok</span><span·class="gp·unselectable">155 </span><span·class="ss">ok</span><span·class="gp·unselectable">
156 2&gt;·</span><span·class="n">Tracer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1705869298-12">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="1705869298-13">(</span><span·class="p"·data-group-id="1705869298-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span[·...·truncated·by·diffoscope;·len:·954,·SHA:·8f30f8709fccff371d17b700828837d271cf68cebbf51036738575adb81e5a90·...·]-12">)</span><span·class="p">.</span><span·class="w">156 2&gt;·</span><span·class="n">Tracer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3228968142-12">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="3228968142-13">(</span><span·class="p"·data-group-id="3228968142-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span[·...·truncated·by·diffoscope;·len:·954,·SHA:·4dda7159b4088326798e28f3995ffcc80ec79cdd31a74c772f5f4040f07df662·...·]-12">)</span><span·class="p">.</span><span·class="w">
157 </span><span·class="o">&lt;</span><span·class="mf">0.37</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">157 </span><span·class="o">&lt;</span><span·class="mf">0.37</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">
158 3&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">trace</span><span·class="p"·data-group-id="1705869298-17">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1705869298-18">[</span><span·class="nb">send</span>[·...·truncated·by·diffoscope;·len:·420,·SHA:·e2718dabe2884069646800b39b43fdac941a453e9b1f20c93e04a735af6f80ea·...·]-17">)</span><span·class="p">.</span><span·class="w">158 3&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">trace</span><span·class="p"·data-group-id="3228968142-17">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3228968142-18">[</span><span·class="nb">send</span>[·...·truncated·by·diffoscope;·len:·420,·SHA:·fcfbc1e33c859ebef50456886bf7e8df7485979007e2f99681ba88f6be17d197·...·]-17">)</span><span·class="p">.</span><span·class="w">
159 </span><span·class="mi">0</span><span·class="w">159 </span><span·class="mi">0</span><span·class="w">
160 </span><span·class="p"·data-group-id="1705869298-20">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.39</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</spa[·...·truncated·by·diffoscope;·len:·147,·SHA:·918eba02fa70576b3adbdca36e1b7b8b056872ca78e3842c324b4d595dfea85d·...·]-20">}</span><span·class="gp·unselectable">160 </span><span·class="p"·data-group-id="3228968142-20">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.39</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</spa[·...·truncated·by·diffoscope;·len:·147,·SHA:·be7861281cb525a70939040be0c5df2598c3a6c37f9c4ce920b804edc27b1fc4·...·]-20">}</span><span·class="gp·unselectable">
161 4&gt;·</span><span·class="p"·data-group-id="1705869298-21">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D</span><span·class="p"·data-group-id="1705869298-21">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·375,·SHA:·0b493a7f33e6aff846d80c5b9a4b74c8e7346c759b60c94842e25314952e66b3·...·]-22">)</span><span·class="p">.</span><span·class="w">161 4&gt;·</span><span·class="p"·data-group-id="3228968142-21">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D</span><span·class="p"·data-group-id="3228968142-21">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·375,·SHA:·cf8c3c1e02ebf13fe921f436e84b365dca4517f1a3460f776fa9b15c06a6079f·...·]-22">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p"·data-group-id="1705869298-24">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.486</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·150,·SHA:·edf5b0b2ef092268a41716ae976f58ff574e0e53d543a41f351ab889b0ff15a6·...·]-24">}</span><span·class="w">162 </span><span·class="p"·data-group-id="3228968142-24">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.486</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·150,·SHA:·475ae65c88ab85a0f0a20e868fd6447e4b42c5c5f77a5216c124f81f6d3ead11·...·]-24">}</span><span·class="w">
163 </span><span·class="p"·data-group-id="1705869298-25">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.40</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</spa[·...·truncated·by·diffoscope;·len:·147,·SHA:·2afcb97e6d2d8b0fbb9631216a2e3a0472f7c20d48f4a00239e3570e8d79b91a·...·]-25">}</span><span·class="w">163 </span><span·class="p"·data-group-id="3228968142-25">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.40</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</spa[·...·truncated·by·diffoscope;·len:·147,·SHA:·5e335f6abac934005273358e08fd2982149c816f013fcd705846ec202eddcc08·...·]-25">}</span><span·class="w">
164 </span><span·class="p"·data-group-id="1705869298-26">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.487</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·149,·SHA:·43b084068cfbd298758f9b1991d70bf493a2e7961554f5f6d5323b8462e02a7b·...·]-26">}</span><span·class="w">164 </span><span·class="p"·data-group-id="3228968142-26">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.487</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·149,·SHA:·0a5fa335f582072d622cc2fb7ac9b1f248c2f8c6b2b1e3ce068af79d1d40b04f·...·]-26">}</span><span·class="w">
165 </span><span·class="p"·data-group-id="1705869298-27">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.488</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·149,·SHA:·43b084068cfbd298758f9b1991d70bf493a2e7961554f5f6d5323b8462e02a7b·...·]-27">}</span><span·class="w">165 </span><span·class="p"·data-group-id="3228968142-27">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.488</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·149,·SHA:·0a5fa335f582072d622cc2fb7ac9b1f248c2f8c6b2b1e3ce068af79d1d40b04f·...·]-27">}</span><span·class="w">
166 </span><span·class="p"·data-group-id="1705869298-28">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.489</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·149,·SHA:·43b084068cfbd298758f9b1991d70bf493a2e7961554f5f6d5323b8462e02a7b·...·]-28">}</span><span·class="w">166 </span><span·class="p"·data-group-id="3228968142-28">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.489</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·149,·SHA:·0a5fa335f582072d622cc2fb7ac9b1f248c2f8c6b2b1e3ce068af79d1d40b04f·...·]-28">}</span><span·class="w">
167 </span><span·class="p"·data-group-id="1705869298-29">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.490</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·149,·SHA:·43b084068cfbd298758f9b1991d70bf493a2e7961554f5f6d5323b8462e02a7b·...·]-29">}</span><span·class="w">167 </span><span·class="p"·data-group-id="3228968142-29">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Port</span><span·class="o">&lt;</span><span·class="mf">0.490</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</[·...·truncated·by·diffoscope;·len:·149,·SHA:·0a5fa335f582072d622cc2fb7ac9b1f248c2f8c6b2b1e3ce068af79d1d40b04f·...·]-29">}</span><span·class="w">
168 </span><span·class="p"·data-group-id="1705869298-30">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.40</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="1705869298-30">}</span><span·class="w">168 </span><span·class="p"·data-group-id="3228968142-30">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.40</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="3228968142-30">}</span><span·class="w">
169 </span><span·class="p"·data-group-id="1705869298-31">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.41</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</spa[·...·truncated·by·diffoscope;·len:·147,·SHA:·918eba02fa70576b3adbdca36e1b7b8b056872ca78e3842c324b4d595dfea85d·...·]-31">}</span><span·class="w">169 </span><span·class="p"·data-group-id="3228968142-31">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.41</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</spa[·...·truncated·by·diffoscope;·len:·147,·SHA:·be7861281cb525a70939040be0c5df2598c3a6c37f9c4ce920b804edc27b1fc4·...·]-31">}</span><span·class="w">
170 </span><span·class="mi">5</span><span·class="o">&gt;</span></code></pre><p><code·class="inline">erl_msg_tracer.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4374705571-1">(</span><span·class="ss">erl_msg_tracer</span><span·class="p"·data-group-id="4374705571-1">)</span><span·class="p">.</span><span·class="w">170 </span><span·class="mi">5</span><span·class="o">&gt;</span></code></pre><p><code·class="inline">erl_msg_tracer.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4409588574-1">(</span><span·class="ss">erl_msg_tracer</span><span·class="p"·data-group-id="4409588574-1">)</span><span·class="p">.</span><span·class="w">
171 </span><span·class="w">171 </span><span·class="w">
172 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4374705571-2">(</span><span·class="p"·data-group-id="4374705571-3">[</span><span·class="ss">enabled</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="nb">trace</span><span·class="p">/</span><[·...·truncated·by·diffoscope;·len:·243,·SHA:·09815fab857cf5167624952cf0439bffc87d096fb8412230c172fb4d7fa2aad3·...·]-2">)</span><span·class="p">.</span><span·class="w">172 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4409588574-2">(</span><span·class="p"·data-group-id="4409588574-3">[</span><span·class="ss">enabled</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="nb">trace</span><span·class="p">/</span><[·...·truncated·by·diffoscope;·len:·243,·SHA:·fce219fdcb7485230609afabbbca858e5cab41eb43165f2f087c1abfa7adc33b·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">load</span><span·class="p"·data-group-id="4374705571-4">(</span><span·class="p"·data-group-id="4374705571-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 </span><span·class="nf">load</span><span·class="p"·data-group-id="4409588574-4">(</span><span·class="p"·data-group-id="4409588574-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">load_nif</span><span·class="p"·data-group-id="4374705571-5">(</span><span·class="s">&quot;erl_msg_tracer&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4374705571-6">[</span><span·class="p"·data-group-id="4374705571-6">]</span><span·class="p"·data-group-id="4[·...·truncated·by·diffoscope;·len:·9,·SHA:·a504b8c1f0ba8f92382d5ce5d5f6f9bd582c03e3f023eda02526b153903cf14e·...·]-5">)</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">load_nif</span><span·class="p"·data-group-id="4409588574-5">(</span><span·class="s">&quot;erl_msg_tracer&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4409588574-6">[</span><span·class="p"·data-group-id="4409588574-6">]</span><span·class="p"·data-group-id="4[·...·truncated·by·diffoscope;·len:·9,·SHA:·e80afefccd0137153deb1d91ad599d7c72256ba4b46bb3043fb5abf8031ab334·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="nf">enabled</span><span·class="p"·data-group-id="4374705571-7">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="4374705571-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 </span><span·class="nf">enabled</span><span·class="p"·data-group-id="4409588574-7">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="4409588574-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
176 ····</span><span·class="ss">error</span><span·class="p">.</span><span·class="w">176 ····</span><span·class="ss">error</span><span·class="p">.</span><span·class="w">
  
177 </span><span·class="nf">trace</span><span·class="p"·data-group-id="4374705571-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</[·...·truncated·by·diffoscope;·len:·118,·SHA:·e33dc29c923a4ea76eb926750a530d52996753a416c9a60bcb9baa1f55657ac5·...·]-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">177 </span><span·class="nf">trace</span><span·class="p"·data-group-id="4409588574-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</[·...·truncated·by·diffoscope;·len:·118,·SHA:·0cd0b882a711fd9b967971ff83903d2a5d3ba790c68e418c2961df8626d8c9df·...·]-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
178 ····</span><span·class="ss">error</span><span·class="p">.</span></code></pre><p><code·class="inline">erl_msg_tracer.c</code>:</p><pre><code·class="c">#include·&lt;erl_nif.h&gt;178 ····</span><span·class="ss">error</span><span·class="p">.</span></code></pre><p><code·class="inline">erl_msg_tracer.c</code>:</p><pre><code·class="c">#include·&lt;erl_nif.h&gt;
  
179 /*·NIF·interface·declarations·*/179 /*·NIF·interface·declarations·*/
180 static·int·load(ErlNifEnv*·env,·void**·priv_data,·ERL_NIF_TERM·load_info);180 static·int·load(ErlNifEnv*·env,·void**·priv_data,·ERL_NIF_TERM·load_info);
181 static·int·upgrade(ErlNifEnv*·env,·void**·priv_data,·void**·old_priv_data,·ERL_NIF_TERM·load_info);181 static·int·upgrade(ErlNifEnv*·env,·void**·priv_data,·void**·old_priv_data,·ERL_NIF_TERM·load_info);
182 static·void·unload(ErlNifEnv*·env,·void*·priv_data);182 static·void·unload(ErlNifEnv*·env,·void*·priv_data);
  
Offset 1715, 15 lines modifiedOffset 1715, 15 lines modified
1715 ······<p·class="built-using">1715 ······<p·class="built-using">
1716 ········Built·using1716 ········Built·using
1717 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1717 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1718 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1718 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1719 ······</p>1719 ······</p>
1720 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1720 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1721 ····</footer>1721 ····</footer>
1722 ··</div>1722 ··</div>
1723 </main>1723 </main>
1724 </div>1724 </div>
1725 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1725 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1726 <script>1726 <script>
1727 ··document.addEventListener("DOMContentLoaded",·function·()·{1727 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
598 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erlang.html
Max HTML report size reached
1.33 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erlc_cmd.html
    
Offset 295, 15 lines modifiedOffset 295, 15 lines modified
295 ······<p·class="built-using">295 ······<p·class="built-using">
296 ········Built·using296 ········Built·using
297 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the297 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
298 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>298 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
299 ······</p>299 ······</p>
300 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>300 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
301 ····</footer>301 ····</footer>
302 ··</div>302 ··</div>
303 </main>303 </main>
304 </div>304 </div>
305 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>305 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
306 <script>306 <script>
307 ··document.addEventListener("DOMContentLoaded",·function·()·{307 ··document.addEventListener("DOMContentLoaded",·function·()·{
533 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erlsrv_cmd.html
    
Offset 401, 15 lines modifiedOffset 401, 15 lines modified
401 ······<p·class="built-using">401 ······<p·class="built-using">
402 ········Built·using402 ········Built·using
403 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the403 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
404 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>404 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
405 ······</p>405 ······</p>
406 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>406 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
407 ····</footer>407 ····</footer>
408 ··</div>408 ··</div>
409 </main>409 </main>
410 </div>410 </div>
411 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>411 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
412 <script>412 <script>
413 ··document.addEventListener("DOMContentLoaded",·function·()·{413 ··document.addEventListener("DOMContentLoaded",·function·()·{
584 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/erts_alloc.html
    
Offset 534, 15 lines modifiedOffset 534, 15 lines modified
534 ······<p·class="built-using">534 ······<p·class="built-using">
535 ········Built·using535 ········Built·using
536 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the536 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
537 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>537 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
538 ······</p>538 ······</p>
539 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>539 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
540 ····</footer>540 ····</footer>
541 ··</div>541 ··</div>
542 </main>542 </main>
543 </div>543 </div>
544 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>544 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
545 <script>545 <script>
546 ··document.addEventListener("DOMContentLoaded",·function·()·{546 ··document.addEventListener("DOMContentLoaded",·function·()·{
638 B
html2text {}
Max HTML report size reached
17.8 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/escript_cmd.html
    
Offset 127, 45 lines modifiedOffset 127, 45 lines modified
  
127 <p><code·class="inline">escript</code>·provides·support·for·running·short·Erlang·programs·without·having·to127 <p><code·class="inline">escript</code>·provides·support·for·running·short·Erlang·programs·without·having·to
128 compile·them·first,·and·an·easy·way·to·retrieve·the·command-line·arguments.128 compile·them·first,·and·an·easy·way·to·retrieve·the·command-line·arguments.
129 <code·class="inline">escript</code>s·are·created·by·either·writing·them·by·hand·or·using·<a·href="../../../lib/stdlib-6.0.1/doc/html/escript.html#create/2"><code·class="inline">escript:create/2</code></a>.</p><p>escripts·are·run·by·directly·invoking·them·(does·not·work·on·Windows):</p><pre><code·class="text">script-name.escript·[arg1·arg2...]</code></pre><p>or·by·calling·the·<code·class="inline">escript</code>·program·(works·on·all·platforms):</p><pre><code·class="text">escript·[escript-flags]·script-name.escript·[arg1·arg2...]</code></pre><p>For·example:</p><pre><code·class="text">$·chmod·u+x·factorial129 <code·class="inline">escript</code>s·are·created·by·either·writing·them·by·hand·or·using·<a·href="../../../lib/stdlib-6.0.1/doc/html/escript.html#create/2"><code·class="inline">escript:create/2</code></a>.</p><p>escripts·are·run·by·directly·invoking·them·(does·not·work·on·Windows):</p><pre><code·class="text">script-name.escript·[arg1·arg2...]</code></pre><p>or·by·calling·the·<code·class="inline">escript</code>·program·(works·on·all·platforms):</p><pre><code·class="text">escript·[escript-flags]·script-name.escript·[arg1·arg2...]</code></pre><p>For·example:</p><pre><code·class="text">$·chmod·u+x·factorial
130 $·cat·factorial</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="ch">#!/usr/bin/env·escript130 $·cat·factorial</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="ch">#!/usr/bin/env·escript
131 </span><span·class="c1">%%·-*-·erlang·-*-</span><span·class="w">131 </span><span·class="c1">%%·-*-·erlang·-*-</span><span·class="w">
132 </span><span·class="c1">%%!·-sname·factorial·-mnesia·debug·verbose</span><span·class="w">132 </span><span·class="c1">%%!·-sname·factorial·-mnesia·debug·verbose</span><span·class="w">
133 </span><span·class="nf">main</span><span·class="p"·data-group-id="7943275259-1">(</span><span·class="p"·data-group-id="7943275259-2">[</span><span·class="n">String</span><span·class="p"·data-group-id="7943275259-2">]</span><span·class="p"·data-group-id="7943275259-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">133 </span><span·class="nf">main</span><span·class="p"·data-group-id="6635914359-1">(</span><span·class="p"·data-group-id="6635914359-2">[</span><span·class="n">String</span><span·class="p"·data-group-id="6635914359-2">]</span><span·class="p"·data-group-id="6635914359-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
134 ····</span><span·class="k">try</span><span·class="w">134 ····</span><span·class="k">try</span><span·class="w">
135 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">list_to_integer</span><span·class="p"·data-group-id="7943275259-3">(</span><span·class="n">String</span><span·class="p"·data-group-id="7943275259-3">)</span><span·class="p">,</span><span·class="w">135 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">list_to_integer</span><span·class="p"·data-group-id="6635914359-3">(</span><span·class="n">String</span><span·class="p"·data-group-id="6635914359-3">)</span><span·class="p">,</span><span·class="w">
136 ········</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fac</span><span·class="p"·data-group-id="7943275259-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="7943275259-4">)</span><span·class="p">,</span><span·class="w">136 ········</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fac</span><span·class="p"·data-group-id="6635914359-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="6635914359-4">)</span><span·class="p">,</span><span·class="w">
137 ········</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="7943275259-5">(</span><span·class="s">&quot;factorial·</span><span·class="si">~w</span><span·class="s">·=·</span><span·class="si">~w</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7943275[·...·truncated·by·diffoscope;·len:·179,·SHA:·cd0148f34f74ea8ba25615dca0ba756cad282adbbff1789599b392b456d2a7bc·...·]59-5">)</span><span·class="w">137 ········</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6635914359-5">(</span><span·class="s">&quot;factorial·</span><span·class="si">~w</span><span·class="s">·=·</span><span·class="si">~w</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6635914[·...·truncated·by·diffoscope;·len:·179,·SHA:·4311f624824d605f8ff1eb1356904413f858f3d459108ea8f82776f457ec9641·...·]59-5">)</span><span·class="w">
138 ····</span><span·class="k">catch</span><span·class="w">138 ····</span><span·class="k">catch</span><span·class="w">
139 ········</span><span·class="p">_</span><span·class="p">:</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">139 ········</span><span·class="p">_</span><span·class="p">:</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
140 ············</span><span·class="nf">usage</span><span·class="p"·data-group-id="7943275259-7">(</span><span·class="p"·data-group-id="7943275259-7">)</span><span·class="w">140 ············</span><span·class="nf">usage</span><span·class="p"·data-group-id="6635914359-7">(</span><span·class="p"·data-group-id="6635914359-7">)</span><span·class="w">
141 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">141 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
142 </span><span·class="nf">main</span><span·class="p"·data-group-id="7943275259-8">(</span><span·class="p">_</span><span·class="p"·data-group-id="7943275259-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">142 </span><span·class="nf">main</span><span·class="p"·data-group-id="6635914359-8">(</span><span·class="p">_</span><span·class="p"·data-group-id="6635914359-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
143 ····</span><span·class="nf">usage</span><span·class="p"·data-group-id="7943275259-9">(</span><span·class="p"·data-group-id="7943275259-9">)</span><span·class="p">.</span><span·class="w">143 ····</span><span·class="nf">usage</span><span·class="p"·data-group-id="6635914359-9">(</span><span·class="p"·data-group-id="6635914359-9">)</span><span·class="p">.</span><span·class="w">
  
144 </span><span·class="nf">usage</span><span·class="p"·data-group-id="7943275259-10">(</span><span·class="p"·data-group-id="7943275259-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">144 </span><span·class="nf">usage</span><span·class="p"·data-group-id="6635914359-10">(</span><span·class="p"·data-group-id="6635914359-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
145 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="7943275259-11">(</span><span·class="s">&quot;usage:·factorial·integer\n&quot;</span><span·class="p"·data-group-id="7943275259-11">)</span><span·class="p">,</span><span·class="w">145 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6635914359-11">(</span><span·class="s">&quot;usage:·factorial·integer\n&quot;</span><span·class="p"·data-group-id="6635914359-11">)</span><span·class="p">,</span><span·class="w">
146 ····</span><span·class="nf">halt</span><span·class="p"·data-group-id="7943275259-12">(</span><span·class="mi">1</span><span·class="p"·data-group-id="7943275259-12">)</span><span·class="p">.</span><span·class="w">146 ····</span><span·class="nf">halt</span><span·class="p"·data-group-id="6635914359-12">(</span><span·class="mi">1</span><span·class="p"·data-group-id="6635914359-12">)</span><span·class="p">.</span><span·class="w">
  
147 </span><span·class="nf">fac</span><span·class="p"·data-group-id="7943275259-13">(</span><span·class="mi">0</span><span·class="p"·data-group-id="7943275259-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">147 </span><span·class="nf">fac</span><span·class="p"·data-group-id="6635914359-13">(</span><span·class="mi">0</span><span·class="p"·data-group-id="6635914359-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">
148 </span><span·class="nf">fac</span><span·class="p"·data-group-id="7943275259-14">(</span><span·class="n">N</span><span·class="p"·data-group-id="7943275259-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·c[·...·truncated·by·diffoscope;·len:·210,·SHA:·b9619b8c65e75b0d4429f06df0cab298cab951d8cc75b4ac50f0abfcfe3cdf10·...·]59-15">)</span><span·class="p">.</span></code></pre><pre><code·class="text">$·./factorial·5148 </span><span·class="nf">fac</span><span·class="p"·data-group-id="6635914359-14">(</span><span·class="n">N</span><span·class="p"·data-group-id="6635914359-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">*</span><span·c[·...·truncated·by·diffoscope;·len:·210,·SHA:·00daae6a9b62ad111fd1f5a0780b674ee5f9d2c0a2068b8d10036943b20f7966·...·]59-15">)</span><span·class="p">.</span></code></pre><pre><code·class="text">$·./factorial·5
149 factorial·5·=·120149 factorial·5·=·120
150 $·./factorial150 $·./factorial
151 usage:·factorial·integer151 usage:·factorial·integer
152 $·./factorial·five152 $·./factorial·five
153 usage:·factorial·integer</code></pre><p>The·header·of·the·Erlang·script·in·the·example·differs·from·a·normal·Erlang153 usage:·factorial·integer</code></pre><p>The·header·of·the·Erlang·script·in·the·example·differs·from·a·normal·Erlang
154 module.·The·first·line·is·intended·to·be·the·interpreter·line,·which·invokes154 module.·The·first·line·is·intended·to·be·the·interpreter·line,·which·invokes
155 <code·class="inline">escript</code>.</p><p>However,·if·you·invoke·the·<code·class="inline">escript</code>·as·follows,·the·contents·of·the·first·line155 <code·class="inline">escript</code>.</p><p>However,·if·you·invoke·the·<code·class="inline">escript</code>·as·follows,·the·contents·of·the·first·line
156 do·not·matter,·but·it·cannot·contain·Erlang·code·as·it·will·be·ignored:</p><pre><code·class="text">$·escript·factorial·5</code></pre><p>The·second·line·in·the·example·contains·an·optional·directive·to·the·<code·class="inline">Emacs</code>156 do·not·matter,·but·it·cannot·contain·Erlang·code·as·it·will·be·ignored:</p><pre><code·class="text">$·escript·factorial·5</code></pre><p>The·second·line·in·the·example·contains·an·optional·directive·to·the·<code·class="inline">Emacs</code>
157 editor,·which·causes·it·to·enter·the·major·mode·for·editing·Erlang·source·files.157 editor,·which·causes·it·to·enter·the·major·mode·for·editing·Erlang·source·files.
158 If·the·directive·is·present,·it·must·be·located·on·the·second·line.</p><p>If·a·comment·selecting·the·<a·href="../../../lib/stdlib-6.0.1/doc/html/epp.html#encoding">encoding</a>·exists,·it·can·be158 If·the·directive·is·present,·it·must·be·located·on·the·second·line.</p><p>If·a·comment·selecting·the·<a·href="../../../lib/stdlib-6.0.1/doc/html/epp.html#encoding">encoding</a>·exists,·it·can·be
159 located·on·the·second·line.</p><blockquote><h4·class="info">Note</h4><p>The·encoding·specified·by·the·above·mentioned·comment·applies·to·the·script159 located·on·the·second·line.</p><blockquote><h4·class="info">Note</h4><p>The·encoding·specified·by·the·above·mentioned·comment·applies·to·the·script
160 itself.·The·encoding·of·the·I/O-server,·however,·must·be·set·explicitly·as160 itself.·The·encoding·of·the·I/O-server,·however,·must·be·set·explicitly·as
161 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">setopts</span><span·class="p"·data-group-id="2982616967-1">(</span><span·class="p"·data-group-id="2982616967-2">[</span><span·class="p"·data-group-id="2982616967-3">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">latin1</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·128,·SHA:·ac75c361400c9994c54f6acf0c30ac32c5dd047d71c5fb0c0b6aeafae8c32da8·...·]7-1">)</span></code></pre><p>The·default·encoding·of·the·I/O-server·for161 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">setopts</span><span·class="p"·data-group-id="3480995327-1">(</span><span·class="p"·data-group-id="3480995327-2">[</span><span·class="p"·data-group-id="3480995327-3">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">latin1</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·128,·SHA:·cce463881334d9dcff447b1e8336650b3abbe1233371392f50ac0de906913f5d·...·]7-1">)</span></code></pre><p>The·default·encoding·of·the·I/O-server·for
162 <a·href="../../../lib/stdlib-6.0.1/doc/html/io.html#t:standard_io/0"><code·class="inline">standard_io</code></a>·is·<code·class="inline">unicode</code>·if·its·supported.·(see162 <a·href="../../../lib/stdlib-6.0.1/doc/html/io.html#t:standard_io/0"><code·class="inline">standard_io</code></a>·is·<code·class="inline">unicode</code>·if·its·supported.·(see
163 section163 section
164 <a·href="../../../lib/stdlib-6.0.1/doc/html/unicode_usage.html#unicode_options_summary">Summary·of·Options</a>)·in164 <a·href="../../../lib/stdlib-6.0.1/doc/html/unicode_usage.html#unicode_options_summary">Summary·of·Options</a>)·in
165 the·STDLIB·User's·Guide.</p></blockquote><p>On·the·third·line·(or·second·line·depending·on·the·presence·of·the·Emacs165 the·STDLIB·User's·Guide.</p></blockquote><p>On·the·third·line·(or·second·line·depending·on·the·presence·of·the·Emacs
166 directive),·arguments·can·be·specified·to·the·emulator,·for·example:</p><pre><code·class="text">%%!·-sname·factorial·-mnesia·debug·verbose</code></pre><p>Such·an·argument·line·must·start·with·<code·class="inline">%%!</code>·and·the·remaining·line·is166 directive),·arguments·can·be·specified·to·the·emulator,·for·example:</p><pre><code·class="text">%%!·-sname·factorial·-mnesia·debug·verbose</code></pre><p>Such·an·argument·line·must·start·with·<code·class="inline">%%!</code>·and·the·remaining·line·is
167 interpreted·as·arguments·to·the·emulator.</p><p>If·you·know·the·location·of·the·<code·class="inline">escript</code>·executable,·the·first·line·can167 interpreted·as·arguments·to·the·emulator.</p><p>If·you·know·the·location·of·the·<code·class="inline">escript</code>·executable,·the·first·line·can
168 directly·give·the·path·to·<code·class="inline">escript</code>,·for·example:</p><pre><code·class="text">#!/usr/local/bin/escript</code></pre><p>As·any·other·type·of·scripts,·Erlang·scripts·do·not·work·on·Unix·platforms·if168 directly·give·the·path·to·<code·class="inline">escript</code>,·for·example:</p><pre><code·class="text">#!/usr/local/bin/escript</code></pre><p>As·any·other·type·of·scripts,·Erlang·scripts·do·not·work·on·Unix·platforms·if
Offset 176, 23 lines modifiedOffset 176, 23 lines modified
176 arguments·specified·to·the·script·(not·changed·or·interpreted·in·any·way).</p><p>If·the·<code·class="inline">main/1</code>·function·in·the·script·returns·successfully,·the·exit·status·for176 arguments·specified·to·the·script·(not·changed·or·interpreted·in·any·way).</p><p>If·the·<code·class="inline">main/1</code>·function·in·the·script·returns·successfully,·the·exit·status·for
177 the·script·is·<code·class="inline">0</code>.·If·an·exception·is·generated·during·execution,·a·short177 the·script·is·<code·class="inline">0</code>.·If·an·exception·is·generated·during·execution,·a·short
178 message·is·printed·and·the·script·terminates·with·exit·status·<code·class="inline">127</code>.</p><p>To·return·your·own·non-zero·exit·code,·call·<a·href="erlang.html#halt/1"><code·class="inline">halt(ExitCode)</code></a>,·for178 message·is·printed·and·the·script·terminates·with·exit·status·<code·class="inline">127</code>.</p><p>To·return·your·own·non-zero·exit·code,·call·<a·href="erlang.html#halt/1"><code·class="inline">halt(ExitCode)</code></a>,·for
179 example:</p><pre><code·class="text">halt(1).</code></pre><p>To·retrieve·the·pathname·of·the·script,·call·<a·href="../../../lib/stdlib-6.0.1/doc/html/escript.html#script_name/0"><code·class="inline">escript:script_name/0</code></a>·from·your179 example:</p><pre><code·class="text">halt(1).</code></pre><p>To·retrieve·the·pathname·of·the·script,·call·<a·href="../../../lib/stdlib-6.0.1/doc/html/escript.html#script_name/0"><code·class="inline">escript:script_name/0</code></a>·from·your
180 script·(the·pathname·is·usually,·but·not·always,·absolute).</p><p>If·the·file·contains·source·code·(as·in·the·example·above),·it·is·processed·by180 script·(the·pathname·is·usually,·but·not·always,·absolute).</p><p>If·the·file·contains·source·code·(as·in·the·example·above),·it·is·processed·by
181 the·<a·href="../../../lib/stdlib-6.0.1/doc/html/epp.html"><code·class="inline">epp</code></a>·preprocessor.·This·means·that·you,·for·example,·can·use·predefined181 the·<a·href="../../../lib/stdlib-6.0.1/doc/html/epp.html"><code·class="inline">epp</code></a>·preprocessor.·This·means·that·you,·for·example,·can·use·predefined
182 macros·(such·as·<code·class="inline">?MODULE</code>)·and·include·directives·like·the·<code·class="inline">-include_lib</code>182 macros·(such·as·<code·class="inline">?MODULE</code>)·and·include·directives·like·the·<code·class="inline">-include_lib</code>
183 directive.·For·example,·use</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2869257921-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="2869257921-1">)</span><span·class="p">.</span></code></pre><p>to·include·the·record·definitions·for·the·records·used·by·function183 directive.·For·example,·use</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7155922066-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="7155922066-1">)</span><span·class="p">.</span></code></pre><p>to·include·the·record·definitions·for·the·records·used·by·function
184 <a·href="../../../lib/kernel-10.0.1/doc/html/file.html#read_link_info/1"><code·class="inline">file:read_link_info/1</code></a>.·You·can·also·select·encoding·by·including·an·encoding184 <a·href="../../../lib/kernel-10.0.1/doc/html/file.html#read_link_info/1"><code·class="inline">file:read_link_info/1</code></a>.·You·can·also·select·encoding·by·including·an·encoding
185 comment·here,·but·if·a·valid·encoding·comment·exists·on·the·second·line,·it185 comment·here,·but·if·a·valid·encoding·comment·exists·on·the·second·line,·it
186 takes·precedence.</p><p>The·script·is·checked·for·syntactic·and·semantic·correctness·before·it·is·run.186 takes·precedence.</p><p>The·script·is·checked·for·syntactic·and·semantic·correctness·before·it·is·run.
187 If·there·are·warnings·(such·as·unused·variables),·they·are·printed·and·the187 If·there·are·warnings·(such·as·unused·variables),·they·are·printed·and·the
188 script·will·still·be·run.·If·there·are·errors,·they·are·printed·and·the·script188 script·will·still·be·run.·If·there·are·errors,·they·are·printed·and·the·script
189 will·not·be·run·and·its·exit·status·is·<code·class="inline">127</code>.</p><p>Both·the·module·declaration·and·the·export·declaration·of·the·<code·class="inline">main/1</code>·function189 will·not·be·run·and·its·exit·status·is·<code·class="inline">127</code>.</p><p>Both·the·module·declaration·and·the·export·declaration·of·the·<code·class="inline">main/1</code>·function
190 are·optional.</p><p>By·default,·the·script·will·be·compiled·by·the·Erlang·compiler.</p><p>It·is·possible·to·force·it·to·be·interpreted·by·including·the·following·line190 are·optional.</p><p>By·default,·the·script·will·be·compiled·by·the·Erlang·compiler.</p><p>It·is·possible·to·force·it·to·be·interpreted·by·including·the·following·line
191 somewhere·in·the·script·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">mode</span><span·class="p"·data-group-id="5170578176-1">(</span><span·class="ss">interpret</span><span·class="p"·data-group-id="5170578176-1">)</span><span·class="p">.</span></code></pre><p>Execution·of·interpreted·code·is·slower·than·compiled·code,·and·some·language191 somewhere·in·the·script·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">mode</span><span·class="p"·data-group-id="9718478565-1">(</span><span·class="ss">interpret</span><span·class="p"·data-group-id="9718478565-1">)</span><span·class="p">.</span></code></pre><p>Execution·of·interpreted·code·is·slower·than·compiled·code,·and·some·language
192 constructs·will·not·work,·but·there·is·no·requirement·for·the·Erlang·compiler192 constructs·will·not·work,·but·there·is·no·requirement·for·the·Erlang·compiler
193 application·to·be·available.</p><blockquote><h4·class="info">Change</h4><p>Before·the·Erlang/OTP·27·the·script·would·be·interpreted·by·default.</p></blockquote><h2·id="precompiled-escripts"·class="section-heading">193 application·to·be·available.</p><blockquote><h4·class="info">Change</h4><p>Before·the·Erlang/OTP·27·the·script·would·be·interpreted·by·default.</p></blockquote><h2·id="precompiled-escripts"·class="section-heading">
194 ··<a·href="#precompiled-escripts"·class="hover-link">194 ··<a·href="#precompiled-escripts"·class="hover-link">
195 ····<i·class="ri-link-m"·aria-hidden="true"></i>195 ····<i·class="ri-link-m"·aria-hidden="true"></i>
196 ··</a>196 ··</a>
197 ··<span·class="text">Precompiled·escripts</span>197 ··<span·class="text">Precompiled·escripts</span>
198 </h2>198 </h2>
Offset 297, 15 lines modifiedOffset 297, 15 lines modified
297 ······<p·class="built-using">297 ······<p·class="built-using">
298 ········Built·using298 ········Built·using
299 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the299 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
300 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>300 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
301 ······</p>301 ······</p>
302 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>302 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
303 ····</footer>303 ····</footer>
304 ··</div>304 ··</div>
305 </main>305 </main>
306 </div>306 </div>
307 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>307 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
308 <script>308 <script>
309 ··document.addEventListener("DOMContentLoaded",·function·()·{309 ··document.addEventListener("DOMContentLoaded",·function·()·{
693 B
html2text {}
Max HTML report size reached
38.4 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/garbagecollection.html
    
Offset 133, 33 lines modifiedOffset 133, 33 lines modified
133 </h2>133 </h2>
134 <p>Each·Erlang·process·has·its·own·stack·and·heap·which·are·allocated·in·the·same·memory·block·and·grow·towards·each·other.·When·the·stack·and·the·heap·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/beam_emu.c#L387">meet</a>,·the·garbage·collector·is·triggered·and·memory·is·reclaimed.·If·not·enough·memory·was·reclaimed,·the·heap·will·grow.</p><h3·id="creating-data"·class="section-heading">134 <p>Each·Erlang·process·has·its·own·stack·and·heap·which·are·allocated·in·the·same·memory·block·and·grow·towards·each·other.·When·the·stack·and·the·heap·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/beam_emu.c#L387">meet</a>,·the·garbage·collector·is·triggered·and·memory·is·reclaimed.·If·not·enough·memory·was·reclaimed,·the·heap·will·grow.</p><h3·id="creating-data"·class="section-heading">
135 ··<a·href="#creating-data"·class="hover-link">135 ··<a·href="#creating-data"·class="hover-link">
136 ····<i·class="ri-link-m"·aria-hidden="true"></i>136 ····<i·class="ri-link-m"·aria-hidden="true"></i>
137 ··</a>137 ··</a>
138 ··<span·class="text">Creating·Data</span>138 ··<span·class="text">Creating·Data</span>
139 </h3>139 </h3>
140 <p>Terms·are·created·on·the·heap·by·evaluating·expressions.·There·are·two·major·types·of·terms:·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_term.h#L88-L97">immediate·terms</a>·which·require·no·heap·space·(small·integers,·atoms,·pids,·port·ids·etc)·and·cons·or·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_term.h#L106-L120">boxed·terms</a>·(tuple,·big·num,·binaries·etc)·that·do·require·heap·space.·Immediate·terms·do·not·need·any·heap·space·because·they·are·embedded·into·the·containing·structure.</p><p>Let's·look·at·an·example·that·returns·a·tuple·with·the·newly·created·data.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">data</span><span·class="p"·data-group-id="8209392876-1">(</span><span·class="n">Foo</span><span·class="p"·data-group-id="8209392876-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">140 <p>Terms·are·created·on·the·heap·by·evaluating·expressions.·There·are·two·major·types·of·terms:·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_term.h#L88-L97">immediate·terms</a>·which·require·no·heap·space·(small·integers,·atoms,·pids,·port·ids·etc)·and·cons·or·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_term.h#L106-L120">boxed·terms</a>·(tuple,·big·num,·binaries·etc)·that·do·require·heap·space.·Immediate·terms·do·not·need·any·heap·space·because·they·are·embedded·into·the·containing·structure.</p><p>Let's·look·at·an·example·that·returns·a·tuple·with·the·newly·created·data.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">data</span><span·class="p"·data-group-id="1472108528-1">(</span><span·class="n">Foo</span><span·class="p"·data-group-id="1472108528-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
141 ···</span><span·class="n">Cons</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8209392876-2">[</span><span·class="mi">42</span><span·class="p">|</span><span·class="n">Foo</span><span·class="p"·data-group-id="8209392876-2">]</span><span·class="p">,</span><span·class="w">141 ···</span><span·class="n">Cons</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1472108528-2">[</span><span·class="mi">42</span><span·class="p">|</span><span·class="n">Foo</span><span·class="p"·data-group-id="1472108528-2">]</span><span·class="p">,</span><span·class="w">
142 ···</span><span·class="n">Literal</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8209392876-3">{</span><span·class="ss">text</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;hello·world!&quot;</span><span·class="p"·data-group-id="8209392876-3">}</span><span·class="p">,</span><span·class="w">142 ···</span><span·class="n">Literal</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1472108528-3">{</span><span·class="ss">text</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;hello·world!&quot;</span><span·class="p"·data-group-id="1472108528-3">}</span><span·class="p">,</span><span·class="w">
143 ···</span><span·class="p"·data-group-id="8209392876-4">{</span><span·class="ss">tag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cons</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Literal</span><span·class="p"·data-group-id="8209392876-4">}</span><span·class="p">.</span></code></pre><p>In·this·example·we·first·create·a·new·cons·cell·with·an·integer·and·a·tuple·with·some·text.·Then·a·tuple·of·size·three·wrapping·the·other·values·with·an·atom·tag·is·created·and·returned.</p><p>On·the·heap·tuples·require·a·word·size·for·each·of·its·elements·as·well·as·for·the·header.·Cons·cells·always·require·two·words.·Adding·these·things·together,·we·get·seven·words·for·the·tuples·and·26·words·for·the·cons·cells.·The·string·<code·class="inline">&quot;hello·world!&quot;</code>·is·a·list·of·cons·cells·and·thus·requires·24·words.·The·atom·<code·class="inline">tag</code>·and·the·integer·<code·class="inline">42</code>·do·not·require·any·additional·heap·memory·since·it·is·an·<em>immediate</em>.·Adding·all·the·terms·together,·the·heap·space·required·in·this·example·should·be·33·words.</p><p>Compiling·this·code·to·beam·assembly·(<code·class="inline">erlc·-S</code>)·shows·exactly·what·is·happening.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">143 ···</span><span·class="p"·data-group-id="1472108528-4">{</span><span·class="ss">tag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cons</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Literal</span><span·class="p"·data-group-id="1472108528-4">}</span><span·class="p">.</span></code></pre><p>In·this·example·we·first·create·a·new·cons·cell·with·an·integer·and·a·tuple·with·some·text.·Then·a·tuple·of·size·three·wrapping·the·other·values·with·an·atom·tag·is·created·and·returned.</p><p>On·the·heap·tuples·require·a·word·size·for·each·of·its·elements·as·well·as·for·the·header.·Cons·cells·always·require·two·words.·Adding·these·things·together,·we·get·seven·words·for·the·tuples·and·26·words·for·the·cons·cells.·The·string·<code·class="inline">&quot;hello·world!&quot;</code>·is·a·list·of·cons·cells·and·thus·requires·24·words.·The·atom·<code·class="inline">tag</code>·and·the·integer·<code·class="inline">42</code>·do·not·require·any·additional·heap·memory·since·it·is·an·<em>immediate</em>.·Adding·all·the·terms·together,·the·heap·space·required·in·this·example·should·be·33·words.</p><p>Compiling·this·code·to·beam·assembly·(<code·class="inline">erlc·-S</code>)·shows·exactly·what·is·happening.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
144 </span><span·class="p"·data-group-id="2716979443-1">{</span><span·class="ss">test_heap</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2716979443-1">}</span><span·class="p">.</span><span·class="w">144 </span><span·class="p"·data-group-id="9005657302-1">{</span><span·class="ss">test_heap</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9005657302-1">}</span><span·class="p">.</span><span·class="w">
145 </span><span·class="p"·data-group-id="2716979443-2">{</span><span·class="ss">put_list</span><span·class="p">,</span><span·class="p"·data-group-id="2716979443-3">{</span><span·class="ss">integer</span><span·class="p">,</span><span·class="mi">42</span><span·class="p"·data-group-id="2716979443-3"[·...·truncated·by·diffoscope;·len:·458,·SHA:·9c4e047156465a70f2ebf653cb30b1b6d4ed66045587d6537fc0f41ab59d8c0d·...·]-2">}</span><span·class="p">.</span><span·class="w">145 </span><span·class="p"·data-group-id="9005657302-2">{</span><span·class="ss">put_list</span><span·class="p">,</span><span·class="p"·data-group-id="9005657302-3">{</span><span·class="ss">integer</span><span·class="p">,</span><span·class="mi">42</span><span·class="p"·data-group-id="9005657302-3"[·...·truncated·by·diffoscope;·len:·458,·SHA:·c8a0d484be5d625b4dd5f065f742528ffb2621006e2d43348932e3a46d9e5084·...·]-2">}</span><span·class="p">.</span><span·class="w">
146 </span><span·class="p"·data-group-id="2716979443-6">{</span><span·class="ss">put_tuple</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data-group-id="2716979443-7">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="mi">0</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·1fc283cc5b1fb82bff718ac7635c6af20da2fc31762c9f7aab15b28292e598c9·...·]-6">}</span><span·class="p">.</span><span·class="w">146 </span><span·class="p"·data-group-id="9005657302-6">{</span><span·class="ss">put_tuple</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data-group-id="9005657302-7">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="mi">0</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·33fbae9245f654298518fb3c07aab549a4eaa4e330d58ebe5a3a8c661a0035ec·...·]-6">}</span><span·class="p">.</span><span·class="w">
147 </span><span·class="p"·data-group-id="2716979443-8">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="2716979443-9">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="ss">tag</span><span·class="p"·data-group-id="2716979443-9">}</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·edd2b11afcdca1e2c53cfb2f171d1d1e3d8643848298ef111ffbec6dd9383e98·...·]-8">}</span><span·class="p">.</span><span·class="w">147 </span><span·class="p"·data-group-id="9005657302-8">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="9005657302-9">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="ss">tag</span><span·class="p"·data-group-id="9005657302-9">}</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·edb8986d84af5a7f675619a405d73bdd3ab1d18a49b140c1c7defac7967af760·...·]-8">}</span><span·class="p">.</span><span·class="w">
148 </span><span·class="p"·data-group-id="2716979443-10">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="2716979443-11">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2716979443-11">}</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·09daec189c5bb8aaed71bfbe2beb4ce16d3ff1b04c1194792ffa70e60d000553·...·]-10">}</span><span·class="p">.</span><span·class="w">148 </span><span·class="p"·data-group-id="9005657302-10">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="9005657302-11">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9005657302-11">}</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·386d8c01a3ab44754e3422bfdd4b27bc137debbf4a3dbaf379e71434ad7d6545·...·]-10">}</span><span·class="p">.</span><span·class="w">
149 </span><span·class="p"·data-group-id="2716979443-12">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="2716979443-13">{</span><span·class="ss">literal</span><span·class="p">,</span><span·class="p"·data-group-id="2716979443-14">{</span><span·class="ss">te[·...·truncated·by·diffoscope;·len:·229,·SHA:·76e5fb24f42667c2882005296d30799f52fe35bc1ac4eebb076e5f28f5903eed·...·]-12">}</span><span·class="p">.</span><span·class="w">149 </span><span·class="p"·data-group-id="9005657302-12">{</span><span·class="nb">put</span><span·class="p">,</span><span·class="p"·data-group-id="9005657302-13">{</span><span·class="ss">literal</span><span·class="p">,</span><span·class="p"·data-group-id="9005657302-14">{</span><span·class="ss">te[·...·truncated·by·diffoscope;·len:·229,·SHA:·0cb3f7138ac6a34c673c8febca18e909caeadd316497ebfa19e6fe5710c45e8e·...·]-12">}</span><span·class="p">.</span><span·class="w">
150 </span><span·class="ss">return</span><span·class="p">.</span></code></pre><p>Looking·at·the·assembler·code·we·can·see·three·things:·The·heap·requirement·in·this·function·turns·out·to·be·only·six·words,·as·seen·by·the·<code·class="inline">{test_heap,6,1}</code>·instruction.·All·the·allocations·are·combined·to·a·single·instruction.·The·bulk·of·the·data·<code·class="inline">{text,·&quot;hello·world!&quot;}</code>·is·a·<em>literal</em>.·Literals,·sometimes·referred·to·as·constants,·are·not·allocated·in·the·function·since·they·are·a·part·of·the·module·and·allocated·at·load·time.</p><p>If·there·is·not·enough·space·available·on·the·heap·to·satisfy·the·<code·class="inline">test_heap</code>·instructions·request·for·memory,·then·a·garbage·collection·is·initiated.·It·may·happen·immediately·in·the·<code·class="inline">test_heap</code>·instruction,·or·it·can·be·delayed·until·a·later·time·depending·on·what·state·the·process·is·in.·If·the·garbage·collection·is·delayed,·any·memory·needed·will·be·allocated·in·heap·fragments.·Heap·fragments·are·extra·memory·blocks·that·are·a·part·of·the·young·heap,·but·are·not·allocated·in·the·contiguous·area·where·terms·normally·reside.·See·<a·href="#the-young-heap">The·young·heap</a>·for·more·details.</p><h3·id="the-collector"·class="section-heading">150 </span><span·class="ss">return</span><span·class="p">.</span></code></pre><p>Looking·at·the·assembler·code·we·can·see·three·things:·The·heap·requirement·in·this·function·turns·out·to·be·only·six·words,·as·seen·by·the·<code·class="inline">{test_heap,6,1}</code>·instruction.·All·the·allocations·are·combined·to·a·single·instruction.·The·bulk·of·the·data·<code·class="inline">{text,·&quot;hello·world!&quot;}</code>·is·a·<em>literal</em>.·Literals,·sometimes·referred·to·as·constants,·are·not·allocated·in·the·function·since·they·are·a·part·of·the·module·and·allocated·at·load·time.</p><p>If·there·is·not·enough·space·available·on·the·heap·to·satisfy·the·<code·class="inline">test_heap</code>·instructions·request·for·memory,·then·a·garbage·collection·is·initiated.·It·may·happen·immediately·in·the·<code·class="inline">test_heap</code>·instruction,·or·it·can·be·delayed·until·a·later·time·depending·on·what·state·the·process·is·in.·If·the·garbage·collection·is·delayed,·any·memory·needed·will·be·allocated·in·heap·fragments.·Heap·fragments·are·extra·memory·blocks·that·are·a·part·of·the·young·heap,·but·are·not·allocated·in·the·contiguous·area·where·terms·normally·reside.·See·<a·href="#the-young-heap">The·young·heap</a>·for·more·details.</p><h3·id="the-collector"·class="section-heading">
151 ··<a·href="#the-collector"·class="hover-link">151 ··<a·href="#the-collector"·class="hover-link">
152 ····<i·class="ri-link-m"·aria-hidden="true"></i>152 ····<i·class="ri-link-m"·aria-hidden="true"></i>
153 ··</a>153 ··</a>
154 ··<span·class="text">The·collector</span>154 ··<span·class="text">The·collector</span>
155 </h3>155 </h3>
156 <p>Erlang·has·a·copying·semi-space·garbage·collector.·This·means·that·when·doing·a·garbage·collection,·the·terms·are·copied·from·one·distinct·area,·called·the·<em>from·space</em>,·to·a·new·clean·area,·called·the·<em>to·space</em>.·The·collector·starts·by·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1980">scanning·the·root-set</a>·(stack,·registers,·etc).</p><p><img·src="assets/gc-start.png"·alt="Garbage·collection:·initial·values"/></p><p>It·follows·all·the·pointers·from·the·root-set·to·the·heap·and·copies·each·term·word·by·word·to·the·<em>to·space</em>.</p><p>After·the·header·word·has·been·copied·a·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.h#L45-L46"><em>move·marker</em></a>·is·destructively·placed·in·it·pointing·to·the·term·in·the·<em>to·space</em>.·Any·other·term·that·points·to·the·already·moved·term·will·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1125">see·this·move·marker</a>·and·copy·the·referring·pointer·instead.·For·example,·if·the·have·the·following·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="3568416516-1">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="3568416516-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">156 <p>Erlang·has·a·copying·semi-space·garbage·collector.·This·means·that·when·doing·a·garbage·collection,·the·terms·are·copied·from·one·distinct·area,·called·the·<em>from·space</em>,·to·a·new·clean·area,·called·the·<em>to·space</em>.·The·collector·starts·by·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1980">scanning·the·root-set</a>·(stack,·registers,·etc).</p><p><img·src="assets/gc-start.png"·alt="Garbage·collection:·initial·values"/></p><p>It·follows·all·the·pointers·from·the·root-set·to·the·heap·and·copies·each·term·word·by·word·to·the·<em>to·space</em>.</p><p>After·the·header·word·has·been·copied·a·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.h#L45-L46"><em>move·marker</em></a>·is·destructively·placed·in·it·pointing·to·the·term·in·the·<em>to·space</em>.·Any·other·term·that·points·to·the·already·moved·term·will·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1125">see·this·move·marker</a>·and·copy·the·referring·pointer·instead.·For·example,·if·the·have·the·following·Erlang·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="6425732857-1">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="6425732857-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
157 ····</span><span·class="n">T</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3568416516-2">{</span><span·class="ss">test</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arg</span><span·class="p"·data-group-id="3568416516-2">}</span><span·class="p">,</span><span·class="w">157 ····</span><span·class="n">T</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6425732857-2">{</span><span·class="ss">test</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arg</span><span·class="p"·data-group-id="6425732857-2">}</span><span·class="p">,</span><span·class="w">
158 ····</span><span·class="p"·data-group-id="3568416516-3">{</span><span·class="ss">wrapper</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·54,·SHA:·c9047a4c2ecc3e5988a41c11293d8f318938d4721d15e27662a4c824830c727f·...·]-3">}</span><span·class="p">.</span></code></pre><p>Only·one·copy·of·T·exists·on·the·heap·and·during·the·garbage·collection·only·the·first·time·T·is·encountered·will·it·be·copied.</p><p><img·src="assets/gc-rootset-scan.png"·alt="Garbage·collection:·root·set·scan"/></p><p>After·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1089">all·terms</a>·referenced·by·the·root-set·have·been·copied,·the·collector·scans·the·<em>to·space</em>·and·copies·all·terms·that·these·terms·reference.·When·scanning,·the·collector·steps·through·each·term·on·the·<em>to·space</em>·and·any·term·still·referencing·the·<em>from·space</em>·is·copied·over·to·the·<em>to·space</em>.·Some·terms·contain·non-term·data·(the·payload·of·a·on·heap·binary·for·instance).·When·encountered·by·the·collector,·these·values·are·simply·skipped.</p><p><img·src="assets/gc-heap-scan1.png"·alt="Garbage·collection:·heap·scan"/></p><p>Every·term·object·we·can·reach·is·copied·to·the·<em>to·space</em>·and·stored·on·top·off·the·<em>scan·stop</em>·line,·and·then·the·scan·stop·is·moved·to·the·end·of·the·last·object.</p><p><img·src="assets/gc-heap-stop.png"·alt="Garbage·collection:·heap·scan"/></p><p>When·<em>scan·stop</em>·marker·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1103">catches·up</a>·to·the·<em>scan·start</em>·marker,·the·garbage·collection·is·done.·At·this·point·we·can·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1206">deallocate</a>·the·entire·<em>from·space</em>·and·therefore·reclaim·the·entire·young·heap.</p><h2·id="generational-garbage-collection"·class="section-heading">158 ····</span><span·class="p"·data-group-id="6425732857-3">{</span><span·class="ss">wrapper</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·54,·SHA:·c5d90d1ddb593f2168872cbdc3db70eadc48eef0af8d87a87939c25aa6194d18·...·]-3">}</span><span·class="p">.</span></code></pre><p>Only·one·copy·of·T·exists·on·the·heap·and·during·the·garbage·collection·only·the·first·time·T·is·encountered·will·it·be·copied.</p><p><img·src="assets/gc-rootset-scan.png"·alt="Garbage·collection:·root·set·scan"/></p><p>After·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1089">all·terms</a>·referenced·by·the·root-set·have·been·copied,·the·collector·scans·the·<em>to·space</em>·and·copies·all·terms·that·these·terms·reference.·When·scanning,·the·collector·steps·through·each·term·on·the·<em>to·space</em>·and·any·term·still·referencing·the·<em>from·space</em>·is·copied·over·to·the·<em>to·space</em>.·Some·terms·contain·non-term·data·(the·payload·of·a·on·heap·binary·for·instance).·When·encountered·by·the·collector,·these·values·are·simply·skipped.</p><p><img·src="assets/gc-heap-scan1.png"·alt="Garbage·collection:·heap·scan"/></p><p>Every·term·object·we·can·reach·is·copied·to·the·<em>to·space</em>·and·stored·on·top·off·the·<em>scan·stop</em>·line,·and·then·the·scan·stop·is·moved·to·the·end·of·the·last·object.</p><p><img·src="assets/gc-heap-stop.png"·alt="Garbage·collection:·heap·scan"/></p><p>When·<em>scan·stop</em>·marker·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1103">catches·up</a>·to·the·<em>scan·start</em>·marker,·the·garbage·collection·is·done.·At·this·point·we·can·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1206">deallocate</a>·the·entire·<em>from·space</em>·and·therefore·reclaim·the·entire·young·heap.</p><h2·id="generational-garbage-collection"·class="section-heading">
159 ··<a·href="#generational-garbage-collection"·class="hover-link">159 ··<a·href="#generational-garbage-collection"·class="hover-link">
160 ····<i·class="ri-link-m"·aria-hidden="true"></i>160 ····<i·class="ri-link-m"·aria-hidden="true"></i>
161 ··</a>161 ··</a>
162 ··<span·class="text">Generational·Garbage·Collection</span>162 ··<span·class="text">Generational·Garbage·Collection</span>
163 </h2>163 </h2>
164 <p>In·addition·to·the·collection·algorithm·described·above,·the·Erlang·garbage·collector·also·provides·generational·garbage·collection.·An·additional·heap,·called·the·old·heap,·is·used·where·the·long·lived·data·is·stored.·The·original·heap·is·called·the·young·heap,·or·sometimes·the·allocation·heap.</p><p>With·this·in·mind·we·can·look·at·the·Erlang's·garbage·collection·again.·During·the·copy·stage·anything·that·should·be·copied·to·the·young·<em>to·space</em>·is·instead·copied·to·the·old·<em>to·space</em>·<em>if</em>·it·is·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1127">below·the·<em>high-watermark</em></a>.</p><p><img·src="assets/gc-watermark.png"·alt="Garbage·collection:·heap·scan"/></p><p>The·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_process.h#L1021"><em>high-watermark</em></a>·is·placed·where·the·previous·garbage·collection·(described·in·<a·href="#overview">Overview</a>)·ended·and·we·have·introduced·a·new·area·called·the·old·heap.·When·doing·the·normal·garbage·collection·pass,·any·term·that·is·located·below·the·high-watermark·is·copied·to·the·old·<em>to·space</em>·instead·of·the·young.</p><p><img·src="assets/gc-watermark-2.png"·alt="Garbage·collection:·heap·scan"/></p><p>In·the·next·garbage·collection,·any·pointers·to·the·old·heap·will·be·ignored·and·not·scanned.·This·way·the·garbage·collector·does·not·have·to·scan·the·long-lived·terms.</p><p>Generational·garbage·collection·aims·to·increase·performance·at·the·expense·of·memory.·This·is·achieved·because·only·the·young,·smaller,·heap·is·considered·in·most·garbage·collections.</p><p>The·generational·hypothesis·predicts·that·most·terms·tend·to·die·young·(see·D.·Ungar·in·<a·href="#references">References</a>),·and·for·an·immutable·language·such·as·Erlang,·young·terms·die·even·faster·than·in·other·languages.·So·for·most·usage·patterns·the·data·in·the·new·heap·will·die·very·soon·after·it·is·allocated.·This·is·good·because·it·limits·the·amount·of·data·copied·to·the·old·heap·and·also·because·the·garbage·collection·algorithm·used·is·proportional·to·the·amount·of·live·data·on·the·heap.</p><p>One·critical·issue·to·note·here·is·that·any·term·on·the·young·heap·can·reference·terms·on·the·old·heap·but·<em>no</em>·term·on·the·old·heap·may·refer·to·a·term·on·the·young·heap.·This·is·due·to·the·nature·of·the·copy·algorithm.·Anything·referenced·by·an·old·heap·term·is·not·included·in·the·reference·tree,·root-set·and·its·followers,·and·hence·is·not·copied.·If·it·was,·the·data·would·be·lost,·fire·and·brimstone·would·rise·to·cover·the·earth.·Fortunately,·this·comes·naturally·for·Erlang·because·the·terms·are·immutable·and·thus·there·can·be·no·pointers·modified·on·the·old·heap·to·point·to·the·young·heap.</p><p>To·reclaim·data·from·the·old·heap,·both·young·and·old·heaps·are·included·during·the·collection·and·copied·to·a·common·<em>to·space</em>.·Both·the·<em>from·space</em>·of·the·young·and·old·heap·are·then·deallocated·and·the·procedure·will·start·over·from·the·beginning.·This·type·of·garbage·collection·is·called·a·full·sweep·and·is·triggered·when·the·size·of·the·area·under·the·high-watermark·is·larger·than·the·size·of·the·free·area·of·the·old·heap.·It·can·also·be·triggered·by·doing·a·manual·call·to·<a·href="http://erlang.org/doc/man/erlang.html#garbage_collect-0">erlang:garbage_collect()</a>,·or·by·running·into·the·young·garbage·collection·limit·set·by·[spawn_opt(fun(),<a·href="http://erlang.org/doc/man/erlang.html#spawn_opt-4">{fullsweep_after,·N}])</a>·where·N·is·the·number·of·young·garbage·collections·to·do·before·forcing·a·garbage·collection·of·both·young·and·old·heap.</p><h2·id="the-young-heap"·class="section-heading">164 <p>In·addition·to·the·collection·algorithm·described·above,·the·Erlang·garbage·collector·also·provides·generational·garbage·collection.·An·additional·heap,·called·the·old·heap,·is·used·where·the·long·lived·data·is·stored.·The·original·heap·is·called·the·young·heap,·or·sometimes·the·allocation·heap.</p><p>With·this·in·mind·we·can·look·at·the·Erlang's·garbage·collection·again.·During·the·copy·stage·anything·that·should·be·copied·to·the·young·<em>to·space</em>·is·instead·copied·to·the·old·<em>to·space</em>·<em>if</em>·it·is·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L1127">below·the·<em>high-watermark</em></a>.</p><p><img·src="assets/gc-watermark.png"·alt="Garbage·collection:·heap·scan"/></p><p>The·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_process.h#L1021"><em>high-watermark</em></a>·is·placed·where·the·previous·garbage·collection·(described·in·<a·href="#overview">Overview</a>)·ended·and·we·have·introduced·a·new·area·called·the·old·heap.·When·doing·the·normal·garbage·collection·pass,·any·term·that·is·located·below·the·high-watermark·is·copied·to·the·old·<em>to·space</em>·instead·of·the·young.</p><p><img·src="assets/gc-watermark-2.png"·alt="Garbage·collection:·heap·scan"/></p><p>In·the·next·garbage·collection,·any·pointers·to·the·old·heap·will·be·ignored·and·not·scanned.·This·way·the·garbage·collector·does·not·have·to·scan·the·long-lived·terms.</p><p>Generational·garbage·collection·aims·to·increase·performance·at·the·expense·of·memory.·This·is·achieved·because·only·the·young,·smaller,·heap·is·considered·in·most·garbage·collections.</p><p>The·generational·hypothesis·predicts·that·most·terms·tend·to·die·young·(see·D.·Ungar·in·<a·href="#references">References</a>),·and·for·an·immutable·language·such·as·Erlang,·young·terms·die·even·faster·than·in·other·languages.·So·for·most·usage·patterns·the·data·in·the·new·heap·will·die·very·soon·after·it·is·allocated.·This·is·good·because·it·limits·the·amount·of·data·copied·to·the·old·heap·and·also·because·the·garbage·collection·algorithm·used·is·proportional·to·the·amount·of·live·data·on·the·heap.</p><p>One·critical·issue·to·note·here·is·that·any·term·on·the·young·heap·can·reference·terms·on·the·old·heap·but·<em>no</em>·term·on·the·old·heap·may·refer·to·a·term·on·the·young·heap.·This·is·due·to·the·nature·of·the·copy·algorithm.·Anything·referenced·by·an·old·heap·term·is·not·included·in·the·reference·tree,·root-set·and·its·followers,·and·hence·is·not·copied.·If·it·was,·the·data·would·be·lost,·fire·and·brimstone·would·rise·to·cover·the·earth.·Fortunately,·this·comes·naturally·for·Erlang·because·the·terms·are·immutable·and·thus·there·can·be·no·pointers·modified·on·the·old·heap·to·point·to·the·young·heap.</p><p>To·reclaim·data·from·the·old·heap,·both·young·and·old·heaps·are·included·during·the·collection·and·copied·to·a·common·<em>to·space</em>.·Both·the·<em>from·space</em>·of·the·young·and·old·heap·are·then·deallocated·and·the·procedure·will·start·over·from·the·beginning.·This·type·of·garbage·collection·is·called·a·full·sweep·and·is·triggered·when·the·size·of·the·area·under·the·high-watermark·is·larger·than·the·size·of·the·free·area·of·the·old·heap.·It·can·also·be·triggered·by·doing·a·manual·call·to·<a·href="http://erlang.org/doc/man/erlang.html#garbage_collect-0">erlang:garbage_collect()</a>,·or·by·running·into·the·young·garbage·collection·limit·set·by·[spawn_opt(fun(),<a·href="http://erlang.org/doc/man/erlang.html#spawn_opt-4">{fullsweep_after,·N}])</a>·where·N·is·the·number·of·young·garbage·collections·to·do·before·forcing·a·garbage·collection·of·both·young·and·old·heap.</p><h2·id="the-young-heap"·class="section-heading">
165 ··<a·href="#the-young-heap"·class="hover-link">165 ··<a·href="#the-young-heap"·class="hover-link">
Offset 175, 19 lines modifiedOffset 175, 19 lines modified
175 </h2>175 </h2>
176 <p>As·mentioned·in·the·Overview·the·size·of·the·heap·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L247">grows</a>·to·accommodate·more·data.·Heaps·grow·in·two·stages,·first·a·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L199-L208">variation·of·the·Fibonacci·sequence</a>·is·used·starting·at·233·words.·Then·at·about·1·mega·words·the·heap·only·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L215-L227">grows·in·20%·increments</a>.</p><p>There·are·two·occasions·when·the·young·heap·grows:</p><ul><li>if·the·total·size·of·the·heap·+·message·and·heap·fragments·exceeds·the·current·heap·size.</li><li>if·after·a·fullsweep,·the·total·amount·of·live·objects·is·greater·than·75%.</li></ul><p>There·are·two·occasions·when·the·young·heap·is·shrunk:</p><ul><li>if·after·a·young·collection,·the·total·amount·of·live·objects·is·less·than·25%·of·the·heap·and·the·young·heap·is·&quot;big&quot;</li><li>if·after·a·fullsweep,·the·total·amount·of·live·objects·is·less·than·25%·of·the·heap.</li></ul><p>The·old·heap·is·always·one·step·ahead·in·the·heap·growth·stages·than·the·young·heap.</p><h2·id="literals"·class="section-heading">176 <p>As·mentioned·in·the·Overview·the·size·of·the·heap·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L247">grows</a>·to·accommodate·more·data.·Heaps·grow·in·two·stages,·first·a·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L199-L208">variation·of·the·Fibonacci·sequence</a>·is·used·starting·at·233·words.·Then·at·about·1·mega·words·the·heap·only·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L215-L227">grows·in·20%·increments</a>.</p><p>There·are·two·occasions·when·the·young·heap·grows:</p><ul><li>if·the·total·size·of·the·heap·+·message·and·heap·fragments·exceeds·the·current·heap·size.</li><li>if·after·a·fullsweep,·the·total·amount·of·live·objects·is·greater·than·75%.</li></ul><p>There·are·two·occasions·when·the·young·heap·is·shrunk:</p><ul><li>if·after·a·young·collection,·the·total·amount·of·live·objects·is·less·than·25%·of·the·heap·and·the·young·heap·is·&quot;big&quot;</li><li>if·after·a·fullsweep,·the·total·amount·of·live·objects·is·less·than·25%·of·the·heap.</li></ul><p>The·old·heap·is·always·one·step·ahead·in·the·heap·growth·stages·than·the·young·heap.</p><h2·id="literals"·class="section-heading">
177 ··<a·href="#literals"·class="hover-link">177 ··<a·href="#literals"·class="hover-link">
178 ····<i·class="ri-link-m"·aria-hidden="true"></i>178 ····<i·class="ri-link-m"·aria-hidden="true"></i>
179 ··</a>179 ··</a>
180 ··<span·class="text">Literals</span>180 ··<span·class="text">Literals</span>
181 </h2>181 </h2>
182 <p>When·garbage·collecting·a·heap·(young·or·old)·all·literals·are·left·in·place·and·not·copied.·To·figure·out·if·a·term·should·be·copied·or·not·when·doing·a·garbage·collection·the·following·pseudo·code·is·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">if</span><span·class="w">·</span><span·class="p"·data-group-id="7687584194-1">(</span><span·class="nf">erts_is_literal</span><span·class="p"·data-group-id="7687584194-2">(</span><span·class="ss">ptr</span><span·class="p"·data-group-id="7687584194-2">)</span><span·class="w">·</span><span·class="p">||</span><span·class="[·...·truncated·by·diffoscope;·len:·568,·SHA:·86d3caaf09b8f8b16c06cae432f86f90121996f683e2569d9ff45d85397770a8·...·]-5">{</span><span·class="w">182 <p>When·garbage·collecting·a·heap·(young·or·old)·all·literals·are·left·in·place·and·not·copied.·To·figure·out·if·a·term·should·be·copied·or·not·when·doing·a·garbage·collection·the·following·pseudo·code·is·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">if</span><span·class="w">·</span><span·class="p"·data-group-id="4300819919-1">(</span><span·class="nf">erts_is_literal</span><span·class="p"·data-group-id="4300819919-2">(</span><span·class="ss">ptr</span><span·class="p"·data-group-id="4300819919-2">)</span><span·class="w">·</span><span·class="p">||</span><span·class="[·...·truncated·by·diffoscope;·len:·568,·SHA:·b47101a0832032a9e095e8af8fe1e7fb031f1ff6df9ff9661a40524a8a7fdb3a·...·]-5">{</span><span·class="w">
183 ··</span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">literal</span><span·class="w">·</span><span·class="ow">or</span><span·class="w">·</span><span·class="ss">non</span><span·class="w">·</span><span·class="ss">fullsweep</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="ss">do</span><span·class="w">·</span><span·class="ow">not</span><span·class="w">·</span><span·class="ss">copy</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">183 ··</span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">literal</span><span·class="w">·</span><span·class="ow">or</span><span·class="w">·</span><span·class="ss">non</span><span·class="w">·</span><span·class="ss">fullsweep</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="ss">do</span><span·class="w">·</span><span·class="ow">not</span><span·class="w">·</span><span·class="ss">copy</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">
184 </span><span·class="p"·data-group-id="7687584194-5">}</span><span·class="w">·</span><span·class="k">else</span><span·class="w">·</span><span·class="p"·data-group-id="7687584194-6">{</span><span·class="w">184 </span><span·class="p"·data-group-id="4300819919-5">}</span><span·class="w">·</span><span·class="k">else</span><span·class="w">·</span><span·class="p"·data-group-id="4300819919-6">{</span><span·class="w">
185 ··</span><span·class="nf">copy</span><span·class="p"·data-group-id="7687584194-7">(</span><span·class="ss">ptr</span><span·class="p"·data-group-id="7687584194-7">)</span><span·class="p">;</span><span·class="w">185 ··</span><span·class="nf">copy</span><span·class="p"·data-group-id="4300819919-7">(</span><span·class="ss">ptr</span><span·class="p"·data-group-id="4300819919-7">)</span><span·class="p">;</span><span·class="w">
186 </span><span·class="p"·data-group-id="7687584194-6">}</span></code></pre><p>The·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/global.h#L1452-L1465"><code·class="inline">erts_is_literal</code></a>·check·works·differently·on·different·architectures·and·operating·systems.</p><p>On·64·bit·systems·that·allow·mapping·of·unreserved·virtual·memory·areas·(most·operating·systems·except·Windows),·an·area·of·size·1·GB·(by·default)·is·mapped·and·then·all·literals·are·placed·within·that·area.·Then·all·that·has·to·be·done·to·determine·if·something·is·a·literal·or·not·is·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/erl_alloc.h#L322-L324">two·quick·pointer·checks</a>.·This·system·relies·on·the·fact·that·a·memory·page·that·has·not·been·touched·yet·does·not·take·any·actual·space.·So·even·if·1·GB·of·virtual·memory·is·mapped,·only·the·memory·which·is·actually·needed·for·literals·is·allocated·in·ram.·The·size·of·the·literal·area·is·configurable·through·the·+MIscs·erts_alloc·option.</p><p>On·32·bit·systems,·there·is·not·enough·virtual·memory·space·to·allocate·1·GB·for·just·literals,·so·instead·small·256·KB·sized·literal·regions·are·created·on·demand·and·a·card·mark·bit-array·of·the·entire·32·bit·memory·space·is·then·used·to·determine·if·a·term·is·a·literal·or·not.·Since·the·total·memory·space·is·only·32·bits,·the·card·mark·bit-array·is·only·256·words·large.·On·a·64·bit·system·the·same·bit-array·would·have·to·be·1·tera·words·large,·so·this·technique·is·only·viable·on·32·bit·systems.·Doing·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/erl_alloc.h#L316-L319">lookups·in·the·array</a>·is·a·little·more·expensive·then·just·doing·the·pointer·checks·that·can·be·done·in·64·bit·systems,·but·not·extremely·so.</p><p>On·64·bit·windows,·on·which·erts_alloc·cannot·do·unreserved·virtual·memory·mappings,·a·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/erl_term.h#L59">special·tag</a>·within·the·Erlang·term·object·is·used·to·determine·if·something·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/erl_term.h#L248-L252">is·a·literal·or·not</a>.·This·is·very·cheap,·however,·the·tag·is·only·available·on·64·bit·machines,·and·it·is·possible·to·do·a·great·deal·of·other·nice·optimizations·with·this·tag·in·the·future·(like·for·instance·a·more·compact·list·implementation)·so·it·is·not·used·on·operating·systems·where·it·is·not·needed.</p><p>This·behaviour·is·different·from·how·it·worked·prior·to·Erlang/OTP·19.0.·Before·19.0·the·literal·check·was·done·by·checking·if·the·pointer·pointed·to·the·young·or·old·heap·block.·If·it·did·not,·then·it·was·considered·a·literal.·This·lead·to·considerable·overhead·and·strange·memory·usage·scenarios,·so·it·was·removed·in·19.0.</p><h2·id="binary-heap"·class="section-heading">186 </span><span·class="p"·data-group-id="4300819919-6">}</span></code></pre><p>The·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/global.h#L1452-L1465"><code·class="inline">erts_is_literal</code></a>·check·works·differently·on·different·architectures·and·operating·systems.</p><p>On·64·bit·systems·that·allow·mapping·of·unreserved·virtual·memory·areas·(most·operating·systems·except·Windows),·an·area·of·size·1·GB·(by·default)·is·mapped·and·then·all·literals·are·placed·within·that·area.·Then·all·that·has·to·be·done·to·determine·if·something·is·a·literal·or·not·is·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/erl_alloc.h#L322-L324">two·quick·pointer·checks</a>.·This·system·relies·on·the·fact·that·a·memory·page·that·has·not·been·touched·yet·does·not·take·any·actual·space.·So·even·if·1·GB·of·virtual·memory·is·mapped,·only·the·memory·which·is·actually·needed·for·literals·is·allocated·in·ram.·The·size·of·the·literal·area·is·configurable·through·the·+MIscs·erts_alloc·option.</p><p>On·32·bit·systems,·there·is·not·enough·virtual·memory·space·to·allocate·1·GB·for·just·literals,·so·instead·small·256·KB·sized·literal·regions·are·created·on·demand·and·a·card·mark·bit-array·of·the·entire·32·bit·memory·space·is·then·used·to·determine·if·a·term·is·a·literal·or·not.·Since·the·total·memory·space·is·only·32·bits,·the·card·mark·bit-array·is·only·256·words·large.·On·a·64·bit·system·the·same·bit-array·would·have·to·be·1·tera·words·large,·so·this·technique·is·only·viable·on·32·bit·systems.·Doing·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/erl_alloc.h#L316-L319">lookups·in·the·array</a>·is·a·little·more·expensive·then·just·doing·the·pointer·checks·that·can·be·done·in·64·bit·systems,·but·not·extremely·so.</p><p>On·64·bit·windows,·on·which·erts_alloc·cannot·do·unreserved·virtual·memory·mappings,·a·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/erl_term.h#L59">special·tag</a>·within·the·Erlang·term·object·is·used·to·determine·if·something·<a·href="https://github.com/erlang/otp/blob/OTP-19.0/erts/emulator/beam/erl_term.h#L248-L252">is·a·literal·or·not</a>.·This·is·very·cheap,·however,·the·tag·is·only·available·on·64·bit·machines,·and·it·is·possible·to·do·a·great·deal·of·other·nice·optimizations·with·this·tag·in·the·future·(like·for·instance·a·more·compact·list·implementation)·so·it·is·not·used·on·operating·systems·where·it·is·not·needed.</p><p>This·behaviour·is·different·from·how·it·worked·prior·to·Erlang/OTP·19.0.·Before·19.0·the·literal·check·was·done·by·checking·if·the·pointer·pointed·to·the·young·or·old·heap·block.·If·it·did·not,·then·it·was·considered·a·literal.·This·lead·to·considerable·overhead·and·strange·memory·usage·scenarios,·so·it·was·removed·in·19.0.</p><h2·id="binary-heap"·class="section-heading">
187 ··<a·href="#binary-heap"·class="hover-link">187 ··<a·href="#binary-heap"·class="hover-link">
188 ····<i·class="ri-link-m"·aria-hidden="true"></i>188 ····<i·class="ri-link-m"·aria-hidden="true"></i>
189 ··</a>189 ··</a>
190 ··<span·class="text">Binary·heap</span>190 ··<span·class="text">Binary·heap</span>
191 </h2>191 </h2>
192 <p>The·binary·heap·works·as·a·large·object·space·for·binary·terms·that·are·greater·than·64·bytes·(from·now·on·called·off-heap·binaries).·The·binary·heap·is·<a·href="https://en.wikipedia.org/wiki/Reference_counting">reference·counted</a>·and·a·pointer·to·the·off-heap·binary·is·stored·on·the·process·heap.·To·keep·track·of·when·to·decrement·the·reference·counter·of·the·off-heap·binary,·a·linked·list·(the·MSO·-·mark·and·sweep·object·list)·containing·funs·and·externals·as·well·as·off-heap·binaries·is·woven·through·the·heap.·After·a·garbage·collection·is·done,·the·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L2299">MSO·list·is·swept</a>·and·any·off-heap·binary·that·does·not·have·a·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L2325">move·marker</a>·written·into·the·header·words·has·its·reference·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L2344-L2367">decremented·and·is·potentially·freed</a>.</p><p>All·items·in·the·MSO·list·are·ordered·by·the·time·they·were·added·to·the·process·heap,·so·when·doing·a·minor·garbage·collection,·the·MSO·sweeper·only·has·to·sweep·until·it·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L2369">encounters·an·off-heap·binary·that·is·on·the·old·heap</a>.</p><h3·id="virtual-binary-heap"·class="section-heading">192 <p>The·binary·heap·works·as·a·large·object·space·for·binary·terms·that·are·greater·than·64·bytes·(from·now·on·called·off-heap·binaries).·The·binary·heap·is·<a·href="https://en.wikipedia.org/wiki/Reference_counting">reference·counted</a>·and·a·pointer·to·the·off-heap·binary·is·stored·on·the·process·heap.·To·keep·track·of·when·to·decrement·the·reference·counter·of·the·off-heap·binary,·a·linked·list·(the·MSO·-·mark·and·sweep·object·list)·containing·funs·and·externals·as·well·as·off-heap·binaries·is·woven·through·the·heap.·After·a·garbage·collection·is·done,·the·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L2299">MSO·list·is·swept</a>·and·any·off-heap·binary·that·does·not·have·a·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L2325">move·marker</a>·written·into·the·header·words·has·its·reference·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L2344-L2367">decremented·and·is·potentially·freed</a>.</p><p>All·items·in·the·MSO·list·are·ordered·by·the·time·they·were·added·to·the·process·heap,·so·when·doing·a·minor·garbage·collection,·the·MSO·sweeper·only·has·to·sweep·until·it·<a·href="https://github.com/erlang/otp/blob/OTP-18.0/erts/emulator/beam/erl_gc.c#L2369">encounters·an·off-heap·binary·that·is·on·the·old·heap</a>.</p><h3·id="virtual-binary-heap"·class="section-heading">
193 ··<a·href="#virtual-binary-heap"·class="hover-link">193 ··<a·href="#virtual-binary-heap"·class="hover-link">
Offset 262, 15 lines modifiedOffset 262, 15 lines modified
262 ······<p·class="built-using">262 ······<p·class="built-using">
263 ········Built·using263 ········Built·using
264 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the264 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
265 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>265 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
266 ······</p>266 ······</p>
267 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>267 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
268 ····</footer>268 ····</footer>
269 ··</div>269 ··</div>
270 </main>270 </main>
271 </div>271 </div>
272 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>272 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
273 <script>273 <script>
274 ··document.addEventListener("DOMContentLoaded",·function·()·{274 ··document.addEventListener("DOMContentLoaded",·function·()·{
678 B
html2text {}
Max HTML report size reached
46.2 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/inet_cfg.html
    
Offset 161, 108 lines modifiedOffset 161, 108 lines modified
161 configuration·files·(or·system·registry):</p><ul><li>Hostnames·and·host·addresses</li><li>Domain·name</li><li>Nameservers</li><li>Search·domains</li><li>Lookup·method</li></ul><p>This·data·can·also·be·specified·explicitly·in·the·user·configuration·file.·This161 configuration·files·(or·system·registry):</p><ul><li>Hostnames·and·host·addresses</li><li>Domain·name</li><li>Nameservers</li><li>Search·domains</li><li>Lookup·method</li></ul><p>This·data·can·also·be·specified·explicitly·in·the·user·configuration·file.·This
162 file·is·to·contain·lines·of·configuration·parameters·(each·terminated·with·a162 file·is·to·contain·lines·of·configuration·parameters·(each·terminated·with·a
163 full·stop).·Some·parameters·add·data·to·the·configuration·(such·as·host·and163 full·stop).·Some·parameters·add·data·to·the·configuration·(such·as·host·and
164 nameserver),·others·overwrite·any·previous·settings·(such·as·domain·and·lookup).164 nameserver),·others·overwrite·any·previous·settings·(such·as·domain·and·lookup).
165 The·user·configuration·file·is·always·examined·last·in·the·configuration165 The·user·configuration·file·is·always·examined·last·in·the·configuration
166 process,·making·it·possible·for·the·user·to·override·any·default·values·or166 process,·making·it·possible·for·the·user·to·override·any·default·values·or
167 previously·made·settings.·Call·<code·class="inline">inet:get_rc()</code>·to·view·the·state·of·the·<code·class="inline">inet</code>167 previously·made·settings.·Call·<code·class="inline">inet:get_rc()</code>·to·view·the·state·of·the·<code·class="inline">inet</code>
168 configuration·database.</p><p>The·valid·configuration·parameters·are·as·follows:</p><ul><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4462253753-1">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Format</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="4462253753-1">}</span><span·class="p">.</span><span·class="w">168 configuration·database.</p><p>The·valid·configuration·parameters·are·as·follows:</p><ul><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3712495913-1">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Format</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="3712495913-1">}</span><span·class="p">.</span><span·class="w">
169 ··</span><span·class="n">Format</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="4462253753-2">(</span><span·class="p"·data-group-id="4462253753-2">)</span><span·class="w">169 ··</span><span·class="n">Format</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="3712495913-2">(</span><span·class="p"·data-group-id="3712495913-2">)</span><span·class="w">
170 ··</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="4462253753-3">(</span><span·class="p"·data-group-id="4462253753-3">)</span></code></pre><p>Specify·a·system·file·that·Erlang·is·to·read·configuration·data·from.·<code·class="inline">Format</code>170 ··</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="3712495913-3">(</span><span·class="p"·data-group-id="3712495913-3">)</span></code></pre><p>Specify·a·system·file·that·Erlang·is·to·read·configuration·data·from.·<code·class="inline">Format</code>
171 tells·the·parser·how·the·file·is·to·be·interpreted:</p><ul><li><code·class="inline">resolv</code>·(Unix·resolv.conf)</li><li><code·class="inline">host_conf_freebsd</code>·(FreeBSD·host.conf)</li><li><code·class="inline">host_conf_bsdos</code>·(BSDOS·host.conf)</li><li><code·class="inline">host_conf_linux</code>·(Linux·host.conf)</li><li><code·class="inline">nsswitch_conf</code>·(Unix·nsswitch.conf)</li><li><code·class="inline">hosts</code>·(Unix·hosts)</li></ul><p><code·class="inline">File</code>·is·to·specify·the·filename·with·full·path.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4814798527-1">{</span><span·class="ss">resolv_conf</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="4814798527-1">}</span><span·class="p">.</span><span·class="w">171 tells·the·parser·how·the·file·is·to·be·interpreted:</p><ul><li><code·class="inline">resolv</code>·(Unix·resolv.conf)</li><li><code·class="inline">host_conf_freebsd</code>·(FreeBSD·host.conf)</li><li><code·class="inline">host_conf_bsdos</code>·(BSDOS·host.conf)</li><li><code·class="inline">host_conf_linux</code>·(Linux·host.conf)</li><li><code·class="inline">nsswitch_conf</code>·(Unix·nsswitch.conf)</li><li><code·class="inline">hosts</code>·(Unix·hosts)</li></ul><p><code·class="inline">File</code>·is·to·specify·the·filename·with·full·path.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1127945121-1">{</span><span·class="ss">resolv_conf</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="1127945121-1">}</span><span·class="p">.</span><span·class="w">
172 ··</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="4814798527-2">(</span><span·class="p"·data-group-id="4814798527-2">)</span></code></pre><p>Specify·a·system·file·that·Erlang·is·to·read·resolver·configuration·from·for172 ··</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="1127945121-2">(</span><span·class="p"·data-group-id="1127945121-2">)</span></code></pre><p>Specify·a·system·file·that·Erlang·is·to·read·resolver·configuration·from·for
173 the·internal·DNS·client·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>,·and·monitor·for·changes,·even·if·it·does173 the·internal·DNS·client·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>,·and·monitor·for·changes,·even·if·it·does
174 not·exist.·The·path·must·be·absolute.</p><p>This·can·override·the·configuration·parameters·<code·class="inline">nameserver</code>·and·<code·class="inline">search</code>174 not·exist.·The·path·must·be·absolute.</p><p>This·can·override·the·configuration·parameters·<code·class="inline">nameserver</code>·and·<code·class="inline">search</code>
175 depending·on·the·contents·of·the·specified·file.·They·can·also·change·any·time175 depending·on·the·contents·of·the·specified·file.·They·can·also·change·any·time
176 in·the·future·reflecting·the·file·contents.</p><p>If·the·file·is·specified·as·an·empty·string·<code·class="inline">&quot;&quot;</code>,·no·file·is·read·or·monitored176 in·the·future·reflecting·the·file·contents.</p><p>If·the·file·is·specified·as·an·empty·string·<code·class="inline">&quot;&quot;</code>,·no·file·is·read·or·monitored
177 in·the·future.·This·emulates·the·old·behavior·of·not·configuring·the·DNS177 in·the·future.·This·emulates·the·old·behavior·of·not·configuring·the·DNS
178 client·when·the·node·is·started·in·short·name·distributed·mode.</p><p>If·this·parameter·is·not·specified,·it·defaults·to·<code·class="inline">/etc/resolv.conf</code>·unless178 client·when·the·node·is·started·in·short·name·distributed·mode.</p><p>If·this·parameter·is·not·specified,·it·defaults·to·<code·class="inline">/etc/resolv.conf</code>·unless
179 environment·variable·<code·class="inline">ERL_INET_ETC_DIR</code>·is·set,·which·defines·the·directory179 environment·variable·<code·class="inline">ERL_INET_ETC_DIR</code>·is·set,·which·defines·the·directory
180 for·this·file·to·some·maybe·other·than·<code·class="inline">/etc</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2850839909-1">{</span><span·class="ss">hosts_file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="2850839909-1">}</span><span·class="p">.</span><span·class="w">180 for·this·file·to·some·maybe·other·than·<code·class="inline">/etc</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5963691944-1">{</span><span·class="ss">hosts_file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="5963691944-1">}</span><span·class="p">.</span><span·class="w">
181 ··</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="2850839909-2">(</span><span·class="p"·data-group-id="2850839909-2">)</span></code></pre><p>Specify·a·system·file·that·Erlang·is·to·read·resolver·configuration·from·for181 ··</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="5963691944-2">(</span><span·class="p"·data-group-id="5963691944-2">)</span></code></pre><p>Specify·a·system·file·that·Erlang·is·to·read·resolver·configuration·from·for
182 the·internal·hosts·file·resolver,·and·monitor·for·changes,·even·if·it·does·not182 the·internal·hosts·file·resolver,·and·monitor·for·changes,·even·if·it·does·not
183 exist.·The·path·must·be·absolute.</p><p>These·host·entries·are·searched·after·all·added·with·<code·class="inline">{file,·hosts,·File}</code>183 exist.·The·path·must·be·absolute.</p><p>These·host·entries·are·searched·after·all·added·with·<code·class="inline">{file,·hosts,·File}</code>
184 above·or·<code·class="inline">{host,·IP,·Aliases}</code>·below·when·lookup·option·<code·class="inline">file</code>·is·used.</p><p>If·the·file·is·specified·as·an·empty·string·<code·class="inline">&quot;&quot;</code>,·no·file·is·read·or·monitored184 above·or·<code·class="inline">{host,·IP,·Aliases}</code>·below·when·lookup·option·<code·class="inline">file</code>·is·used.</p><p>If·the·file·is·specified·as·an·empty·string·<code·class="inline">&quot;&quot;</code>,·no·file·is·read·or·monitored
185 in·the·future.·This·emulates·the·old·behavior·of·not·configuring·the·DNS185 in·the·future.·This·emulates·the·old·behavior·of·not·configuring·the·DNS
186 client·when·the·node·is·started·in·short·name·distributed·mode.</p><p>If·this·parameter·is·not·specified,·it·defaults·to·<code·class="inline">/etc/hosts</code>·unless186 client·when·the·node·is·started·in·short·name·distributed·mode.</p><p>If·this·parameter·is·not·specified,·it·defaults·to·<code·class="inline">/etc/hosts</code>·unless
187 environment·variable·<code·class="inline">ERL_INET_ETC_DIR</code>·is·set,·which·defines·the·directory187 environment·variable·<code·class="inline">ERL_INET_ETC_DIR</code>·is·set,·which·defines·the·directory
188 for·this·file·to·some·maybe·other·than·<code·class="inline">/etc</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5818967141-1">{</span><span·class="ss">registry</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p"·data-group-id="5818967141-1">}</span><span·class="p">.</span><span·class="w">188 for·this·file·to·some·maybe·other·than·<code·class="inline">/etc</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6261410714-1">{</span><span·class="ss">registry</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p"·data-group-id="6261410714-1">}</span><span·class="p">.</span><span·class="w">
189 ··</span><span·class="n">Type</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="5818967141-2">(</span><span·class="p"·data-group-id="5818967141-2">)</span></code></pre><p>Specify·a·system·registry·that·Erlang·is·to·read·configuration·data·from.189 ··</span><span·class="n">Type</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="6261410714-2">(</span><span·class="p"·data-group-id="6261410714-2">)</span></code></pre><p>Specify·a·system·registry·that·Erlang·is·to·read·configuration·data·from.
190 <code·class="inline">win32</code>·is·the·only·valid·option.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6910956990-1">{</span><span·class="ss">host</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IP</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Aliases</span><span·class="p"·data-group-id="6910956990-1">}</span><span·class="p">.</span><span·class="w">190 <code·class="inline">win32</code>·is·the·only·valid·option.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0823517770-1">{</span><span·class="ss">host</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IP</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Aliases</span><span·class="p"·data-group-id="0823517770-1">}</span><span·class="p">.</span><span·class="w">
191 ··</span><span·class="n">IP</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">tuple</span><span·class="p"·data-group-id="6910956990-2">(</span><span·class="p"·data-group-id="6910956990-2">)</span></code></pre><p><code·class="inline">Aliases·=·[string()]</code></p><p>Add·host·entry·to·the·hosts·table.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1043382048-1">{</span><span·class="ss">domain</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Domain</span><span·class="p"·data-group-id="1043382048-1">}</span><span·class="p">.</span><span·class="w"> 
192 ··</span><span·class="n">Domain</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="1043382048-2">(</span><span·class="p"·data-group-id="1043382048-2">)</span></code></pre><p>Set·domain·name.</p[·...·truncated·by·diffoscope;·len:·440,·SHA:·c70cd354e3af4325907392906c7fc9302dc54bfcefb49fc64053cdbcb80c0a5e·...·]-1">}</span><span·class="p">.</span><span·class="w">191 ··</span><span·class="n">IP</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">tuple</span><span·class="p"·data-group-id="0823517770-2">(</span><span·class="p"·data-group-id="0823517770-2">)</span></code></pre><p><code·class="inline">Ali[·...·truncated·by·diffoscope;·len:·327,·SHA:·d5093d3c7122d48264a929024cb82ff4ec75a63e2d954a9b39a15b83d4503963·...·]-1">}</span><span·class="p">.</span><span·class="w">
 192 ··</span><span·class="n">Domain</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="0576234384-2">(</span><span·class="p"·data-group-id="0576234384-2">)</span></code></pre><p>Set·domain·name.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6335299585-1">{</span><span·class="ss">nameserver</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IP</span><span·class="w">·</span><span·class="p"·data-group-id="6335299585-2">[</span><span·class="p">,</span><span·class="n">Port</span><span·class="p"·data-group-id="6335299585-2">]</span><span·class="p"·data-group-id="6335299585-1">}</span><span·class="p">.</span><span·class="w">
193 ··</span><span·class="n">IP</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">tuple</span><span·class="p"·data-group-id="9155372588-3">(</span><span·class="p"·data-group-id="9155372588-3">)</span><span·class="w">193 ··</span><span·class="n">IP</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">tuple</span><span·class="p"·data-group-id="6335299585-3">(</span><span·class="p"·data-group-id="6335299585-3">)</span><span·class="w">
194 ··</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9155372588-4">(</span><span·class="p"·data-group-id="9155372588-4">)</span></code></pre><p>Add·address·(and·port,·if·other·than·default)·of·the·primary·nameserver·to·use194 ··</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="6335299585-4">(</span><span·class="p"·data-group-id="6335299585-4">)</span></code></pre><p>Add·address·(and·port,·if·other·than·default)·of·the·primary·nameserver·to·use
195 for·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6765471915-1">{</span><span·class="ss">alt_nameserver</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IP</span><span·class="w">·</span><span·class="p"·data-group-id="6765471915-2">[</span><span·class="p">,</span><span·class="n">Port</[·...·truncated·by·diffoscope;·len:·99,·SHA:·4776009d970cb2e5ef886d207d3bda777910ce6ae15502d6b257c30c0100f6f4·...·]-1">}</span><span·class="p">.</span><span·class="w">195 for·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2425848193-1">{</span><span·class="ss">alt_nameserver</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IP</span><span·class="w">·</span><span·class="p"·data-group-id="2425848193-2">[</span><span·class="p">,</span><span·class="n">Port</[·...·truncated·by·diffoscope;·len:·99,·SHA:·b9a8052f352397d9950f91c65220b64f6d39972fda754662613673f6c4c040ee·...·]-1">}</span><span·class="p">.</span><span·class="w">
196 ··</span><span·class="n">IP</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">tuple</span><span·class="p"·data-group-id="6765471915-3">(</span><span·class="p"·data-group-id="6765471915-3">)</span><span·class="w">196 ··</span><span·class="n">IP</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">tuple</span><span·class="p"·data-group-id="2425848193-3">(</span><span·class="p"·data-group-id="2425848193-3">)</span><span·class="w">
197 ··</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="6765471915-4">(</span><span·class="p"·data-group-id="6765471915-4">)</span></code></pre><p>Add·address·(and·port,·if·other·than·default)·of·the·secondary·nameserver·for197 ··</span><span·class="n">Port</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="2425848193-4">(</span><span·class="p"·data-group-id="2425848193-4">)</span></code></pre><p>Add·address·(and·port,·if·other·than·default)·of·the·secondary·nameserver·for
198 <a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3402432274-1">{</span><span·class="ss">search</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Domains</span><span·class="p"·data-group-id="3402432274-1">}</span><span·class="p">.</span><span·class="w"> 
199 ··</span><span·class="n">Domains</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3402432274-2">[</span><span·class="nf">string</span><span·class="p"·data-group-id="3402432274-3">(</span><span·class="p"·data-group-id="3402432274-3">)</span><span·class="p"·data-group-id="3402432274-2">]</span></code></pre><p>Add·search·domains·for·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4365004485-1">{</span><span·class="ss">lookup</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Methods</span><span·class="p"·data-group-id="4365004485-1">}</span><span·class="p">.</span><span·class="w"> 
200 ··</span><span·class="n">Methods</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4365004485-2">[</span><span·class="nf">atom</span><span·class="p"·data-group-id="4365004485-3">(</span><span·class[·...·truncated·by·diffoscope;·len:·187,·SHA:·db042ca4b5263e80d86220323e1578447cb4bf3e5aca8342f3a451a2f3d4ae65·...·]198 <a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3417295944-1">{</span><span·class="ss">search</span><span·class[·...·truncated·by·diffoscope;·len:·160,·SHA:·7c47fe20bd05452288c54ee38ed91d3089bdae3c50272647e30a3036f7e82931·...·]
 199 ··</span><span·class="n">Domains</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3417295944-2">[</span><span·class="nf">string</span><span·class="p"·data-group-id="3417295944-3">(</span><span·class="p"·data-group-id="3417295944-3">)</span><span·class="p"·data-group-id="3417295944-2">]</span></code></pre><p>Add·search·domains·for·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7276187277-1">{</span><span·class="ss">lookup</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Methods</span><span·class="p"·data-group-id="7276187277-1">}</span><span·class="p">.</span><span·class="w">
 200 ··</span><span·class="n">Methods</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7276187277-2">[</span><span·class="nf">atom</span><span·class="p"·data-group-id="7276187277-3">(</span><span·class="p"·data-group-id="7276187277-3">)</span><span·class="p"·data-group-id="7276187277-2">]</span></code></pre><p>Specify·lookup·methods·and·in·which·order·to·try·them.·The·valid·methods·are
201 as·follows:</p><ul><li><code·class="inline">native</code>·(use·system·calls)</li><li><code·class="inline">file</code>·(use·host·data·retrieved·from·system·configuration·files·and/or·the201 as·follows:</p><ul><li><code·class="inline">native</code>·(use·system·calls)</li><li><code·class="inline">file</code>·(use·host·data·retrieved·from·system·configuration·files·and/or·the
202 user·configuration·file)</li><li><code·class="inline">dns</code>·(use·the·Erlang·DNS·client·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·for·nameserver·queries)</li></ul><p>The·lookup·method·<code·class="inline">string</code>·tries·to·parse·the·hostname·as·an·IPv4·or·IPv6202 user·configuration·file)</li><li><code·class="inline">dns</code>·(use·the·Erlang·DNS·client·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·for·nameserver·queries)</li></ul><p>The·lookup·method·<code·class="inline">string</code>·tries·to·parse·the·hostname·as·an·IPv4·or·IPv6
203 string·and·return·the·resulting·IP·address.·It·is·automatically·tried·first203 string·and·return·the·resulting·IP·address.·It·is·automatically·tried·first
204 when·<code·class="inline">native</code>·is·<em>not</em>·in·the·<code·class="inline">Methods</code>·list.·To·skip·it·in·this·case,·the204 when·<code·class="inline">native</code>·is·<em>not</em>·in·the·<code·class="inline">Methods</code>·list.·To·skip·it·in·this·case,·the
205 pseudo·lookup·method·<code·class="inline">nostring</code>·can·be·inserted·anywhere·in·the·<code·class="inline">Methods</code>205 pseudo·lookup·method·<code·class="inline">nostring</code>·can·be·inserted·anywhere·in·the·<code·class="inline">Methods</code>
206 list.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7501036454-1">{</span><span·class="ss">cache_size</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Size</span><span·class="p"·data-group-id="7501036454-1">}</span><span·class="p">.</span><span·class="w">206 list.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5345384450-1">{</span><span·class="ss">cache_size</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Size</span><span·class="p"·data-group-id="5345384450-1">}</span><span·class="p">.</span><span·class="w">
207 ··</span><span·class="n">Size</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="7501036454-2">(</span><span·class="p"·data-group-id="7501036454-2">)</span></code></pre><p>Set·the·resolver·cache·size·for·<code·class="inline">dns</code>·lookups.·<code·class="inline">native</code>·lookups·are·not207 ··</span><span·class="n">Size</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="5345384450-2">(</span><span·class="p"·data-group-id="5345384450-2">)</span></code></pre><p>Set·the·resolver·cache·size·for·<code·class="inline">dns</code>·lookups.·<code·class="inline">native</code>·lookups·are·not
208 cached.·Defaults·to·100·DNS·records.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6416835854-1">{</span><span·class="ss">cache_refresh</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Time</span><span·class="p"·data-group-id="6416835854-1">}</span><span·class="p">.</span><span·class="w">208 cached.·Defaults·to·100·DNS·records.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2360979159-1">{</span><span·class="ss">cache_refresh</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Time</span><span·class="p"·data-group-id="2360979159-1">}</span><span·class="p">.</span><span·class="w">
209 ··</span><span·class="n">Time</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="6416835854-2">(</span><span·class="p"·data-group-id="6416835854-2">)</span></code></pre><p>Set·how·often·(in·milliseconds)·the·resolver·cache·for·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·is209 ··</span><span·class="n">Time</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="2360979159-2">(</span><span·class="p"·data-group-id="2360979159-2">)</span></code></pre><p>Set·how·often·(in·milliseconds)·the·resolver·cache·for·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·is
210 refreshed·(that·is,·expired·DNS·records·are·deleted).·Defaults·to·1·hour.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4922948548-1">{</span><span·class="ss">timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Time</span><span·class="p"·data-group-id="4922948548-1">}</span><span·class="p">.</span><span·class="w">210 refreshed·(that·is,·expired·DNS·records·are·deleted).·Defaults·to·1·hour.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9210060174-1">{</span><span·class="ss">timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Time</span><span·class="p"·data-group-id="9210060174-1">}</span><span·class="p">.</span><span·class="w">
211 ··</span><span·class="n">Time</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="4922948548-2">(</span><span·class="p"·data-group-id="4922948548-2">)</span></code></pre><p>Set·the·time·to·wait·until·retry·(in·milliseconds)·for·DNS·queries·made·by211 ··</span><span·class="n">Time</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9210060174-2">(</span><span·class="p"·data-group-id="9210060174-2">)</span></code></pre><p>Set·the·time·to·wait·until·retry·(in·milliseconds)·for·DNS·queries·made·by
212 <a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>.·Defaults·to·2·seconds.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2786614155-1">{</span><span·class="ss">retry</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="2786614155-1">}</span><span·class="p">.</span><span·class="w">212 <a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>.·Defaults·to·2·seconds.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7658762089-1">{</span><span·class="ss">retry</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="7658762089-1">}</span><span·class="p">.</span><span·class="w">
213 ··</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="2786614155-2">(</span><span·class="p"·data-group-id="2786614155-2">)</span></code></pre><p>Set·the·number·of·DNS·queries·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·will·try·before·giving·up.·Defaults213 ··</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="7658762089-2">(</span><span·class="p"·data-group-id="7658762089-2">)</span></code></pre><p>Set·the·number·of·DNS·queries·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·will·try·before·giving·up.·Defaults
214 to·3.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9375405522-1">{</span><span·class="ss">servfail_retry_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Time</span><span·class="p"·data-group-id="9375405522-1">}</span><span·class="p">.</span><span·class="w">214 to·3.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5276246548-1">{</span><span·class="ss">servfail_retry_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Time</span><span·class="p"·data-group-id="5276246548-1">}</span><span·class="p">.</span><span·class="w">
215 ··</span><span·class="n">Time</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">non_neg_integer</span><span·class="p"·data-group-id="9375405522-2">(</span><span·class="p"·data-group-id="9375405522-2">)</span></code></pre><p>After·all·name·servers·have·been·tried,·there·is·a·timeout·before·the·name215 ··</span><span·class="n">Time</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">non_neg_integer</span><span·class="p"·data-group-id="5276246548-2">(</span><span·class="p"·data-group-id="5276246548-2">)</span></code></pre><p>After·all·name·servers·have·been·tried,·there·is·a·timeout·before·the·name
216 servers·are·tried·again.·This·is·to·prevent·the·server·from·answering·the216 servers·are·tried·again.·This·is·to·prevent·the·server·from·answering·the
217 query·with·what's·in·the·servfail·cache,217 query·with·what's·in·the·servfail·cache,
218 <a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html#servfail_retry_timeout"><code·class="inline">inet_res</code></a>.·Defaults·to·1500·milli218 <a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html#servfail_retry_timeout"><code·class="inline">inet_res</code></a>.·Defaults·to·1500·milli
219 seconds·.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5450842498-1">{</span><span·class="ss">inet6</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bool</span><span·class="p"·data-group-id="5450842498-1">}</span><span·class="p">.</span><span·class="w">219 seconds·.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6319703124-1">{</span><span·class="ss">inet6</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bool</span><span·class="p"·data-group-id="6319703124-1">}</span><span·class="p">.</span><span·class="w">
220 ··</span><span·class="n">Bool</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">false</span></code></pre><p>Tells·the·DNS·client·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·to·look·up·IPv6·addresses.·Defaults·to220 ··</span><span·class="n">Bool</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">false</span></code></pre><p>Tells·the·DNS·client·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·to·look·up·IPv6·addresses.·Defaults·to
221 <code·class="inline">false</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2832809001-1">{</span><span·class="ss">usevc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bool</span><span·class="p"·data-group-id="2832809001-1">}</span><span·class="p">.</span><span·class="w">221 <code·class="inline">false</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2264822445-1">{</span><span·class="ss">usevc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bool</span><span·class="p"·data-group-id="2264822445-1">}</span><span·class="p">.</span><span·class="w">
222 ··</span><span·class="n">Bool</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">false</span></code></pre><p>Tells·the·DNS·client·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·to·use·TCP·(Virtual·Circuit)·instead·of·UDP.222 ··</span><span·class="n">Bool</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">false</span></code></pre><p>Tells·the·DNS·client·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·to·use·TCP·(Virtual·Circuit)·instead·of·UDP.
223 Defaults·to·<code·class="inline">false</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1852020948-1">{</span><span·class="ss">edns</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Version</span><span·class="p"·data-group-id="1852020948-1">}</span><span·class="p">.</span><span·class="w">223 Defaults·to·<code·class="inline">false</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1756034367-1">{</span><span·class="ss">edns</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Version</span><span·class="p"·data-group-id="1756034367-1">}</span><span·class="p">.</span><span·class="w">
224 ··</span><span·class="n">Version</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="mi">0</span></code></pre><p>Sets·the·EDNS·version·that·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·will·use.·The·only·allowed·version·is224 ··</span><span·class="n">Version</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="mi">0</span></code></pre><p>Sets·the·EDNS·version·that·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·will·use.·The·only·allowed·version·is
225 zero.·Defaults·to·<code·class="inline">false</code>,·which·means·not·to·use·EDNS.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6168924970-1">{</span><span·class="ss">udp_payload_size</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Size</span><span·class="p"·data-group-id="6168924970-1">}</span><span·class="p">.</span><span·class="w">225 zero.·Defaults·to·<code·class="inline">false</code>,·which·means·not·to·use·EDNS.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8891490873-1">{</span><span·class="ss">udp_payload_size</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Size</span><span·class="p"·data-group-id="8891490873-1">}</span><span·class="p">.</span><span·class="w">
226 ··</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="6168924970-2">(</span><span·class="p"·data-group-id="6168924970-2">)</span></code></pre><p>Sets·the·allowed·UDP·payload·size·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·will·advertise·in·EDNS·queries.226 ··</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="8891490873-2">(</span><span·class="p"·data-group-id="8891490873-2">)</span></code></pre><p>Sets·the·allowed·UDP·payload·size·<a·href="../../../lib/kernel-10.0.1/doc/html/inet_res.html"><code·class="inline">inet_res</code></a>·will·advertise·in·EDNS·queries.
227 Also·sets·the·limit·when·the·DNS·query·will·be·deemed·too·large·for·UDP227 Also·sets·the·limit·when·the·DNS·query·will·be·deemed·too·large·for·UDP
228 forcing·a·TCP·query·instead;·this·is·not·entirely·correct,·as·the·advertised228 forcing·a·TCP·query·instead;·this·is·not·entirely·correct,·as·the·advertised
229 UDP·payload·size·of·the·individual·nameserver·is·what·is·to·be·used,·but·this229 UDP·payload·size·of·the·individual·nameserver·is·what·is·to·be·used,·but·this
230 simple·strategy·will·do·until·a·more·intelligent·(probing,·caching)·algorithm230 simple·strategy·will·do·until·a·more·intelligent·(probing,·caching)·algorithm
231 needs·to·be·implemented.·Default·to·1280,·which·stems·from·the·standard231 needs·to·be·implemented.·Default·to·1280,·which·stems·from·the·standard
232 Ethernet·MTU·size.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2564172795-1">{</span><span·class="ss">udp</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p"·data-group-id="2564172795-1">}</span><span·class="p">.</span><span·class="w"> 
233 ··</span><span·class="n">Module</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="2564172795-2">(</span><span·class="p"·data-group-id="2564172795-2">)</span></code></pre[·...·truncated·by·diffoscope;·len:·353,·SHA:·48e81ae1822d1bc9e69a0b126cf7c2d075e556d615f85b65eb055e9a70b27edb·...·]-1">}</span><span·class="p">.</span><span·class="w">232 Ethernet·MTU·size.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4435088626-1">{</span><span·class="ss">udp</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·dc955631c0a36a57943b43075698065a9e998aa51682b001629c862d2960fc79·...·]-1">}</span><span·class="p">.</span><span·class="w">
 233 ··</span><span·class="n">Module</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="4435088626-2">(</span><span·class="p"·data-group-id="4435088626-2">)</span></code></pre><p>Tell·Erlang·to·use·another·primitive·UDP·module·than·<code·class="inline">inet_udp</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2009974566-1">{</span><span·class="ss">tcp</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p"·data-group-id="2009974566-1">}</span><span·class="p">.</span><span·class="w">
234 ··</span><span·class="n">Module</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="8153060889-2">(</span><span·class="p"·data-group-id="8153060889-2">)</span></code></pre><p>Tell·Erlang·to·use·another·primitive·TCP·module·than·<code·class="inline">inet_tcp</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">clear_hosts</span><span·class="p">.</span></code></pre><p>Clear·the·hosts·table.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">clear_ns</span><span·class="p">.</span></code></pre><p>Clear·the·list·of·recorded·nameservers·(primary·and·secondary).</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">clear_search</span><span·class="p">.</span></code></pre><p>Clear·the·list·of·search·domains.</p></li></ul><h2·id="user-configuration-example"·class="section-heading">234 ··</span><span·class="n">Module</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="2009974566-2">(</span><span·class="p"·data-group-id="2009974566-2">)</span></code></pre><p>Tell·Erlang·to·use·another·primitive·TCP·module·than·<code·class="inline">inet_tcp</code>.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">clear_hosts</span><span·class="p">.</span></code></pre><p>Clear·the·hosts·table.</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">clear_ns</span><span·class="p">.</span></code></pre><p>Clear·the·list·of·recorded·nameservers·(primary·and·secondary).</p></li><li><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">clear_search</span><span·class="p">.</span></code></pre><p>Clear·the·list·of·search·domains.</p></li></ul><h2·id="user-configuration-example"·class="section-heading">
235 ··<a·href="#user-configuration-example"·class="hover-link">235 ··<a·href="#user-configuration-example"·class="hover-link">
236 ····<i·class="ri-link-m"·aria-hidden="true"></i>236 ····<i·class="ri-link-m"·aria-hidden="true"></i>
237 ··</a>237 ··</a>
238 ··<span·class="text">User·Configuration·Example</span>238 ··<span·class="text">User·Configuration·Example</span>
239 </h2>239 </h2>
240 <p>Assume·that·a·user·does·not·want·Erlang·to·use·the·native·lookup·method,·but240 <p>Assume·that·a·user·does·not·want·Erlang·to·use·the·native·lookup·method,·but
241 wants·Erlang·to·read·all·information·necessary·from·start·and·use·that·for241 wants·Erlang·to·read·all·information·necessary·from·start·and·use·that·for
242 resolving·names·and·addresses.·If·lookup·fails,·Erlang·is·to·request·the·data242 resolving·names·and·addresses.·If·lookup·fails,·Erlang·is·to·request·the·data
243 from·a·nameserver·(using·the·Erlang·DNS·client,·set·to·use·EDNS·allowing·larger243 from·a·nameserver·(using·the·Erlang·DNS·client,·set·to·use·EDNS·allowing·larger
244 responses).·The·resolver·configuration·is·updated·when·its·configuration·file244 responses).·The·resolver·configuration·is·updated·when·its·configuration·file
245 changes.·Also,·DNS·records·are·never·to·be·cached.·The·user·configuration·file245 changes.·Also,·DNS·records·are·never·to·be·cached.·The·user·configuration·file
246 (in·this·example·named·<code·class="inline">erl_inetrc</code>,·stored·in·directory·<code·class="inline">./cfg_files</code>)·can·then246 (in·this·example·named·<code·class="inline">erl_inetrc</code>,·stored·in·directory·<code·class="inline">./cfg_files</code>)·can·then
247 look·as·follows·(Unix):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·--·ERLANG·INET·CONFIGURATION·FILE·--</span><span·class="w">247 look·as·follows·(Unix):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·--·ERLANG·INET·CONFIGURATION·FILE·--</span><span·class="w">
248 </span><span·class="c1">%%·read·the·hosts·file</span><span·class="w">248 </span><span·class="c1">%%·read·the·hosts·file</span><span·class="w">
249 </span><span·class="p"·data-group-id="3590829511-1">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/etc/hosts&quot;</span><span·class="p"·data-group-id="359082[·...·truncated·by·diffoscope;·len:·4,·SHA:·2e6187a7ae1b171837b9358ef9c20c8d730ce9ea9f9dc7bb2a1b0f320af26ece·...·]-1">}</span><span·class="p">.</span><span·class="w">249 </span><span·class="p"·data-group-id="3680247440-1">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/etc/hosts&quot;</span><span·class="p"·data-group-id="368024[·...·truncated·by·diffoscope;·len:·4,·SHA:·42b81b695c9063452295da5fd53833fbdf7f0801b0a8e9b7dacbfffa86b436d9·...·]-1">}</span><span·class="p">.</span><span·class="w">
250 </span><span·class="c1">%%·add·a·particular·host</span><span·class="w">250 </span><span·class="c1">%%·add·a·particular·host</span><span·class="w">
251 </span><span·class="p"·data-group-id="3590829511-2">{</span><span·class="ss">host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3590829511-3">{</span><span·class="mi">134</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·362,·SHA:·0e5002b94323860760a8ffa27ba35b691ff3de47dfe8758c108488dcb04f66b6·...·]-2">}</span><span·class="p">.</span><span·class="w">251 </span><span·class="p"·data-group-id="3680247440-2">{</span><span·class="ss">host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3680247440-3">{</span><span·class="mi">134</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·362,·SHA:·9cc0d78e2e8356b1d7c01c749baf2c1dc8ac9e939f26a5ba5901edafe8f60d01·...·]-2">}</span><span·class="p">.</span><span·class="w">
252 </span><span·class="c1">%%·do·not·monitor·the·hosts·file</span><span·class="w">252 </span><span·class="c1">%%·do·not·monitor·the·hosts·file</span><span·class="w">
253 </span><span·class="p"·data-group-id="3590829511-5">{</span><span·class="ss">hosts_file</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="p"·data-group-id="3590829511-5">}</span><span·class="p">.</span><span·class="w">253 </span><span·class="p"·data-group-id="3680247440-5">{</span><span·class="ss">hosts_file</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&quot;</span><span·class="p"·data-group-id="3680247440-5">}</span><span·class="p">.</span><span·class="w">
254 </span><span·class="c1">%%·read·and·monitor·nameserver·config·from·here</span><span·class="w">254 </span><span·class="c1">%%·read·and·monitor·nameserver·config·from·here</span><span·class="w">
255 </span><span·class="p"·data-group-id="3590829511-6">{</span><span·class="ss">resolv_conf</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/usr/local/etc/resolv.conf&quot;</span><span·class="p"·data-group-id="3590829511-6">}</span><span·class="p">.</span><span·class="w">255 </span><span·class="p"·data-group-id="3680247440-6">{</span><span·class="ss">resolv_conf</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/usr/local/etc/resolv.conf&quot;</span><span·class="p"·data-group-id="3680247440-6">}</span><span·class="p">.</span><span·class="w">
256 </span><span·class="c1">%%·enable·EDNS</span><span·class="w">256 </span><span·class="c1">%%·enable·EDNS</span><span·class="w">
257 </span><span·class="p"·data-group-id="3590829511-7">{</span><span·class="ss">edns</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="3590829511-7">}</span><span·class="p">.</span><span·class="w">257 </span><span·class="p"·data-group-id="3680247440-7">{</span><span·class="ss">edns</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="3680247440-7">}</span><span·class="p">.</span><span·class="w">
258 </span><span·class="c1">%%·disable·caching</span><span·class="w">258 </span><span·class="c1">%%·disable·caching</span><span·class="w">
259 </span><span·class="p"·data-group-id="3590829511-8">{</span><span·class="ss">cache_size</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="3590829511-8">}</span><span·class="p">.</span><span·class="w">259 </span><span·class="p"·data-group-id="3680247440-8">{</span><span·class="ss">cache_size</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="3680247440-8">}</span><span·class="p">.</span><span·class="w">
260 </span><span·class="c1">%%·specify·lookup·method</span><span·class="w">260 </span><span·class="c1">%%·specify·lookup·method</span><span·class="w">
261 </span><span·class="p"·data-group-id="3590829511-9">{</span><span·class="ss">lookup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3590829511-10">[</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">dns</span>[·...·truncated·by·diffoscope;·len:·95,·SHA:·50af10458ec77adf6442f0fa294a26e7d9933bb7a4603604f650cc21a9c21278·...·]-9">}</span><span·class="p">.</span></code></pre><p>And·Erlang·can,·for·example,·be·started·as·follows:</p><pre><code·class="text">%·erl·-sname·my_node·-kernel·inetrc·'&quot;./cfg_files/erl_inetrc&quot;'</code></pre>261 </span><span·class="p"·data-group-id="3680247440-9">{</span><span·class="ss">lookup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3680247440-10">[</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">dns</span>[·...·truncated·by·diffoscope;·len:·95,·SHA:·29f8f45df9f5a3c5b96a36c864fb0344fb255e7f7d51292963ccc69c8eb9c412·...·]-9">}</span><span·class="p">.</span></code></pre><p>And·Erlang·can,·for·example,·be·started·as·follows:</p><pre><code·class="text">%·erl·-sname·my_node·-kernel·inetrc·'&quot;./cfg_files/erl_inetrc&quot;'</code></pre>
262 </div>262 </div>
  
263 <div·class="bottom-actions"·id="bottom-actions">263 <div·class="bottom-actions"·id="bottom-actions">
264 ··<div·class="bottom-actions-item">264 ··<div·class="bottom-actions-item">
  
265 ······<a·href="driver.html"·class="bottom-actions-button"·rel="prev">265 ······<a·href="driver.html"·class="bottom-actions-button"·rel="prev">
266 ········<span·class="subheader">266 ········<span·class="subheader">
Offset 301, 15 lines modifiedOffset 301, 15 lines modified
301 ······<p·class="built-using">301 ······<p·class="built-using">
302 ········Built·using302 ········Built·using
303 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the303 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
304 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>304 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
305 ······</p>305 ······</p>
306 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>306 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
307 ····</footer>307 ····</footer>
308 ··</div>308 ··</div>
309 </main>309 </main>
310 </div>310 </div>
311 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>311 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
312 <script>312 <script>
Max diff block lines reached; 0/46493 bytes (0.00%) of diff not shown.
667 B
html2text {}
Max HTML report size reached
17.4 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/init.html
    
Offset 157, 16 lines modifiedOffset 157, 16 lines modified
157 BF</code></pre><p>If·multiple·<code·class="inline">-eval</code>·expressions·are·specified,·they·are·evaluated·sequentially157 BF</code></pre><p>If·multiple·<code·class="inline">-eval</code>·expressions·are·specified,·they·are·evaluated·sequentially
158 in·the·order·specified.·<code·class="inline">-eval</code>·expressions·are·evaluated·sequentially·with158 in·the·order·specified.·<code·class="inline">-eval</code>·expressions·are·evaluated·sequentially·with
159 <code·class="inline">-s</code>·and·<code·class="inline">-run</code>·function·calls·(this·also·in·the·order·specified).·As·with159 <code·class="inline">-s</code>·and·<code·class="inline">-run</code>·function·calls·(this·also·in·the·order·specified).·As·with
160 <code·class="inline">-s</code>·and·<code·class="inline">-run</code>,·an·evaluation·that·does·not·terminate·blocks·the·system160 <code·class="inline">-s</code>·and·<code·class="inline">-run</code>,·an·evaluation·that·does·not·terminate·blocks·the·system
161 initialization·process.</p></li><li><p><strong><code·class="inline">-extra</code></strong>·-·Everything·following·<code·class="inline">-extra</code>·is·considered·plain·arguments·and161 initialization·process.</p></li><li><p><strong><code·class="inline">-extra</code></strong>·-·Everything·following·<code·class="inline">-extra</code>·is·considered·plain·arguments·and
162 can·be·retrieved·using·<a·href="#get_plain_arguments/0"><code·class="inline">get_plain_arguments/0</code></a>.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-extra·+A·1·--</span><span·class="w">162 can·be·retrieved·using·<a·href="#get_plain_arguments/0"><code·class="inline">get_plain_arguments/0</code></a>.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-extra·+A·1·--</span><span·class="w">
163 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">163 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">
164 1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_plain_arguments</span><span·class="p"·data-group-id="8864544284-1">(</span><span·class="p"·data-group-id="8864544284-1">)</span><span·class="p">.</span><span·class="w">164 1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_plain_arguments</span><span·class="p"·data-group-id="2613914776-1">(</span><span·class="p"·data-group-id="2613914776-1">)</span><span·class="p">.</span><span·class="w">
165 </span><span·class="p"·data-group-id="8864544284-2">[</span><span·class="s">&quot;+A&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="s">&quot;--&quot;</span><span·class="p"·data-group-id="8864544284-2">]</span></code></pre><p>The·<code·class="inline">-extra</code>·flag·can·be·passed·on·the·command·line,·through·<code·class="inline">ERL_*FLAGS</code>·or165 </span><span·class="p"·data-group-id="2613914776-2">[</span><span·class="s">&quot;+A&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="s">&quot;--&quot;</span><span·class="p"·data-group-id="2613914776-2">]</span></code></pre><p>The·<code·class="inline">-extra</code>·flag·can·be·passed·on·the·command·line,·through·<code·class="inline">ERL_*FLAGS</code>·or
166 <code·class="inline">-args_file</code>.·It·only·effects·the·remaining·command-line·flags·in·the·entity166 <code·class="inline">-args_file</code>.·It·only·effects·the·remaining·command-line·flags·in·the·entity
167 in·which·it·is·passed.·If·multiple·<code·class="inline">-extra</code>·flags·are·passed·they·are167 in·which·it·is·passed.·If·multiple·<code·class="inline">-extra</code>·flags·are·passed·they·are
168 concatenated·using·the·same·order·rules·as·<code·class="inline">ERL_*FLAGS</code>·or·<code·class="inline">-args_file</code>·in168 concatenated·using·the·same·order·rules·as·<code·class="inline">ERL_*FLAGS</code>·or·<code·class="inline">-args_file</code>·in
169 which·they·are·given.</p><p>Example:</p><pre><code·class="text">%·ERL_AFLAGS=&quot;-extra·a&quot;·ERL_ZFLAGS=&quot;-extra·d&quot;·erl·-extra·b·-extra·c169 which·they·are·given.</p><p>Example:</p><pre><code·class="text">%·ERL_AFLAGS=&quot;-extra·a&quot;·ERL_ZFLAGS=&quot;-extra·d&quot;·erl·-extra·b·-extra·c
170 ...170 ...
171 1&gt;·init:get_plain_arguments().171 1&gt;·init:get_plain_arguments().
172 [&quot;a&quot;,&quot;b&quot;,&quot;-extra&quot;,&quot;c&quot;,&quot;d&quot;]</code></pre></li><li><p><strong><code·class="inline">-S·Mod·[Func·[Arg1,·Arg2,·...]]</code></strong>·-·Evaluates·the·specified·function·call172 [&quot;a&quot;,&quot;b&quot;,&quot;-extra&quot;,&quot;c&quot;,&quot;d&quot;]</code></pre></li><li><p><strong><code·class="inline">-S·Mod·[Func·[Arg1,·Arg2,·...]]</code></strong>·-·Evaluates·the·specified·function·call
Offset 212, 21 lines modifiedOffset 212, 21 lines modified
212 ····<i·class="ri-link-m"·aria-hidden="true"></i>212 ····<i·class="ri-link-m"·aria-hidden="true"></i>
213 ··</a>213 ··</a>
214 ··<span·class="text">Example</span>214 ··<span·class="text">Example</span>
215 </h2>215 </h2>
216 <pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·--·a·b·-children·thomas·claire·-ages·7·3·--·x·y</span><span·class="w">216 <pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·--·a·b·-children·thomas·claire·-ages·7·3·--·x·y</span><span·class="w">
217 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">217 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
  
218 </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_plain_arguments</span><span·class="p"·data-group-id="0660107580-1">(</span><span·class="p"·data-group-id="0660107580-1">)</span><span·class="p">.</span><span·class="w">218 </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_plain_arguments</span><span·class="p"·data-group-id="5199608967-1">(</span><span·class="p"·data-group-id="5199608967-1">)</span><span·class="p">.</span><span·class="w">
219 </span><span·class="p"·data-group-id="0660107580-2">[</span><span·class="s">&quot;a&quot;</span><span·class="p">,</span><span·class="s">&quot;b&quot;</span><span·class="p">,</span><span·class="s">&quot;x&quot;</span><span·class="p">,</span><span·class="s">&quot;y&quot;</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·7a3d8956f4b8460cbe0e088b885299b1670a1a375c35f1fc5a73be729f8c4604·...·]-2">]</span><span·class="gp·unselectable">219 </span><span·class="p"·data-group-id="5199608967-2">[</span><span·class="s">&quot;a&quot;</span><span·class="p">,</span><span·class="s">&quot;b&quot;</span><span·class="p">,</span><span·class="s">&quot;x&quot;</span><span·class="p">,</span><span·class="s">&quot;y&quot;</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·9a3fcc4f81e05ddee2a34d7881015a48761966aa6379a29d55db8d93a67f9ef1·...·]-2">]</span><span·class="gp·unselectable">
220 2&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="0660107580-3">(</span><span·class="ss">children</span><span·class="p"·data-group-id="0660107580-3">)</span><span·class="p">.</span><span·class="w">220 2&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="5199608967-3">(</span><span·class="ss">children</span><span·class="p"·data-group-id="5199608967-3">)</span><span·class="p">.</span><span·class="w">
221 </span><span·class="p"·data-group-id="0660107580-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0660107580-5">[</span><span·class="p"·data-group-id="0660107580-6">[</span><span·class="s">&quot;thomas&quot;</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·175,·SHA:·43151583f6fef877d595574f82685d50905b6c380afd556ae95bbdee39ebdda5·...·]-4">}</span><span·class="gp·unselectable">221 </span><span·class="p"·data-group-id="5199608967-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5199608967-5">[</span><span·class="p"·data-group-id="5199608967-6">[</span><span·class="s">&quot;thomas&quot;</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·175,·SHA:·8555542013d261e72a0a59d048920cb57f1129b1483374eda71f9cc190690df8·...·]-4">}</span><span·class="gp·unselectable">
222 3&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="0660107580-7">(</span><span·class="ss">ages</span><span·class="p"·data-group-id="0660107580-7">)</span><span·class="p">.</span><span·class="w">222 3&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="5199608967-7">(</span><span·class="ss">ages</span><span·class="p"·data-group-id="5199608967-7">)</span><span·class="p">.</span><span·class="w">
223 </span><span·class="p"·data-group-id="0660107580-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0660107580-9">[</span><span·class="p"·data-group-id="0660107580-10">[</span><span·class="s">&quot;7&quot;</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·191,·SHA:·54dc29014bc0254300fc6466b3d9f46b6f9486b2df47af20d3e855ef5c580430·...·]-8">}</span><span·class="gp·unselectable">223 </span><span·class="p"·data-group-id="5199608967-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5199608967-9">[</span><span·class="p"·data-group-id="5199608967-10">[</span><span·class="s">&quot;7&quot;</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·191,·SHA:·65a8d60d9343ab6c33b1f53b84e662bc4de86b9af7cb35ea5bf05432296eab42·...·]-8">}</span><span·class="gp·unselectable">
224 4&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="0660107580-11">(</span><span·class="ss">silly</span><span·class="p"·data-group-id="0660107580-11">)</span><span·class="p">.</span><span·class="w">224 4&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="5199608967-11">(</span><span·class="ss">silly</span><span·class="p"·data-group-id="5199608967-11">)</span><span·class="p">.</span><span·class="w">
225 </span><span·class="ss">error</span></code></pre><h2·id="module-see-also"·class="section-heading">225 </span><span·class="ss">error</span></code></pre><h2·id="module-see-also"·class="section-heading">
226 ··<a·href="#module-see-also"·class="hover-link">226 ··<a·href="#module-see-also"·class="hover-link">
227 ····<i·class="ri-link-m"·aria-hidden="true"></i>227 ····<i·class="ri-link-m"·aria-hidden="true"></i>
228 ··</a>228 ··</a>
229 ··<span·class="text">See·Also</span>229 ··<span·class="text">See·Also</span>
230 </h2>230 </h2>
231 <p><a·href="erl_prim_loader.html"><code·class="inline">erl_prim_loader</code></a>,·<a·href="../../../lib/kernel-10.0.1/doc/html/heart.html"><code·class="inline">heart</code></a></p>231 <p><a·href="erl_prim_loader.html"><code·class="inline">erl_prim_loader</code></a>,·<a·href="../../../lib/kernel-10.0.1/doc/html/heart.html"><code·class="inline">heart</code></a></p>
Offset 520, 20 lines modifiedOffset 520, 20 lines modified
520 ··········<pre·translate="no"><span·class="attribute">-spec</span>·get_argument(Flag)·->·{ok,·Arg}·|·error·when·Flag·::·<a·href="erlang.html#t:atom/0">atom</a>(),·Arg·::·[Values·::·[<a·href="erlang.html#t:string/0">string</a>()]].</pre>520 ··········<pre·translate="no"><span·class="attribute">-spec</span>·get_argument(Flag)·->·{ok,·Arg}·|·error·when·Flag·::·<a·href="erlang.html#t:atom/0">atom</a>(),·Arg·::·[Values·::·[<a·href="erlang.html#t:string/0">string</a>()]].</pre>
  
521 ······</div>521 ······</div>
  
522 <p>Returns·all·values·associated·with·the·command-line·user·flag·<code·class="inline">Flag</code>.</p><p>If·<code·class="inline">Flag</code>·is·provided·several·times,·each·<code·class="inline">Values</code>·is·returned·in·preserved·order.522 <p>Returns·all·values·associated·with·the·command-line·user·flag·<code·class="inline">Flag</code>.</p><p>If·<code·class="inline">Flag</code>·is·provided·several·times,·each·<code·class="inline">Values</code>·is·returned·in·preserved·order.
523 Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-a·b·c·-a·d</span><span·class="w">523 Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-a·b·c·-a·d</span><span·class="w">
524 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">524 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">
525 1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="5957199181-1">(</span><span·class="ss">a</span><span·class="p"·data-group-id="5957199181-1">)</span><span·class="p">.</span><span·class="w">525 1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="6134051021-1">(</span><span·class="ss">a</span><span·class="p"·data-group-id="6134051021-1">)</span><span·class="p">.</span><span·class="w">
526 </span><span·class="p"·data-group-id="5957199181-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5957199181-3">[</span><span·class="p"·data-group-id="5957199181-4">[</span><span·class="s">&quot;b&quot;</span><span·class="p">,</span><span·class="s">&q[·...·truncated·by·diffoscope;·len:·330,·SHA:·f58798ae55191410e83072497188fb0d747caef3b4d6cf9b10cd740c14d699af·...·]1-2">}</span></code></pre><p>The·following·flags·are·defined·automatically·and·can·be·retrieved·using·this526 </span><span·class="p"·data-group-id="6134051021-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6134051021-3">[</span><span·class="p"·data-group-id="6134051021-4">[</span><span·class="s">&quot;b&quot;</span><span·class="p">,</span><span·class="s">&q[·...·truncated·by·diffoscope;·len:·330,·SHA:·8bce0bf3ca5844c6cdb9c382482e05d970f5759b2c8392fd599899ec8b590156·...·]1-2">}</span></code></pre><p>The·following·flags·are·defined·automatically·and·can·be·retrieved·using·this
527 function:</p><ul><li><p><strong><code·class="inline">root</code></strong>·-·The·installation·directory·of·Erlang/OTP,·<code·class="inline">$ROOT</code>:</p><pre><code·class="text">2&gt;·init:get_argument(root).527 function:</p><ul><li><p><strong><code·class="inline">root</code></strong>·-·The·installation·directory·of·Erlang/OTP,·<code·class="inline">$ROOT</code>:</p><pre><code·class="text">2&gt;·init:get_argument(root).
528 {ok,[[&quot;/usr/local/otp/releases/otp_beam_solaris8_r10b_patched&quot;]]}</code></pre></li><li><p><strong><code·class="inline">progname</code></strong>·-·The·name·of·the·program·which·started·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="8773137005-1">(</span><span·class="ss">progname</span><span·class="p"·data-group-id="8773137005-1">)</span><span·class="p">.</span><span·class="w">528 {ok,[[&quot;/usr/local/otp/releases/otp_beam_solaris8_r10b_patched&quot;]]}</code></pre></li><li><p><strong><code·class="inline">progname</code></strong>·-·The·name·of·the·program·which·started·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_argument</span><span·class="p"·data-group-id="4371479321-1">(</span><span·class="ss">progname</span><span·class="p"·data-group-id="4371479321-1">)</span><span·class="p">.</span><span·class="w">
529 </span><span·class="p"·data-group-id="8773137005-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8773137005-3">[</span><span·class="p"·data-group-id="8773137005-4">[</span><span·class="s">&quot;erl&quot;</span><span·class="p"·data-group-id="877313700[·...·truncated·by·diffoscope;·len:·560,·SHA:·0709dba07879a420cbe11fb1d32eb69a5aaa96156bb27a6a03577396a6d9773c·...·]-1">)</span><span·class="p">.</span><span·class="w">529 </span><span·class="p"·data-group-id="4371479321-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4371479321-3">[</span><span·class="p"·data-group-id="4371479321-4">[</span><span·class="s">&quot;erl&quot;</span><span·class="p"·data-group-id="437147932[·...·truncated·by·diffoscope;·len:·560,·SHA:·bdab4a02709951b785ae40699dc1859d53c24a8ef79e761a5a0cc2839c022099·...·]-1">)</span><span·class="p">.</span><span·class="w">
530 </span><span·class="p"·data-group-id="5218419820-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5218419820-3">[</span><span·class="p"·data-group-id="5218419820-4">[</span><span·class="s">&quot;/home/harry&quot;</span><span·class="p"·data-group-id="5[·...·truncated·by·diffoscope;·len:·115,·SHA:·fbe8b369c2dae38fa42b13eb6ae3a4d2ede2bbbce78ff4a5eae47afcddf46f9e·...·]-2">}</span></code></pre></li></ul><p>Returns·<code·class="inline">error</code>·if·no·value·is·associated·with·<code·class="inline">Flag</code>.</p>530 </span><span·class="p"·data-group-id="7851640739-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7851640739-3">[</span><span·class="p"·data-group-id="7851640739-4">[</span><span·class="s">&quot;/home/harry&quot;</span><span·class="p"·data-group-id="7[·...·truncated·by·diffoscope;·len:·115,·SHA:·8f02a4c8fcf1b6c0041f877d7aabba92b3675d487d063b7aa1c69f42ec4205d7·...·]-2">}</span></code></pre></li></ul><p>Returns·<code·class="inline">error</code>·if·no·value·is·associated·with·<code·class="inline">Flag</code>.</p>
531 ··</section>531 ··</section>
532 </section>532 </section>
533 <section·class="detail"·id="get_arguments/0">533 <section·class="detail"·id="get_arguments/0">
  
534 ··<div·class="detail-header">534 ··<div·class="detail-header">
535 ····<a·href="#get_arguments/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">535 ····<a·href="#get_arguments/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
536 ······<i·class="ri-link-m"·aria-hidden="true"></i>536 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 823, 15 lines modifiedOffset 823, 15 lines modified
823 ······<p·class="built-using">823 ······<p·class="built-using">
824 ········Built·using824 ········Built·using
825 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the825 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
826 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>826 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
827 ······</p>827 ······</p>
828 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>828 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
829 ····</footer>829 ····</footer>
830 ··</div>830 ··</div>
831 </main>831 </main>
832 </div>832 </div>
833 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>833 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
834 <script>834 <script>
835 ··document.addEventListener("DOMContentLoaded",·function·()·{835 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/introduction.html
    
Offset 184, 15 lines modifiedOffset 184, 15 lines modified
184 ······<p·class="built-using">184 ······<p·class="built-using">
185 ········Built·using185 ········Built·using
186 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the186 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
187 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>187 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
188 ······</p>188 ······</p>
189 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>189 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
190 ····</footer>190 ····</footer>
191 ··</div>191 ··</div>
192 </main>192 </main>
193 </div>193 </div>
194 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>194 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
195 <script>195 <script>
196 ··document.addEventListener("DOMContentLoaded",·function·()·{196 ··document.addEventListener("DOMContentLoaded",·function·()·{
716 B
html2text {}
Max HTML report size reached
52.4 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/match_spec.html
    
Offset 362, 78 lines modifiedOffset 362, 78 lines modified
362 language,·that·is,·for·their·side·effects.·Functions·with·side·effects·are·also362 language,·that·is,·for·their·side·effects.·Functions·with·side·effects·are·also
363 allowed·when·tracing.</p><h2·id="tracing-examples"·class="section-heading">363 allowed·when·tracing.</p><h2·id="tracing-examples"·class="section-heading">
364 ··<a·href="#tracing-examples"·class="hover-link">364 ··<a·href="#tracing-examples"·class="hover-link">
365 ····<i·class="ri-link-m"·aria-hidden="true"></i>365 ····<i·class="ri-link-m"·aria-hidden="true"></i>
366 ··</a>366 ··</a>
367 ··<span·class="text">Tracing·Examples</span>367 ··<span·class="text">Tracing·Examples</span>
368 </h2>368 </h2>
369 <p>Match·an·argument·list·of·three,·where·the·first·and·third·arguments·are·equal:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7150064182-1">[</span><span·class="p"·data-group-id="7150064182-2">{</span><span·class="p"·data-group-id="7150064182-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·cla[·...·truncated·by·diffoscope;·len:·116,·SHA:·f1b99c125168d27e96d7af282480af3e48f6f9b9ae7b8224463d407b40d1aa80·...·]-3">]</span><span·class="p">,</span><span·class="w">369 <p>Match·an·argument·list·of·three,·where·the·first·and·third·arguments·are·equal:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0201572948-1">[</span><span·class="p"·data-group-id="0201572948-2">{</span><span·class="p"·data-group-id="0201572948-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·cla[·...·truncated·by·diffoscope;·len:·116,·SHA:·1c29e79c110f7c632af9b87d28b46c2034f7a6f79f405d30d9ec805d8613fb9f·...·]-3">]</span><span·class="p">,</span><span·class="w">
370 ··</span><span·class="p"·data-group-id="7150064182-4">[</span><span·class="p"·data-group-id="7150064182-4">]</span><span·class="p">,</span><span·class="w">370 ··</span><span·class="p"·data-group-id="0201572948-4">[</span><span·class="p"·data-group-id="0201572948-4">]</span><span·class="p">,</span><span·class="w">
371 ··</span><span·class="p"·data-group-id="7150064182-5">[</span><span·class="p"·data-group-id="7150064182-5">]</span><span·class="p"·data-group-id="7150064182-2">}</span><span·class="p"·data-group-id="7150064182-1">]</span></code></pre><p>Match·an·argument·list·of·three,·where·the·second·argument·[·...·truncated·by·diffoscope;·len:·473,·SHA:·12dcbeea06b6736151f2c51b55e6987a094772ea5fbafdebe796eea9f965320c·...·]-3">]</span><span·class="p">,</span><span·class="w">371 ··</span><span·class="p"·data-group-id="0201572948-5">[</span><span·class="p"·data-group-id="0201572948-5">]</span><span·class="p"·data-group-id="0201572948-2">}</span><span·class="p"·data-group-id="0201572948-1">]</span></code></pre><p>Match·an·argument·list·of·three,·where·the·second·argument·[·...·truncated·by·diffoscope;·len:·473,·SHA:·e8832a7b9f43966530b4f70a29165b6df5bb3fa38b4def475871cdfdca076c6c·...·]-3">]</span><span·class="p">,</span><span·class="w">
372 ··</span><span·class="p"·data-group-id="3039751088-4">[</span><span·class="p"·data-group-id="3039751088-5">{</span><span·class="w">·</span><span·class="ss">&#39;&gt;&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·132,·SHA:·e7dc26ca400d80e59b8800f19fc046d581d9fa765a210d06059b6267f8f2bb7f·...·]-4">]</span><span·class="p">,</span><span·class="w">372 ··</span><span·class="p"·data-group-id="8493002765-4">[</span><span·class="p"·data-group-id="8493002765-5">{</span><span·class="w">·</span><span·class="ss">&#39;&gt;&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·132,·SHA:·0406377488b8bf682ae090006b39c598fb6090ada4ab51943175ac55c067f48a·...·]-4">]</span><span·class="p">,</span><span·class="w">
373 ··</span><span·class="p"·data-group-id="3039751088-6">[</span><span·class="p"·data-group-id="3039751088-6">]</span><span·class="p"·data-group-id="3039751088-2">}</span><span·class="p"·data-group-id="3039751088-1">]</span></code></pre><p>Match·an·argument·list·of·three,·where·the·third·argument·is·either·a·tuple373 ··</span><span·class="p"·data-group-id="8493002765-6">[</span><span·class="p"·data-group-id="8493002765-6">]</span><span·class="p"·data-group-id="8493002765-2">}</span><span·class="p"·data-group-id="8493002765-1">]</span></code></pre><p>Match·an·argument·list·of·three,·where·the·third·argument·is·either·a·tuple
374 containing·argument·one·and·two,·<em>or</em>·a·list·beginning·with·argument·one·and·two374 containing·argument·one·and·two,·<em>or</em>·a·list·beginning·with·argument·one·and·two
375 (that·is,·<code·class="inline">[a,b,[a,b,c]]</code>·or·<code·class="inline">[a,b,{a,b}]</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7606809192-1">[</span><span·class="p"·data-group-id="7606809192-2">{</span><span·class="p"·data-group-id="7606809192-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·cl[·...·truncated·by·diffoscope;·len:·117,·SHA:·c3d6a74c6cd2a52993416885f80f3636dabe4e9eca281b4886762ccf820fe42d·...·]-3">]</span><span·class="p">,</span><span·class="w">375 (that·is,·<code·class="inline">[a,b,[a,b,c]]</code>·or·<code·class="inline">[a,b,{a,b}]</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1898545734-1">[</span><span·class="p"·data-group-id="1898545734-2">{</span><span·class="p"·data-group-id="1898545734-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·cl[·...·truncated·by·diffoscope;·len:·117,·SHA:·c12868a10aa9fb1e122138e1474282ba7f54420f764d698cd0d268f6762efd57·...·]-3">]</span><span·class="p">,</span><span·class="w">
376 ··</span><span·class="p"·data-group-id="7606809192-4">[</span><span·class="p"·data-group-id="7606809192-5">{</span><span·class="ss">&#39;orelse&#39;</span><span·class="p">,</span><span·class="w">376 ··</span><span·class="p"·data-group-id="1898545734-4">[</span><span·class="p"·data-group-id="1898545734-5">{</span><span·class="ss">&#39;orelse&#39;</span><span·class="p">,</span><span·class="w">
377 ······</span><span·class="p"·data-group-id="7606809192-6">{</span><span·class="ss">&#39;=:=&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$3&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7606809192-7">{</span><span·class=[·...·truncated·by·diffoscope;·len:·284,·SHA:·8c702145c20ad7e43b4d4d0ff8f9a449e4a0f7491d9583df3bfb6a59c0b8fe6b·...·]-6">}</span><span·class="p">,</span><span·class="w">377 ······</span><span·class="p"·data-group-id="1898545734-6">{</span><span·class="ss">&#39;=:=&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$3&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1898545734-7">{</span><span·class=[·...·truncated·by·diffoscope;·len:·284,·SHA:·e19d771bc8a7a782a6b87748d4f0013fa1683cb781682f34a79d4a121e2b5e1d·...·]-6">}</span><span·class="p">,</span><span·class="w">
378 ······</span><span·class="p"·data-group-id="7606809192-9">{</span><span·class="ss">&#39;and&#39;</span><span·class="p">,</span><span·class="w">378 ······</span><span·class="p"·data-group-id="1898545734-9">{</span><span·class="ss">&#39;and&#39;</span><span·class="p">,</span><span·class="w">
379 ········</span><span·class="p"·data-group-id="7606809192-10">{</span><span·class="ss">&#39;=:=&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7606809192-11">{</span><span·clas[·...·truncated·by·diffoscope;·len:·195,·SHA:·1245ddc396b353f485a7ed4087a1321061a7bc14eab14895d83e345f2e6e266f·...·]-10">}</span><span·class="p">,</span><span·class="w">379 ········</span><span·class="p"·data-group-id="1898545734-10">{</span><span·class="ss">&#39;=:=&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1898545734-11">{</span><span·clas[·...·truncated·by·diffoscope;·len:·195,·SHA:·77f41434fdfbb0ba0108df8e71dd969871d49fc95390454fc27b9f2064cee54c·...·]-10">}</span><span·class="p">,</span><span·class="w">
380 ········</span><span·class="p"·data-group-id="7606809192-12">{</span><span·class="ss">&#39;=:=&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7606809192-13">{</span><span·clas[·...·truncated·by·diffoscope;·len:·537,·SHA:·e4e903232cc1863f469a2596e6aed3329149cfa37e6e7e1d24dc80b82dd34311·...·]-4">]</span><span·class="p">,</span><span·class="w">380 ········</span><span·class="p"·data-group-id="1898545734-12">{</span><span·class="ss">&#39;=:=&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1898545734-13">{</span><span·clas[·...·truncated·by·diffoscope;·len:·537,·SHA:·51ee9aadac4100c4c333784e8aac6a533fd74c4d23cb46fd0aa945c80ef09551·...·]-4">]</span><span·class="p">,</span><span·class="w">
381 ··</span><span·class="p"·data-group-id="7606809192-15">[</span><span·class="p"·data-group-id="7606809192-15">]</span><span·class="p"·data-group-id="7606809192-2">}</span><span·class="p"·data-group-id="7606809192-1">]</span></code></pre><p>The·above·problem·can·also·be·solved·as·follows:</p><pre>[·...·truncated·by·diffoscope;·len:·411,·SHA:·cfbb54c040258bf63f688f29ee05c27ae635186d51665411bacf4ee96c67a87a·...·]-4">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2}],·[],·[]},381 ··</span><span·class="p"·data-group-id="1898545734-15">[</span><span·class="p"·data-group-id="1898545734-15">]</span><span·class="p"·data-group-id="1898545734-2">}</span><span·class="p"·data-group-id="1898545734-1">]</span></code></pre><p>The·above·problem·can·also·be·solved·as·follows:</p><pre>[·...·truncated·by·diffoscope;·len:·411,·SHA:·b1198d16849cb65f7f5b78e351f78504e496e999a975e24a32ae23dcd7a2e657·...·]-4">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2}],·[],·[]},
382 ·{[&#39;</span><span·class="sc">$1</span><span·class="ss">&#39;,·&#39;</span><span·class="sc">$2</span><span·class="ss">&#39;,·[&#39;</span><span·class="sc">$1</span><span·class="ss">&#39;,·&#39;</span><span·class="sc">$2</span><span·class="ss">&#39;·|·&#39;</span><span·class="p">_</span><span·class="err">&#39;</span><span·class="p">]</span><span·class="p">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0856542846-5">[</span><span·class="p"·data-group-id="0856542846-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0856542846-6">[</span><span·class="p"·data-group-id="0856542846-6">]</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·67,·SHA:·4e5800a83489e5053f3c887e903981a3afc3714cb1f47d1150ae4cee1851f89e·...·]-3">]</span></code></pre><p>Match·two·arguments,·where·the·first·is·a·tuple·beginning·with·a·list·that·in382 ·{[&#39;</span><span·class="sc">$1</span><span·class="ss">&#39;,·&#39;</span><span·class="sc">$2</span><span·class="ss">&#39;,·[&#39;</span><span·class="sc">$1</span><span·class="ss">&#39;,·&#39;</span><span·class="sc">$2</span><span·class="ss">&#39;·|·&#39;</span><span·class="p">_</span><span·class="err">&#39;</span><span·class="p">]</span><span·class="p">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2148293822-5">[</span><span·class="p"·data-group-id="2148293822-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2148293822-6">[</span><span·class="p"·data-group-id="2148293822-6">]</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·67,·SHA:·70c2dd06602ec9c8e7670475a7a21d7876751225c8e9dcaef79f987922b7cae4·...·]-3">]</span></code></pre><p>Match·two·arguments,·where·the·first·is·a·tuple·beginning·with·a·list·that·in
383 turn·begins·with·the·second·argument·times·two·(that·is,·<code·class="inline">[{[4,x],y},2]</code>·or383 turn·begins·with·the·second·argument·times·two·(that·is,·<code·class="inline">[{[4,x],y},2]</code>·or
384 <code·class="inline">[{[8],·y,·z},4])</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8386288418-1">[</span><span·class="p"·data-group-id="8386288418-2">{</span><span·class="p"·data-group-id="8386288418-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·cl[·...·truncated·by·diffoscope;·len:·1174,·SHA:·e1b8aa07a4cd9ece60d1b533bdb12f73e4b3034a06536036297fe1d348eff818·...·]-4">]</span><span·class="p">,</span><span·class="w">384 <code·class="inline">[{[8],·y,·z},4])</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3550239833-1">[</span><span·class="p"·data-group-id="3550239833-2">{</span><span·class="p"·data-group-id="3550239833-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·cl[·...·truncated·by·diffoscope;·len:·1174,·SHA:·9bbdc60d7c3b3d480e18c3de0b24332bf796314d83343c464db95dc3ff8bafdb·...·]-4">]</span><span·class="p">,</span><span·class="w">
385 ··</span><span·class="p"·data-group-id="8386288418-9">[</span><span·class="p"·data-group-id="8386288418-9">]</span><span·class="p"·data-group-id="8386288418-2">}</span><span·class="p"·data-group-id="8386288418-1">]</span></code></pre><p>Match·three·arguments.·When·all·three·are·equal·and·are·numbers,·append·the385 ··</span><span·class="p"·data-group-id="3550239833-9">[</span><span·class="p"·data-group-id="3550239833-9">]</span><span·class="p"·data-group-id="3550239833-2">}</span><span·class="p"·data-group-id="3550239833-1">]</span></code></pre><p>Match·three·arguments.·When·all·three·are·equal·and·are·numbers,·append·the
386 process·dump·to·the·trace·message,·otherwise·let·the·trace·message·be·&quot;as·is&quot;,386 process·dump·to·the·trace·message,·otherwise·let·the·trace·message·be·&quot;as·is&quot;,
387 but·set·the·sequential·trace·token·label·to·4711:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3889974856-1">[</span><span·class="p"·data-group-id="3889974856-2">{</span><span·class="p"·data-group-id="3889974856-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·cl[·...·truncated·by·diffoscope;·len:·117,·SHA:·caf8960cddf66dbc89719d9f7adc82bb3de1770ae402ba95f31057ed281213e4·...·]-3">]</span><span·class="p">,</span><span·class="w">387 but·set·the·sequential·trace·token·label·to·4711:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2314569242-1">[</span><span·class="p"·data-group-id="2314569242-2">{</span><span·class="p"·data-group-id="2314569242-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·cl[·...·truncated·by·diffoscope;·len:·117,·SHA:·661fdce1076e638d2bd2fde8f561c7ac5c648106cb53337aa239cc088a2fa7ed·...·]-3">]</span><span·class="p">,</span><span·class="w">
388 ··</span><span·class="p"·data-group-id="3889974856-4">[</span><span·class="p"·data-group-id="3889974856-5">{</span><span·class="nb">is_number</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="3889974856-5">}</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·32b0f6921c5c2ca87b094b9b0d532ba52b0d41d76077c4366c9fbdebf1027d37·...·]-4">]</span><span·class="p">,</span><span·class="w">388 ··</span><span·class="p"·data-group-id="2314569242-4">[</span><span·class="p"·data-group-id="2314569242-5">{</span><span·class="nb">is_number</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="2314569242-5">}</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·cb18c24eafa2645392a728883b6573c18109579e8637d89518ce8e75819348ac·...·]-4">]</span><span·class="p">,</span><span·class="w">
389 ··</span><span·class="p"·data-group-id="3889974856-6">[</span><span·class="p"·data-group-id="3889974856-7">{</span><span·class="ss">message</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3889974856-8">{</span><span·class="ss">process_dump</span><span·class="[·...·truncated·by·diffoscope;·len:·187,·SHA:·7324da79b7fb7a5c7ebc56f608d70d73b91bcee01ed6ac9679f36ff17e9179f7·...·]-2">}</span><span·class="p">,</span><span·class="w">389 ··</span><span·class="p"·data-group-id="2314569242-6">[</span><span·class="p"·data-group-id="2314569242-7">{</span><span·class="ss">message</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2314569242-8">{</span><span·class="ss">process_dump</span><span·class="[·...·truncated·by·diffoscope;·len:·187,·SHA:·96acb4b9259a01e93d58ec7b86a29076a418fad2dd13ee398451c3d1faeb4018·...·]-2">}</span><span·class="p">,</span><span·class="w">
390 ·</span><span·class="p"·data-group-id="3889974856-9">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3889974856-10">[</span><span·class="p"·data-group-id="3889974856-10">]</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·505,·SHA:·8a7cbbc1cddfa12bc2b0fe5ba0273e72969752e056d5aa1f826e13c4cd4cabb4·...·]-1">]</span></code></pre><p>As·can·be·noted·above,·the·parameter·list·can·be·matched·against·a·single390 ·</span><span·class="p"·data-group-id="2314569242-9">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2314569242-10">[</span><span·class="p"·data-group-id="2314569242-10">]</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·505,·SHA:·9756637b538076236c869a477cd456291b57e94c279472fc12419562d2a8ec8c·...·]-1">]</span></code></pre><p>As·can·be·noted·above,·the·parameter·list·can·be·matched·against·a·single
391 <code·class="inline">MatchVariable</code>·or·an·<code·class="inline">'_'</code>.·To·replace·the·whole·parameter·list·with·a·single391 <code·class="inline">MatchVariable</code>·or·an·<code·class="inline">'_'</code>.·To·replace·the·whole·parameter·list·with·a·single
392 variable·is·a·special·case.·In·all·other·cases·the·<code·class="inline">MatchHead</code>·must·be·a392 variable·is·a·special·case.·In·all·other·cases·the·<code·class="inline">MatchHead</code>·must·be·a
393 <em>proper</em>·list.</p><p>Generate·a·trace·message·only·if·the·trace·control·word·is·set·to·1:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1318494822-1">[</span><span·class="p"·data-group-id="1318494822-2">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">393 <em>proper</em>·list.</p><p>Generate·a·trace·message·only·if·the·trace·control·word·is·set·to·1:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2652443469-1">[</span><span·class="p"·data-group-id="2652443469-2">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">
394 ··</span><span·class="p"·data-group-id="1318494822-3">[</span><span·class="p"·data-group-id="1318494822-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1318494822-5">{</span><span·class="ss">get_tcw</span><span·class="p"·data-group-id="131849[·...·truncated·by·diffoscope;·len:·342,·SHA:·84db0969a17ef7dd27ccf5d80039b27f899e3f51d528ce7091641969848ac647·...·]-3">]</span><span·class="p">,</span><span·class="w">394 ··</span><span·class="p"·data-group-id="2652443469-3">[</span><span·class="p"·data-group-id="2652443469-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="2652443469-5">{</span><span·class="ss">get_tcw</span><span·class="p"·data-group-id="265244[·...·truncated·by·diffoscope;·len:·342,·SHA:·e32d0c17063644474663c8f79c9706a51ff8dd54efc1257c16557c52f9360c7f·...·]-3">]</span><span·class="p">,</span><span·class="w">
395 ··</span><span·class="p"·data-group-id="1318494822-7">[</span><span·class="p"·data-group-id="1318494822-7">]</span><span·class="p"·data-group-id="1318494822-2">}</span><span·class="p"·data-group-id="1318494822-1">]</span></code></pre><p>Generate·a·trace·message·only·if·there·is·a·<code·class="in[·...·truncated·by·diffoscope;·len:·175,·SHA:·a76b1208ebe7171f9d1b5207e95a9c349d6dc41cdad8f5a5befed5b4040d5e16·...·]-2">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">395 ··</span><span·class="p"·data-group-id="2652443469-7">[</span><span·class="p"·data-group-id="2652443469-7">]</span><span·class="p"·data-group-id="2652443469-2">}</span><span·class="p"·data-group-id="2652443469-1">]</span></code></pre><p>Generate·a·trace·message·only·if·there·is·a·<code·class="in[·...·truncated·by·diffoscope;·len:·175,·SHA:·4afad8b6940480175101af350cfdb9c3b8554a05c3cfbebd2444770abf062beb·...·]-2">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">
396 ··</span><span·class="p"·data-group-id="0310561193-3">[</span><span·class="p"·data-group-id="0310561193-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="0310561193-5">{</span><span·class="ss">is_seq_trace</span><span·class="p"·data-group-id="0[·...·truncated·by·diffoscope;·len:·347,·SHA:·d16d5cc59a73d6930c2d8faf5197b192ef53ce00e20720d851c6419df68e89df·...·]-3">]</span><span·class="p">,</span><span·class="w">396 ··</span><span·class="p"·data-group-id="1435311737-3">[</span><span·class="p"·data-group-id="1435311737-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1435311737-5">{</span><span·class="ss">is_seq_trace</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·347,·SHA:·89f5a79622e9d427bbcdd3aa976ecf56842c95c2c38d43698c9bcdc7e1fb0978·...·]-3">]</span><span·class="p">,</span><span·class="w">
397 ··</span><span·class="p"·data-group-id="0310561193-7">[</span><span·class="p"·data-group-id="0310561193-7">]</span><span·class="p"·data-group-id="0310561193-2">}</span><span·class="p"·data-group-id="0310561193-1">]</span></code></pre><p>Remove·the·<code·class="inline">'silent'</code>·trace·flag·when·the·first·argument·is·<code·class="inline">'verbose'</code>,·and·add397 ··</span><span·class="p"·data-group-id="1435311737-7">[</span><span·class="p"·data-group-id="1435311737-7">]</span><span·class="p"·data-group-id="1435311737-2">}</span><span·class="p"·data-group-id="1435311737-1">]</span></code></pre><p>Remove·the·<code·class="inline">'silent'</code>·trace·flag·when·the·first·argument·is·<code·class="inline">'verbose'</code>,·and·add
398 it·when·it·is·<code·class="inline">'silent':</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2632854730-1">[</span><span·class="p"·data-group-id="2632854730-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">398 it·when·it·is·<code·class="inline">'silent':</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1683996594-1">[</span><span·class="p"·data-group-id="1683996594-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
399 ··</span><span·class="p"·data-group-id="2632854730-3">[</span><span·class="p"·data-group-id="2632854730-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="2632854730-5">{</span><span·class="nb">hd</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·244,·SHA:·9d47dcacc772ec1692c11c5e20f61731c557ef6474bd8ae69d292289aaa8e14d·...·]-3">]</span><span·class="p">,</span><span·class="w">399 ··</span><span·class="p"·data-group-id="1683996594-3">[</span><span·class="p"·data-group-id="1683996594-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1683996594-5">{</span><span·class="nb">hd</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·244,·SHA:·919c94d3a3583defe0748b98642a50d415dcb290ba1a48b75e627c29fed1e48a·...·]-3">]</span><span·class="p">,</span><span·class="w">
400 ··</span><span·class="p"·data-group-id="2632854730-6">[</span><span·class="p"·data-group-id="2632854730-7">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2632854730-8">[</span><span·class="ss">silent</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·309,·SHA:·254d7bd2e50e0aeb9721534c630fb850072e866126c10c10cc9087a7d9b695d0·...·]-2">}</span><span·class="p">,</span><span·class="w">400 ··</span><span·class="p"·data-group-id="1683996594-6">[</span><span·class="p"·data-group-id="1683996594-7">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1683996594-8">[</span><span·class="ss">silent</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·309,·SHA:·69e4f6bb723ec80ceb0cff35bec2f424a983be4d66fb3b708486b46b1e03405a·...·]-2">}</span><span·class="p">,</span><span·class="w">
401 ·</span><span·class="p"·data-group-id="2632854730-10">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">401 ·</span><span·class="p"·data-group-id="1683996594-10">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
402 ··</span><span·class="p"·data-group-id="2632854730-11">[</span><span·class="p"·data-group-id="2632854730-12">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="2632854730-13">{</span><span·class="nb">hd</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·248,·SHA:·949771d11caaaed315e9c0f5d227aef7d7504809a193598c4b2834e557c85f8c·...·]-11">]</span><span·class="p">,</span><span·class="w">402 ··</span><span·class="p"·data-group-id="1683996594-11">[</span><span·class="p"·data-group-id="1683996594-12">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1683996594-13">{</span><span·class="nb">hd</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·248,·SHA:·43f5fc3d8a3a3743dca87c336794f0d246dee2a54a47ec1ee92c29ea79e92181·...·]-11">]</span><span·class="p">,</span><span·class="w">
403 ··</span><span·class="p"·data-group-id="2632854730-14">[</span><span·class="p"·data-group-id="2632854730-15">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2632854730-16">[</span><span·class="p"·data-group-id="2632854730-16">]<[·...·truncated·by·diffoscope;·len:·630,·SHA:·6671ee7774bb4f54441957e98e07715d79da6ac08b25752d6ecba51590a4c1fa·...·]-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">403 ··</span><span·class="p"·data-group-id="1683996594-14">[</span><span·class="p"·data-group-id="1683996594-15">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1683996594-16">[</span><span·class="p"·data-group-id="1683996594-16">]<[·...·truncated·by·diffoscope;·len:·630,·SHA:·afd8586af4d06675ca743b681c4c2aaeb73d60b7a063d625042579440d399315·...·]-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
404 ··</span><span·class="p"·data-group-id="7611715203-3">[</span><span·class="p"·data-group-id="7611715203-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="7611715203-5">{</span><span·class="nb">length</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·242,·SHA:·44db6be510f48407437c6c66457a157e7d81b35dc1644570bdb06a1d86605d42·...·]-3">]</span><span·class="p">,</span><span·class="w">404 ··</span><span·class="p"·data-group-id="6412326212-3">[</span><span·class="p"·data-group-id="6412326212-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6412326212-5">{</span><span·class="nb">length</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·242,·SHA:·935b1e9600c43060cfcc334e3b1fcca38b4a552b52796fdf8a9a57baf7b90e21·...·]-3">]</span><span·class="p">,</span><span·class="w">
405 ··</span><span·class="p"·data-group-id="7611715203-6">[</span><span·class="p"·data-group-id="7611715203-7">{</span><span·class="ss">return_trace</span><span·class="p"·data-group-id="7611715203-7">}</span><span·class="p"·data-group-id="7611715203-6">]</span><span·class="p"·data-group-id="7611715203-2">}</span><span·class="p">,</span><span·class="w"> 
406 ·</span><span·class="p"·data-group-id="7611715203-8">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="7611715203-9">[</span><span·class="p"·data-group-id="7611715203-9">]</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·296,·SHA:·e6c2aa7acdb0c02c8907e41c3aa3c68f480e95d8c8c86f2c57bf9c37091c7f40·...·]405 ··</span><span·class="p"·data-group-id="6412326212-6">[</span><span·class="p"·data-group-id="6412326212-7">{</span><span·class="ss">return_trace</span><span·class="p"·data-group-id="6412326212-7">}</span><span·class="p"·data-group-id="6412326212-6">]</span>[·...·truncated·by·diffoscope;·len:·93,·SHA:·5ece3f9850cde4d78228b50e0805cbde10a7ae1543fef8d1bdd26d947a2b1925·...·]
 406 ·</span><span·class="p"·data-group-id="6412326212-8">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="6412326212-9">[</span><span·class="p"·data-group-id="6412326212-9">]</span><span·class="p">,</span><span·class="p"·data-group-id="6412326212-10">[</span><span·class="p"·data-group-id="6412326212-10">]</span><span·class="p"·data-group-id="6412326212-8">}</span><span·class="p"·data-group-id="6412326212-1">]</span></code></pre><p>Generate·a·trace·message·only·if·the·function·is·of·arity·3·and·the·first
407 argument·is·<code·class="inline">'trace'</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1479337388-1">[</span><span·class="p"·data-group-id="1479337388-2">{</span><span·class="p"·data-group-id="1479337388-3">[</span><span·class="ss">&#39;trace&#39;</span><span·class="p">,</span><span·class="ss">&#39;$2&#39;</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·72,·SHA:·0a3a748c740549e112941f2730d24c6fd35c0614aff337d12a35d2ef9f8870ad·...·]-3">]</span><span·class="p">,</span><span·class="w">407 argument·is·<code·class="inline">'trace'</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7501467339-1">[</span><span·class="p"·data-group-id="7501467339-2">{</span><span·class="p"·data-group-id="7501467339-3">[</span><span·class="ss">&#39;trace&#39;</span><span·class="p">,</span><span·class="ss">&#39;$2&#39;</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·72,·SHA:·aa10d8ac5b7c27742021108a8b2b3b0b41b51add4a8f10c1fa55bb8061c4caa8·...·]-3">]</span><span·class="p">,</span><span·class="w">
408 ··</span><span·class="p"·data-group-id="1479337388-4">[</span><span·class="p"·data-group-id="1479337388-4">]</span><span·class="p">,</span><span·class="w">408 ··</span><span·class="p"·data-group-id="7501467339-4">[</span><span·class="p"·data-group-id="7501467339-4">]</span><span·class="p">,</span><span·class="w">
409 ··</span><span·class="p"·data-group-id="1479337388-5">[</span><span·class="p"·data-group-id="1479337388-5">]</span><span·class="p"·data-group-id="1479337388-2">}</span><span·class="p">,</span><span·class="w">409 ··</span><span·class="p"·data-group-id="7501467339-5">[</span><span·class="p"·data-group-id="7501467339-5">]</span><span·class="p"·data-group-id="7501467339-2">}</span><span·class="p">,</span><span·class="w">
410 ·</span><span·class="p"·data-group-id="1479337388-6">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="1479337388-7">[</span><span·class="p"·data-group-id="1479337388-7">]</span><span·class="p">,</span><span·class="p"·data-group-id="1479337388-8">[·...·truncated·by·diffoscope;·len:·155,·SHA:·3f05aa8bd0ce271f4146e18f75d86faae849dae79bd7f7e2f8e4b070b7c93d6f·...·]-1">]</span></code></pre><h2·id="ets-examples"·class="section-heading">410 ·</span><span·class="p"·data-group-id="7501467339-6">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="7501467339-7">[</span><span·class="p"·data-group-id="7501467339-7">]</span><span·class="p">,</span><span·class="p"·data-group-id="7501467339-8">[·...·truncated·by·diffoscope;·len:·155,·SHA:·bedd0f84530d46ed3eb3fc12dba7056543bdfa8f48c23569085a3518b793860c·...·]-1">]</span></code></pre><h2·id="ets-examples"·class="section-heading">
411 ··<a·href="#ets-examples"·class="hover-link">411 ··<a·href="#ets-examples"·class="hover-link">
412 ····<i·class="ri-link-m"·aria-hidden="true"></i>412 ····<i·class="ri-link-m"·aria-hidden="true"></i>
413 ··</a>413 ··</a>
414 ··<span·class="text">ETS·Examples</span>414 ··<span·class="text">ETS·Examples</span>
415 </h2>415 </h2>
416 <p>Match·all·objects·in·an·ETS·table,·where·the·first·element·is·the·atom416 <p>Match·all·objects·in·an·ETS·table,·where·the·first·element·is·the·atom
417 <code·class="inline">'strider'</code>·and·the·tuple·arity·is·3,·and·return·the·whole·object:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9202864314-1">[</span><span·class="p"·data-group-id="9202864314-2">{</span><span·class="p"·data-group-id="9202864314-3">{</span><span·class="ss">strider</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="s[·...·truncated·by·diffoscope;·len:·62,·SHA:·52ca928e588fefef55bd80432e63f98641af04b3f6df5ff330b2d5ce87fa1219·...·]-3">}</span><span·class="p">,</span><span·class="w">417 <code·class="inline">'strider'</code>·and·the·tuple·arity·is·3,·and·return·the·whole·object:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7683573226-1">[</span><span·class="p"·data-group-id="7683573226-2">{</span><span·class="p"·data-group-id="7683573226-3">{</span><span·class="ss">strider</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="s[·...·truncated·by·diffoscope;·len:·62,·SHA:·5c0f11975e47ece75f7bbbb686bf8a0a331ae45323343aa74037d9ad4422c2ac·...·]-3">}</span><span·class="p">,</span><span·class="w">
418 ··</span><span·class="p"·data-group-id="9202864314-4">[</span><span·class="p"·data-group-id="9202864314-4">]</span><span·class="p">,</span><span·class="w">418 ··</span><span·class="p"·data-group-id="7683573226-4">[</span><span·class="p"·data-group-id="7683573226-4">]</span><span·class="p">,</span><span·class="w">
419 ··</span><span·class="p"·data-group-id="9202864314-5">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="9202864314-5">]</span><span·class="p"·data-group-id="9202864314-2">}</span><span·class="p"·data-group-id="9202864314-1">]</span></code></pre><p>Match·all·objects·in·an·ETS·table·with·arity·&gt;·1·and·the·first·element·is419 ··</span><span·class="p"·data-group-id="7683573226-5">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="7683573226-5">]</span><span·class="p"·data-group-id="7683573226-2">}</span><span·class="p"·data-group-id="7683573226-1">]</span></code></pre><p>Match·all·objects·in·an·ETS·table·with·arity·&gt;·1·and·the·first·element·is
420 'gandalf',·and·return·element·2:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6134035373-1">[</span><span·class="p"·data-group-id="6134035373-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">420 'gandalf',·and·return·element·2:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4865118376-1">[</span><span·class="p"·data-group-id="4865118376-2">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
421 ··</span><span·class="p"·data-group-id="6134035373-3">[</span><span·class="p"·data-group-id="6134035373-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">gandalf</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·830,·SHA:·b8d90456f4d73f339c178e6d4b6257d02a55440c3ecd2907ffa01664ab5618cb·...·]-3">]</span><span·class="p">,</span><span·class="w">421 ··</span><span·class="p"·data-group-id="4865118376-3">[</span><span·class="p"·data-group-id="4865118376-4">{</span><span·class="ss">&#39;==&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">gandalf</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·830,·SHA:·f0f41738cb223e214294f35453816b288df3efb4ea763912a737ca2c196f05de·...·]-3">]</span><span·class="p">,</span><span·class="w">
422 ··</span><span·class="p"·data-group-id="6134035373-8">[</span><span·class="p"·data-group-id="6134035373-9">{</span><span·class="nb">element</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="6134035373[·...·truncated·by·diffoscope;·len:·159,·SHA:·88775143ba7ca8c1ca16421942066474ad044550d06648844b6d0e2b84019854·...·]-1">]</span></code></pre><p>In·this·example,·if·the·first·element·had·been·the·key,·it·is·much·more422 ··</span><span·class="p"·data-group-id="4865118376-8">[</span><span·class="p"·data-group-id="4865118376-9">{</span><span·class="nb">element</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="4865118376[·...·truncated·by·diffoscope;·len:·159,·SHA:·b4818f1cefc6c708bfa0bc591d29629274c6f9d051d1d51091fdc51dd9fafb6b·...·]-1">]</span></code></pre><p>In·this·example,·if·the·first·element·had·been·the·key,·it·is·much·more
423 efficient·to·match·that·key·in·the·<code·class="inline">MatchHead</code>·part·than·in·the423 efficient·to·match·that·key·in·the·<code·class="inline">MatchHead</code>·part·than·in·the
424 <code·class="inline">MatchConditions</code>·part.·The·search·space·of·the·tables·is·restricted·with424 <code·class="inline">MatchConditions</code>·part.·The·search·space·of·the·tables·is·restricted·with
425 regards·to·the·<code·class="inline">MatchHead</code>·so·that·only·objects·with·the·matching·key·are425 regards·to·the·<code·class="inline">MatchHead</code>·so·that·only·objects·with·the·matching·key·are
426 searched.</p><p>Match·tuples·of·three·elements,·where·the·second·element·is·either·<code·class="inline">'merry'</code>·or426 searched.</p><p>Match·tuples·of·three·elements,·where·the·second·element·is·either·<code·class="inline">'merry'</code>·or
427 <code·class="inline">'pippin'</code>,·and·return·the·whole·objects:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3955148690-1">[</span><span·class="p"·data-group-id="3955148690-2">{</span><span·class="p"·data-group-id="3955148690-3">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">merry</span><span·class="p">,</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·59,·SHA:·f63f49213ff4e5cc893e3ef93ffa9f35801483295ee79f985f281687bbf6be6b·...·]-3">}</span><span·class="p">,</span><span·class="w">427 <code·class="inline">'pippin'</code>,·and·return·the·whole·objects:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3552931129-1">[</span><span·class="p"·data-group-id="3552931129-2">{</span><span·class="p"·data-group-id="3552931129-3">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">merry</span><span·class="p">,</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·59,·SHA:·057c7454ffe1dfb1ad2e416b706836a52bf0ab5ed1f1cdc9ad318eaab39677cd·...·]-3">}</span><span·class="p">,</span><span·class="w">
428 ··</span><span·class="p"·data-group-id="3955148690-4">[</span><span·class="p"·data-group-id="3955148690-4">]</span><span·class="p">,</span><span·class="w">428 ··</span><span·class="p"·data-group-id="3552931129-4">[</span><span·class="p"·data-group-id="3552931129-4">]</span><span·class="p">,</span><span·class="w">
429 ··</span><span·class="p"·data-group-id="3955148690-5">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="3955148690-5">]</span><span·class="p"·data-group-id="3955148690-2">}</span><span·class="p">,</span><span·class="w">429 ··</span><span·class="p"·data-group-id="3552931129-5">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="3552931129-5">]</span><span·class="p"·data-group-id="3552931129-2">}</span><span·class="p">,</span><span·class="w">
430 ·</span><span·class="p"·data-group-id="3955148690-6">{</span><span·class="p"·data-group-id="3955148690-7">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">pippin</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="395[·...·truncated·by·diffoscope;·len:·7,·SHA:·17b7fa8b8b0d36d982c8196c266edf3844306480c1790fc21a72318025a602b6·...·]-7">}</span><span·class="p">,</span><span·class="w">430 ·</span><span·class="p"·data-group-id="3552931129-6">{</span><span·class="p"·data-group-id="3552931129-7">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">pippin</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="355[·...·truncated·by·diffoscope;·len:·7,·SHA:·200deec442199891b4e38d22bfd588b2706e15158c20976899108ed8a98cd11d·...·]-7">}</span><span·class="p">,</span><span·class="w">
431 ··</span><span·class="p"·data-group-id="3955148690-8">[</span><span·class="p"·data-group-id="3955148690-8">]</span><span·class="p">,</span><span·class="w">431 ··</span><span·class="p"·data-group-id="3552931129-8">[</span><span·class="p"·data-group-id="3552931129-8">]</span><span·class="p">,</span><span·class="w">
432 ··</span><span·class="p"·data-group-id="3955148690-9">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="3955148690-9">]</span><span·class="p"·data-group-id="3955148690-6">}</span><span·class="p"·data-group-id="3955148690-1">]</span></code></pre><p>Function·<a·href="../../../lib/stdlib-6.0.1/doc/html/ets.html#test_ms/2"><code·class="inline">ets:test_ms/2</code></a>·can·be·useful·for·testing·complicated·ETS·matches.</p>432 ··</span><span·class="p"·data-group-id="3552931129-9">[</span><span·class="ss">&#39;$_&#39;</span><span·class="p"·data-group-id="3552931129-9">]</span><span·class="p"·data-group-id="3552931129-6">}</span><span·class="p"·data-group-id="3552931129-1">]</span></code></pre><p>Function·<a·href="../../../lib/stdlib-6.0.1/doc/html/ets.html#test_ms/2"><code·class="inline">ets:test_ms/2</code></a>·can·be·useful·for·testing·complicated·ETS·matches.</p>
433 </div>433 </div>
  
434 <div·class="bottom-actions"·id="bottom-actions">434 <div·class="bottom-actions"·id="bottom-actions">
435 ··<div·class="bottom-actions-item">435 ··<div·class="bottom-actions-item">
  
436 ······<a·href="time_correction.html"·class="bottom-actions-button"·rel="prev">436 ······<a·href="time_correction.html"·class="bottom-actions-button"·rel="prev">
437 ········<span·class="subheader">437 ········<span·class="subheader">
Offset 472, 15 lines modifiedOffset 472, 15 lines modified
472 ······<p·class="built-using">472 ······<p·class="built-using">
473 ········Built·using473 ········Built·using
474 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the474 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
475 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>475 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
476 ······</p>476 ······</p>
477 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>477 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
478 ····</footer>478 ····</footer>
479 ··</div>479 ··</div>
480 </main>480 </main>
481 </div>481 </div>
482 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>482 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
483 <script>483 <script>
484 ··document.addEventListener("DOMContentLoaded",·function·()·{484 ··document.addEventListener("DOMContentLoaded",·function·()·{
730 B
html2text {}
Max HTML report size reached
41.0 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/notes.html
    
Offset 151, 25 lines modifiedOffset 151, 25 lines modified
151 </h3>151 </h3>
152 <ul><li><p>Bugs·in·how·<code·class="inline">erl·-extra</code>·interacts·with·passing·flags·via·ERL_*FLAGS·or·<code·class="inline">-args_file</code>·have·been·fixed.</p><p>Own·Id:·OTP-18766·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7639"·title="">PR-7639</a></p></li><li><p>Fixed·a·bug·that·prevented·the·emulator·from·building·on·recent·versions·of·Yocto·Linux.</p><p>Own·Id:·OTP-18918·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7952"·title="">PR-7952</a></p></li><li><p>Fixed·spectre·mitigation·configure·test·to·work·with·GCC·patches·to·always·add·<code·class="inline">-fcf-protection=full</code>.</p><p>Own·Id:·OTP-18928·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8006"·title="">PR-8006</a></p></li><li><p>A··call·to·<code·class="inline">socket:[recv|recvfrom|recvmsg]/*</code>·with·Timeout·=·0·on·Windows·could·cause·a·(case·clause)·crash·if·data·is·immediately·available.</p><p>Own·Id:·OTP-19063·Aux·Id:·OTP-18835</p></li><li><p>Fix·bug·on·Windows·where·<code·class="inline">exit_status</code>·would·not·be·sent·when·a·port·exits·after·the·stdin/stdout·handles·have·been·closed.</p><p>Own·Id:·OTP-19077·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8324"·title="">PR-8324</a></p></li></ul><h3·id="improvements-and-new-features"·class="section-heading">152 <ul><li><p>Bugs·in·how·<code·class="inline">erl·-extra</code>·interacts·with·passing·flags·via·ERL_*FLAGS·or·<code·class="inline">-args_file</code>·have·been·fixed.</p><p>Own·Id:·OTP-18766·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7639"·title="">PR-7639</a></p></li><li><p>Fixed·a·bug·that·prevented·the·emulator·from·building·on·recent·versions·of·Yocto·Linux.</p><p>Own·Id:·OTP-18918·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7952"·title="">PR-7952</a></p></li><li><p>Fixed·spectre·mitigation·configure·test·to·work·with·GCC·patches·to·always·add·<code·class="inline">-fcf-protection=full</code>.</p><p>Own·Id:·OTP-18928·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8006"·title="">PR-8006</a></p></li><li><p>A··call·to·<code·class="inline">socket:[recv|recvfrom|recvmsg]/*</code>·with·Timeout·=·0·on·Windows·could·cause·a·(case·clause)·crash·if·data·is·immediately·available.</p><p>Own·Id:·OTP-19063·Aux·Id:·OTP-18835</p></li><li><p>Fix·bug·on·Windows·where·<code·class="inline">exit_status</code>·would·not·be·sent·when·a·port·exits·after·the·stdin/stdout·handles·have·been·closed.</p><p>Own·Id:·OTP-19077·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8324"·title="">PR-8324</a></p></li></ul><h3·id="improvements-and-new-features"·class="section-heading">
153 ··<a·href="#improvements-and-new-features"·class="hover-link">153 ··<a·href="#improvements-and-new-features"·class="hover-link">
154 ····<i·class="ri-link-m"·aria-hidden="true"></i>154 ····<i·class="ri-link-m"·aria-hidden="true"></i>
155 ··</a>155 ··</a>
156 ··<span·class="text">Improvements·and·New·Features</span>156 ··<span·class="text">Improvements·and·New·Features</span>
157 </h3>157 </h3>
158 <ul><li><p>Refactored·how·the·JIT·handles·POSIX·signals·and·how·they·affect·thread·stacks,·allowing·us·to·use·the·native·stack·register·for·Erlang·stacks·on·more·platforms.</p><p>Notably,·containers·built·on·64-bit·x86·Alpine·Linux·images·will·now·perform·much·better·in·sequential·code.·As·an·example,·running·<code·class="inline">dialyzer</code>·over·the·OTP·code·base·finishes·about·15%·quicker.</p><p>Own·Id:·OTP-18568·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7174"·title="">PR-7174</a></p></li><li><p>The·<a·href="../../../lib/runtime_tools-2.1/doc/html/instrument.html"><code·class="inline">instrument</code></a>·module·can·now·track·allocations·on·a·per-process·or·per-port·basis.</p><p>Own·Id:·OTP-18577·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7236"·title="">PR-7236</a></p></li><li><p>The·<code·class="inline">pid</code>·field·returned·from·<a·href="erlang.html#fun_info/2"><code·class="inline">erlang:fun_info/1,2</code></a>·is·now·always·the·pid·for·the·<code·class="inline">init</code>·process·of·the·local·node,·not·the·pid·for·the·actual·process·that·created·the·fun.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18594·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7274"·title="">PR-7274</a></p></li><li><p>By·default,·escripts·will·now·be·compiled·instead·of·interpreted.·That·means·that·the·<code·class="inline">compiler</code>·application·must·be·installed.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18639·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7348"·title="">PR-7348</a></p></li><li><p>A·binary·returned·from·the·<a·href="../../../lib/kernel-10.0.1/doc/html/socket.html"><code·class="inline">socket</code></a>·receive·functions·is·no·longer·created·as·a·sub·binary·of·an·often·large·receive·buffer·binary·(socket·option·<code·class="inline">{otp,rcvbuf}</code>).··This·avoids·space·waste,·trusting·the·allocators·to·implement·reallocation·efficiently.</p><p>Own·Id:·OTP-18642·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/6152"·title="">GH-6152</a>,·<a·href="https://github.com/erlang/otp/pull/7465"·title="">PR-7465</a></p></li><li><p>The·default·process·limit·has·been·raised·to·<code·class="inline">1048576</code>·processes.</p><p>Own·Id:·OTP-18699·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7388"·title="">PR-7388</a></p></li><li><p>The·<a·href="erlang.html#system_monitor/2"><code·class="inline">erlang:system_monitor/2</code></a>·functionality·is·now·able·to·monitor·long·message·queues·in·the·system.</p><p>Own·Id:·OTP-18709·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7651"·title="">PR-7651</a></p></li><li><p>The·<code·class="inline">erl</code>·command·now·supports·the·<code·class="inline">-S</code>·flag,·which·is·similar·to·the·<code·class="inline">-run</code>·flag,·except·that·it·will·pass·all·arguments·up·to·end·of·the·command·line·to·the·called·function.·(The·<code·class="inline">-run</code>·flag·will·not·pass·arguments·beginning·with·a·hyphen.)·Another·difference·is·that·<code·class="inline">-S</code>·will·always·call·a·function·with·one·argument,·passing·an·empty·list·if·no·arguments·were·given.</p><p>Own·Id:·OTP-18744·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7470"·title="">PR-7470</a></p></li><li><p>When·implementing·an·alternative·carrier·for·the·Erlang·distribution,·a·separate·input·handler·process·may·now·be·registered,·using·<a·href="erlang.html#dist_ctrl_input_handler/2"><code·class="inline">erlang:dist_ctrl_input_handler/2</code></a>,·also·in·the·case·when·the·distribution·controller·is·a·port.</p><p>Own·Id:·OTP-18774·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7110"·title="">PR-7110</a></p></li><li><p>The·call·stack·trace·has·now·been·added·to·the·error·reported·by·<a·href="erlang.html#process_flag/2"><code·class="inline">erlang:process_flag/2</code></a>·when·<code·class="inline">max_heap_size</code>·limit·has·been·exceeded.</p><p>Own·Id:·OTP-18779·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7592"·title="">PR-7592</a></p></li><li><p><code·class="inline">-callback</code>·attributes·have·been·added·to·<a·href="erl_tracer.html"><code·class="inline">erl_tracer</code></a>.</p><p>Own·Id:·OTP-18794·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7703"·title="">PR-7703</a></p></li><li><p>For·<code·class="inline">inet_backend·=·socket</code>,·setting·the·<code·class="inline">active</code>·socket·option·alone,·to·<code·class="inline">once</code>,·<code·class="inline">true</code>·or·<code·class="inline">N</code>·has·been·optimized,·as·well·as·the·corresponding·data·delivery.</p><p>Own·Id:·OTP-18835</p></li><li><p>New·functions·<code·class="inline">socket:sendv/*</code>·for·sending·I/O·vectors·have·been·added.</p><p>Own·Id:·OTP-18845</p></li><li><p>Socket·options·that·take·string·now·also·accept·binaries.</p><p>Own·Id:·OTP-18849·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/6510"·title="">PR-6510</a></p></li><li><p>Native·coverage·support·has·been·implemented·in·the·JIT.·It·will··automatically·be·used·by·the·<a·href="../../../lib/tools-4.0/doc/html/cover.html"><code·class="inline">cover</code></a>·tool·to·reduce·the·execution·overhead·when·running·cover-compiled·code.</p><p>There·are·also·new·APIs·to·support·native·coverage·without·using·the·<code·class="inline">cover</code>·tool.</p><p>To·instrument·code·for·native·coverage·it·must·be·compiled·with·the·<a·href="../../../lib/compiler-8.5.1/doc/html/compile.html#line_coverage"><code·class="inline">line_coverage</code></a>·option.</p><p>To·enable·native·coverage·in·the·runtime·system,·start·it·like·so:</p><pre><code·class="text">$·erl·+JPcover·true</code></pre><p>There·are·also·the·following·new·functions·for·supporting·native·coverage:</p><ul><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#coverage_support/0"><code·class="inline">code:coverage_support/0</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage/2"><code·class="inline">code:get_coverage/2</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#reset_coverage/1"><code·class="inline">code:reset_coverage/1</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/0"><code·class="inline">code:get_coverage_mode/0</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/1"><code·class="inline">code:get_coverage_mode/1</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#set_coverage_mode/1"><code·class="inline">code:set_coverage_mode/1</code></a></li></ul><p>Own·Id:·OTP-18856·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7856"·title="">PR-7856</a></p></li><li><p>Changed·the·default·value·of·the·command·line·flag·<code·class="inline">-code_path_choice</code>·to·<code·class="inline">strict</code>.·</p><p>Note·that·for·application·systems·using·archives,·it·is·necessary·to·add·the·<code·class="inline">code_path_choice·relaxed</code>·to·the·command·line·that·invokes·<code·class="inline">erl</code>.</p><p>Own·Id:·OTP-18894·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7243"·title="">PR-7243</a></p></li><li><p>Added·module·loading·to·<code·class="inline">erl·-init_debug</code>·printouts.</p><p>Own·Id:·OTP-18929·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8004"·title="">PR-8004</a></p></li><li><p>When·the·runtime·system·halts,·it·performs·various·flush·operations·before·terminating.·By·default·there·is·no·limit·on·how·much·time·the·flush·operations·are·allowed·to·take.·A·new·<em>halt·flush·timeout</em>·functionality·has·been·introduced·which·can·be·used·for·limiting·the·amount·of·time·that·the·flushing·operations·are·allowed·to·take.·For·more·information·see·the·documentation·of·the·<a·href="erlang.html#halt_flush_timeout"><code·class="inline">flush_timeout</code></a>·option·of·the·<a·href="erlang.html#halt/2"><code·class="inline">erlang:halt/2</code></a>·BIF·and·the·documentation·of·the·<code·class="inline">erl</code>·<a·href="erl_cmd.html#+zhft"><code·class="inline">+zhft·&lt;Timeout&gt;</code></a>·command·line·flag.</p><p>Own·Id:·OTP-18938·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8035"·title="">PR-8035</a>,·<a·href="https://github.com/erlang/otp/issues/7438"·title="">GH-7438</a></p></li><li><p>Optimized·code·loading·by·moving·certain·operations·from·the·code·server·to·the·caller.</p><p>Own·Id:·OTP-18941·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7981"·title="">PR-7981</a></p></li><li><p>Updated·asmjit·to·version·a465fe71ab3d0e224b2b4bd0fac69ae68ab9239d</p><p>Own·Id:·OTP-18942</p></li><li><p>The·deprecated·functions·in·<a·href="zlib.html"><code·class="inline">zlib</code></a>·have·been·removed.·That·includes·<code·class="inline">inflateChunk/{1,2}</code>,·<code·class="inline">getBufSize/1</code>,·<code·class="inline">setBufSize/2</code>,·the·CRC32·functions,·and·the·Adler·checksum·functions.</p><p>Own·Id:·OTP-18950</p></li><li><p>The·documentation·has·been·migrated·to·use·Markdown·and·ExDoc.</p><p>Own·Id:·OTP-18955·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8026"·title="">PR-8026</a></p></li><li><p>Safe·destructive·update·of·tuples·has·been·implemented·in·the·compiler·and·runtime·system.·This·allows·the·VM·to·update·tuples·in-place·when·it·is·safe·to·do·so,·thus·improving·performance·by·doing·less·copying·but·also·by·producing·less·garbage.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="1494027746-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1494027746-2">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·111,·SHA:·2ae1087e3b4d2f0850d75d153706e652e2570004af422f1ca46726ea1152c023·...·]-1">)</span><span·class="p">.</span><span·class="w">158 <ul><li><p>Refactored·how·the·JIT·handles·POSIX·signals·and·how·they·affect·thread·stacks,·allowing·us·to·use·the·native·stack·register·for·Erlang·stacks·on·more·platforms.</p><p>Notably,·containers·built·on·64-bit·x86·Alpine·Linux·images·will·now·perform·much·better·in·sequential·code.·As·an·example,·running·<code·class="inline">dialyzer</code>·over·the·OTP·code·base·finishes·about·15%·quicker.</p><p>Own·Id:·OTP-18568·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7174"·title="">PR-7174</a></p></li><li><p>The·<a·href="../../../lib/runtime_tools-2.1/doc/html/instrument.html"><code·class="inline">instrument</code></a>·module·can·now·track·allocations·on·a·per-process·or·per-port·basis.</p><p>Own·Id:·OTP-18577·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7236"·title="">PR-7236</a></p></li><li><p>The·<code·class="inline">pid</code>·field·returned·from·<a·href="erlang.html#fun_info/2"><code·class="inline">erlang:fun_info/1,2</code></a>·is·now·always·the·pid·for·the·<code·class="inline">init</code>·process·of·the·local·node,·not·the·pid·for·the·actual·process·that·created·the·fun.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18594·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7274"·title="">PR-7274</a></p></li><li><p>By·default,·escripts·will·now·be·compiled·instead·of·interpreted.·That·means·that·the·<code·class="inline">compiler</code>·application·must·be·installed.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18639·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7348"·title="">PR-7348</a></p></li><li><p>A·binary·returned·from·the·<a·href="../../../lib/kernel-10.0.1/doc/html/socket.html"><code·class="inline">socket</code></a>·receive·functions·is·no·longer·created·as·a·sub·binary·of·an·often·large·receive·buffer·binary·(socket·option·<code·class="inline">{otp,rcvbuf}</code>).··This·avoids·space·waste,·trusting·the·allocators·to·implement·reallocation·efficiently.</p><p>Own·Id:·OTP-18642·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/6152"·title="">GH-6152</a>,·<a·href="https://github.com/erlang/otp/pull/7465"·title="">PR-7465</a></p></li><li><p>The·default·process·limit·has·been·raised·to·<code·class="inline">1048576</code>·processes.</p><p>Own·Id:·OTP-18699·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7388"·title="">PR-7388</a></p></li><li><p>The·<a·href="erlang.html#system_monitor/2"><code·class="inline">erlang:system_monitor/2</code></a>·functionality·is·now·able·to·monitor·long·message·queues·in·the·system.</p><p>Own·Id:·OTP-18709·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7651"·title="">PR-7651</a></p></li><li><p>The·<code·class="inline">erl</code>·command·now·supports·the·<code·class="inline">-S</code>·flag,·which·is·similar·to·the·<code·class="inline">-run</code>·flag,·except·that·it·will·pass·all·arguments·up·to·end·of·the·command·line·to·the·called·function.·(The·<code·class="inline">-run</code>·flag·will·not·pass·arguments·beginning·with·a·hyphen.)·Another·difference·is·that·<code·class="inline">-S</code>·will·always·call·a·function·with·one·argument,·passing·an·empty·list·if·no·arguments·were·given.</p><p>Own·Id:·OTP-18744·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7470"·title="">PR-7470</a></p></li><li><p>When·implementing·an·alternative·carrier·for·the·Erlang·distribution,·a·separate·input·handler·process·may·now·be·registered,·using·<a·href="erlang.html#dist_ctrl_input_handler/2"><code·class="inline">erlang:dist_ctrl_input_handler/2</code></a>,·also·in·the·case·when·the·distribution·controller·is·a·port.</p><p>Own·Id:·OTP-18774·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7110"·title="">PR-7110</a></p></li><li><p>The·call·stack·trace·has·now·been·added·to·the·error·reported·by·<a·href="erlang.html#process_flag/2"><code·class="inline">erlang:process_flag/2</code></a>·when·<code·class="inline">max_heap_size</code>·limit·has·been·exceeded.</p><p>Own·Id:·OTP-18779·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7592"·title="">PR-7592</a></p></li><li><p><code·class="inline">-callback</code>·attributes·have·been·added·to·<a·href="erl_tracer.html"><code·class="inline">erl_tracer</code></a>.</p><p>Own·Id:·OTP-18794·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7703"·title="">PR-7703</a></p></li><li><p>For·<code·class="inline">inet_backend·=·socket</code>,·setting·the·<code·class="inline">active</code>·socket·option·alone,·to·<code·class="inline">once</code>,·<code·class="inline">true</code>·or·<code·class="inline">N</code>·has·been·optimized,·as·well·as·the·corresponding·data·delivery.</p><p>Own·Id:·OTP-18835</p></li><li><p>New·functions·<code·class="inline">socket:sendv/*</code>·for·sending·I/O·vectors·have·been·added.</p><p>Own·Id:·OTP-18845</p></li><li><p>Socket·options·that·take·string·now·also·accept·binaries.</p><p>Own·Id:·OTP-18849·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/6510"·title="">PR-6510</a></p></li><li><p>Native·coverage·support·has·been·implemented·in·the·JIT.·It·will··automatically·be·used·by·the·<a·href="../../../lib/tools-4.0/doc/html/cover.html"><code·class="inline">cover</code></a>·tool·to·reduce·the·execution·overhead·when·running·cover-compiled·code.</p><p>There·are·also·new·APIs·to·support·native·coverage·without·using·the·<code·class="inline">cover</code>·tool.</p><p>To·instrument·code·for·native·coverage·it·must·be·compiled·with·the·<a·href="../../../lib/compiler-8.5.1/doc/html/compile.html#line_coverage"><code·class="inline">line_coverage</code></a>·option.</p><p>To·enable·native·coverage·in·the·runtime·system,·start·it·like·so:</p><pre><code·class="text">$·erl·+JPcover·true</code></pre><p>There·are·also·the·following·new·functions·for·supporting·native·coverage:</p><ul><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#coverage_support/0"><code·class="inline">code:coverage_support/0</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage/2"><code·class="inline">code:get_coverage/2</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#reset_coverage/1"><code·class="inline">code:reset_coverage/1</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/0"><code·class="inline">code:get_coverage_mode/0</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/1"><code·class="inline">code:get_coverage_mode/1</code></a></li><li><a·href="../../../lib/kernel-10.0.1/doc/html/code.html#set_coverage_mode/1"><code·class="inline">code:set_coverage_mode/1</code></a></li></ul><p>Own·Id:·OTP-18856·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7856"·title="">PR-7856</a></p></li><li><p>Changed·the·default·value·of·the·command·line·flag·<code·class="inline">-code_path_choice</code>·to·<code·class="inline">strict</code>.·</p><p>Note·that·for·application·systems·using·archives,·it·is·necessary·to·add·the·<code·class="inline">code_path_choice·relaxed</code>·to·the·command·line·that·invokes·<code·class="inline">erl</code>.</p><p>Own·Id:·OTP-18894·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7243"·title="">PR-7243</a></p></li><li><p>Added·module·loading·to·<code·class="inline">erl·-init_debug</code>·printouts.</p><p>Own·Id:·OTP-18929·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8004"·title="">PR-8004</a></p></li><li><p>When·the·runtime·system·halts,·it·performs·various·flush·operations·before·terminating.·By·default·there·is·no·limit·on·how·much·time·the·flush·operations·are·allowed·to·take.·A·new·<em>halt·flush·timeout</em>·functionality·has·been·introduced·which·can·be·used·for·limiting·the·amount·of·time·that·the·flushing·operations·are·allowed·to·take.·For·more·information·see·the·documentation·of·the·<a·href="erlang.html#halt_flush_timeout"><code·class="inline">flush_timeout</code></a>·option·of·the·<a·href="erlang.html#halt/2"><code·class="inline">erlang:halt/2</code></a>·BIF·and·the·documentation·of·the·<code·class="inline">erl</code>·<a·href="erl_cmd.html#+zhft"><code·class="inline">+zhft·&lt;Timeout&gt;</code></a>·command·line·flag.</p><p>Own·Id:·OTP-18938·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8035"·title="">PR-8035</a>,·<a·href="https://github.com/erlang/otp/issues/7438"·title="">GH-7438</a></p></li><li><p>Optimized·code·loading·by·moving·certain·operations·from·the·code·server·to·the·caller.</p><p>Own·Id:·OTP-18941·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7981"·title="">PR-7981</a></p></li><li><p>Updated·asmjit·to·version·a465fe71ab3d0e224b2b4bd0fac69ae68ab9239d</p><p>Own·Id:·OTP-18942</p></li><li><p>The·deprecated·functions·in·<a·href="zlib.html"><code·class="inline">zlib</code></a>·have·been·removed.·That·includes·<code·class="inline">inflateChunk/{1,2}</code>,·<code·class="inline">getBufSize/1</code>,·<code·class="inline">setBufSize/2</code>,·the·CRC32·functions,·and·the·Adler·checksum·functions.</p><p>Own·Id:·OTP-18950</p></li><li><p>The·documentation·has·been·migrated·to·use·Markdown·and·ExDoc.</p><p>Own·Id:·OTP-18955·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8026"·title="">PR-8026</a></p></li><li><p>Safe·destructive·update·of·tuples·has·been·implemented·in·the·compiler·and·runtime·system.·This·allows·the·VM·to·update·tuples·in-place·when·it·is·safe·to·do·so,·thus·improving·performance·by·doing·less·copying·but·also·by·producing·less·garbage.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3958532638-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3958532638-2">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·111,·SHA:·740f09446693d27398e394c723a7ce03728aec172e9414e21ef09b978be101e4·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
159 </span><span·class="nf">update</span><span·class="p"·data-group-id="1494027746-3">(</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="1494027746-4">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">needs_update</span><span·class="p">,</span><span·class="ss">b</s[·...·truncated·by·diffoscope;·len:·195,·SHA:·eb0ef589d061181507d3a38988f1a778b1af3678c754fda947498ab86e421fea·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">159 </span><span·class="nf">update</span><span·class="p"·data-group-id="3958532638-3">(</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3958532638-4">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">needs_update</span><span·class="p">,</span><span·class="ss">b</s[·...·truncated·by·diffoscope;·len:·195,·SHA:·4deac628d0bffd51ab9544f46e15a03b860e811f8146568f1b4864a3965f0d3f·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
160 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">R0</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="1494027746-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">up_to_date</span><span·class="p"·data-group-id="1494027746-5">}</span><span·class="p">,</span><span·class="w">160 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">R0</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3958532638-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">up_to_date</span><span·class="p"·data-group-id="3958532638-5">}</span><span·class="p">,</span><span·class="w">
161 ····</span><span·class="k">if</span><span·class="w">161 ····</span><span·class="k">if</span><span·class="w">
162 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">162 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
163 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="1494027746-6">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">negative</span><span·class="p"·data-group-id="1494027746-6">}</span><span·class="p">;</span><span·class="w">163 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3958532638-6">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">negative</span><span·class="p"·data-group-id="3958532638-6">}</span><span·class="p">;</span><span·class="w">
164 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">164 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
165 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="1494027746-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">zero</span><span·class="p"·data-group-id="1494027746-7">}</span><span·class="p">;</span><span·class="w">165 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3958532638-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">zero</span><span·class="p"·data-group-id="3958532638-7">}</span><span·class="p">;</span><span·class="w">
166 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">166 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
167 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="1494027746-8">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">positive</span><span·class="p"·data-group-id="1494027746-8">}</span><span·class="w">167 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3958532638-8">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">positive</span><span·class="p"·data-group-id="3958532638-8">}</span><span·class="w">
168 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·record·updates·in·each·of·the·three·clauses·of·the·<code·class="inline">if</code>·can·safely·be·done·in-place,·because·variable·<code·class="inline">R</code>·is·not·used·again.</p><p>Own·Id:·OTP-18972·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8090"·title="">PR-8090</a></p></li><li><p>The·obsolete·and·undocumented·support·for·opening·a·port·to·an·external168 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·record·updates·in·each·of·the·three·clauses·of·the·<code·class="inline">if</code>·can·safely·be·done·in-place,·because·variable·<code·class="inline">R</code>·is·not·used·again.</p><p>Own·Id:·OTP-18972·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8090"·title="">PR-8090</a></p></li><li><p>The·obsolete·and·undocumented·support·for·opening·a·port·to·an·external
169 resource·by·passing·an·atom·(or·a·string)·as·first·argument·to169 resource·by·passing·an·atom·(or·a·string)·as·first·argument·to
170 <a·href="erlang.html#open_port/2"><code·class="inline">open_port()</code></a>,·implemented·by·the·vanilla·driver,170 <a·href="erlang.html#open_port/2"><code·class="inline">open_port()</code></a>,·implemented·by·the·vanilla·driver,
171 has·been·removed.·This·feature·has·been·scheduled·for·removal·in·OTP·27171 has·been·removed.·This·feature·has·been·scheduled·for·removal·in·OTP·27
172 since·the·release·of·OTP·26.</p><p>Own·Id:·OTP-18976·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7125"·title="">PR-7125</a></p></li><li><p>An·optional·NIF·callback·<code·class="inline">ERL_NIF_OPT_ON_UNLOAD_THREAD</code>·to·be·called·by·all·scheduler·threads·when·a·NIF·library·is·unloaded.·Used·for·releasing·thread·specific·data.·Can·be·set·with·function·<code·class="inline">enif_set_option</code>.</p><p>Own·Id:·OTP-18977·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7809"·title="">PR-7809</a></p></li><li><p>There·is·a·new·module·<a·href="../../../lib/kernel-10.0.1/doc/html/trace.html"><code·class="inline">trace</code></a>·in·Kernel·providing·the·same·trace·functionality·as·<a·href="erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·and·<a·href="erlang.html#trace_pattern/3"><code·class="inline">erlang:trace_pattern/3</code></a>,·but·with·the·addition·of·<strong>dynamic·isolated·trace·sessions</strong>.</p><p>Own·Id:·OTP-18980</p></li><li><p>Added·the·<code·class="inline">+MMlp·on|off</code>·emulator·option·to·let·the·<code·class="inline">mseg</code>·allocator·use·&quot;large·pages&quot;·(sometimes·known·as·&quot;huge·pages&quot;·or·&quot;super·pages&quot;).·This·currently·only·affects·super-carrier·allocations,·but·may·be·extended·in·the·future.</p><p>Own·Id:·OTP-18984·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7977"·title="">PR-7977</a></p></li><li><p><code·class="inline">inet_backend·=·socket</code>·has·been·optimized·and·reworked·to·be·more·compatible·with·the·original·<code·class="inline">inet_backend·=·inet</code>.</p><p>Own·Id:·OTP-19004·Aux·Id:·OTP-18835</p></li><li><p>The·<code·class="inline">socket</code>·documentation·has·been·reworked,·and·due·to172 since·the·release·of·OTP·26.</p><p>Own·Id:·OTP-18976·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7125"·title="">PR-7125</a></p></li><li><p>An·optional·NIF·callback·<code·class="inline">ERL_NIF_OPT_ON_UNLOAD_THREAD</code>·to·be·called·by·all·scheduler·threads·when·a·NIF·library·is·unloaded.·Used·for·releasing·thread·specific·data.·Can·be·set·with·function·<code·class="inline">enif_set_option</code>.</p><p>Own·Id:·OTP-18977·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7809"·title="">PR-7809</a></p></li><li><p>There·is·a·new·module·<a·href="../../../lib/kernel-10.0.1/doc/html/trace.html"><code·class="inline">trace</code></a>·in·Kernel·providing·the·same·trace·functionality·as·<a·href="erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·and·<a·href="erlang.html#trace_pattern/3"><code·class="inline">erlang:trace_pattern/3</code></a>,·but·with·the·addition·of·<strong>dynamic·isolated·trace·sessions</strong>.</p><p>Own·Id:·OTP-18980</p></li><li><p>Added·the·<code·class="inline">+MMlp·on|off</code>·emulator·option·to·let·the·<code·class="inline">mseg</code>·allocator·use·&quot;large·pages&quot;·(sometimes·known·as·&quot;huge·pages&quot;·or·&quot;super·pages&quot;).·This·currently·only·affects·super-carrier·allocations,·but·may·be·extended·in·the·future.</p><p>Own·Id:·OTP-18984·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7977"·title="">PR-7977</a></p></li><li><p><code·class="inline">inet_backend·=·socket</code>·has·been·optimized·and·reworked·to·be·more·compatible·with·the·original·<code·class="inline">inet_backend·=·inet</code>.</p><p>Own·Id:·OTP-19004·Aux·Id:·OTP-18835</p></li><li><p>The·<code·class="inline">socket</code>·documentation·has·been·reworked,·and·due·to
173 that·a·few·details·were·fixed:</p><ul><li><a·href="../../../lib/kernel-10.0.1/doc/html/socket.html#is_supported/1"><code·class="inline">socket:is_supported/1</code></a>·now·returns·<code·class="inline">true</code>·for·example·for·<code·class="inline">protocols</code>173 that·a·few·details·were·fixed:</p><ul><li><a·href="../../../lib/kernel-10.0.1/doc/html/socket.html#is_supported/1"><code·class="inline">socket:is_supported/1</code></a>·now·returns·<code·class="inline">true</code>·for·example·for·<code·class="inline">protocols</code>
174 that·is·a·&quot;category&quot;,·not·an·item.</li><li><a·href="../../../lib/kernel-10.0.1/doc/html/socket.html#cancel_monitor/1"><code·class="inline">socket:cancel_monitor/1</code></a>·no·longer·badargs·for·a·monitor·that·was·set·by174 that·is·a·&quot;category&quot;,·not·an·item.</li><li><a·href="../../../lib/kernel-10.0.1/doc/html/socket.html#cancel_monitor/1"><code·class="inline">socket:cancel_monitor/1</code></a>·no·longer·badargs·for·a·monitor·that·was·set·by
Offset 2951, 17 lines modifiedOffset 2951, 17 lines modified
2951 markedly·so·when·the·maximum·number·of·file·descriptors·has·been·tuned·to·a2951 markedly·so·when·the·maximum·number·of·file·descriptors·has·been·tuned·to·a
2952 large·number.</p><p>Instead,·in·erl_child_setup,·walk·the·open·descriptors·under·<code·class="inline">/dev/fd</code>·and2952 large·number.</p><p>Instead,·in·erl_child_setup,·walk·the·open·descriptors·under·<code·class="inline">/dev/fd</code>·and
2953 close·only·those·which·are·open.</p><p>This·optimization·affects·the·CPU·usage·of·starting·a·new·Erlang·instance.</p><p>Own·Id:·OTP-16270</p></li><li><p>Optimized·<a·href="../../../lib/stdlib-6.0.1/doc/html/maps.html#merge/2"><code·class="inline">maps:merge/2</code></a>·for·trivial·cases·of·an·empty·map(s)·or·same·map.</p><p>Own·Id:·OTP-16283·Aux·Id:·PR-2441</p></li><li><p>The·new·experimental·<code·class="inline">socket</code>·module·has·been·moved·to·the·Kernel·application.</p><p>Own·Id:·OTP-16312</p></li><li><p>Improved·the·presentation·of·allocations·and·carriers·in·the·<code·class="inline">instrument</code>2953 close·only·those·which·are·open.</p><p>This·optimization·affects·the·CPU·usage·of·starting·a·new·Erlang·instance.</p><p>Own·Id:·OTP-16270</p></li><li><p>Optimized·<a·href="../../../lib/stdlib-6.0.1/doc/html/maps.html#merge/2"><code·class="inline">maps:merge/2</code></a>·for·trivial·cases·of·an·empty·map(s)·or·same·map.</p><p>Own·Id:·OTP-16283·Aux·Id:·PR-2441</p></li><li><p>The·new·experimental·<code·class="inline">socket</code>·module·has·been·moved·to·the·Kernel·application.</p><p>Own·Id:·OTP-16312</p></li><li><p>Improved·the·presentation·of·allocations·and·carriers·in·the·<code·class="inline">instrument</code>
2954 module.</p><p>Own·Id:·OTP-16327</p></li><li><p>As·announced·in·OTP·22.0,·the·previously·existing·limited·support·for·VxWorks2954 module.</p><p>Own·Id:·OTP-16327</p></li><li><p>As·announced·in·OTP·22.0,·the·previously·existing·limited·support·for·VxWorks
2955 has·now·been·removed.</p><p>*<strong>·POTENTIAL·INCOMPATIBILITY·*</strong></p><p>Own·Id:·OTP-16329·Aux·Id:·OTP-15621</p></li><li><p>The·return·value·when·using·the·<code·class="inline">httph</code>·and·<code·class="inline">httph_bin</code>·option·to2955 has·now·been·removed.</p><p>*<strong>·POTENTIAL·INCOMPATIBILITY·*</strong></p><p>Own·Id:·OTP-16329·Aux·Id:·OTP-15621</p></li><li><p>The·return·value·when·using·the·<code·class="inline">httph</code>·and·<code·class="inline">httph_bin</code>·option·to
2956 <a·href="erlang.html#decode_packet/3"><code·class="inline">erlang:decode_packet/3</code></a>·and·<a·href="../../../lib/kernel-10.0.1/doc/html/inet.html#setopts/2"><code·class="inline">inet:setopts/2</code></a>·has·been·changed·to·also·include2956 <a·href="erlang.html#decode_packet/3"><code·class="inline">erlang:decode_packet/3</code></a>·and·<a·href="../../../lib/kernel-10.0.1/doc/html/inet.html#setopts/2"><code·class="inline">inet:setopts/2</code></a>·has·been·changed·to·also·include
2957 the·original·header·unmodified.·See·<a·href="erlang.html#decode_packet/3"><code·class="inline">erlang:decode_packet/3</code></a>.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">2957 the·original·header·unmodified.·See·<a·href="erlang.html#decode_packet/3"><code·class="inline">erlang:decode_packet/3</code></a>.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">
2958 ······</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">decode_packet</span><span·class="p"·data-group-id="2210455420-1">(</span><span·class="ss">httph_bin</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;HELLO:2958 ······</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">decode_packet</span><span·class="p"·data-group-id="6858280800-1">(</span><span·class="ss">httph_bin</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;HELLO:
2959 ······hi\r\n\r\n&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="2210455420-2">[</span><span·class="p"·data-group-id="2210455420-2">]</span><span·class="p"·data-group-id="2210455420-1">)</span><span·class="p">.</span><span·class="w"> 
2960 ······</span><span·class="p"·data-group-id="2210455420-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2210455420-4">{</span><span·class="ss">http_header</span><span·class="p">,</span><span·class="mi">0</span><span·cla[·...·truncated·by·diffoscope;·len:·869,·SHA:·4d20504747ea819eaddfc4625fe96c5519433a7c19786fbee88b0c8afadb1af9·...·]2959 ······hi\r\n\r\n&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="6858280800-2">[</span><span·class="p"·data-group-id="6858280800-2">]</span><span·class="p"·data-group-id="6858280800-1">)</span><span·class="p">.</[·...·truncated·by·diffoscope;·len:·21,·SHA:·78b1a156e10952154f26e1d976fad02ac43b745d603415a01a6fdf73eaa3dbb0·...·]
 2960 ······</span><span·class="p"·data-group-id="6858280800-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6858280800-4">{</span><span·class="ss">http_header</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Hello&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;HELLO&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;hi&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6858280800-4">}</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;\r\n&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6858280800-3">}</span></code></pre><p>Own·Id:·OTP-16347·Aux·Id:·PR-2466</p></li><li><p>Ensure·<a·href="../../../lib/kernel-10.0.1/doc/html/net_kernel.html#monitor_nodes/1"><code·class="inline">net_kernel:monitor_nodes/1</code></a>·sends·<code·class="inline">nodedown</code>·messages·of·a·failed
2961 connection·before·<code·class="inline">nodeup</code>·messages·of·a·reestablished·connection·toward·the2961 connection·before·<code·class="inline">nodeup</code>·messages·of·a·reestablished·connection·toward·the
2962 same·node.</p><p>Own·Id:·OTP-16362</p></li><li><p>Update·of·<a·href="../../../lib/kernel-10.0.1/doc/html/seq_trace.html#whatis">sequential·tracing</a>·to·also·support·other2962 same·node.</p><p>Own·Id:·OTP-16362</p></li><li><p>Update·of·<a·href="../../../lib/kernel-10.0.1/doc/html/seq_trace.html#whatis">sequential·tracing</a>·to·also·support·other
2963 information·transfers·than·message·passing.</p><p>Own·Id:·OTP-16370·Aux·Id:·OTP-15251,·OTP-15232</p></li><li><p>socket:·It·is·now·possible·to·create·a·socket·from·an·already·existing·file2963 information·transfers·than·message·passing.</p><p>Own·Id:·OTP-16370·Aux·Id:·OTP-15251,·OTP-15232</p></li><li><p>socket:·It·is·now·possible·to·create·a·socket·from·an·already·existing·file
2964 descriptor.</p><p>Own·Id:·OTP-16398·Aux·Id:·ERL-1154</p></li><li><p>socket:·The·socket:supports/1·function·now·also·report·if·netns·is·supported2964 descriptor.</p><p>Own·Id:·OTP-16398·Aux·Id:·ERL-1154</p></li><li><p>socket:·The·socket:supports/1·function·now·also·report·if·netns·is·supported
2965 or·not.</p><p>Own·Id:·OTP-16432</p></li><li><p><code·class="inline">=:=</code>·has·been·optimized·to·return·<code·class="inline">false</code>·immediately·when·comparing·two·maps2965 or·not.</p><p>Own·Id:·OTP-16432</p></li><li><p><code·class="inline">=:=</code>·has·been·optimized·to·return·<code·class="inline">false</code>·immediately·when·comparing·two·maps
2966 of·different·sizes.</p><p>Own·Id:·OTP-16454</p></li><li><p>Changed·the·behaviour·of·passing·the·<code·class="inline">erl</code>·command·line·argument2966 of·different·sizes.</p><p>Own·Id:·OTP-16454</p></li><li><p>Changed·the·behaviour·of·passing·the·<code·class="inline">erl</code>·command·line·argument
2967 <a·href="erl_cmd.html#async_thread_pool_size"><code·class="inline">+A·0</code></a>·to·silently·imply·<code·class="inline">+A·1</code>.·That·is,2967 <a·href="erl_cmd.html#async_thread_pool_size"><code·class="inline">+A·0</code></a>·to·silently·imply·<code·class="inline">+A·1</code>.·That·is,
Offset 10668, 20 lines modifiedOffset 10668, 20 lines modified
10668 <ul><li><p>Previously·<a·href="erlang.html#unlink/1"><code·class="inline">unlink/1</code></a>·and·<a·href="erlang.html#demonitor/2"><code·class="inline">erlang:demonitor/2</code></a>·behaved10668 <ul><li><p>Previously·<a·href="erlang.html#unlink/1"><code·class="inline">unlink/1</code></a>·and·<a·href="erlang.html#demonitor/2"><code·class="inline">erlang:demonitor/2</code></a>·behaved
10669 completely·asynchronous.·This·had·one·undesirable·effect,·though.·You·could10669 completely·asynchronous.·This·had·one·undesirable·effect,·though.·You·could
10670 never·know·when·you·were·guaranteed·<em>not</em>·to·be·affected·by·a·link·that·you10670 never·know·when·you·were·guaranteed·<em>not</em>·to·be·affected·by·a·link·that·you
10671 had·unlinked·or·a·monitor·that·you·had·demonitored.</p><p>The·new·behavior·of·<a·href="erlang.html#unlink/1"><code·class="inline">unlink/1</code></a>·and·<a·href="erlang.html#demonitor/2"><code·class="inline">erlang:demonitor/2</code></a>·can·be10671 had·unlinked·or·a·monitor·that·you·had·demonitored.</p><p>The·new·behavior·of·<a·href="erlang.html#unlink/1"><code·class="inline">unlink/1</code></a>·and·<a·href="erlang.html#demonitor/2"><code·class="inline">erlang:demonitor/2</code></a>·can·be
10672 viewed·as·two·operations·performed·atomically.·Asynchronously·send·an·unlink10672 viewed·as·two·operations·performed·atomically.·Asynchronously·send·an·unlink
10673 signal·or·a·demonitor·signal,·and·ignore·any·future·results·of·the·link·or10673 signal·or·a·demonitor·signal,·and·ignore·any·future·results·of·the·link·or
10674 monitor.</p><p><em>NOTE</em>:·This·change·can·cause·some·obscure·code·to·fail·which·previously·did10674 monitor.</p><p><em>NOTE</em>:·This·change·can·cause·some·obscure·code·to·fail·which·previously·did
10675 not.·For·example,·the·following·code·might·hang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">············</span><span·class="n">Mon</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monitor</span><span·class="p"·data-group-id="2237877386-1">(</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="2237877386-1">)</span><span·class="p">,</span><span·class="w">10675 not.·For·example,·the·following·code·might·hang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">············</span><span·class="n">Mon</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monitor</span><span·class="p"·data-group-id="1682006247-1">(</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="1682006247-1">)</span><span·class="p">,</span><span·class="w">
10676 ············</span><span·class="c1">%%·...</span><span·class="w">10676 ············</span><span·class="c1">%%·...</span><span·class="w">
10677 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="2237877386-2">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bang</span><span·class="p"·data-group-id="2237877386-2">)</span><span·class="p">,</span><span·class="w">10677 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="1682006247-2">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bang</span><span·class="p"·data-group-id="1682006247-2">)</span><span·class="p">,</span><span·class="w">
10678 ············</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="2237877386-3">(</span><span·class="n">Mon</span><span·class="p"·data-group-id="2237877386-3">)</span><span·class="p">,</span><span·class="w">10678 ············</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="1682006247-3">(</span><span·class="n">Mon</span><span·class="p"·data-group-id="1682006247-3">)</span><span·class="p">,</span><span·class="w">
10679 ············</span><span·class="k">receive</span><span·class="w">10679 ············</span><span·class="k">receive</span><span·class="w">
10680 ················</span><span·class="p"·data-group-id="2237877386-4">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mon</span><span·class="w">·</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">process</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·168,·SHA:·d93e2eabae9d43411fd2a769e1226b5f1541b5daa8f54d9d42f67564883e907c·...·]-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">10680 ················</span><span·class="p"·data-group-id="1682006247-4">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mon</span><span·class="w">·</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">process</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·168,·SHA:·502491d931230f46dbbf8bb607850d540b1ed18231d748731fb7783d84e51934·...·]-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">
10681 ············</span><span·class="c1">%%·We·were·previously·guaranteed·to·get·a·down·message</span><span·class="w">10681 ············</span><span·class="c1">%%·We·were·previously·guaranteed·to·get·a·down·message</span><span·class="w">
10682 ············</span><span·class="c1">%%·(since·we·exited·the·process·ourself),·so·we·could</span><span·class="w">10682 ············</span><span·class="c1">%%·(since·we·exited·the·process·ourself),·so·we·could</span><span·class="w">
10683 ············</span><span·class="c1">%%·in·this·case·leave·out:</span><span·class="w">10683 ············</span><span·class="c1">%%·in·this·case·leave·out:</span><span·class="w">
10684 ············</span><span·class="c1">%%·after·0·-&gt;·ok</span><span·class="w">10684 ············</span><span·class="c1">%%·after·0·-&gt;·ok</span><span·class="w">
10685 ············</span><span·class="k">end</span><span·class="p">,</span></code></pre><p>*<strong>·POTENTIAL·INCOMPATIBILITY·*</strong></p><p>Own·Id:·OTP-5772</p></li><li><p>Two·bugs·fixed:·If·the·environment·variable·<code·class="inline">ERL_FLAGS</code>·was·set,·its·contents10685 ············</span><span·class="k">end</span><span·class="p">,</span></code></pre><p>*<strong>·POTENTIAL·INCOMPATIBILITY·*</strong></p><p>Own·Id:·OTP-5772</p></li><li><p>Two·bugs·fixed:·If·the·environment·variable·<code·class="inline">ERL_FLAGS</code>·was·set,·its·contents
10686 would·be·appended·to·the·end·of·the·command·line·even·if·the·command·line·had10686 would·be·appended·to·the·end·of·the·command·line·even·if·the·command·line·had
10687 an·<code·class="inline">-extra</code>·options.·Changed·to·place·the·options·from·<code·class="inline">ERL_FLAGS</code>·just·before10687 an·<code·class="inline">-extra</code>·options.·Changed·to·place·the·options·from·<code·class="inline">ERL_FLAGS</code>·just·before
Offset 11227, 15 lines modifiedOffset 11227, 15 lines modified
11227 ······<p·class="built-using">11227 ······<p·class="built-using">
11228 ········Built·using11228 ········Built·using
11229 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the11229 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
11230 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>11230 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
11231 ······</p>11231 ······</p>
11232 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>11232 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
11233 ····</footer>11233 ····</footer>
11234 ··</div>11234 ··</div>
11235 </main>11235 </main>
11236 </div>11236 </div>
11237 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>11237 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
11238 <script>11238 <script>
11239 ··document.addEventListener("DOMContentLoaded",·function·()·{11239 ··document.addEventListener("DOMContentLoaded",·function·()·{
603 B
html2text {}
Max HTML report size reached
4.89 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/persistent_term.html
    
Offset 196, 17 lines modifiedOffset 196, 17 lines modified
196 ····<i·class="ri-link-m"·aria-hidden="true"></i>196 ····<i·class="ri-link-m"·aria-hidden="true"></i>
197 ··</a>197 ··</a>
198 ··<span·class="text">Example</span>198 ··<span·class="text">Example</span>
199 </h2>199 </h2>
200 <p>The·following·example·shows·how·lock·contention·for·ETS·tables·can·be·minimized200 <p>The·following·example·shows·how·lock·contention·for·ETS·tables·can·be·minimized
201 by·having·one·ETS·table·for·each·scheduler.·The·table·identifiers·for·the·ETS201 by·having·one·ETS·table·for·each·scheduler.·The·table·identifiers·for·the·ETS
202 tables·are·stored·as·a·single·persistent·term:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="c1">%%·There·is·one·ETS·table·for·each·scheduler.</span><span·class="w">202 tables·are·stored·as·a·single·persistent·term:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="c1">%%·There·is·one·ETS·table·for·each·scheduler.</span><span·class="w">
203 ····</span><span·class="n">Sid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="5370218480-1">(</span><span·class="ss">scheduler_id</span><span·class="p"·data-group-id="5370218480-1">)</span><span·class="p">,</span><span·class="w">203 ····</span><span·class="n">Sid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="3300150264-1">(</span><span·class="ss">scheduler_id</span><span·class="p"·data-group-id="3300150264-1">)</span><span·class="p">,</span><span·class="w">
204 ····</span><span·class="n">Tid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="5370218480-2">(</span><span·class="n">Sid</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">persistent_term</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="5370218480-3">(</span><span·class="o">?[·...·truncated·by·diffoscope;·len:·130,·SHA:·022f7dcb48b3216cc808c9bb5711b363f21dcd65857eb2e0def7eae699cd0283·...·]-2">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="n">Tid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="3300150264-2">(</span><span·class="n">Sid</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">persistent_term</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="3300150264-3">(</span><span·class="o">?[·...·truncated·by·diffoscope;·len:·130,·SHA:·5216518aa5174f1e9090a3496be26613233e814f07d784409aac7c0174f6facc·...·]-2">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">update_counter</span><span·class="p"·data-group-id="5370218480-4">(</span><span·class="n">Tid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="5370218480-4">)</span><span·class="p">.</span></code></pre>205 ····</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">update_counter</span><span·class="p"·data-group-id="3300150264-4">(</span><span·class="n">Tid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="3300150264-4">)</span><span·class="p">.</span></code></pre>
206 ····</section>206 ····</section>
  
207 </div>207 </div>
  
208 ··<section·id="summary"·class="details-list">208 ··<section·id="summary"·class="details-list">
209 ····<h1·class="section-heading">209 ····<h1·class="section-heading">
210 ······<a·class="hover-link"·href="#summary">210 ······<a·class="hover-link"·href="#summary">
Offset 609, 15 lines modifiedOffset 609, 15 lines modified
609 ······<p·class="built-using">609 ······<p·class="built-using">
610 ········Built·using610 ········Built·using
611 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the611 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
612 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>612 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
613 ······</p>613 ······</p>
614 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>614 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
615 ····</footer>615 ····</footer>
616 ··</div>616 ··</div>
617 </main>617 </main>
618 </div>618 </div>
619 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>619 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
620 <script>620 <script>
621 ··document.addEventListener("DOMContentLoaded",·function·()·{621 ··document.addEventListener("DOMContentLoaded",·function·()·{
680 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/portsignals.html
    
Offset 399, 15 lines modifiedOffset 399, 15 lines modified
399 ······<p·class="built-using">399 ······<p·class="built-using">
400 ········Built·using400 ········Built·using
401 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the401 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
402 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>402 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
403 ······</p>403 ······</p>
404 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>404 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
405 ····</footer>405 ····</footer>
406 ··</div>406 ··</div>
407 </main>407 </main>
408 </div>408 </div>
409 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>409 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
410 <script>410 <script>
411 ··document.addEventListener("DOMContentLoaded",·function·()·{411 ··document.addEventListener("DOMContentLoaded",·function·()·{
710 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/processmanagementoptimizations.html
    
Offset 320, 15 lines modifiedOffset 320, 15 lines modified
320 ······<p·class="built-using">320 ······<p·class="built-using">
321 ········Built·using321 ········Built·using
322 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the322 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
323 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>323 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
324 ······</p>324 ······</p>
325 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>325 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
326 ····</footer>326 ····</footer>
327 ··</div>327 ··</div>
328 </main>328 </main>
329 </div>329 </div>
330 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>330 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
331 <script>331 <script>
332 ··document.addEventListener("DOMContentLoaded",·function·()·{332 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/ptables.html
    
Offset 456, 15 lines modifiedOffset 456, 15 lines modified
456 ······<p·class="built-using">456 ······<p·class="built-using">
457 ········Built·using457 ········Built·using
458 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the458 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
459 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>459 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
460 ······</p>460 ······</p>
461 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>461 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
462 ····</footer>462 ····</footer>
463 ··</div>463 ··</div>
464 </main>464 </main>
465 </div>465 </div>
466 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>466 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
467 <script>467 <script>
468 ··document.addEventListener("DOMContentLoaded",·function·()·{468 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
1.36 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/run_erl_cmd.html
    
Offset 247, 15 lines modifiedOffset 247, 15 lines modified
247 ······<p·class="built-using">247 ······<p·class="built-using">
248 ········Built·using248 ········Built·using
249 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the249 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
250 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>250 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
251 ······</p>251 ······</p>
252 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>252 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
253 ····</footer>253 ····</footer>
254 ··</div>254 ··</div>
255 </main>255 </main>
256 </div>256 </div>
257 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>257 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
258 <script>258 <script>
259 ··document.addEventListener("DOMContentLoaded",·function·()·{259 ··document.addEventListener("DOMContentLoaded",·function·()·{
557 B
html2text {}
Max HTML report size reached
1.2 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/search.html
    
Offset 137, 15 lines modifiedOffset 137, 15 lines modified
137 ······<p·class="built-using">137 ······<p·class="built-using">
138 ········Built·using138 ········Built·using
139 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the139 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
140 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>140 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
141 ······</p>141 ······</p>
142 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>142 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
143 ····</footer>143 ····</footer>
144 ··</div>144 ··</div>
145 </main>145 </main>
146 </div>146 </div>
147 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>147 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
148 <script>148 <script>
149 ··document.addEventListener("DOMContentLoaded",·function·()·{149 ··document.addEventListener("DOMContentLoaded",·function·()·{
398 B
html2text {}
Max HTML report size reached
1.38 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/start_cmd.html
    
Offset 184, 15 lines modifiedOffset 184, 15 lines modified
184 ······<p·class="built-using">184 ······<p·class="built-using">
185 ········Built·using185 ········Built·using
186 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the186 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
187 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>187 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
188 ······</p>188 ······</p>
189 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>189 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
190 ····</footer>190 ····</footer>
191 ··</div>191 ··</div>
192 </main>192 </main>
193 </div>193 </div>
194 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>194 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
195 <script>195 <script>
196 ··document.addEventListener("DOMContentLoaded",·function·()·{196 ··document.addEventListener("DOMContentLoaded",·function·()·{
579 B
html2text {}
Max HTML report size reached
1.33 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/start_erl_cmd.html
    
Offset 230, 15 lines modifiedOffset 230, 15 lines modified
230 ······<p·class="built-using">230 ······<p·class="built-using">
231 ········Built·using231 ········Built·using
232 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the232 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
233 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>233 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
234 ······</p>234 ······</p>
235 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>235 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
236 ····</footer>236 ····</footer>
237 ··</div>237 ··</div>
238 </main>238 </main>
239 </div>239 </div>
240 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>240 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
241 <script>241 <script>
242 ··document.addEventListener("DOMContentLoaded",·function·()·{242 ··document.addEventListener("DOMContentLoaded",·function·()·{
523 B
html2text {}
Max HTML report size reached
5.11 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/supercarrier.html
    
Offset 225, 20 lines modifiedOffset 225, 20 lines modified
225 (alloc_util·and·the·different·strategies).·However,·that·would·not·be225 (alloc_util·and·the·different·strategies).·However,·that·would·not·be
226 as·straight·forward·as·one·can·think·and·can·also·waste·quite·a·lot·of226 as·straight·forward·as·one·can·think·and·can·also·waste·quite·a·lot·of
227 memory·as·it·uses·prepended·block·headers.·The·granularity·of·the227 memory·as·it·uses·prepended·block·headers.·The·granularity·of·the
228 super·carrier·is·one·memory·page·(usually·4kb).·We·want·to·allocate228 super·carrier·is·one·memory·page·(usually·4kb).·We·want·to·allocate
229 and·free·entire·pages·and·we·don't·want·to·waste·an·entire·page·just229 and·free·entire·pages·and·we·don't·want·to·waste·an·entire·page·just
230 to·hold·the·block·header·of·the·following·pages.</p><p>Instead·we·store·the·meta·information·about·all·the·free·segments·in·a230 to·hold·the·block·header·of·the·following·pages.</p><p>Instead·we·store·the·meta·information·about·all·the·free·segments·in·a
231 dedicated·area·apart·from·the·<code·class="inline">sa</code>·and·<code·class="inline">sua</code>·areas.·Every·free·segment·is231 dedicated·area·apart·from·the·<code·class="inline">sa</code>·and·<code·class="inline">sua</code>·areas.·Every·free·segment·is
232 represented·by·a·descriptor·struct·(<code·class="inline">ErtsFreeSegDesc</code>).</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">typedef</span><span·class="w">·</span><span·class="ss">struct</span><span·class="w">·</span><span·class="p"·data-group-id="5139445116-1">{</span><span·class="w">232 represented·by·a·descriptor·struct·(<code·class="inline">ErtsFreeSegDesc</code>).</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">typedef</span><span·class="w">·</span><span·class="ss">struct</span><span·class="w">·</span><span·class="p"·data-group-id="7711882698-1">{</span><span·class="w">
233 ····</span><span·class="n">RBTNode</span><span·class="w">·</span><span·class="ss">snode</span><span·class="p">;</span><span·class="w">······</span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="nb">node</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">&#39;stree&#39;</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">233 ····</span><span·class="n">RBTNode</span><span·class="w">·</span><span·class="ss">snode</span><span·class="p">;</span><span·class="w">······</span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="nb">node</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">&#39;stree&#39;</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">
234 ····</span><span·class="n">RBTNode</span><span·class="w">·</span><span·class="ss">anode</span><span·class="p">;</span><span·class="w">······</span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="nb">node</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">&#39;atree&#39;</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">234 ····</span><span·class="n">RBTNode</span><span·class="w">·</span><span·class="ss">anode</span><span·class="p">;</span><span·class="w">······</span><span·class="o">/</span><span·class="o">*</span><span·class="w">·</span><span·class="nb">node</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">&#39;atree&#39;</span><span·class="w">·</span><span·class="o">*</span><span·class="o">/</span><span·class="w">
235 ····</span><span·class="ss">char</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">start</span><span·class="p">;</span><span·class="w">235 ····</span><span·class="ss">char</span><span·class="o">*</span><span·class="w">·</span><span·class="ss">start</span><span·class="p">;</span><span·class="w">
236 ····</span><span·class="ss">char</span><span·class="o">*</span><span·class="w">·</span><span·class="k">end</span><span·class="p">;</span><span·class="w">236 ····</span><span·class="ss">char</span><span·class="o">*</span><span·class="w">·</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
237 </span><span·class="p"·data-group-id="5139445116-1">}</span><span·class="n">ErtsFreeSegDesc</span><span·class="p">;</span></code></pre><p>To·find·the·smallest·free·segment·that·will·satisfy·a·carrier·allocation237 </span><span·class="p"·data-group-id="7711882698-1">}</span><span·class="n">ErtsFreeSegDesc</span><span·class="p">;</span></code></pre><p>To·find·the·smallest·free·segment·that·will·satisfy·a·carrier·allocation
238 (best·fit),·the·free·segments·are·organized·in·a·tree·sorted·by238 (best·fit),·the·free·segments·are·organized·in·a·tree·sorted·by
239 size·(<code·class="inline">stree</code>).·We·search·in·this·tree·at·allocation.·If·no·free·segment·of239 size·(<code·class="inline">stree</code>).·We·search·in·this·tree·at·allocation.·If·no·free·segment·of
240 sufficient·size·was·found,·the·area·(<code·class="inline">sa</code>·or·<code·class="inline">sua</code>)·is·instead·expanded.240 sufficient·size·was·found,·the·area·(<code·class="inline">sa</code>·or·<code·class="inline">sua</code>)·is·instead·expanded.
241 If·two·or·more·free·segments·with·equal·size·exist,·the·one·at·lowest241 If·two·or·more·free·segments·with·equal·size·exist,·the·one·at·lowest
242 address·is·chosen·for·<code·class="inline">sa</code>·and·highest·address·for·<code·class="inline">sua</code>.</p><p>At·carrier·deallocation,·we·want·to·coalesce·with·any·adjacent·free242 address·is·chosen·for·<code·class="inline">sa</code>·and·highest·address·for·<code·class="inline">sua</code>.</p><p>At·carrier·deallocation,·we·want·to·coalesce·with·any·adjacent·free
243 segments,·to·form·one·large·free·segment.·To·do·that,·all·free243 segments,·to·form·one·large·free·segment.·To·do·that,·all·free
244 segments·are·also·organized·in·a·tree·sorted·in·address·order·(<code·class="inline">atree</code>).</p><p>So,·in·total·we·keep·four·trees·of·free·descriptors·for·the·super244 segments·are·also·organized·in·a·tree·sorted·in·address·order·(<code·class="inline">atree</code>).</p><p>So,·in·total·we·keep·four·trees·of·free·descriptors·for·the·super
Offset 317, 15 lines modifiedOffset 317, 15 lines modified
317 ······<p·class="built-using">317 ······<p·class="built-using">
318 ········Built·using318 ········Built·using
319 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the319 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
320 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>320 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
321 ······</p>321 ······</p>
322 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>322 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
323 ····</footer>323 ····</footer>
324 ··</div>324 ··</div>
325 </main>325 </main>
326 </div>326 </div>
327 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>327 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
328 <script>328 <script>
329 ··document.addEventListener("DOMContentLoaded",·function·()·{329 ··document.addEventListener("DOMContentLoaded",·function·()·{
720 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/threadprogress.html
    
Offset 422, 15 lines modifiedOffset 422, 15 lines modified
422 ······<p·class="built-using">422 ······<p·class="built-using">
423 ········Built·using423 ········Built·using
424 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the424 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
425 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>425 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
426 ······</p>426 ······</p>
427 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>427 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
428 ····</footer>428 ····</footer>
429 ··</div>429 ··</div>
430 </main>430 </main>
431 </div>431 </div>
432 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>432 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
433 <script>433 <script>
434 ··document.addEventListener("DOMContentLoaded",·function·()·{434 ··document.addEventListener("DOMContentLoaded",·function·()·{
616 B
html2text {}
Max HTML report size reached
5.73 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/time_correction.html
    
Offset 543, 17 lines modifiedOffset 543, 17 lines modified
543 the·event·occurs.</p></blockquote><blockquote><h4·class="tip">Do</h4><p>Determine·the·order·of·events·by·saving·the·integer·returned·by543 the·event·occurs.</p></blockquote><blockquote><h4·class="tip">Do</h4><p>Determine·the·order·of·events·by·saving·the·integer·returned·by
544 <a·href="erlang.html#unique_integer/1"><code·class="inline">erlang:unique_integer([monotonic])</code></a>·when·the544 <a·href="erlang.html#unique_integer/1"><code·class="inline">erlang:unique_integer([monotonic])</code></a>·when·the
545 event·occurs.·These·integers·are·strictly·monotonically·ordered·on·current545 event·occurs.·These·integers·are·strictly·monotonically·ordered·on·current
546 runtime·system·instance·corresponding·to·creation·time.</p></blockquote><h4>Determine·Order·of·Events·with·Time·of·the·Event</h4><blockquote><h4·class="error">Dont</h4><p>Determine·the·order·of·events·by·saving·a·time·stamp·with·<a·href="erlang.html#now/0"><code·class="inline">erlang:now/0</code></a>·when546 runtime·system·instance·corresponding·to·creation·time.</p></blockquote><h4>Determine·Order·of·Events·with·Time·of·the·Event</h4><blockquote><h4·class="error">Dont</h4><p>Determine·the·order·of·events·by·saving·a·time·stamp·with·<a·href="erlang.html#now/0"><code·class="inline">erlang:now/0</code></a>·when
547 the·event·occurs.</p></blockquote><blockquote><h4·class="tip">Do</h4><p>Determine·the·order·of·events·by·saving·a·tuple·containing547 the·event·occurs.</p></blockquote><blockquote><h4·class="tip">Do</h4><p>Determine·the·order·of·events·by·saving·a·tuple·containing
548 <a·href="erlang.html#monotonic_time/0">monotonic·time</a>·and·a548 <a·href="erlang.html#monotonic_time/0">monotonic·time</a>·and·a
549 <a·href="erlang.html#unique_integer/1">strictly·monotonically·increasing·integer</a>·as549 <a·href="erlang.html#unique_integer/1">strictly·monotonically·increasing·integer</a>·as
550 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Time</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monotonic_time</span><span·class="p"·data-group-id="4281715718-1">(</span><span·class="p"·data-group-id="4281715718-1">)</span><span·class="p">,</span><span·class="w">550 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Time</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monotonic_time</span><span·class="p"·data-group-id="4911456459-1">(</span><span·class="p"·data-group-id="4911456459-1">)</span><span·class="p">,</span><span·class="w">
551 </span><span·class="n">UMI</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">unique_integer</span><span·class="p"·data-group-id="4281715718-2">(</span><span·class="p"·data-group-id="4281715718-3">[</span><span·class="ss">monotonic</span><span·class="p"·data-group-id="4281715718-3">]</span><span·class="p"·data-group-id="4281715718-2">)</span><span·class="p">,</span><span·class="w">551 </span><span·class="n">UMI</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">unique_integer</span><span·class="p"·data-group-id="4911456459-2">(</span><span·class="p"·data-group-id="4911456459-3">[</span><span·class="ss">monotonic</span><span·class="p"·data-group-id="4911456459-3">]</span><span·class="p"·data-group-id="4911456459-2">)</span><span·class="p">,</span><span·class="w">
552 </span><span·class="n">EventTag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4281715718-4">{</span><span·class="n">Time</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UMI</span><span·class="p"·data-group-id="4281715718-4">}</span></code></pre><p>These·tuples·are·strictly·monotonically·ordered·on·the·current·runtime·system552 </span><span·class="n">EventTag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4911456459-4">{</span><span·class="n">Time</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UMI</span><span·class="p"·data-group-id="4911456459-4">}</span></code></pre><p>These·tuples·are·strictly·monotonically·ordered·on·the·current·runtime·system
553 instance·according·to·creation·time.·It·is·important·that·the·monotonic·time553 instance·according·to·creation·time.·It·is·important·that·the·monotonic·time
554 is·in·the·first·element·(the·most·significant·element·when·comparing554 is·in·the·first·element·(the·most·significant·element·when·comparing
555 two-tuples).·Using·the·monotonic·time·in·the·tuples,·you·can·calculate·time555 two-tuples).·Using·the·monotonic·time·in·the·tuples,·you·can·calculate·time
556 between·events.</p><p>If·you·are·interested·in·Erlang·system·time·at·the·time·when·the·event556 between·events.</p><p>If·you·are·interested·in·Erlang·system·time·at·the·time·when·the·event
557 occurred,·you·can·also·save·the·time·offset·before·or·after·saving·the·events557 occurred,·you·can·also·save·the·time·offset·before·or·after·saving·the·events
558 using·<a·href="erlang.html#time_offset/0"><code·class="inline">erlang:time_offset/0</code></a>.·Erlang·monotonic·time·added·with·the·time·offset558 using·<a·href="erlang.html#time_offset/0"><code·class="inline">erlang:time_offset/0</code></a>.·Erlang·monotonic·time·added·with·the·time·offset
559 corresponds·to·Erlang·system·time.</p><p>If·you·are·executing·in·a·mode·where·time·offset·can·change,·and·you·want·to559 corresponds·to·Erlang·system·time.</p><p>If·you·are·executing·in·a·mode·where·time·offset·can·change,·and·you·want·to
Offset 624, 15 lines modifiedOffset 624, 15 lines modified
624 ······<p·class="built-using">624 ······<p·class="built-using">
625 ········Built·using625 ········Built·using
626 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the626 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
627 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>627 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
628 ······</p>628 ······</p>
629 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>629 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
630 ····</footer>630 ····</footer>
631 ··</div>631 ··</div>
632 </main>632 </main>
633 </div>633 </div>
634 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>634 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
635 <script>635 <script>
636 ··document.addEventListener("DOMContentLoaded",·function·()·{636 ··document.addEventListener("DOMContentLoaded",·function·()·{
823 B
html2text {}
Max HTML report size reached
7.67 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/tracing.html
    
Offset 145, 31 lines modifiedOffset 145, 31 lines modified
145 on·functions·that·never·return,·as·each·call·pushes·a·frame·that·will145 on·functions·that·never·return,·as·each·call·pushes·a·frame·that·will
146 never·be·removed.</p><p>Another·limitation·is·that·since·the·breakpoint·is·in·the·<em>callee</em>·and·not146 never·be·removed.</p><p>Another·limitation·is·that·since·the·breakpoint·is·in·the·<em>callee</em>·and·not
147 the·<em>caller</em>,·we're·limited·to·the·information·we·have·on·function·ingress.147 the·<em>caller</em>,·we're·limited·to·the·information·we·have·on·function·ingress.
148 This·means·that·we·can't·actually·tell·who·called·us:·since·we're·limited148 This·means·that·we·can't·actually·tell·who·called·us:·since·we're·limited
149 to·inspecting·the·stack·we·can·only·say·where·we're·<em>going·to·return·to</em>,149 to·inspecting·the·stack·we·can·only·say·where·we're·<em>going·to·return·to</em>,
150 which·is·not·quite·the·same·thing.</p><p>As·an·illustration,·when·the·<code·class="inline">caller</code>·option·is·enabled·all·trace·messages150 which·is·not·quite·the·same·thing.</p><p>As·an·illustration,·when·the·<code·class="inline">caller</code>·option·is·enabled·all·trace·messages
151 from·<code·class="inline">bar/1</code>··will·say·that·they·were·called·from·<code·class="inline">foo/0</code>,·even·though·it151 from·<code·class="inline">bar/1</code>··will·say·that·they·were·called·from·<code·class="inline">foo/0</code>,·even·though·it
152 went·through·a·bunch·of·other·functions·on·the·way:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="9205657611-1">(</span><span·class="p"·data-group-id="9205657611-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">152 went·through·a·bunch·of·other·functions·on·the·way:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">foo</span><span·class="p"·data-group-id="3375090833-1">(</span><span·class="p"·data-group-id="3375090833-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
153 ····</span><span·class="nf">lots</span><span·class="p"·data-group-id="9205657611-2">(</span><span·class="p"·data-group-id="9205657611-2">)</span><span·class="p">,</span><span·class="w">153 ····</span><span·class="nf">lots</span><span·class="p"·data-group-id="3375090833-2">(</span><span·class="p"·data-group-id="3375090833-2">)</span><span·class="p">,</span><span·class="w">
154 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">154 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
155 </span><span·class="nf">lots</span><span·class="p"·data-group-id="9205657611-3">(</span><span·class="p"·data-group-id="9205657611-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">155 </span><span·class="nf">lots</span><span·class="p"·data-group-id="3375090833-3">(</span><span·class="p"·data-group-id="3375090833-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
156 ····</span><span·class="nf">&#39;of&#39;</span><span·class="p"·data-group-id="9205657611-4">(</span><span·class="p"·data-group-id="9205657611-4">)</span><span·class="p">.</span><span·class="w">156 ····</span><span·class="nf">&#39;of&#39;</span><span·class="p"·data-group-id="3375090833-4">(</span><span·class="p"·data-group-id="3375090833-4">)</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">&#39;of&#39;</span><span·class="p"·data-group-id="9205657611-5">(</span><span·class="p"·data-group-id="9205657611-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 </span><span·class="nf">&#39;of&#39;</span><span·class="p"·data-group-id="3375090833-5">(</span><span·class="p"·data-group-id="3375090833-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ····</span><span·class="nf">indirections</span><span·class="p"·data-group-id="9205657611-6">(</span><span·class="p"·data-group-id="9205657611-6">)</span><span·class="p">.</span><span·class="w">158 ····</span><span·class="nf">indirections</span><span·class="p"·data-group-id="3375090833-6">(</span><span·class="p"·data-group-id="3375090833-6">)</span><span·class="p">.</span><span·class="w">
  
159 </span><span·class="nf">indirections</span><span·class="p"·data-group-id="9205657611-7">(</span><span·class="p"·data-group-id="9205657611-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">159 </span><span·class="nf">indirections</span><span·class="p"·data-group-id="3375090833-7">(</span><span·class="p"·data-group-id="3375090833-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
160 ····</span><span·class="nf">bar</span><span·class="p"·data-group-id="9205657611-8">(</span><span·class="mi">10</span><span·class="p"·data-group-id="9205657611-8">)</span><span·class="p">.</span><span·class="w">160 ····</span><span·class="nf">bar</span><span·class="p"·data-group-id="3375090833-8">(</span><span·class="mi">10</span><span·class="p"·data-group-id="3375090833-8">)</span><span·class="p">.</span><span·class="w">
  
161 </span><span·class="nf">bar</span><span·class="p"·data-group-id="9205657611-9">(</span><span·class="mi">0</span><span·class="p"·data-group-id="9205657611-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">161 </span><span·class="nf">bar</span><span·class="p"·data-group-id="3375090833-9">(</span><span·class="mi">0</span><span·class="p"·data-group-id="3375090833-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 ····</span><span·class="ss">done</span><span·class="p">;</span><span·class="w">162 ····</span><span·class="ss">done</span><span·class="p">;</span><span·class="w">
163 </span><span·class="nf">bar</span><span·class="p"·data-group-id="9205657611-10">(</span><span·class="n">N</span><span·class="p"·data-group-id="9205657611-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">163 </span><span·class="nf">bar</span><span·class="p"·data-group-id="3375090833-10">(</span><span·class="n">N</span><span·class="p"·data-group-id="3375090833-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
164 ····</span><span·class="nf">bar</span><span·class="p"·data-group-id="9205657611-11">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="9205657611-11">)</span><span·class="p">.</span></code></pre><h3·id="export-tracing"·class="section-heading">164 ····</span><span·class="nf">bar</span><span·class="p"·data-group-id="3375090833-11">(</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="3375090833-11">)</span><span·class="p">.</span></code></pre><h3·id="export-tracing"·class="section-heading">
165 ··<a·href="#export-tracing"·class="hover-link">165 ··<a·href="#export-tracing"·class="hover-link">
166 ····<i·class="ri-link-m"·aria-hidden="true"></i>166 ····<i·class="ri-link-m"·aria-hidden="true"></i>
167 ··</a>167 ··</a>
168 ··<span·class="text">Export·tracing</span>168 ··<span·class="text">Export·tracing</span>
169 </h3>169 </h3>
170 <p>In·the·interpreter,·breakpoints·are·set·inside·the·code·trampoline·for170 <p>In·the·interpreter,·breakpoints·are·set·inside·the·code·trampoline·for
171 export·entries,·and·their·address·vector·is·updated·to·point·to·them.171 export·entries,·and·their·address·vector·is·updated·to·point·to·them.
Offset 386, 15 lines modifiedOffset 386, 15 lines modified
386 ······<p·class="built-using">386 ······<p·class="built-using">
387 ········Built·using387 ········Built·using
388 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the388 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
389 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>389 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
390 ······</p>390 ······</p>
391 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>391 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
392 ····</footer>392 ····</footer>
393 ··</div>393 ··</div>
394 </main>394 </main>
395 </div>395 </div>
396 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>396 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
397 <script>397 <script>
398 ··document.addEventListener("DOMContentLoaded",·function·()·{398 ··document.addEventListener("DOMContentLoaded",·function·()·{
698 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/tty.html
    
Offset 191, 15 lines modifiedOffset 191, 15 lines modified
191 ······<p·class="built-using">191 ······<p·class="built-using">
192 ········Built·using192 ········Built·using
193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
195 ······</p>195 ······</p>
196 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>196 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
197 ····</footer>197 ····</footer>
198 ··</div>198 ··</div>
199 </main>199 </main>
200 </div>200 </div>
201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
202 <script>202 <script>
203 ··document.addEventListener("DOMContentLoaded",·function·()·{203 ··document.addEventListener("DOMContentLoaded",·function·()·{
623 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/werl_cmd.html
    
Offset 196, 15 lines modifiedOffset 196, 15 lines modified
196 ······<p·class="built-using">196 ······<p·class="built-using">
197 ········Built·using197 ········Built·using
198 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the198 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
199 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>199 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
200 ······</p>200 ······</p>
201 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>201 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
202 ····</footer>202 ····</footer>
203 ··</div>203 ··</div>
204 </main>204 </main>
205 </div>205 </div>
206 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>206 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
207 <script>207 <script>
208 ··document.addEventListener("DOMContentLoaded",·function·()·{208 ··document.addEventListener("DOMContentLoaded",·function·()·{
630 B
html2text {}
Max HTML report size reached
39.3 KB
./usr/share/doc/erlang-doc/html/erts-15.0.1/doc/html/zlib.html
    
Offset 129, 26 lines modifiedOffset 129, 26 lines modified
  
129 ····<section·id="moduledoc">129 ····<section·id="moduledoc">
130 <p>zlib·compression·interface.</p><p>This·module·provides·an·API·for·the·zlib·library130 <p>zlib·compression·interface.</p><p>This·module·provides·an·API·for·the·zlib·library
131 (<a·href="http://www.zlib.net">www.zlib.net</a>).·It·is·used·to·compress·and·decompress131 (<a·href="http://www.zlib.net">www.zlib.net</a>).·It·is·used·to·compress·and·decompress
132 data.·The·data·format·is·described·by132 data.·The·data·format·is·described·by
133 <a·href="https://www.ietf.org/rfc/rfc1950.txt">RFC·1950</a>,133 <a·href="https://www.ietf.org/rfc/rfc1950.txt">RFC·1950</a>,
134 <a·href="https://www.ietf.org/rfc/rfc1951.txt">RFC·1951</a>,·and134 <a·href="https://www.ietf.org/rfc/rfc1951.txt">RFC·1951</a>,·and
135 <a·href="https://www.ietf.org/rfc/rfc1952.txt">RFC·1952</a>.</p><p>A·typical·(compress)·usage·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Z</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="2966853614-1">(</span><span·class="p"·data-group-id="2966853614-1">)</span><span·class="p">,</span><span·class="w">135 <a·href="https://www.ietf.org/rfc/rfc1952.txt">RFC·1952</a>.</p><p>A·typical·(compress)·usage·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Z</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="8017059371-1">(</span><span·class="p"·data-group-id="8017059371-1">)</span><span·class="p">,</span><span·class="w">
136 </span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflateInit</span><span·class="p"·data-group-id="2966853614-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="ss">default</span><span·class="p"·data-group-id="2966853614-2">)</span><span·class="p">,</span><span·class="w">136 </span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflateInit</span><span·class="p"·data-group-id="8017059371-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="ss">default</span><span·class="p"·data-group-id="8017059371-2">)</span><span·class="p">,</span><span·class="w">
  
137 </span><span·class="n">Compress</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="2966853614-3">(</span><span·class="ss">end_of_data</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Cont</span><span·class="p"·data-group-id="2966853614-3">)</span><span·class="w">·</span><span·class="p">-&gt;</[·...·truncated·by·diffoscope;·len:·123,·SHA:·1a2ae6709061649745b9e428b7ed02789a019344e4de84759e6bc14eb73dfc1e·...·]-4">]</span><span·class="p">;</span><span·class="w">137 </span><span·class="n">Compress</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8017059371-3">(</span><span·class="ss">end_of_data</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Cont</span><span·class="p"·data-group-id="8017059371-3">)</span><span·class="w">·</span><span·class="p">-&gt;</[·...·truncated·by·diffoscope;·len:·123,·SHA:·75f94532e89f1aef55ae11f02eaf68c2eed2cf8f38f7083100ce9ae8ca17d3ca·...·]-4">]</span><span·class="p">;</span><span·class="w">
138 ··············</span><span·class="p"·data-group-id="2966853614-5">(</span><span·class="n">Data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cont</span><span·class="p"·data-group-id="2966853614-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">138 ··············</span><span·class="p"·data-group-id="8017059371-5">(</span><span·class="n">Data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cont</span><span·class="p"·data-group-id="8017059371-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
139 ·················</span><span·class="p"·data-group-id="2966853614-6">[</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="2966853614-7">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span[·...·truncated·by·diffoscope;·len:·436,·SHA:·79c6ad40c10d605f14f6247c3b56183ddee241c50f5ebdc52cd02f4ff23d1ff0·...·]-6">]</span><span·class="w">139 ·················</span><span·class="p"·data-group-id="8017059371-6">[</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="8017059371-7">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span[·...·truncated·by·diffoscope;·len:·436,·SHA:·23e9e52f9c376a57eafef97fbeab25d24cc19a77f2bce5561c3414288be9b086·...·]-6">]</span><span·class="w">
140 ···········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">140 ···········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
141 </span><span·class="n">Compressed</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Compress</span><span·class="p"·data-group-id="2966853614-10">(</span><span·class="n">Read</span><span·class="p"·data-group-id="2966853614-11">(</span><span·class="p"·data-group-id="2966853614-11">)</span><span·class="p">,</span><span·class="n">Compress</span><span·class="p"·data-group-id="2966853614-10">)</span><span·class="p">,</span><span·class="w">141 </span><span·class="n">Compressed</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Compress</span><span·class="p"·data-group-id="8017059371-10">(</span><span·class="n">Read</span><span·class="p"·data-group-id="8017059371-11">(</span><span·class="p"·data-group-id="8017059371-11">)</span><span·class="p">,</span><span·class="n">Compress</span><span·class="p"·data-group-id="8017059371-10">)</span><span·class="p">,</span><span·class="w">
142 </span><span·class="n">Last</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="2966853614-12">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2966853614-13">[</span><span·class="p"·data-group-id="2966853614-13">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·66,·SHA:·de93b11fa401b0578f11190a14eb4386f8f8812987ce0facf7a31b9e1b0d077d·...·]-12">)</span><span·class="p">,</span><span·class="w">142 </span><span·class="n">Last</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="8017059371-12">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8017059371-13">[</span><span·class="p"·data-group-id="8017059371-13">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·66,·SHA:·0e54beaa41260c4129a8fb4d193779b13119fb54f02ec1db0cabcc9cb18a22c5·...·]-12">)</span><span·class="p">,</span><span·class="w">
143 </span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflateEnd</span><span·class="p"·data-group-id="2966853614-14">(</span><span·class="n">Z</span><span·class="p"·data-group-id="2966853614-14">)</span><span·class="p">,</span><span·class="w">143 </span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflateEnd</span><span·class="p"·data-group-id="8017059371-14">(</span><span·class="n">Z</span><span·class="p"·data-group-id="8017059371-14">)</span><span·class="p">,</span><span·class="w">
144 </span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="2966853614-15">(</span><span·class="n">Z</span><span·class="p"·data-group-id="2966853614-15">)</span><span·class="p">,</span><span·class="w">144 </span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="8017059371-15">(</span><span·class="n">Z</span><span·class="p"·data-group-id="8017059371-15">)</span><span·class="p">,</span><span·class="w">
145 </span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="2966853614-16">(</span><span·class="p"·data-group-id="2966853614-17">[</span><span·class="n">Compressed</span><span·class="p">|</span><span·class="n">Last</span><span·class="p"·data-group-id="2966853614-17">]</span><span·class="p"·data-group-id="2966853614-16">)</span></code></pre><p>In·all·functions·errors,·<code·class="inline">{'EXIT',{Reason,Backtrace}}</code>,·can·be·thrown,·where145 </span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="8017059371-16">(</span><span·class="p"·data-group-id="8017059371-17">[</span><span·class="n">Compressed</span><span·class="p">|</span><span·class="n">Last</span><span·class="p"·data-group-id="8017059371-17">]</span><span·class="p"·data-group-id="8017059371-16">)</span></code></pre><p>In·all·functions·errors,·<code·class="inline">{'EXIT',{Reason,Backtrace}}</code>,·can·be·thrown,·where
146 <code·class="inline">Reason</code>·describes·the·error.</p><p>Typical·<code·class="inline">Reason</code>s:</p><ul><li><p><strong><code·class="inline">badarg</code></strong>·-·Bad·argument.</p></li><li><p><strong><code·class="inline">not_initialized</code></strong>·-·The·stream·hasn't·been·initialized,·eg.·if146 <code·class="inline">Reason</code>·describes·the·error.</p><p>Typical·<code·class="inline">Reason</code>s:</p><ul><li><p><strong><code·class="inline">badarg</code></strong>·-·Bad·argument.</p></li><li><p><strong><code·class="inline">not_initialized</code></strong>·-·The·stream·hasn't·been·initialized,·eg.·if
147 <a·href="#inflateInit/1"><code·class="inline">inflateInit/1</code></a>·wasn't·called·prior·to·a·call·to·<a·href="#inflate/2"><code·class="inline">inflate/2</code></a>.</p></li><li><p><strong><code·class="inline">not_on_controlling_process</code></strong>·-·The·stream·was·used·by·a·process·that147 <a·href="#inflateInit/1"><code·class="inline">inflateInit/1</code></a>·wasn't·called·prior·to·a·call·to·<a·href="#inflate/2"><code·class="inline">inflate/2</code></a>.</p></li><li><p><strong><code·class="inline">not_on_controlling_process</code></strong>·-·The·stream·was·used·by·a·process·that
148 doesn't·control·it.·Use·<a·href="#set_controlling_process/2"><code·class="inline">set_controlling_process/2</code></a>·if·you·need·to·transfer·a148 doesn't·control·it.·Use·<a·href="#set_controlling_process/2"><code·class="inline">set_controlling_process/2</code></a>·if·you·need·to·transfer·a
149 stream·to·a·different·process.</p></li><li><p><strong><code·class="inline">data_error</code></strong>·-·The·data·contains·errors.</p></li><li><p><strong><code·class="inline">stream_error</code></strong>·-·Inconsistent·stream·state.</p></li><li><p><strong><code·class="inline">{need_dictionary,Adler32}</code></strong>·-·See·<a·href="#inflate/2"><code·class="inline">inflate/2</code></a>.</p></li></ul>149 stream·to·a·different·process.</p></li><li><p><strong><code·class="inline">data_error</code></strong>·-·The·data·contains·errors.</p></li><li><p><strong><code·class="inline">stream_error</code></strong>·-·Inconsistent·stream·state.</p></li><li><p><strong><code·class="inline">{need_dictionary,Adler32}</code></strong>·-·See·<a·href="#inflate/2"><code·class="inline">inflate/2</code></a>.</p></li></ul>
150 ····</section>150 ····</section>
  
151 </div>151 </div>
Offset 849, 19 lines modifiedOffset 849, 19 lines modified
849 all·input·data·available·so·far.·Flushing·can·degrade·compression·for·some849 all·input·data·available·so·far.·Flushing·can·degrade·compression·for·some
850 compression·algorithms;·thus,·use·it·only·when·necessary.</p><p>If·<code·class="inline">Flush</code>·is·set·to·<code·class="inline">full</code>,·all·output·is·flushed·as·with·<code·class="inline">sync</code>,·and·the850 compression·algorithms;·thus,·use·it·only·when·necessary.</p><p>If·<code·class="inline">Flush</code>·is·set·to·<code·class="inline">full</code>,·all·output·is·flushed·as·with·<code·class="inline">sync</code>,·and·the
851 compression·state·is·reset·so·that·decompression·can·restart·from·this·point·if851 compression·state·is·reset·so·that·decompression·can·restart·from·this·point·if
852 previous·compressed·data·has·been·damaged·or·if·random·access·is·desired.·Using852 previous·compressed·data·has·been·damaged·or·if·random·access·is·desired.·Using
853 <code·class="inline">full</code>·too·often·can·seriously·degrade·the·compression.</p><p>If·<code·class="inline">Flush</code>·is·set·to·<code·class="inline">finish</code>,·pending·input·is·processed,·pending·output·is853 <code·class="inline">full</code>·too·often·can·seriously·degrade·the·compression.</p><p>If·<code·class="inline">Flush</code>·is·set·to·<code·class="inline">finish</code>,·pending·input·is·processed,·pending·output·is
854 flushed,·and·<a·href="#deflate/3"><code·class="inline">deflate/3</code></a>·returns.·Afterwards·the·only·possible854 flushed,·and·<a·href="#deflate/3"><code·class="inline">deflate/3</code></a>·returns.·Afterwards·the·only·possible
855 operations·on·the·stream·are·<a·href="#deflateReset/1"><code·class="inline">deflateReset/1</code></a>·or·<a·href="#deflateEnd/1"><code·class="inline">deflateEnd/1</code></a>.</p><p><code·class="inline">Flush</code>·can·be·set·to·<code·class="inline">finish</code>·immediately·after855 operations·on·the·stream·are·<a·href="#deflateReset/1"><code·class="inline">deflateReset/1</code></a>·or·<a·href="#deflateEnd/1"><code·class="inline">deflateEnd/1</code></a>.</p><p><code·class="inline">Flush</code>·can·be·set·to·<code·class="inline">finish</code>·immediately·after
856 <a·href="#deflateInit/1"><code·class="inline">deflateInit</code></a>·if·all·compression·is·to·be·done·in·one·step.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflateInit</span><span·class="p"·data-group-id="9862941119-1">(</span><span·class="n">Z</span><span·class="p"·data-group-id="9862941119-1">)</span><span·class="p">,</span><span·class="w">856 <a·href="#deflateInit/1"><code·class="inline">deflateInit</code></a>·if·all·compression·is·to·be·done·in·one·step.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflateInit</span><span·class="p"·data-group-id="0893857857-1">(</span><span·class="n">Z</span><span·class="p"·data-group-id="0893857857-1">)</span><span·class="p">,</span><span·class="w">
857 </span><span·class="n">B1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="9862941119-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="9862941119-2">)</span><span·class="p">,</span><span·class="w">857 </span><span·class="n">B1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="0893857857-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="0893857857-2">)</span><span·class="p">,</span><span·class="w">
858 </span><span·class="n">B2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="9862941119-3">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="w">·</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="ss">finish</span><span·class="p"·data-group-id="9862941119-3">)</span><span·class="p">,</span><span·class="w">858 </span><span·class="n">B2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflate</span><span·class="p"·data-group-id="0893857857-3">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="w">·</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="ss">finish</span><span·class="p"·data-group-id="0893857857-3">)</span><span·class="p">,</span><span·class="w">
859 </span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflateEnd</span><span·class="p"·data-group-id="9862941119-4">(</span><span·class="n">Z</span><span·class="p"·data-group-id="9862941119-4">)</span><span·class="p">,</span><span·class="w">859 </span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">deflateEnd</span><span·class="p"·data-group-id="0893857857-4">(</span><span·class="n">Z</span><span·class="p"·data-group-id="0893857857-4">)</span><span·class="p">,</span><span·class="w">
860 </span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="9862941119-5">(</span><span·class="p"·data-group-id="9862941119-6">[</span><span·class="n">B1</span><span·class="p">,</span><span·class="n">B2</span><span·class="p"·data-group-id="9862941119-6">]</span><span·class="p"·data-group-id="9862941119-5">)</span></code></pre>860 </span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="0893857857-5">(</span><span·class="p"·data-group-id="0893857857-6">[</span><span·class="n">B1</span><span·class="p">,</span><span·class="n">B2</span><span·class="p"·data-group-id="0893857857-6">]</span><span·class="p"·data-group-id="0893857857-5">)</span></code></pre>
861 ··</section>861 ··</section>
862 </section>862 </section>
863 <section·class="detail"·id="deflateEnd/1">863 <section·class="detail"·id="deflateEnd/1">
  
864 ··<div·class="detail-header">864 ··<div·class="detail-header">
865 ····<a·href="#deflateEnd/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">865 ····<a·href="#deflateEnd/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
866 ······<i·class="ri-link-m"·aria-hidden="true"></i>866 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1405, 28 lines modifiedOffset 1405, 28 lines modified
1405 <p>Initializes·the·decompression·dictionary·from·the·specified·uncompressed·byte1405 <p>Initializes·the·decompression·dictionary·from·the·specified·uncompressed·byte
1406 sequence.</p><p>This·function·must·be·called·as·a·response·to·an·inflate·operation1406 sequence.</p><p>This·function·must·be·called·as·a·response·to·an·inflate·operation
1407 (eg.·<a·href="#safeInflate/2"><code·class="inline">safeInflate/2</code></a>)·returning·<code·class="inline">{need_dictionary,Adler,Output}</code>·or·in·the·case1407 (eg.·<a·href="#safeInflate/2"><code·class="inline">safeInflate/2</code></a>)·returning·<code·class="inline">{need_dictionary,Adler,Output}</code>·or·in·the·case
1408 of·deprecated·functions,·throwing·an1408 of·deprecated·functions,·throwing·an
1409 <code·class="inline">{'EXIT',{{need_dictionary,Adler},_StackTrace}}</code>·exception.</p><p>The·dictionary·chosen·by·the·compressor·can·be·determined·from·the·Adler·value1409 <code·class="inline">{'EXIT',{{need_dictionary,Adler},_StackTrace}}</code>·exception.</p><p>The·dictionary·chosen·by·the·compressor·can·be·determined·from·the·Adler·value
1410 returned·or·thrown·by·the·call·to·the·inflate·function.·The·compressor·and1410 returned·or·thrown·by·the·call·to·the·inflate·function.·The·compressor·and
1411 decompressor·must·use·the·same·dictionary·(See·<a·href="#deflateSetDictionary/2"><code·class="inline">deflateSetDictionary/2</code></a>).</p><p>After·setting·the·dictionary·the·inflate·operation·should·be·retried·without·new1411 decompressor·must·use·the·same·dictionary·(See·<a·href="#deflateSetDictionary/2"><code·class="inline">deflateSetDictionary/2</code></a>).</p><p>After·setting·the·dictionary·the·inflate·operation·should·be·retried·without·new
1412 input.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">deprecated_unpack</span><span·class="p"·data-group-id="4359962346-1">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Compressed</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dict</span><span·class="p"·data-group-id="4359962346-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1412 input.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">deprecated_unpack</span><span·class="p"·data-group-id="9494873861-1">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Compressed</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dict</span><span·class="p"·data-group-id="9494873861-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1413 ·····</span><span·class="k">case</span><span·class="w">·</span><span·class="k">catch</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflate</span><span·class="p"·data-group-id="4359962346-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Compressed</span><span·class="p"·data-group-id="4359962346-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">1413 ·····</span><span·class="k">case</span><span·class="w">·</span><span·class="k">catch</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflate</span><span·class="p"·data-group-id="9494873861-2">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Compressed</span><span·class="p"·data-group-id="9494873861-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
1414 ··········</span><span·class="p"·data-group-id="4359962346-3">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="4359962346-4">{</span><span·class="p"·data-group-id="4359962346-5">{</span><span·class="ss">need_dictionary</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·245,·SHA:·104f4c22d3225d17bef9451a07bbf3132c491fccf72cace6168f82d4244ad92e·...·]-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1414 ··········</span><span·class="p"·data-group-id="9494873861-3">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="9494873861-4">{</span><span·class="p"·data-group-id="9494873861-5">{</span><span·class="ss">need_dictionary</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·245,·SHA:·22fa4a0bff5843012152e9f5b57981f15b640d2b63175a53bce0432f7564cc68·...·]-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1415 ·················</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflateSetDictionary</span><span·class="p"·data-group-id="4359962346-6">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dict</span><span·class="p"·data-group-id="4359962346-6">)</span><span·class="p">,</span><span·class="w">1415 ·················</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflateSetDictionary</span><span·class="p"·data-group-id="9494873861-6">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dict</span><span·class="p"·data-group-id="9494873861-6">)</span><span·class="p">,</span><span·class="w">
1416 ·················</span><span·class="n">Uncompressed</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflate</span><span·class="p"·data-group-id="4359962346-7">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4359962346-8">[</span><span·class="p"·data-group-id="4359962346-8">]</span><span·class="p"·data-group-id="4359962346-7">)</span><span·class="p">;</span><span·class="w">1416 ·················</span><span·class="n">Uncompressed</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflate</span><span·class="p"·data-group-id="9494873861-7">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9494873861-8">[</span><span·class="p"·data-group-id="9494873861-8">]</span><span·class="p"·data-group-id="9494873861-7">)</span><span·class="p">;</span><span·class="w">
1417 ··········</span><span·class="n">Uncompressed</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1417 ··········</span><span·class="n">Uncompressed</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1418 ·················</span><span·class="n">Uncompressed</span><span·class="w">1418 ·················</span><span·class="n">Uncompressed</span><span·class="w">
1419 ·····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">1419 ·····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
1420 </span><span·class="nf">new_unpack</span><span·class="p"·data-group-id="4359962346-9">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Compressed</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dict</span><span·class="p"·data-group-id="4359962346-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1420 </span><span·class="nf">new_unpack</span><span·class="p"·data-group-id="9494873861-9">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Compressed</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dict</span><span·class="p"·data-group-id="9494873861-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1421 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflate</span><span·class="p"·data-group-id="4359962346-10">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Compressed</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4359962346-11">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·300,·SHA:·828f3cf98d520250d7bd6714336ce908dfb36d927ee5aee0522f8eede0146903·...·]-10">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">1421 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflate</span><span·class="p"·data-group-id="9494873861-10">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Compressed</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9494873861-11">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·300,·SHA:·38778499677101da918504ef9f652d109cdd3389357d3a2e782f7cbf7ca557e1·...·]-10">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
1422 ········</span><span·class="p"·data-group-id="4359962346-13">{</span><span·class="ss">need_dictionary</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">DictId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Output</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·03cbbb4d45eea1b8499daef56aa91d9902fdb0ce712b973b16bce588dd40e9c3·...·]-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1422 ········</span><span·class="p"·data-group-id="9494873861-13">{</span><span·class="ss">need_dictionary</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">DictId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Output</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·b7248a0d39e2b9825fe22680cdb8152e25d4c66c9b607754baa07e5b05820611·...·]-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1423 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflateSetDictionary</span><span·class="p"·data-group-id="4359962346-14">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dict</span><span·class="p"·data-group-id="4359962346-14">)</span><span·class="p">,</span><span·class="w">1423 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflateSetDictionary</span><span·class="p"·data-group-id="9494873861-14">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dict</span><span·class="p"·data-group-id="9494873861-14">)</span><span·class="p">,</span><span·class="w">
1424 ············</span><span·class="p"·data-group-id="4359962346-15">[</span><span·class="n">Output</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflate</span><span·class="p"·data-group-id="4359962346-16">(</[·...·truncated·by·diffoscope;·len:·280,·SHA:·5eaa20de108323e95ba8aa69dcd93e7caea325713fbd647e309ef4ba52718e25·...·]-15">]</span><span·class="p">;</span><span·class="w">1424 ············</span><span·class="p"·data-group-id="9494873861-15">[</span><span·class="n">Output</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflate</span><span·class="p"·data-group-id="9494873861-16">(</[·...·truncated·by·diffoscope;·len:·280,·SHA:·40827f73f84a158802c752adab789d59bbfe631da3cf5d24fe009f4f29ce2a8d·...·]-15">]</span><span·class="p">;</span><span·class="w">
1425 ········</span><span·class="n">Uncompressed</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1425 ········</span><span·class="n">Uncompressed</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1426 ············</span><span·class="n">Uncompressed</span><span·class="w">1426 ············</span><span·class="n">Uncompressed</span><span·class="w">
1427 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre>1427 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre>
1428 ··</section>1428 ··</section>
1429 </section>1429 </section>
1430 <section·class="detail"·id="open/0">1430 <section·class="detail"·id="open/0">
  
Offset 1494, 26 lines modifiedOffset 1494, 26 lines modified
1494 implementation-defined·threshold.·It's·useful·when·decompressing·untrusted·input1494 implementation-defined·threshold.·It's·useful·when·decompressing·untrusted·input
1495 which·could·have·been·maliciously·crafted·to·expand·until·the·system·runs·out·of1495 which·could·have·been·maliciously·crafted·to·expand·until·the·system·runs·out·of
1496 memory.</p><p>This·function·returns·<code·class="inline">{continue·|·finished,·Output}</code>,·where·Output·is·the·data1496 memory.</p><p>This·function·returns·<code·class="inline">{continue·|·finished,·Output}</code>,·where·Output·is·the·data
1497 that·was·decompressed·in·this·call.·New·input·can·be·queued·up·on·each·call·if1497 that·was·decompressed·in·this·call.·New·input·can·be·queued·up·on·each·call·if
1498 desired,·and·the·function·will·return·<code·class="inline">{finished,·Output}</code>·once·all·queued·data1498 desired,·and·the·function·will·return·<code·class="inline">{finished,·Output}</code>·once·all·queued·data
1499 has·been·decompressed.</p><p>This·function·can·introduce·some·output·latency·(reading·input·without·producing1499 has·been·decompressed.</p><p>This·function·can·introduce·some·output·latency·(reading·input·without·producing
1500 any·output).</p><p>If·a·preset·dictionary·is·required·for·further·decompression,·this·function1500 any·output).</p><p>If·a·preset·dictionary·is·required·for·further·decompression,·this·function
1501 returns·a·<code·class="inline">need_dictionary</code>·tuple.·See·<a·href="#inflateSetDictionary/2"><code·class="inline">inflateSetDictionary/2</code></a>)·for·details.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">walk</span><span·class="p"·data-group-id="3727172094-1">(</span><span·class="n">Compressed</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p"·data-group-id="3727172094-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1501 returns·a·<code·class="inline">need_dictionary</code>·tuple.·See·<a·href="#inflateSetDictionary/2"><code·class="inline">inflateSetDictionary/2</code></a>)·for·details.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">walk</span><span·class="p"·data-group-id="3453762058-1">(</span><span·class="n">Compressed</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p"·data-group-id="3453762058-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1502 ····</span><span·class="n">Z</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="3727172094-2">(</span><span·class="p"·data-group-id="3727172094-2">)</span><span·class="p">,</span><span·class="w">1502 ····</span><span·class="n">Z</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="3453762058-2">(</span><span·class="p"·data-group-id="3453762058-2">)</span><span·class="p">,</span><span·class="w">
1503 ····</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflateInit</span><span·class="p"·data-group-id="3727172094-3">(</span><span·class="n">Z</span><span·class="p"·data-group-id="3727172094-3">)</span><span·class="p">,</span><span·class="w">1503 ····</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflateInit</span><span·class="p"·data-group-id="3453762058-3">(</span><span·class="n">Z</span><span·class="p"·data-group-id="3453762058-3">)</span><span·class="p">,</span><span·class="w">
1504 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="3727172094-4">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">safeInflate</spa[·...·truncated·by·diffoscope;·len:·254,·SHA:·b297196b11287295b3e752ad34bf9b022b48ca7fc0236d26ace4af235428373f·...·]-4">)</span><span·class="p">,</span><span·class="w">1504 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="3453762058-4">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">safeInflate</spa[·...·truncated·by·diffoscope;·len:·254,·SHA:·36e8b4cefe4623d6ae11272f93e96a1643b06d7dde15d6436afaf26c8e046d6a·...·]-4">)</span><span·class="p">,</span><span·class="w">
1505 ····</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflateEnd</span><span·class="p"·data-group-id="3727172094-6">(</span><span·class="n">Z</span><span·class="p"·data-group-id="3727172094-6">)</span><span·class="p">,</span><span·class="w">1505 ····</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">inflateEnd</span><span·class="p"·data-group-id="3453762058-6">(</span><span·class="n">Z</span><span·class="p"·data-group-id="3453762058-6">)</span><span·class="p">,</span><span·class="w">
1506 ····</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="3727172094-7">(</span><span·class="n">Z</span><span·class="p"·data-group-id="3727172094-7">)</span><span·class="p">.</span><span·class="w">1506 ····</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="3453762058-7">(</span><span·class="n">Z</span><span·class="p"·data-group-id="3453762058-7">)</span><span·class="p">.</span><span·class="w">
  
1507 </span><span·class="nf">loop</span><span·class="p"·data-group-id="3727172094-8">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3727172094-9">{</span><span·class="ss">continue</span>[·...·truncated·by·diffoscope;·len:·171,·SHA:·436acd9cd80e12dbd3badf98f635c66a9f2c9868acb22526d3ac8502186cd293·...·]-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1507 </span><span·class="nf">loop</span><span·class="p"·data-group-id="3453762058-8">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3453762058-9">{</span><span·class="ss">continue</span>[·...·truncated·by·diffoscope;·len:·171,·SHA:·9cc767f42e1c93b722e2dbefa24df38ee7e4a1d25cefdc8183c2f9b1d063351d·...·]-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1508 ····</span><span·class="n">Handler</span><span·class="p"·data-group-id="3727172094-10">(</span><span·class="n">Output</span><span·class="p"·data-group-id="3727172094-10">)</span><span·class="p">,</span><span·class="w">1508 ····</span><span·class="n">Handler</span><span·class="p"·data-group-id="3453762058-10">(</span><span·class="n">Output</span><span·class="p"·data-group-id="3453762058-10">)</span><span·class="p">,</span><span·class="w">
1509 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="3727172094-11">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">safeInflate</sp[·...·truncated·by·diffoscope;·len:·332,·SHA:·366aeb856ded0827d5f25b5e6cac64401ab82fde21d9392bc79516b692578ca0·...·]-11">)</span><span·class="p">;</span><span·class="w">1509 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="3453762058-11">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">zlib</span><span·class="p">:</span><span·class="nf">safeInflate</sp[·...·truncated·by·diffoscope;·len:·332,·SHA:·f120d379230ff8466f78f188f1dc0e3af4f8380e3ea378b1228c2145fb083cef·...·]-11">)</span><span·class="p">;</span><span·class="w">
1510 </span><span·class="nf">loop</span><span·class="p"·data-group-id="3727172094-14">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3727172094-15">{</span><span·class="ss">finished</spa[·...·truncated·by·diffoscope;·len:·174,·SHA:·c581f590dca0629a206811a7b60dc9bf60f3b72126be623be0ad98f6c52a5c6f·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1510 </span><span·class="nf">loop</span><span·class="p"·data-group-id="3453762058-14">(</span><span·class="n">Z</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handler</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3453762058-15">{</span><span·class="ss">finished</spa[·...·truncated·by·diffoscope;·len:·174,·SHA:·86b5f43d87732b6db2663eb01f736bd0df5bb90f8f8ae2c88f13563b6a76ec35·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1511 ····</span><span·class="n">Handler</span><span·class="p"·data-group-id="3727172094-16">(</span><span·class="n">Output</span><span·class="p"·data-group-id="3727172094-16">)</span><span·class="p">.</span></code></pre>1511 ····</span><span·class="n">Handler</span><span·class="p"·data-group-id="3453762058-16">(</span><span·class="n">Output</span><span·class="p"·data-group-id="3453762058-16">)</span><span·class="p">.</span></code></pre>
1512 ··</section>1512 ··</section>
1513 </section>1513 </section>
1514 <section·class="detail"·id="set_controlling_process/2">1514 <section·class="detail"·id="set_controlling_process/2">
  
1515 ··<div·class="detail-header">1515 ··<div·class="detail-header">
1516 ····<a·href="#set_controlling_process/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1516 ····<a·href="#set_controlling_process/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1517 ······<i·class="ri-link-m"·aria-hidden="true"></i>1517 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1644, 15 lines modifiedOffset 1644, 15 lines modified
1644 ······<p·class="built-using">1644 ······<p·class="built-using">
1645 ········Built·using1645 ········Built·using
1646 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1646 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1647 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1647 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1648 ······</p>1648 ······</p>
1649 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1649 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1650 ····</footer>1650 ····</footer>
1651 ··</div>1651 ··</div>
1652 </main>1652 </main>
1653 </div>1653 </div>
1654 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1654 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1655 <script>1655 <script>
1656 ··document.addEventListener("DOMContentLoaded",·function·()·{1656 ··document.addEventListener("DOMContentLoaded",·function·()·{
624 B
html2text {}
Max HTML report size reached
570 B
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/.build
    
Offset 23, 12 lines modifiedOffset 23, 12 lines modified
23 dist/lato-latin-300-normal-YUMVEFOL.woff223 dist/lato-latin-300-normal-YUMVEFOL.woff2
24 dist/lato-latin-400-normal-W7754I4D.woff224 dist/lato-latin-400-normal-W7754I4D.woff2
25 dist/lato-latin-700-normal-2XVSBPG4.woff225 dist/lato-latin-700-normal-2XVSBPG4.woff2
26 dist/lato-latin-ext-300-normal-VPGGJKJL.woff226 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
27 dist/lato-latin-ext-400-normal-N27NCBWW.woff227 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
28 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff228 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
29 dist/remixicon-NKANDIL5.woff229 dist/remixicon-NKANDIL5.woff2
30 dist/search_data-29151339.js30 dist/search_data-614FD7B8.js
31 dist/sidebar_items-C28B0719.js31 dist/sidebar_items-C28B0719.js
32 index.html32 index.html
33 notes.html33 notes.html
34 search.html34 search.html
1.46 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/api-reference.html
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ······<p·class="built-using">181 ······<p·class="built-using">
182 ········Built·using182 ········Built·using
183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
185 ······</p>185 ······</p>
186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
187 ····</footer>187 ····</footer>
188 ··</div>188 ··</div>
189 </main>189 </main>
190 </div>190 </div>
191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
192 <script>192 <script>
193 ··document.addEventListener("DOMContentLoaded",·function·()·{193 ··document.addEventListener("DOMContentLoaded",·function·()·{
652 B
html2text {}
Max HTML report size reached
318 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/asn1.epub
2.97 KB
zipinfo {}
Max HTML report size reached
37.8 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
1.22 KB
OEBPS/content.opf
1.19 KB
OEBPS/content.opf
Max HTML report size reached
6.3 KB
OEBPS/asn1ct.xhtml
Max HTML report size reached
107 KB
OEBPS/asn1_spec.xhtml
Max HTML report size reached
163 KB
OEBPS/asn1_getting_started.xhtml
Max HTML report size reached
164 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/asn1_getting_started.html
Max HTML report size reached
1.59 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/asn1_introduction.html
    
Offset 199, 15 lines modifiedOffset 199, 15 lines modified
199 ······<p·class="built-using">199 ······<p·class="built-using">
200 ········Built·using200 ········Built·using
201 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the201 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
202 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>202 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
203 ······</p>203 ······</p>
204 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>204 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
205 ····</footer>205 ····</footer>
206 ··</div>206 ··</div>
207 </main>207 </main>
208 </div>208 </div>
209 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>209 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
210 <script>210 <script>
211 ··document.addEventListener("DOMContentLoaded",·function·()·{211 ··document.addEventListener("DOMContentLoaded",·function·()·{
777 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/asn1_overview.html
    
Offset 186, 15 lines modifiedOffset 186, 15 lines modified
186 ······<p·class="built-using">186 ······<p·class="built-using">
187 ········Built·using187 ········Built·using
188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
190 ······</p>190 ······</p>
191 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
192 ····</footer>192 ····</footer>
193 ··</div>193 ··</div>
194 </main>194 </main>
195 </div>195 </div>
196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
197 <script>197 <script>
198 ··document.addEventListener("DOMContentLoaded",·function·()·{198 ··document.addEventListener("DOMContentLoaded",·function·()·{
692 B
html2text {}
Max HTML report size reached
108 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/asn1_spec.html
    
Offset 161, 45 lines modifiedOffset 161, 45 lines modified
161 </h3>161 </h3>
162 <p>The·runtime·user·interface·for·exclusive·decode·comprises·the·following·two162 <p>The·runtime·user·interface·for·exclusive·decode·comprises·the·following·two
163 functions:</p><ul><li>A·function·for·an·exclusive·decode,·whose·name·the·user·decides·in·the163 functions:</p><ul><li>A·function·for·an·exclusive·decode,·whose·name·the·user·decides·in·the
164 configuration·file</li><li>A·<code·class="inline">decode_part/2</code>·function·generated·by·the·ASN.1·compiler·when164 configuration·file</li><li>A·<code·class="inline">decode_part/2</code>·function·generated·by·the·ASN.1·compiler·when
165 exclusive·decode·is·enabled.·This·function·decodes·the·parts·that165 exclusive·decode·is·enabled.·This·function·decodes·the·parts·that
166 were·left·undecoded·during·the·exclusive·decode.</li></ul><p>Both·functions·are·described·in·the·following.</p><p>If·the·exclusive·decode·function·has,·for·example,·the·name·<code·class="inline">decode_exclusive</code>166 were·left·undecoded·during·the·exclusive·decode.</li></ul><p>Both·functions·are·described·in·the·following.</p><p>If·the·exclusive·decode·function·has,·for·example,·the·name·<code·class="inline">decode_exclusive</code>
167 and·an·ASN.1·encoded·message·<code·class="inline">Bin</code>·is·to·be·exclusive·decoded,·the·call·is·as167 and·an·ASN.1·encoded·message·<code·class="inline">Bin</code>·is·to·be·exclusive·decoded,·the·call·is·as
168 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5703802869-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">ExclMessage</span><span·class="p"·data-group-id="5703802869-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;MyM[·...·truncated·by·diffoscope;·len:·201,·SHA:·63a00534b2c51a7e984fd49228867592b4245c3f70ccc35846634dfcc2477fcb·...·]-2">)</span></code></pre><p><a·href=""·id="UndecodedPart"></a>·The·result·<code·class="inline">ExclMessage</code>·has·the·same·structure·as·a168 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3722618283-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">ExclMessage</span><span·class="p"·data-group-id="3722618283-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;MyM[·...·truncated·by·diffoscope;·len:·201,·SHA:·595def0c3cb9f234a0a4248544a879a9c966230039476fb1eff9e92b1e2c40a0·...·]-2">)</span></code></pre><p><a·href=""·id="UndecodedPart"></a>·The·result·<code·class="inline">ExclMessage</code>·has·the·same·structure·as·a
169 complete·decode·would·have,·except·for·the·parts·of·the·top·type·that·were·not169 complete·decode·would·have,·except·for·the·parts·of·the·top·type·that·were·not
170 decoded.·The·undecoded·parts·are·on·their·places·in·the·structure·on·format170 decoded.·The·undecoded·parts·are·on·their·places·in·the·structure·on·format
171 <code·class="inline">{TypeKey,UndecodedValue}</code>.</p><p>Each·undecoded·part·that·is·to·be·decoded·must·be·fed·into·function171 <code·class="inline">{TypeKey,UndecodedValue}</code>.</p><p>Each·undecoded·part·that·is·to·be·decoded·must·be·fed·into·function
172 <code·class="inline">decode_part/2</code>·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7130968653-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">PartMessage</span><span·class="p"·data-group-id="7130968653-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;MyM[·...·truncated·by·diffoscope;·len:·285,·SHA:·3bd8c4349fac43d8d8b6ebc7f6569cab521ef893efa8a66f4779881bea96c7ae·...·]-2">)</span></code></pre><p><a·href=""·id="Exclusive-Instruction"></a></p><h3·id="writing-an-exclusive-decode-instruction"·class="section-heading">172 <code·class="inline">decode_part/2</code>·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0671940350-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">PartMessage</span><span·class="p"·data-group-id="0671940350-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;MyM[·...·truncated·by·diffoscope;·len:·285,·SHA:·f9874318905f6a7989bc1db8d81d1b84476da2393659d94f346c15491ddbbd0c·...·]-2">)</span></code></pre><p><a·href=""·id="Exclusive-Instruction"></a></p><h3·id="writing-an-exclusive-decode-instruction"·class="section-heading">
173 ··<a·href="#writing-an-exclusive-decode-instruction"·class="hover-link">173 ··<a·href="#writing-an-exclusive-decode-instruction"·class="hover-link">
174 ····<i·class="ri-link-m"·aria-hidden="true"></i>174 ····<i·class="ri-link-m"·aria-hidden="true"></i>
175 ··</a>175 ··</a>
176 ··<span·class="text">Writing·an·Exclusive·Decode·Instruction</span>176 ··<span·class="text">Writing·an·Exclusive·Decode·Instruction</span>
177 </h3>177 </h3>
178 <p>This·instruction·is·written·in·the·configuration·file·in·the·following·format:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">ExclusiveDecodeInstruction</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4403773985-1">{</span><span·class="ss">exclusive_decode</span><span·class="p">,</span><span·class="p"·data-group-id="4403773985-2">{</span><span·class="n">ModuleName</span><span·class="p">,</span><span·class="n">DecodeInstructions</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·74,·SHA:·90735be36b571d60cbf85779877c7e67fb614b5c0fed24ef713ab2df9dfae215·...·]5-1">}</span><span·class="p">.</span><span·class="w">178 <p>This·instruction·is·written·in·the·configuration·file·in·the·following·format:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">ExclusiveDecodeInstruction</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5217289425-1">{</span><span·class="ss">exclusive_decode</span><span·class="p">,</span><span·class="p"·data-group-id="5217289425-2">{</span><span·class="n">ModuleName</span><span·class="p">,</span><span·class="n">DecodeInstructions</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·74,·SHA:·72f66cd57f5e0471c40914fb1ebc15ef94a1e482f6f8f2c9b4f71dd66f11932c·...·]5-1">}</span><span·class="p">.</span><span·class="w">
  
179 </span><span·class="n">ModuleName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="4403773985-3">(</span><span·class="p"·data-group-id="4403773985-3">)</span><span·class="w">179 </span><span·class="n">ModuleName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="5217289425-3">(</span><span·class="p"·data-group-id="5217289425-3">)</span><span·class="w">
  
180 </span><span·class="n">DecodeInstructions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4403773985-4">[</span><span·class="n">DecodeInstruction</span><span·class="p"·data-group-id="4403773985-4">]</span><span·class="o">+</span><span·class="w">180 </span><span·class="n">DecodeInstructions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5217289425-4">[</span><span·class="n">DecodeInstruction</span><span·class="p"·data-group-id="5217289425-4">]</span><span·class="o">+</span><span·class="w">
  
181 </span><span·class="n">DecodeInstruction</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4403773985-5">{</span><span·class="n">ExclusiveDecodeFunctionName</span><span·class="p">,</span><span·class="n">TypeList</span><span·class="p"·data-group-id="4403773985-5">}</span><span·class="w">181 </span><span·class="n">DecodeInstruction</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5217289425-5">{</span><span·class="n">ExclusiveDecodeFunctionName</span><span·class="p">,</span><span·class="n">TypeList</span><span·class="p"·data-group-id="5217289425-5">}</span><span·class="w">
  
182 </span><span·class="n">ExclusiveDecodeFunctionName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="4403773985-6">(</span><span·class="p"·data-group-id="4403773985-6">)</span><span·class="w">182 </span><span·class="n">ExclusiveDecodeFunctionName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="5217289425-6">(</span><span·class="p"·data-group-id="5217289425-6">)</span><span·class="w">
  
183 </span><span·class="n">TypeList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4403773985-7">[</span><span·class="n">TopType</span><span·class="p">,</span><span·class="n">ElementList</span><span·class="p"·data-group-id="4403773985-7">]</span><span·class="w">183 </span><span·class="n">TypeList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5217289425-7">[</span><span·class="n">TopType</span><span·class="p">,</span><span·class="n">ElementList</span><span·class="p"·data-group-id="5217289425-7">]</span><span·class="w">
  
184 </span><span·class="n">ElementList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4403773985-8">[</span><span·class="n">Element</span><span·class="p"·data-group-id="4403773985-8">]</span><span·class="o">+</span><span·class="w">184 </span><span·class="n">ElementList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5217289425-8">[</span><span·class="n">Element</span><span·class="p"·data-group-id="5217289425-8">]</span><span·class="o">+</span><span·class="w">
  
185 </span><span·class="n">Element</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4403773985-9">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="ss">parts</span><span·class="p"·data-group-id="4403773985-9">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">185 </span><span·class="n">Element</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5217289425-9">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="ss">parts</span><span·class="p"·data-group-id="5217289425-9">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
186 ··········</span><span·class="p"·data-group-id="4403773985-10">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="ss">undecoded</span><span·class="p"·data-group-id="4403773985-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">186 ··········</span><span·class="p"·data-group-id="5217289425-10">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="ss">undecoded</span><span·class="p"·data-group-id="5217289425-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
187 ··········</span><span·class="p"·data-group-id="4403773985-11">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">ElementList</span><span·class="p"·data-group-id="4403773985-11">}</span><span·class="w">187 ··········</span><span·class="p"·data-group-id="5217289425-11">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="n">ElementList</span><span·class="p"·data-group-id="5217289425-11">}</span><span·class="w">
  
188 </span><span·class="n">TopType</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="4403773985-12">(</span><span·class="p"·data-group-id="4403773985-12">)</span><span·class="w">188 </span><span·class="n">TopType</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="5217289425-12">(</span><span·class="p"·data-group-id="5217289425-12">)</span><span·class="w">
  
189 </span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="4403773985-13">(</span><span·class="p"·data-group-id="4403773985-13">)</span></code></pre><p>The·instruction·must·be·a·valid·Erlang·term·terminated·by·a·dot.</p><p>In·<code·class="inline">TypeList</code>·the·path·from·the·top·type·to·each·undecoded·subcomponent·is189 </span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="5217289425-13">(</span><span·class="p"·data-group-id="5217289425-13">)</span></code></pre><p>The·instruction·must·be·a·valid·Erlang·term·terminated·by·a·dot.</p><p>In·<code·class="inline">TypeList</code>·the·path·from·the·top·type·to·each·undecoded·subcomponent·is
190 described.·<code·class="inline">TopType</code>·is·the·name·of·a·top-level·type·in·the·ASN.1·specification.190 described.·<code·class="inline">TopType</code>·is·the·name·of·a·top-level·type·in·the·ASN.1·specification.
191 The·action·for·each·component·in·<code·class="inline">ElementList</code>·is·described·by·one·of:</p><ul><li><code·class="inline">{Name,parts}</code></li><li><code·class="inline">{Name,undecoded}</code></li><li><code·class="inline">{Name,ElementList}</code></li></ul><p>The·use·and·effect·of·the·actions·are·as·follows:</p><ul><li><p><strong><code·class="inline">{Name,undecoded}</code></strong>·-·Leaves·the·element·undecoded.·The·type·of·<code·class="inline">Name</code>·can191 The·action·for·each·component·in·<code·class="inline">ElementList</code>·is·described·by·one·of:</p><ul><li><code·class="inline">{Name,parts}</code></li><li><code·class="inline">{Name,undecoded}</code></li><li><code·class="inline">{Name,ElementList}</code></li></ul><p>The·use·and·effect·of·the·actions·are·as·follows:</p><ul><li><p><strong><code·class="inline">{Name,undecoded}</code></strong>·-·Leaves·the·element·undecoded.·The·type·of·<code·class="inline">Name</code>·can
192 be·any·ASN.1·type.·The·value·of·element·<code·class="inline">Name</code>·is·returned·as·a·tuple·(as192 be·any·ASN.1·type.·The·value·of·element·<code·class="inline">Name</code>·is·returned·as·a·tuple·(as
193 mentioned·in·the·previous·section)·in·the·value·structure·of·the·top·type.</p></li><li><p><strong><code·class="inline">{Name,parts}</code></strong>·-·The·type·of·<code·class="inline">Name</code>·must·be·either·<code·class="inline">SEQUENCE·OF</code>·or193 mentioned·in·the·previous·section)·in·the·value·structure·of·the·top·type.</p></li><li><p><strong><code·class="inline">{Name,parts}</code></strong>·-·The·type·of·<code·class="inline">Name</code>·must·be·either·<code·class="inline">SEQUENCE·OF</code>·or
194 <code·class="inline">SET·OF</code>.·The·action·implies·that·the·different·components·of·<code·class="inline">Name</code>·are·left194 <code·class="inline">SET·OF</code>.·The·action·implies·that·the·different·components·of·<code·class="inline">Name</code>·are·left
195 undecoded.·The·value·of·<code·class="inline">Name</code>·is·returned·as·a·tuple·(as·mentioned·in·the195 undecoded.·The·value·of·<code·class="inline">Name</code>·is·returned·as·a·tuple·(as·mentioned·in·the
196 previous·section)·where·the·second·element·is·a·list·of·binaries.·This·is196 previous·section)·where·the·second·element·is·a·list·of·binaries.·This·is
Offset 257, 86 lines modifiedOffset 257, 86 lines modified
257 ·{'GUI',257 ·{'GUI',
258 ··[{decode_Window_exclusive,258 ··[{decode_Window_exclusive,
259 ····['Window',[{status,[{buttonList,parts},{actions,undecoded}]}]]},259 ····['Window',[{status,[{buttonList,parts},{actions,undecoded}]}]]},
260 ···{decode_Button_exclusive,260 ···{decode_Button_exclusive,
261 ····['Button',[{number,undecoded}]]}]}}.</code></pre><p>The·following·figure·shows·the·bytes·of·a·<code·class="inline">Window:status</code>·message.·The261 ····['Button',[{number,undecoded}]]}]}}.</code></pre><p>The·following·figure·shows·the·bytes·of·a·<code·class="inline">Window:status</code>·message.·The
262 components·<code·class="inline">buttonList</code>·and·<code·class="inline">actions</code>·are·excluded·from·decode.·Only·<code·class="inline">state</code>·and262 components·<code·class="inline">buttonList</code>·and·<code·class="inline">actions</code>·are·excluded·from·decode.·Only·<code·class="inline">state</code>·and
263 <code·class="inline">enabled</code>·are·decoded·when·<code·class="inline">decode__Window_exclusive</code>·is·called.</p><p><img·src="assets/exclusive_Win_But.gif"·alt="Bytes·of·a·Window:status·Message"·title="Bytes·of·a·Window:status·Message"/></p><p>Here·follows·an·example·of·how·the·module.·Note·that·option·<code·class="inline">no_ok_wrapper</code>·is263 <code·class="inline">enabled</code>·are·decoded·when·<code·class="inline">decode__Window_exclusive</code>·is·called.</p><p><img·src="assets/exclusive_Win_But.gif"·alt="Bytes·of·a·Window:status·Message"·title="Bytes·of·a·Window:status·Message"/></p><p>Here·follows·an·example·of·how·the·module.·Note·that·option·<code·class="inline">no_ok_wrapper</code>·is
264 used·to·make·the·example·more·concise.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">asn1ct</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="3769583488-1">(</span><span·class="ss">&#39;GUI&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3769583488-2">[</span><span·class="ss">ber</span><span·class="p">,</span><span·class="ss">asn1config</span><span·class[·...·truncated·by·diffoscope;·len:·144,·SHA:·787bbee80cfc789686c112df0d8f19fb2a0965136b1dcafce0596f1910bbbbf9·...·]-1">)</span><span·class="p">.</span><span·class="w">264 used·to·make·the·example·more·concise.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">asn1ct</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="2785369923-1">(</span><span·class="ss">&#39;GUI&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2785369923-2">[</span><span·class="ss">ber</span><span·class="p">,</span><span·class="ss">asn1config</span><span·class[·...·truncated·by·diffoscope;·len:·144,·SHA:·785af2d9ea9e96016b1b3d182a17ae8f7698520d5140bc8413972e712b2e73e2·...·]-1">)</span><span·class="p">.</span><span·class="w">
265 </span><span·class="ss">ok</span><span·class="gp·unselectable">265 </span><span·class="ss">ok</span><span·class="gp·unselectable">
266 2&gt;·</span><span·class="nf">rr</span><span·class="p"·data-group-id="3769583488-3">(</span><span·class="ss">&#39;GUI&#39;</span><span·class="p"·data-group-id="3769583488-3">)</span><span·class="p">.</span><span·class="w">266 2&gt;·</span><span·class="nf">rr</span><span·class="p"·data-group-id="2785369923-3">(</span><span·class="ss">&#39;GUI&#39;</span><span·class="p"·data-group-id="2785369923-3">)</span><span·class="p">.</span><span·class="w">
267 </span><span·class="p"·data-group-id="3769583488-4">[</span><span·class="ss">&#39;Action&#39;</span><span·class="p">,</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="3769583488-4">]</span><span·class="gp·unselectable">267 </span><span·class="p"·data-group-id="2785369923-4">[</span><span·class="ss">&#39;Action&#39;</span><span·class="p">,</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="2785369923-4">]</span><span·class="gp·unselectable">
268 3&gt;·</span><span·class="n">ButtonMsg</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-5">{</span><span·class="ss">number</span><span·class="o">=</span><span·class="mi">123</span><span·class="p">,</span><span·class="ss">on</span><span·class="o">=</span><span·class="ss">true</span><span·class="p"·data-group-id="3769583488-5">}</span><span·class="p">.</span><span·class="w">268 3&gt;·</span><span·class="n">ButtonMsg</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-5">{</span><span·class="ss">number</span><span·class="o">=</span><span·class="mi">123</span><span·class="p">,</span><span·class="ss">on</span><span·class="o">=</span><span·class="ss">true</span><span·class="p"·data-group-id="2785369923-5">}</span><span·class="p">.</span><span·class="w">
269 </span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-6">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">123</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·c[·...·truncated·by·diffoscope;·len:·86,·SHA:·e86321c5fbf2208658b1cfcb3b1d3520ecfe5e3fbe37172b81427a9a7606b00f·...·]-6">}</span><span·class="gp·unselectable">269 </span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-6">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">123</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·c[·...·truncated·by·diffoscope;·len:·86,·SHA:·b208036228d1c00a82bbed0445378c65580dc0f4afc744b0d4c275742bb9f862·...·]-6">}</span><span·class="gp·unselectable">
270 4&gt;·</span><span·class="n">ButtonBytes</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">encode</span><span·class="p"·data-group-id="3769583488-7">(</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ButtonMsg</span><span·class="p"·data-group-id="3769583488-7">)</span><span·class="p">.</span><span·class="w">270 4&gt;·</span><span·class="n">ButtonBytes</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">encode</span><span·class="p"·data-group-id="2785369923-7">(</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ButtonMsg</span><span·class="p"·data-group-id="2785369923-7">)</span><span·class="p">.</span><span·class="w">
271 </span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">123</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">271 </span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">123</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
272 5&gt;·</span><span·class="n">ExclusiveMsgButton</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_Button_exclusive</span><span·class="p"·data-group-id="3769583488-8">(</span><span·class="n">ButtonBytes</span><span·class="p"·data-group-id="3769583488-8">)</span><span·class="p">.</span><span·class="w">272 5&gt;·</span><span·class="n">ExclusiveMsgButton</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_Button_exclusive</span><span·class="p"·data-group-id="2785369923-8">(</span><span·class="n">ButtonBytes</span><span·class="p"·data-group-id="2785369923-8">)</span><span·class="p">.</span><span·class="w">
273 </span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-9">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3769583488-10">{</span><span·class="ss">&#39;Button_number&#39;</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·223,·SHA:·def8949c868b21ec7b59aad810e93ee4e297e73e8f82e7baf18202aa53d9d460·...·]-10">}</span><span·class="p">,</span><span·class="w">273 </span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-9">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2785369923-10">{</span><span·class="ss">&#39;Button_number&#39;</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·223,·SHA:·13e2fa8a5682fd0fca0d827544d2b88e8e2e0cc447bd31ad8ad25a668160e664·...·]-10">}</span><span·class="p">,</span><span·class="w">
274 ··········</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="3769583488-9">}</span><span·class="gp·unselectable">274 ··········</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="2785369923-9">}</span><span·class="gp·unselectable">
275 6&gt;·</span><span·class="p"·data-group-id="3769583488-11">{</span><span·class="n">UndecKey</span><span·class="p">,</span><span·class="n">UndecBytes</span><span·class="p"·data-group-id="3769583488-11">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">ExclusiveMsgButton</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p">.</span><span·class="ss">number</span><span·class="p">.</span><span·class="w">275 6&gt;·</span><span·class="p"·data-group-id="2785369923-11">{</span><span·class="n">UndecKey</span><span·class="p">,</span><span·class="n">UndecBytes</span><span·class="p"·data-group-id="2785369923-11">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">ExclusiveMsgButton</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p">.</span><span·class="ss">number</span><span·class="p">.</span><span·class="w">
276 </span><span·class="p"·data-group-id="3769583488-12">{</span><span·class="ss">&#39;Button_number&#39;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">123</span><spa[·...·truncated·by·diffoscope;·len:·68,·SHA:·e6ae1e45aa3283974411fd5f86f1139eacc2bb0f440bffe141a487f80d0cd5ac·...·]-12">}</span><span·class="gp·unselectable">276 </span><span·class="p"·data-group-id="2785369923-12">{</span><span·class="ss">&#39;Button_number&#39;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">123</span><spa[·...·truncated·by·diffoscope;·len:·68,·SHA:·2c79e069d9484df2a070c90a05655dc837b1551b9aadb4e87ae02011132abf60·...·]-12">}</span><span·class="gp·unselectable">
277 7&gt;·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_part</span><span·class="p"·data-group-id="3769583488-13">(</span><span·class="n">UndecKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UndecBytes</span><span·class="p"·data-group-id="3769583488-13">)</span><span·class="p">.</span><span·class="w">277 7&gt;·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_part</span><span·class="p"·data-group-id="2785369923-13">(</span><span·class="n">UndecKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UndecBytes</span><span·class="p"·data-group-id="2785369923-13">)</span><span·class="p">.</span><span·class="w">
278 </span><span·class="mi">123</span><span·class="gp·unselectable">278 </span><span·class="mi">123</span><span·class="gp·unselectable">
279 8&gt;·</span><span·class="n">WindowMsg</span><span·class="w">·</span><span·class="o">=</span><span·class="w">279 8&gt;·</span><span·class="n">WindowMsg</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
280 </span><span·class="p"·data-group-id="3769583488-14">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="p"·data-group-id="3769583488-15">{</span><span·class="ss">&#39;Status&#39;</span><span·class="p">,</span><span·class="mi">35</span><span·class="p">,</span><span·class="w">280 </span><span·class="p"·data-group-id="2785369923-14">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="p"·data-group-id="2785369923-15">{</span><span·class="ss">&#39;Status&#39;</span><span·class="p">,</span><span·class="mi">35</span><span·class="p">,</span><span·class="w">
281 ···</span><span·class="p"·data-group-id="3769583488-16">[</span><span·class="p"·data-group-id="3769583488-17">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="3769583[·...·truncated·by·diffoscope;·len:·3,·SHA:·a77b6cbdf6fae1676369dea1e1ea675e4c2400c9e43bd535fdfd9395cb48cbaa·...·]-17">}</span><span·class="p">,</span><span·class="w">281 ···</span><span·class="p"·data-group-id="2785369923-16">[</span><span·class="p"·data-group-id="2785369923-17">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="2785369[·...·truncated·by·diffoscope;·len:·3,·SHA:·b5a9ede9a93528be3e12c5665c179c2dc0e2648aa6f1b1650f3715e56dad8bec·...·]-17">}</span><span·class="p">,</span><span·class="w">
282 ····</span><span·class="p"·data-group-id="3769583488-18">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="3769583488-18">}</span><span·class="p">,</span><span·class="w">282 ····</span><span·class="p"·data-group-id="2785369923-18">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="2785369923-18">}</span><span·class="p">,</span><span·class="w">
283 ····</span><span·class="p"·data-group-id="3769583488-19">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="3769583488-19">}</span><span·class="p">,</span><span·class="w">283 ····</span><span·class="p"·data-group-id="2785369923-19">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="2785369923-19">}</span><span·class="p">,</span><span·class="w">
284 ····</span><span·class="p"·data-group-id="3769583488-20">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="3769583488-20">}</span><span·class="p">,</span><span·class="w">284 ····</span><span·class="p"·data-group-id="2785369923-20">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="2785369923-20">}</span><span·class="p">,</span><span·class="w">
285 ····</span><span·class="p"·data-group-id="3769583488-21">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="3769583488-21">}</span><span·class="p"·data-group-id="376958[·...·truncated·by·diffoscope;·len:·4,·SHA:·2aec3694418f35d89c5dc2e4372741f0787910ef288d30426e93d9d748f63b85·...·]-16">]</span><span·class="p">,</span><span·class="w">285 ····</span><span·class="p"·data-group-id="2785369923-21">{</span><span·class="ss">&#39;Button&#39;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="2785369923-21">}</span><span·class="p"·data-group-id="278536[·...·truncated·by·diffoscope;·len:·4,·SHA:·ba8eab058e16e95297c68cd888ad546dfc816fc170f2de11fa71f1d88aa16dba·...·]-16">]</span><span·class="p">,</span><span·class="w">
286 ···</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">286 ···</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">
287 ···</span><span·class="p"·data-group-id="3769583488-22">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="3769583488-23">[</span><span·class="p"·data-group-id="3769583488-24">{</span><span·class="ss">&#39;Action&#39;</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·559,·SHA:·c5a77b4c0e27614377ef3b2f0e3544342dd6c56c0920707da88bdde6bbb038c8·...·]-14">}</span><span·class="p">.</span><span·class="w">287 ···</span><span·class="p"·data-group-id="2785369923-22">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="2785369923-23">[</span><span·class="p"·data-group-id="2785369923-24">{</span><span·class="ss">&#39;Action&#39;</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·559,·SHA:·91b94698e5f9ef3dd4ac544fb972b8df171aecb0cd17fd1cc6efd2485cacf894·...·]-14">}</span><span·class="p">.</span><span·class="w">
288 </span><span·class="p"·data-group-id="3769583488-26">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="3769583488-27">{</span><span·class="ss">state</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">35</span><span·class="p">,</span><span·class="w">288 </span><span·class="p"·data-group-id="2785369923-26">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="2785369923-27">{</span><span·class="ss">state</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">35</span><span·class="p">,</span><span·class="w">
289 ········</span><span·class="ss">buttonList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3769583488-28">[</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-29">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·203,·SHA:·d00c89c9ede9e9037c8a09ea46e23d7e1fc47453519df7012b6c35a18f4ad38d·...·]-29">}</span><span·class="p">,</span><span·class="w">289 ········</span><span·class="ss">buttonList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2785369923-28">[</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-29">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·203,·SHA:·5a7b0b7d7f39ea1ca35baecc73666f9057d8ac546dc0e21375ba90b3df427b28·...·]-29">}</span><span·class="p">,</span><span·class="w">
290 ······················</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-30">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·86,·SHA:·d8a3346786cd458e9922c4a28d858b67df18e35576b164115b951184c120e2af·...·]-30">}</span><span·class="p">,</span><span·class="w">290 ······················</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-30">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·86,·SHA:·83373ae5a157135970b670d1b09e82f8d2d2f4278e65e4490e937eb3ab3e8377·...·]-30">}</span><span·class="p">,</span><span·class="w">
291 ······················</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-31">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·4b499640218e77c88f29004e4483be45bb118ffd7d78c62b2bde8a04c01f3524·...·]-31">}</span><span·class="p">,</span><span·class="w">291 ······················</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-31">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·2a0b70d516d67952890d8a90b911846fc59f108a61fe919a0ff3e0a0031daa5c·...·]-31">}</span><span·class="p">,</span><span·class="w">
292 ······················</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-32">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·4b499640218e77c88f29004e4483be45bb118ffd7d78c62b2bde8a04c01f3524·...·]-32">}</span><span·class="p">,</span><span·class="w">292 ······················</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-32">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·2a0b70d516d67952890d8a90b911846fc59f108a61fe919a0ff3e0a0031daa5c·...·]-32">}</span><span·class="p">,</span><span·class="w">
293 ······················</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-33">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">7</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·140,·SHA:·ef18fefee65eb43e438432a994eabb31bbd67475f4bf73e6003e8dbbd35c8226·...·]-28">]</span><span·class="p">,</span><span·class="w">293 ······················</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-33">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">7</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·140,·SHA:·371824f2484a13fb3285694ee1c2a537538ccadd1a91d9991ed496cdd527aa4c·...·]-28">]</span><span·class="p">,</span><span·class="w">
294 ········</span><span·class="ss">enabled</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">294 ········</span><span·class="ss">enabled</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">
295 ········</span><span·class="ss">actions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3769583488-34">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="3769583488-35">[</span><span·class="o">#</span><span·class="ss">&#39;Action&#39;</span><span·class="p"·data-group-id="3769583488-36">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">295 ········</span><span·class="ss">actions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2785369923-34">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="2785369923-35">[</span><span·class="o">#</span><span·class="ss">&#39;Action&#39;</span><span·class="p"·data-group-id="2785369923-36">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">
296 ··············································</span><span·class="ss">handle</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-37">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">17</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·c[·...·truncated·by·diffoscope;·len:·356,·SHA:·0eb806351973e32894c323a33a11cabd34138bf61227485b8562e7d701318cba·...·]-26">}</span><span·class="gp·unselectable">296 ··············································</span><span·class="ss">handle</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-37">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">17</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·c[·...·truncated·by·diffoscope;·len:·356,·SHA:·a87ad545cf78b133386b4a5d15e1e59e8de5650491b9b70bcc8e5cdd44f635bb·...·]-26">}</span><span·class="gp·unselectable">
297 9&gt;·</span><span·class="n">WindowBytes</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">encode</span><span·class="p"·data-group-id="3769583488-38">(</span><span·class="ss">&#39;Window&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">WindowMsg</span><span·class="p"·data-group-id="3769583488-38">)</span><span·class="p">.</span><span·class="w">297 9&gt;·</span><span·class="n">WindowBytes</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">encode</span><span·class="p"·data-group-id="2785369923-38">(</span><span·class="ss">&#39;Window&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">WindowMsg</span><span·class="p"·data-group-id="2785369923-38">)</span><span·class="p">.</span><span·class="w">
298 </span><span·class="p">&lt;&lt;</span><span·class="mi">161</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">35</span><span·class="p">,</span><span·class="mi">161</span><span·class="p">,</span><span·class="mi">40</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">298 </span><span·class="p">&lt;&lt;</span><span·class="mi">161</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">35</span><span·class="p">,</span><span·class="mi">161</span><span·class="p">,</span><span·class="mi">40</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">
299 ··</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">299 ··</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
300 10&gt;·</span><span·class="p"·data-group-id="3769583488-39">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="3769583488-40">{</span><span·class="ss">buttonList</span><span·class="o">=</span><sp[·...·truncated·by·diffoscope;·len:·300,·SHA:·d3408a9494e451f0460f3a766061caf51183d87375e53fd7cc4e8bb7af0bcf73·...·]-39">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">300 10&gt;·</span><span·class="p"·data-group-id="2785369923-39">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="2785369923-40">{</span><span·class="ss">buttonList</span><span·class="o">=</span><sp[·...·truncated·by·diffoscope;·len:·300,·SHA:·a25c0ed83892f3d6303182d8294877db6c11d934d817012a1c0f2faae2c2fcfc·...·]-39">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
301 </span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_Window_exclusive</span><span·class="p"·data-group-id="3769583488-42">(</span><span·class="n">WindowBytes</span><span·class="p"·data-group-id="3769583488-42">)</span><span·class="p">.</span><span·class="w">301 </span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_Window_exclusive</span><span·class="p"·data-group-id="2785369923-42">(</span><span·class="n">WindowBytes</span><span·class="p"·data-group-id="2785369923-42">)</span><span·class="p">.</span><span·class="w">
302 </span><span·class="p"·data-group-id="3769583488-43">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="3769583488-44">{</span><span·class="ss">state</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">35</span><span·class="p">,</span><span·class="w">302 </span><span·class="p"·data-group-id="2785369923-43">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="2785369923-44">{</span><span·class="ss">state</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">35</span><span·class="p">,</span><span·class="w">
303 ··················</span><span·class="ss">buttonList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3769583488-45">{</span><span·class="ss">&#39;Status_buttonList&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="3769583488-46">[</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">303 ··················</span><span·class="ss">buttonList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2785369923-45">{</span><span·class="ss">&#39;Status_buttonList&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="2785369923-46">[</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
304 ·······················································</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">304 ·······················································</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
305 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">305 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
306 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">306 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
307 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">307 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
308 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3769583488-46">]</span><span·class="p"·data-group-id="3769583488-45">}</span><span·class="p">,</span><span·class="w">308 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2785369923-46">]</span><span·class="p"·data-group-id="2785369923-45">}</span><span·class="p">,</span><span·class="w">
309 ··················</span><span·class="ss">enabled</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">309 ··················</span><span·class="ss">enabled</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">
310 ··················</span><span·class="ss">actions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3769583488-47">{</span><span·class="ss">&#39;Status_actions&#39;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">163</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="mi">13</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">310 ··················</span><span·class="ss">actions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2785369923-47">{</span><span·class="ss">&#39;Status_actions&#39;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">163</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="mi">13</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">
311 ················································</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">161</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">17</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="w">311 ················································</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">161</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">17</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="w">
312 ················································</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3769583488-47">}</span><span·class="p"·data-group-id="3769583488-44">}</span><span·class="p"·data-group-id="3769583488-43">}</span><span·class="gp·unselectable">312 ················································</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2785369923-47">}</span><span·class="p"·data-group-id="2785369923-44">}</span><span·class="p"·data-group-id="2785369923-43">}</span><span·class="gp·unselectable">
313 11&gt;·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_part</span><span·class="p"·data-group-id="3769583488-48">(</span><span·class="n">UndecWindowKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UndecWindowParts</span><span·class="p"·data-group-id="3769583488-48">)</span><span·class="p">.</span><span·class="w">313 11&gt;·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_part</span><span·class="p"·data-group-id="2785369923-48">(</span><span·class="n">UndecWindowKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UndecWindowParts</span><span·class="p"·data-group-id="2785369923-48">)</span><span·class="p">.</span><span·class="w">
314 </span><span·class="p"·data-group-id="3769583488-49">[</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-50">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·203,·SHA:·d00c89c9ede9e9037c8a09ea46e23d7e1fc47453519df7012b6c35a18f4ad38d·...·]-50">}</span><span·class="p">,</span><span·class="w">314 </span><span·class="p"·data-group-id="2785369923-49">[</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-50">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·203,·SHA:·5a7b0b7d7f39ea1ca35baecc73666f9057d8ac546dc0e21375ba90b3df427b28·...·]-50">}</span><span·class="p">,</span><span·class="w">
315 ·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-51">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·86,·SHA:·d8a3346786cd458e9922c4a28d858b67df18e35576b164115b951184c120e2af·...·]-51">}</span><span·class="p">,</span><span·class="w">315 ·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-51">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·86,·SHA:·83373ae5a157135970b670d1b09e82f8d2d2f4278e65e4490e937eb3ab3e8377·...·]-51">}</span><span·class="p">,</span><span·class="w">
316 ·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-52">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·4b499640218e77c88f29004e4483be45bb118ffd7d78c62b2bde8a04c01f3524·...·]-52">}</span><span·class="p">,</span><span·class="w">316 ·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-52">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·2a0b70d516d67952890d8a90b911846fc59f108a61fe919a0ff3e0a0031daa5c·...·]-52">}</span><span·class="p">,</span><span·class="w">
317 ·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-53">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·4b499640218e77c88f29004e4483be45bb118ffd7d78c62b2bde8a04c01f3524·...·]-53">}</span><span·class="p">,</span><span·class="w">317 ·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-53">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">6</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·2a0b70d516d67952890d8a90b911846fc59f108a61fe919a0ff3e0a0031daa5c·...·]-53">}</span><span·class="p">,</span><span·class="w">
318 ·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-54">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">7</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·140,·SHA:·2a76cb5167f895e968c7fb2d74598856f0a12972f88caddb6677a56162b7bf4a·...·]-49">]</span><span·class="gp·unselectable">318 ·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-54">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">7</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·140,·SHA:·5b81e36deb872182f41ea4fe9f5966814c460c5c03e9f9848c26eb98101360f1·...·]-49">]</span><span·class="gp·unselectable">
319 12&gt;·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_part</span><span·class="p"·data-group-id="3769583488-55">(</span><span·class="n">UndecWindowKey</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">hd</span><span·class="p"·data-group-id="3769583488-56">(</span><span·class="n">UndecWindowParts</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·7e701f463d2db16a45f7385e27c0f98c55dfc236b8292ce2828c3f6582cbbfaf·...·]-55">)</span><span·class="p">.</span><span·class="w">319 12&gt;·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_part</span><span·class="p"·data-group-id="2785369923-55">(</span><span·class="n">UndecWindowKey</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">hd</span><span·class="p"·data-group-id="2785369923-56">(</span><span·class="n">UndecWindowParts</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·202afd09f88b5660ae062cce5f3b7450117bc66a7b244ff2b1e1b78b4801af0c·...·]-55">)</span><span·class="p">.</span><span·class="w">
320 </span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-57">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·4b499640218e77c88f29004e4483be45bb118ffd7d78c62b2bde8a04c01f3524·...·]-57">}</span><span·class="gp·unselectable">320 </span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-57">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·2a0b70d516d67952890d8a90b911846fc59f108a61fe919a0ff3e0a0031daa5c·...·]-57">}</span><span·class="gp·unselectable">
321 13&gt;·</span><span·class="p"·data-group-id="3769583488-58">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="3769583488-59">{</span><span·class="ss">actions</span><span·class="o">=</span><span·[·...·truncated·by·diffoscope;·len:·518,·SHA:·cb090825a48d613a7b7f25b8975285e06a1545b312ea0c4c6a0160b05565c04c·...·]-61">)</span><span·class="p">.</span><span·class="w">321 13&gt;·</span><span·class="p"·data-group-id="2785369923-58">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="2785369923-59">{</span><span·class="ss">actions</span><span·class="o">=</span><span·[·...·truncated·by·diffoscope;·len:·518,·SHA:·04fab1b125d72b12211a45095f2fbca9a021c975ff0154ca2781553a3f8f8a10·...·]-61">)</span><span·class="p">.</span><span·class="w">
322 </span><span·class="p"·data-group-id="3769583488-62">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="3769583488-63">{</span><span·class="ss">state</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">35</span><span·class="p">,</span><span·class="w">322 </span><span·class="p"·data-group-id="2785369923-62">{</span><span·class="ss">status</span><span·class="p">,</span><span·class="o">#</span><span·class="ss">&#39;Status&#39;</span><span·class="p"·data-group-id="2785369923-63">{</span><span·class="ss">state</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">35</span><span·class="p">,</span><span·class="w">
323 ··················</span><span·class="ss">buttonList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3769583488-64">{</span><span·class="ss">&#39;Status_buttonList&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="3769583488-65">[</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">323 ··················</span><span·class="ss">buttonList</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2785369923-64">{</span><span·class="ss">&#39;Status_buttonList&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="2785369923-65">[</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
324 ·······················································</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">324 ·······················································</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
325 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">325 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
326 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">326 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
327 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">327 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
328 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3769583488-65">]</span><span·class="p"·data-group-id="3769583488-64">}</span><span·class="p">,</span><span·class="w">328 ·····················································</span><span·class="p">&lt;&lt;</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2785369923-65">]</span><span·class="p"·data-group-id="2785369923-64">}</span><span·class="p">,</span><span·class="w">
329 ··················</span><span·class="ss">enabled</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">329 ··················</span><span·class="ss">enabled</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">
330 ··················</span><span·class="ss">actions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3769583488-66">{</span><span·class="ss">&#39;Status_actions&#39;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">163</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="mi">13</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">330 ··················</span><span·class="ss">actions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2785369923-66">{</span><span·class="ss">&#39;Status_actions&#39;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">163</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="mi">13</span><span·class="p">,</span><span·class="mi">48</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">
331 ················································</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">161</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">17</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="w">331 ················································</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">161</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">17</span><span·class="p">,</span><span·class="mi">129</span><span·class="p">,</span><span·class="w">
332 ················································</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3769583488-66">}</span><span·class="p"·data-group-id="3769583488-63">}</span><span·class="p"·data-group-id="3769583488-62">}</span><span·class="gp·unselectable">332 ················································</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2785369923-66">}</span><span·class="p"·data-group-id="2785369923-63">}</span><span·class="p"·data-group-id="2785369923-62">}</span><span·class="gp·unselectable">
333 14&gt;·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_part</span><span·class="p"·data-group-id="3769583488-67">(</span><span·class="n">ChoiceKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ChoiceUndec</span><span·class="p"·data-group-id="3769583488-67">)</span><span·class="p">.</span><span·class="w">333 14&gt;·</span><span·class="nc">&#39;GUI&#39;</span><span·class="p">:</span><span·class="nf">decode_part</span><span·class="p"·data-group-id="2785369923-67">(</span><span·class="n">ChoiceKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ChoiceUndec</span><span·class="p"·data-group-id="2785369923-67">)</span><span·class="p">.</span><span·class="w">
334 </span><span·class="p"·data-group-id="3769583488-68">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="3769583488-69">[</span><span·class="o">#</span><span·class="ss">&#39;Action&#39;</span><span·class="p"·data-group-id="3769583488-70">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">334 </span><span·class="p"·data-group-id="2785369923-68">{</span><span·class="ss">possibleActions</span><span·class="p">,</span><span·class="p"·data-group-id="2785369923-69">[</span><span·class="o">#</span><span·class="ss">&#39;Action&#39;</span><span·class="p"·data-group-id="2785369923-70">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">16</span><span·class="p">,</span><span·class="w">
335 ····························</span><span·class="ss">handle</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="3769583488-71">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">17</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·c[·...·truncated·by·diffoscope;·len:·248,·SHA:·02e375da2a3de40c841d3cdc5093a8229c9d3d046670eab782ea15a5ff13d2d0·...·]-68">}</span></code></pre><h2·id="selective-decode"·class="section-heading">335 ····························</span><span·class="ss">handle</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Button&#39;</span><span·class="p"·data-group-id="2785369923-71">{</span><span·class="ss">number</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">17</span><span·class="p">,</span><span·class="ss">on</span><span·class="w">·</span><span·class="o">=</span><span·c[·...·truncated·by·diffoscope;·len:·248,·SHA:·b7b97a122dc2f432e5f11752b6a9cbe18125d579fdc66b6f41243a36129143b6·...·]-68">}</span></code></pre><h2·id="selective-decode"·class="section-heading">
336 ··<a·href="#selective-decode"·class="hover-link">336 ··<a·href="#selective-decode"·class="hover-link">
337 ····<i·class="ri-link-m"·aria-hidden="true"></i>337 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Max diff block lines reached; 35239/109883 bytes (32.07%) of diff not shown.
550 B
html2text {}
Max HTML report size reached
7.77 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/asn1ct.html
    
Offset 491, 17 lines modifiedOffset 491, 17 lines modified
  
491 <p>Performs·a·test·of·encode·and·decode·of·types·in·<code·class="inline">Module</code>.</p><p>The·generated·functions·are·called·by·this·function.·This·function·is491 <p>Performs·a·test·of·encode·and·decode·of·types·in·<code·class="inline">Module</code>.</p><p>The·generated·functions·are·called·by·this·function.·This·function·is
492 useful·for·testing·to·ensure·that·the·generated·encode·and·decode492 useful·for·testing·to·ensure·that·the·generated·encode·and·decode
493 functions·as·well·as·the·general·runtime·support·work·as·expected.</p><blockquote><h4·class="info">Note</h4><p>Currently,·the·<code·class="inline">test</code>·functions·have·many·limitations.·Essentially,·they·will493 functions·as·well·as·the·general·runtime·support·work·as·expected.</p><blockquote><h4·class="info">Note</h4><p>Currently,·the·<code·class="inline">test</code>·functions·have·many·limitations.·Essentially,·they·will
494 mostly·work·for·old·specifications·based·on·the·1997·standard·for·ASN.1,·but494 mostly·work·for·old·specifications·based·on·the·1997·standard·for·ASN.1,·but
495 not·for·most·modern-style·applications.·Another·limitation·is·that·the·<code·class="inline">test</code>495 not·for·most·modern-style·applications.·Another·limitation·is·that·the·<code·class="inline">test</code>
496 functions·may·not·work·if·options·that·change·code·generations·strategies·such496 functions·may·not·work·if·options·that·change·code·generations·strategies·such
497 as·the·options·<code·class="inline">macro_name_prefix</code>·and·<code·class="inline">record_name_prefix</code>·have·been·used.</p></blockquote><ul><li><a·href="#test/1"><code·class="inline">test/1</code></a>·iterates·over·all·types·in·<code·class="inline">Module</code>.</li><li><a·href="#test/2"><code·class="inline">test/2</code></a>·tests·type·<code·class="inline">Type</code>·with·a·random·value.</li><li><a·href="#test/3"><code·class="inline">test/3</code></a>·tests·type·<code·class="inline">Type</code>·with·<code·class="inline">Value</code>.</li></ul><p>Schematically,·the·following·occurs·for·each·type·in·the·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5190768801-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Value</span><span·class="p"·data-group-id="5190768801-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·272,·SHA:·820d2af64b66ab8ce6b50d57085c2725077db49332d743b34c0183f1e94704a2·...·]01-2">)</span><span·class="p">,</span><span·class="w">497 as·the·options·<code·class="inline">macro_name_prefix</code>·and·<code·class="inline">record_name_prefix</code>·have·been·used.</p></blockquote><ul><li><a·href="#test/1"><code·class="inline">test/1</code></a>·iterates·over·all·types·in·<code·class="inline">Module</code>.</li><li><a·href="#test/2"><code·class="inline">test/2</code></a>·tests·type·<code·class="inline">Type</code>·with·a·random·value.</li><li><a·href="#test/3"><code·class="inline">test/3</code></a>·tests·type·<code·class="inline">Type</code>·with·<code·class="inline">Value</code>.</li></ul><p>Schematically,·the·following·occurs·for·each·type·in·the·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6330493701-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Value</span><span·class="p"·data-group-id="6330493701-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·272,·SHA:·8cfa3b5feab9b67dac241f0df9e049a6b4f0c0c1d19ecf579cba6d93c5484cd6·...·]01-2">)</span><span·class="p">,</span><span·class="w">
498 </span><span·class="p"·data-group-id="5190768801-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bytes</span><span·class="p"·data-group-id="5190768801-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·271,·SHA:·2490eb53d0e131588a057d3a5bb640eefa1fb31375968b72dbf0d0c008d0d228·...·]01-4">)</span><span·class="p">,</span><span·class="w">498 </span><span·class="p"·data-group-id="6330493701-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bytes</span><span·class="p"·data-group-id="6330493701-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·271,·SHA:·d68b630fc6cd1c4be69347a892b736f4f0ca0cccf4618334078cd48b46128ddb·...·]01-4">)</span><span·class="p">,</span><span·class="w">
499 </span><span·class="p"·data-group-id="5190768801-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Value</span><span·class="p"·data-group-id="5190768801-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·271,·SHA:·422dd040874246005b6b457588d0918f3ff4f8b8224d40ce769eeeb1b5139dc6·...·]01-6">)</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">test</code>·functions·use·the·<code·class="inline">*.asn1db</code>·files·for·all·included·modules.·If·they499 </span><span·class="p"·data-group-id="6330493701-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Value</span><span·class="p"·data-group-id="6330493701-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·271,·SHA:·8864479d8d9b36345ceff5f6882cbcf650b047ec061811b4ea89b008dd5652c3·...·]01-6">)</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">test</code>·functions·use·the·<code·class="inline">*.asn1db</code>·files·for·all·included·modules.·If·they
500 are·located·in·a·different·directory·than·the·current·working·directory,·use·the500 are·located·in·a·different·directory·than·the·current·working·directory,·use·the
501 <code·class="inline">include</code>·option·to·add·paths.·This·is·only·needed·when·automatically·generating501 <code·class="inline">include</code>·option·to·add·paths.·This·is·only·needed·when·automatically·generating
502 values.·For·static·values·using·<code·class="inline">Value</code>·no·options·are·needed.</p>502 values.·For·static·values·using·<code·class="inline">Value</code>·no·options·are·needed.</p>
503 ··</section>503 ··</section>
504 </section>504 </section>
505 <section·class="detail"·id="value/2">505 <section·class="detail"·id="value/2">
  
Offset 560, 15 lines modifiedOffset 560, 15 lines modified
560 ······<p·class="built-using">560 ······<p·class="built-using">
561 ········Built·using561 ········Built·using
562 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the562 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
563 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>563 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
564 ······</p>564 ······</p>
565 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>565 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
566 ····</footer>566 ····</footer>
567 ··</div>567 ··</div>
568 </main>568 </main>
569 </div>569 </div>
570 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>570 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
571 <script>571 <script>
572 ··document.addEventListener("DOMContentLoaded",·function·()·{572 ··document.addEventListener("DOMContentLoaded",·function·()·{
706 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/notes.html
    
Offset 1541, 15 lines modifiedOffset 1541, 15 lines modified
1541 ······<p·class="built-using">1541 ······<p·class="built-using">
1542 ········Built·using1542 ········Built·using
1543 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1543 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1544 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1544 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1545 ······</p>1545 ······</p>
1546 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1546 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1547 ····</footer>1547 ····</footer>
1548 ··</div>1548 ··</div>
1549 </main>1549 </main>
1550 </div>1550 </div>
1551 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1551 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1552 <script>1552 <script>
1553 ··document.addEventListener("DOMContentLoaded",·function·()·{1553 ··document.addEventListener("DOMContentLoaded",·function·()·{
636 B
html2text {}
Max HTML report size reached
1.74 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-29151339.js"></script>124 <script·src="dist/search_data-614FD7B8.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
459 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/api-reference.html
    
Offset 308, 15 lines modifiedOffset 308, 15 lines modified
308 ······<p·class="built-using">308 ······<p·class="built-using">
309 ········Built·using309 ········Built·using
310 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the310 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
311 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>311 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
312 ······</p>312 ······</p>
313 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>313 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
314 ····</footer>314 ····</footer>
315 ··</div>315 ··</div>
316 </main>316 </main>
317 </div>317 </div>
318 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>318 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
319 <script>319 <script>
320 ··document.addEventListener("DOMContentLoaded",·function·()·{320 ··document.addEventListener("DOMContentLoaded",·function·()·{
639 B
html2text {}
Max HTML report size reached
11.7 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/basics_chapter.html
    
Offset 211, 23 lines modifiedOffset 211, 23 lines modified
211 <a·href="write_test_chapter.html#intro">Writing·Test·Suites</a>.</p><p>A·test·case·is·considered·successful·if·it·returns·to·the·caller,·no·matter·what211 <a·href="write_test_chapter.html#intro">Writing·Test·Suites</a>.</p><p>A·test·case·is·considered·successful·if·it·returns·to·the·caller,·no·matter·what
212 the·returned·value·is.·However,·a·few·return·values·have·special·meaning·as212 the·returned·value·is.·However,·a·few·return·values·have·special·meaning·as
213 follows:</p><ul><li><code·class="inline">{skip,Reason}</code>·indicates·that·the·test·case·is·skipped.</li><li><code·class="inline">{comment,Comment}</code>·prints·a·comment·in·the·log·for·the·test·case.</li><li><code·class="inline">{save_config,Config}</code>·makes·the·<code·class="inline">Common·Test</code>·test·server·pass·<code·class="inline">Config</code>·to213 follows:</p><ul><li><code·class="inline">{skip,Reason}</code>·indicates·that·the·test·case·is·skipped.</li><li><code·class="inline">{comment,Comment}</code>·prints·a·comment·in·the·log·for·the·test·case.</li><li><code·class="inline">{save_config,Config}</code>·makes·the·<code·class="inline">Common·Test</code>·test·server·pass·<code·class="inline">Config</code>·to
214 the·next·test·case.</li></ul><p>A·test·case·failure·is·specified·as·a·runtime·error·(a·crash),·no·matter·what214 the·next·test·case.</li></ul><p>A·test·case·failure·is·specified·as·a·runtime·error·(a·crash),·no·matter·what
215 the·reason·for·termination·is.·If·you·use·Erlang·pattern·matching·effectively,215 the·reason·for·termination·is.·If·you·use·Erlang·pattern·matching·effectively,
216 you·can·take·advantage·of·this·property.·The·result·is·concise·and·readable·test216 you·can·take·advantage·of·this·property.·The·result·is·concise·and·readable·test
217 case·functions·that·look·much·more·like·scripts·than·actual·programs.·A·simple217 case·functions·that·look·much·more·like·scripts·than·actual·programs.·A·simple
218 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">session</span><span·class="p"·data-group-id="9454812409-1">(</span><span·class="p">_</span><span·class="n">Config</span><span·class="p"·data-group-id="9454812409-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">218 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">session</span><span·class="p"·data-group-id="7974107778-1">(</span><span·class="p">_</span><span·class="n">Config</span><span·class="p"·data-group-id="7974107778-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
219 ····</span><span·class="p"·data-group-id="9454812409-2">{</span><span·class="ss">started</span><span·class="p">,</span><span·class="n">ServerId</span><span·class="p"·data-group-id="9454812409-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_ser[·...·truncated·by·diffoscope;·len:·157,·SHA:·314c50c61a6228f76f5f94e1c8fbcf65f2a35f4faeecf099f116d53723d58491·...·]-3">)</span><span·class="p">,</span><span·class="w">219 ····</span><span·class="p"·data-group-id="7974107778-2">{</span><span·class="ss">started</span><span·class="p">,</span><span·class="n">ServerId</span><span·class="p"·data-group-id="7974107778-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_ser[·...·truncated·by·diffoscope;·len:·157,·SHA:·009af5145b4b37b74ce5a9fe8f68a8207f28035d7ddf518c41c3860712a12f59·...·]-3">)</span><span·class="p">,</span><span·class="w">
220 ····</span><span·class="p"·data-group-id="9454812409-4">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="9454812409-5">[</span><span·class="p"·data-group-id="9454812409-5">]</span><span·class="p"·data-group-id="9454812409-4">}</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·269,·SHA:·9ec1efc8c109631e10745382df5c8328ce474c283d5961d3bf340313f7943ab0·...·]-6">)</span><span·class="p">,</span><span·class="w">220 ····</span><span·class="p"·data-group-id="7974107778-4">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="7974107778-5">[</span><span·class="p"·data-group-id="7974107778-5">]</span><span·class="p"·data-group-id="7974107778-4">}</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·269,·SHA:·42cd1b6022cacb9854e2ba275f973251822d549a7d05b7a30a4525cf39348f4d·...·]-6">)</span><span·class="p">,</span><span·class="w">
221 ····</span><span·class="n">MyId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="9454812409-7">(</span><span·class="p"·data-group-id="9454812409-7">)</span><span·class="p">,</span><span·class="w">221 ····</span><span·class="n">MyId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="7974107778-7">(</span><span·class="p"·data-group-id="7974107778-7">)</span><span·class="p">,</span><span·class="w">
222 ····</span><span·class="ss">connected</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="9454812409-8">(</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyId</span><span·class="p"·data-group-id="9454812409-8">)</span><span·class="p">,</span><span·class="w">222 ····</span><span·class="ss">connected</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="7974107778-8">(</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyId</span><span·class="p"·data-group-id="7974107778-8">)</span><span·class="p">,</span><span·class="w">
223 ····</span><span·class="p"·data-group-id="9454812409-9">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="9454812409-10">[</span><span·class="n">MyId</span><span·class="p"·data-group-id="9454812409-10">]</span><span·class="p"·data-group-id="9454812409-9"[·...·truncated·by·diffoscope;·len:·299,·SHA:·4af02dccef6c46565928b4092c586f971adb5c92bb9aab274d52650789d295c8·...·]-11">)</span><span·class="p">,</span><span·class="w">223 ····</span><span·class="p"·data-group-id="7974107778-9">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="7974107778-10">[</span><span·class="n">MyId</span><span·class="p"·data-group-id="7974107778-10">]</span><span·class="p"·data-group-id="7974107778-9"[·...·truncated·by·diffoscope;·len:·299,·SHA:·9c845b63c5709c1ccc09e98fed20fc1a1262a68314f12102f24d292a7d80cf7e·...·]-11">)</span><span·class="p">,</span><span·class="w">
224 ····</span><span·class="ss">disconnected</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">disconnect</span><span·class="p"·data-group-id="9454812409-12">(</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyId</span><span·class="p"·data-group-id="9454812409-12">)</span><span·class="p">,</span><span·class="w">224 ····</span><span·class="ss">disconnected</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">disconnect</span><span·class="p"·data-group-id="7974107778-12">(</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyId</span><span·class="p"·data-group-id="7974107778-12">)</span><span·class="p">,</span><span·class="w">
225 ····</span><span·class="p"·data-group-id="9454812409-13">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="9454812409-14">[</span><span·class="p"·data-group-id="9454812409-14">]</span><span·class="p"·data-group-id="9454812409-13">}</span><span·class="w">[·...·truncated·by·diffoscope;·len:·274,·SHA:·9e497de095c3834ef8da62d029234c35e0dc29cc7a669e3625ac183747f78237·...·]-15">)</span><span·class="p">,</span><span·class="w">225 ····</span><span·class="p"·data-group-id="7974107778-13">{</span><span·class="ss">clients</span><span·class="p">,</span><span·class="p"·data-group-id="7974107778-14">[</span><span·class="p"·data-group-id="7974107778-14">]</span><span·class="p"·data-group-id="7974107778-13">}</span><span·class="w">[·...·truncated·by·diffoscope;·len:·274,·SHA:·b78fe974f6f90a6caf0e48a1193bb7c5db6f8a1129878918095f5a0901afbe0e·...·]-15">)</span><span·class="p">,</span><span·class="w">
226 ····</span><span·class="ss">stopped</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="9454812409-16">(</span><span·class="n">ServerId</span><span·class="p"·data-group-id="9454812409-16">)</span><span·class="p">.</span></code></pre><p>As·a·test·suite·runs,·all·information·(including·output·to·<code·class="inline">stdout</code>)·is·recorded226 ····</span><span·class="ss">stopped</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="7974107778-16">(</span><span·class="n">ServerId</span><span·class="p"·data-group-id="7974107778-16">)</span><span·class="p">.</span></code></pre><p>As·a·test·suite·runs,·all·information·(including·output·to·<code·class="inline">stdout</code>)·is·recorded
227 in·many·different·log·files.·A·minimum·of·information·is·displayed·in·the·user227 in·many·different·log·files.·A·minimum·of·information·is·displayed·in·the·user
228 console·(only·start·and·stop·information,·plus·a·note·for·each·failed·test228 console·(only·start·and·stop·information,·plus·a·note·for·each·failed·test
229 case).</p><p>The·result·from·each·test·case·is·recorded·in·a·dedicated·HTML·log·file,·created229 case).</p><p>The·result·from·each·test·case·is·recorded·in·a·dedicated·HTML·log·file,·created
230 for·the·particular·test·run.·An·overview·page·displays·each·test·case230 for·the·particular·test·run.·An·overview·page·displays·each·test·case
231 represented·by·a·table·row·showing·total·execution·time,·if·the·case·was231 represented·by·a·table·row·showing·total·execution·time,·if·the·case·was
232 successful,·failed,·or·skipped,·plus·an·optional·user·comment.·For·a·failed·test232 successful,·failed,·or·skipped,·plus·an·optional·user·comment.·For·a·failed·test
233 case,·the·reason·for·termination·is·also·printed·in·the·comment·field.·The233 case,·the·reason·for·termination·is·also·printed·in·the·comment·field.·The
Offset 299, 15 lines modifiedOffset 299, 15 lines modified
299 ······<p·class="built-using">299 ······<p·class="built-using">
300 ········Built·using300 ········Built·using
301 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the301 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
302 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>302 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
303 ······</p>303 ······</p>
304 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>304 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
305 ····</footer>305 ····</footer>
306 ··</div>306 ··</div>
307 </main>307 </main>
308 </div>308 </div>
309 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>309 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
310 <script>310 <script>
311 ··document.addEventListener("DOMContentLoaded",·function·()·{311 ··document.addEventListener("DOMContentLoaded",·function·()·{
766 B
html2text {}
Max HTML report size reached
1020 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/common_test.epub
7.43 KB
zipinfo {}
Max HTML report size reached
156 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
109 KB
OEBPS/write_test_chapter.xhtml
Max HTML report size reached
8.3 KB
OEBPS/unix_telnet.xhtml
Max HTML report size reached
199 KB
OEBPS/run_test_chapter.xhtml
Max HTML report size reached
25.0 KB
OEBPS/getting_started_chapter.xhtml
Max HTML report size reached
77.3 KB
OEBPS/example_chapter.xhtml
Max HTML report size reached
10.1 KB
OEBPS/event_handler_chapter.xhtml
Max HTML report size reached
55.8 KB
OEBPS/dependencies_chapter.xhtml
Max HTML report size reached
32.0 KB
OEBPS/ct_telnet.xhtml
Max HTML report size reached
5.65 KB
OEBPS/ct_ssh.xhtml
Max HTML report size reached
9.73 KB
OEBPS/ct_snmp.xhtml
Max HTML report size reached
4.48 KB
OEBPS/ct_run_cmd.xhtml
Max HTML report size reached
21.6 KB
OEBPS/ct_property_test_chapter.xhtml
Max HTML report size reached
23.5 KB
OEBPS/ct_property_test.xhtml
Max HTML report size reached
27.4 KB
OEBPS/ct_netconfc.xhtml
Max HTML report size reached
34.2 KB
OEBPS/ct_master_chapter.xhtml
Max HTML report size reached
2.2 KB
OEBPS/ct_master.xhtml
Max HTML report size reached
59.9 KB
OEBPS/ct_hooks_chapter.xhtml
Max HTML report size reached
4.63 KB
OEBPS/ct_ftp.xhtml
Max HTML report size reached
39.5 KB
OEBPS/ct.xhtml
Max HTML report size reached
15.2 KB
OEBPS/cover_chapter.xhtml
Max HTML report size reached
1.25 KB
OEBPS/content.opf
1.21 KB
OEBPS/content.opf
Max HTML report size reached
80.1 KB
OEBPS/config_file_chapter.xhtml
Max HTML report size reached
10.2 KB
OEBPS/basics_chapter.xhtml
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/common_test_app.html
    
Offset 179, 15 lines modifiedOffset 179, 15 lines modified
179 ······<p·class="built-using">179 ······<p·class="built-using">
180 ········Built·using180 ········Built·using
181 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the181 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
182 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>182 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
183 ······</p>183 ······</p>
184 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>184 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
185 ····</footer>185 ····</footer>
186 ··</div>186 ··</div>
187 </main>187 </main>
188 </div>188 </div>
189 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>189 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
190 <script>190 <script>
191 ··document.addEventListener("DOMContentLoaded",·function·()·{191 ··document.addEventListener("DOMContentLoaded",·function·()·{
703 B
html2text {}
Max HTML report size reached
81.8 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/config_file_chapter.html
    
Offset 138, 16 lines modifiedOffset 138, 16 lines modified
138 properties·without·modifying·the·test·suites·using·the·data.·Examples·of138 properties·without·modifying·the·test·suites·using·the·data.·Examples·of
139 configuration·data·follows:</p><ul><li>Addresses·to·the·test·plant·or·other·instruments</li><li>User·login·information</li><li>Names·of·files·needed·by·the·test</li><li>Names·of·programs·to·be·executed·during·the·test</li><li>Any·other·variable·needed·by·the·test</li></ul><h2·id="syntax"·class="section-heading">139 configuration·data·follows:</p><ul><li>Addresses·to·the·test·plant·or·other·instruments</li><li>User·login·information</li><li>Names·of·files·needed·by·the·test</li><li>Names·of·programs·to·be·executed·during·the·test</li><li>Any·other·variable·needed·by·the·test</li></ul><h2·id="syntax"·class="section-heading">
140 ··<a·href="#syntax"·class="hover-link">140 ··<a·href="#syntax"·class="hover-link">
141 ····<i·class="ri-link-m"·aria-hidden="true"></i>141 ····<i·class="ri-link-m"·aria-hidden="true"></i>
142 ··</a>142 ··</a>
143 ··<span·class="text">Syntax</span>143 ··<span·class="text">Syntax</span>
144 </h2>144 </h2>
145 <p>A·configuration·file·can·contain·any·number·of·elements·of·the·type:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0148081932-1">{</span><span·class="n">CfgVarName</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="0148081932-1">}</span><span·class="p">.</span></code></pre><p>where</p><pre><code·class="makeup·erlang"·translate="no"[·...·truncated·by·diffoscope;·len:·228,·SHA:·490de03cdb2f4ef1cf2eb7716dfd8ad70d38e15e954bb59afe0296cb4843ada0·...·]-1">)</span><span·class="w">145 <p>A·configuration·file·can·contain·any·number·of·elements·of·the·type:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9275284671-1">{</span><span·class="n">CfgVarName</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="9275284671-1">}</span><span·class="p">.</span></code></pre><p>where</p><pre><code·class="makeup·erlang"·translate="no"[·...·truncated·by·diffoscope;·len:·228,·SHA:·3bef4da0c11df16e378a1e9b066d071c18f2dcfa9c824d636991fbd9d0a144e0·...·]-1">)</span><span·class="w">
146 </span><span·class="n">Value</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="8319413524-2">(</span><span·class="p"·data-group-id="8319413524-2">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="8319413524-3">[</span><span·class="p"·data-group-id="8319413524-4">{</span><sp[·...·truncated·by·diffoscope;·len:·176,·SHA:·7ff79ce8bd569287ed58b05112a37a4e90f62d5b7e5b8bbe71a800d5ff7dae53·...·]-3">]</span></code></pre><h2·id="requiring-and-reading-configuration-data"·class="section-heading">146 </span><span·class="n">Value</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="0811918369-2">(</span><span·class="p"·data-group-id="0811918369-2">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0811918369-3">[</span><span·class="p"·data-group-id="0811918369-4">{</span><sp[·...·truncated·by·diffoscope;·len:·176,·SHA:·6e7275904a377dc3c12d1442761e8488d5ab1f35bb891b185d769bbe10f13b67·...·]-3">]</span></code></pre><h2·id="requiring-and-reading-configuration-data"·class="section-heading">
147 ··<a·href="#requiring-and-reading-configuration-data"·class="hover-link">147 ··<a·href="#requiring-and-reading-configuration-data"·class="hover-link">
148 ····<i·class="ri-link-m"·aria-hidden="true"></i>148 ····<i·class="ri-link-m"·aria-hidden="true"></i>
149 ··</a>149 ··</a>
150 ··<span·class="text">Requiring·and·Reading·Configuration·Data</span>150 ··<span·class="text">Requiring·and·Reading·Configuration·Data</span>
151 </h2>151 </h2>
152 <p><a·href=""·id="require_config_data"></a></p><p>In·a·test·suite,·one·must·<em>require</em>·that·a·configuration·variable·(<code·class="inline">CfgVarName</code>152 <p><a·href=""·id="require_config_data"></a></p><p>In·a·test·suite,·one·must·<em>require</em>·that·a·configuration·variable·(<code·class="inline">CfgVarName</code>
153 in·the·previous·definition)·exists·before·attempting·to·read·the·associated153 in·the·previous·definition)·exists·before·attempting·to·read·the·associated
Offset 166, 21 lines modifiedOffset 166, 21 lines modified
166 <code·class="inline">{require,AliasName,CfgVarName}</code>.·The·arguments·<code·class="inline">AliasName</code>·and·<code·class="inline">CfgVarName</code>·are166 <code·class="inline">{require,AliasName,CfgVarName}</code>.·The·arguments·<code·class="inline">AliasName</code>·and·<code·class="inline">CfgVarName</code>·are
167 the·same·as·the·arguments·to·<a·href="ct.html#require/1"><code·class="inline">ct:require/1,2</code></a>.·<code·class="inline">AliasName</code>167 the·same·as·the·arguments·to·<a·href="ct.html#require/1"><code·class="inline">ct:require/1,2</code></a>.·<code·class="inline">AliasName</code>
168 becomes·an·alias·for·the·configuration·variable,·and·can·be·used·as·reference·to168 becomes·an·alias·for·the·configuration·variable,·and·can·be·used·as·reference·to
169 the·configuration·data·value.·The·configuration·variable·can·be·associated·with169 the·configuration·data·value.·The·configuration·variable·can·be·associated·with
170 any·number·of·alias·names,·but·each·name·must·be·unique·within·the·same·test170 any·number·of·alias·names,·but·each·name·must·be·unique·within·the·same·test
171 suite.·The·two·main·uses·for·alias·names·follows:</p><ul><li>To·identify·connections·(described·later).</li><li>To·help·adapt·configuration·data·to·a·test·suite·(or·test·case)·and·improve171 suite.·The·two·main·uses·for·alias·names·follows:</p><ul><li>To·identify·connections·(described·later).</li><li>To·help·adapt·configuration·data·to·a·test·suite·(or·test·case)·and·improve
172 readability.</li></ul><p>To·read·the·value·of·a·configuration·variable,·use·function172 readability.</li></ul><p>To·read·the·value·of·a·configuration·variable,·use·function
173 <a·href="ct.html#get_config/1"><code·class="inline">get_config/1,2,3</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="9356548117-1">(</span><span·class="p"·data-group-id="9356548117-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 <a·href="ct.html#get_config/1"><code·class="inline">get_config/1,2,3</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="5339097912-1">(</span><span·class="p"·data-group-id="5339097912-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ····</span><span·class="p"·data-group-id="9356548117-2">[</span><span·class="p"·data-group-id="9356548117-3">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">domain</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;CO[·...·truncated·by·diffoscope;·len:·124,·SHA:·293be9b8906cc3b7c2d38bf2f0b0532b8374773f59845019250b282a0dbd3245·...·]-2">]</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="p"·data-group-id="5339097912-2">[</span><span·class="p"·data-group-id="5339097912-3">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">domain</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;CO[·...·truncated·by·diffoscope;·len:·124,·SHA:·5693ded4c2d827ac8b875d763d37260ab8f7fd4f7e59d4a2f8bb0057b1c1aa55·...·]-2">]</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">175 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
  
176 </span><span·class="nf">testcase</span><span·class="p"·data-group-id="9356548117-4">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9356548117-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 </span><span·class="nf">testcase</span><span·class="p"·data-group-id="5339097912-4">(</span><span·class="n">Config</span><span·class="p"·data-group-id="5339097912-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ····</span><span·class="n">Domain</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="9356548117-5">(</span><span·class="ss">domain</span><span·class="p"·data-group-id="9356548117-5">)</span><span·class="p">,</span><span·class="w">177 ····</span><span·class="n">Domain</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="5339097912-5">(</span><span·class="ss">domain</span><span·class="p"·data-group-id="5339097912-5">)</span><span·class="p">,</span><span·class="w">
178 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><h2·id="using-configuration-variables-defined-in-multiple-files"·class="section-heading">178 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><h2·id="using-configuration-variables-defined-in-multiple-files"·class="section-heading">
179 ··<a·href="#using-configuration-variables-defined-in-multiple-files"·class="hover-link">179 ··<a·href="#using-configuration-variables-defined-in-multiple-files"·class="hover-link">
180 ····<i·class="ri-link-m"·aria-hidden="true"></i>180 ····<i·class="ri-link-m"·aria-hidden="true"></i>
181 ··</a>181 ··</a>
182 ··<span·class="text">Using·Configuration·Variables·Defined·in·Multiple·Files</span>182 ··<span·class="text">Using·Configuration·Variables·Defined·in·Multiple·Files</span>
183 </h2>183 </h2>
184 <p>If·a·configuration·variable·is·defined·in·multiple·files·and·you·want·to·access184 <p>If·a·configuration·variable·is·defined·in·multiple·files·and·you·want·to·access
Offset 257, 19 lines modifiedOffset 257, 19 lines modified
257 ···&lt;ftp_host&gt;257 ···&lt;ftp_host&gt;
258 ·······&lt;ftp&gt;&quot;targethost&quot;&lt;/ftp&gt;258 ·······&lt;ftp&gt;&quot;targethost&quot;&lt;/ftp&gt;
259 ·······&lt;username&gt;&quot;tester&quot;&lt;/username&gt;259 ·······&lt;username&gt;&quot;tester&quot;&lt;/username&gt;
260 ·······&lt;password&gt;&quot;letmein&quot;&lt;/password&gt;260 ·······&lt;password&gt;&quot;letmein&quot;&lt;/password&gt;
261 ···&lt;/ftp_host&gt;261 ···&lt;/ftp_host&gt;
262 ···&lt;lm_directory&gt;&quot;/test/loadmodules&quot;&lt;/lm_directory&gt;262 ···&lt;lm_directory&gt;&quot;/test/loadmodules&quot;&lt;/lm_directory&gt;
263 &lt;/config&gt;</code></pre><p>Once·read,·this·file·produces·the·same·configuration·variables·as·the·following263 &lt;/config&gt;</code></pre><p>Once·read,·this·file·produces·the·same·configuration·variables·as·the·following
264 text·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0158651896-1">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0158651896-2">[</span><span·class="p"·data-group-id="0158651896-3">{</span><span·class="ss">ftp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·89,·SHA:·bc846d20c0668f725a912f08643ec6240ebb6e518b2e1f9e989204c40bf6d280·...·]-3">}</span><span·class="p">,</span><span·class="w">264 text·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8125735137-1">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8125735137-2">[</span><span·class="p"·data-group-id="8125735137-3">{</span><span·class="ss">ftp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·89,·SHA:·e0a2fa89ea08f6bd2caf73ab975b975d4489c7f4d1af5a5dc5565bc4ffb71ef3·...·]-3">}</span><span·class="p">,</span><span·class="w">
265 ············</span><span·class="p"·data-group-id="0158651896-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="s">&quot;tester&quot;</span><span·class="p"·data-group-id="0158651896-4">}</span><span·class="p">,</span><span·class="w">265 ············</span><span·class="p"·data-group-id="8125735137-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="s">&quot;tester&quot;</span><span·class="p"·data-group-id="8125735137-4">}</span><span·class="p">,</span><span·class="w">
266 ············</span><span·class="p"·data-group-id="0158651896-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="s">&quot;letmein&quot;</span><span·class="p"·data-group-id="0158651896-5">}</span><span·class="p"·data-group-id="0158651896-2">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·b16a97aa9179c2156ddbead82e928debb531f15baa9f68fc221fadeb0fe7562b·...·]-1">}</span><span·class="p">.</span><span·class="w">266 ············</span><span·class="p"·data-group-id="8125735137-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="s">&quot;letmein&quot;</span><span·class="p"·data-group-id="8125735137-5">}</span><span·class="p"·data-group-id="8125735137-2">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·c3eb22aee5b5c9f3f1accb0b735364429fc9ca4f5fdfbfed6b162879fe7c3ecc·...·]-1">}</span><span·class="p">.</span><span·class="w">
  
267 </span><span·class="p"·data-group-id="0158651896-6">{</span><span·class="ss">lm_directory</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/test/loadmodules&quot;</span><span·class="p"·data-group-id="0158651896-6">}</span><span·class="p">.</span></code></pre><h3·id="implement-a-user-specific-handler"·class="section-heading">267 </span><span·class="p"·data-group-id="8125735137-6">{</span><span·class="ss">lm_directory</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/test/loadmodules&quot;</span><span·class="p"·data-group-id="8125735137-6">}</span><span·class="p">.</span></code></pre><h3·id="implement-a-user-specific-handler"·class="section-heading">
268 ··<a·href="#implement-a-user-specific-handler"·class="hover-link">268 ··<a·href="#implement-a-user-specific-handler"·class="hover-link">
269 ····<i·class="ri-link-m"·aria-hidden="true"></i>269 ····<i·class="ri-link-m"·aria-hidden="true"></i>
270 ··</a>270 ··</a>
271 ··<span·class="text">Implement·a·User-Specific·Handler</span>271 ··<span·class="text">Implement·a·User-Specific·Handler</span>
272 </h3>272 </h3>
273 <p>The·user-specific·handler·can·be·written·to·handle·special·configuration·file273 <p>The·user-specific·handler·can·be·written·to·handle·special·configuration·file
274 formats.·The·parameter·can·be·either·file·names·or·configuration·strings·(the274 formats.·The·parameter·can·be·either·file·names·or·configuration·strings·(the
Offset 280, 150 lines modifiedOffset 280, 150 lines modified
280 specified·configuration·parameter·is·valid:</p><ul><li><code·class="inline">{ok,·{file,·FileName}}</code>·-·the·parameter·is·a·file·name·and·the·file·exists.</li><li><code·class="inline">{ok,·{config,·ConfigString}}</code>·-·the·parameter·is·a·configuration·string·and280 specified·configuration·parameter·is·valid:</p><ul><li><code·class="inline">{ok,·{file,·FileName}}</code>·-·the·parameter·is·a·file·name·and·the·file·exists.</li><li><code·class="inline">{ok,·{config,·ConfigString}}</code>·-·the·parameter·is·a·configuration·string·and
281 it·is·correct.</li><li><code·class="inline">{error,·{nofile,·FileName}}</code>·-·there·is·no·file·with·the·specified·name·in281 it·is·correct.</li><li><code·class="inline">{error,·{nofile,·FileName}}</code>·-·there·is·no·file·with·the·specified·name·in
282 the·current·directory.</li><li><code·class="inline">{error,·{wrong_config,·ConfigString}}</code>·-·the·configuration·string·is·wrong.</li></ul><p>The·function·<code·class="inline">Callback:read_config/1</code>·is·to·be·exported·from·the·callback·module282 the·current·directory.</li><li><code·class="inline">{error,·{wrong_config,·ConfigString}}</code>·-·the·configuration·string·is·wrong.</li></ul><p>The·function·<code·class="inline">Callback:read_config/1</code>·is·to·be·exported·from·the·callback·module
283 to·read·configuration·data,·initially·before·the·tests·start,·or·as·a·result·of283 to·read·configuration·data,·initially·before·the·tests·start,·or·as·a·result·of
284 data·being·reloaded·during·test·execution.·The·input·argument·is·the·same·as·for284 data·being·reloaded·during·test·execution.·The·input·argument·is·the·same·as·for
285 function·<code·class="inline">check_parameter/1</code>.</p><p>The·return·value·is·to·be·either·of·the·following:</p><ul><li><code·class="inline">{ok,·Config}</code>·-·if·the·configuration·variables·are·read·successfully.</li><li><code·class="inline">{error,·{Error,·ErrorDetails}}</code>·-·if·the·callback·module·fails·to·proceed285 function·<code·class="inline">check_parameter/1</code>.</p><p>The·return·value·is·to·be·either·of·the·following:</p><ul><li><code·class="inline">{ok,·Config}</code>·-·if·the·configuration·variables·are·read·successfully.</li><li><code·class="inline">{error,·{Error,·ErrorDetails}}</code>·-·if·the·callback·module·fails·to·proceed
286 with·the·specified·configuration·parameters.</li></ul><p><code·class="inline">Config</code>·is·the·proper·Erlang·key-value·list,·with·possible·key-value·sublists286 with·the·specified·configuration·parameters.</li></ul><p><code·class="inline">Config</code>·is·the·proper·Erlang·key-value·list,·with·possible·key-value·sublists
287 as·values,·like·the·earlier·configuration·file·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2976802032-1">[</span><span·class="p"·data-group-id="2976802032-2">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2976802032-3">[</span><span·class="p"·data-group-id="2976802032-4">{</[·...·truncated·by·diffoscope;·len:·823,·SHA:·085a8d9b0a217e19478c8e0f0e89b4eea20cfc3a2f41a4f9d9af535d6ef2f33b·...·]-2">}</span><span·class="p">,</span><span·class="w">287 as·values,·like·the·earlier·configuration·file·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1018772245-1">[</span><span·class="p"·data-group-id="1018772245-2">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1018772245-3">[</span><span·class="p"·data-group-id="1018772245-4">{</[·...·truncated·by·diffoscope;·len:·823,·SHA:·bd5f6297655bd1d21ddb5445522e43d7d81757f1b7ac9ace337531c987c68f92·...·]-2">}</span><span·class="p">,</span><span·class="w">
288 ·</span><span·class="p"·data-group-id="2976802032-7">{</span><span·class="ss">lm_directory</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/test/loadmodules&quot;</span><span·class="p"·data-group-id="2976802032-7">}</span><span·class="p"·data-group-id="2976802032-1">]</span></code></pre><h2·id="examples-of-configuration-data-handling"·class="section-heading">288 ·</span><span·class="p"·data-group-id="1018772245-7">{</span><span·class="ss">lm_directory</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/test/loadmodules&quot;</span><span·class="p"·data-group-id="1018772245-7">}</span><span·class="p"·data-group-id="1018772245-1">]</span></code></pre><h2·id="examples-of-configuration-data-handling"·class="section-heading">
289 ··<a·href="#examples-of-configuration-data-handling"·class="hover-link">289 ··<a·href="#examples-of-configuration-data-handling"·class="hover-link">
290 ····<i·class="ri-link-m"·aria-hidden="true"></i>290 ····<i·class="ri-link-m"·aria-hidden="true"></i>
291 ··</a>291 ··</a>
292 ··<span·class="text">Examples·of·Configuration·Data·Handling</span>292 ··<span·class="text">Examples·of·Configuration·Data·Handling</span>
293 </h2>293 </h2>
294 <p>A·configuration·file·for·using·the·FTP·client·to·access·files·on·a·remote·host294 <p>A·configuration·file·for·using·the·FTP·client·to·access·files·on·a·remote·host
295 can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2222787705-1">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2222787705-2">[</span><span·class="p"·data-group-id="2222787705-3">{</span><span·class="ss">ftp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·89,·SHA:·953a6f022629fcffcdbe863873d25cac807e314a1e99835315feff47fbfc49a8·...·]-3">}</span><span·class="p">,</span><span·class="w">295 can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1469324072-1">{</span><span·class="ss">ftp_host</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1469324072-2">[</span><span·class="p"·data-group-id="1469324072-3">{</span><span·class="ss">ftp</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·89,·SHA:·13c5404ec8793d05b7847d9e9b39f9584e03629a3889d08aca3dd8c48b59e463·...·]-3">}</span><span·class="p">,</span><span·class="w">
296 ············</span><span·class="p"·data-group-id="2222787705-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="s">&quot;tester&quot;</span><span·class="p"·data-group-id="2222787705-4">}</span><span·class="p">,</span><span·class="w">296 ············</span><span·class="p"·data-group-id="1469324072-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="s">&quot;tester&quot;</span><span·class="p"·data-group-id="1469324072-4">}</span><span·class="p">,</span><span·class="w">
297 ············</span><span·class="p"·data-group-id="2222787705-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="s">&quot;letmein&quot;</span><span·class="p"·data-group-id="2222787705-5">}</span><span·class="p"·data-group-id="2222787705-2">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·c55851c433a3b4c4a0496f89223b505a10a0f7a7bd18657aba3c16db590bcda2·...·]-1">}</span><span·class="p">.</span><span·class="w">297 ············</span><span·class="p"·data-group-id="1469324072-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="s">&quot;letmein&quot;</span><span·class="p"·data-group-id="1469324072-5">}</span><span·class="p"·data-group-id="1469324072-2">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·108f3cac2b720778e228612edbf43b5b565e7fa914b24cca390e146aef7c752d·...·]-1">}</span><span·class="p">.</span><span·class="w">
  
298 </span><span·class="p"·data-group-id="2222787705-6">{</span><span·class="ss">lm_directory</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/test/loadmodules&quot;</span><span·class="p"·data-group-id="2222787705-6">}</span><span·class="p">.</span></code></pre><p>The·XML·version·shown·earlier·can·also·be·used,·but·it·is·to·be·explicitly298 </span><span·class="p"·data-group-id="1469324072-6">{</span><span·class="ss">lm_directory</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/test/loadmodules&quot;</span><span·class="p"·data-group-id="1469324072-6">}</span><span·class="p">.</span></code></pre><p>The·XML·version·shown·earlier·can·also·be·used,·but·it·is·to·be·explicitly
299 specified·that·the·<code·class="inline">ct_config_xml</code>·callback·module·is·to·be·used·by299 specified·that·the·<code·class="inline">ct_config_xml</code>·callback·module·is·to·be·used·by
300 <code·class="inline">Common·Test</code>.</p><p>The·following·is·an·example·of·how·to·assert·that·the·configuration·data·is300 <code·class="inline">Common·Test</code>.</p><p>The·following·is·an·example·of·how·to·assert·that·the·configuration·data·is
301 available·and·can·be·used·for·an·FTP·session:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="7600510765-1">(</span><span·class="ss">ftptest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="7600510765-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">301 available·and·can·be·used·for·an·FTP·session:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="6752706260-1">(</span><span·class="ss">ftptest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6752706260-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
302 ····</span><span·class="p"·data-group-id="7600510765-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="7600510765-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span><span[·...·truncated·by·diffoscope;·len:·168,·SHA:·f9c311a59c498c8861c418d4d2a5be9b682a6a3d71a1dd5215896fcd8724f1ab·...·]-3">)</span><span·class="p">,</span><span·class="w">302 ····</span><span·class="p"·data-group-id="6752706260-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="6752706260-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span><span[·...·truncated·by·diffoscope;·len:·168,·SHA:·b6247cf8fa6b917cfa9ae9db752b291472c5c91740d79ac2e1eea4302bad76d0·...·]-3">)</span><span·class="p">,</span><span·class="w">
303 ····</span><span·class="n">Config</span><span·class="p">.</span><span·class="w">303 ····</span><span·class="n">Config</span><span·class="p">.</span><span·class="w">
  
304 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="7600510765-4">(</span><span·class="ss">ftptest</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Config</span><span·class="p"·data-group-id="7600510765-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">304 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="6752706260-4">(</span><span·class="ss">ftptest</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Config</span><span·class="p"·data-group-id="6752706260-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
305 ····</span><span·class="nc">ct_ftp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="7600510765-5">(</span><span·class="ss">ftp</span><span·class="p"·data-group-id="7600510765-5">)</span><span·class="p">.</span><span·class="w">305 ····</span><span·class="nc">ct_ftp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="6752706260-5">(</span><span·class="ss">ftp</span><span·class="p"·data-group-id="6752706260-5">)</span><span·class="p">.</span><span·class="w">
  
306 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="7600510765-6">(</span><span·class="p"·data-group-id="7600510765-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">306 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="6752706260-6">(</span><span·class="p"·data-group-id="6752706260-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
307 ····</span><span·class="p"·data-group-id="7600510765-7">[</span><span·class="p"·data-group-id="7600510765-8">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="ss">ftp_host</span><span·class="p"·data-group-id="7600510765-8">}</span><span·class="p">,</span><span·class="w">307 ····</span><span·class="p"·data-group-id="6752706260-7">[</span><span·class="p"·data-group-id="6752706260-8">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="ss">ftp_host</span><span·class="p"·data-group-id="6752706260-8">}</span><span·class="p">,</span><span·class="w">
308 ·····</span><span·class="p"·data-group-id="7600510765-9">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="7600510765-9">}</span><span·class="p"·data-group-id="7600510765-7">]</span><span·class="p">.</span><span·class="w">308 ·····</span><span·class="p"·data-group-id="6752706260-9">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="6752706260-9">}</span><span·class="p"·data-group-id="6752706260-7">]</span><span·class="p">.</span><span·class="w">
  
309 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="7600510765-10">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7600510765-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">309 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="6752706260-10">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6752706260-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
310 ····</span><span·class="n">Remote</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="7600510765-11">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="7600510765-12">(</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="7600510765-12">)</span><span[·...·truncated·by·diffoscope;·len:·127,·SHA:·b3203d7760d77e9a2bd43891b6e784c4e4f6885819dbad3972b8a6c7fec4e6a6·...·]-11">)</span><span·class="p">,</span><span·class="w">310 ····</span><span·class="n">Remote</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="6752706260-11">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="6752706260-12">(</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="6752706260-12">)</span><span[·...·truncated·by·diffoscope;·len:·127,·SHA:·f79f426a53cb587a15869873f9a49402e91ed1f985d998653514c0c83888b273·...·]-11">)</span><span·class="p">,</span><span·class="w">
311 ····</span><span·class="n">Local</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="7600510765-13">(</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="7600510765-14">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="n">Config</span><spa[·...·truncated·by·diffoscope;·len:·184,·SHA:·78ebe4f8b175bd345cd08b6a3bd77a000c75380cff1ad8e0f994779f7592a388·...·]-13">)</span><span·class="p">,</span><span·class="w">311 ····</span><span·class="n">Local</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="6752706260-13">(</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6752706260-14">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="n">Config</span><spa[·...·truncated·by·diffoscope;·len:·184,·SHA:·0473db3c982df9965e52087d3acce7650790467503618ca4632e2cad543b844d·...·]-13">)</span><span·class="p">,</span><span·class="w">
312 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="7600510765-15">(</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Remote</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Local</span><span·class="p"·data-group-id="7600510765-15">)</span><span·class="p">,</span><span·class="w">312 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="6752706260-15">(</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Remote</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Local</span><span·class="p"·data-group-id="6752706260-15">)</span><span·class="p">,</span><span·class="w">
313 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>The·following·is·an·example·of·how·the·functions·in·the·previous·example·can·be313 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>The·following·is·an·example·of·how·the·functions·in·the·previous·example·can·be
314 rewritten·if·it·is·necessary·to·open·multiple·connections·to·the·FTP·server:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="9711431442-1">(</span><span·class="ss">ftptest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="9711431442-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">314 rewritten·if·it·is·necessary·to·open·multiple·connections·to·the·FTP·server:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="0113607250-1">(</span><span·class="ss">ftptest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="0113607250-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
315 ····</span><span·class="p"·data-group-id="9711431442-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle1</span><span·class="p"·data-group-id="9711431442-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span[·...·truncated·by·diffoscope;·len:·179,·SHA:·d1ff27cc189976c90d6fdb6c57e8dd859ee25706e3ec5ec06412b63b0a3cea3e·...·]-3">)</span><span·class="p">,</span><span·class="w">315 ····</span><span·class="p"·data-group-id="0113607250-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle1</span><span·class="p"·data-group-id="0113607250-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span[·...·truncated·by·diffoscope;·len:·179,·SHA:·87e1c0bcf8aa1866276539c4f8412f65988e7fc73020b630a0167be2d61a327c·...·]-3">)</span><span·class="p">,</span><span·class="w">
316 ····</span><span·class="p"·data-group-id="9711431442-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle2</span><span·class="p"·data-group-id="9711431442-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span[·...·truncated·by·diffoscope;·len:·179,·SHA:·5bac90d21599ef901b4a921cb907952634f843b7ad385676689c1d75d5788e2d·...·]-5">)</span><span·class="p">,</span><span·class="w">316 ····</span><span·class="p"·data-group-id="0113607250-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle2</span><span·class="p"·data-group-id="0113607250-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span[·...·truncated·by·diffoscope;·len:·179,·SHA:·af9b5c824ed3a3f8eae7d53cd9c4e2bc5ea37eff2a6bd9df9e08f1c23a1464e3·...·]-5">)</span><span·class="p">,</span><span·class="w">
317 ····</span><span·class="p"·data-group-id="9711431442-6">[</span><span·class="p"·data-group-id="9711431442-7">{</span><span·class="ss">ftp_handles</span><span·class="p">,</span><span·class="p"·data-group-id="9711431442-8">[</span><span·class="n">Handle1</span><span·class="p">,</span><span·class="n"[·...·truncated·by·diffoscope;·len:·263,·SHA:·868a07d3b671b10817f25583daec61bde4ac7d42c454f1c160dcf00ffbddbc2a·...·]-6">]</span><span·class="p">.</span><span·class="w">317 ····</span><span·class="p"·data-group-id="0113607250-6">[</span><span·class="p"·data-group-id="0113607250-7">{</span><span·class="ss">ftp_handles</span><span·class="p">,</span><span·class="p"·data-group-id="0113607250-8">[</span><span·class="n">Handle1</span><span·class="p">,</span><span·class="n"[·...·truncated·by·diffoscope;·len:·263,·SHA:·cf59a32a2da61b1a7370fe44620bf14108bea82cccdde8fbecbe49d4cbffe60d·...·]-6">]</span><span·class="p">.</span><span·class="w">
  
318 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="9711431442-9">(</span><span·class="ss">ftptest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="9711431442-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">318 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="0113607250-9">(</span><span·class="ss">ftptest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="0113607250-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
319 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foreach</span><span·class="p"·data-group-id="9711431442-10">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="9711431442-11">(</span><span·class="n">Handle</span><span·class="p"·data-group-id="9711431442-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·214,·SHA:·1cc6c702aa42158d92385744d481adf621bf86858bfa78397787c014a3fd8495·...·]-12">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">319 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foreach</span><span·class="p"·data-group-id="0113607250-10">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0113607250-11">(</span><span·class="n">Handle</span><span·class="p"·data-group-id="0113607250-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·214,·SHA:·01be9967e1337ce5fa54c9946daeacbf1eae6b8d9c2ae35322bcd3a425f4a9f2·...·]-12">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
320 ··················</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="9711431442-13">(</span><span·class="ss">ftp_handles</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="9711431442-13">)</span><span·class="p"·data-group-id="9711431442-10">)</span><span·class="p">.</span><span·class="w">320 ··················</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="0113607250-13">(</span><span·class="ss">ftp_handles</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="0113607250-13">)</span><span·class="p"·data-group-id="0113607250-10">)</span><span·class="p">.</span><span·class="w">
  
321 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="9711431442-14">(</span><span·class="p"·data-group-id="9711431442-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">321 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="0113607250-14">(</span><span·class="p"·data-group-id="0113607250-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
322 ····</span><span·class="p"·data-group-id="9711431442-15">[</span><span·class="p"·data-group-id="9711431442-16">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">ftp_host</span><span·class="p"·data-group-id="9711431442-16">}</span><span·class="p">,</span><span·class="w">322 ····</span><span·class="p"·data-group-id="0113607250-15">[</span><span·class="p"·data-group-id="0113607250-16">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">ftp_host</span><span·class="p"·data-group-id="0113607250-16">}</span><span·class="p">,</span><span·class="w">
323 ·····</span><span·class="p"·data-group-id="9711431442-17">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="9711431442-17">}</span><span·class="p"·data-group-id="9711431442-15">]</span><span·class="p">.</span><span·class="w">323 ·····</span><span·class="p"·data-group-id="0113607250-17">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="0113607250-17">}</span><span·class="p"·data-group-id="0113607250-15">]</span><span·class="p">.</span><span·class="w">
  
324 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="9711431442-18">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9711431442-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">324 </span><span·class="nf">ftptest</span><span·class="p"·data-group-id="0113607250-18">(</span><span·class="n">Config</span><span·class="p"·data-group-id="0113607250-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
325 ····</span><span·class="n">Remote</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="9711431442-19">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="9711431442-20">(</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="9711431442-20">)</span><span[·...·truncated·by·diffoscope;·len:·127,·SHA:·0bfceae67dbd5d0bdd275cfb236f893073a20c0ac5b6a0437703b8a2843e9f12·...·]-19">)</span><span·class="p">,</span><span·class="w">325 ····</span><span·class="n">Remote</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="0113607250-19">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="0113607250-20">(</span><span·class="ss">lm_directory</span><span·class="p"·data-group-id="0113607250-20">)</span><span[·...·truncated·by·diffoscope;·len:·127,·SHA:·6c6befbf9a2696db5e9d0f2492322e0ca82a8c3260a3e0a70c145e2a47455502·...·]-19">)</span><span·class="p">,</span><span·class="w">
326 ····</span><span·class="n">Local</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="9711431442-21">(</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="9711431442-22">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="n">Config</span><spa[·...·truncated·by·diffoscope;·len:·184,·SHA:·a90244a39f6d0a2c8505301620f0d7aa232d3a69f922fe774db5f3a6dc7ab81d·...·]-21">)</span><span·class="p">,</span><span·class="w">326 ····</span><span·class="n">Local</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="0113607250-21">(</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="0113607250-22">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="n">Config</span><spa[·...·truncated·by·diffoscope;·len:·184,·SHA:·0445c8ff6eb3ce1ea9de941bf1958884c43e6cc1967d61cde227d1cf9083f10a·...·]-21">)</span><span·class="p">,</span><span·class="w">
327 ····</span><span·class="p"·data-group-id="9711431442-23">[</span><span·class="n">Handle</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">MoreHandles</span><span·class="p"·data-group-id="9711431442-23">]</span><span·class="w">·</span><span·class="o">=</s[·...·truncated·by·diffoscope;·len:·301,·SHA:·aba87875fc96fc925fcfb1dd4cdf2514262906725ff60e0fda8bb7f0dc6fe32a·...·]-24">)</span><span·class="p">,</span><span·class="w">327 ····</span><span·class="p"·data-group-id="0113607250-23">[</span><span·class="n">Handle</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">MoreHandles</span><span·class="p"·data-group-id="0113607250-23">]</span><span·class="w">·</span><span·class="o">=</s[·...·truncated·by·diffoscope;·len:·301,·SHA:·011dd2ed607df3c4463024fd4fed8efc45845c63faafbdd90690965115102b9b·...·]-24">)</span><span·class="p">,</span><span·class="w">
328 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="9711431442-25">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Remote</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Local</span><span·class="p"·data-group-id="9711431442-25">)</span><span·class="p">,</span><span·class="w">328 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct_ftp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="0113607250-25">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Remote</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Local</span><span·class="p"·data-group-id="0113607250-25">)</span><span·class="p">,</span><span·class="w">
329 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><h2·id="example-of-user-specific-configuration-handler"·class="section-heading">329 ····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><h2·id="example-of-user-specific-configuration-handler"·class="section-heading">
330 ··<a·href="#example-of-user-specific-configuration-handler"·class="hover-link">330 ··<a·href="#example-of-user-specific-configuration-handler"·class="hover-link">
331 ····<i·class="ri-link-m"·aria-hidden="true"></i>331 ····<i·class="ri-link-m"·aria-hidden="true"></i>
332 ··</a>332 ··</a>
333 ··<span·class="text">Example·of·User-Specific·Configuration·Handler</span>333 ··<span·class="text">Example·of·User-Specific·Configuration·Handler</span>
334 </h2>334 </h2>
335 <p>A·simple·configuration·handling·driver,·asking·an·external·server·for335 <p>A·simple·configuration·handling·driver,·asking·an·external·server·for
336 configuration·data,·can·be·implemented·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="3568304396-1">(</span><span·class="ss">config_driver</span><span·class="p"·data-group-id="3568304396-1">)</span><span·class="p">.</span><span·class="w">336 configuration·data,·can·be·implemented·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0114158075-1">(</span><span·class="ss">config_driver</span><span·class="p"·data-group-id="0114158075-1">)</span><span·class="p">.</span><span·class="w">
337 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3568304396-2">(</span><span·class="p"·data-group-id="3568304396-3">[</span><span·class="ss">read_config</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">check_parameter</span><span·clas[·...·truncated·by·diffoscope;·len:·133,·SHA:·a7966c2cb0387df1c05b389409082e22893189bfd6094e1f7572c555ad19cdeb·...·]-2">)</span><span·class="p">.</span><span·class="w">337 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0114158075-2">(</span><span·class="p"·data-group-id="0114158075-3">[</span><span·class="ss">read_config</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">check_parameter</span><span·clas[·...·truncated·by·diffoscope;·len:·133,·SHA:·709bbfff1e60bd90b245d9bc6c13ddfae358d5ed0f42510856ffe94e1e96c4f6·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
338 </span><span·class="nf">read_config</span><span·class="p"·data-group-id="3568304396-4">(</span><span·class="n">ServerName</span><span·class="p"·data-group-id="3568304396-4">)</span><span·class="p">-&gt;</span><span·class="w">338 </span><span·class="nf">read_config</span><span·class="p"·data-group-id="0114158075-4">(</span><span·class="n">ServerName</span><span·class="p"·data-group-id="0114158075-4">)</span><span·class="p">-&gt;</span><span·class="w">
339 ····</span><span·class="n">ServerModule</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">list_to_atom</span><span·class="p"·data-group-id="3568304396-5">(</span><span·class="n">ServerName</span><span·class="p"·data-group-id="3568304396-5">)</span><span·class="p">,</span><span·class="w">339 ····</span><span·class="n">ServerModule</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">list_to_atom</span><span·class="p"·data-group-id="0114158075-5">(</span><span·class="n">ServerName</span><span·class="p"·data-group-id="0114158075-5">)</span><span·class="p">,</span><span·class="w">
Max diff block lines reached; 31003/82636 bytes (37.52%) of diff not shown.
910 B
html2text {}
Max HTML report size reached
16.8 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/cover_chapter.html
    
Offset 197, 67 lines modifiedOffset 197, 67 lines modified
197 ····<i·class="ri-link-m"·aria-hidden="true"></i>197 ····<i·class="ri-link-m"·aria-hidden="true"></i>
198 ··</a>198 ··</a>
199 ··<span·class="text">General·Config</span>199 ··<span·class="text">General·Config</span>
200 </h3>200 </h3>
201 <p>Here·follows·the·general·configuration·terms·that·are·allowed·in·a·cover201 <p>Here·follows·the·general·configuration·terms·that·are·allowed·in·a·cover
202 specification·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·List·of·Nodes·on·which·cover·will·be·active·during·test.</span><span·class="w">202 specification·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·List·of·Nodes·on·which·cover·will·be·active·during·test.</span><span·class="w">
203 </span><span·class="c1">%%·Nodes·=·[atom()]</span><span·class="w">203 </span><span·class="c1">%%·Nodes·=·[atom()]</span><span·class="w">
204 </span><span·class="p"·data-group-id="6553841287-1">{</span><span·class="nb">nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Nodes</span><span·class="p"·data-group-id="6553841287-1">}</span><span·class="p">.</span><span·class="w">204 </span><span·class="p"·data-group-id="5111624541-1">{</span><span·class="nb">nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Nodes</span><span·class="p"·data-group-id="5111624541-1">}</span><span·class="p">.</span><span·class="w">
  
205 </span><span·class="c1">%%·Files·with·previously·exported·cover·data·to·include·in·analysis.</span><span·class="w">205 </span><span·class="c1">%%·Files·with·previously·exported·cover·data·to·include·in·analysis.</span><span·class="w">
206 </span><span·class="c1">%%·CoverDataFiles·=·[string()]</span><span·class="w">206 </span><span·class="c1">%%·CoverDataFiles·=·[string()]</span><span·class="w">
207 </span><span·class="p"·data-group-id="6553841287-2">{</span><span·class="ss">import</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CoverDataFiles</span><span·class="p"·data-group-id="6553841287-2">}</span><span·class="p">.</span><span·class="w">207 </span><span·class="p"·data-group-id="5111624541-2">{</span><span·class="ss">import</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CoverDataFiles</span><span·class="p"·data-group-id="5111624541-2">}</span><span·class="p">.</span><span·class="w">
  
208 </span><span·class="c1">%%·Cover·data·file·to·export·from·this·session.</span><span·class="w">208 </span><span·class="c1">%%·Cover·data·file·to·export·from·this·session.</span><span·class="w">
209 </span><span·class="c1">%%·CoverDataFile·=·string()</span><span·class="w">209 </span><span·class="c1">%%·CoverDataFile·=·string()</span><span·class="w">
210 </span><span·class="p"·data-group-id="6553841287-3">{</span><span·class="ss">export</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CoverDataFile</span><span·class="p"·data-group-id="6553841287-3">}</span><span·class="p">.</span><span·class="w">210 </span><span·class="p"·data-group-id="5111624541-3">{</span><span·class="ss">export</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CoverDataFile</span><span·class="p"·data-group-id="5111624541-3">}</span><span·class="p">.</span><span·class="w">
  
211 </span><span·class="c1">%%·Cover·analysis·level.</span><span·class="w">211 </span><span·class="c1">%%·Cover·analysis·level.</span><span·class="w">
212 </span><span·class="c1">%%·Level·=·details·|·overview</span><span·class="w">212 </span><span·class="c1">%%·Level·=·details·|·overview</span><span·class="w">
213 </span><span·class="p"·data-group-id="6553841287-4">{</span><span·class="ss">level</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Level</span><span·class="p"·data-group-id="6553841287-4">}</span><span·class="p">.</span><span·class="w">213 </span><span·class="p"·data-group-id="5111624541-4">{</span><span·class="ss">level</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Level</span><span·class="p"·data-group-id="5111624541-4">}</span><span·class="p">.</span><span·class="w">
  
214 </span><span·class="c1">%%·Directories·to·include·in·cover.</span><span·class="w">214 </span><span·class="c1">%%·Directories·to·include·in·cover.</span><span·class="w">
215 </span><span·class="c1">%%·Dirs·=·[string()]</span><span·class="w">215 </span><span·class="c1">%%·Dirs·=·[string()]</span><span·class="w">
216 </span><span·class="p"·data-group-id="6553841287-5">{</span><span·class="ss">incl_dirs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dirs</span><span·class="p"·data-group-id="6553841287-5">}</span><span·class="p">.</span><span·class="w">216 </span><span·class="p"·data-group-id="5111624541-5">{</span><span·class="ss">incl_dirs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dirs</span><span·class="p"·data-group-id="5111624541-5">}</span><span·class="p">.</span><span·class="w">
  
217 </span><span·class="c1">%%·Directories,·including·subdirectories,·to·include.</span><span·class="w">217 </span><span·class="c1">%%·Directories,·including·subdirectories,·to·include.</span><span·class="w">
218 </span><span·class="p"·data-group-id="6553841287-6">{</span><span·class="ss">incl_dirs_r</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dirs</span><span·class="p"·data-group-id="6553841287-6">}</span><span·class="p">.</span><span·class="w">218 </span><span·class="p"·data-group-id="5111624541-6">{</span><span·class="ss">incl_dirs_r</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dirs</span><span·class="p"·data-group-id="5111624541-6">}</span><span·class="p">.</span><span·class="w">
  
219 </span><span·class="c1">%%·Specific·modules·to·include·in·cover.</span><span·class="w">219 </span><span·class="c1">%%·Specific·modules·to·include·in·cover.</span><span·class="w">
220 </span><span·class="c1">%%·Mods·=·[atom()]</span><span·class="w">220 </span><span·class="c1">%%·Mods·=·[atom()]</span><span·class="w">
221 </span><span·class="p"·data-group-id="6553841287-7">{</span><span·class="ss">incl_mods</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mods</span><span·class="p"·data-group-id="6553841287-7">}</span><span·class="p">.</span><span·class="w">221 </span><span·class="p"·data-group-id="5111624541-7">{</span><span·class="ss">incl_mods</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mods</span><span·class="p"·data-group-id="5111624541-7">}</span><span·class="p">.</span><span·class="w">
  
222 </span><span·class="c1">%%·Directories·to·exclude·in·cover.</span><span·class="w">222 </span><span·class="c1">%%·Directories·to·exclude·in·cover.</span><span·class="w">
223 </span><span·class="p"·data-group-id="6553841287-8">{</span><span·class="ss">excl_dirs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dirs</span><span·class="p"·data-group-id="6553841287-8">}</span><span·class="p">.</span><span·class="w">223 </span><span·class="p"·data-group-id="5111624541-8">{</span><span·class="ss">excl_dirs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dirs</span><span·class="p"·data-group-id="5111624541-8">}</span><span·class="p">.</span><span·class="w">
  
224 </span><span·class="c1">%%·Directories,·including·subdirectories,·to·exclude.</span><span·class="w">224 </span><span·class="c1">%%·Directories,·including·subdirectories,·to·exclude.</span><span·class="w">
225 </span><span·class="p"·data-group-id="6553841287-9">{</span><span·class="ss">excl_dirs_r</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dirs</span><span·class="p"·data-group-id="6553841287-9">}</span><span·class="p">.</span><span·class="w">225 </span><span·class="p"·data-group-id="5111624541-9">{</span><span·class="ss">excl_dirs_r</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dirs</span><span·class="p"·data-group-id="5111624541-9">}</span><span·class="p">.</span><span·class="w">
  
226 </span><span·class="c1">%%·Specific·modules·to·exclude·in·cover.</span><span·class="w">226 </span><span·class="c1">%%·Specific·modules·to·exclude·in·cover.</span><span·class="w">
227 </span><span·class="p"·data-group-id="6553841287-10">{</span><span·class="ss">excl_mods</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mods</span><span·class="p"·data-group-id="6553841287-10">}</span><span·class="p">.</span><span·class="w">227 </span><span·class="p"·data-group-id="5111624541-10">{</span><span·class="ss">excl_mods</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mods</span><span·class="p"·data-group-id="5111624541-10">}</span><span·class="p">.</span><span·class="w">
  
228 </span><span·class="c1">%%·Cross·cover·compilation</span><span·class="w">228 </span><span·class="c1">%%·Cross·cover·compilation</span><span·class="w">
229 </span><span·class="c1">%%·Tag·=·atom(),·an·identifier·for·a·test·run</span><span·class="w">229 </span><span·class="c1">%%·Tag·=·atom(),·an·identifier·for·a·test·run</span><span·class="w">
230 </span><span·class="c1">%%·Mod·=·[atom()],·modules·to·compile·for·accumulated·analysis</span><span·class="w">230 </span><span·class="c1">%%·Mod·=·[atom()],·modules·to·compile·for·accumulated·analysis</span><span·class="w">
231 </span><span·class="p"·data-group-id="6553841287-11">{</span><span·class="ss">cross</span><span·class="p">,</span><span·class="p"·data-group-id="6553841287-12">[</span><span·class="p"·data-group-id="6553841287-13">{</span><span·class="n">Tag</span><span·class="p">,</span><span·class="n">Mods</[·...·truncated·by·diffoscope;·len:·154,·SHA:·f40181c8d2170da2db944ac67b3c6d85fc7ddb685aa60e0d898c0aa6f90ba475·...·]-11">}</span><span·class="p">.</span></code></pre><p>The·terms·<code·class="inline">incl_dirs_r</code>·and·<code·class="inline">excl_dirs_r</code>·tell·<code·class="inline">Common·Test</code>·to·search·the231 </span><span·class="p"·data-group-id="5111624541-11">{</span><span·class="ss">cross</span><span·class="p">,</span><span·class="p"·data-group-id="5111624541-12">[</span><span·class="p"·data-group-id="5111624541-13">{</span><span·class="n">Tag</span><span·class="p">,</span><span·class="n">Mods</[·...·truncated·by·diffoscope;·len:·154,·SHA:·5c60129d29436bae4433c02bb1ad667c24100f0c24f7cf01740e9c6e7dc1d9d5·...·]-11">}</span><span·class="p">.</span></code></pre><p>The·terms·<code·class="inline">incl_dirs_r</code>·and·<code·class="inline">excl_dirs_r</code>·tell·<code·class="inline">Common·Test</code>·to·search·the
232 specified·directories·recursively·and·include·or·exclude·any·module·found·during232 specified·directories·recursively·and·include·or·exclude·any·module·found·during
233 the·search.·The·terms·<code·class="inline">incl_dirs</code>·and·<code·class="inline">excl_dirs</code>·result·in·a·non-recursive233 the·search.·The·terms·<code·class="inline">incl_dirs</code>·and·<code·class="inline">excl_dirs</code>·result·in·a·non-recursive
234 search·for·modules·(that·is,·only·modules·found·in·the·specified·directories·are234 search·for·modules·(that·is,·only·modules·found·in·the·specified·directories·are
235 included·or·excluded).</p><blockquote><h4·class="info">Note</h4><p>Directories·containing·Erlang·modules·to·be·included·in·a·code·coverage·test235 included·or·excluded).</p><blockquote><h4·class="info">Note</h4><p>Directories·containing·Erlang·modules·to·be·included·in·a·code·coverage·test
236 must·exist·in·the·code·server·path.·Otherwise,·the·Cover·tool·fails·to236 must·exist·in·the·code·server·path.·Otherwise,·the·Cover·tool·fails·to
237 recompile·the·modules.·It·is·not·sufficient·to·specify·these·directories·in237 recompile·the·modules.·It·is·not·sufficient·to·specify·these·directories·in
238 the·cover·specification·file·for·<code·class="inline">Common·Test</code>.</p></blockquote><h3·id="otp-application-config"·class="section-heading">238 the·cover·specification·file·for·<code·class="inline">Common·Test</code>.</p></blockquote><h3·id="otp-application-config"·class="section-heading">
239 ··<a·href="#otp-application-config"·class="hover-link">239 ··<a·href="#otp-application-config"·class="hover-link">
240 ····<i·class="ri-link-m"·aria-hidden="true"></i>240 ····<i·class="ri-link-m"·aria-hidden="true"></i>
241 ··</a>241 ··</a>
242 ··<span·class="text">OTP·application·Config</span>242 ··<span·class="text">OTP·application·Config</span>
243 </h3>243 </h3>
244 <p>When·using·a·cover·specification·in·the·testing·of·an·OTP·application·itself,244 <p>When·using·a·cover·specification·in·the·testing·of·an·OTP·application·itself,
245 there·is·a·special·incl_app·directive·that·includes·the·applications·modules·for245 there·is·a·special·incl_app·directive·that·includes·the·applications·modules·for
246 the·cover·compilation.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1432894093-1">{</span><span·class="ss">incl_app</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cover</span><span·class="w">·</span><span·class="p">:</span><[·...·truncated·by·diffoscope;·len:·223,·SHA:·3da2bc64afa1bd69bff10b21bf087149e917523c996bddb3a8db7dbd99511c76·...·]-1">}</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>If·you·desire·to·also·use·some·other·general·cover·configuration·together·with246 the·cover·compilation.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1806281136-1">{</span><span·class="ss">incl_app</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cover</span><span·class="w">·</span><span·class="p">:</span><[·...·truncated·by·diffoscope;·len:·223,·SHA:·fb9f3dc6f74e9044b546320610cbf819a341c57166cdb2412d40f5ce1f7feb8d·...·]-1">}</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>If·you·desire·to·also·use·some·other·general·cover·configuration·together·with
247 this·option·you·should·insert·the·AppName·in·between·the·option·and·its·value247 this·option·you·should·insert·the·AppName·in·between·the·option·and·its·value
248 creating·a·three·tuple.</p></blockquote><p><a·href=""·id="cross_cover"></a></p><h2·id="cross-cover-analysis"·class="section-heading">248 creating·a·three·tuple.</p></blockquote><p><a·href=""·id="cross_cover"></a></p><h2·id="cross-cover-analysis"·class="section-heading">
249 ··<a·href="#cross-cover-analysis"·class="hover-link">249 ··<a·href="#cross-cover-analysis"·class="hover-link">
250 ····<i·class="ri-link-m"·aria-hidden="true"></i>250 ····<i·class="ri-link-m"·aria-hidden="true"></i>
251 ··</a>251 ··</a>
252 ··<span·class="text">Cross·Cover·Analysis</span>252 ··<span·class="text">Cross·Cover·Analysis</span>
253 </h2>253 </h2>
Offset 276, 15 lines modifiedOffset 276, 15 lines modified
276 ··{incl_mods,[m1]}.</code></pre><p>This·gives·an·entry·for·<code·class="inline">m1</code>·also·in·the·cover·log·for·test·run·<code·class="inline">s2</code>.·The276 ··{incl_mods,[m1]}.</code></pre><p>This·gives·an·entry·for·<code·class="inline">m1</code>·also·in·the·cover·log·for·test·run·<code·class="inline">s2</code>.·The
277 problem·is·that·this·only·reflects·the·coverage·by·<code·class="inline">s2</code>·tests,·not·the277 problem·is·that·this·only·reflects·the·coverage·by·<code·class="inline">s2</code>·tests,·not·the
278 accumulated·result·over·<code·class="inline">s1</code>·and·<code·class="inline">s2</code>.·This·is·where·the·cross·cover·mechanism278 accumulated·result·over·<code·class="inline">s1</code>·and·<code·class="inline">s2</code>.·This·is·where·the·cross·cover·mechanism
279 comes·in·handy.</p><p>If·instead·the·cover·specification·for·<code·class="inline">s2</code>·is·like·the·following:</p><pre><code·class="text">s2.cover:279 comes·in·handy.</p><p>If·instead·the·cover·specification·for·<code·class="inline">s2</code>·is·like·the·following:</p><pre><code·class="text">s2.cover:
280 ··{cross,[{s1,[m1]}]}.</code></pre><p>Then·<code·class="inline">m1</code>·is·cover·compiled·in·test·run·<code·class="inline">s2</code>,·but·not·shown·in·the·coverage·log.280 ··{cross,[{s1,[m1]}]}.</code></pre><p>Then·<code·class="inline">m1</code>·is·cover·compiled·in·test·run·<code·class="inline">s2</code>,·but·not·shown·in·the·coverage·log.
281 Instead,·if·<a·href="ct_cover.html#cross_cover_analyse/2"><code·class="inline">ct_cover:cross_cover_analyse/2</code></a>·is·called·after·both·<code·class="inline">s1</code>·and·<code·class="inline">s2</code>281 Instead,·if·<a·href="ct_cover.html#cross_cover_analyse/2"><code·class="inline">ct_cover:cross_cover_analyse/2</code></a>·is·called·after·both·<code·class="inline">s1</code>·and·<code·class="inline">s2</code>
282 test·runs·are·completed,·the·accumulated·result·for·<code·class="inline">m1</code>·is·available·in·the282 test·runs·are·completed,·the·accumulated·result·for·<code·class="inline">m1</code>·is·available·in·the
283 cross·cover·log·for·test·run·<code·class="inline">s1</code>.</p><p>The·call·to·the·analyze·function·must·be·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ct_cover</span><span·class="p">:</span><span·class="nf">cross_cover_analyse</span><span·class="p"·data-group-id="2305567610-1">(</span><span·class="n">Level</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2305567610-2">[</span><span·class="p"·data-group-id="2305567610-3">{</span><span·class="ss">s1</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·387,·SHA:·c0189e299576beaae83fa01efd267c4fd05a045429cbb06559cfa71e423beb43·...·]-1">)</span><span·class="p">.</span></code></pre><p>Here,·<code·class="inline">S1LogDir</code>·and·<code·class="inline">S2LogDir</code>·are·the·directories·named·<code·class="inline">&lt;TestName&gt;.logs</code>·for283 cross·cover·log·for·test·run·<code·class="inline">s1</code>.</p><p>The·call·to·the·analyze·function·must·be·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ct_cover</span><span·class="p">:</span><span·class="nf">cross_cover_analyse</span><span·class="p"·data-group-id="7023179594-1">(</span><span·class="n">Level</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7023179594-2">[</span><span·class="p"·data-group-id="7023179594-3">{</span><span·class="ss">s1</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·387,·SHA:·f985700c805b34187115c9d51cd4354994f756e080ddb4fb1105cf71800d9e4d·...·]-1">)</span><span·class="p">.</span></code></pre><p>Here,·<code·class="inline">S1LogDir</code>·and·<code·class="inline">S2LogDir</code>·are·the·directories·named·<code·class="inline">&lt;TestName&gt;.logs</code>·for
284 each·test·respectively.</p><p>Notice·the·tags·<code·class="inline">s1</code>·and·<code·class="inline">s2</code>,·which·are·used·in·the·cover·specification·file284 each·test·respectively.</p><p>Notice·the·tags·<code·class="inline">s1</code>·and·<code·class="inline">s2</code>,·which·are·used·in·the·cover·specification·file
285 and·in·the·call·to·<a·href="ct_cover.html#cross_cover_analyse/2"><code·class="inline">ct_cover:cross_cover_analyse/2</code></a>.·The·purpose·of·these·is285 and·in·the·call·to·<a·href="ct_cover.html#cross_cover_analyse/2"><code·class="inline">ct_cover:cross_cover_analyse/2</code></a>.·The·purpose·of·these·is
286 only·to·map·the·modules·specified·in·the·cover·specification·to·the·log286 only·to·map·the·modules·specified·in·the·cover·specification·to·the·log
287 directory·specified·in·the·call·to·the·analyze·function.·The·tag·name·has·no287 directory·specified·in·the·call·to·the·analyze·function.·The·tag·name·has·no
288 meaning·beyond·this.</p><h2·id="logging"·class="section-heading">288 meaning·beyond·this.</p><h2·id="logging"·class="section-heading">
289 ··<a·href="#logging"·class="hover-link">289 ··<a·href="#logging"·class="hover-link">
290 ····<i·class="ri-link-m"·aria-hidden="true"></i>290 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 349, 15 lines modifiedOffset 349, 15 lines modified
349 ······<p·class="built-using">349 ······<p·class="built-using">
350 ········Built·using350 ········Built·using
351 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the351 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
352 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>352 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
353 ······</p>353 ······</p>
354 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>354 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
355 ····</footer>355 ····</footer>
356 ··</div>356 ··</div>
357 </main>357 </main>
358 </div>358 </div>
359 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>359 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
360 <script>360 <script>
361 ··document.addEventListener("DOMContentLoaded",·function·()·{361 ··document.addEventListener("DOMContentLoaded",·function·()·{
839 B
html2text {}
Max HTML report size reached
40.9 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct.html
    
Offset 1974, 25 lines modifiedOffset 1974, 25 lines modified
1974 ························Opt·::·element·|·all,1974 ························Opt·::·element·|·all,
1975 ························ValueOrElement·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()·|·Default.</pre>1975 ························ValueOrElement·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()·|·Default.</pre>
  
1976 ······</div>1976 ······</div>
  
1977 <p>Reads·configuration·data·values.</p><p>Returns·the·matching·values·or·configuration·elements,·given·a·configuration1977 <p>Reads·configuration·data·values.</p><p>Returns·the·matching·values·or·configuration·elements,·given·a·configuration
1978 variable·key·or·its·associated·name·(if·one·has·been·specified·with1978 variable·key·or·its·associated·name·(if·one·has·been·specified·with
1979 <a·href="#require/2"><code·class="inline">ct:require/2</code></a>·or·a·<code·class="inline">require</code>·statement).</p><p><em>Example:</em></p><p>Given·the·following·configuration·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5117013595-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="5117013595-2">[</span><span·class="p"·data-group-id="5117013595-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">IpAddr[·...·truncated·by·diffoscope;·len:·48,·SHA:·9202bb89949fa33bc58abbe0c47864ba768f106f76479c0c27c2d427966a74fd·...·]-3">}</span><span·class="p">,</span><span·class="w">1979 <a·href="#require/2"><code·class="inline">ct:require/2</code></a>·or·a·<code·class="inline">require</code>·statement).</p><p><em>Example:</em></p><p>Given·the·following·configuration·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8281220113-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="8281220113-2">[</span><span·class="p"·data-group-id="8281220113-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">IpAddr[·...·truncated·by·diffoscope;·len:·48,·SHA:·9e9605bbff1cc042431f76e5e793fa5c2d168c227f8b699f4b153f6ddef46ea7·...·]-3">}</span><span·class="p">,</span><span·class="w">
1980 ·······</span><span·class="p"·data-group-id="5117013595-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="p"·data-group-id="5117013595-5">[</span><span·class="p"·data-group-id="5117013595-6">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">Username</span><span·class="p"·data-group-id="5117013595-6">}</span><span·class="p">,</span><span·class="w"> 
1981 ··············</span><span·class="p"·data-group-id="5117013595-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="5117013595-7">}</span><span·class="p"·data-group-id="5117013595-5">]</span><span·class="p"·data-group-id="5117013595-4">}</span><span·class="p"·data-group-id="5117013595-2">]</span><span·class="p"·data-group-id="5117013595-1">}</span><span·class="p">.</span></code></pre><p>Then:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="4690704072-1">(</span><span·class="ss">unix</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="4690704072-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4690704072-2">[</span><span·class="p"·data-group-id="4690704072-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="4690704072-3">}</span><span·class="p">,</span><span·class="w"> 
1982 ·</span><span·class="p"·data-group-id="4690704072-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4690704072-5">[</span><span·class="p"·data-group-id="4690704072-6">{</span><span·class="s[·...·truncated·by·diffoscope;·len:·519,·SHA:·d19910e0b42b681c6cedd2416b4c7933ffb38deaf1b2588a8cb78d83bc3a7463·...·]</span><span·class="w">1980 ·······</span><span·class="p"·data-group-id="8281220113-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="p"·data-group-id="8281220113-5">[</span><span·class="p"·data-group-id="8281220113-6">{</span><span·class="ss">username</span>[·...·truncated·by·diffoscope;·len:·125,·SHA:·975e6ee86d78d9d37aa865942cc199679eb498c5f990f30dc4501610c59529c0·...·]</span><span·class="w">
 1981 ··············</span><span·class="p"·data-group-id="8281220113-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="8281220113-7">}</span><span·class="p"·data-group-id="8281220113-5">]</span><span·class="p"·data-group-id="8281220113-4">}</span><span·class="p"·data-group-id="8281220113-2">]</span><span·class="p"·data-group-id="8281220113-1">}</span><span·class="p">.</span></code></pre><p>Then:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="5213779301-1">(</span><span·class="ss">unix</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="5213779301-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5213779301-2">[</span><span·class="p"·data-group-id="5213779301-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="5213779301-3">}</span><span·class="p">,</span><span·class="w">
 1982 ·</span><span·class="p"·data-group-id="5213779301-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5213779301-5">[</span><span·class="p"·data-group-id="5213779301-6">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">Username</span><span·class="p"·data-group-id="5213779301-6">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5213779301-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="5213779301-7">}</span><span·class="p"·data-group-id="5213779301-5">]</span><span·class="p"·data-group-id="5213779301-4">}</span><span·class="p"·data-group-id="5213779301-2">]</span><span·class="w">
1983 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="4690704072-8">(</span><span·class="p"·data-group-id="4690704072-9">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">telnet</span><span·class="p"·data-group-id="4690704072-9">}</span><span·class="p">,</span><span·class="n">Defaul[·...·truncated·by·diffoscope;·len:·49,·SHA:·28594b7b474e2943ebde44e179bbd1b64b9bd01410eced1ca574d02e0f2a06da·...·]-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">IpAddr</span><span·class="w">1983 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="5213779301-8">(</span><span·class="p"·data-group-id="5213779301-9">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">telnet</span><span·class="p"·data-group-id="5213779301-9">}</span><span·class="p">,</span><span·class="n">Defaul[·...·truncated·by·diffoscope;·len:·49,·SHA:·6ee5690b202bee637849d62edbfe835c3b5276a6ca00aba89cf3b1790eaa4769·...·]-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">IpAddr</span><span·class="w">
1984 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="4690704072-10">(</span><span·class="p"·data-group-id="4690704072-11">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">user</span><span·class="p">,</span><span·class="ss">username</span><span·class="p"·data-group-id="4690704072-1[·...·truncated·by·diffoscope;·len:·106,·SHA:·ed194bf672a4e6e6004279d74ab30e60308996ed893184a53bc7475a586ab4fd·...·]-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Username</span><span·class="w">1984 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="5213779301-10">(</span><span·class="p"·data-group-id="5213779301-11">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">user</span><span·class="p">,</span><span·class="ss">username</span><span·class="p"·data-group-id="5213779301-1[·...·truncated·by·diffoscope;·len:·106,·SHA:·7d89a99bd1b71babb4d19daaea91c9b12a7a308456173aa1c2db75b7051e0dc1·...·]-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Username</span><span·class="w">
1985 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="4690704072-12">(</span><span·class="p"·data-group-id="4690704072-13">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">ftp</span><span·class="p"·data-group-id="4690704072-13">}</span><span·class="p">,</span><span·class="n">Defaul[·...·truncated·by·diffoscope;·len:·49,·SHA:·28594b7b474e2943ebde44e179bbd1b64b9bd01410eced1ca574d02e0f2a06da·...·]-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Default</span><span·class="w">1985 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="5213779301-12">(</span><span·class="p"·data-group-id="5213779301-13">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">ftp</span><span·class="p"·data-group-id="5213779301-13">}</span><span·class="p">,</span><span·class="n">Defaul[·...·truncated·by·diffoscope;·len:·49,·SHA:·6ee5690b202bee637849d62edbfe835c3b5276a6ca00aba89cf3b1790eaa4769·...·]-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Default</span><span·class="w">
1986 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="4690704072-14">(</span><span·class="ss">unknownkey</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="4690704072-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Default</span></code></pre><p>If·a·configuration·variable·key·has·been·associated·with·a·name·(by1986 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="5213779301-14">(</span><span·class="ss">unknownkey</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="5213779301-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Default</span></code></pre><p>If·a·configuration·variable·key·has·been·associated·with·a·name·(by
1987 <a·href="#require/2"><code·class="inline">ct:require/2</code></a>·or·a·<code·class="inline">require</code>·statement),·the·name·can·be·used1987 <a·href="#require/2"><code·class="inline">ct:require/2</code></a>·or·a·<code·class="inline">require</code>·statement),·the·name·can·be·used
1988 instead·of·the·key·to·read·the·value:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">require</span><span·class="p"·data-group-id="4835240352-1">(</span><span·class="ss">myuser</span><span·class="p">,</span><span·class="p"·data-group-id="4835240352-2">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">user</span><span·class="p"·data-group-id="4835240352-2">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·6453dcc6b2fc0ead7e726e829fb542e408c7185021f619c348faabd4afdb4ce9·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">1988 instead·of·the·key·to·read·the·value:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">require</span><span·class="p"·data-group-id="0089908286-1">(</span><span·class="ss">myuser</span><span·class="p">,</span><span·class="p"·data-group-id="0089908286-2">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="ss">user</span><span·class="p"·data-group-id="0089908286-2">}<[·...·truncated·by·diffoscope;·len:·47,·SHA:·8a9fd32f0745584f87af88f657b95c6329cc3b84d450918c65052e1fded91794·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
1989 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="4835240352-3">(</span><span·class="ss">myuser</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="4835240352-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·507,·SHA:·efc51cdf026db8a86bbdcbc3f3455e7281cb84acd421a6ce904db9511cd9c3a7·...·]-4">]</span></code></pre><p>If·a·configuration·variable·is·defined·in·multiple·files,·use·option·<code·class="inline">all</code>·to1989 </span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="0089908286-3">(</span><span·class="ss">myuser</span><span·class="p">,</span><span·class="n">Default</span><span·class="p"·data-group-id="0089908286-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·507,·SHA:·b08bcd65e5940739b8afe7ea177c5cf7e58b43af07c95f9dd1cf57350f4c7566·...·]-4">]</span></code></pre><p>If·a·configuration·variable·is·defined·in·multiple·files,·use·option·<code·class="inline">all</code>·to
1990 access·all·possible·values.·The·values·are·returned·in·a·list.·The·order·of·the1990 access·all·possible·values.·The·values·are·returned·in·a·list.·The·order·of·the
1991 elements·corresponds·to·the·order·that·the·configuration·files·were·specified·at1991 elements·corresponds·to·the·order·that·the·configuration·files·were·specified·at
1992 startup.</p><p>If·configuration·elements·(key-value·tuples)·are·to·be·returned·as·result1992 startup.</p><p>If·configuration·elements·(key-value·tuples)·are·to·be·returned·as·result
1993 instead·of·values,·use·option·<code·class="inline">element</code>.·The·returned·elements·are·then·on·the1993 instead·of·values,·use·option·<code·class="inline">element</code>.·The·returned·elements·are·then·on·the
1994 form·<code·class="inline">{Required,Value}</code>.</p><p>See·also·<a·href="#get_config/1"><code·class="inline">ct:get_config/1</code></a>,1994 form·<code·class="inline">{Required,Value}</code>.</p><p>See·also·<a·href="#get_config/1"><code·class="inline">ct:get_config/1</code></a>,
1995 <a·href="#get_config/2"><code·class="inline">ct:get_config/2</code></a>,·<a·href="#require/1"><code·class="inline">ct:require/1</code></a>,1995 <a·href="#get_config/2"><code·class="inline">ct:get_config/2</code></a>,·<a·href="#require/1"><code·class="inline">ct:require/1</code></a>,
1996 <a·href="#require/2"><code·class="inline">ct:require/2</code></a>.</p>1996 <a·href="#require/2"><code·class="inline">ct:require/2</code></a>.</p>
Offset 2022, 15 lines modifiedOffset 2022, 15 lines modified
2022 ······<div·class="specs">2022 ······<div·class="specs">
  
2023 ··········<pre·translate="no"><span·class="attribute">-spec</span>·get_event_mgr_ref()·->·EvMgrRef·when·EvMgrRef·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>().</pre>2023 ··········<pre·translate="no"><span·class="attribute">-spec</span>·get_event_mgr_ref()·->·EvMgrRef·when·EvMgrRef·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>().</pre>
  
2024 ······</div>2024 ······</div>
  
2025 <p>Gets·a·reference·to·the·<code·class="inline">Common·Test</code>·event·manager.·The·reference·can·be·used2025 <p>Gets·a·reference·to·the·<code·class="inline">Common·Test</code>·event·manager.·The·reference·can·be·used
2026 to,·for·example,·add·a·user-specific·event·handler·while·tests·are·running.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="8276089777-1">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_event_mgr_ref</span><span·class="p"·data-group-id="8276089777-2">(</span><span·class="p"·data-group-id="8276089777-2">)</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·237,·SHA:·6f06d045e8bda336639c22823a02fefb0487489ea01da358846aed4f1b5e0563·...·]-1">)</span></code></pre>2026 to,·for·example,·add·a·user-specific·event·handler·while·tests·are·running.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="2004923479-1">(</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_event_mgr_ref</span><span·class="p"·data-group-id="2004923479-2">(</span><span·class="p"·data-group-id="2004923479-2">)</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·237,·SHA:·15c45d9e4a661cf665d5687653fed5e2ebe38f8ca4f367fbebd297f2f861384b·...·]-1">)</span></code></pre>
2027 ··</section>2027 ··</section>
2028 </section>2028 </section>
2029 <section·class="detail"·id="get_progname/0">2029 <section·class="detail"·id="get_progname/0">
  
2030 ··<div·class="detail-header">2030 ··<div·class="detail-header">
2031 ····<a·href="#get_progname/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2031 ····<a·href="#get_progname/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
2032 ······<i·class="ri-link-m"·aria-hidden="true"></i>2032 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 2311, 15 lines modifiedOffset 2311, 15 lines modified
2311 ·····················KeyOrFile·::·{key,·Key}·|·{file,·KeyFile},2311 ·····················KeyOrFile·::·{key,·Key}·|·{file,·KeyFile},
2312 ·····················Key·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),2312 ·····················Key·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),
2313 ·····················KeyFile·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),2313 ·····················KeyFile·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),
2314 ·····················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>2314 ·····················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
2315 ······</div>2315 ······</div>
  
2316 <p>Installs·configuration·files·and·event·handlers.</p><p>Run·this·function·once·before·the·first·test.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">install</span><span·class="p"·data-group-id="6520207720-1">(</span><span·class="p"·data-group-id="6520207720-2">[</span><span·class="p"·data-group-id="6520207720-3">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="p"·data-group-id="6520207720-4">[</span><span·class="s">&quot[·...·truncated·by·diffoscope;·len:·303,·SHA:·e34d5bd377fac51394d67d2e74fb517e9fdc1229cfcbd8da7523214cf6efbd23·...·]-1">)</span></code></pre><p>This·function·is·automatically·run·by·program·<code·class="inline">ct_run</code>.</p>2316 <p>Installs·configuration·files·and·event·handlers.</p><p>Run·this·function·once·before·the·first·test.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">install</span><span·class="p"·data-group-id="9777982428-1">(</span><span·class="p"·data-group-id="9777982428-2">[</span><span·class="p"·data-group-id="9777982428-3">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="p"·data-group-id="9777982428-4">[</span><span·class="s">&quot[·...·truncated·by·diffoscope;·len:·303,·SHA:·aedcdc90d8caadad5a86cc6112de3e530aab1fe14aa119c276c0b2a5cd57c1d4·...·]-1">)</span></code></pre><p>This·function·is·automatically·run·by·program·<code·class="inline">ct_run</code>.</p>
2317 ··</section>2317 ··</section>
2318 </section>2318 </section>
2319 <section·class="detail"·id="listenv/1">2319 <section·class="detail"·id="listenv/1">
  
2320 ··<div·class="detail-header">2320 ··<div·class="detail-header">
2321 ····<a·href="#listenv/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2321 ····<a·href="#listenv/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
2322 ······<i·class="ri-link-m"·aria-hidden="true"></i>2322 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 3148, 15 lines modifiedOffset 3148, 15 lines modified
3148 ·····················SubKey·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),3148 ·····················SubKey·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),
3149 ·····················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>3149 ·····················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
3150 ······</div>3150 ······</div>
  
3151 <p>Checks·if·the·required·configuration·is·available.·Arbitrarily·deep·tuples·can3151 <p>Checks·if·the·required·configuration·is·available.·Arbitrarily·deep·tuples·can
3152 be·specified·as·<code·class="inline">Required</code>.·Only·the·last·element·of·the·tuple·can·be·a·list·of3152 be·specified·as·<code·class="inline">Required</code>.·Only·the·last·element·of·the·tuple·can·be·a·list·of
3153 <code·class="inline">SubKey</code>s.</p><p><em>Example·1.</em>·Require·the·variable·<code·class="inline">myvar</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">require</span><span·class="p"·data-group-id="7833133101-1">(</span><span·class="ss">myvar</span><span·class="p"·data-group-id="7833133101-1">)</span><span·class="p">.</span></code></pre><p>In·this·case·the·configuration·file·must·at·least·contain:</p><pre><code·class="makeup·erlang"·translate="no"><s[·...·truncated·by·diffoscope;·len:·3487,·SHA:·b3aba8fa1246e6193d4fe1f72ad4928944c0e23847c2f95610a522b7174b6327·...·]5-1">}</span><span·class="p">.</span></code></pre><p>See·also·<a·href="#get_config/1"><code·class="inline">ct:get_config/1</code></a>,3153 <code·class="inline">SubKey</code>s.</p><p><em>Example·1.</em>·Require·the·variable·<code·class="inline">myvar</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">require</span><span·class="p"·data-group-id="1543263681-1">(</span><span·class="ss">myvar</span><span·class="p"·data-group-id="1543263681-1">)</span><span·class="p">.</span></code></pre><p>In·this·case·the·configuration·file·must·at·least·contain:</p><pre><code·class="makeup·erlang"·translate="no"><s[·...·truncated·by·diffoscope;·len:·3487,·SHA:·77710b82518ee715f13fd52fd5282fed750701c8f3f78e3abceb23a1cc497aeb·...·]5-1">}</span><span·class="p">.</span></code></pre><p>See·also·<a·href="#get_config/1"><code·class="inline">ct:get_config/1</code></a>,
3154 <a·href="#get_config/2"><code·class="inline">ct:get_config/2</code></a>,·<a·href="#get_config/3"><code·class="inline">ct:get_config/3</code></a>,3154 <a·href="#get_config/2"><code·class="inline">ct:get_config/2</code></a>,·<a·href="#get_config/3"><code·class="inline">ct:get_config/3</code></a>,
3155 <a·href="#require/2"><code·class="inline">ct:require/2</code></a>.</p>3155 <a·href="#require/2"><code·class="inline">ct:require/2</code></a>.</p>
3156 ··</section>3156 ··</section>
3157 </section>3157 </section>
3158 <section·class="detail"·id="require/2">3158 <section·class="detail"·id="require/2">
  
3159 ··<div·class="detail-header">3159 ··<div·class="detail-header">
Offset 3190, 16 lines modifiedOffset 3190, 16 lines modified
  
3190 <p>Checks·if·the·required·configuration·is·available·and·gives·it·a·name.·The3190 <p>Checks·if·the·required·configuration·is·available·and·gives·it·a·name.·The
3191 semantics·for·<code·class="inline">Required</code>·is·the·same·as·in·<a·href="#require/1"><code·class="inline">ct:require/1</code></a>·except3191 semantics·for·<code·class="inline">Required</code>·is·the·same·as·in·<a·href="#require/1"><code·class="inline">ct:require/1</code></a>·except
3192 that·a·list·of·<code·class="inline">SubKey</code>s·cannot·be·specified.</p><p>If·the·requested·data·is·available,·the·subentry·is·associated·with·<code·class="inline">Name</code>·so3192 that·a·list·of·<code·class="inline">SubKey</code>s·cannot·be·specified.</p><p>If·the·requested·data·is·available,·the·subentry·is·associated·with·<code·class="inline">Name</code>·so
3193 that·the·value·of·the·element·can·be·read·with3193 that·the·value·of·the·element·can·be·read·with
3194 <a·href="#get_config/1"><code·class="inline">ct:get_config/1,2</code></a>·provided·<code·class="inline">Name</code>·is·used·instead·of·the3194 <a·href="#get_config/1"><code·class="inline">ct:get_config/1,2</code></a>·provided·<code·class="inline">Name</code>·is·used·instead·of·the
3195 whole·<code·class="inline">Required</code>·term.</p><p><em>Example:</em></p><p>Require·one·node·with·a·Telnet·connection·and·an·FTP·connection.·Name·the·node3195 whole·<code·class="inline">Required</code>·term.</p><p><em>Example:</em></p><p>Require·one·node·with·a·Telnet·connection·and·an·FTP·connection.·Name·the·node
3196 <code·class="inline">a</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">require</span><span·class="p"·data-group-id="6302891183-1">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="p"·data-group-id="6302891183-2">{</span><span·class="ss">machine</span><span·class="p">,</span><span·class="nb">node</span><span·class="p"·data-group-id="6302891183-2">}</span><span·class="p"·data-group-id="6302891183-1">)</span><span·class="p">.</span></code></pre><p>All·references·to·this·node·can·then·use·the·node·name.·For·example,·a·file·over 
3197 FTP·is·fetched·like·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">ftp_get</sp[·...·truncated·by·diffoscope;·len:·1510,·SHA:·79db800032501bbc430b859c3c7ee0121582f04ddd2566ee9d55767018e58696·...·]3196 <code·class="inline">a</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">require</[·...·truncated·by·diffoscope;·len:·469,·SHA:·eb84fc948f9af95d5d1eff5f04a5897b567f40db901ab2a50d7349dacf8615f2·...·]
 3197 FTP·is·fetched·like·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">ftp_get</span><span·class="p"·data-group-id="8974123950-1">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="n">RemoteFile</span><span·class="p">,</span><span·class="n">LocalFile</span><span·class="p"·data-group-id="8974123950-1">)</span><span·class="p">.</span></code></pre><p>For·this·to·work,·the·configuration·file·must·at·least·contain:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8354746406-1">{</span><span·class="ss">machine</span><span·class="p">,</span><span·class="p"·data-group-id="8354746406-2">[</span><span·class="p"·data-group-id="8354746406-3">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="8354746406-4">[</span><span·class="p"·data-group-id="8354746406-5">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="8354746406-5">}</span><span·class="p">,</span><span·class="p"·data-group-id="8354746406-6">{</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="n">IpAddr</span><span·class="p"·data-group-id="8354746406-6">}</span><span·class="p"·data-group-id="8354746406-4">]</span><span·class="p"·data-group-id="8354746406-3">}</span><span·class="p"·data-group-id="8354746406-2">]</span><span·class="p"·data-group-id="8354746406-1">}</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>The·behavior·of·this·function·changed·radically·in·<code·class="inline">Common·Test</code>·1.6.2.·To
3198 keep·some·backwards·compatibility,·it·is·still·possible·to·do:3198 keep·some·backwards·compatibility,·it·is·still·possible·to·do:
3199 <code·class="inline">ct:require(a,{node,[telnet,ftp]}).</code>·This·associates·the·name·<code·class="inline">a</code>·with·the3199 <code·class="inline">ct:require(a,{node,[telnet,ftp]}).</code>·This·associates·the·name·<code·class="inline">a</code>·with·the
3200 top-level·<code·class="inline">node</code>·entry.·For·this·to·work,·the·configuration·file·must·at·least3200 top-level·<code·class="inline">node</code>·entry.·For·this·to·work,·the·configuration·file·must·at·least
3201 contain:·<code·class="inline">{node,[{telnet,IpAddr},{ftp,IpAddr}]}.</code></p></blockquote><p>See·also·<a·href="#get_config/1"><code·class="inline">ct:get_config/1</code></a>,3201 contain:·<code·class="inline">{node,[{telnet,IpAddr},{ftp,IpAddr}]}.</code></p></blockquote><p>See·also·<a·href="#get_config/1"><code·class="inline">ct:get_config/1</code></a>,
3202 <a·href="#get_config/2"><code·class="inline">ct:get_config/2</code></a>,·<a·href="#get_config/3"><code·class="inline">ct:get_config/3</code></a>,3202 <a·href="#get_config/2"><code·class="inline">ct:get_config/2</code></a>,·<a·href="#get_config/3"><code·class="inline">ct:get_config/3</code></a>,
3203 <a·href="#require/1"><code·class="inline">ct:require/1</code></a>.</p>3203 <a·href="#require/1"><code·class="inline">ct:require/1</code></a>.</p>
3204 ··</section>3204 ··</section>
Offset 3566, 20 lines modifiedOffset 3566, 20 lines modified
  
3566 ······</div>3566 ······</div>
  
3567 <p>Starts·<code·class="inline">Common·Test</code>·in·interactive·mode.</p><p>From·this·mode,·all·test·case·support·functions·can·be·executed·directly·from3567 <p>Starts·<code·class="inline">Common·Test</code>·in·interactive·mode.</p><p>From·this·mode,·all·test·case·support·functions·can·be·executed·directly·from
3568 the·Erlang·shell.·The·interactive·mode·can·also·be·started·from·the·OS·command3568 the·Erlang·shell.·The·interactive·mode·can·also·be·started·from·the·OS·command
3569 line·with·<code·class="inline">ct_run·-shell·[-config·File...]</code>.</p><p>If·any·functions·(for·example,·Telnet·or·FTP)·using·&quot;required·configuration3569 line·with·<code·class="inline">ct_run·-shell·[-config·File...]</code>.</p><p>If·any·functions·(for·example,·Telnet·or·FTP)·using·&quot;required·configuration
3570 data&quot;·are·to·be·called·from·the·Erlang·shell,·configuration·data·must·first·be3570 data&quot;·are·to·be·called·from·the·Erlang·shell,·configuration·data·must·first·be
3571 required·with·<a·href="#require/2"><code·class="inline">ct:require/2</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">require</span><span·class="p"·data-group-id="7575274195-1">(</span><span·class="ss">unix_telnet</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">unix</span><span·class="p"·data-group-id="7575274195-1">)</span><span·class="p">.</span><span·class="w">3571 required·with·<a·href="#require/2"><code·class="inline">ct:require/2</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">require</span><span·class="p"·data-group-id="9170858843-1">(</span><span·class="ss">unix_telnet</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">unix</span><span·class="p"·data-group-id="9170858843-1">)</span><span·class="p">.</span><span·class="w">
3572 </span><span·class="ss">ok</span><span·class="gp·unselectable">3572 </span><span·class="ss">ok</span><span·class="gp·unselectable">
3573 &gt;·</span><span·class="nc">ct_telnet</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="7575274195-2">(</span><span·class="ss">unix_telnet</span><span·class="p"·data-group-id="7575274195-2">)</span><span·class="p">.</span><span·class="w">3573 &gt;·</span><span·class="nc">ct_telnet</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="9170858843-2">(</span><span·class="ss">unix_telnet</span><span·class="p"·data-group-id="9170858843-2">)</span><span·class="p">.</span><span·class="w">
3574 </span><span·class="p"·data-group-id="7575274195-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.105</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="7575274195-3">}</span><span·class="gp·unselectable">3574 </span><span·class="p"·data-group-id="9170858843-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.105</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="9170858843-3">}</span><span·class="gp·unselectable">
3575 &gt;·</span><span·class="nc">ct_telnet</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="7575274195-4">(</span><span·class="ss">unix_telnet</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;ls·.&quot;</span><span·class="p"·data-group-id="7575274195-4">)</span><span·class="p">.</span><span·class="w">3575 &gt;·</span><span·class="nc">ct_telnet</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="9170858843-4">(</span><span·class="ss">unix_telnet</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;ls·.&quot;</span><span·class="p"·data-group-id="9170858843-4">)</span><span·class="p">.</span><span·class="w">
3576 </span><span·class="p"·data-group-id="7575274195-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7575274195-6">[</span><span·class="s">&quot;ls&quot;</span><span·class="p">,</span><span·class="s">&quot;file1··...&quot;</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·165,·SHA:·b3d618eeac56585bbc8a317fe4cd38f704c41124ac8dff621c2d04f2696f970f·...·]-5">}</span></code></pre>3576 </span><span·class="p"·data-group-id="9170858843-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9170858843-6">[</span><span·class="s">&quot;ls&quot;</span><span·class="p">,</span><span·class="s">&quot;file1··...&quot;</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·165,·SHA:·aa74bf47684d94e15aa46b81932b21721140ea46a18e3dde2820a0a26324bd2b·...·]-5">}</span></code></pre>
3577 ··</section>3577 ··</section>
3578 </section>3578 </section>
3579 <section·class="detail"·id="step/3">3579 <section·class="detail"·id="step/3">
  
3580 ··<div·class="detail-header">3580 ··<div·class="detail-header">
3581 ····<a·href="#step/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">3581 ····<a·href="#step/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
3582 ······<i·class="ri-link-m"·aria-hidden="true"></i>3582 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 3865, 15 lines modifiedOffset 3865, 15 lines modified
3865 ······<p·class="built-using">3865 ······<p·class="built-using">
3866 ········Built·using3866 ········Built·using
3867 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3867 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3868 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3868 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3869 ······</p>3869 ······</p>
3870 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3870 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3871 ····</footer>3871 ····</footer>
3872 ··</div>3872 ··</div>
3873 </main>3873 </main>
3874 </div>3874 </div>
Max diff block lines reached; 73/41090 bytes (0.18%) of diff not shown.
648 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_cover.html
    
Offset 313, 15 lines modifiedOffset 313, 15 lines modified
313 ······<p·class="built-using">313 ······<p·class="built-using">
314 ········Built·using314 ········Built·using
315 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the315 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
316 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>316 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
317 ······</p>317 ······</p>
318 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>318 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
319 ····</footer>319 ····</footer>
320 ··</div>320 ··</div>
321 </main>321 </main>
322 </div>322 </div>
323 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>323 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
324 <script>324 <script>
325 ··document.addEventListener("DOMContentLoaded",·function·()·{325 ··document.addEventListener("DOMContentLoaded",·function·()·{
701 B
html2text {}
Max HTML report size reached
6.03 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_ftp.html
    
Offset 585, 18 lines modifiedOffset 585, 18 lines modified
585 ·················LocalFile·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename/0">file:filename</a>(),585 ·················LocalFile·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename/0">file:filename</a>(),
586 ·················RemoteFile·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename/0">file:filename</a>(),586 ·················RemoteFile·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename/0">file:filename</a>(),
587 ·················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>587 ·················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
588 ······</div>588 ······</div>
  
589 <p>Opens·an·FTP·connection·and·sends·a·file·to·the·remote·host.</p><p><code·class="inline">LocalFile</code>·and·<code·class="inline">RemoteFile</code>·must·be·absolute·paths.</p><p>For·<code·class="inline">target_name</code>,·see·module·<a·href="ct.html"><code·class="inline">ct</code></a>.</p><p>If·the·target·host·is·a·&quot;special&quot;·node,·the·FTP·address·must·be·specified·in·the589 <p>Opens·an·FTP·connection·and·sends·a·file·to·the·remote·host.</p><p><code·class="inline">LocalFile</code>·and·<code·class="inline">RemoteFile</code>·must·be·absolute·paths.</p><p>For·<code·class="inline">target_name</code>,·see·module·<a·href="ct.html"><code·class="inline">ct</code></a>.</p><p>If·the·target·host·is·a·&quot;special&quot;·node,·the·FTP·address·must·be·specified·in·the
590 configuration·file·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5550056133-1">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="5550056133-2">[</span><span·class="p"·data-group-id="5550056133-3">{</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="n">IpAddr</s[·...·truncated·by·diffoscope;·len:·151,·SHA:·1e5b994debe544ded81d936ecd7aa25dd67d486521d9f93c33a9f06fbe30e3e8·...·]-1">}</span><span·class="p">.</span></code></pre><p>If·the·target·host·is·something·else,·for·example,·a·UNIX·host,·the590 configuration·file·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6217410268-1">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="p"·data-group-id="6217410268-2">[</span><span·class="p"·data-group-id="6217410268-3">{</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="n">IpAddr</s[·...·truncated·by·diffoscope;·len:·151,·SHA:·630347aa4c853e04325c6fd765d0463b9385692a3547c89af142899e1b62067d·...·]-1">}</span><span·class="p">.</span></code></pre><p>If·the·target·host·is·something·else,·for·example,·a·UNIX·host,·the
591 configuration·file·must·also·include·the·username·and·password·(both·strings):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7499436796-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="7499436796-2">[</span><span·class="p"·data-group-id="7499436796-3">{</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="n">IpAddr</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·60960cfe1eebf496e9fbf47a395f0970bafa0edef3818335e442f3e9988143d7·...·]-3">}</span><span·class="p">,</span><span·class="w">591 configuration·file·must·also·include·the·username·and·password·(both·strings):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6650661939-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="6650661939-2">[</span><span·class="p"·data-group-id="6650661939-3">{</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="n">IpAddr</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·70e2a0255b875c219fcf4d28046a35c336239bdee3839e5ecb59d7f0b591dbf6·...·]-3">}</span><span·class="p">,</span><span·class="w">
592 ·······</span><span·class="p"·data-group-id="7499436796-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">Username</span><span·class="p"·data-group-id="7499436796-4">}</span><span·class="p">,</span><span·class="w">592 ·······</span><span·class="p"·data-group-id="6650661939-4">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">Username</span><span·class="p"·data-group-id="6650661939-4">}</span><span·class="p">,</span><span·class="w">
593 ·······</span><span·class="p"·data-group-id="7499436796-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="7499436796-5">}</span><span·class="p"·data-group-id="7499436796-2">]</span><span·class="p"·data-group-id="7499436796-1">}</span><span·class="p">.</span></code></pre><p>See·also·<a·href="ct.html#require/2"><code·class="inline">ct:require/2</code></a>.</p>593 ·······</span><span·class="p"·data-group-id="6650661939-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="6650661939-5">}</span><span·class="p"·data-group-id="6650661939-2">]</span><span·class="p"·data-group-id="6650661939-1">}</span><span·class="p">.</span></code></pre><p>See·also·<a·href="ct.html#require/2"><code·class="inline">ct:require/2</code></a>.</p>
594 ··</section>594 ··</section>
595 </section>595 </section>
596 <section·class="detail"·id="recv/2">596 <section·class="detail"·id="recv/2">
  
597 ··<div·class="detail-header">597 ··<div·class="detail-header">
598 ····<a·href="#recv/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">598 ····<a·href="#recv/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
599 ······<i·class="ri-link-m"·aria-hidden="true"></i>599 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 770, 15 lines modifiedOffset 770, 15 lines modified
770 ······<p·class="built-using">770 ······<p·class="built-using">
771 ········Built·using771 ········Built·using
772 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the772 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
773 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>773 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
774 ······</p>774 ······</p>
775 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>775 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
776 ····</footer>776 ····</footer>
777 ··</div>777 ··</div>
778 </main>778 </main>
779 </div>779 </div>
780 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>780 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
781 <script>781 <script>
782 ··document.addEventListener("DOMContentLoaded",·function·()·{782 ··document.addEventListener("DOMContentLoaded",·function·()·{
608 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_hooks.html
    
Offset 1397, 15 lines modifiedOffset 1397, 15 lines modified
1397 ······<p·class="built-using">1397 ······<p·class="built-using">
1398 ········Built·using1398 ········Built·using
1399 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1399 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1400 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1400 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1401 ······</p>1401 ······</p>
1402 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1402 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1403 ····</footer>1403 ····</footer>
1404 ··</div>1404 ··</div>
1405 </main>1405 </main>
1406 </div>1406 </div>
1407 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1407 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1408 <script>1408 <script>
1409 ··document.addEventListener("DOMContentLoaded",·function·()·{1409 ··document.addEventListener("DOMContentLoaded",·function·()·{
608 B
html2text {}
Max HTML report size reached
61.5 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_hooks_chapter.html
    
Offset 249, 20 lines modifiedOffset 249, 20 lines modified
249 </h3>249 </h3>
250 <p>In·a·CTH,·the·behavior·can·be·hooked·in·before·the·following·functions:</p><ul><li><a·href="ct_suite.html#c:init_per_suite/1"><code·class="inline">init_per_suite</code></a></li><li><a·href="ct_suite.html#c:init_per_group/2"><code·class="inline">init_per_group</code></a></li><li><a·href="ct_suite.html#c:init_per_testcase/2"><code·class="inline">init_per_testcase</code></a></li><li><a·href="ct_suite.html#c:end_per_testcase/2"><code·class="inline">end_per_testcase</code></a></li><li><a·href="ct_suite.html#c:end_per_group/2"><code·class="inline">end_per_group</code></a></li><li><a·href="ct_suite.html#c:end_per_suite/1"><code·class="inline">end_per_suite</code></a></li></ul><p>This·is·done·in·the·CTH·functions·called·<code·class="inline">pre_&lt;name·of·function&gt;</code>.·These250 <p>In·a·CTH,·the·behavior·can·be·hooked·in·before·the·following·functions:</p><ul><li><a·href="ct_suite.html#c:init_per_suite/1"><code·class="inline">init_per_suite</code></a></li><li><a·href="ct_suite.html#c:init_per_group/2"><code·class="inline">init_per_group</code></a></li><li><a·href="ct_suite.html#c:init_per_testcase/2"><code·class="inline">init_per_testcase</code></a></li><li><a·href="ct_suite.html#c:end_per_testcase/2"><code·class="inline">end_per_testcase</code></a></li><li><a·href="ct_suite.html#c:end_per_group/2"><code·class="inline">end_per_group</code></a></li><li><a·href="ct_suite.html#c:end_per_suite/1"><code·class="inline">end_per_suite</code></a></li></ul><p>This·is·done·in·the·CTH·functions·called·<code·class="inline">pre_&lt;name·of·function&gt;</code>.·These
251 functions·take·the·arguments·<code·class="inline">SuiteName</code>,·<code·class="inline">Name</code>·(group·or·test·case·name,·if251 functions·take·the·arguments·<code·class="inline">SuiteName</code>,·<code·class="inline">Name</code>·(group·or·test·case·name,·if
252 applicable),·<code·class="inline">Config</code>,·and·<code·class="inline">CTHState</code>.·The·return·value·of·the·CTH·function·is252 applicable),·<code·class="inline">Config</code>,·and·<code·class="inline">CTHState</code>.·The·return·value·of·the·CTH·function·is
253 always·a·combination·of·a·result·for·the·suite/group/test·and·an·updated253 always·a·combination·of·a·result·for·the·suite/group/test·and·an·updated
254 <code·class="inline">CTHState</code>.</p><p>To·let·the·test·suite·continue·on·executing,·return·the·configuration·list·that254 <code·class="inline">CTHState</code>.</p><p>To·let·the·test·suite·continue·on·executing,·return·the·configuration·list·that
255 you·want·the·test·to·use·as·the·result.</p><p>All·pre·hooks,·except·<code·class="inline">pre_end_per_testcase/4</code>,·can·skip·or·fail·the·test·by255 you·want·the·test·to·use·as·the·result.</p><p>All·pre·hooks,·except·<code·class="inline">pre_end_per_testcase/4</code>,·can·skip·or·fail·the·test·by
256 returning·a·tuple·with·<code·class="inline">skip</code>·or·<code·class="inline">fail</code>,·and·a·reason·as·the·result.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">pre_init_per_suite</span><span·class="p"·data-group-id="6479736664-1">(</span><span·class="n">SuiteName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CTHState</span><span·class="p"·data-group-id="6479736664-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">256 returning·a·tuple·with·<code·class="inline">skip</code>·or·<code·class="inline">fail</code>,·and·a·reason·as·the·result.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">pre_init_per_suite</span><span·class="p"·data-group-id="6779070097-1">(</span><span·class="n">SuiteName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CTHState</span><span·class="p"·data-group-id="6779070097-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
257 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="6479736664-2">(</span><span·class="p"·data-group-id="6479736664-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">257 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="6779070097-2">(</span><span·class="p"·data-group-id="6779070097-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
258 ····</span><span·class="p"·data-group-id="6479736664-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p">_</span><span·class="n">Reason</span><span·class="p"·data-group-id="6479736664-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">258 ····</span><span·class="p"·data-group-id="6779070097-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p">_</span><span·class="n">Reason</span><span·class="p"·data-group-id="6779070097-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
259 ······</span><span·class="p"·data-group-id="6479736664-4">{</span><span·class="p"·data-group-id="6479736664-5">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Could·not·connect·to·DB&quot;</span><span·class="p"·data-group-id="6479736664-5">}</[·...·truncated·by·diffoscope;·len:·125,·SHA:·fa81f9b6a19cb612695c471e5c78d253bcffe0a8dc6167cd0d56992fc838b9b7·...·]-4">}</span><span·class="p">;</span><span·class="w">259 ······</span><span·class="p"·data-group-id="6779070097-4">{</span><span·class="p"·data-group-id="6779070097-5">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Could·not·connect·to·DB&quot;</span><span·class="p"·data-group-id="6779070097-5">}</[·...·truncated·by·diffoscope;·len:·125,·SHA:·96860a763fdc30644124fcdb05b03fe148247db6c9378aa52019d419ecf5a344·...·]-4">}</span><span·class="p">;</span><span·class="w">
260 ····</span><span·class="p"·data-group-id="6479736664-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handle</span><span·class="p"·data-group-id="6479736664-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">260 ····</span><span·class="p"·data-group-id="6779070097-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handle</span><span·class="p"·data-group-id="6779070097-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
261 ······</span><span·class="p"·data-group-id="6479736664-7">{</span><span·class="p"·data-group-id="6479736664-8">[</span><span·class="p"·data-group-id="6479736664-9">{</span><span·class="ss">db_handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handle</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·648,·SHA:·67334ee3217229017df1c360b3972d72401a6d3bd9f60a5de87c05055a7aec4c·...·]-7">}</span><span·class="w">261 ······</span><span·class="p"·data-group-id="6779070097-7">{</span><span·class="p"·data-group-id="6779070097-8">[</span><span·class="p"·data-group-id="6779070097-9">{</span><span·class="ss">db_handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handle</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·648,·SHA:·324f325272bca3af871114a78c083082f3b4ece70b55105246fa36d2e62ffdee·...·]-7">}</span><span·class="w">
262 ··</span><span·class="k">end</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>If·you·use·multiple·CTHs,·the·first·part·of·the·return·tuple·is·used·as·input262 ··</span><span·class="k">end</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>If·you·use·multiple·CTHs,·the·first·part·of·the·return·tuple·is·used·as·input
263 for·the·next·CTH.·So·in·the·previous·example·the·next·CTH·can·get263 for·the·next·CTH.·So·in·the·previous·example·the·next·CTH·can·get
264 <code·class="inline">{fail,Reason}</code>·as·the·second·parameter.·If·you·have·many·CTHs·interacting,·do264 <code·class="inline">{fail,Reason}</code>·as·the·second·parameter.·If·you·have·many·CTHs·interacting,·do
265 not·let·each·CTH·return·<code·class="inline">fail</code>·or·<code·class="inline">skip</code>.·Instead,·return·that·an·action·is·to265 not·let·each·CTH·return·<code·class="inline">fail</code>·or·<code·class="inline">skip</code>.·Instead,·return·that·an·action·is·to
266 be·taken·through·the·<code·class="inline">Config</code>·list·and·implement·a·CTH·that,·at·the·end,·takes266 be·taken·through·the·<code·class="inline">Config</code>·list·and·implement·a·CTH·that,·at·the·end,·takes
267 the·correct·action.</p></blockquote><p><a·href=""·id="post"></a></p><h3·id="post-hooks"·class="section-heading">267 the·correct·action.</p></blockquote><p><a·href=""·id="post"></a></p><h3·id="post-hooks"·class="section-heading">
268 ··<a·href="#post-hooks"·class="hover-link">268 ··<a·href="#post-hooks"·class="hover-link">
Offset 276, 26 lines modifiedOffset 276, 26 lines modified
276 same·<code·class="inline">Config</code>·as·the·testcase·is·called·with.·<code·class="inline">Return</code>·is·the·value·returned·by276 same·<code·class="inline">Config</code>·as·the·testcase·is·called·with.·<code·class="inline">Return</code>·is·the·value·returned·by
277 the·testcase.·If·the·testcase·fails·by·crashing,·<code·class="inline">Return</code>·is277 the·testcase.·If·the·testcase·fails·by·crashing,·<code·class="inline">Return</code>·is
278 <code·class="inline">{'EXIT',{{Error,Reason},Stacktrace}}</code>.</p><p>The·return·value·of·the·CTH·function·is·always·a·combination·of·a·result·for·the278 <code·class="inline">{'EXIT',{{Error,Reason},Stacktrace}}</code>.</p><p>The·return·value·of·the·CTH·function·is·always·a·combination·of·a·result·for·the
279 suite/group/test·and·an·updated·<code·class="inline">CTHState</code>.·If·you·do·not·want·the·callback·to279 suite/group/test·and·an·updated·<code·class="inline">CTHState</code>.·If·you·do·not·want·the·callback·to
280 affect·the·outcome·of·the·test,·return·the·<code·class="inline">Return</code>·data·as·it·is·given·to·the280 affect·the·outcome·of·the·test,·return·the·<code·class="inline">Return</code>·data·as·it·is·given·to·the
281 CTH.·You·can·also·modify·the·test·result.·By·returning·the·<code·class="inline">Config</code>·list·with281 CTH.·You·can·also·modify·the·test·result.·By·returning·the·<code·class="inline">Config</code>·list·with
282 element·<code·class="inline">tc_status</code>·removed,·you·can·recover·from·a·test·failure.·As·in·all·the282 element·<code·class="inline">tc_status</code>·removed,·you·can·recover·from·a·test·failure.·As·in·all·the
283 pre·hooks,·it·is·also·possible·to·fail/skip·the·test·case·in·the·post·hook.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">post_end_per_testcase</span><span·class="p"·data-group-id="9789334950-1">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">TC</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·cl[·...·truncated·by·diffoscope;·len:·506,·SHA:·436e664d218aabac82b2b3a6d7728fa5cda2ca90fbc0aee89cd1a565ea7929af·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">283 pre·hooks,·it·is·also·possible·to·fail/skip·the·test·case·in·the·post·hook.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">post_end_per_testcase</span><span·class="p"·data-group-id="6728586525-1">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">TC</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·cl[·...·truncated·by·diffoscope;·len:·506,·SHA:·ce2587e2890ab2b8f8a678b13bc5b6d847bfda969f5debc8bb0539dd9d5456b7·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
284 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">check_consistency</span><span·class="p"·data-group-id="9789334950-4">(</span><span·class="p"·data-group-id="9789334950-4">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">284 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">check_consistency</span><span·class="p"·data-group-id="6728586525-4">(</span><span·class="p"·data-group-id="6728586525-4">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
285 ····</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">285 ····</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
286 ······</span><span·class="c1">%%·DB·is·good,·pass·the·test.</span><span·class="w">286 ······</span><span·class="c1">%%·DB·is·good,·pass·the·test.</span><span·class="w">
287 ······</span><span·class="p"·data-group-id="9789334950-5">{</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="9789334950-6">(</span><span·class="ss">tc_status</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·189,·SHA:·059ada32e784197d6dcc3c3bd3cdc640b41a6b7ba0cd2ae12bac0c49fb5567cb·...·]-5">}</span><span·class="p">;</span><span·class="w">287 ······</span><span·class="p"·data-group-id="6728586525-5">{</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="6728586525-6">(</span><span·class="ss">tc_status</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·189,·SHA:·928f49df2ceee13b835da9117b830cb07fad0da972fb0a1e8af69ba9f6db14f8·...·]-5">}</span><span·class="p">;</span><span·class="w">
288 ····</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">288 ····</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
289 ······</span><span·class="c1">%%·DB·is·not·good,·mark·as·skipped·instead·of·failing</span><span·class="w">289 ······</span><span·class="c1">%%·DB·is·not·good,·mark·as·skipped·instead·of·failing</span><span·class="w">
290 ······</span><span·class="p"·data-group-id="9789334950-7">{</span><span·class="p"·data-group-id="9789334950-8">{</span><span·class="ss">skip</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;DB·is·inconsistent!&quot;</span><span·class="p"·data-group-id="9789334950-8">}</spa[·...·truncated·by·diffoscope;·len:·122,·SHA:·e5a2e81c30bfd5896c5e9f6b777fe8490716c5eb8b1d5826c565669c53618659·...·]-7">}</span><span·class="w">290 ······</span><span·class="p"·data-group-id="6728586525-7">{</span><span·class="p"·data-group-id="6728586525-8">{</span><span·class="ss">skip</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;DB·is·inconsistent!&quot;</span><span·class="p"·data-group-id="6728586525-8">}</spa[·...·truncated·by·diffoscope;·len:·122,·SHA:·ef513f2ca4830c9f4e04e05605a56e3d0bcf0c7af98d44c6824effe04a25cec8·...·]-7">}</span><span·class="w">
291 ··</span><span·class="k">end</span><span·class="p">;</span><span·class="w">291 ··</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
292 </span><span·class="nf">post_end_per_testcase</span><span·class="p"·data-group-id="9789334950-9">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">TC</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·cl[·...·truncated·by·diffoscope;·len:·189,·SHA:·e4572cae711175ff2eb98f1e924ca9c6e43068abcbf4e85fd7e079b0b3c249da·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">292 </span><span·class="nf">post_end_per_testcase</span><span·class="p"·data-group-id="6728586525-9">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">TC</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·cl[·...·truncated·by·diffoscope;·len:·189,·SHA:·8cc8157e7275794849fcb6a645d24c71d94b8da64d7cc1290d66dd8d509d2fac·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
293 ··</span><span·class="c1">%%·Do·nothing·if·tc·does·not·crash.</span><span·class="w">293 ··</span><span·class="c1">%%·Do·nothing·if·tc·does·not·crash.</span><span·class="w">
294 ··</span><span·class="p"·data-group-id="9789334950-10">{</span><span·class="n">Return</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CTHState</span><span·class="p"·data-group-id="9789334950-10">}</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>Do·recover·from·a·testcase·failure·using·CTHs·only·a·last·resort.·If·used294 ··</span><span·class="p"·data-group-id="6728586525-10">{</span><span·class="n">Return</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CTHState</span><span·class="p"·data-group-id="6728586525-10">}</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>Do·recover·from·a·testcase·failure·using·CTHs·only·a·last·resort.·If·used
295 wrongly,·it·can·be·very·difficult·to·determine·which·tests·that·pass·or·fail295 wrongly,·it·can·be·very·difficult·to·determine·which·tests·that·pass·or·fail
296 in·a·test·run.</p></blockquote><h3·id="skip-and-fail-hooks"·class="section-heading">296 in·a·test·run.</p></blockquote><h3·id="skip-and-fail-hooks"·class="section-heading">
297 ··<a·href="#skip-and-fail-hooks"·class="hover-link">297 ··<a·href="#skip-and-fail-hooks"·class="hover-link">
298 ····<i·class="ri-link-m"·aria-hidden="true"></i>298 ····<i·class="ri-link-m"·aria-hidden="true"></i>
299 ··</a>299 ··</a>
300 ··<span·class="text">Skip·and·Fail·Hooks</span>300 ··<span·class="text">Skip·and·Fail·Hooks</span>
301 </h3>301 </h3>
Offset 336, 88 lines modifiedOffset 336, 88 lines modified
336 <p>The·following·CTH·logs·information·about·a·test·run·into·a·format·parseable·by336 <p>The·following·CTH·logs·information·about·a·test·run·into·a·format·parseable·by
337 <a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#consult/1"><code·class="inline">file:consult/1</code></a>·(in·Kernel):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%·Common·Test·Example·Common·Test·Hook·module.</span><span·class="w">337 <a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#consult/1"><code·class="inline">file:consult/1</code></a>·(in·Kernel):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%%·Common·Test·Example·Common·Test·Hook·module.</span><span·class="w">
338 </span><span·class="c1">%%%</span><span·class="w">338 </span><span·class="c1">%%%</span><span·class="w">
339 </span><span·class="c1">%%%·To·use·this·hook,·on·the·command·line:</span><span·class="w">339 </span><span·class="c1">%%%·To·use·this·hook,·on·the·command·line:</span><span·class="w">
340 </span><span·class="c1">%%%·····ct_run·-suite·example_SUITE·-pa·.·-ct_hooks·example_cth</span><span·class="w">340 </span><span·class="c1">%%%·····ct_run·-suite·example_SUITE·-pa·.·-ct_hooks·example_cth</span><span·class="w">
341 </span><span·class="c1">%%%</span><span·class="w">341 </span><span·class="c1">%%%</span><span·class="w">
342 </span><span·class="c1">%%%·Note·`-pa·.`:·the·hook·beam·file·must·be·in·the·code·path·when·installing.</span><span·class="w">342 </span><span·class="c1">%%%·Note·`-pa·.`:·the·hook·beam·file·must·be·in·the·code·path·when·installing.</span><span·class="w">
343 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7368913291-1">(</span><span·class="ss">example_cth</span><span·class="p"·data-group-id="7368913291-1">)</span><span·class="p">.</span><span·class="w">343 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9800881550-1">(</span><span·class="ss">example_cth</span><span·class="p"·data-group-id="9800881550-1">)</span><span·class="p">.</span><span·class="w">
  
344 </span><span·class="c1">%%·Mandatory·Callbacks</span><span·class="w">344 </span><span·class="c1">%%·Mandatory·Callbacks</span><span·class="w">
345 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7368913291-2">(</span><span·class="p"·data-group-id="7368913291-3">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="7368913291-3">]</span><span·class="p"·data-group-id="7368913291-2">)</span><span·class="p">.</span><span·class="w">345 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9800881550-2">(</span><span·class="p"·data-group-id="9800881550-3">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="9800881550-3">]</span><span·class="p"·data-group-id="9800881550-2">)</span><span·class="p">.</span><span·class="w">
  
346 </span><span·class="c1">%%·Optional·Callbacks</span><span·class="w">346 </span><span·class="c1">%%·Optional·Callbacks</span><span·class="w">
347 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7368913291-4">(</span><span·class="p"·data-group-id="7368913291-5">[</span><span·class="ss">id</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="7368913291-5">]</span><span·class="p"·data-group-id="7368913291-4">)</span><span·class="p">.</span><span·class="w">347 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9800881550-4">(</span><span·class="p"·data-group-id="9800881550-5">[</span><span·class="ss">id</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="9800881550-5">]</span><span·class="p"·data-group-id="9800881550-4">)</span><span·class="p">.</span><span·class="w">
348 </span><span·class="w">348 </span><span·class="w">
349 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7368913291-6">(</span><span·class="p"·data-group-id="7368913291-7">[</span><span·class="ss">pre_init_per_suite</span><span·class="p">/</span><span·class="mi">3</span><span·class="p"·data-group-id="7368913291-7">]</span><span·class="p"·data-group-id="736891[·...·truncated·by·diffoscope;·len:·4,·SHA:·5c7a722d8d8f97d6d923396f673c15bab9722658cbe5ab24438a3ddadde5403f·...·]-6">)</span><span·class="p">.</span><span·class="w">349 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9800881550-6">(</span><span·class="p"·data-group-id="9800881550-7">[</span><span·class="ss">pre_init_per_suite</span><span·class="p">/</span><span·class="mi">3</span><span·class="p"·data-group-id="9800881550-7">]</span><span·class="p"·data-group-id="980088[·...·truncated·by·diffoscope;·len:·4,·SHA:·c27484c7087191b29f05f9c05efc20adeabbf7549f642629322532cb685ffb99·...·]-6">)</span><span·class="p">.</span><span·class="w">
350 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7368913291-8">(</span><span·class="p"·data-group-id="7368913291-9">[</span><span·class="ss">post_end_per_suite</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="7368913291-9">]</span><span·class="p"·data-group-id="736891[·...·truncated·by·diffoscope;·len:·4,·SHA:·5c7a722d8d8f97d6d923396f673c15bab9722658cbe5ab24438a3ddadde5403f·...·]-8">)</span><span·class="p">.</span><span·class="w">350 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9800881550-8">(</span><span·class="p"·data-group-id="9800881550-9">[</span><span·class="ss">post_end_per_suite</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="9800881550-9">]</span><span·class="p"·data-group-id="980088[·...·truncated·by·diffoscope;·len:·4,·SHA:·c27484c7087191b29f05f9c05efc20adeabbf7549f642629322532cb685ffb99·...·]-8">)</span><span·class="p">.</span><span·class="w">
351 </span><span·class="w">351 </span><span·class="w">
352 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7368913291-10">(</span><span·class="p"·data-group-id="7368913291-11">[</span><span·class="ss">pre_init_per_testcase</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="7368913291-11">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·4dc7ef33175a5799a2f4242618f3a5f1136e94b8a7c573766e95fd05f9aa49a4·...·]-10">)</span><span·class="p">.</span><span·class="w">352 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9800881550-10">(</span><span·class="p"·data-group-id="9800881550-11">[</span><span·class="ss">pre_init_per_testcase</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="9800881550-11">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·a9a2a23755302b96f6bb7aea600217900a8ca321841efd5cea57c527c6ad31f2·...·]-10">)</span><span·class="p">.</span><span·class="w">
353 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7368913291-12">(</span><span·class="p"·data-group-id="7368913291-13">[</span><span·class="ss">post_end_per_testcase</span><span·class="p">/</span><span·class="mi">5</span><span·class="p"·data-group-id="7368913291-13">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·4dc7ef33175a5799a2f4242618f3a5f1136e94b8a7c573766e95fd05f9aa49a4·...·]-12">)</span><span·class="p">.</span><span·class="w">353 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9800881550-12">(</span><span·class="p"·data-group-id="9800881550-13">[</span><span·class="ss">post_end_per_testcase</span><span·class="p">/</span><span·class="mi">5</span><span·class="p"·data-group-id="9800881550-13">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·a9a2a23755302b96f6bb7aea600217900a8ca321841efd5cea57c527c6ad31f2·...·]-12">)</span><span·class="p">.</span><span·class="w">
354 </span><span·class="w">354 </span><span·class="w">
355 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7368913291-14">(</span><span·class="p"·data-group-id="7368913291-15">[</span><span·class="ss">on_tc_skip</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="7368913291-15">]</span><span·class="p"·data-group-id="7368913291-14">)</span><span·class="p">.</span><span·class="w">355 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9800881550-14">(</span><span·class="p"·data-group-id="9800881550-15">[</span><span·class="ss">on_tc_skip</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="9800881550-15">]</span><span·class="p"·data-group-id="9800881550-14">)</span><span·class="p">.</span><span·class="w">
356 </span><span·class="w">356 </span><span·class="w">
357 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7368913291-16">(</span><span·class="p"·data-group-id="7368913291-17">[</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="7368913291-17">]</span><span·class="p"·data-group-id="7368913291-16">)</span><span·class="p">.</span><span·class="w">357 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9800881550-16">(</span><span·class="p"·data-group-id="9800881550-17">[</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="9800881550-17">]</span><span·class="p"·data-group-id="9800881550-16">)</span><span·class="p">.</span><span·class="w">
  
358 </span><span·class="c1">%%·This·hook·state·is·threaded·through·all·the·callbacks.</span><span·class="w">358 </span><span·class="c1">%%·This·hook·state·is·threaded·through·all·the·callbacks.</span><span·class="w">
359 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="7368913291-18">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7368913291-19">{</span><span·class="ss">filename</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">total[·...·truncated·by·diffoscope;·len:·489,·SHA:·f5c26ba78aa362ab407a537a2425599135f1885073702e895ee5b7037183db5c·...·]-18">)</span><span·class="p">.</span><span·class="w">359 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="9800881550-18">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9800881550-19">{</span><span·class="ss">filename</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">total[·...·truncated·by·diffoscope;·len:·489,·SHA:·aa5dbf062c7d5ca84438184c32acc0fd9a9342f66ee7804b6ba27e9555ffc17a·...·]-18">)</span><span·class="p">.</span><span·class="w">
360 </span><span·class="c1">%%·This·example·hook·prints·its·results·to·a·file,·see·terminate/1.</span><span·class="w">360 </span><span·class="c1">%%·This·example·hook·prints·its·results·to·a·file,·see·terminate/1.</span><span·class="w">
361 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="7368913291-20">(</span><span·class="ss">test_run</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7368913291-21">{</span><span·class="ss">total</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">skipp[·...·truncated·by·diffoscope;·len:·182,·SHA:·9181862b74e385f9b807be1e158cc259a628fa57be97101cef324f692b1961b8·...·]-20">)</span><span·class="p">.</span><span·class="w">361 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="9800881550-20">(</span><span·class="ss">test_run</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9800881550-21">{</span><span·class="ss">total</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">skipp[·...·truncated·by·diffoscope;·len:·182,·SHA:·b70e35dc824262fe510ce50a2486eff830d5244f0f33392684847c52f23dad28·...·]-20">)</span><span·class="p">.</span><span·class="w">
  
362 </span><span·class="c1">%%·Return·a·unique·id·for·this·CTH.</span><span·class="w">362 </span><span·class="c1">%%·Return·a·unique·id·for·this·CTH.</span><span·class="w">
363 </span><span·class="c1">%%·Using·the·filename·means·the·hook·can·be·used·with·different</span><span·class="w">363 </span><span·class="c1">%%·Using·the·filename·means·the·hook·can·be·used·with·different</span><span·class="w">
364 </span><span·class="c1">%%·log·files·to·separate·timing·data·within·the·same·test·run.</span><span·class="w">364 </span><span·class="c1">%%·log·files·to·separate·timing·data·within·the·same·test·run.</span><span·class="w">
365 </span><span·class="c1">%%·See·Installing·a·CTH·for·more·information.</span><span·class="w">365 </span><span·class="c1">%%·See·Installing·a·CTH·for·more·information.</span><span·class="w">
366 </span><span·class="nf">id</span><span·class="p"·data-group-id="7368913291-22">(</span><span·class="n">Opts</span><span·class="p"·data-group-id="7368913291-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">366 </span><span·class="nf">id</span><span·class="p"·data-group-id="9800881550-22">(</span><span·class="n">Opts</span><span·class="p"·data-group-id="9800881550-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
367 ····</span><span·class="c1">%%·the·path·is·relative·to·the·test·run·directory</span><span·class="w">367 ····</span><span·class="c1">%%·the·path·is·relative·to·the·test·run·directory</span><span·class="w">
368 ····</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="7368913291-23">(</span><span·class="ss">filename</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opts</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;example_cth.log&quot;</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·7669e3c48aaff5790e9c44041ab738419760ad3304140ce5e69301315dfdd027·...·]-23">)</span><span·class="p">.</span><span·class="w">368 ····</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="9800881550-23">(</span><span·class="ss">filename</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opts</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;example_cth.log&quot;</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·1de0365882229d56fc5ec7f6998972feec3f96d6b267a661229ca9f19fbcbb11·...·]-23">)</span><span·class="p">.</span><span·class="w">
  
369 </span><span·class="c1">%%·Always·called·before·any·other·callback·function.·Use·this·to·initiate</span><span·class="w">369 </span><span·class="c1">%%·Always·called·before·any·other·callback·function.·Use·this·to·initiate</span><span·class="w">
370 </span><span·class="c1">%%·any·common·state.</span><span·class="w">370 </span><span·class="c1">%%·any·common·state.</span><span·class="w">
371 </span><span·class="nf">init</span><span·class="p"·data-group-id="7368913291-24">(</span><span·class="n">Id</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Opts</span><span·class="p"·data-group-id="7368913291-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">371 </span><span·class="nf">init</span><span·class="p"·data-group-id="9800881550-24">(</span><span·class="n">Id</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Opts</span><span·class="p"·data-group-id="9800881550-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
372 ····</span><span·class="p"·data-group-id="7368913291-25">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="7368913291-26">{</span><span·class="ss">filename</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·602,·SHA:·096a1333d27916207d3146c6d637e3db1b6019cdde9935003b14614f89762b69·...·]-25">}</span><span·class="p">.</span><span·class="w">372 ····</span><span·class="p"·data-group-id="9800881550-25">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="9800881550-26">{</span><span·class="ss">filename</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·602,·SHA:·66a8ef66815e8bc2900c518bdded9aac257f3c002ad9151a09784f4edaa5e599·...·]-25">}</span><span·class="p">.</span><span·class="w">
  
373 </span><span·class="c1">%%·Called·before·init_per_suite·is·called.</span><span·class="w">373 </span><span·class="c1">%%·Called·before·init_per_suite·is·called.</span><span·class="w">
374 </span><span·class="nf">pre_init_per_suite</span><span·class="p"·data-group-id="7368913291-28">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="n">Config</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="7368913291-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">374 </span><span·class="nf">pre_init_per_suite</span><span·class="p"·data-group-id="9800881550-28">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="n">Config</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="9800881550-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
375 ····</span><span·class="p"·data-group-id="7368913291-29">{</span><span·class="n">Config</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="7368913291-30">{</span><span·class="ss">suit[·...·truncated·by·diffoscope;·len:·461,·SHA:·e0b721ea065ac5f5b3ceb7e27815cf35afc3210193ba6d2728f45bfb153d4041·...·]-29">}</span><span·class="p">.</span><span·class="w">375 ····</span><span·class="p"·data-group-id="9800881550-29">{</span><span·class="n">Config</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="9800881550-30">{</span><span·class="ss">suit[·...·truncated·by·diffoscope;·len:·461,·SHA:·6bd237bf72f2085cac02bfbe05ecfc36b02ecebfa9dd9f8b217c01deb84f4fda·...·]-29">}</span><span·class="p">.</span><span·class="w">
  
376 </span><span·class="c1">%%·Called·after·end_per_suite.</span><span·class="w">376 </span><span·class="c1">%%·Called·after·end_per_suite.</span><span·class="w">
377 </span><span·class="nf">post_end_per_suite</span><span·class="p"·data-group-id="7368913291-32">(</span><span·class="n">Suite</span><span·class="p">,</span><span·class="p">_</span><span·class="n">Config</span><span·class="p">,</span><span·class="n">Return</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·80284a1da6266ec8d30d5104faa68115db9ffa9ee46c10df8d7bb1663f568ea9·...·]-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">377 </span><span·class="nf">post_end_per_suite</span><span·class="p"·data-group-id="9800881550-32">(</span><span·class="n">Suite</span><span·class="p">,</span><span·class="p">_</span><span·class="n">Config</span><span·class="p">,</span><span·class="n">Return</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·a5457c6c3ace907bdd706a668778da879892543482aa37270ed1843a88ad9852·...·]-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
378 ····</span><span·class="n">Data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7368913291-33">{</span><span·class="ss">suites</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">suite_total</span><span·class="p">,</span><span·class="w">378 ····</span><span·class="n">Data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9800881550-33">{</span><span·class="ss">suites</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">suite_total</span><span·class="p">,</span><span·class="w">
379 ············</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="7368913291-34">(</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">tcs</span><span·class="p"·data-group-id="7368913291-34">)</span><span·class="p"·data-group-id="7368913291-33">}</span><span·class="p">,</span><span·class="w">379 ············</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="9800881550-34">(</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">tcs</span><span·class="p"·data-group-id="9800881550-34">)</span><span·class="p"·data-group-id="9800881550-33">}</span><span·class="p">,</span><span·class="w">
380 ····</span><span·class="p"·data-group-id="7368913291-35">{</span><span·class="n">Return</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="7368913291-36">{</span><span·class="ss">data[·...·truncated·by·diffoscope;·len:·406,·SHA:·8e7a285f3247e9642af257224b5482024c7e8547499352d9aedcf1bdd9eb0364·...·]-37">]</span><span·class="p">,</span><span·class="w">380 ····</span><span·class="p"·data-group-id="9800881550-35">{</span><span·class="n">Return</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="9800881550-36">{</span><span·class="ss">data[·...·truncated·by·diffoscope;·len:·406,·SHA:·2ba84b020b1b5535a4951197c2e36e8dd75d082fa60fdc55a6e4a7595a3e73b0·...·]-37">]</span><span·class="p">,</span><span·class="w">
381 ·························</span><span·class="ss">total</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">total</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">suite_total</span><span·class="p"·data-group-id="7368913291-36">}</span><span·class="p"·data-group-id="7368913291-35">}</span><span·class="p">.</span><span·class="w">381 ·························</span><span·class="ss">total</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">total</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">suite_total</span><span·class="p"·data-group-id="9800881550-36">}</span><span·class="p"·data-group-id="9800881550-35">}</span><span·class="p">.</span><span·class="w">
  
382 </span><span·class="c1">%%·Called·before·each·init_per_testcase.</span><span·class="w">382 </span><span·class="c1">%%·Called·before·each·init_per_testcase.</span><span·class="w">
383 </span><span·class="nf">pre_init_per_testcase</span><span·class="p"·data-group-id="7368913291-38">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="p">_</span><span·class="n">TC</span><span·class="p">,</span><span·class="n">Config</span><span·class="p">,</span><span·class="n">State</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·a8074286624967b38d21daa78dfa2a09568fa0716fc6084c5696c1a645012715·...·]-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">383 </span><span·class="nf">pre_init_per_testcase</span><span·class="p"·data-group-id="9800881550-38">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="p">_</span><span·class="n">TC</span><span·class="p">,</span><span·class="n">Config</span><span·class="p">,</span><span·class="n">State</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·4a2e24cd2b03ee98087b1c10a7424e271b1b6599b082440f0799b33339912ddf·...·]-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
384 ····</span><span·class="n">Now</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monotonic_time</span><span·class="p"·data-group-id="7368913291-39">(</span><span·class="ss">microsecond</span><span·class="p"·data-group-id="7368913291-39">)</span><span·class="p">,</span><span·class="w">384 ····</span><span·class="n">Now</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monotonic_time</span><span·class="p"·data-group-id="9800881550-39">(</span><span·class="ss">microsecond</span><span·class="p"·data-group-id="9800881550-39">)</span><span·class="p">,</span><span·class="w">
385 ····</span><span·class="p"·data-group-id="7368913291-40">{</span><span·class="n">Config</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="7368913291-41">{</span><span·class="ss">ts</[·...·truncated·by·diffoscope;·len:·590,·SHA:·bc2773a337ad12ff743115a355922d4112b358065a8029ac6da5e7551ce6aff1·...·]-40">}</span><span·class="p">.</span><span·class="w">385 ····</span><span·class="p"·data-group-id="9800881550-40">{</span><span·class="n">Config</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="9800881550-41">{</span><span·class="ss">ts</[·...·truncated·by·diffoscope;·len:·590,·SHA:·c5d2321fa1d2438128731b075f9d955d4660198ab903a0f2e5b29260c2d193ef·...·]-40">}</span><span·class="p">.</span><span·class="w">
  
386 </span><span·class="c1">%%·Called·after·each·end_per_testcase.</span><span·class="w">386 </span><span·class="c1">%%·Called·after·each·end_per_testcase.</span><span·class="w">
387 </span><span·class="nf">post_end_per_testcase</span><span·class="p"·data-group-id="7368913291-42">(</span><span·class="n">Suite</span><span·class="p">,</span><span·class="n">TC</span><span·class="p">,</span><span·class="p">_</span><span·class="n">Config</span><span·class="p">,</span><span·class="n">Return</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·67,·SHA:·9a1ac5f5f3bae47ab2fe4b46f59139f625a041d591730ed6fb90d1c132410638·...·]-42">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">387 </span><span·class="nf">post_end_per_testcase</span><span·class="p"·data-group-id="9800881550-42">(</span><span·class="n">Suite</span><span·class="p">,</span><span·class="n">TC</span><span·class="p">,</span><span·class="p">_</span><span·class="n">Config</span><span·class="p">,</span><span·class="n">Return</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·67,·SHA:·71c28e9d8b55f4b1b4a23ffcc1f11ee16f805b190017676fdcb23f597f583194·...·]-42">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
388 ····</span><span·class="n">Now</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monotonic_time</span><span·class="p"·data-group-id="7368913291-43">(</span><span·class="ss">microsecond</span><span·class="p"·data-group-id="7368913291-43">)</span><span·class="p">,</span><span·class="w">388 ····</span><span·class="n">Now</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monotonic_time</span><span·class="p"·data-group-id="9800881550-43">(</span><span·class="ss">microsecond</span><span·class="p"·data-group-id="9800881550-43">)</span><span·class="p">,</span><span·class="w">
389 ····</span><span·class="n">TCInfo</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7368913291-44">{</span><span·class="ss">testcase</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TC</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·343,·SHA:·0e7e044e95e7bbb4cbbdc0e15bc1782c42b46fa5890d173f1984b4d4806db988·...·]-44">}</span><span·class="p">,</span><span·class="w">389 ····</span><span·class="n">TCInfo</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9800881550-44">{</span><span·class="ss">testcase</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TC</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·343,·SHA:·b2634a44b51086ddd4de652ab9dcaac46e4a109699198e40812daa1d0663ace6·...·]-44">}</span><span·class="p">,</span><span·class="w">
390 ····</span><span·class="p"·data-group-id="7368913291-45">{</span><span·class="n">Return</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="7368913291-46">{</span><span·class="ss">ts</[·...·truncated·by·diffoscope;·len:·693,·SHA:·018c2c938347668686a5d9e2eaad6fb0cba48dca5e421873ab5946d34d50e13f·...·]-45">}</span><span·class="p">.</span><span·class="w">390 ····</span><span·class="p"·data-group-id="9800881550-45">{</span><span·class="n">Return</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="9800881550-46">{</span><span·class="ss">ts</[·...·truncated·by·diffoscope;·len:·693,·SHA:·d16915f508c09f95fd9b5f9248cc515983d96f84f2ea3bf48738e9bde7ac1006·...·]-45">}</span><span·class="p">.</span><span·class="w">
  
391 </span><span·class="c1">%%·Called·when·a·test·case·is·skipped·by·either·user·action</span><span·class="w">391 </span><span·class="c1">%%·Called·when·a·test·case·is·skipped·by·either·user·action</span><span·class="w">
392 </span><span·class="c1">%%·or·due·to·an·init·function·failing.</span><span·class="w">392 </span><span·class="c1">%%·or·due·to·an·init·function·failing.</span><span·class="w">
393 </span><span·class="nf">on_tc_skip</span><span·class="p"·data-group-id="7368913291-48">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">TC</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class=[·...·truncated·by·diffoscope;·len:·134,·SHA:·193e086a6b19788ff372262dd0e53eb3420191bfcbb7f1f0df7c4121c414ebc0·...·]-48">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">393 </span><span·class="nf">on_tc_skip</span><span·class="p"·data-group-id="9800881550-48">(</span><span·class="p">_</span><span·class="n">Suite</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">TC</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class=[·...·truncated·by·diffoscope;·len:·134,·SHA:·7bd1d02214b0ea7f3363e85fa1c12040acb7510a2c82542e48437d422b0a8072·...·]-48">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
394 ····</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="7368913291-49">{</span><span·class="ss">skipped</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">skipped<[·...·truncated·by·diffoscope;·len:·144,·SHA:·87edd2b243bd0e3d9983efb6fc3a827824c5de440b81ea39ed21ade1fd0bed9b·...·]-49">}</span><span·class="p">.</span><span·class="w">394 ····</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p"·data-group-id="9800881550-49">{</span><span·class="ss">skipped</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">skipped<[·...·truncated·by·diffoscope;·len:·144,·SHA:·ae512ed237a999acbd60eeea7844587f2790a53808c729ff076c055f29692a85·...·]-49">}</span><span·class="p">.</span><span·class="w">
  
395 </span><span·class="c1">%%·Called·when·the·scope·of·the·CTH·is·done.</span><span·class="w">395 </span><span·class="c1">%%·Called·when·the·scope·of·the·CTH·is·done.</span><span·class="w">
396 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="7368913291-50">(</span><span·class="n">State</span><span·class="p"·data-group-id="7368913291-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">396 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="9800881550-50">(</span><span·class="n">State</span><span·class="p"·data-group-id="9800881550-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
397 ····</span><span·class="c1">%%·use·append·to·avoid·data·loss·if·the·path·is·reused</span><span·class="w">397 ····</span><span·class="c1">%%·use·append·to·avoid·data·loss·if·the·path·is·reused</span><span·class="w">
398 ····</span><span·class="p"·data-group-id="7368913291-51">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="7368913291-51">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·569,·SHA:·d13e0d58506a3d29c281ed5617c1fc3978fff47949961be952c9aa7a020cb0f5·...·]-52">)</span><span·class="p">,</span><span·class="w">398 ····</span><span·class="p"·data-group-id="9800881550-51">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="9800881550-51">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·569,·SHA:·20b14d7feaa2c1b999e160a0650a1806c39e435c2d2ea1bc4a266bad6cc2b149·...·]-52">)</span><span·class="p">,</span><span·class="w">
399 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="7368913291-54">(</span><span·class="n">File</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">.</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·340,·SHA:·714be372a86bf1fa73a18b336b3f69c24f482251c53aa1771229c2057fd4bc2f·...·]-54">)</span><span·class="p">,</span><span·class="w">399 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9800881550-54">(</span><span·class="n">File</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">.</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·340,·SHA:·4a76932570de4cedec80ca3bc48fb3f6c5580d42f9296f6b90b0a836a50e6105·...·]-54">)</span><span·class="p">,</span><span·class="w">
400 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="7368913291-57">(</span><span·class="n">File</span><span·class="p"·data-group-id="7368913291-57">)</span><span·class="p">,</span><span·class="w">400 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="9800881550-57">(</span><span·class="n">File</span><span·class="p"·data-group-id="9800881550-57">)</span><span·class="p">,</span><span·class="w">
401 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">401 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
402 </span><span·class="nf">results</span><span·class="p"·data-group-id="7368913291-58">(</span><span·class="n">State</span><span·class="p"·data-group-id="7368913291-58">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">402 </span><span·class="nf">results</span><span·class="p"·data-group-id="9800881550-58">(</span><span·class="n">State</span><span·class="p"·data-group-id="9800881550-58">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
Max diff block lines reached; 996/61956 bytes (1.61%) of diff not shown.
829 B
html2text {}
Max HTML report size reached
3.65 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_master.html
    
Offset 442, 15 lines modifiedOffset 442, 15 lines modified
442 ······<div·class="specs">442 ······<div·class="specs">
  
443 ··········<pre·translate="no"><span·class="attribute">-spec</span>·get_event_mgr_ref()·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>().</pre>443 ··········<pre·translate="no"><span·class="attribute">-spec</span>·get_event_mgr_ref()·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>().</pre>
  
444 ······</div>444 ······</div>
  
445 <p>Gets·a·reference·to·the·<code·class="inline">Common·Test</code>·master·event·manager.·The·reference·can·be445 <p>Gets·a·reference·to·the·<code·class="inline">Common·Test</code>·master·event·manager.·The·reference·can·be
446 used·to,·for·example,·add·a·user-specific·event·handler·while·tests·are·running.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="3213100564-1">(</span><span·class="nc">ct_master</span><span·class="p">:</span><span·class="nf">get_event_mgr_ref</span><span·class="p"·data-group-id="3213100564-2">(</span><span·class="p"·data-group-id="3213100564-2">)</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·243,·SHA:·95e9c328f1d99b79ad18c8958bac85ed8f11669d1764c57616f69d8ed83472ff·...·]4-1">)</span></code></pre>446 used·to,·for·example,·add·a·user-specific·event·handler·while·tests·are·running.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">gen_event</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="7978512974-1">(</span><span·class="nc">ct_master</span><span·class="p">:</span><span·class="nf">get_event_mgr_ref</span><span·class="p"·data-group-id="7978512974-2">(</span><span·class="p"·data-group-id="7978512974-2">)</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·243,·SHA:·fa13fdc898728fa1d6fc618f4d8216d2a5345005c3e7f959a25bd34c7b6b64a8·...·]4-1">)</span></code></pre>
447 ··</section>447 ··</section>
448 </section>448 </section>
449 <section·class="detail"·id="progress/0">449 <section·class="detail"·id="progress/0">
  
450 ··<div·class="detail-header">450 ··<div·class="detail-header">
451 ····<a·href="#progress/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">451 ····<a·href="#progress/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
452 ······<i·class="ri-link-m"·aria-hidden="true"></i>452 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 792, 15 lines modifiedOffset 792, 15 lines modified
792 ······<p·class="built-using">792 ······<p·class="built-using">
793 ········Built·using793 ········Built·using
794 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the794 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
795 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>795 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
796 ······</p>796 ······</p>
797 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>797 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
798 ····</footer>798 ····</footer>
799 ··</div>799 ··</div>
800 </main>800 </main>
801 </div>801 </div>
802 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>802 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
803 <script>803 <script>
804 ··document.addEventListener("DOMContentLoaded",·function·()·{804 ··document.addEventListener("DOMContentLoaded",·function·()·{
669 B
html2text {}
Max HTML report size reached
35.7 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_master_chapter.html
    
Offset 152, 15 lines modifiedOffset 152, 15 lines modified
152 a·common·file·system.·<code·class="inline">Common·Test</code>·Master·cannot·start·test·nodes152 a·common·file·system.·<code·class="inline">Common·Test</code>·Master·cannot·start·test·nodes
153 automatically.·The·nodes·must·be·started·in·advance·for·<code·class="inline">Common·Test</code>·Master·to153 automatically.·The·nodes·must·be·started·in·advance·for·<code·class="inline">Common·Test</code>·Master·to
154 be·able·to·start·test·sessions·on·them.</p><p>Tests·are·started·by·calling·<a·href="ct_master.html#run/1"><code·class="inline">ct_master:run(TestSpecs)</code></a>·or154 be·able·to·start·test·sessions·on·them.</p><p>Tests·are·started·by·calling·<a·href="ct_master.html#run/1"><code·class="inline">ct_master:run(TestSpecs)</code></a>·or
155 <a·href="ct_master.html#run/3"><code·class="inline">ct_master:run(TestSpecs,·InclNodes,·ExclNodes)</code></a></p><p><code·class="inline">TestSpecs</code>·is·either·the·name·of·a·test·specification·file·(string)·or·a·list155 <a·href="ct_master.html#run/3"><code·class="inline">ct_master:run(TestSpecs,·InclNodes,·ExclNodes)</code></a></p><p><code·class="inline">TestSpecs</code>·is·either·the·name·of·a·test·specification·file·(string)·or·a·list
156 of·test·specifications.·If·it·is·a·list,·the·specifications·are·handled·(and·the156 of·test·specifications.·If·it·is·a·list,·the·specifications·are·handled·(and·the
157 corresponding·tests·executed)·in·sequence.·An·element·in·a·<code·class="inline">TestSpecs</code>·list·can157 corresponding·tests·executed)·in·sequence.·An·element·in·a·<code·class="inline">TestSpecs</code>·list·can
158 also·be·list·of·test·specifications.·The·specifications·in·such·a·list·are158 also·be·list·of·test·specifications.·The·specifications·in·such·a·list·are
159 merged·into·one·combined·specification·before·test·execution.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ct_master</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="3101131381-1">(</span><span·class="p"·data-group-id="3101131381-2">[</span><span·class="s">&quot;ts1&quot;</span><span·class="p">,</span><span·class="s">&quot;ts2&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="3101131381-3">[</span><spa[·...·truncated·by·diffoscope;·len:·243,·SHA:·ac137a2121977949da7394ee1a6f5017c973a596ebd3e34e56566d4c913509cd·...·]-1">)</span></code></pre><p>Here,·the·tests·specified·by·&quot;ts1&quot;·run·first,·then·the·tests·specified·by·&quot;ts2&quot;,159 merged·into·one·combined·specification·before·test·execution.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ct_master</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="5899539119-1">(</span><span·class="p"·data-group-id="5899539119-2">[</span><span·class="s">&quot;ts1&quot;</span><span·class="p">,</span><span·class="s">&quot;ts2&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="5899539119-3">[</span><spa[·...·truncated·by·diffoscope;·len:·243,·SHA:·73275eb4cbf6b76b5dc7a9cd04c953b4487bcbad4fed69389a01a742c0345532·...·]-1">)</span></code></pre><p>Here,·the·tests·specified·by·&quot;ts1&quot;·run·first,·then·the·tests·specified·by·&quot;ts2&quot;,
160 and·finally·the·tests·specified·by·both·&quot;ts3&quot;·and·&quot;ts4&quot;.</p><p>The·<code·class="inline">InclNodes</code>·argument·to·<code·class="inline">run/3</code>·is·a·list·of·node·names.·Function·<code·class="inline">run/3</code>160 and·finally·the·tests·specified·by·both·&quot;ts3&quot;·and·&quot;ts4&quot;.</p><p>The·<code·class="inline">InclNodes</code>·argument·to·<code·class="inline">run/3</code>·is·a·list·of·node·names.·Function·<code·class="inline">run/3</code>
161 runs·the·tests·in·<code·class="inline">TestSpecs</code>·just·like·<code·class="inline">run/1</code>,·but·also·takes·any·test·in161 runs·the·tests·in·<code·class="inline">TestSpecs</code>·just·like·<code·class="inline">run/1</code>,·but·also·takes·any·test·in
162 <code·class="inline">TestSpecs</code>,·which·is·not·explicitly·tagged·with·a·particular·node·name,·and162 <code·class="inline">TestSpecs</code>,·which·is·not·explicitly·tagged·with·a·particular·node·name,·and
163 execute·it·on·the·nodes·listed·in·<code·class="inline">InclNodes</code>.·By·using·<code·class="inline">run/3</code>·this·way,·any163 execute·it·on·the·nodes·listed·in·<code·class="inline">InclNodes</code>.·By·using·<code·class="inline">run/3</code>·this·way,·any
164 test·specification·can·be·used,·with·or·without·node·information,·in·a164 test·specification·can·be·used,·with·or·without·node·information,·in·a
165 large-scale·test·environment.</p><p><code·class="inline">ExclNodes</code>·is·a·list·of·nodes·to·be·excluded·from·the·test.·That·is,·tests·that165 large-scale·test·environment.</p><p><code·class="inline">ExclNodes</code>·is·a·list·of·nodes·to·be·excluded·from·the·test.·That·is,·tests·that
166 are·specified·in·the·test·specification·to·run·on·a·particular·node·are·not166 are·specified·in·the·test·specification·to·run·on·a·particular·node·are·not
Offset 192, 40 lines modifiedOffset 192, 40 lines modified
192 achieved·using·constants).·The·alias·is·declared·with·a·<code·class="inline">node</code>·term·as·follows:</p><p><code·class="inline">{node,·NodeAlias,·NodeName}</code></p><p>If·<code·class="inline">NodeRefs</code>·has·the·value·<code·class="inline">all_nodes</code>,·the·operation·or·test·is·performed·on192 achieved·using·constants).·The·alias·is·declared·with·a·<code·class="inline">node</code>·term·as·follows:</p><p><code·class="inline">{node,·NodeAlias,·NodeName}</code></p><p>If·<code·class="inline">NodeRefs</code>·has·the·value·<code·class="inline">all_nodes</code>,·the·operation·or·test·is·performed·on
193 all·specified·test·nodes.·(Declaring·a·term·without·a·<code·class="inline">NodeRefs</code>·element·has·the193 all·specified·test·nodes.·(Declaring·a·term·without·a·<code·class="inline">NodeRefs</code>·element·has·the
194 same·effect).·If·<code·class="inline">NodeRefs</code>·has·the·value·<code·class="inline">master</code>,·the·operation·is·only194 same·effect).·If·<code·class="inline">NodeRefs</code>·has·the·value·<code·class="inline">master</code>,·the·operation·is·only
195 performed·on·the·<code·class="inline">Common·Test</code>·Master·node·(namely·set·the·log·directory·or195 performed·on·the·<code·class="inline">Common·Test</code>·Master·node·(namely·set·the·log·directory·or
196 install·an·event·handler).</p><p>Consider·the·example·in·section196 install·an·event·handler).</p><p>Consider·the·example·in·section
197 <a·href="run_test_chapter.html#test_specifications">Test·Specifications</a>·in·section197 <a·href="run_test_chapter.html#test_specifications">Test·Specifications</a>·in·section
198 Running·Tests·and·Analysing·Results,·now·extended·with·node·information·and198 Running·Tests·and·Analysing·Results,·now·extended·with·node·information·and
199 intended·to·be·executed·by·<code·class="inline">Common·Test</code>·Master:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0133460554-1">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Top&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/test&quot;</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·b8653af94de39a8bdf5579cf5ecacc38afce4c5568b023bcb619fb4021db0de3·...·]-1">}</span><span·class="p">.</span><span·class="w">199 intended·to·be·executed·by·<code·class="inline">Common·Test</code>·Master:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9310762908-1">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Top&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/test&quot;</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·46a3110e731124b10900c284ade517192957319366b48d33cc9b6491a233bf41·...·]-1">}</span><span·class="p">.</span><span·class="w">
200 </span><span·class="p"·data-group-id="0133460554-2">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/t1&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·a9dd46ba2a48575d728e85671009513f2482af7f66882ecba9879ce92496c314·...·]-2">}</span><span·class="p">.</span><span·class="w">200 </span><span·class="p"·data-group-id="9310762908-2">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/t1&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·eee0d083eba07ee395c47acf80ffdce1a391b510c9e8a50b5578fd4b750c0967·...·]-2">}</span><span·class="p">.</span><span·class="w">
201 </span><span·class="p"·data-group-id="0133460554-3">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T2&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/t2&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·a9dd46ba2a48575d728e85671009513f2482af7f66882ecba9879ce92496c314·...·]-3">}</span><span·class="p">.</span><span·class="w">201 </span><span·class="p"·data-group-id="9310762908-3">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T2&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/t2&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·eee0d083eba07ee395c47acf80ffdce1a391b510c9e8a50b5578fd4b750c0967·...·]-3">}</span><span·class="p">.</span><span·class="w">
202 </span><span·class="p"·data-group-id="0133460554-4">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T3&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/t3&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·a9dd46ba2a48575d728e85671009513f2482af7f66882ecba9879ce92496c314·...·]-4">}</span><span·class="p">.</span><span·class="w">202 </span><span·class="p"·data-group-id="9310762908-4">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T3&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/t3&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·eee0d083eba07ee395c47acf80ffdce1a391b510c9e8a50b5578fd4b750c0967·...·]-4">}</span><span·class="p">.</span><span·class="w">
203 </span><span·class="p"·data-group-id="0133460554-5">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;CfgFile&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;config.cfg&quot;</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·a84786819eed662f8428a847f626dabb717216a1405cf1a15388131e135ad9c8·...·]-5">}</span><span·class="p">.</span><span·class="w">203 </span><span·class="p"·data-group-id="9310762908-5">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;CfgFile&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;config.cfg&quot;</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·051372b66a10b00d63e76e31604712e33f6b12df546fc6fc6d6cb255dd0df429·...·]-5">}</span><span·class="p">.</span><span·class="w">
204 </span><span·class="p"·data-group-id="0133460554-6">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Node&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ct_node</span><span·class="p"·data-group-id="01334605[·...·truncated·by·diffoscope;·len:·2,·SHA:·2fca346db656187102ce806ac732e06a62df0dbb2829e511a770556d398e1a6e·...·]-6">}</span><span·class="p">.</span><span·class="w">204 </span><span·class="p"·data-group-id="9310762908-6">{</span><span·class="ss">define</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Node&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ct_node</span><span·class="p"·data-group-id="93107629[·...·truncated·by·diffoscope;·len:·2,·SHA:·323783be9a53a31e158ec9600626a4703e99f4e183bc1acb8772cbdf5c3a1ece·...·]-6">}</span><span·class="p">.</span><span·class="w">
  
205 </span><span·class="p"·data-group-id="0133460554-7">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Node@host_x&#39;</span><span·class="p"·data-group-id="01334[·...·truncated·by·diffoscope;·len:·5,·SHA:·ebc36a69b3ed9e4fbf56c08418e7f38bfba8781f90aa7148403a3e21a29f34e4·...·]-7">}</span><span·class="p">.</span><span·class="w">205 </span><span·class="p"·data-group-id="9310762908-7">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Node@host_x&#39;</span><span·class="p"·data-group-id="93107[·...·truncated·by·diffoscope;·len:·5,·SHA:·b0688d1e20ed637cbe8f4f137aa259ddaea2ddcecc093ece6cee25ab35479d42·...·]-7">}</span><span·class="p">.</span><span·class="w">
206 </span><span·class="p"·data-group-id="0133460554-8">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Node@host_y&#39;</span><span·class="p"·data-group-id="01334[·...·truncated·by·diffoscope;·len:·5,·SHA:·ebc36a69b3ed9e4fbf56c08418e7f38bfba8781f90aa7148403a3e21a29f34e4·...·]-8">}</span><span·class="p">.</span><span·class="w">206 </span><span·class="p"·data-group-id="9310762908-8">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Node@host_y&#39;</span><span·class="p"·data-group-id="93107[·...·truncated·by·diffoscope;·len:·5,·SHA:·b0688d1e20ed637cbe8f4f137aa259ddaea2ddcecc093ece6cee25ab35479d42·...·]-8">}</span><span·class="p">.</span><span·class="w">
  
207 </span><span·class="p"·data-group-id="0133460554-9">{</span><span·class="ss">logdir</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">master</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/master_logs&quot;</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·3642e5bfec22c48d466f646e44cd750081777fc1c0374df47a797dbe169719f6·...·]-9">}</span><span·class="p">.</span><span·class="w">207 </span><span·class="p"·data-group-id="9310762908-9">{</span><span·class="ss">logdir</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">master</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/master_logs&quot;</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·93b66b367f75a3b09bfec81bffed4661ed8c50251e151c08b205bdf28967a183·...·]-9">}</span><span·class="p">.</span><span·class="w">
208 </span><span·class="p"·data-group-id="0133460554-10">{</span><span·class="ss">logdir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/logs&quot;</span><span·class="p"·data-group-id="0133460554-10">}</span><span·class="p">.</span><span·class="w">208 </span><span·class="p"·data-group-id="9310762908-10">{</span><span·class="ss">logdir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;Top&#39;/logs&quot;</span><span·class="p"·data-group-id="9310762908-10">}</span><span·class="p">.</span><span·class="w">
  
209 </span><span·class="p"·data-group-id="0133460554-11">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;T1&#39;/&#39;CfgFile&#39;&quot;</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·c5d0f5df92fba426c2c195135fea51dd1f23e986707b6c52666340948f4b7af2·...·]-11">}</span><span·class="p">.</span><span·class="w">209 </span><span·class="p"·data-group-id="9310762908-11">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;T1&#39;/&#39;CfgFile&#39;&quot;</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·1af043ea067754656b3cdbe0a3445515cbf70811f867b4fc19305341c2bc985b·...·]-11">}</span><span·class="p">.</span><span·class="w">
210 </span><span·class="p"·data-group-id="0133460554-12">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;T2&#39;/&#39;CfgFile&#39;&quot;</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·c5d0f5df92fba426c2c195135fea51dd1f23e986707b6c52666340948f4b7af2·...·]-12">}</span><span·class="p">.</span><span·class="w">210 </span><span·class="p"·data-group-id="9310762908-12">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;T2&#39;/&#39;CfgFile&#39;&quot;</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·1af043ea067754656b3cdbe0a3445515cbf70811f867b4fc19305341c2bc985b·...·]-12">}</span><span·class="p">.</span><span·class="w">
211 </span><span·class="p"·data-group-id="0133460554-13">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;T3&#39;/&#39;CfgFile&#39;&quot;</span><span·class="p"·data-group-id="0133460554-13">}</span><span·class="p">.</span><span·class="w">211 </span><span·class="p"·data-group-id="9310762908-13">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&#39;T3&#39;/&#39;CfgFile&#39;&quot;</span><span·class="p"·data-group-id="9310762908-13">}</span><span·class="p">.</span><span·class="w">
  
212 </span><span·class="p"·data-group-id="0133460554-14">{</span><span·class="ss">suites</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·74,·SHA:·ed3ea09885967db0d25b089af406042f1a2638da675f203c02ca6ac483806c7a·...·]-14">}</span><span·class="p">.</span><span·class="w">212 </span><span·class="p"·data-group-id="9310762908-14">{</span><span·class="ss">suites</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·74,·SHA:·762b5566f0b9f69aa2a600fdff9c34eeb5256ad7956fdd21e3622176d7cc0ce9·...·]-14">}</span><span·class="p">.</span><span·class="w">
213 </span><span·class="p"·data-group-id="0133460554-15">{</span><span·class="ss">skip_suites</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·348,·SHA:·d0fb2d9eb46e28d8ee63d9593475d0c14ecbe07e19da352c28954ecc7f68828b·...·]-15">}</span><span·class="p">.</span><span·class="w">213 </span><span·class="p"·data-group-id="9310762908-15">{</span><span·class="ss">skip_suites</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·348,·SHA:·ae16fd1e9e660f478a9823883618995c8aaeae757002c47ee2c82c6763bb8c1b·...·]-15">}</span><span·class="p">.</span><span·class="w">
214 </span><span·class="p"·data-group-id="0133460554-17">{</span><span·class="ss">skip_cases</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·415,·SHA:·02bcce895095b359c6a45a9e60296fe44b3073ac5535391b518fb4e8278b5d73·...·]-17">}</span><span·class="p">.</span><span·class="w">214 </span><span·class="p"·data-group-id="9310762908-17">{</span><span·class="ss">skip_cases</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·415,·SHA:·94796519dda82c82d54a6cf172f4bb0754e11db7170077855791efb8cc14b87d·...·]-17">}</span><span·class="p">.</span><span·class="w">
215 </span><span·class="p"·data-group-id="0133460554-19">{</span><span·class="ss">skip_cases</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·358,·SHA:·b8ad8474a8d7c7fa7e38f991742de2003083c8382d757297196f8ece87a820c2·...·]-19">}</span><span·class="p">.</span><span·class="w">215 </span><span·class="p"·data-group-id="9310762908-19">{</span><span·class="ss">skip_cases</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T1&#39;</span><span·class="p">,</span><span·class="w[·...·truncated·by·diffoscope;·len:·358,·SHA:·d479a05520a4ce38b6d31097bae7d5e018db48ae1d0c4d823d5b639ee0d502b5·...·]-19">}</span><span·class="p">.</span><span·class="w">
  
216 </span><span·class="p"·data-group-id="0133460554-21">{</span><span·class="ss">suites</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T2&#39;</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·245,·SHA:·9e1817d22daf3af83dc494362cd8b8292bd54451104cceeb4c323421fd4b6079·...·]-21">}</span><span·class="p">.</span><span·class="w">216 </span><span·class="p"·data-group-id="9310762908-21">{</span><span·class="ss">suites</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T2&#39;</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·245,·SHA:·01c02b808426201373d3c4ca12f5e0391f0d2726d9792670b557c2f7d617282c·...·]-21">}</span><span·class="p">.</span><span·class="w">
217 </span><span·class="p"·data-group-id="0133460554-23">{</span><span·class="ss">cases</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T2&#39;</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·370,·SHA:·ee486a83dc1b2dab9e08712d9e836e80bf482d2887073dd0d8291fc3f2c55428·...·]-23">}</span><span·class="p">.</span><span·class="w">217 </span><span·class="p"·data-group-id="9310762908-23">{</span><span·class="ss">cases</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T2&#39;</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·370,·SHA:·112e58966865c81ff1b916b85137ed826d1960579951e00a216452b928ea2279·...·]-23">}</span><span·class="p">.</span><span·class="w">
  
218 </span><span·class="p"·data-group-id="0133460554-25">{</span><span·class="ss">skip_suites</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T3&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">all</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·100,·SHA:·3f13f0ac793fac892e54289bcaefbecdf9a6ebaf9c5741b9881043b95b6a7b0c·...·]-25">}</span><span·class="p">.</span></code></pre><p>This·example·specifies·the·same·tests·as·the·original·example.·But·now·if218 </span><span·class="p"·data-group-id="9310762908-25">{</span><span·class="ss">skip_suites</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;T3&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">all</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·100,·SHA:·aea6821868f062ca32b72392e41a106300855bb574a2a4f52a05e68d54069178·...·]-25">}</span><span·class="p">.</span></code></pre><p>This·example·specifies·the·same·tests·as·the·original·example.·But·now·if
219 started·with·a·call·to·<code·class="inline">ct_master:run(TestSpecName)</code>,·test·<code·class="inline">t1</code>·is·executed·on219 started·with·a·call·to·<code·class="inline">ct_master:run(TestSpecName)</code>,·test·<code·class="inline">t1</code>·is·executed·on
220 node·<code·class="inline">ct_node@host_x</code>·(<code·class="inline">node1</code>),·test·<code·class="inline">t2</code>·on·<code·class="inline">ct_node@host_y</code>·(<code·class="inline">node2</code>)·and220 node·<code·class="inline">ct_node@host_x</code>·(<code·class="inline">node1</code>),·test·<code·class="inline">t2</code>·on·<code·class="inline">ct_node@host_y</code>·(<code·class="inline">node2</code>)·and
221 test·<code·class="inline">t3</code>·on·both·<code·class="inline">node1</code>·and·<code·class="inline">node2</code>.·Configuration·file·<code·class="inline">t1</code>·is·only·read·on221 test·<code·class="inline">t3</code>·on·both·<code·class="inline">node1</code>·and·<code·class="inline">node2</code>.·Configuration·file·<code·class="inline">t1</code>·is·only·read·on
222 <code·class="inline">node1</code>·and·configuration·file·<code·class="inline">t2</code>·only·on·<code·class="inline">node2</code>,·while·the·configuration222 <code·class="inline">node1</code>·and·configuration·file·<code·class="inline">t2</code>·only·on·<code·class="inline">node2</code>,·while·the·configuration
223 file·<code·class="inline">t3</code>·is·read·on·both·<code·class="inline">node1</code>·and·<code·class="inline">node2</code>.·Both·test·nodes·write·log·files223 file·<code·class="inline">t3</code>·is·read·on·both·<code·class="inline">node1</code>·and·<code·class="inline">node2</code>.·Both·test·nodes·write·log·files
224 to·the·same·directory.·(However,·the·<code·class="inline">Common·Test</code>·Master·node·uses·a·different224 to·the·same·directory.·(However,·the·<code·class="inline">Common·Test</code>·Master·node·uses·a·different
225 log·directory·than·the·test·nodes.)</p><p>If·the·test·session·is·instead·started·with·a·call·to225 log·directory·than·the·test·nodes.)</p><p>If·the·test·session·is·instead·started·with·a·call·to
Offset 240, 21 lines modifiedOffset 240, 21 lines modified
240 always·performed·too,·of·course.</p><h2·id="automatic-startup-of-test-target-nodes"·class="section-heading">240 always·performed·too,·of·course.</p><h2·id="automatic-startup-of-test-target-nodes"·class="section-heading">
241 ··<a·href="#automatic-startup-of-test-target-nodes"·class="hover-link">241 ··<a·href="#automatic-startup-of-test-target-nodes"·class="hover-link">
242 ····<i·class="ri-link-m"·aria-hidden="true"></i>242 ····<i·class="ri-link-m"·aria-hidden="true"></i>
243 ··</a>243 ··</a>
244 ··<span·class="text">Automatic·Startup·of·Test·Target·Nodes</span>244 ··<span·class="text">Automatic·Startup·of·Test·Target·Nodes</span>
245 </h2>245 </h2>
246 <p><a·href=""·id="ct_slave"></a></p><p>Initial·actions·can·be·started·and·performed·automatically·on·test·target·nodes246 <p><a·href=""·id="ct_slave"></a></p><p>Initial·actions·can·be·started·and·performed·automatically·on·test·target·nodes
247 using·test·specification·term·<code·class="inline">init</code>.</p><p>Two·subterms·are·supported,·<code·class="inline">node_start</code>·and·<code·class="inline">eval</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9046278920-1">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1@host1</span><span·class="p"·data-group-id="9046278920-1">}</span><span·class="p">.</span><span·class="w">247 using·test·specification·term·<code·class="inline">init</code>.</p><p>Two·subterms·are·supported,·<code·class="inline">node_start</code>·and·<code·class="inline">eval</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4144013729-1">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1@host1</span><span·class="p"·data-group-id="4144013729-1">}</span><span·class="p">.</span><span·class="w">
248 </span><span·class="p"·data-group-id="9046278920-2">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1@host2</span><span·class="p"·data-group-id="9046278920-2">}</span><span·class="p">.</span><span·class="w">248 </span><span·class="p"·data-group-id="4144013729-2">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1@host2</span><span·class="p"·data-group-id="4144013729-2">}</span><span·class="p">.</span><span·class="w">
249 </span><span·class="p"·data-group-id="9046278920-3">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2@host2</span><span·class="p"·data-group-id="9046278920-3">}</span><span·class="p">.</span><span·class="w">249 </span><span·class="p"·data-group-id="4144013729-3">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node2@host2</span><span·class="p"·data-group-id="4144013729-3">}</span><span·class="p">.</span><span·class="w">
250 </span><span·class="p"·data-group-id="9046278920-4">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1@host3</span><span·class="p"·data-group-id="9046278920-4">}</span><span·class="p">.</span><span·class="w">250 </span><span·class="p"·data-group-id="4144013729-4">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1@host3</span><span·class="p"·data-group-id="4144013729-4">}</span><span·class="p">.</span><span·class="w">
251 </span><span·class="p"·data-group-id="9046278920-5">{</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9046278920-6">[</span><span·class="p"·data-group-id="9046278920-7">{</span><span·class="ss">node_start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9046278920-8">[</span><span·class="p"·data-group-id="9046278920-9">{</span><span·class="ss">callback_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_slave_callback</span><span·class="p"·data-group-id="9046278920-9">}</span><span·class="p"·data-group-id="9046278920-8">]</span><span·class="p"·data-group-id="9046278920-7">}</span><span·class="p"·data-group-id="9046278920-6">]</span><span·class="p"·data-group-id="9046278920-5">}</span><span·class="p">.</span><span·class="w"> 
252 </span><span·class="p"·data-group-id="9046278920-10">{</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9046278920-11">[</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node3</span><span·class="p"·data-group-id="9046278920-11">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9046278920-12">{</span><span·class="ss">node_start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9046278920-13">[</span><span·class="p"·data-group-id="9046278920-14">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;ct_user&quot;</span><span·class="p"·data-group-id="9046278920-14">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9046278920-15">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;ct_password&quot;</span><span·class="p"·data-group-id="9046278920-15">}</span><span·class="p"·data-group-id="9046278920-13">]</span><span·class="p"·data-group-id="9046278920-12">}</span><span·class="p"·data-group-id="9046278920-10">}</span><span·class="p">.</span><span·class="w"> 
253 </span><span·class="p"·data-group-id="9046278920-16">{</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9046278920-17">{</span><span·class="ss">eval</spa[·...·truncated·by·diffoscope;·len:·676,·SHA:·8de72f63fd0bc3ec07044e1aeadeb506b8a3e0728cabcb5ccaffbd16d19eabe2·...·]251 </span><span·class="p"·data-group-id="4144013729-5">{</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4144013729-6">[</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·646,·SHA:·e4f210b299b6aa077199e4e66444b5f6578c588f6292b874236ff83ef92a32bb·...·]
 252 </span><span·class="p"·data-group-id="4144013729-10">{</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4144013729-11">[</span><span·class="ss">node2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node3</span><span·class="p"·data-group-id="4144013729-11">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4144013729-12">{</span><span·class="ss">node_start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4144013729-13">[</span><span·class="p"·data-group-id="4144013729-14">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;ct_user&quot;</span><span·class="p"·data-group-id="4144013729-14">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4144013729-15">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;ct_password&quot;</span><span·class="p"·data-group-id="4144013729-15">}</span><span·class="p"·data-group-id="4144013729-13">]</span><span·class="p"·data-group-id="4144013729-12">}</span><span·class="p"·data-group-id="4144013729-10">}</span><span·class="p">.</span><span·class="w">
 253 </span><span·class="p"·data-group-id="4144013729-16">{</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4144013729-17">{</span><span·class="ss">eval</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4144013729-18">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">function</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4144013729-19">[</span><span·class="p"·data-group-id="4144013729-19">]</span><span·class="p"·data-group-id="4144013729-18">}</span><span·class="p"·data-group-id="4144013729-17">}</span><span·class="p"·data-group-id="4144013729-16">}</span><span·class="p">.</span></code></pre><p>This·test·specification·declares·that·<code·class="inline">node1@host1</code>·is·to·be·started·using·the
254 user·callback·function·<code·class="inline">callback_module:my_slave_callback/0</code>,·and·nodes254 user·callback·function·<code·class="inline">callback_module:my_slave_callback/0</code>,·and·nodes
255 <code·class="inline">node1@host2</code>·and·<code·class="inline">node2@host2</code>·are·to·be·started·with·the·default·callback255 <code·class="inline">node1@host2</code>·and·<code·class="inline">node2@host2</code>·are·to·be·started·with·the·default·callback
256 module·<code·class="inline">ct_slave</code>.·The·specified·username·and·password·are·used·to·log·on·to256 module·<code·class="inline">ct_slave</code>.·The·specified·username·and·password·are·used·to·log·on·to
257 remote·host·<code·class="inline">host2</code>.·Also,·function·<code·class="inline">module:function/0</code>·is·evaluated·on257 remote·host·<code·class="inline">host2</code>.·Also,·function·<code·class="inline">module:function/0</code>·is·evaluated·on
258 <code·class="inline">node1@host3</code>,·and·the·result·of·this·call·is·printed·to·the·log.</p><p>The·default·callback·module·<a·href="ct_slave.html"><code·class="inline">ct_slave</code></a>,·has·the·following·features:</p><ul><li>Starting·Erlang·target·nodes·on·local·or·remote·hosts·(application·<code·class="inline">SSH</code>·is258 <code·class="inline">node1@host3</code>,·and·the·result·of·this·call·is·printed·to·the·log.</p><p>The·default·callback·module·<a·href="ct_slave.html"><code·class="inline">ct_slave</code></a>,·has·the·following·features:</p><ul><li>Starting·Erlang·target·nodes·on·local·or·remote·hosts·(application·<code·class="inline">SSH</code>·is
259 used·for·communication).</li><li>Ability·to·start·an·Erlang·emulator·with·more·flags·(any·flags·supported·by259 used·for·communication).</li><li>Ability·to·start·an·Erlang·emulator·with·more·flags·(any·flags·supported·by
260 <code·class="inline">erl</code>·are·supported).</li><li>Supervision·of·a·node·being·started·using·internal·callback·functions.·Used·to260 <code·class="inline">erl</code>·are·supported).</li><li>Supervision·of·a·node·being·started·using·internal·callback·functions.·Used·to
Offset 310, 15 lines modifiedOffset 310, 15 lines modified
310 ······<p·class="built-using">310 ······<p·class="built-using">
311 ········Built·using311 ········Built·using
312 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the312 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
313 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>313 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
314 ······</p>314 ······</p>
315 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>315 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
316 ····</footer>316 ····</footer>
317 ··</div>317 ··</div>
318 </main>318 </main>
319 </div>319 </div>
320 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>320 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
321 <script>321 <script>
322 ··document.addEventListener("DOMContentLoaded",·function·()·{322 ··document.addEventListener("DOMContentLoaded",·function·()·{
748 B
html2text {}
Max HTML report size reached
28.8 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_netconfc.html
    
Offset 133, 50 lines modifiedOffset 133, 50 lines modified
133 and·with·support·for·RFC·5277,·NETCONF·Event·Notifications.</p><p><a·href=""·id="Connecting"></a></p><p><em>Connecting·to·a·NETCONF·server</em></p><p>Call·<a·href="#connect/1"><code·class="inline">connect/1,2</code></a>·to·establish·a·connection·to·a·server,·then133 and·with·support·for·RFC·5277,·NETCONF·Event·Notifications.</p><p><a·href=""·id="Connecting"></a></p><p><em>Connecting·to·a·NETCONF·server</em></p><p>Call·<a·href="#connect/1"><code·class="inline">connect/1,2</code></a>·to·establish·a·connection·to·a·server,·then
134 pass·the·returned·handle·to·<a·href="#session/1"><code·class="inline">session/1-3</code></a>·to·establish·a·NETCONF134 pass·the·returned·handle·to·<a·href="#session/1"><code·class="inline">session/1-3</code></a>·to·establish·a·NETCONF
135 session·on·a·new·SSH·channel.·Each·call·to·<a·href="#session/1"><code·class="inline">session/1-3</code></a>135 session·on·a·new·SSH·channel.·Each·call·to·<a·href="#session/1"><code·class="inline">session/1-3</code></a>
136 establishes·a·new·session·on·the·same·connection,·and·results·in·a·hello·message136 establishes·a·new·session·on·the·same·connection,·and·results·in·a·hello·message
137 to·the·server.</p><p>Alternately,·<a·href="#open/1"><code·class="inline">open/1,2</code></a>·can·be·used·to·establish·a·single·session·on137 to·the·server.</p><p>Alternately,·<a·href="#open/1"><code·class="inline">open/1,2</code></a>·can·be·used·to·establish·a·single·session·on
138 a·dedicated·connection.·(Or,·equivalently,·<a·href="#only_open/1"><code·class="inline">only_open/1,2</code></a>138 a·dedicated·connection.·(Or,·equivalently,·<a·href="#only_open/1"><code·class="inline">only_open/1,2</code></a>
139 followed·by·<a·href="#hello/1"><code·class="inline">hello/1-3</code></a>.)</p><p>Connect/session·options·can·be·specified·in·a·configuration·file·with·entries139 followed·by·<a·href="#hello/1"><code·class="inline">hello/1-3</code></a>.)</p><p>Connect/session·options·can·be·specified·in·a·configuration·file·with·entries
140 like·the·following.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2179168352-1">{</span><span·class="nf">server_id</span><span·class="p"·data-group-id="2179168352-2">(</span><span·class="p"·data-group-id="2179168352-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2179168352-3">[<[·...·truncated·by·diffoscope;·len:·236,·SHA:·9568f1cd24304b450b1253d8c0cb2553d1fdd63f3868e86a6a370178974826ae·...·]-1">}</span><span·class="p">.</span></code></pre><p>The·<a·href="#t:server_id/0"><code·class="inline">server_id/0</code></a>·or·an·associated·<a·href="ct.html#t:target_name/0"><code·class="inline">ct:target_name/0</code></a>·can·then·be·passed·to140 like·the·following.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7281446929-1">{</span><span·class="nf">server_id</span><span·class="p"·data-group-id="7281446929-2">(</span><span·class="p"·data-group-id="7281446929-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7281446929-3">[<[·...·truncated·by·diffoscope;·len:·236,·SHA:·36c38f6782800e56f27387f1c976560ac66b44e87d7fc319eb23449330e10099·...·]-1">}</span><span·class="p">.</span></code></pre><p>The·<a·href="#t:server_id/0"><code·class="inline">server_id/0</code></a>·or·an·associated·<a·href="ct.html#t:target_name/0"><code·class="inline">ct:target_name/0</code></a>·can·then·be·passed·to
141 the·aforementioned·functions·to·use·the·referenced·configuration.</p><p><a·href=""·id="Signaling"></a></p><p><em>Signaling</em></p><p>Protocol·operations·in·the·NETCONF·protocol·are·realized·as·remote·procedure141 the·aforementioned·functions·to·use·the·referenced·configuration.</p><p><a·href=""·id="Signaling"></a></p><p><em>Signaling</em></p><p>Protocol·operations·in·the·NETCONF·protocol·are·realized·as·remote·procedure
142 calls·(RPCs)·from·client·to·server·and·a·corresponding·reply·from·server·to142 calls·(RPCs)·from·client·to·server·and·a·corresponding·reply·from·server·to
143 client.·RPCs·are·sent·using·like-named·functions·(eg.143 client.·RPCs·are·sent·using·like-named·functions·(eg.
144 <a·href="#edit_config/3"><code·class="inline">edit_config/3-5</code></a>·to·send·an·edit-config·RPC),·with·the144 <a·href="#edit_config/3"><code·class="inline">edit_config/3-5</code></a>·to·send·an·edit-config·RPC),·with·the
145 server·reply·as·return·value.·There·are·functions·for·each·RPC·defined·in·RFC145 server·reply·as·return·value.·There·are·functions·for·each·RPC·defined·in·RFC
146 6241·and·the·create-subscription·RPC·from·RFC·5277,·all·of·which·are·wrappers·on146 6241·and·the·create-subscription·RPC·from·RFC·5277,·all·of·which·are·wrappers·on
147 <a·href="#send_rpc/2"><code·class="inline">send_rpc/2,3</code></a>,·that·can·be·used·to·send·an·arbitrary·RPC·not147 <a·href="#send_rpc/2"><code·class="inline">send_rpc/2,3</code></a>,·that·can·be·used·to·send·an·arbitrary·RPC·not
148 defined·in·RFC·6241·or·RFC·5277.</p><p>All·of·the·signaling·functions·have·one·variant·with·a·<code·class="inline">Timeout</code>·argument·and148 defined·in·RFC·6241·or·RFC·5277.</p><p>All·of·the·signaling·functions·have·one·variant·with·a·<code·class="inline">Timeout</code>·argument·and
149 one·without,·corresponding·to·an·infinite·timeout.·The·latter·is·inappropriate149 one·without,·corresponding·to·an·infinite·timeout.·The·latter·is·inappropriate
150 in·most·cases·since·a·non-response·by·the·server·or·a·missing·message-id·causes150 in·most·cases·since·a·non-response·by·the·server·or·a·missing·message-id·causes
151 the·call·to·hang·indefinitely.</p><p><a·href=""·id="Logging"></a></p><p><em>Logging</em></p><p>The·NETCONF·server·uses·<code·class="inline">error_logger</code>·for·logging·of·NETCONF·traffic.·A·special151 the·call·to·hang·indefinitely.</p><p><a·href=""·id="Logging"></a></p><p><em>Logging</em></p><p>The·NETCONF·server·uses·<code·class="inline">error_logger</code>·for·logging·of·NETCONF·traffic.·A·special
152 purpose·error·handler·is·implemented·in·<code·class="inline">ct_conn_log_h</code>.·To·use·this·error152 purpose·error·handler·is·implemented·in·<code·class="inline">ct_conn_log_h</code>.·To·use·this·error
153 handler,·add·the·<code·class="inline">cth_conn_log</code>·hook·in·the·test·suite,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="0848549115-1">(</span><span·class="p"·data-group-id="0848549115-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">153 handler,·add·the·<code·class="inline">cth_conn_log</code>·hook·in·the·test·suite,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="0769674351-1">(</span><span·class="p"·data-group-id="0769674351-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
154 ····</span><span·class="p"·data-group-id="0848549115-2">[</span><span·class="p"·data-group-id="0848549115-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0848549115-4">[</span><span·class="p"·data-group-id="0848549115-5">{</s[·...·truncated·by·diffoscope;·len:·936,·SHA:·51d57c24b243aba7be4bee9f0679547582c102aa6f883b87ecdb7950dc3abbc6·...·]-2">]</span><span·class="p">.</span></code></pre><p><code·class="inline">conn_log_mod()</code>·is·the·name·of·the·<code·class="inline">Common·Test</code>·module·implementing·the154 ····</span><span·class="p"·data-group-id="0769674351-2">[</span><span·class="p"·data-group-id="0769674351-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0769674351-4">[</span><span·class="p"·data-group-id="0769674351-5">{</s[·...·truncated·by·diffoscope;·len:·936,·SHA:·b3b116e0e938d78923faeefadcaf5c26c1c6e8b353d8e156304cd3e2cb10fab5·...·]-2">]</span><span·class="p">.</span></code></pre><p><code·class="inline">conn_log_mod()</code>·is·the·name·of·the·<code·class="inline">Common·Test</code>·module·implementing·the
155 connection·protocol,·for·example,·<code·class="inline">ct_netconfc</code>.</p><p>Hook·option·<code·class="inline">log_type</code>·specifies·the·type·of·logging:</p><ul><li><p><strong><code·class="inline">raw</code></strong>·-·The·sent·and·received·NETCONF·data·is·logged·to·a·separate·text155 connection·protocol,·for·example,·<code·class="inline">ct_netconfc</code>.</p><p>Hook·option·<code·class="inline">log_type</code>·specifies·the·type·of·logging:</p><ul><li><p><strong><code·class="inline">raw</code></strong>·-·The·sent·and·received·NETCONF·data·is·logged·to·a·separate·text
156 file·&quot;as·is&quot;·without·any·formatting.·A·link·to·the·file·is·added·to·the·test156 file·&quot;as·is&quot;·without·any·formatting.·A·link·to·the·file·is·added·to·the·test
157 case·HTML·log.</p></li><li><p><strong><code·class="inline">pretty</code></strong>·-·The·sent·and·received·NETCONF·data·is·logged·to·a·separate·text157 case·HTML·log.</p></li><li><p><strong><code·class="inline">pretty</code></strong>·-·The·sent·and·received·NETCONF·data·is·logged·to·a·separate·text
158 file·with·XML·data·nicely·indented.·A·link·to·the·file·is·added·to·the·test158 file·with·XML·data·nicely·indented.·A·link·to·the·file·is·added·to·the·test
159 case·HTML·log.</p></li><li><p><strong><code·class="inline">html·(default)</code></strong>·-·The·sent·and·received·NETCONF·traffic·is·pretty·printed159 case·HTML·log.</p></li><li><p><strong><code·class="inline">html·(default)</code></strong>·-·The·sent·and·received·NETCONF·traffic·is·pretty·printed
160 directly·in·the·test·case·HTML·log.</p></li><li><p><strong><code·class="inline">silent</code></strong>·-·NETCONF·traffic·is·not·logged.</p></li></ul><p>By·default,·all·NETCONF·traffic·is·logged·in·one·single·log·file.·However,160 directly·in·the·test·case·HTML·log.</p></li><li><p><strong><code·class="inline">silent</code></strong>·-·NETCONF·traffic·is·not·logged.</p></li></ul><p>By·default,·all·NETCONF·traffic·is·logged·in·one·single·log·file.·However,
161 different·connections·can·be·logged·in·separate·files.·To·do·this,·use·hook161 different·connections·can·be·logged·in·separate·files.·To·do·this,·use·hook
162 option·<code·class="inline">hosts</code>·and·list·the·names·of·the·servers/connections·to·be·used·in·the162 option·<code·class="inline">hosts</code>·and·list·the·names·of·the·servers/connections·to·be·used·in·the
163 suite.·The·connections·must·be·named·for·this·to·work,·that·is,·they·must·be163 suite.·The·connections·must·be·named·for·this·to·work,·that·is,·they·must·be
164 opened·with·<a·href="#open/2"><code·class="inline">open/2</code></a>.</p><p>Option·<code·class="inline">hosts</code>·has·no·effect·if·<code·class="inline">log_type</code>·is·set·to·<code·class="inline">html</code>·or·<code·class="inline">silent</code>.</p><p>The·hook·options·can·also·be·specified·in·a·configuration·file·with164 opened·with·<a·href="#open/2"><code·class="inline">open/2</code></a>.</p><p>Option·<code·class="inline">hosts</code>·has·no·effect·if·<code·class="inline">log_type</code>·is·set·to·<code·class="inline">html</code>·or·<code·class="inline">silent</code>.</p><p>The·hook·options·can·also·be·specified·in·a·configuration·file·with
165 configuration·variable·<code·class="inline">ct_conn_log</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6568701386-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="p"·data-group-id="6568701386-2">[</span><span·class="p"·data-group-id="6568701386-3">{</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">conn_log_mod</span><span·class="p"·data-group-id="6568701386-4">(</span><span·class="p"·data-group-id="6568701386-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">conn_log_options</span><span·class="p"·data-group-id="6568701386-5">(</span><span·class="p"·data-group-id="6568701386-5">)</span><span·class="p"·data-group-id="6568701386-3">}</span><span·class="p"·data-group-id="6568701386-2">]</span><span·class="p"·data-group-id="6568701386-1">}</span><span·class="p">.</span></code></pre><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9218541521-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="p"·data-group-id="9218541521-2">[</span><span·class="p"·data-group-id="9218541521-3">{</span><span·class="ss">ct_netconfc</span><span·class="p">,</span><span·class="p"·data-group-id="9218541521-4">[</span><span·class="p"·data-group-id="9218541521-5">{</span><span·class="ss">log_type</span><span·class="p">,</span><span·class="ss">pretty</span><span·class="p"·data-group-id="9218541521-5">}</span><span·class="p">,</span><span·class="w"> 
166 ····························</span><span·class="p"·data-group-id="9218541521-6">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="9218541521-7">[</span><span·class="nc">ct</span><span·class="p">:</span><span·class=[·...·truncated·by·diffoscope;·len:·577,·SHA:·44716cf1bcfa86ae1c992a2fd5e5dd7860a95d204c03059fe3482f78115d3dd5·...·]165 configuration·variable·<code·class="inline">ct_conn_log</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6423278995-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1338,·SHA:·4829f94b45320db192fabcce31bbfa19dd7f2d0f1e2ff0a1d80f40b3d151bd9f·...·]
 166 ····························</span><span·class="p"·data-group-id="7914340675-6">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="7914340675-7">[</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">key_or_name</span><span·class="p"·data-group-id="7914340675-8">(</span><span·class="p"·data-group-id="7914340675-8">)</span><span·class="p"·data-group-id="7914340675-7">]</span><span·class="p"·data-group-id="7914340675-6">}</span><span·class="p"·data-group-id="7914340675-4">]</span><span·class="p"·data-group-id="7914340675-3">}</span><span·class="p"·data-group-id="7914340675-2">]</span><span·class="p"·data-group-id="7914340675-1">}</span></code></pre><blockquote><h4·class="info">Note</h4><p>Hook·options·specified·in·a·configuration·file·overwrite·the·hard-coded·hook
167 options·in·the·test·suite.</p></blockquote><p><em>Logging·Example·1:</em></p><p><a·href=""·id="Logging_example_1"></a></p><p>The·following·<code·class="inline">ct_hooks</code>·statement·causes·pretty·printing·of·NETCONF·traffic·to167 options·in·the·test·suite.</p></blockquote><p><em>Logging·Example·1:</em></p><p><a·href=""·id="Logging_example_1"></a></p><p>The·following·<code·class="inline">ct_hooks</code>·statement·causes·pretty·printing·of·NETCONF·traffic·to
168 separate·logs·for·the·connections·named·<code·class="inline">nc_server1</code>·and·<code·class="inline">nc_server2</code>.·Any·other168 separate·logs·for·the·connections·named·<code·class="inline">nc_server1</code>·and·<code·class="inline">nc_server2</code>.·Any·other
169 connections·are·logged·to·default·NETCONF·log.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="8174632282-1">(</span><span·class="p"·data-group-id="8174632282-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">169 connections·are·logged·to·default·NETCONF·log.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="3208808769-1">(</span><span·class="p"·data-group-id="3208808769-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
170 ···</span><span·class="p"·data-group-id="8174632282-2">[</span><span·class="p"·data-group-id="8174632282-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8174632282-4">[</span><span·class="p"·data-group-id="8174632282-5">{</[·...·truncated·by·diffoscope;·len:·487,·SHA:·c37885e60c27c020dc8f1dba837870b54545c128d38165b7b493bc69eb10c309·...·]-9">}</span><span·class="p">}</span><span·class="p">,</span><span·class="w">170 ···</span><span·class="p"·data-group-id="3208808769-2">[</span><span·class="p"·data-group-id="3208808769-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3208808769-4">[</span><span·class="p"·data-group-id="3208808769-5">{</[·...·truncated·by·diffoscope;·len:·487,·SHA:·d67cd9f1e3715b32426354e14f94ae33fb997eade7a083d442e7d85c8ff4d3c6·...·]-9">}</span><span·class="p">}</span><span·class="p">,</span><span·class="w">
171 ··············································</span><span·class="p"·data-group-id="8174632282-10">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="8174632282-11">[</span><span·class="ss">nc_server1</span><span·class="p">,</span><span·class="ss">nc_server2</span><span·class="p"·data-group-id="8174632282-11">]</span><span·class="p"·data-group-id="8174632282-10">}</span><span·class="p"·data-group-id="8174632282-8">]</span><span·class="p"·data-group-id="8174632282-7">}</span><span·class="w"> 
172 ·······························</span><span·class="p"·data-group-id="8174632282-6">]</span><span·class="p"·data-group-id="8174632282-5">}</span><span·class="p"·data-group-id="8174632282-4">]</span><span·class="p"·data-group-id="8174632282-3">}</span><span·class="p"·data-group-id="8174632282-2">]</span><span·class="p">.</span></code></pre><p>Connections·must·be·opened·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">open</span><span·class="p"·data-group-id="0926596599-1">(</span><span·class="ss">nc_server1</span><span·class="p">,</span><span·class="p"·data-group-id="0926596599-2">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="0926596599-2">]</span><span·class="p"·data-group-id="0926596599-1">)</span><span·class="p">,</span><span·class="w"> 
173 </span><span·class="nf">open</span><span·class="p"·data-group-id="0926596599-3">(</span><span·class="ss">nc_server2</span><span·class="p">,</span><span·class="p"·data-group-id="0926596599-4">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="0926596599-4">]</span><span·class="p"·data-group-id="0926596599-3">)</span><span·class="p">.</span></code></pre><p><em>Logging·Example·2:</em></p><p><a·href=""·id="Logging_example_2"></a></p><p>The·following·configuration·file·causes·raw·logging·of·all·NETCONF·traffic·in·to 
174 one·single·text·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4295701712-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="p"·data-group-id="4295701712-2">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·892,·SHA:·e895411411fe7c8265e006c4cc53ee025c0f55ae6a4d9853893bb26635b9f613·...·]</span><span·class="w">171 ··············································</span><span·class="p"·data-group-id="3208808769-10">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="3208808769-11">[</span><span·class="ss">nc_server1</span><span·cl[·...·truncated·by·diffoscope;·len:·257,·SHA:·a8081cf3753743850741c73413fd42f07bec8b857ca366920ee5d26bcaf17ee0·...·]</span><span·class="w">
 172 ·······························</span><span·class="p"·data-group-id="3208808769-6">]</span><span·class="p"·data-group-id="3208808769-5">}</span><span·class="p"·data-group-id="3208808769-4">]</span><span·class="p"·data-group-id="3208808769-3">}</span><span·class="p"·data-group-id="3208808769-2">]</span><span·class="p">.</span></code></pre><p>Connections·must·be·opened·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">open</span><span·class="p"·data-group-id="9071463205-1">(</span><span·class="ss">nc_server1</span><span·class="p">,</span><span·class="p"·data-group-id="9071463205-2">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="9071463205-2">]</span><span·class="p"·data-group-id="9071463205-1">)</span><span·class="p">,</span><span·class="w">
 173 </span><span·class="nf">open</span><span·class="p"·data-group-id="9071463205-3">(</span><span·class="ss">nc_server2</span><span·class="p">,</span><span·class="p"·data-group-id="9071463205-4">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="9071463205-4">]</span><span·class="p"·data-group-id="9071463205-3">)</span><span·class="p">.</span></code></pre><p><em>Logging·Example·2:</em></p><p><a·href=""·id="Logging_example_2"></a></p><p>The·following·configuration·file·causes·raw·logging·of·all·NETCONF·traffic·in·to
 174 one·single·text·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8043327435-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="p"·data-group-id="8043327435-2">[</span><span·class="p"·data-group-id="8043327435-3">{</span><span·class="ss">ct_netconfc</span><span·class="p">,</span><span·class="p"·data-group-id="8043327435-4">[</span><span·class="p"·data-group-id="8043327435-5">{</span><span·class="ss">log_type</span><span·class="p">,</span><span·class="ss">raw</span><span·class="p"·data-group-id="8043327435-5">}</span><span·class="p"·data-group-id="8043327435-4">]</span><span·class="p"·data-group-id="8043327435-3">}</span><span·class="p"·data-group-id="8043327435-2">]</span><span·class="p"·data-group-id="8043327435-1">}</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">ct_hooks</code>·statement·must·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="3701840395-1">(</span><span·class="p"·data-group-id="3701840395-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
175 ····</span><span·class="p"·data-group-id="3655849037-2">[</span><span·class="p"·data-group-id="3655849037-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3655849037-4">[</span><span·class="p"·data-group-id="3655849037-5">{</s[·...·truncated·by·diffoscope;·len:·394,·SHA:·7c4be763540cefbb009295e603050b857d864c34c3dc7ccddcaffc689f8bea56·...·]-2">]</span><span·class="p">.</span></code></pre><p>The·same·<code·class="inline">ct_hooks</code>·statement·without·the·configuration·file·would·cause·HTML175 ····</span><span·class="p"·data-group-id="3701840395-2">[</span><span·class="p"·data-group-id="3701840395-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3701840395-4">[</span><span·class="p"·data-group-id="3701840395-5">{</s[·...·truncated·by·diffoscope;·len:·394,·SHA:·fa66c20a386a71e7a93906708acea3386e47be2515b7807b60bc54fe33787162·...·]-2">]</span><span·class="p">.</span></code></pre><p>The·same·<code·class="inline">ct_hooks</code>·statement·without·the·configuration·file·would·cause·HTML
176 logging·of·all·NETCONF·connections·in·to·the·test·case·HTML·log.</p>176 logging·of·all·NETCONF·connections·in·to·the·test·case·HTML·log.</p>
177 ····</section>177 ····</section>
  
178 </div>178 </div>
  
179 ··<section·id="summary"·class="details-list">179 ··<section·id="summary"·class="details-list">
180 ····<h1·class="section-heading">180 ····<h1·class="section-heading">
Offset 2169, 16 lines modifiedOffset 2169, 16 lines modified
2169 ·························Result·::·ok·|·{error,·<a·href="#t:error_reason/0">error_reason</a>()}.</pre>2169 ·························Result·::·ok·|·{error,·<a·href="#t:error_reason/0">error_reason</a>()}.</pre>
  
2170 ······</div>2170 ······</div>
  
2171 <p>Edits·configuration·data.</p><p>By·default·only·the·running·target·is·available,·unless·the·server·includes2171 <p>Edits·configuration·data.</p><p>By·default·only·the·running·target·is·available,·unless·the·server·includes
2172 <code·class="inline">:candidate</code>·or·<code·class="inline">:startup</code>·in·its·list·of·capabilities.</p><p><code·class="inline">OptParams</code>·can·be·used·for·specifying·optional·parameters·(<code·class="inline">default-operation</code>,2172 <code·class="inline">:candidate</code>·or·<code·class="inline">:startup</code>·in·its·list·of·capabilities.</p><p><code·class="inline">OptParams</code>·can·be·used·for·specifying·optional·parameters·(<code·class="inline">default-operation</code>,
2173 <code·class="inline">test-option</code>,·or·<code·class="inline">error-option</code>)·to·be·added·to·the·<code·class="inline">edit-config</code>·request.·The2173 <code·class="inline">test-option</code>,·or·<code·class="inline">error-option</code>)·to·be·added·to·the·<code·class="inline">edit-config</code>·request.·The
2174 value·must·be·a·list·containing·valid·simple·XML,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3494295887-1">[</span><span·class="p"·data-group-id="3494295887-2">{</span><span·class="ss">&#39;default-operation&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3494295887-3">[</span><span·class="s">&quot;none&qu[·...·truncated·by·diffoscope;·len:·104,·SHA:·fe085f43909a31613dd9cd45f4e6752d320a053edb2f74596183f66dec7aa848·...·]-2">}</span><span·class="p">,</span><span·class="w">2174 value·must·be·a·list·containing·valid·simple·XML,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2358669332-1">[</span><span·class="p"·data-group-id="2358669332-2">{</span><span·class="ss">&#39;default-operation&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2358669332-3">[</span><span·class="s">&quot;none&qu[·...·truncated·by·diffoscope;·len:·104,·SHA:·c33506a059b63ee5a1aecca31be0625c18070131d45f7b092f0edf150357491d·...·]-2">}</span><span·class="p">,</span><span·class="w">
2175 ·</span><span·class="p"·data-group-id="3494295887-4">{</span><span·class="ss">&#39;error-option&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3494295887-5">[</span><span·class="s">&quot;rollback-on-error&quot;</span><span·class="p"·data-group-id="3494[·...·truncated·by·diffoscope;·len:·112,·SHA:·27a9225fa21fbd56b492f7d76a6fd4f9fc13bad212d745f43fbb6e01dcde6660·...·]-1">]</span></code></pre><p>If·<code·class="inline">OptParams</code>·is·not·given,·the·default·value·<code·class="inline">[]</code>·is·used.</p>2175 ·</span><span·class="p"·data-group-id="2358669332-4">{</span><span·class="ss">&#39;error-option&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2358669332-5">[</span><span·class="s">&quot;rollback-on-error&quot;</span><span·class="p"·data-group-id="2358[·...·truncated·by·diffoscope;·len:·112,·SHA:·774e881f039e1b9f21ce6d3f1341f005538e0677e4a3f2d5f1b3d860fe206c96·...·]-1">]</span></code></pre><p>If·<code·class="inline">OptParams</code>·is·not·given,·the·default·value·<code·class="inline">[]</code>·is·used.</p>
2176 ··</section>2176 ··</section>
2177 </section>2177 </section>
2178 <section·class="detail"·id="get/2">2178 <section·class="detail"·id="get/2">
  
2179 ··<div·class="detail-header">2179 ··<div·class="detail-header">
2180 ····<a·href="#get/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2180 ····<a·href="#get/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
2181 ······<i·class="ri-link-m"·aria-hidden="true"></i>2181 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 3292, 15 lines modifiedOffset 3292, 15 lines modified
3292 ······<p·class="built-using">3292 ······<p·class="built-using">
3293 ········Built·using3293 ········Built·using
3294 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3294 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3295 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3295 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3296 ······</p>3296 ······</p>
3297 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3297 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3298 ····</footer>3298 ····</footer>
3299 ··</div>3299 ··</div>
3300 </main>3300 </main>
3301 </div>3301 </div>
3302 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3302 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3303 <script>3303 <script>
3304 ··document.addEventListener("DOMContentLoaded",·function·()·{3304 ··document.addEventListener("DOMContentLoaded",·function·()·{
704 B
html2text {}
Max HTML report size reached
25.0 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_property_test.html
    
Offset 131, 38 lines modifiedOffset 131, 38 lines modified
131 <p>Support·in·Common·Test·for·running·property-based·tests.</p><p>This·module·helps·running·property-based·tests·in·the·<code·class="inline">Common·Test</code>·framework.131 <p>Support·in·Common·Test·for·running·property-based·tests.</p><p>This·module·helps·running·property-based·tests·in·the·<code·class="inline">Common·Test</code>·framework.
132 One·(or·more)·of·the·property·testing·tools</p><ul><li><a·href="http://www.quviq.com">QuickCheck</a>,</li><li><a·href="https://proper-testing.github.io">PropEr</a>·or</li><li><a·href="https://github.com/krestenkrab/triq">Triq</a></li></ul><p>is·assumed·to·be·installed.</p><p>The·idea·with·this·module·is·to·have·a·<code·class="inline">Common·Test</code>·test·suite·calling·a132 One·(or·more)·of·the·property·testing·tools</p><ul><li><a·href="http://www.quviq.com">QuickCheck</a>,</li><li><a·href="https://proper-testing.github.io">PropEr</a>·or</li><li><a·href="https://github.com/krestenkrab/triq">Triq</a></li></ul><p>is·assumed·to·be·installed.</p><p>The·idea·with·this·module·is·to·have·a·<code·class="inline">Common·Test</code>·test·suite·calling·a
133 property·testing·tool·with·special·property·test·suites·as·defined·by·that·tool.133 property·testing·tool·with·special·property·test·suites·as·defined·by·that·tool.
134 The·tests·are·collected·in·the·<code·class="inline">test</code>·directory·of·the·application.·The·<code·class="inline">test</code>134 The·tests·are·collected·in·the·<code·class="inline">test</code>·directory·of·the·application.·The·<code·class="inline">test</code>
135 directory·has·a·subdirectory·<code·class="inline">property_test</code>,·where·everything·needed·for·the135 directory·has·a·subdirectory·<code·class="inline">property_test</code>,·where·everything·needed·for·the
136 property·tests·are·collected.·The·usual·Erlang·application·directory·structure136 property·tests·are·collected.·The·usual·Erlang·application·directory·structure
137 is·assumed.</p><p>A·typical·<code·class="inline">Common·Test</code>·test·suite·using·<code·class="inline">ct_property_test</code>·is·organized·as137 is·assumed.</p><p>A·typical·<code·class="inline">Common·Test</code>·test·suite·using·<code·class="inline">ct_property_test</code>·is·organized·as
138 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6658184939-1">(</span><span·class="ss">my_prop_test_SUITE</span><span·class="p"·data-group-id="6658184939-1">)</span><span·class="p">.</span><span·class="w">138 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9132737180-1">(</span><span·class="ss">my_prop_test_SUITE</span><span·class="p"·data-group-id="9132737180-1">)</span><span·class="p">.</span><span·class="w">
139 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="6658184939-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="6658184939-2">)</span><span·class="p">.</span><span·class="w">139 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="9132737180-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="9132737180-2">)</span><span·class="p">.</span><span·class="w">
140 </span><span·class="w">140 </span><span·class="w">
141 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="6658184939-3">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="6658184939-3">)</span><span·class="p">.</span><span·class="w">141 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="9132737180-3">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="9132737180-3">)</span><span·class="p">.</span><span·class="w">
  
142 </span><span·class="nf">all</span><span·class="p"·data-group-id="6658184939-4">(</span><span·class="p"·data-group-id="6658184939-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6658184939-5">[</span><span·class="ss">prop_ftp_case</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·e0a31f11e6df5ef0bcfdf806a20275b37b7e5ee3bb47e7c0ac5e9fb82a660135·...·]-5">]</span><span·class="p">.</span><span·class="w">142 </span><span·class="nf">all</span><span·class="p"·data-group-id="9132737180-4">(</span><span·class="p"·data-group-id="9132737180-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9132737180-5">[</span><span·class="ss">prop_ftp_case</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·348da142500ff2dcfd294becb8276de948b045bcdc61dd2ee03b1d200e359cb2·...·]-5">]</span><span·class="p">.</span><span·class="w">
  
143 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="6658184939-6">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6658184939-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">143 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="9132737180-6">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9132737180-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
144 ····</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="6658184939-7">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6658184939-7">)</span><span·class="p">.</span><span·class="w">144 ····</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="9132737180-7">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9132737180-7">)</span><span·class="p">.</span><span·class="w">
  
145 </span><span·class="c1">%%%----·test·case</span><span·class="w">145 </span><span·class="c1">%%%----·test·case</span><span·class="w">
146 </span><span·class="nf">prop_ftp_case</span><span·class="p"·data-group-id="6658184939-8">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6658184939-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">146 </span><span·class="nf">prop_ftp_case</span><span·class="p"·data-group-id="9132737180-8">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9132737180-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
147 ····</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">quickcheck</span><span·class="p"·data-group-id="6658184939-9">(</span><span·class="w">147 ····</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">quickcheck</span><span·class="p"·data-group-id="9132737180-9">(</span><span·class="w">
148 ······</span><span·class="nc">ftp_simple_client_server</span><span·class="p">:</span><span·class="nf">prop_ftp</span><span·class="p"·data-group-id="6658184939-10">(</span><span·class="p"·data-group-id="6658184939-10">)</span><span·class="p">,</span><span·class="w">148 ······</span><span·class="nc">ftp_simple_client_server</span><span·class="p">:</span><span·class="nf">prop_ftp</span><span·class="p"·data-group-id="9132737180-10">(</span><span·class="p"·data-group-id="9132737180-10">)</span><span·class="p">,</span><span·class="w">
149 ······</span><span·class="n">Config</span><span·class="w">149 ······</span><span·class="n">Config</span><span·class="w">
150 ·····</span><span·class="p"·data-group-id="6658184939-9">)</span><span·class="p">.</span></code></pre><p>and·the·the·property·test·module·(in·this·example150 ·····</span><span·class="p"·data-group-id="9132737180-9">)</span><span·class="p">.</span></code></pre><p>and·the·the·property·test·module·(in·this·example
151 <code·class="inline">ftp_simple_client_server.erl</code>)·as·almost·a·usual·property·testing·module·(More151 <code·class="inline">ftp_simple_client_server.erl</code>)·as·almost·a·usual·property·testing·module·(More
152 examples·are·in·<a·href="ct_property_test_chapter.html">the·User's·Guide</a>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9061441195-1">(</span><span·class="ss">ftp_simple_client_server</span><span·class="p"·data-group-id="9061441195-1">)</span><span·class="p">.</span><span·class="w"> 
153 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9061441195-2">(</span><span·class="p"·data-group-id="9061441195-3">[</span><span·class="ss">prop_ftp</span><span·class="p">/</span><span·class="mi">0</span><span·cl[·...·truncated·by·diffoscope;·len:·160,·SHA:·6c193930c42b5e759b994b0e066a00ac322214aec559a348b7575c47d32e7640·...·]">)</span><span·class="p">.</span><span·class="w">152 examples·are·in·<a·href="ct_property_test_chapter.html">the·User's·Guide</a>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2566378408-1">(</span><span·class="ss">ft[·...·truncated·by·diffoscope;·len:·72,·SHA:·97d0066256d3634cc57f7a640c5ed9b5bb3c2f1833e39991cfd073eff080250b·...·]">)</span><span·class="p">.</span><span·class="w">
 153 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2566378408-2">(</span><span·class="p"·data-group-id="2566378408-3">[</span><span·class="ss">prop_ftp</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="2566378408-3">]</span><span·class="p"·data-group-id="2566378408-2">)</span><span·class="p">.</span><span·class="w">
154 </span><span·class="w">154 </span><span·class="w">
155 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="9061441195-4">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="9061441195-4">)</span><span·class="p">.</span><span·class="w">155 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2566378408-4">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="2566378408-4">)</span><span·class="p">.</span><span·class="w">
  
156 </span><span·class="nf">prop_ftp</span><span·class="p"·data-group-id="9061441195-5">(</span><span·class="p"·data-group-id="9061441195-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">156 </span><span·class="nf">prop_ftp</span><span·class="p"·data-group-id="2566378408-5">(</span><span·class="p"·data-group-id="2566378408-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
157 ····</span><span·class="o">?</span><span·class="n">FORALL</span><span·class="p"·data-group-id="9061441195-6">(</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>157 ····</span><span·class="o">?</span><span·class="n">FORALL</span><span·class="p"·data-group-id="2566378408-6">(</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>
158 ····</section>158 ····</section>
  
159 </div>159 </div>
  
160 ··<section·id="summary"·class="details-list">160 ··<section·id="summary"·class="details-list">
161 ····<h1·class="section-heading">161 ····<h1·class="section-heading">
162 ······<a·class="hover-link"·href="#summary">162 ······<a·class="hover-link"·href="#summary">
Offset 489, 15 lines modifiedOffset 489, 15 lines modified
489 <code·class="inline">{fail,·Explanation}</code>.</p><p>If·support·is·found,·the·option·<code·class="inline">{property_test_tool,ToolModule}</code>·with·the489 <code·class="inline">{fail,·Explanation}</code>.</p><p>If·support·is·found,·the·option·<code·class="inline">{property_test_tool,ToolModule}</code>·with·the
490 selected·tool·main·module·name·(<code·class="inline">eqc</code>,·<code·class="inline">proper</code>·or·<code·class="inline">triq</code>)·is·added·to·the·list490 selected·tool·main·module·name·(<code·class="inline">eqc</code>,·<code·class="inline">proper</code>·or·<code·class="inline">triq</code>)·is·added·to·the·list
491 <code·class="inline">Config</code>·which·then·is·returned.</p><p>The·property·tests·are·assumed·to·be·in·a·subdirectory·named·<code·class="inline">property_test</code>.491 <code·class="inline">Config</code>·which·then·is·returned.</p><p>The·property·tests·are·assumed·to·be·in·a·subdirectory·named·<code·class="inline">property_test</code>.
492 All·found·Erlang·files·in·that·directory·are·compiled·with·one·of·the·macros492 All·found·Erlang·files·in·that·directory·are·compiled·with·one·of·the·macros
493 <code·class="inline">'EQC'</code>,·<code·class="inline">'PROPER'</code>·or·<code·class="inline">'TRIQ'</code>·set,·depending·on·which·tool·that·is·first493 <code·class="inline">'EQC'</code>,·<code·class="inline">'PROPER'</code>·or·<code·class="inline">'TRIQ'</code>·set,·depending·on·which·tool·that·is·first
494 found.·This·could·make·parts·of·the·Erlang·property·tests·code·to·be·included·or494 found.·This·could·make·parts·of·the·Erlang·property·tests·code·to·be·included·or
495 excluded·with·the·macro·directives·<code·class="inline">-ifdef(Macro).</code>·or·<code·class="inline">-ifndef(Macro).</code>.</p><p>The·file(s)·in·the·<code·class="inline">property_test</code>·subdirectory·could,·or·should,·include·the495 excluded·with·the·macro·directives·<code·class="inline">-ifdef(Macro).</code>·or·<code·class="inline">-ifndef(Macro).</code>.</p><p>The·file(s)·in·the·<code·class="inline">property_test</code>·subdirectory·could,·or·should,·include·the
496 ct_property_test·include·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2790303005-1">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="2790303005-1">)</span><span·class="p">.</span></code></pre><p>This·included·file·will:</p><ul><li>Include·the·correct·tool's·include·file</li><li>Set·the·macro·<code·class="inline">'MOD_eqc'</code>·to·the·correct·module·name·for·the·selected·tool.496 ct_property_test·include·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="3668341416-1">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="3668341416-1">)</span><span·class="p">.</span></code></pre><p>This·included·file·will:</p><ul><li>Include·the·correct·tool's·include·file</li><li>Set·the·macro·<code·class="inline">'MOD_eqc'</code>·to·the·correct·module·name·for·the·selected·tool.
497 That·is,·the·macro·<code·class="inline">'MOD_eqc'</code>·is·set·to·either·<code·class="inline">eqc</code>,·<code·class="inline">proper</code>·or·<code·class="inline">triq</code>.</li></ul>497 That·is,·the·macro·<code·class="inline">'MOD_eqc'</code>·is·set·to·either·<code·class="inline">eqc</code>,·<code·class="inline">proper</code>·or·<code·class="inline">triq</code>.</li></ul>
498 ··</section>498 ··</section>
499 </section>499 </section>
500 <section·class="detail"·id="present_result/4">500 <section·class="detail"·id="present_result/4">
  
501 ··<div·class="detail-header">501 ··<div·class="detail-header">
502 ····<a·href="#present_result/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">502 ····<a·href="#present_result/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 569, 34 lines modifiedOffset 569, 34 lines modified
569 ····························Config·::·<a·href="../../../../lib/stdlib-6.0.1/doc/html/proplists.html#t:proplist/0">proplists:proplist</a>(),569 ····························Config·::·<a·href="../../../../lib/stdlib-6.0.1/doc/html/proplists.html#t:proplist/0">proplists:proplist</a>(),
570 ····························Options0·::·<a·href="../../../../lib/stdlib-6.0.1/doc/html/proplists.html#t:proplist/0">proplists:proplist</a>().</pre>570 ····························Options0·::·<a·href="../../../../lib/stdlib-6.0.1/doc/html/proplists.html#t:proplist/0">proplists:proplist</a>().</pre>
  
571 ······</div>571 ······</div>
  
572 <p>Presents·the·result·of·<em>stateful·(statem)·property·testing</em>·using·the·aggregate572 <p>Presents·the·result·of·<em>stateful·(statem)·property·testing</em>·using·the·aggregate
573 function·in·PropEr,·QuickCheck·or·other·similar·property·testing·tool.</p><p>It·is·assumed·to·be·called·inside·the·property·called·by·<a·href="#quickcheck/2"><code·class="inline">quickcheck/2</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">573 function·in·PropEr,·QuickCheck·or·other·similar·property·testing·tool.</p><p>It·is·assumed·to·be·called·inside·the·property·called·by·<a·href="#quickcheck/2"><code·class="inline">quickcheck/2</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
574 </span><span·class="n">RunResult</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">run_parallel_commands</span><span·class="p"·data-group-id="1215880639-1">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cmds</span><span·class="p"·data-group-id="1215880639-1">)</span><span·class="p">,</span><span·class="w">574 </span><span·class="n">RunResult</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">run_parallel_commands</span><span·class="p"·data-group-id="1278811198-1">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cmds</span><span·class="p"·data-group-id="1278811198-1">)</span><span·class="p">,</span><span·class="w">
575 </span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">present_result</span><span·class="p"·data-group-id="1215880639-2">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cmds</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RunResult</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·7800d42b04bcb4408b72e099b6ee8807162c2388a7f5db55dcec7b97f77c5e17·...·]-2">)</span><span·class="w">575 </span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">present_result</span><span·class="p"·data-group-id="1278811198-2">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cmds</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RunResult</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·f927a7eabf3e1a5c3cbb83c884fb024b1227a6f8e96a29d8ba3f80d849f44e87·...·]-2">)</span><span·class="w">
576 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>See·the·<a·href="ct_property_test_chapter.html#stateful1">User's·Guide</a>·for·an·example·of576 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>See·the·<a·href="ct_property_test_chapter.html#stateful1">User's·Guide</a>·for·an·example·of
577 the·usage·and·of·the·default·printout.</p><p>The·<code·class="inline">StatisticsSpec</code>·is·a·list·of·the·tuples:</p><ul><li><code·class="inline">{Title::string(),·CollectFun::fun/1}</code></li><li><code·class="inline">{Title::string(),·FrequencyFun::/0,·CollectFun::fun/1}</code></li></ul><p>Each·tuple·will·produce·one·table·in·the·order·of·their·places·in·the·list.</p><ul><li><p><code·class="inline">Title</code>·will·be·the·title·of·one·result·table</p></li><li><p><code·class="inline">CollectFun</code>·is·called·with·one·argument:·the·<code·class="inline">Cmds</code>.·It·should·return·a·list577 the·usage·and·of·the·default·printout.</p><p>The·<code·class="inline">StatisticsSpec</code>·is·a·list·of·the·tuples:</p><ul><li><code·class="inline">{Title::string(),·CollectFun::fun/1}</code></li><li><code·class="inline">{Title::string(),·FrequencyFun::/0,·CollectFun::fun/1}</code></li></ul><p>Each·tuple·will·produce·one·table·in·the·order·of·their·places·in·the·list.</p><ul><li><p><code·class="inline">Title</code>·will·be·the·title·of·one·result·table</p></li><li><p><code·class="inline">CollectFun</code>·is·called·with·one·argument:·the·<code·class="inline">Cmds</code>.·It·should·return·a·list
578 of·the·values·to·be·counted.·The·following·pre-defined·functions·exist:</p><ul><li><code·class="inline">ct_property_test:cmnd_names/1</code>·returns·a·list·of·commands·(function·calls)578 of·the·values·to·be·counted.·The·following·pre-defined·functions·exist:</p><ul><li><code·class="inline">ct_property_test:cmnd_names/1</code>·returns·a·list·of·commands·(function·calls)
579 generated·in·the·<code·class="inline">Cmnd</code>·sequence,·without·Module,·Arguments·and·other579 generated·in·the·<code·class="inline">Cmnd</code>·sequence,·without·Module,·Arguments·and·other
580 details.</li><li><code·class="inline">ct_property_test:num_calls/1</code>·returns·a·list·of·the·length·of·commands580 details.</li><li><code·class="inline">ct_property_test:num_calls/1</code>·returns·a·list·of·the·length·of·commands
581 lists</li><li><code·class="inline">ct_property_test:sequential_parallel/1</code>·returns·a·list·with·information581 lists</li><li><code·class="inline">ct_property_test:sequential_parallel/1</code>·returns·a·list·with·information
582 about·sequential·and·parallel·parts·from·<code·class="inline">Tool:parallel_commands/1,2</code></li></ul></li><li><p><code·class="inline">FrequencyFun/0</code>·returns·a·fun/1·which·is·supposed·to·take·a·list·of·items·as582 about·sequential·and·parallel·parts·from·<code·class="inline">Tool:parallel_commands/1,2</code></li></ul></li><li><p><code·class="inline">FrequencyFun/0</code>·returns·a·fun/1·which·is·supposed·to·take·a·list·of·items·as
583 input,·and·return·an·iolist·which·will·be·printed·as·the·table.·Per·default,583 input,·and·return·an·iolist·which·will·be·printed·as·the·table.·Per·default,
584 the·number·of·each·item·is·counted·and·the·percentage·is·printed·for·each.·The584 the·number·of·each·item·is·counted·and·the·percentage·is·printed·for·each.·The
585 list·[a,b,a,a,c]·could·for·example·return</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5694270520-1">[</span><span·class="s">&quot;a·60%\n&quot;</span><span·class="p">,</span><span·class="s">&quot;b·20%\n&quot;</span><span·class="p">,</span><span·class="s">&quot;c·20%\n&quot;</span><span·class="p"·data-group-id="5694270520-1">]</span></code></pre><p>which·will·be·printed·by·the·<code·class="inline">print_fun</code>.·The·default·<code·class="inline">print_fun</code>·will·print585 list·[a,b,a,a,c]·could·for·example·return</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7069896767-1">[</span><span·class="s">&quot;a·60%\n&quot;</span><span·class="p">,</span><span·class="s">&quot;b·20%\n&quot;</span><span·class="p">,</span><span·class="s">&quot;c·20%\n&quot;</span><span·class="p"·data-group-id="7069896767-1">]</span></code></pre><p>which·will·be·printed·by·the·<code·class="inline">print_fun</code>.·The·default·<code·class="inline">print_fun</code>·will·print
586 it·as:</p><pre><code·class="text">a·60%586 it·as:</p><pre><code·class="text">a·60%
587 b·20%587 b·20%
588 c·20%</code></pre></li></ul><p>The·default·<code·class="inline">StatisticsSpec</code>·is:</p><ul><li><p>For·sequential·commands:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3289081645-1">[</span><span·class="p"·data-group-id="3289081645-2">{</span><span·class="s">&quot;Function·calls&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">cmnd_names</span>[·...·truncated·by·diffoscope;·len:·90,·SHA:·b8e3c87d9e7d5ce58e2d580032568ceae997cc9b714166b61c646f35bce378e8·...·]-2">}</span><span·class="p">,</span><span·class="w">588 c·20%</code></pre></li></ul><p>The·default·<code·class="inline">StatisticsSpec</code>·is:</p><ul><li><p>For·sequential·commands:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6662032374-1">[</span><span·class="p"·data-group-id="6662032374-2">{</span><span·class="s">&quot;Function·calls&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">cmnd_names</span>[·...·truncated·by·diffoscope;·len:·90,·SHA:·6c262ccac08734fe4dff0aa337533693571a75c1bba9a509db1871a0a417c3da·...·]-2">}</span><span·class="p">,</span><span·class="w">
589 ·</span><span·class="p"·data-group-id="3289081645-3">{</span><span·class="s">&quot;Length·of·command·sequences&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">print_frequency_ranges</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">589 ·</span><span·class="p"·data-group-id="6662032374-3">{</span><span·class="s">&quot;Length·of·command·sequences&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">print_frequency_ranges</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
590 ··················································</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">num_calls</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="3289081645-3">}</span><span·class="p"·data-group-id="3289081645-1">]</span></code></pre></li><li><p>For·parallel·commands:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1819289700-1">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·321,·SHA:·aa130e8aa60f7a854e43aaff2ddfb18582e3f137cf531621558ec6c2da97fb06·...·]0-2">}</span><span·class="p">,</span><span·class="w">590 ··················································</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">num_calls</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="6662032374-3">}</span><span·class="p"·data-group-id="6662032374-1">]</span></code></pre></li><li><p>For·parallel·commands:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8414421630-1">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·321,·SHA:·106548bed3245511a0b750b19c6bf4dc78db8aaca2b62e610a1c9680f6091218·...·]0-2">}</span><span·class="p">,</span><span·class="w">
591 ·</span><span·class="p"·data-group-id="1819289700-3">{</span><span·class="s">&quot;Function·calls&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">cmnd_names</span><span·class="p">/</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·36,·SHA:·7668254988c4c5efd3008a278284ff63ea26d77c95f89180d14fef73a855e1b0·...·]0-3">}</span><span·class="p">,</span><span·class="w">591 ·</span><span·class="p"·data-group-id="8414421630-3">{</span><span·class="s">&quot;Function·calls&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">cmnd_names</span><span·class="p">/</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·36,·SHA:·b5b9f18f93ff80d7498114a1614d278c65f7724cb6deeec893cf128687902eb7·...·]0-3">}</span><span·class="p">,</span><span·class="w">
592 ·</span><span·class="p"·data-group-id="1819289700-4">{</span><span·class="s">&quot;Length·of·command·sequences&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">print_frequency_ranges</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">592 ·</span><span·class="p"·data-group-id="8414421630-4">{</span><span·class="s">&quot;Length·of·command·sequences&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">print_frequency_ranges</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
593 ··················································</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">num_calls</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="1819289700-4">}</span><span·class="p"·data-group-id="1819289700-1">]</span></code></pre></li></ul>593 ··················································</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">num_calls</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="8414421630-4">}</span><span·class="p"·data-group-id="8414421630-1">]</span></code></pre></li></ul>
594 ··</section>594 ··</section>
595 </section>595 </section>
596 <section·class="detail"·id="quickcheck/2">596 <section·class="detail"·id="quickcheck/2">
  
597 ··<div·class="detail-header">597 ··<div·class="detail-header">
598 ····<a·href="#quickcheck/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">598 ····<a·href="#quickcheck/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
599 ······<i·class="ri-link-m"·aria-hidden="true"></i>599 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 650, 15 lines modifiedOffset 650, 15 lines modified
650 ······<p·class="built-using">650 ······<p·class="built-using">
651 ········Built·using651 ········Built·using
652 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the652 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
653 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>653 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
654 ······</p>654 ······</p>
655 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>655 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
656 ····</footer>656 ····</footer>
657 ··</div>657 ··</div>
658 </main>658 </main>
659 </div>659 </div>
660 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>660 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
661 <script>661 <script>
662 ··document.addEventListener("DOMContentLoaded",·function·()·{662 ··document.addEventListener("DOMContentLoaded",·function·()·{
701 B
html2text {}
Max HTML report size reached
23.1 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_property_test_chapter.html
    
Offset 143, 59 lines modifiedOffset 143, 59 lines modified
143 <p>The·<a·href="ct_property_test.html#">ct_property_test</a>·module·does·the·following:</p><ul><li>Compiles·the·files·with·property·tests·in·the·subdirectory·<code·class="inline">property_test</code></li><li>Tests·properties·in·those·files·using·the·first·found·Property·Testing·Tool.</li><li>Saves·the·results·-·that·is·the·printouts·-·in·the·usual·Common·Test·Log</li></ul><h2·id="introductory-example"·class="section-heading">143 <p>The·<a·href="ct_property_test.html#">ct_property_test</a>·module·does·the·following:</p><ul><li>Compiles·the·files·with·property·tests·in·the·subdirectory·<code·class="inline">property_test</code></li><li>Tests·properties·in·those·files·using·the·first·found·Property·Testing·Tool.</li><li>Saves·the·results·-·that·is·the·printouts·-·in·the·usual·Common·Test·Log</li></ul><h2·id="introductory-example"·class="section-heading">
144 ··<a·href="#introductory-example"·class="hover-link">144 ··<a·href="#introductory-example"·class="hover-link">
145 ····<i·class="ri-link-m"·aria-hidden="true"></i>145 ····<i·class="ri-link-m"·aria-hidden="true"></i>
146 ··</a>146 ··</a>
147 ··<span·class="text">Introductory·Example</span>147 ··<span·class="text">Introductory·Example</span>
148 </h2>148 </h2>
149 <p>Assume·that·we·want·to·test·the·lists:sort/1·function.</p><p>We·need·a·property·to·test·the·function.·In·normal·way,·we·create149 <p>Assume·that·we·want·to·test·the·lists:sort/1·function.</p><p>We·need·a·property·to·test·the·function.·In·normal·way,·we·create
150 <code·class="inline">property_test/ct_prop.erl</code>·module·in·the·<code·class="inline">test</code>·directory·in·our·application:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="5592030575-1">(</span><span·class="ss">ct_prop</span><span·class="p"·data-group-id="5592030575-1">)</span><span·class="p">.</span><span·class="w">150 <code·class="inline">property_test/ct_prop.erl</code>·module·in·the·<code·class="inline">test</code>·directory·in·our·application:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1996386818-1">(</span><span·class="ss">ct_prop</span><span·class="p"·data-group-id="1996386818-1">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5592030575-2">(</span><span·class="p"·data-group-id="5592030575-3">[</span><span·class="ss">prop_sort</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="5592030575-3">]</span><span·class="p"·data-group-id="5592030575-2">)</span><span·class="p">.</span><span·class="w">151 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1996386818-2">(</span><span·class="p"·data-group-id="1996386818-3">[</span><span·class="ss">prop_sort</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1996386818-3">]</span><span·class="p"·data-group-id="1996386818-2">)</span><span·class="p">.</span><span·class="w">
  
152 </span><span·class="c1">%%%·This·will·include·the·.hrl·file·for·the·installed·testing·tool:</span><span·class="w">152 </span><span·class="c1">%%%·This·will·include·the·.hrl·file·for·the·installed·testing·tool:</span><span·class="w">
153 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="5592030575-4">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="5592030575-4">)</span><span·class="p">.</span><span·class="w">153 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="1996386818-4">(</span><span·class="s">&quot;common_test/include/ct_property_test.hrl&quot;</span><span·class="p"·data-group-id="1996386818-4">)</span><span·class="p">.</span><span·class="w">
  
154 </span><span·class="c1">%%%·The·property·we·want·to·check:</span><span·class="w">154 </span><span·class="c1">%%%·The·property·we·want·to·check:</span><span·class="w">
155 </span><span·class="c1">%%%···For·all·possibly·unsorted·lists,</span><span·class="w">155 </span><span·class="c1">%%%···For·all·possibly·unsorted·lists,</span><span·class="w">
156 </span><span·class="c1">%%%···the·result·of·lists:sort/1·is·sorted.</span><span·class="w">156 </span><span·class="c1">%%%···the·result·of·lists:sort/1·is·sorted.</span><span·class="w">
157 </span><span·class="nf">prop_sort</span><span·class="p"·data-group-id="5592030575-5">(</span><span·class="p"·data-group-id="5592030575-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 </span><span·class="nf">prop_sort</span><span·class="p"·data-group-id="1996386818-5">(</span><span·class="p"·data-group-id="1996386818-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ····</span><span·class="o">?</span><span·class="n">FORALL</span><span·class="p"·data-group-id="5592030575-6">(</span><span·class="n">UnSorted</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list</span><span·class="p"·data-group-id="5592030575-7">(</span><span·class="p"·data-group-id="5592030575-7">)</span><span·class="p">,</span><span·class="w">158 ····</span><span·class="o">?</span><span·class="n">FORALL</span><span·class="p"·data-group-id="1996386818-6">(</span><span·class="n">UnSorted</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list</span><span·class="p"·data-group-id="1996386818-7">(</span><span·class="p"·data-group-id="1996386818-7">)</span><span·class="p">,</span><span·class="w">
159 ············</span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="5592030575-8">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">sort</span><span·class="p"·data-group-id="5592030575-9">(</span><span·class="n">UnSorted</span><span·class="p"·data-group-id="5592030575-9">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·5f48991963ce418b508ecc4b1d243776ea116f42cccf29f87d328f1de8f031c7·...·]-8">)</span><span·class="w">159 ············</span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1996386818-8">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">sort</span><span·class="p"·data-group-id="1996386818-9">(</span><span·class="n">UnSorted</span><span·class="p"·data-group-id="1996386818-9">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·97131616a24e0eb0c869fde62439d794a1a006268dd4b3424a213c17984252fd·...·]-8">)</span><span·class="w">
160 ···········</span><span·class="p"·data-group-id="5592030575-6">)</span><span·class="p">.</span><span·class="w">160 ···········</span><span·class="p"·data-group-id="1996386818-6">)</span><span·class="p">.</span><span·class="w">
  
161 </span><span·class="c1">%%%·Function·to·check·that·a·list·is·sorted:</span><span·class="w">161 </span><span·class="c1">%%%·Function·to·check·that·a·list·is·sorted:</span><span·class="w">
162 </span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="5592030575-10">(</span><span·class="p"·data-group-id="5592030575-11">[</span><span·class="p"·data-group-id="5592030575-11">]</span><span·class="p"·data-group-id="5592030575-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">162 </span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1996386818-10">(</span><span·class="p"·data-group-id="1996386818-11">[</span><span·class="p"·data-group-id="1996386818-11">]</span><span·class="p"·data-group-id="1996386818-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
163 ····</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">163 ····</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">
164 </span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="5592030575-12">(</span><span·class="p"·data-group-id="5592030575-13">[</span><span·class="p">_</span><span·class="p"·data-group-id="5592030575-13">]</span><span·class="p"·data-group-id="5592030575-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">164 </span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1996386818-12">(</span><span·class="p"·data-group-id="1996386818-13">[</span><span·class="p">_</span><span·class="p"·data-group-id="1996386818-13">]</span><span·class="p"·data-group-id="1996386818-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
165 ····</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">165 ····</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">
166 </span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="5592030575-14">(</span><span·class="p"·data-group-id="5592030575-15">[</span><span·class="n">H1</span><span·class="p">,</span><span·class="n">H2</span><span·class="p">|</span><span·class="n">SortedTail</span><span·class="p"·data-group-id="5592030575-15">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·0fef00a5af945a38851567aa6a4e7b7b438cbe247e62a71d2fe83cc9c6b3ea74·...·]-14">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">H1</span><span·class="w">·</span><span·class="o">=&lt;</span><span·class="w">·</span><span·class="n">H2</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">166 </span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1996386818-14">(</span><span·class="p"·data-group-id="1996386818-15">[</span><span·class="n">H1</span><span·class="p">,</span><span·class="n">H2</span><span·class="p">|</span><span·class="n">SortedTail</span><span·class="p"·data-group-id="1996386818-15">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·b7606d4630684f881c58d6f61307a1a82d793e6f2749a561adeceb4b6c2b8eac·...·]-14">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">H1</span><span·class="w">·</span><span·class="o">=&lt;</span><span·class="w">·</span><span·class="n">H2</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
167 ····</span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="5592030575-16">(</span><span·class="p"·data-group-id="5592030575-17">[</span><span·class="n">H2</span><span·class="p">|</span><span·class="n">SortedTail</span><span·class="p"·data-group-id="5592030575-17">]</span><span·class="p"·data-group-id="5592030575-16">)</span><span·class="p">;</span><span·class="w">167 ····</span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1996386818-16">(</span><span·class="p"·data-group-id="1996386818-17">[</span><span·class="n">H2</span><span·class="p">|</span><span·class="n">SortedTail</span><span·class="p"·data-group-id="1996386818-17">]</span><span·class="p"·data-group-id="1996386818-16">)</span><span·class="p">;</span><span·class="w">
168 </span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="5592030575-18">(</span><span·class="p">_</span><span·class="p"·data-group-id="5592030575-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">168 </span><span·class="nf">is_sorted</span><span·class="p"·data-group-id="1996386818-18">(</span><span·class="p">_</span><span·class="p"·data-group-id="1996386818-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
169 ····</span><span·class="ss">false</span><span·class="p">.</span></code></pre><p>We·also·need·a·CommonTest·test·suite:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4350951829-1">(</span><span·class="ss">ct_property_test_SUITE</span><span·class="p"·data-group-id="4350951829-1">)</span><span·class="p">.</span><span·class="w">169 ····</span><span·class="ss">false</span><span·class="p">.</span></code></pre><p>We·also·need·a·CommonTest·test·suite:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7174451973-1">(</span><span·class="ss">ct_property_test_SUITE</span><span·class="p"·data-group-id="7174451973-1">)</span><span·class="p">.</span><span·class="w">
170 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="4350951829-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="4350951829-2">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·Only·in·tests!</span><span·class="w">170 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="7174451973-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="7174451973-2">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·Only·in·tests!</span><span·class="w">
171 </span><span·class="w">171 </span><span·class="w">
172 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="4350951829-3">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="4350951829-3">)</span><span·class="p">.</span><span·class="w">172 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7174451973-3">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="7174451973-3">)</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">all</span><span·class="p"·data-group-id="4350951829-4">(</span><span·class="p"·data-group-id="4350951829-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4350951829-5">[</span><span·class="ss">prop_sort</span><span·class="w">173 </span><span·class="nf">all</span><span·class="p"·data-group-id="7174451973-4">(</span><span·class="p"·data-group-id="7174451973-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7174451973-5">[</span><span·class="ss">prop_sort</span><span·class="w">
174 ·········</span><span·class="p"·data-group-id="4350951829-5">]</span><span·class="p">.</span><span·class="w">174 ·········</span><span·class="p"·data-group-id="7174451973-5">]</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="c1">%%%·First·prepare·Config·and·compile·the·property·tests·for·the·found·tool:</span><span·class="w">175 </span><span·class="c1">%%%·First·prepare·Config·and·compile·the·property·tests·for·the·found·tool:</span><span·class="w">
176 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="4350951829-6">(</span><span·class="n">Config</span><span·class="p"·data-group-id="4350951829-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="7174451973-6">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7174451973-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ····</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="4350951829-7">(</span><span·class="n">Config</span><span·class="p"·data-group-id="4350951829-7">)</span><span·class="p">.</span><span·class="w">177 ····</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="7174451973-7">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7174451973-7">)</span><span·class="p">.</span><span·class="w">
  
178 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="4350951829-8">(</span><span·class="n">Config</span><span·class="p"·data-group-id="4350951829-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="7174451973-8">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7174451973-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ····</span><span·class="n">Config</span><span·class="p">.</span><span·class="w">179 ····</span><span·class="n">Config</span><span·class="p">.</span><span·class="w">
  
180 </span><span·class="c1">%%%================================================================</span><span·class="w">180 </span><span·class="c1">%%%================================================================</span><span·class="w">
181 </span><span·class="c1">%%%·Test·suites</span><span·class="w">181 </span><span·class="c1">%%%·Test·suites</span><span·class="w">
182 </span><span·class="c1">%%%</span><span·class="w">182 </span><span·class="c1">%%%</span><span·class="w">
183 </span><span·class="nf">prop_sort</span><span·class="p"·data-group-id="4350951829-9">(</span><span·class="n">Config</span><span·class="p"·data-group-id="4350951829-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">183 </span><span·class="nf">prop_sort</span><span·class="p"·data-group-id="7174451973-9">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7174451973-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
184 ····</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">quickcheck</span><span·class="p"·data-group-id="4350951829-10">(</span><span·class="w">184 ····</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">quickcheck</span><span·class="p"·data-group-id="7174451973-10">(</span><span·class="w">
185 ······</span><span·class="nc">ct_prop</span><span·class="p">:</span><span·class="nf">prop_sort</span><span·class="p"·data-group-id="4350951829-11">(</span><span·class="p"·data-group-id="4350951829-11">)</span><span·class="p">,</span><span·class="w">185 ······</span><span·class="nc">ct_prop</span><span·class="p">:</span><span·class="nf">prop_sort</span><span·class="p"·data-group-id="7174451973-11">(</span><span·class="p"·data-group-id="7174451973-11">)</span><span·class="p">,</span><span·class="w">
186 ······</span><span·class="n">Config</span><span·class="w">186 ······</span><span·class="n">Config</span><span·class="w">
187 ·····</span><span·class="p"·data-group-id="4350951829-10">)</span><span·class="p">.</span></code></pre><p>We·run·it·as·usual,·for·example·with·ct_run·in·the·OS·shell:</p><pre><code·class="text">..../test$·ct_run·-suite·ct_property_test_SUITE187 ·····</span><span·class="p"·data-group-id="7174451973-10">)</span><span·class="p">.</span></code></pre><p>We·run·it·as·usual,·for·example·with·ct_run·in·the·OS·shell:</p><pre><code·class="text">..../test$·ct_run·-suite·ct_property_test_SUITE
188 .....188 .....
189 Common·Test:·Running·make·in·test·directories...189 Common·Test:·Running·make·in·test·directories...
  
190 TEST·INFO:·1·test(s),·1·case(s)·in·1·suite(s)190 TEST·INFO:·1·test(s),·1·case(s)·in·1·suite(s)
  
191 Testing·lib.common_test.ct_property_test_SUITE:·Starting·test,·1·test·cases191 Testing·lib.common_test.ct_property_test_SUITE:·Starting·test,·1·test·cases
  
Offset 217, 21 lines modifiedOffset 217, 21 lines modified
217 ....</code></pre><p><a·href=""·id="stateful1"></a></p><h2·id="a-stateful-testing-example"·class="section-heading">217 ....</code></pre><p><a·href=""·id="stateful1"></a></p><h2·id="a-stateful-testing-example"·class="section-heading">
218 ··<a·href="#a-stateful-testing-example"·class="hover-link">218 ··<a·href="#a-stateful-testing-example"·class="hover-link">
219 ····<i·class="ri-link-m"·aria-hidden="true"></i>219 ····<i·class="ri-link-m"·aria-hidden="true"></i>
220 ··</a>220 ··</a>
221 ··<span·class="text">A·stateful·testing·example</span>221 ··<span·class="text">A·stateful·testing·example</span>
222 </h2>222 </h2>
223 <p>Assume·a·test·that·generates·some·parallel·stateful·commands,·and·runs·300223 <p>Assume·a·test·that·generates·some·parallel·stateful·commands,·and·runs·300
224 tests:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">prop_parallel</span><span·class="p"·data-group-id="8215549992-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="8215549992-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 tests:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">prop_parallel</span><span·class="p"·data-group-id="9043130484-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9043130484-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 ····</span><span·class="nf">numtests</span><span·class="p"·data-group-id="8215549992-2">(</span><span·class="mi">300</span><span·class="p">,</span><span·class="w">225 ····</span><span·class="nf">numtests</span><span·class="p"·data-group-id="9043130484-2">(</span><span·class="mi">300</span><span·class="p">,</span><span·class="w">
226 ·············</span><span·class="o">?</span><span·class="n">FORALL</span><span·class="p"·data-group-id="8215549992-3">(</span><span·class="n">Cmds</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">parallel_commands</span><span·class="p"·data-group-id="8215549992-4">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·634c69418d2d7e65e814b3cc36ff13c94a4556aec3225f621db4a1155fd24c3e·...·]-4">)</span><span·class="p">,</span><span·class="w">226 ·············</span><span·class="o">?</span><span·class="n">FORALL</span><span·class="p"·data-group-id="9043130484-3">(</span><span·class="n">Cmds</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">parallel_commands</span><span·class="p"·data-group-id="9043130484-4">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·34f75750ecc6b0d06f30e57148292bef17c3afb90be0406bd51629dbd7a26ba8·...·]-4">)</span><span·class="p">,</span><span·class="w">
227 ·····················</span><span·class="k">begin</span><span·class="w">227 ·····················</span><span·class="k">begin</span><span·class="w">
228 ·························</span><span·class="n">RunResult</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">run_parallel_commands</span><span·class="p"·data-group-id="8215549992-5">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cmds</span><span·class="p"·data-group-id="8215549992-5">)</span><span·class="p">,</span><span·class="w">228 ·························</span><span·class="n">RunResult</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">run_parallel_commands</span><span·class="p"·data-group-id="9043130484-5">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cmds</span><span·class="p"·data-group-id="9043130484-5">)</span><span·class="p">,</span><span·class="w">
229 ·························</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">present_result</span><span·class="p"·data-group-id="8215549992-6">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cmds</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RunResult</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·92,·SHA:·6b6e259c4eae6e3e0d28f31cf93d8547c70daf794b15c596ecd874938ca6bc9d·...·]-6">)</span><span·class="w">229 ·························</span><span·class="nc">ct_property_test</span><span·class="p">:</span><span·class="nf">present_result</span><span·class="p"·data-group-id="9043130484-6">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cmds</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RunResult</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·92,·SHA:·9eabc369f0cbce24bfdd5fccd6c3d1a1ba37fc22255ecfa5e51d778de1caa30b·...·]-6">)</span><span·class="w">
230 ·····················</span><span·class="k">end</span><span·class="p"·data-group-id="8215549992-3">)</span><span·class="p"·data-group-id="8215549992-2">)</span><span·class="p">.</span></code></pre><p>The·<a·href="ct_property_test.html#present_result/4"><code·class="inline">ct_property_test:present_result/4</code></a>·is·a·help·function·for·printing·some230 ·····················</span><span·class="k">end</span><span·class="p"·data-group-id="9043130484-3">)</span><span·class="p"·data-group-id="9043130484-2">)</span><span·class="p">.</span></code></pre><p>The·<a·href="ct_property_test.html#present_result/4"><code·class="inline">ct_property_test:present_result/4</code></a>·is·a·help·function·for·printing·some
231 statistics·in·the·CommonTest·log·file.</p><p>Our·example·test·could·for·example·be·a·simple·test·of·an·ftp·server,·where·we231 statistics·in·the·CommonTest·log·file.</p><p>Our·example·test·could·for·example·be·a·simple·test·of·an·ftp·server,·where·we
232 perform·get,·put·and·delete·requests,·some·of·them·in·parallel.·Per·default,·the232 perform·get,·put·and·delete·requests,·some·of·them·in·parallel.·Per·default,·the
233 result·has·three·sections:</p><pre><code·class="text">***·User·2019-12-11·13:28:17.504·***233 result·has·three·sections:</p><pre><code·class="text">***·User·2019-12-11·13:28:17.504·***
  
234 Distribution·sequential/parallel234 Distribution·sequential/parallel
  
235 ·57.7%·sequential235 ·57.7%·sequential
Offset 326, 15 lines modifiedOffset 326, 15 lines modified
326 ······<p·class="built-using">326 ······<p·class="built-using">
327 ········Built·using327 ········Built·using
328 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the328 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
329 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>329 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
330 ······</p>330 ······</p>
331 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>331 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
332 ····</footer>332 ····</footer>
333 ··</div>333 ··</div>
334 </main>334 </main>
335 </div>335 </div>
336 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>336 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
337 <script>337 <script>
338 ··document.addEventListener("DOMContentLoaded",·function·()·{338 ··document.addEventListener("DOMContentLoaded",·function·()·{
751 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_rpc.html
    
Offset 569, 15 lines modifiedOffset 569, 15 lines modified
569 ······<p·class="built-using">569 ······<p·class="built-using">
570 ········Built·using570 ········Built·using
571 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the571 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
572 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>572 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
573 ······</p>573 ······</p>
574 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>574 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
575 ····</footer>575 ····</footer>
576 ··</div>576 ··</div>
577 </main>577 </main>
578 </div>578 </div>
579 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>579 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
580 <script>580 <script>
581 ··document.addEventListener("DOMContentLoaded",·function·()·{581 ··document.addEventListener("DOMContentLoaded",·function·()·{
684 B
html2text {}
Max HTML report size reached
6.06 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_run_cmd.html
    
Offset 247, 18 lines modifiedOffset 247, 18 lines modified
247 ··[-keep_logs·all·|·NLogs]</code></pre><h2·id="run-common-test-in-interactive-mode"·class="section-heading">247 ··[-keep_logs·all·|·NLogs]</code></pre><h2·id="run-common-test-in-interactive-mode"·class="section-heading">
248 ··<a·href="#run-common-test-in-interactive-mode"·class="hover-link">248 ··<a·href="#run-common-test-in-interactive-mode"·class="hover-link">
249 ····<i·class="ri-link-m"·aria-hidden="true"></i>249 ····<i·class="ri-link-m"·aria-hidden="true"></i>
250 ··</a>250 ··</a>
251 ··<span·class="text">Run·Common·Test·in·Interactive·Mode</span>251 ··<span·class="text">Run·Common·Test·in·Interactive·Mode</span>
252 </h2>252 </h2>
253 <pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="ss">ct_run</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">shell</span><span·class="w">253 <pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="ss">ct_run</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">shell</span><span·class="w">
254 ··</span><span·class="p"·data-group-id="9542620516-1">[</span><span·class="o">-</span><span·class="ss">config</span><span·class="w">·</span><span·class="n">ConfigFile1</span><span·class="w">·</span><span·class="n">ConfigFile2</span><span·class="w">·</span><span·class="p">.</span><span·class="p">[·...·truncated·by·diffoscope;·len:·131,·SHA:·58576e6889633e0285f66008edacc41fd9310b89763763a93dd4d2d27755306e·...·]-1">]</span><span·class="w">254 ··</span><span·class="p"·data-group-id="5383317331-1">[</span><span·class="o">-</span><span·class="ss">config</span><span·class="w">·</span><span·class="n">ConfigFile1</span><span·class="w">·</span><span·class="n">ConfigFile2</span><span·class="w">·</span><span·class="p">.</span><span·class="p">[·...·truncated·by·diffoscope;·len:·131,·SHA:·7f41eb0a2b2b1f29dcdc826c76201ee0eed58a0a49d1bf3db1e640add63f92af·...·]-1">]</span><span·class="w">
255 ··</span><span·class="p"·data-group-id="9542620516-2">[</span><span·class="o">-</span><span·class="ss">userconfig</span><span·class="w">·</span><span·class="n">CallbackModule1</span><span·class="w">·</span><span·class="n">ConfigString1</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="n">CallbackModule2</span><span·class="w">255 ··</span><span·class="p"·data-group-id="5383317331-2">[</span><span·class="o">-</span><span·class="ss">userconfig</span><span·class="w">·</span><span·class="n">CallbackModule1</span><span·class="w">·</span><span·class="n">ConfigString1</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="n">CallbackModule2</span><span·class="w">
256 ···</span><span·class="n">ConfigString2</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="n">CallbackModuleN</span><span·class="w">·</span><span·class="n">ConfigStringN</span><span·class="p"·data-group-id="9542620516-2">]</span><span·class="w">256 ···</span><span·class="n">ConfigString2</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="n">CallbackModuleN</span><span·class="w">·</span><span·class="n">ConfigStringN</span><span·class="p"·data-group-id="5383317331-2">]</span><span·class="w">
257 ··</span><span·class="p"·data-group-id="9542620516-3">[</span><span·class="o">-</span><span·class="ss">decrypt_key</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="9542620516-3">]</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·208,·SHA:·826a9741938780defa2831ebe0e74bdeb9a1f7af6f8994fc3d445653f5c61a67·...·]-4">]</span></code></pre><h2·id="start-a-common-test-master-node"·class="section-heading">257 ··</span><span·class="p"·data-group-id="5383317331-3">[</span><span·class="o">-</span><span·class="ss">decrypt_key</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="5383317331-3">]</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·208,·SHA:·65a6f068ede14e1f73da5421ff6ad9219045a9731709dc99ae21a22e4fd9f0dd·...·]-4">]</span></code></pre><h2·id="start-a-common-test-master-node"·class="section-heading">
258 ··<a·href="#start-a-common-test-master-node"·class="hover-link">258 ··<a·href="#start-a-common-test-master-node"·class="hover-link">
259 ····<i·class="ri-link-m"·aria-hidden="true"></i>259 ····<i·class="ri-link-m"·aria-hidden="true"></i>
260 ··</a>260 ··</a>
261 ··<span·class="text">Start·a·Common·Test·Master·Node</span>261 ··<span·class="text">Start·a·Common·Test·Master·Node</span>
262 </h2>262 </h2>
263 <pre><code·class="text">·ct_run·-ctmaster</code></pre><h2·id="see-also"·class="section-heading">263 <pre><code·class="text">·ct_run·-ctmaster</code></pre><h2·id="see-also"·class="section-heading">
264 ··<a·href="#see-also"·class="hover-link">264 ··<a·href="#see-also"·class="hover-link">
Offset 305, 15 lines modifiedOffset 305, 15 lines modified
305 ······<p·class="built-using">305 ······<p·class="built-using">
306 ········Built·using306 ········Built·using
307 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the307 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
308 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>308 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
309 ······</p>309 ······</p>
310 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>310 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
311 ····</footer>311 ····</footer>
312 ··</div>312 ··</div>
313 </main>313 </main>
314 </div>314 </div>
315 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>315 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
316 <script>316 <script>
317 ··document.addEventListener("DOMContentLoaded",·function·()·{317 ··document.addEventListener("DOMContentLoaded",·function·()·{
806 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_slave.html
    
Offset 560, 15 lines modifiedOffset 560, 15 lines modified
560 ······<p·class="built-using">560 ······<p·class="built-using">
561 ········Built·using561 ········Built·using
562 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the562 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
563 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>563 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
564 ······</p>564 ······</p>
565 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>565 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
566 ····</footer>566 ····</footer>
567 ··</div>567 ··</div>
568 </main>568 </main>
569 </div>569 </div>
570 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>570 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
571 <script>571 <script>
572 ··document.addEventListener("DOMContentLoaded",·function·()·{572 ··document.addEventListener("DOMContentLoaded",·function·()·{
651 B
html2text {}
Max HTML report size reached
11.1 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_snmp.html
    
Offset 146, 23 lines modifiedOffset 146, 23 lines modified
146 configuration·files·have·default·values·set·by·the·<code·class="inline">SNMP</code>·application.·These146 configuration·files·have·default·values·set·by·the·<code·class="inline">SNMP</code>·application.·These
147 values·can·be·overridden·by·suppling·a·list·of·valid·configuration·values·or·a147 values·can·be·overridden·by·suppling·a·list·of·valid·configuration·values·or·a
148 file·located·in·the·test·suites·data·directory,·which·can·produce·a·list·of148 file·located·in·the·test·suites·data·directory,·which·can·produce·a·list·of
149 valid·configuration·values·if·you·apply·function·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#consult/1"><code·class="inline">file:consult/1</code></a>·to·the·file.</p><ul><li><p><strong><code·class="inline">{agent_contexts,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_community,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_sysinfo,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_vacm,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_usm,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_notify_def,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_target_address_def,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-149 valid·configuration·values·if·you·apply·function·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#consult/1"><code·class="inline">file:consult/1</code></a>·to·the·file.</p><ul><li><p><strong><code·class="inline">{agent_contexts,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_community,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_sysinfo,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_vacm,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_usm,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_notify_def,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-·Optional.</p></li><li><p><strong><code·class="inline">{agent_target_address_def,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-
150 Optional.</p></li><li><p><strong><code·class="inline">{agent_target_param_def,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-150 Optional.</p></li><li><p><strong><code·class="inline">{agent_target_param_def,·[term()]·|·{data_dir_file,·rel_path()}}</code></strong>·-
151 Optional.</p></li></ul><p>Parameter·<code·class="inline">MgrAgentConfName</code>·in·the·functions·is·to·be·a·name·you·allocate·in151 Optional.</p></li></ul><p>Parameter·<code·class="inline">MgrAgentConfName</code>·in·the·functions·is·to·be·a·name·you·allocate·in
152 your·test·suite·using·a·<code·class="inline">require</code>·statement.·Example·(where152 your·test·suite·using·a·<code·class="inline">require</code>·statement.·Example·(where
153 <code·class="inline">MgrAgentConfName·=·snmp_mgr_agent</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="7521089646-1">(</span><span·class="p"·data-group-id="7521089646-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7521089646-2">[</span><span·class="p"·data-group-id="7521089646-3">{</span[·...·truncated·by·diffoscope;·len:·683,·SHA:·42d76e86824d903a8f0e0fc315ca4d3f6557bc48b388fa3c15ae7abb41398432·...·]-1">)</span><span·class="p">.</span></code></pre><p>Notice·that·USM·users·are·needed·for·SNMPv3·configuration·and·are·not·to·be153 <code·class="inline">MgrAgentConfName·=·snmp_mgr_agent</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="0743435963-1">(</span><span·class="p"·data-group-id="0743435963-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0743435963-2">[</span><span·class="p"·data-group-id="0743435963-3">{</span[·...·truncated·by·diffoscope;·len:·683,·SHA:·f8125a0a8ade478e05616e6b135d15ed9ca310b61d792d5c3cf556af783a70e7·...·]-1">)</span><span·class="p">.</span></code></pre><p>Notice·that·USM·users·are·needed·for·SNMPv3·configuration·and·are·not·to·be
154 confused·with·users.</p><p>SNMP·traps,·inform,·and·report·messages·are·handled·by·the·user·callback·module.154 confused·with·users.</p><p>SNMP·traps,·inform,·and·report·messages·are·handled·by·the·user·callback·module.
155 For·details,·see·the·<a·href="../../../../lib/snmp-5.16/doc/html/index.html"><code·class="inline">SNMP</code></a>·application.</p><p>It·is·recommended·to·use·the·<code·class="inline">.hrl</code>·files·created·by·the·Erlang/OTP·MIB·compiler155 For·details,·see·the·<a·href="../../../../lib/snmp-5.16/doc/html/index.html"><code·class="inline">SNMP</code></a>·application.</p><p>It·is·recommended·to·use·the·<code·class="inline">.hrl</code>·files·created·by·the·Erlang/OTP·MIB·compiler
156 to·define·the·Object·Identifiers·(OIDs).·For·example,·to·get·the·Erlang·node156 to·define·the·Object·Identifiers·(OIDs).·For·example,·to·get·the·Erlang·node
157 name·from·<code·class="inline">erlNodeTable</code>·in·the·OTP-MIB:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Oid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">erlNodeEntry</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="0488396311-1">[</span><span·class="o">?</span><span·class="ss">erlNodeName</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0488396311-1">]</span></code></pre><p>Furthermore,·values·can·be·set·for·<code·class="inline">SNMP</code>·application·configuration·parameters,157 name·from·<code·class="inline">erlNodeTable</code>·in·the·OTP-MIB:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Oid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">erlNodeEntry</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="7796340414-1">[</span><span·class="o">?</span><span·class="ss">erlNodeName</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7796340414-1">]</span></code></pre><p>Furthermore,·values·can·be·set·for·<code·class="inline">SNMP</code>·application·configuration·parameters,
158 <code·class="inline">config</code>,·<code·class="inline">server</code>,·<code·class="inline">net_if</code>,·and·so·on·(for·a·list·of·valid·parameters·and158 <code·class="inline">config</code>,·<code·class="inline">server</code>,·<code·class="inline">net_if</code>,·and·so·on·(for·a·list·of·valid·parameters·and
159 types,·see·the·<a·href="../../../../lib/snmp-5.16/doc/html/index.html"><code·class="inline">User's·Guide·for·the·SNMP·application</code></a>).159 types,·see·the·<a·href="../../../../lib/snmp-5.16/doc/html/index.html"><code·class="inline">User's·Guide·for·the·SNMP·application</code></a>).
160 This·is·done·by·defining·a·configuration·data·variable·on·the·following·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7082376152-1">{</span><span·class="ss">snmp_app</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7082376152-2">[</span><span·class="p"·data-group-id="7082376152-3">{</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7082376152-4">[</span><span·class="nf">snmp_app_manager_params</span><span·class="p"·data-group-id="7082376152-5">(</span><span·class="p"·data-group-id="7082376152-5">)</span><span·class="p"·data-group-id="7082376152-4">]</span><span·class="p"·data-group-id="7082376152-3">}</span><span·class="p">,</span><span·class="w"> 
161 ············</span><span·class="p"·data-group-id="7082376152-6">{</span><span·class="ss">agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7082376152-7">[</span><span·class="nf">snmp_app_agent_params</span><span·cla[·...·truncated·by·diffoscope;·len:·450,·SHA:·83137b248dc5c9e4293405fa34c6c446654c415a5b7442b070af02e9b6b0d882·...·]160 This·is·done·by·defining·a·configuration·data·variable·on·the·following·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0071468605-1">{</span><span·class="ss">snmp_app</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·543,·SHA:·e7e539cc40ea9950f4b44b3668f3b6be589d119f2ca5126d10fc3ae4e9a1a02e·...·]
 161 ············</span><span·class="p"·data-group-id="0071468605-6">{</span><span·class="ss">agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0071468605-7">[</span><span·class="nf">snmp_app_agent_params</span><span·class="p"·data-group-id="0071468605-8">(</span><span·class="p"·data-group-id="0071468605-8">)</span><span·class="p"·data-group-id="0071468605-7">]</span><span·class="p"·data-group-id="0071468605-6">}</span><span·class="p"·data-group-id="0071468605-2">]</span><span·class="p"·data-group-id="0071468605-1">}</span><span·class="p">.</span></code></pre><p>A·name·for·the·data·must·be·allocated·in·the·suite·using·<code·class="inline">require</code>·(see·the
162 example·above).·Pass·this·name·as·argument·<code·class="inline">SnmpAppConfName</code>·to162 example·above).·Pass·this·name·as·argument·<code·class="inline">SnmpAppConfName</code>·to
163 <a·href="#start/3"><code·class="inline">ct_snmp:start/3</code></a>.·<code·class="inline">ct_snmp</code>·specifies·default·values·for·some163 <a·href="#start/3"><code·class="inline">ct_snmp:start/3</code></a>.·<code·class="inline">ct_snmp</code>·specifies·default·values·for·some
164 <code·class="inline">SNMP</code>·application·configuration·parameters·(such·as·<code·class="inline">{verbosity,trace}</code>·for164 <code·class="inline">SNMP</code>·application·configuration·parameters·(such·as·<code·class="inline">{verbosity,trace}</code>·for
165 parameter·<code·class="inline">config</code>).·This·set·of·defaults·is·merged·with·the·parameters165 parameter·<code·class="inline">config</code>).·This·set·of·defaults·is·merged·with·the·parameters
166 specified·by·the·user.·The·user·values·override·<code·class="inline">ct_snmp</code>·defaults.</p>166 specified·by·the·user.·The·user·values·override·<code·class="inline">ct_snmp</code>·defaults.</p>
167 ····</section>167 ····</section>
  
Offset 1926, 15 lines modifiedOffset 1926, 15 lines modified
1926 ······<p·class="built-using">1926 ······<p·class="built-using">
1927 ········Built·using1927 ········Built·using
1928 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1928 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1929 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1929 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1930 ······</p>1930 ······</p>
1931 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1931 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1932 ····</footer>1932 ····</footer>
1933 ··</div>1933 ··</div>
1934 </main>1934 </main>
1935 </div>1935 </div>
1936 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1936 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1937 <script>1937 <script>
1938 ··document.addEventListener("DOMContentLoaded",·function·()·{1938 ··document.addEventListener("DOMContentLoaded",·function·()·{
615 B
html2text {}
Max HTML report size reached
7.13 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_ssh.html
    
Offset 129, 22 lines modifiedOffset 129, 22 lines modified
  
129 ····<section·id="moduledoc">129 ····<section·id="moduledoc">
130 <p>SSH/SFTP·client·module.</p><p>This·module·uses·application·<code·class="inline">SSH</code>,·which·provides·detailed·information·about,130 <p>SSH/SFTP·client·module.</p><p>This·module·uses·application·<code·class="inline">SSH</code>,·which·provides·detailed·information·about,
131 for·example,·functions,·types,·and·options.</p><p>Argument·<code·class="inline">Server</code>·in·the·SFTP·functions·is·only·to·be·used·for·SFTP·sessions131 for·example,·functions,·types,·and·options.</p><p>Argument·<code·class="inline">Server</code>·in·the·SFTP·functions·is·only·to·be·used·for·SFTP·sessions
132 that·have·been·started·on·existing·SSH·connections·(that·is,·when·the·original132 that·have·been·started·on·existing·SSH·connections·(that·is,·when·the·original
133 connection·type·is·<code·class="inline">ssh</code>).·Whenever·the·connection·type·is·<code·class="inline">sftp</code>,·use·the·SSH133 connection·type·is·<code·class="inline">ssh</code>).·Whenever·the·connection·type·is·<code·class="inline">sftp</code>,·use·the·SSH
134 connection·reference·only.</p><p>The·following·options·are·valid·for·specifying·an·SSH/SFTP·connection·(that·is,134 connection·reference·only.</p><p>The·following·options·are·valid·for·specifying·an·SSH/SFTP·connection·(that·is,
135 can·be·used·as·configuration·elements):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3290536399-1">[</span><span·class="p"·data-group-id="3290536399-2">{</span><span·class="n">ConnType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p"·data-group-id="3290536399-2">}</span><span·class="p">,</span><span·class="w">135 can·be·used·as·configuration·elements):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9192239271-1">[</span><span·class="p"·data-group-id="9192239271-2">{</span><span·class="n">ConnType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p"·data-group-id="9192239271-2">}</span><span·class="p">,</span><span·class="w">
136 ·</span><span·class="p"·data-group-id="3290536399-3">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="3290536399-3">}</span><span·class="p">,</span><span·class="w">136 ·</span><span·class="p"·data-group-id="9192239271-3">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="9192239271-3">}</span><span·class="p">,</span><span·class="w">
137 ·</span><span·class="p"·data-group-id="3290536399-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserName</span><span·class="p"·data-group-id="3290536399-4">}</span><span·class="w">137 ·</span><span·class="p"·data-group-id="9192239271-4">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserName</span><span·class="p"·data-group-id="9192239271-4">}</span><span·class="w">
138 ·</span><span·class="p"·data-group-id="3290536399-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pwd</span><span·class="p"·data-group-id="3290536399-5">}</span><span·class="w">138 ·</span><span·class="p"·data-group-id="9192239271-5">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pwd</span><span·class="p"·data-group-id="9192239271-5">}</span><span·class="w">
139 ·</span><span·class="p"·data-group-id="3290536399-6">{</span><span·class="ss">user_dir</span><span·class="p">,</span><span·class="w">·</span><span·class="n">String</span><span·class="p"·data-group-id="3290536399-6">}</span><span·class="w">139 ·</span><span·class="p"·data-group-id="9192239271-6">{</span><span·class="ss">user_dir</span><span·class="p">,</span><span·class="w">·</span><span·class="n">String</span><span·class="p"·data-group-id="9192239271-6">}</span><span·class="w">
140 ·</span><span·class="p"·data-group-id="3290536399-7">{</span><span·class="ss">public_key_alg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PubKeyAlg</span><span·class="p"·data-group-id="3290536399-7">}</span><span·class="w">140 ·</span><span·class="p"·data-group-id="9192239271-7">{</span><span·class="ss">public_key_alg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PubKeyAlg</span><span·class="p"·data-group-id="9192239271-7">}</span><span·class="w">
141 ·</span><span·class="p"·data-group-id="3290536399-8">{</span><span·class="ss">connect_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Timeout</span><span·class="p"·data-group-id="3290536399-8">}</span><span·class="w">141 ·</span><span·class="p"·data-group-id="9192239271-8">{</span><span·class="ss">connect_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Timeout</span><span·class="p"·data-group-id="9192239271-8">}</span><span·class="w">
142 ·</span><span·class="p"·data-group-id="3290536399-9">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="n">KeyCallbackMod</span><span·class="p"·data-group-id="3290536399-9">}</span><span·class="p"·data-group-id="3290536399-1">]</span></code></pre><p><code·class="inline">ConnType·=·ssh·|·sftp</code>.</p><p>For·other·types,·see·<a·href="../../../../lib/ssh-5.2.1/doc/html/ssh.html"><code·class="inline">ssh</code></a>.</p><p>All·time-out·parameters·in·<code·class="inline">ct_ssh</code>·functions·are·values·in·milliseconds.</p>142 ·</span><span·class="p"·data-group-id="9192239271-9">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="n">KeyCallbackMod</span><span·class="p"·data-group-id="9192239271-9">}</span><span·class="p"·data-group-id="9192239271-1">]</span></code></pre><p><code·class="inline">ConnType·=·ssh·|·sftp</code>.</p><p>For·other·types,·see·<a·href="../../../../lib/ssh-5.2.1/doc/html/ssh.html"><code·class="inline">ssh</code></a>.</p><p>All·time-out·parameters·in·<code·class="inline">ct_ssh</code>·functions·are·values·in·milliseconds.</p>
143 ····</section>143 ····</section>
  
144 </div>144 </div>
  
145 ··<section·id="summary"·class="details-list">145 ··<section·id="summary"·class="details-list">
146 ····<h1·class="section-heading">146 ····<h1·class="section-heading">
147 ······<a·class="hover-link"·href="#summary">147 ······<a·class="hover-link"·href="#summary">
Offset 3868, 15 lines modifiedOffset 3868, 15 lines modified
3868 ······<p·class="built-using">3868 ······<p·class="built-using">
3869 ········Built·using3869 ········Built·using
3870 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3870 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3871 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3871 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3872 ······</p>3872 ······</p>
3873 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3873 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3874 ····</footer>3874 ····</footer>
3875 ··</div>3875 ··</div>
3876 </main>3876 </main>
3877 </div>3877 </div>
3878 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3878 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3879 <script>3879 <script>
3880 ··document.addEventListener("DOMContentLoaded",·function·()·{3880 ··document.addEventListener("DOMContentLoaded",·function·()·{
716 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_suite.html
    
Offset 1663, 15 lines modifiedOffset 1663, 15 lines modified
1663 ······<p·class="built-using">1663 ······<p·class="built-using">
1664 ········Built·using1664 ········Built·using
1665 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1665 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1666 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1666 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1667 ······</p>1667 ······</p>
1668 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1668 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1669 ····</footer>1669 ····</footer>
1670 ··</div>1670 ··</div>
1671 </main>1671 </main>
1672 </div>1672 </div>
1673 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1673 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1674 <script>1674 <script>
1675 ··document.addEventListener("DOMContentLoaded",·function·()·{1675 ··document.addEventListener("DOMContentLoaded",·function·()·{
748 B
html2text {}
Max HTML report size reached
33.5 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_telnet.html
    
Offset 132, 59 lines modifiedOffset 132, 59 lines modified
132 matching·on·the·result.·For·information·about·how·to·use·<code·class="inline">ct_telnet</code>·and132 matching·on·the·result.·For·information·about·how·to·use·<code·class="inline">ct_telnet</code>·and
133 configure·connections,·specifically·for·UNIX·hosts,·see·the·<a·href="unix_telnet.html"><code·class="inline">unix_telnet</code></a>133 configure·connections,·specifically·for·UNIX·hosts,·see·the·<a·href="unix_telnet.html"><code·class="inline">unix_telnet</code></a>
134 manual·page.</p><p>Default·values·defined·in·<code·class="inline">ct_telnet</code>:</p><p><a·href=""·id="Default_values"></a></p><ul><li>Connection·timeout·(time·to·wait·for·connection)·=·10·seconds</li><li>Command·timeout·(time·to·wait·for·a·command·to·return)·=·10·seconds</li><li>Max·number·of·reconnection·attempts·=·3</li><li>Reconnection·interval·(time·to·wait·in·between·reconnection·attempts)·=·5134 manual·page.</p><p>Default·values·defined·in·<code·class="inline">ct_telnet</code>:</p><p><a·href=""·id="Default_values"></a></p><ul><li>Connection·timeout·(time·to·wait·for·connection)·=·10·seconds</li><li>Command·timeout·(time·to·wait·for·a·command·to·return)·=·10·seconds</li><li>Max·number·of·reconnection·attempts·=·3</li><li>Reconnection·interval·(time·to·wait·in·between·reconnection·attempts)·=·5
135 seconds</li><li>Keep·alive·(sends·NOP·to·the·server·every·8·sec·if·connection·is·idle)·=135 seconds</li><li>Keep·alive·(sends·NOP·to·the·server·every·8·sec·if·connection·is·idle)·=
136 <code·class="inline">true</code></li><li>Polling·limit·(max·number·of·times·to·poll·to·get·a·remaining·string136 <code·class="inline">true</code></li><li>Polling·limit·(max·number·of·times·to·poll·to·get·a·remaining·string
137 terminated)·=·0</li><li>Polling·interval·(sleep·time·between·polls)·=·1·second</li><li>The·TCP_NODELAY·option·for·the·telnet·socket·is·disabled·(set·to·<code·class="inline">false</code>)·per137 terminated)·=·0</li><li>Polling·interval·(sleep·time·between·polls)·=·1·second</li><li>The·TCP_NODELAY·option·for·the·telnet·socket·is·disabled·(set·to·<code·class="inline">false</code>)·per
138 default</li></ul><p>These·parameters·can·be·modified·by·the·user·with·the·following·configuration138 default</li></ul><p>These·parameters·can·be·modified·by·the·user·with·the·following·configuration
139 term:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1902200098-1">{</span><span·class="ss">telnet_settings</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1902200098-2">[</span><span·class="p"·data-group-id="1902200098-3">{</span><span·class="ss">connect_timeout</span><s[·...·truncated·by·diffoscope;·len:·94,·SHA:·dbb34741d460939cc7ff81509d73718955ac97d58017eddcf5fe60a0f1d8a13a·...·]-3">}</span><span·class="p">,</span><span·class="w">139 term:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2391471382-1">{</span><span·class="ss">telnet_settings</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2391471382-2">[</span><span·class="p"·data-group-id="2391471382-3">{</span><span·class="ss">connect_timeout</span><s[·...·truncated·by·diffoscope;·len:·94,·SHA:·a2f8efc5137759f36a94fd4a29bf463d7815a47baff377da9bad5bae19183e81·...·]-3">}</span><span·class="p">,</span><span·class="w">
140 ···················</span><span·class="p"·data-group-id="1902200098-4">{</span><span·class="ss">command_timeout</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="1902200098-4">}</span><span·class="p">,</span><span·class="w">140 ···················</span><span·class="p"·data-group-id="2391471382-4">{</span><span·class="ss">command_timeout</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="2391471382-4">}</span><span·class="p">,</span><span·class="w">
141 ···················</span><span·class="p"·data-group-id="1902200098-5">{</span><span·class="ss">reconnection_attempts</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="1902200098-5">}</span><span·class="p">,</span><span·class="w">141 ···················</span><span·class="p"·data-group-id="2391471382-5">{</span><span·class="ss">reconnection_attempts</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="2391471382-5">}</span><span·class="p">,</span><span·class="w">
142 ···················</span><span·class="p"·data-group-id="1902200098-6">{</span><span·class="ss">reconnection_interval</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="1902200098-6">}</span><span·class="p">,</span><span·class="w">142 ···················</span><span·class="p"·data-group-id="2391471382-6">{</span><span·class="ss">reconnection_interval</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="2391471382-6">}</span><span·class="p">,</span><span·class="w">
143 ···················</span><span·class="p"·data-group-id="1902200098-7">{</span><span·class="ss">keep_alive</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="1902200098-7">}</span><span·class="p">,</span><span·class="w">143 ···················</span><span·class="p"·data-group-id="2391471382-7">{</span><span·class="ss">keep_alive</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="2391471382-7">}</span><span·class="p">,</span><span·class="w">
144 ···················</span><span·class="p"·data-group-id="1902200098-8">{</span><span·class="ss">poll_limit</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="1902200098-8">}</span><span·class="p">,</span><span·class="w">144 ···················</span><span·class="p"·data-group-id="2391471382-8">{</span><span·class="ss">poll_limit</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id="2391471382-8">}</span><span·class="p">,</span><span·class="w">
145 ···················</span><span·class="p"·data-group-id="1902200098-9">{</span><span·class="ss">poll_interval</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="1902200098-9">}</span><span·class="p">,</span><span·class="w">145 ···················</span><span·class="p"·data-group-id="2391471382-9">{</span><span·class="ss">poll_interval</span><span·class="p">,</span><span·class="n">Millisec</span><span·class="p"·data-group-id="2391471382-9">}</span><span·class="p">,</span><span·class="w">
146 ···················</span><span·class="p"·data-group-id="1902200098-10">{</span><span·class="ss">tcp_nodelay</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="1902200098-10">}</span><span·class="p"·data-group-id="1902200098-2">]</span><span·class="p"·data-group-id="190220009[·...·truncated·by·diffoscope;·len:·1,·SHA:·2c624232cdd221771294dfbb310aca000a0df6ac8b66b696d90ef06fdefb64a3·...·]-1">}</span><span·class="p">.</span></code></pre><p><code·class="inline">Millisec·=·integer(),·N·=·integer()</code></p><p>Enter·the·<code·class="inline">telnet_settings</code>·term·in·a·configuration·file·included·in·the·test146 ···················</span><span·class="p"·data-group-id="2391471382-10">{</span><span·class="ss">tcp_nodelay</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="2391471382-10">}</span><span·class="p"·data-group-id="2391471382-2">]</span><span·class="p"·data-group-id="239147138[·...·truncated·by·diffoscope;·len:·1,·SHA:·d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da3a666eec13ab35·...·]-1">}</span><span·class="p">.</span></code></pre><p><code·class="inline">Millisec·=·integer(),·N·=·integer()</code></p><p>Enter·the·<code·class="inline">telnet_settings</code>·term·in·a·configuration·file·included·in·the·test
147 and·<code·class="inline">ct_telnet</code>·retrieves·the·information·automatically.</p><p><code·class="inline">keep_alive</code>·can·be·specified·per·connection,·if·necessary.·For·details,·see147 and·<code·class="inline">ct_telnet</code>·retrieves·the·information·automatically.</p><p><code·class="inline">keep_alive</code>·can·be·specified·per·connection,·if·necessary.·For·details,·see
148 <a·href="unix_telnet.html"><code·class="inline">unix_telnet</code></a>.</p><h2·id="module-logging"·class="section-heading">148 <a·href="unix_telnet.html"><code·class="inline">unix_telnet</code></a>.</p><h2·id="module-logging"·class="section-heading">
149 ··<a·href="#module-logging"·class="hover-link">149 ··<a·href="#module-logging"·class="hover-link">
150 ····<i·class="ri-link-m"·aria-hidden="true"></i>150 ····<i·class="ri-link-m"·aria-hidden="true"></i>
151 ··</a>151 ··</a>
152 ··<span·class="text">Logging</span>152 ··<span·class="text">Logging</span>
153 </h2>153 </h2>
154 <p><a·href=""·id="Logging"></a></p><p>The·default·logging·behavior·of·<code·class="inline">ct_telnet</code>·is·to·print·information·about154 <p><a·href=""·id="Logging"></a></p><p>The·default·logging·behavior·of·<code·class="inline">ct_telnet</code>·is·to·print·information·about
155 performed·operations,·commands,·and·their·corresponding·results·to·the·test·case155 performed·operations,·commands,·and·their·corresponding·results·to·the·test·case
156 HTML·log.·The·following·is·not·printed·to·the·HTML·log:·text·strings·sent·from156 HTML·log.·The·following·is·not·printed·to·the·HTML·log:·text·strings·sent·from
157 the·Telnet·server·that·are·not·explicitly·received·by·a·<code·class="inline">ct_telnet</code>·function,157 the·Telnet·server·that·are·not·explicitly·received·by·a·<code·class="inline">ct_telnet</code>·function,
158 such·as·<a·href="#expect/3"><code·class="inline">expect/3</code></a>.·However,·<code·class="inline">ct_telnet</code>·can·be·configured·to·use158 such·as·<a·href="#expect/3"><code·class="inline">expect/3</code></a>.·However,·<code·class="inline">ct_telnet</code>·can·be·configured·to·use
159 a·special·purpose·event·handler,·implemented·in·<code·class="inline">ct_conn_log_h</code>,·for·logging159 a·special·purpose·event·handler,·implemented·in·<code·class="inline">ct_conn_log_h</code>,·for·logging
160 <em>all</em>·Telnet·traffic.·To·use·this·handler,·install·a·<code·class="inline">Common·Test</code>·hook·named160 <em>all</em>·Telnet·traffic.·To·use·this·handler,·install·a·<code·class="inline">Common·Test</code>·hook·named
161 <code·class="inline">cth_conn_log</code>.·Example·(using·the·test·suite·information·function):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="3398737405-1">(</span><span·class="p"·data-group-id="3398737405-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">161 <code·class="inline">cth_conn_log</code>.·Example·(using·the·test·suite·information·function):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="2872350478-1">(</span><span·class="p"·data-group-id="2872350478-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 ····</span><span·class="p"·data-group-id="3398737405-2">[</span><span·class="p"·data-group-id="3398737405-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3398737405-4">[</span><span·class="p"·data-group-id="3398737405-5">{</[·...·truncated·by·diffoscope;·len:·805,·SHA:·5361cf829551b02aeccca5ba7d44a74b388f21c7eb23c6baa9132926066fcdbd·...·]-2">]</span><span·class="p">.</span></code></pre><p><code·class="inline">conn_mod()</code>·is·the·name·of·the·<code·class="inline">Common·Test</code>·module·implementing·the·connection162 ····</span><span·class="p"·data-group-id="2872350478-2">[</span><span·class="p"·data-group-id="2872350478-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2872350478-4">[</span><span·class="p"·data-group-id="2872350478-5">{</[·...·truncated·by·diffoscope;·len:·805,·SHA:·839b03d6f67da339224fcc7b85bb7418cece93cce7c2b74caf350c29333d04c5·...·]-2">]</span><span·class="p">.</span></code></pre><p><code·class="inline">conn_mod()</code>·is·the·name·of·the·<code·class="inline">Common·Test</code>·module·implementing·the·connection
163 protocol,·that·is,·<code·class="inline">ct_telnet</code>.</p><p>The·<code·class="inline">cth_conn_log</code>·hook·performs·unformatted·logging·of·Telnet·data·to·a163 protocol,·that·is,·<code·class="inline">ct_telnet</code>.</p><p>The·<code·class="inline">cth_conn_log</code>·hook·performs·unformatted·logging·of·Telnet·data·to·a
164 separate·text·file.·All·Telnet·communication·is·captured·and·printed,·including164 separate·text·file.·All·Telnet·communication·is·captured·and·printed,·including
165 any·data·sent·from·the·server.·The·link·to·this·text·file·is·located·at·the·top165 any·data·sent·from·the·server.·The·link·to·this·text·file·is·located·at·the·top
166 of·the·test·case·HTML·log.</p><p>By·default,·data·for·all·Telnet·connections·is·logged·in·one·common·file·(named166 of·the·test·case·HTML·log.</p><p>By·default,·data·for·all·Telnet·connections·is·logged·in·one·common·file·(named
167 <code·class="inline">default</code>),·which·can·get·messy,·for·example,·if·multiple·Telnet·sessions·are167 <code·class="inline">default</code>),·which·can·get·messy,·for·example,·if·multiple·Telnet·sessions·are
168 running·in·parallel.·Therefore·a·separate·log·file·can·be·created·for·each168 running·in·parallel.·Therefore·a·separate·log·file·can·be·created·for·each
169 connection.·To·configure·this,·use·hook·option·<code·class="inline">hosts</code>·and·list·the·names·of·the169 connection.·To·configure·this,·use·hook·option·<code·class="inline">hosts</code>·and·list·the·names·of·the
170 servers/connections·to·be·used·in·the·suite.·The·connections·must·be·named·for170 servers/connections·to·be·used·in·the·suite.·The·connections·must·be·named·for
171 this·to·work·(see·<a·href="#open/1"><code·class="inline">ct_telnet:open/1,2,3,4</code></a>).</p><p>Hook·option·<code·class="inline">log_type</code>·can·be·used·to·change·the·<code·class="inline">cth_conn_log</code>·behavior.·The171 this·to·work·(see·<a·href="#open/1"><code·class="inline">ct_telnet:open/1,2,3,4</code></a>).</p><p>Hook·option·<code·class="inline">log_type</code>·can·be·used·to·change·the·<code·class="inline">cth_conn_log</code>·behavior.·The
172 default·value·of·this·option·is·<code·class="inline">raw</code>,·which·results·in·the·behavior·described172 default·value·of·this·option·is·<code·class="inline">raw</code>,·which·results·in·the·behavior·described
173 above.·If·the·value·is·set·to·<code·class="inline">html</code>,·all·Telnet·communication·is·printed·to·the173 above.·If·the·value·is·set·to·<code·class="inline">html</code>,·all·Telnet·communication·is·printed·to·the
174 test·case·HTML·log·instead.</p><p>All·<code·class="inline">cth_conn_log</code>·hook·options·described·can·also·be·specified·in·a174 test·case·HTML·log·instead.</p><p>All·<code·class="inline">cth_conn_log</code>·hook·options·described·can·also·be·specified·in·a
175 configuration·file·with·configuration·variable·<code·class="inline">ct_conn_log</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3987565643-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3987565643-2">[</span><span·class="p"·data-group-id="3987565643-3">{</span><span·class="ss">ct_telnet</span><span·class=[·...·truncated·by·diffoscope;·len:·242,·SHA:·26aafed8899225e0a8a133854781fd1204b3cd08825421f644b87f8ff7ecee76·...·]-5">}</span><span·class="p">,</span><span·class="w">175 configuration·file·with·configuration·variable·<code·class="inline">ct_conn_log</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4348395594-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4348395594-2">[</span><span·class="p"·data-group-id="4348395594-3">{</span><span·class="ss">ct_telnet</span><span·class=[·...·truncated·by·diffoscope;·len:·242,·SHA:·c348c6694b40c71de51fb44a371ab818ce4fb445195ad5b1db6efb68891b7cf5·...·]-5">}</span><span·class="p">,</span><span·class="w">
176 ···························</span><span·class="p"·data-group-id="3987565643-6">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="3987565643-7">[</span><span·class="nf">key_or_name</span><span·class="p"·data-group-id="3987565643-8">(</span><span·class="p"·data-group-id="398756564[·...·truncated·by·diffoscope;·len:·319,·SHA:·4aa4d366b47a0cc259611fc8bf26638a551862d7b0b573f4541a076c030c729f·...·]-1">}</span></code></pre><blockquote><h4·class="info">Note</h4><p>Hook·options·specified·in·a·configuration·file·overwrite·any·hard-coded·hook176 ···························</span><span·class="p"·data-group-id="4348395594-6">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="4348395594-7">[</span><span·class="nf">key_or_name</span><span·class="p"·data-group-id="4348395594-8">(</span><span·class="p"·data-group-id="434839559[·...·truncated·by·diffoscope;·len:·319,·SHA:·3d98f59c5daf30322532864c9fcad0b5413e31d9f94f33b69272dfcf263c97da·...·]-1">}</span></code></pre><blockquote><h4·class="info">Note</h4><p>Hook·options·specified·in·a·configuration·file·overwrite·any·hard-coded·hook
177 options·in·the·test·suite.</p></blockquote><p><a·href=""·id="Logging_example"></a></p><p><em>Logging·Example:</em></p><p>The·following·<code·class="inline">ct_hooks</code>·statement·causes·printing·of·Telnet·traffic·to·separate177 options·in·the·test·suite.</p></blockquote><p><a·href=""·id="Logging_example"></a></p><p><em>Logging·Example:</em></p><p>The·following·<code·class="inline">ct_hooks</code>·statement·causes·printing·of·Telnet·traffic·to·separate
178 logs·for·the·connections·<code·class="inline">server1</code>·and·<code·class="inline">server2</code>.·Traffic·for·any·other178 logs·for·the·connections·<code·class="inline">server1</code>·and·<code·class="inline">server2</code>.·Traffic·for·any·other
179 connections·is·logged·in·the·default·Telnet·log.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="2693511164-1">(</span><span·class="p"·data-group-id="2693511164-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">179 connections·is·logged·in·the·default·Telnet·log.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="7846361852-1">(</span><span·class="p"·data-group-id="7846361852-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="2693511164-2">[</span><span·class="p"·data-group-id="2693511164-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">180 ····</span><span·class="p"·data-group-id="7846361852-2">[</span><span·class="p"·data-group-id="7846361852-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">
181 ······</span><span·class="p"·data-group-id="2693511164-4">[</span><span·class="p"·data-group-id="2693511164-5">{</span><span·class="ss">cth_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2693511164-6">[</span><span·class="p"·data-group-id="2693511164-7">{</span><span·class="ss">ct_telnet</span><span·class="p">,</span><span·class="p"·data-group-id="2693511164-8">[</span><span·class="p"·data-group-id="2693511164-9">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="2693511164-10">[</span><span·class="ss">server1</span><span·class="p">,</span><span·class="ss">server2</span><span·class="p"·data-group-id="2693511164-10">]</span><span·class="p"·data-group-id="2693511164-9">}</span><span·class="p"·data-group-id="2693511164-8">]</span><span·class="p"·data-group-id="2693511164-7">}</span><span·class="p"·data-group-id="2693511164-6">]</span><span·class="p"·data-group-id="2693511164-5">}</span><span·class="p"·data-group-id="2693511164-4">]</span><span·class="p"·data-group-id="2693511164-3">}</span><span·class="p"·data-group-id="2693511164-2">]</span><span·class="p">.</span></code></pre><p>As·previously·explained,·this·specification·can·also·be·provided·by·an·entry 
182 like·the·following·in·a·configuration·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0447721433-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0447721433-2">[</span><span·class="p"·data-group-id="0447721433-3">{</span><span·class="ss">ct_telnet</span><span·class="p">,</span><span·class="p"·data-group-id="0447721433-4">[</span><span·class="p"·data-group-id="0447721433-5">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="0447721433-6">[</span><span·class="ss">server1</span><span·class="p">,</span><span·class="ss">server2</span><span·class="p"·data-group-id="0447721433-6">]</span><span·class="p"·data-group-id="0447721433-5">}</span><span·class="p"·data-group-id="0447721433-4">]</span><span·class="p"·data-group-id="0447721433-3">}</span><span·class="p"·data-group-id="0447721433-2">]</span><span·class="p"·data-group-id="0447721433-1">}</span><span·class="p">.</span></code></pre><p>In·this·case·the·<code·class="inline">ct_hooks</code>·statement·in·the·test·suite·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="7416396694-1">(</span><span·class="p"·data-group-id="7416396694-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
183 ····</span><span·class="p"·data-group-id="7416396694-2">[</span><span·class="p"·data-group-id="7416396694-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7416396694-4">[</span><span·clas[·...·truncated·by·diffoscope;·len:·531,·SHA:·ccc7a9ca0f88d58e1d6164123c5722f357f9569e12efdc73eab0812912dd4615·...·]181 ······</span><span·class="p"·data-group-id="7846361852-4">[</span><span·class="p"·data-group-id="7846361852-5">{</span><span·class="ss">cth_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7846361852-6">[</span><spa[·...·truncated·by·diffoscope;·len:·999,·SHA:·c1902c27f6eaddbddb27d8f3a4d1a4b88df5bb74428eb9f5d5c56714a84027ff·...·]
 182 like·the·following·in·a·configuration·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5357134977-1">{</span><span·class="ss">ct_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5357134977-2">[</span><span·class="p"·data-group-id="5357134977-3">{</span><span·class="ss">ct_telnet</span><span·class="p">,</span><span·class="p"·data-group-id="5357134977-4">[</span><span·class="p"·data-group-id="5357134977-5">{</span><span·class="ss">hosts</span><span·class="p">,</span><span·class="p"·data-group-id="5357134977-6">[</span><span·class="ss">server1</span><span·class="p">,</span><span·class="ss">server2</span><span·class="p"·data-group-id="5357134977-6">]</span><span·class="p"·data-group-id="5357134977-5">}</span><span·class="p"·data-group-id="5357134977-4">]</span><span·class="p"·data-group-id="5357134977-3">}</span><span·class="p"·data-group-id="5357134977-2">]</span><span·class="p"·data-group-id="5357134977-1">}</span><span·class="p">.</span></code></pre><p>In·this·case·the·<code·class="inline">ct_hooks</code>·statement·in·the·test·suite·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="4978181758-1">(</span><span·class="p"·data-group-id="4978181758-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
 183 ····</span><span·class="p"·data-group-id="4978181758-2">[</span><span·class="p"·data-group-id="4978181758-3">{</span><span·class="ss">ct_hooks</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4978181758-4">[</span><span·class="p"·data-group-id="4978181758-5">{</span><span·class="ss">cth_conn_log</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4978181758-6">[</span><span·class="p"·data-group-id="4978181758-6">]</span><span·class="p"·data-group-id="4978181758-5">}</span><span·class="p"·data-group-id="4978181758-4">]</span><span·class="p"·data-group-id="4978181758-3">}</span><span·class="p"·data-group-id="4978181758-2">]</span><span·class="p">.</span></code></pre><h2·id="module-see-also"·class="section-heading">
184 ··<a·href="#module-see-also"·class="hover-link">184 ··<a·href="#module-see-also"·class="hover-link">
185 ····<i·class="ri-link-m"·aria-hidden="true"></i>185 ····<i·class="ri-link-m"·aria-hidden="true"></i>
186 ··</a>186 ··</a>
187 ··<span·class="text">See·Also</span>187 ··<span·class="text">See·Also</span>
188 </h2>188 </h2>
189 <p><a·href="unix_telnet.html"><code·class="inline">unix_telnet</code></a></p>189 <p><a·href="unix_telnet.html"><code·class="inline">unix_telnet</code></a></p>
190 ····</section>190 ····</section>
Offset 881, 17 lines modifiedOffset 881, 17 lines modified
881 of·waiting·for·prompt.</p></li><li><p><strong><code·class="inline">repeat·|·repeat,·N</code></strong>·-·The·pattern(s)·must·be·matched·multiple·times.·If881 of·waiting·for·prompt.</p></li><li><p><strong><code·class="inline">repeat·|·repeat,·N</code></strong>·-·The·pattern(s)·must·be·matched·multiple·times.·If
882 <code·class="inline">N</code>·is·specified,·the·pattern(s)·are·matched·<code·class="inline">N</code>·times,·and·the·function882 <code·class="inline">N</code>·is·specified,·the·pattern(s)·are·matched·<code·class="inline">N</code>·times,·and·the·function
883 returns·<code·class="inline">HaltReason·=·done</code>.·This·option·can·be·interrupted·by·one·or·more883 returns·<code·class="inline">HaltReason·=·done</code>.·This·option·can·be·interrupted·by·one·or·more
884 <code·class="inline">HaltPatterns</code>.·<code·class="inline">MatchList</code>·is·always·returned,·that·is,·a·list·of·<code·class="inline">Match</code>884 <code·class="inline">HaltPatterns</code>.·<code·class="inline">MatchList</code>·is·always·returned,·that·is,·a·list·of·<code·class="inline">Match</code>
885 instead·of·only·one·<code·class="inline">Match</code>.·Also·<code·class="inline">HaltReason</code>·is·returned.</p></li><li><p><strong><code·class="inline">sequence</code></strong>·-·All·patterns·must·be·matched·in·a·sequence.·A·match·is·not885 instead·of·only·one·<code·class="inline">Match</code>.·Also·<code·class="inline">HaltReason</code>·is·returned.</p></li><li><p><strong><code·class="inline">sequence</code></strong>·-·All·patterns·must·be·matched·in·a·sequence.·A·match·is·not
886 concluded·until·all·patterns·are·matched.·This·option·can·be·interrupted·by886 concluded·until·all·patterns·are·matched.·This·option·can·be·interrupted·by
887 one·or·more·<code·class="inline">HaltPatterns</code>.·<code·class="inline">MatchList</code>·is·always·returned,·that·is,·a·list·of887 one·or·more·<code·class="inline">HaltPatterns</code>.·<code·class="inline">MatchList</code>·is·always·returned,·that·is,·a·list·of
888 <code·class="inline">Match</code>·instead·of·only·one·<code·class="inline">Match</code>.·Also·<code·class="inline">HaltReason</code>·is·returned.</p></li></ul><p><em>Example·1:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">expect</span><span·class="p"·data-group-id="6307416116-1">(</span><span·class="n">Connection</span><span·class="p">,</span><span·class="p"·data-group-id="6307416116-2">[</span><span·class="p"·data-group-id="6307416116-3">{</span><span·class="ss">abc</span><span·class="p">,</span><span·class="s">&quot[·...·truncated·by·diffoscope;·len:·1028,·SHA:·5237d8e907e6df8413f67539175550c42c69632a67b4676bf47034db6ff243c7·...·]-1">)</span></code></pre><p>First·this·tries·to·match·<code·class="inline">&quot;ABC&quot;</code>,·and·then·<code·class="inline">&quot;XYZ&quot;</code>,·but·if·<code·class="inline">&quot;NNN&quot;</code>·appears,·the888 <code·class="inline">Match</code>·instead·of·only·one·<code·class="inline">Match</code>.·Also·<code·class="inline">HaltReason</code>·is·returned.</p></li></ul><p><em>Example·1:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">expect</span><span·class="p"·data-group-id="6234414968-1">(</span><span·class="n">Connection</span><span·class="p">,</span><span·class="p"·data-group-id="6234414968-2">[</span><span·class="p"·data-group-id="6234414968-3">{</span><span·class="ss">abc</span><span·class="p">,</span><span·class="s">&quot[·...·truncated·by·diffoscope;·len:·1028,·SHA:·b63a96a49bd97f6c5a663b8f570f296b06730e1e5f549029fd8d010527644698·...·]-1">)</span></code></pre><p>First·this·tries·to·match·<code·class="inline">&quot;ABC&quot;</code>,·and·then·<code·class="inline">&quot;XYZ&quot;</code>,·but·if·<code·class="inline">&quot;NNN&quot;</code>·appears,·the
889 function·returns·<code·class="inline">{error,{nnn,[&quot;NNN&quot;]}}</code>.·If·both·<code·class="inline">&quot;ABC&quot;</code>·and·<code·class="inline">&quot;XYZ&quot;</code>·are889 function·returns·<code·class="inline">{error,{nnn,[&quot;NNN&quot;]}}</code>.·If·both·<code·class="inline">&quot;ABC&quot;</code>·and·<code·class="inline">&quot;XYZ&quot;</code>·are
890 matched,·the·function·returns·<code·class="inline">{ok,[AbcMatch,XyzMatch]}</code>.</p><p><em>Example·2:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">expect</span><span·class="p"·data-group-id="8986727714-1">(</span><span·class="n">Connection</span><span·class="p">,</span><span·class="p"·data-group-id="8986727714-2">[</span><span·class="p"·data-group-id="8986727714-3">{</span><span·class="ss">abc</span><span·class="p">,</span><span·class="s">&quo[·...·truncated·by·diffoscope;·len:·1182,·SHA:·4f867b6f960fb9c63da424c62ee2859f5a0bd678e17b84a2645a45062ebaf4e8·...·]-1">)</span></code></pre><p>This·tries·to·match·<code·class="inline">&quot;ABC&quot;</code>·or·<code·class="inline">&quot;XYZ&quot;</code>·twice.·If·<code·class="inline">&quot;NNN&quot;</code>·appears,·the·function890 matched,·the·function·returns·<code·class="inline">{ok,[AbcMatch,XyzMatch]}</code>.</p><p><em>Example·2:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">expect</span><span·class="p"·data-group-id="3868482555-1">(</span><span·class="n">Connection</span><span·class="p">,</span><span·class="p"·data-group-id="3868482555-2">[</span><span·class="p"·data-group-id="3868482555-3">{</span><span·class="ss">abc</span><span·class="p">,</span><span·class="s">&quo[·...·truncated·by·diffoscope;·len:·1182,·SHA:·e04a3021797189f982a8b2a2f240fc418226f8fb580f8c2ef4d7daac534f9b7a·...·]-1">)</span></code></pre><p>This·tries·to·match·<code·class="inline">&quot;ABC&quot;</code>·or·<code·class="inline">&quot;XYZ&quot;</code>·twice.·If·<code·class="inline">&quot;NNN&quot;</code>·appears,·the·function
891 returns·<code·class="inline">HaltReason·=·{nnn,[&quot;NNN&quot;]}</code>.</p><p>Options·<code·class="inline">repeat</code>·and·<code·class="inline">sequence</code>·can·be·combined·to·match·a·sequence·multiple891 returns·<code·class="inline">HaltReason·=·{nnn,[&quot;NNN&quot;]}</code>.</p><p>Options·<code·class="inline">repeat</code>·and·<code·class="inline">sequence</code>·can·be·combined·to·match·a·sequence·multiple
892 times.</p>892 times.</p>
893 ··</section>893 ··</section>
894 </section>894 </section>
895 <section·class="detail"·id="get_data/1">895 <section·class="detail"·id="get_data/1">
  
896 ··<div·class="detail-header">896 ··<div·class="detail-header">
Offset 1220, 15 lines modifiedOffset 1220, 15 lines modified
1220 ······<p·class="built-using">1220 ······<p·class="built-using">
1221 ········Built·using1221 ········Built·using
1222 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1222 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1223 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1223 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1224 ······</p>1224 ······</p>
1225 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1225 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1226 ····</footer>1226 ····</footer>
1227 ··</div>1227 ··</div>
1228 </main>1228 </main>
1229 </div>1229 </div>
1230 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1230 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1231 <script>1231 <script>
1232 ··document.addEventListener("DOMContentLoaded",·function·()·{1232 ··document.addEventListener("DOMContentLoaded",·function·()·{
666 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/ct_testspec.html
    
Offset 235, 15 lines modifiedOffset 235, 15 lines modified
235 ······<p·class="built-using">235 ······<p·class="built-using">
236 ········Built·using236 ········Built·using
237 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the237 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
238 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>238 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
239 ······</p>239 ······</p>
240 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>240 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
241 ····</footer>241 ····</footer>
242 ··</div>242 ··</div>
243 </main>243 </main>
244 </div>244 </div>
245 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>245 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
246 <script>246 <script>
247 ··document.addEventListener("DOMContentLoaded",·function·()·{247 ··document.addEventListener("DOMContentLoaded",·function·()·{
696 B
html2text {}
Max HTML report size reached
57.5 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/dependencies_chapter.html
    
Offset 157, 73 lines modifiedOffset 157, 73 lines modified
157 between·the·cases·and·therefore·introduce·dependencies·between·them.</p><p>To·avoid·this,·we·can·consider·starting·and·stopping·the·server·for·every·test.157 between·the·cases·and·therefore·introduce·dependencies·between·them.</p><p>To·avoid·this,·we·can·consider·starting·and·stopping·the·server·for·every·test.
158 We·can·thus·implement·the·start·and·stop·action·as·common·functions·to·be·called158 We·can·thus·implement·the·start·and·stop·action·as·common·functions·to·be·called
159 from·<a·href="ct_suite.html#c:init_per_testcase/2"><code·class="inline">init_per_testcase</code></a>·and159 from·<a·href="ct_suite.html#c:init_per_testcase/2"><code·class="inline">init_per_testcase</code></a>·and
160 <a·href="ct_suite.html#c:end_per_testcase/2"><code·class="inline">end_per_testcase</code></a>.·(Remember·to·test·the160 <a·href="ct_suite.html#c:end_per_testcase/2"><code·class="inline">end_per_testcase</code></a>.·(Remember·to·test·the
161 start·and·stop·functionality·separately.)·The·configuration·can·also·be161 start·and·stop·functionality·separately.)·The·configuration·can·also·be
162 implemented·as·a·common·function,·maybe·grouped·with·the·start·function.162 implemented·as·a·common·function,·maybe·grouped·with·the·start·function.
163 Finally,·the·testing·of·connecting·and·disconnecting·a·client·can·be·grouped163 Finally,·the·testing·of·connecting·and·disconnecting·a·client·can·be·grouped
164 into·one·test·case.·The·resulting·suite·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2380480560-1">(</span><span·class="ss">my_server_SUITE</span><span·class="p"·data-group-id="2380480560-1">)</span><span·class="p">.</span><span·class="w">164 into·one·test·case.·The·resulting·suite·can·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="3636190790-1">(</span><span·class="ss">my_server_SUITE</span><span·class="p"·data-group-id="3636190790-1">)</span><span·class="p">.</span><span·class="w">
165 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="2380480560-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="2380480560-2">)</span><span·class="p">.</span><span·class="w">165 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="3636190790-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="3636190790-2">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2380480560-3">(</span><span·class="s">&quot;ct.hrl&quot;</span><span·class="p"·data-group-id="2380480560-3">)</span><span·class="p">.</span><span·class="w">166 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="3636190790-3">(</span><span·class="s">&quot;ct.hrl&quot;</span><span·class="p"·data-group-id="3636190790-3">)</span><span·class="p">.</span><span·class="w">
  
167 </span><span·class="c1">%%%·init·and·end·functions...</span><span·class="w">167 </span><span·class="c1">%%%·init·and·end·functions...</span><span·class="w">
  
168 </span><span·class="nf">suite</span><span·class="p"·data-group-id="2380480560-4">(</span><span·class="p"·data-group-id="2380480560-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2380480560-5">[</span><span·class="p"·data-group-id="2380480560-6">{</span[·...·truncated·by·diffoscope;·len:·186,·SHA:·6cc3d08209c5c18bd6a76558f57566e1fa2665e6e9d132147c8e511ca040258b·...·]0-5">]</span><span·class="p">.</span><span·class="w">168 </span><span·class="nf">suite</span><span·class="p"·data-group-id="3636190790-4">(</span><span·class="p"·data-group-id="3636190790-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3636190790-5">[</span><span·class="p"·data-group-id="3636190790-6">{</span[·...·truncated·by·diffoscope;·len:·186,·SHA:·b7407f418c3b7ecff39dd3a685ce34fd4576a51a6d9dbf80d561c11b71d1c25a·...·]0-5">]</span><span·class="p">.</span><span·class="w">
  
169 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="2380480560-7">(</span><span·class="ss">start_and_stop</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="2380480560-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">169 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="3636190790-7">(</span><span·class="ss">start_and_stop</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="3636190790-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
170 ····</span><span·class="n">Config</span><span·class="p">;</span><span·class="w">170 ····</span><span·class="n">Config</span><span·class="p">;</span><span·class="w">
  
171 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="2380480560-8">(</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="2380480560-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">171 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="3636190790-8">(</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="3636190790-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ····</span><span·class="p"·data-group-id="2380480560-9">[</span><span·class="p"·data-group-id="2380480560-10">{</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="nf">start_server</span><span·class="p"·data-group-id="2380480560-11">(</span><span·class="p"·data-group-id="2[·...·truncated·by·diffoscope;·len:·217,·SHA:·1fc196193fc1800f990b88c63eb6aaab709c203b43e538c34c58d5e15afaccf0·...·]0-9">]</span><span·class="p">;</span><span·class="w">172 ····</span><span·class="p"·data-group-id="3636190790-9">[</span><span·class="p"·data-group-id="3636190790-10">{</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="nf">start_server</span><span·class="p"·data-group-id="3636190790-11">(</span><span·class="p"·data-group-id="3[·...·truncated·by·diffoscope;·len:·217,·SHA:·f5cdcf1f7d96a4b6c551ea7cbfe321c74a97304760bdf66b16bcabcdba920975·...·]0-9">]</span><span·class="p">;</span><span·class="w">
  
173 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="2380480560-12">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="2380480560-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="3636190790-12">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="3636190790-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_server</span><span·class="p"·data-group-id="2380480560-13">(</span><span·class="p"·data-group-id="2380480560-13">)</span><span·class="p">,</span><span·class="w">174 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_server</span><span·class="p"·data-group-id="3636190790-13">(</span><span·class="p"·data-group-id="3636190790-13">)</span><span·class="p">,</span><span·class="w">
175 ····</span><span·class="nf">configure_server</span><span·class="p"·data-group-id="2380480560-14">(</span><span·class="p"·data-group-id="2380480560-14">)</span><span·class="p">,</span><span·class="w">175 ····</span><span·class="nf">configure_server</span><span·class="p"·data-group-id="3636190790-14">(</span><span·class="p"·data-group-id="3636190790-14">)</span><span·class="p">,</span><span·class="w">
176 ····</span><span·class="p"·data-group-id="2380480560-15">[</span><span·class="p"·data-group-id="2380480560-16">{</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="2380480560-16">}</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·106,·SHA:·e28f8a631f611f1a4041cbcf164145703d474a9779f956faa8b9d0e1a6a5ea40·...·]0-15">]</span><span·class="p">.</span><span·class="w">176 ····</span><span·class="p"·data-group-id="3636190790-15">[</span><span·class="p"·data-group-id="3636190790-16">{</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="3636190790-16">}</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·106,·SHA:·d38f24a595495294b418a49770c32f760b8d1e8c81e36924c55a609c5f989d91·...·]0-15">]</span><span·class="p">.</span><span·class="w">
  
177 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="2380480560-17">(</span><span·class="ss">start_and_stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="2380480560-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">177 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="3636190790-17">(</span><span·class="ss">start_and_stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="3636190790-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
178 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">178 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
  
179 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="2380480560-18">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="2380480560-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">179 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="3636190790-18">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="3636190790-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
180 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="2380480560-19">(</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="2380480560-19">)</span><span·class="p">,</span><span·class="w">180 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="3636190790-19">(</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="3636190790-19">)</span><span·class="p">,</span><span·class="w">
181 ····</span><span·class="nf">stop_server</span><span·class="p"·data-group-id="2380480560-20">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="2380480560-20">)</span><span·class="p">.</span><span·class="w">181 ····</span><span·class="nf">stop_server</span><span·class="p"·data-group-id="3636190790-20">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="3636190790-20">)</span><span·class="p">.</span><span·class="w">
  
182 </span><span·class="c1">%%%·test·cases...</span><span·class="w">182 </span><span·class="c1">%%%·test·cases...</span><span·class="w">
  
183 </span><span·class="nf">all</span><span·class="p"·data-group-id="2380480560-21">(</span><span·class="p"·data-group-id="2380480560-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2380480560-22">[</span><span·class="ss">start_and_stop</span><span·class[·...·truncated·by·diffoscope;·len:·201,·SHA:·d604f6348ec1f4ca637013993f2a1c42c23015a4598020ea30352b1b3911203e·...·]0-22">]</span><span·class="p">.</span><span·class="w">183 </span><span·class="nf">all</span><span·class="p"·data-group-id="3636190790-21">(</span><span·class="p"·data-group-id="3636190790-21">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3636190790-22">[</span><span·class="ss">start_and_stop</span><span·class[·...·truncated·by·diffoscope;·len:·201,·SHA:·9f3a82a5b6ad876c20c566ab0a256b810756cc26a0161ed687a520556b6c3c91·...·]0-22">]</span><span·class="p">.</span><span·class="w">
  
184 </span><span·class="c1">%%·test·that·starting·and·stopping·works</span><span·class="w">184 </span><span·class="c1">%%·test·that·starting·and·stopping·works</span><span·class="w">
185 </span><span·class="nf">start_and_stop</span><span·class="p"·data-group-id="2380480560-23">(</span><span·class="p">_</span><span·class="p"·data-group-id="2380480560-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">185 </span><span·class="nf">start_and_stop</span><span·class="p"·data-group-id="3636190790-23">(</span><span·class="p">_</span><span·class="p"·data-group-id="3636190790-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
186 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_server</span><span·class="p"·data-group-id="2380480560-24">(</span><span·class="p"·data-group-id="2380480560-24">)</span><span·class="p">,</span><span·class="w">186 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_server</span><span·class="p"·data-group-id="3636190790-24">(</span><span·class="p"·data-group-id="3636190790-24">)</span><span·class="p">,</span><span·class="w">
187 ····</span><span·class="nf">stop_server</span><span·class="p"·data-group-id="2380480560-25">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="2380480560-25">)</span><span·class="p">.</span><span·class="w">187 ····</span><span·class="nf">stop_server</span><span·class="p"·data-group-id="3636190790-25">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="3636190790-25">)</span><span·class="p">.</span><span·class="w">
  
188 </span><span·class="c1">%%·configuration·test</span><span·class="w">188 </span><span·class="c1">%%·configuration·test</span><span·class="w">
189 </span><span·class="nf">config</span><span·class="p"·data-group-id="2380480560-26">(</span><span·class="n">Config</span><span·class="p"·data-group-id="2380480560-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">189 </span><span·class="nf">config</span><span·class="p"·data-group-id="3636190790-26">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3636190790-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
190 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="2380480560-27">(</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="2380480560-27">)</span><span·class="p">,</span><span·class="w">190 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="3636190790-27">(</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="3636190790-27">)</span><span·class="p">,</span><span·class="w">
191 ····</span><span·class="nf">configure_server</span><span·class="p"·data-group-id="2380480560-28">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="2380480560-28">)</span><span·class="p">.</span><span·class="w">191 ····</span><span·class="nf">configure_server</span><span·class="p"·data-group-id="3636190790-28">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="3636190790-28">)</span><span·class="p">.</span><span·class="w">
  
192 </span><span·class="c1">%%·test·connecting·and·disconnecting·client</span><span·class="w">192 </span><span·class="c1">%%·test·connecting·and·disconnecting·client</span><span·class="w">
193 </span><span·class="nf">connect_and_disconnect</span><span·class="p"·data-group-id="2380480560-29">(</span><span·class="n">Config</span><span·class="p"·data-group-id="2380480560-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 </span><span·class="nf">connect_and_disconnect</span><span·class="p"·data-group-id="3636190790-29">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3636190790-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="2380480560-30">(</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="2380480560-30">)</span><span·class="p">,</span><span·class="w">194 ····</span><span·class="n">ServerPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="3636190790-30">(</span><span·class="ss">server_pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="3636190790-30">)</span><span·class="p">,</span><span·class="w">
195 ····</span><span·class="p"·data-group-id="2380480560-31">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="2380480560-31">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_serve[·...·truncated·by·diffoscope;·len:·189,·SHA:·06387b9c9d4e4bd1bbd004cc6117ea7e443f378d0e094da3c80becec42bc31c6·...·]0-32">)</span><span·class="p">,</span><span·class="w">195 ····</span><span·class="p"·data-group-id="3636190790-31">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="3636190790-31">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_serve[·...·truncated·by·diffoscope;·len:·189,·SHA:·0dba656de5fdb882f1eccc2188c3bdc77ef9d873ffdf4241ea4b9ec1aba8d91b·...·]0-32">)</span><span·class="p">,</span><span·class="w">
196 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">disconnect</span><span·class="p"·data-group-id="2380480560-33">(</span><span·class="n">ServerPid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SessionId</span><span·class="p"·data-group-id="2380480560-33">)</span><span·class="p">.</span><span·class="w">196 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">disconnect</span><span·class="p"·data-group-id="3636190790-33">(</span><span·class="n">ServerPid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SessionId</span><span·class="p"·data-group-id="3636190790-33">)</span><span·class="p">.</span><span·class="w">
  
197 </span><span·class="c1">%%%·common·functions...</span><span·class="w">197 </span><span·class="c1">%%%·common·functions...</span><span·class="w">
  
198 </span><span·class="nf">start_server</span><span·class="p"·data-group-id="2380480560-34">(</span><span·class="p"·data-group-id="2380480560-34">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">198 </span><span·class="nf">start_server</span><span·class="p"·data-group-id="3636190790-34">(</span><span·class="p"·data-group-id="3636190790-34">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
199 ····</span><span·class="p"·data-group-id="2380480560-35">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="2380480560-35">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_serve[·...·truncated·by·diffoscope;·len:·155,·SHA:·f569da68ceb78a4864741e08317899ec1ee1cec7e807278ad82e86f2c3699fb7·...·]0-36">)</span><span·class="p">,</span><span·class="w">199 ····</span><span·class="p"·data-group-id="3636190790-35">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="3636190790-35">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_serve[·...·truncated·by·diffoscope;·len:·155,·SHA:·25c0a7949fc195c23a4991f5bd4eeda4b281274cf7e703075b267c24821478e1·...·]0-36">)</span><span·class="p">,</span><span·class="w">
200 ····</span><span·class="n">ServerPid</span><span·class="p">.</span><span·class="w">200 ····</span><span·class="n">ServerPid</span><span·class="p">.</span><span·class="w">
  
201 </span><span·class="nf">stop_server</span><span·class="p"·data-group-id="2380480560-37">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="2380480560-37">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">201 </span><span·class="nf">stop_server</span><span·class="p"·data-group-id="3636190790-37">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="3636190790-37">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
202 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="2380480560-38">(</span><span·class="p"·data-group-id="2380480560-38">)</span><span·class="p">,</span><span·class="w">202 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="3636190790-38">(</span><span·class="p"·data-group-id="3636190790-38">)</span><span·class="p">,</span><span·class="w">
203 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">203 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
204 </span><span·class="nf">configure_server</span><span·class="p"·data-group-id="2380480560-39">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="2380480560-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">204 </span><span·class="nf">configure_server</span><span·class="p"·data-group-id="3636190790-39">(</span><span·class="n">ServerPid</span><span·class="p"·data-group-id="3636190790-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
205 ····</span><span·class="n">ServerCfgData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="2380480560-40">(</span><span·class="ss">my_server_cfg</span><span·class="p"·data-group-id="2380480560-40">)</span><span·class="p">,</span><span·class="w">205 ····</span><span·class="n">ServerCfgData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">get_config</span><span·class="p"·data-group-id="3636190790-40">(</span><span·class="ss">my_server_cfg</span><span·class="p"·data-group-id="3636190790-40">)</span><span·class="p">,</span><span·class="w">
206 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">configure</span><span·class="p"·data-group-id="2380480560-41">(</span><span·class="n">ServerPid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ServerCfgData</span><span·class="p"·data-group-id="2380480560-41">)</span><span·class="p">,</span><span·class="w">206 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">my_server</span><span·class="p">:</span><span·class="nf">configure</span><span·class="p"·data-group-id="3636190790-41">(</span><span·class="n">ServerPid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ServerCfgData</span><span·class="p"·data-group-id="3636190790-41">)</span><span·class="p">,</span><span·class="w">
207 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p><a·href=""·id="save_config"></a></p><h2·id="saving-configuration-data"·class="section-heading">207 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p><a·href=""·id="save_config"></a></p><h2·id="saving-configuration-data"·class="section-heading">
208 ··<a·href="#saving-configuration-data"·class="hover-link">208 ··<a·href="#saving-configuration-data"·class="hover-link">
209 ····<i·class="ri-link-m"·aria-hidden="true"></i>209 ····<i·class="ri-link-m"·aria-hidden="true"></i>
210 ··</a>210 ··</a>
211 ··<span·class="text">Saving·Configuration·Data</span>211 ··<span·class="text">Saving·Configuration·Data</span>
212 </h2>212 </h2>
213 <p>Sometimes·it·is·impossible,·or·infeasible,·to·implement·independent·test·cases.213 <p>Sometimes·it·is·impossible,·or·infeasible,·to·implement·independent·test·cases.
Offset 243, 48 lines modifiedOffset 243, 48 lines modified
243 <code·class="inline">Saver</code>·is·always·matched·to·the·expected·name·of·the·saving·test·case.·This243 <code·class="inline">Saver</code>·is·always·matched·to·the·expected·name·of·the·saving·test·case.·This
244 way,·problems·because·of·restructuring·of·the·test·suite·can·be·avoided.·Also,244 way,·problems·because·of·restructuring·of·the·test·suite·can·be·avoided.·Also,
245 it·makes·the·dependency·more·explicit·and·the·test·suite·easier·to·read·and245 it·makes·the·dependency·more·explicit·and·the·test·suite·easier·to·read·and
246 maintain.</p><p>To·pass·data·from·one·test·suite·to·another,·the·same·mechanism·is·used.·The246 maintain.</p><p>To·pass·data·from·one·test·suite·to·another,·the·same·mechanism·is·used.·The
247 data·is·to·be·saved·by·finction·<a·href="ct_suite.html#c:end_per_suite/1"><code·class="inline">end_per_suite</code></a>247 data·is·to·be·saved·by·finction·<a·href="ct_suite.html#c:end_per_suite/1"><code·class="inline">end_per_suite</code></a>
248 and·read·by·function·<a·href="ct_suite.html#c:init_per_suite/1"><code·class="inline">init_per_suite</code></a>·in·the248 and·read·by·function·<a·href="ct_suite.html#c:init_per_suite/1"><code·class="inline">init_per_suite</code></a>·in·the
249 suite·that·follows.·When·passing·data·between·suites,·<code·class="inline">Saver</code>·carries·the·name249 suite·that·follows.·When·passing·data·between·suites,·<code·class="inline">Saver</code>·carries·the·name
250 of·the·test·suite.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4540776904-1">(</span><span·class="ss">server_b_SUITE</span><span·class="p"·data-group-id="4540776904-1">)</span><span·class="p">.</span><span·class="w">250 of·the·test·suite.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7921233517-1">(</span><span·class="ss">server_b_SUITE</span><span·class="p"·data-group-id="7921233517-1">)</span><span·class="p">.</span><span·class="w">
251 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="4540776904-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="4540776904-2">)</span><span·class="p">.</span><span·class="w">251 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="7921233517-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="7921233517-2">)</span><span·class="p">.</span><span·class="w">
252 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="4540776904-3">(</span><span·class="s">&quot;ct.hrl&quot;</span><span·class="p"·data-group-id="4540776904-3">)</span><span·class="p">.</span><span·class="w">252 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7921233517-3">(</span><span·class="s">&quot;ct.hrl&quot;</span><span·class="p"·data-group-id="7921233517-3">)</span><span·class="p">.</span><span·class="w">
  
253 </span><span·class="c1">%%%·init·and·end·functions...</span><span·class="w">253 </span><span·class="c1">%%%·init·and·end·functions...</span><span·class="w">
  
254 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="4540776904-4">(</span><span·class="n">Config</span><span·class="p"·data-group-id="4540776904-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">254 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="7921233517-4">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7921233517-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
255 ····</span><span·class="c1">%%·read·config·saved·by·previous·test·suite</span><span·class="w">255 ····</span><span·class="c1">%%·read·config·saved·by·previous·test·suite</span><span·class="w">
256 ····</span><span·class="p"·data-group-id="4540776904-5">{</span><span·class="ss">server_a_SUITE</span><span·class="p">,</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="4540776904-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc[·...·truncated·by·diffoscope;·len:·282,·SHA:·943176af2f7c2d2b1d0bf237fc0d3ce033225531416caf95d1946281e335c45c·...·]-6">)</span><span·class="p">,</span><span·class="w">256 ····</span><span·class="p"·data-group-id="7921233517-5">{</span><span·class="ss">server_a_SUITE</span><span·class="p">,</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="7921233517-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc[·...·truncated·by·diffoscope;·len:·282,·SHA:·8e45fbd341af521e9b1eca706b08df3b7c4be8e3c2e8606f18958f69adcce852·...·]-6">)</span><span·class="p">,</span><span·class="w">
257 ····</span><span·class="c1">%%·extract·server·identity·(comes·from·server_a_SUITE)</span><span·class="w">257 ····</span><span·class="c1">%%·extract·server·identity·(comes·from·server_a_SUITE)</span><span·class="w">
258 ····</span><span·class="n">ServerId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="4540776904-7">(</span><span·class="ss">server_id</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="4540776904-7">)</span><span·class="p">,</span><span·class="w">258 ····</span><span·class="n">ServerId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="7921233517-7">(</span><span·class="ss">server_id</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="7921233517-7">)</span><span·class="p">,</span><span·class="w">
259 ····</span><span·class="n">SessionId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">connect_to_server</span><span·class="p"·data-group-id="4540776904-8">(</span><span·class="n">ServerId</span><span·class="p"·data-group-id="4540776904-8">)</span><span·class="p">,</span><span·class="w"> 
260 ····</span><span·class="p"·data-group-id="4540776904-9">[</span><span·class="p"·data-group-id="4540776904-10">{</span><span·class="ss">ids</span><span·class="p">,</span><span·class="p"·data-group-id="4540776904-11">{</span><span·class="n">ServerId</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·309,·SHA:·f74c08bb203bf06f0d06ac5f1bb8b14ea560323fbb279ba908e0faaadeed9d72·...·]</span><span·class="w">259 ····</span><span·class="n">SessionId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">connect_to_server</span><span·class="p"·data-group-id="7921233517-8">(</span><span·class="n">ServerId</span><span·class="p"·data-group-id="792123351[·...·truncated·by·diffoscope;·len:·30,·SHA:·532ac3220310ee5dcde4fe2824acc1f098993bb03ddc7dc5f7534d4eef1c69df·...·]</span><span·class="w">
 260 ····</span><span·class="p"·data-group-id="7921233517-9">[</span><span·class="p"·data-group-id="7921233517-10">{</span><span·class="ss">ids</span><span·class="p">,</span><span·class="p"·data-group-id="7921233517-11">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="7921233517-11">}</span><span·class="p"·data-group-id="7921233517-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="7921233517-9">]</span><span·class="p">.</span><span·class="w">
  
261 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="4540776904-12">(</span><span·class="n">Config</span><span·class="p"·data-group-id="4540776904-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">261 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="7921233517-12">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7921233517-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
262 ····</span><span·class="c1">%%·save·config·for·server_c_SUITE·(session_id·and·server_id)</span><span·class="w">262 ····</span><span·class="c1">%%·save·config·for·server_c_SUITE·(session_id·and·server_id)</span><span·class="w">
263 ····</span><span·class="p"·data-group-id="4540776904-13">{</span><span·class="ss">save_config</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="4540776904-13">}</span><span·class="w">263 ····</span><span·class="p"·data-group-id="7921233517-13">{</span><span·class="ss">save_config</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="7921233517-13">}</span><span·class="w">
  
264 </span><span·class="c1">%%%·test·cases...</span><span·class="w">264 </span><span·class="c1">%%%·test·cases...</span><span·class="w">
  
265 </span><span·class="nf">all</span><span·class="p"·data-group-id="4540776904-14">(</span><span·class="p"·data-group-id="4540776904-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4540776904-15">[</span><span·class="ss">allocate</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·106,·SHA:·4639c6d621345efe17a922cabeb7dad90005f452bd8be94142898e44387e8f03·...·]-15">]</span><span·class="p">.</span><span·class="w">265 </span><span·class="nf">all</span><span·class="p"·data-group-id="7921233517-14">(</span><span·class="p"·data-group-id="7921233517-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7921233517-15">[</span><span·class="ss">allocate</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·106,·SHA:·de5a92151dff342f0c470f3f387c51ae409852224480750b06a85c0d347fb2cb·...·]-15">]</span><span·class="p">.</span><span·class="w">
  
266 </span><span·class="nf">allocate</span><span·class="p"·data-group-id="4540776904-16">(</span><span·class="n">Config</span><span·class="p"·data-group-id="4540776904-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">266 </span><span·class="nf">allocate</span><span·class="p"·data-group-id="7921233517-16">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7921233517-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
267 ····</span><span·class="p"·data-group-id="4540776904-17">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="4540776904-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pro[·...·truncated·by·diffoscope;·len:·269,·SHA:·3679375aafc80d79c1d7040bbaaf35fdd886dd9f1e7d94b750f447ecdc8be27d·...·]-18">)</span><span·class="p">,</span><span·class="w">267 ····</span><span·class="p"·data-group-id="7921233517-17">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="7921233517-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pro[·...·truncated·by·diffoscope;·len:·269,·SHA:·cbe63345addd3876a26e5b010d471b53160f6249bf2e741889a91f3b2a401e3e·...·]-18">)</span><span·class="p">,</span><span·class="w">
268 ····</span><span·class="p"·data-group-id="4540776904-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle</span><span·class="p"·data-group-id="4540776904-19">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">allocate_re[·...·truncated·by·diffoscope;·len:·219,·SHA:·18d7cd27eaeb43f39131b9aa15740e987b8d977663ac897c9e6d0724922dc09b·...·]-20">)</span><span·class="p">,</span><span·class="w">268 ····</span><span·class="p"·data-group-id="7921233517-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Handle</span><span·class="p"·data-group-id="7921233517-19">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">allocate_re[·...·truncated·by·diffoscope;·len:·219,·SHA:·c76a165e2f2344379bad50c7245c804dcb9e743c21cd60828ed23318d4e0f160·...·]-20">)</span><span·class="p">,</span><span·class="w">
269 ····</span><span·class="c1">%%·save·handle·for·deallocation·test</span><span·class="w">269 ····</span><span·class="c1">%%·save·handle·for·deallocation·test</span><span·class="w">
270 ····</span><span·class="n">NewConfig</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4540776904-21">[</span><span·class="p"·data-group-id="4540776904-22">{</span><span·class="ss">handle</span><span·class="p">,</span><span·class="n">Handle</span><span·class="p"·data-group-id="4540776904-22">}</span><span·class="p"·data-group-id="4540776904-21">]</span><span·class="p">,</span><span·class="w">270 ····</span><span·class="n">NewConfig</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7921233517-21">[</span><span·class="p"·data-group-id="7921233517-22">{</span><span·class="ss">handle</span><span·class="p">,</span><span·class="n">Handle</span><span·class="p"·data-group-id="7921233517-22">}</span><span·class="p"·data-group-id="7921233517-21">]</span><span·class="p">,</span><span·class="w">
271 ····</span><span·class="p"·data-group-id="4540776904-23">{</span><span·class="ss">save_config</span><span·class="p">,</span><span·class="n">NewConfig</span><span·class="p"·data-group-id="4540776904-23">}</span><span·class="p">.</span><span·class="w">271 ····</span><span·class="p"·data-group-id="7921233517-23">{</span><span·class="ss">save_config</span><span·class="p">,</span><span·class="n">NewConfig</span><span·class="p"·data-group-id="7921233517-23">}</span><span·class="p">.</span><span·class="w">
  
272 </span><span·class="nf">deallocate</span><span·class="p"·data-group-id="4540776904-24">(</span><span·class="n">Config</span><span·class="p"·data-group-id="4540776904-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">272 </span><span·class="nf">deallocate</span><span·class="p"·data-group-id="7921233517-24">(</span><span·class="n">Config</span><span·class="p"·data-group-id="7921233517-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
273 ····</span><span·class="p"·data-group-id="4540776904-25">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="4540776904-25">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pro[·...·truncated·by·diffoscope;·len:·269,·SHA:·cdf2ecabcc888e31e43dac1955bfc8ef7d73379908d0b946135f7c949c49fe7e·...·]-26">)</span><span·class="p">,</span><span·class="w">273 ····</span><span·class="p"·data-group-id="7921233517-25">{</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="n">SessionId</span><span·class="p"·data-group-id="7921233517-25">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pro[·...·truncated·by·diffoscope;·len:·269,·SHA:·ead510c192c85308a603be4d46162adcae4bf6db323af08b05dead07cab9ac62·...·]-26">)</span><span·class="p">,</span><span·class="w">
274 ····</span><span·class="p"·data-group-id="4540776904-27">{</span><span·class="ss">allocate</span><span·class="p">,</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="4540776904-27">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pr[·...·truncated·by·diffoscope;·len:·279,·SHA:·4e5451ef2675fa040e995f9c9f1906f7cb61a2059a90b155d67ca59ac2d27f41·...·]-28">)</span><span·class="p">,</span><span·class="w">274 ····</span><span·class="p"·data-group-id="7921233517-27">{</span><span·class="ss">allocate</span><span·class="p">,</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="7921233517-27">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">pr[·...·truncated·by·diffoscope;·len:·279,·SHA:·2b719c439541a69ca3b1f6573b2bf8dc1a985ca7043e60315af2a5423c1de1a4·...·]-28">)</span><span·class="p">,</span><span·class="w">
275 ····</span><span·class="n">Handle</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="4540776904-29">(</span><span·class="ss">handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="4540776904-29">)</span><span·class="p">,</span><span·class="w">275 ····</span><span·class="n">Handle</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="7921233517-29">(</span><span·class="ss">handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OldConfig</span><span·class="p"·data-group-id="7921233517-29">)</span><span·class="p">,</span><span·class="w">
276 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">deallocate_resource</span><span·class="p"·data-group-id="4540776904-30">(</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SessionId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handle</span><span·class="p"·data-group-id="4540776904-30">)</span><span·class="p">.</span></code></pre><p>To·save·<code·class="inline">Config</code>·data·from·a·test·case·that·is·to·be·skipped,·return·tuple276 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">deallocate_resource</span><span·class="p"·data-group-id="7921233517-30">(</span><span·class="n">ServerId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SessionId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handle</span><span·class="p"·data-group-id="7921233517-30">)</span><span·class="p">.</span></code></pre><p>To·save·<code·class="inline">Config</code>·data·from·a·test·case·that·is·to·be·skipped,·return·tuple
277 <code·class="inline">{skip_and_save,Reason,ConfigList}</code>.</p><p>The·result·is·that·the·test·case·is·skipped·with·<code·class="inline">Reason</code>·printed·to·the·log277 <code·class="inline">{skip_and_save,Reason,ConfigList}</code>.</p><p>The·result·is·that·the·test·case·is·skipped·with·<code·class="inline">Reason</code>·printed·to·the·log
278 file·(as·described·earlier)·and·<code·class="inline">ConfigList</code>·is·saved·for·the·next·test·case.278 file·(as·described·earlier)·and·<code·class="inline">ConfigList</code>·is·saved·for·the·next·test·case.
279 <code·class="inline">ConfigList</code>·can·be·read·using·<code·class="inline">proplists:get_value(saved_config,·Config)</code>,·as279 <code·class="inline">ConfigList</code>·can·be·read·using·<code·class="inline">proplists:get_value(saved_config,·Config)</code>,·as
280 described·earlier.·<code·class="inline">skip_and_save</code>·can·also·be·returned·from·<code·class="inline">init_per_suite</code>.280 described·earlier.·<code·class="inline">skip_and_save</code>·can·also·be·returned·from·<code·class="inline">init_per_suite</code>.
281 In·this·case,·the·saved·data·can·be·read·by·<code·class="inline">init_per_suite</code>·in·the·suite·that281 In·this·case,·the·saved·data·can·be·read·by·<code·class="inline">init_per_suite</code>·in·the·suite·that
282 follows.</p><h2·id="sequences"·class="section-heading">282 follows.</p><h2·id="sequences"·class="section-heading">
283 ··<a·href="#sequences"·class="hover-link">283 ··<a·href="#sequences"·class="hover-link">
Offset 296, 30 lines modifiedOffset 296, 30 lines modified
296 following·tests·are·not·to·be·executed.·Typically,·if·the·<code·class="inline">save_config</code>·facility296 following·tests·are·not·to·be·executed.·Typically,·if·the·<code·class="inline">save_config</code>·facility
297 is·used·and·a·test·case·that·is·expected·to·save·data·crashes,·the·following297 is·used·and·a·test·case·that·is·expected·to·save·data·crashes,·the·following
298 case·cannot·run.·<code·class="inline">Common·Test</code>·offers·a·way·to·declare·such·dependencies,·called298 case·cannot·run.·<code·class="inline">Common·Test</code>·offers·a·way·to·declare·such·dependencies,·called
Max diff block lines reached; 12268/57823 bytes (21.22%) of diff not shown.
840 B
html2text {}
Max HTML report size reached
11.7 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/event_handler_chapter.html
    
Offset 164, 20 lines modifiedOffset 164, 20 lines modified
164 </h2>164 </h2>
165 <p>Event·handlers·can·be·installed·by·an·<code·class="inline">event_handler</code>·start·flag165 <p>Event·handlers·can·be·installed·by·an·<code·class="inline">event_handler</code>·start·flag
166 (<a·href="ct_run_cmd.html"><code·class="inline">ct_run</code></a>)·or·option·<a·href="ct.html#run_test/1"><code·class="inline">ct:run_test/1</code></a>,·where·the·argument166 (<a·href="ct_run_cmd.html"><code·class="inline">ct_run</code></a>)·or·option·<a·href="ct.html#run_test/1"><code·class="inline">ct:run_test/1</code></a>,·where·the·argument
167 specifies·the·names·of·one·or·more·event·handler·modules.</p><p><em>Example:</em></p><p><code·class="inline">$·ct_run·-suite·test/my_SUITE·-event_handler·handlers/my_evh1·handlers/my_evh2·-pa·$PWD/handlers</code></p><p>To·pass·start·arguments·to·the·event·handler·init·function,·use·option167 specifies·the·names·of·one·or·more·event·handler·modules.</p><p><em>Example:</em></p><p><code·class="inline">$·ct_run·-suite·test/my_SUITE·-event_handler·handlers/my_evh1·handlers/my_evh2·-pa·$PWD/handlers</code></p><p>To·pass·start·arguments·to·the·event·handler·init·function,·use·option
168 <code·class="inline">ct_run·-event_handler_init</code>·instead·of·<code·class="inline">-event_handler</code>.</p><blockquote><h4·class="info">Note</h4><p>All·event·handler·modules·must·have·<code·class="inline">gen_event</code>·behavior.·These·modules·must168 <code·class="inline">ct_run·-event_handler_init</code>·instead·of·<code·class="inline">-event_handler</code>.</p><blockquote><h4·class="info">Note</h4><p>All·event·handler·modules·must·have·<code·class="inline">gen_event</code>·behavior.·These·modules·must
169 be·precompiled·and·their·locations·must·be·added·explicitly·to·the·Erlang·code169 be·precompiled·and·their·locations·must·be·added·explicitly·to·the·Erlang·code
170 server·search·path·(as·in·the·previous·example).</p></blockquote><p>An·event_handler·tuple·in·argument·<code·class="inline">Opts</code>·has·the·following·definition·(see170 server·search·path·(as·in·the·previous·example).</p></blockquote><p>An·event_handler·tuple·in·argument·<code·class="inline">Opts</code>·has·the·following·definition·(see
171 <a·href="ct.html#run_test/1"><code·class="inline">ct:run_test/1</code></a>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7419098105-1">{</span><span·class="ss">event_handler</span><span·class="p">,</span><span·class="n">EventHandlers</span><span·class="p"·data-group-id="7419098105-1">}</span><span·class="w">171 <a·href="ct.html#run_test/1"><code·class="inline">ct:run_test/1</code></a>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0721830371-1">{</span><span·class="ss">event_handler</span><span·class="p">,</span><span·class="n">EventHandlers</span><span·class="p"·data-group-id="0721830371-1">}</span><span·class="w">
  
172 </span><span·class="n">EventHandlers</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">EH</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="7419098105-2">[</span><span·class="n">EH</span><span·class="p"·data-group-id="7419098105-2">]</span><span·class="w">172 </span><span·class="n">EventHandlers</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">EH</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="0721830371-2">[</span><span·class="n">EH</span><span·class="p"·data-group-id="0721830371-2">]</span><span·class="w">
173 </span><span·class="n">EH</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="7419098105-3">(</span><span·class="p"·data-group-id="7419098105-3">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="7419098105-4">{</span><span·class="nf">atom</span><span·class="p"·data-group-id="7419098105-5">(</span><span·class="p"·data-group-id="7419098105-5">)</span><span·class="p">,</span><span·class="n">InitArgs</span><span·class="p"·data-group-id="7419098105-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="7419098105-6">{</span><span·class="p"·data-group-id="7419098105-7">[</span><span·class="nf">atom</span><span·class="p"·data-group-id="7419098105-8">(</span><span·class="p"·data-group-id="7419098105-8">)</span><span·class="p"·data-group-id="7419098105-7">]</span><span·class="p">,</span><span·class="n">InitArgs</span><span·class="p"·data-group-id="7419098105-6">}</span><span·class="w"> 
174 </span><span·class="n">InitArgs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7419098105-9">[</span><span·class="nf">term</span><span·class="p"·data-group-id="7419098105-10">(</span><span·class="p"·data-group-id="7419098105-10">)</span><span·class="p"·data-group-id="7419098105-9">]</span></code></pre><p>In·the·following·example,·two·event·handlers·for·the·<code·class="inline">my_SUITE</code>·test·are 
175 installed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">run_test</span><span·class="p"·data-group-id="3513585601-1">(</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·1273,·SHA:·045edca8524812bcfd85426e4931a9428b47bde98c9362fbeb7e8637e2c54f4f·...·]173 </span><span·class="n">EH</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="0721830371-3">(</span><span·class="p"·data-group-id="0721830371-3">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·838,·SHA:·733cd7f2233190d38f14bd644aa5a2a368ae792f1447f3924de76fbc5d5a16b8·...·]
 174 </span><span·class="n">InitArgs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0721830371-9">[</span><span·class="nf">term</span><span·class="p"·data-group-id="0721830371-10">(</span><span·class="p"·data-group-id="0721830371-10">)</span><span·class="p"·data-group-id="0721830371-9">]</span></code></pre><p>In·the·following·example,·two·event·handlers·for·the·<code·class="inline">my_SUITE</code>·test·are
 175 installed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">run_test</span><span·class="p"·data-group-id="2410272661-1">(</span><span·class="p"·data-group-id="2410272661-2">[</span><span·class="p"·data-group-id="2410272661-3">{</span><span·class="ss">suite</span><span·class="p">,</span><span·class="s">&quot;test/my_SUITE&quot;</span><span·class="p"·data-group-id="2410272661-3">}</span><span·class="p">,</span><span·class="p"·data-group-id="2410272661-4">{</span><span·class="ss">event_handler</span><span·class="p">,</span><span·class="p"·data-group-id="2410272661-5">[</span><span·class="ss">my_evh1</span><span·class="p">,</span><span·class="p"·data-group-id="2410272661-6">{</span><span·class="ss">my_evh2</span><span·class="p">,</span><span·class="p"·data-group-id="2410272661-7">[</span><span·class="nf">node</span><span·class="p"·data-group-id="2410272661-8">(</span><span·class="p"·data-group-id="2410272661-8">)</span><span·class="p"·data-group-id="2410272661-7">]</span><span·class="p"·data-group-id="2410272661-6">}</span><span·class="p"·data-group-id="2410272661-5">]</span><span·class="p"·data-group-id="2410272661-4">}</span><span·class="p"·data-group-id="2410272661-2">]</span><span·class="p"·data-group-id="2410272661-1">)</span><span·class="p">.</span></code></pre><p>Event·handler·<code·class="inline">my_evh1</code>·is·started·with·<code·class="inline">[]</code>·as·argument·to·the·init·function.
176 Event·handler·<code·class="inline">my_evh2</code>·is·started·with·the·name·of·the·current·node·in·the·init176 Event·handler·<code·class="inline">my_evh2</code>·is·started·with·the·name·of·the·current·node·in·the·init
177 argument·list.</p><p>Event·handlers·can·also·be·plugged·in·using·one·of·the·following177 argument·list.</p><p>Event·handlers·can·also·be·plugged·in·using·one·of·the·following
178 <a·href="run_test_chapter.html#test_specifications">test·specification</a>·terms:</p><ul><li><code·class="inline">{event_handler,·EventHandlers}</code></li><li><code·class="inline">{event_handler,·EventHandlers,·InitArgs}</code></li><li><code·class="inline">{event_handler,·NodeRefs,·EventHandlers}</code></li><li><code·class="inline">{event_handler,·NodeRefs,·EventHandlers,·InitArgs}</code></li></ul><p><code·class="inline">EventHandlers</code>·is·a·list·of·module·names.·Before·a·test·session·starts,·the178 <a·href="run_test_chapter.html#test_specifications">test·specification</a>·terms:</p><ul><li><code·class="inline">{event_handler,·EventHandlers}</code></li><li><code·class="inline">{event_handler,·EventHandlers,·InitArgs}</code></li><li><code·class="inline">{event_handler,·NodeRefs,·EventHandlers}</code></li><li><code·class="inline">{event_handler,·NodeRefs,·EventHandlers,·InitArgs}</code></li></ul><p><code·class="inline">EventHandlers</code>·is·a·list·of·module·names.·Before·a·test·session·starts,·the
179 init·function·of·each·plugged·in·event·handler·is·called·(with·the·<code·class="inline">InitArgs</code>179 init·function·of·each·plugged·in·event·handler·is·called·(with·the·<code·class="inline">InitArgs</code>
180 list·as·argument·or·<code·class="inline">[]</code>·if·no·start·arguments·are·specified).</p><p>To·plug·in·a·handler·to·the·<code·class="inline">Common·Test</code>·Master·event·manager,·specify·<code·class="inline">master</code>180 list·as·argument·or·<code·class="inline">[]</code>·if·no·start·arguments·are·specified).</p><p>To·plug·in·a·handler·to·the·<code·class="inline">Common·Test</code>·Master·event·manager,·specify·<code·class="inline">master</code>
181 as·the·node·in·<code·class="inline">NodeRefs</code>.</p><p>To·be·able·to·match·on·events,·the·event·handler·module·must·include·the·header181 as·the·node·in·<code·class="inline">NodeRefs</code>.</p><p>To·be·able·to·match·on·events,·the·event·handler·module·must·include·the·header
182 file·<code·class="inline">ct_event.hrl</code>.·An·event·is·a·record·with·the·following·definition:</p><p><code·class="inline">#event{name,·node,·data}</code></p><ul><li><p><strong><code·class="inline">name</code></strong>·-·Label·(type)·of·the·event.</p></li><li><p><strong><code·class="inline">node</code></strong>·-·Name·of·the·node·that·the·event·originated·from·(only·relevant182 file·<code·class="inline">ct_event.hrl</code>.·An·event·is·a·record·with·the·following·definition:</p><p><code·class="inline">#event{name,·node,·data}</code></p><ul><li><p><strong><code·class="inline">name</code></strong>·-·Label·(type)·of·the·event.</p></li><li><p><strong><code·class="inline">node</code></strong>·-·Name·of·the·node·that·the·event·originated·from·(only·relevant
Offset 320, 15 lines modifiedOffset 320, 15 lines modified
320 ······<p·class="built-using">320 ······<p·class="built-using">
321 ········Built·using321 ········Built·using
322 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the322 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
323 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>323 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
324 ······</p>324 ······</p>
325 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>325 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
326 ····</footer>326 ····</footer>
327 ··</div>327 ··</div>
328 </main>328 </main>
329 </div>329 </div>
330 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>330 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
331 <script>331 <script>
332 ··document.addEventListener("DOMContentLoaded",·function·()·{332 ··document.addEventListener("DOMContentLoaded",·function·()·{
879 B
html2text {}
Max HTML report size reached
79.0 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/example_chapter.html
    
Offset 127, 136 lines modifiedOffset 127, 136 lines modified
  
127 <p><a·href=""·id="top"></a></p><h2·id="test-suite-example"·class="section-heading">127 <p><a·href=""·id="top"></a></p><h2·id="test-suite-example"·class="section-heading">
128 ··<a·href="#test-suite-example"·class="hover-link">128 ··<a·href="#test-suite-example"·class="hover-link">
129 ····<i·class="ri-link-m"·aria-hidden="true"></i>129 ····<i·class="ri-link-m"·aria-hidden="true"></i>
130 ··</a>130 ··</a>
131 ··<span·class="text">Test·Suite·Example</span>131 ··<span·class="text">Test·Suite·Example</span>
132 </h2>132 </h2>
133 <p>The·following·example·test·suite·shows·some·tests·of·a·database·server:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6575846803-1">(</span><span·class="ss">db_data_type_SUITE</span><span·class="p"·data-group-id="6575846803-1">)</span><span·class="p">.</span><span·class="w">133 <p>The·following·example·test·suite·shows·some·tests·of·a·database·server:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6025772817-1">(</span><span·class="ss">db_data_type_SUITE</span><span·class="p"·data-group-id="6025772817-1">)</span><span·class="p">.</span><span·class="w">
134 </span><span·class="w">134 </span><span·class="w">
135 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="6575846803-2">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="6575846803-2">)</span><span·class="p">.</span><span·class="w">135 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="6025772817-2">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="6025772817-2">)</span><span·class="p">.</span><span·class="w">
  
136 </span><span·class="c1">%%·Test·server·callbacks</span><span·class="w">136 </span><span·class="c1">%%·Test·server·callbacks</span><span·class="w">
137 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6575846803-3">(</span><span·class="p"·data-group-id="6575846803-4">[</span><span·class="ss">suite</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">all</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">137 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6025772817-3">(</span><span·class="p"·data-group-id="6025772817-4">[</span><span·class="ss">suite</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">all</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
138 ·········</span><span·class="ss">init_per_suite</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">end_per_suite</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">138 ·········</span><span·class="ss">init_per_suite</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">end_per_suite</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
139 ·········</span><span·class="ss">init_per_testcase</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">end_per_testcase</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="6575846803-4">]</span><span·class="p"·data-group-id="6575846803-3">)</span><span·class="p">.</span><span·class="w">139 ·········</span><span·class="ss">init_per_testcase</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">end_per_testcase</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="6025772817-4">]</span><span·class="p"·data-group-id="6025772817-3">)</span><span·class="p">.</span><span·class="w">
  
140 </span><span·class="c1">%%·Test·cases</span><span·class="w">140 </span><span·class="c1">%%·Test·cases</span><span·class="w">
141 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6575846803-5">(</span><span·class="p"·data-group-id="6575846803-6">[</span><span·class="ss">string</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">integer</span><span·class="p">/</span>[·...·truncated·by·diffoscope;·len:·119,·SHA:·a7a0c93a5d0943db021805d425f599470a423edcc72c2e5fd4a6e0b1a3b78278·...·]-5">)</span><span·class="p">.</span><span·class="w">141 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6025772817-5">(</span><span·class="p"·data-group-id="6025772817-6">[</span><span·class="ss">string</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">integer</span><span·class="p">/</span>[·...·truncated·by·diffoscope;·len:·119,·SHA:·ec212e84a0662f1ce3450f6be8c58e67ea69436acbc6983e0023f982b746fca5·...·]-5">)</span><span·class="p">.</span><span·class="w">
142 </span><span·class="w">142 </span><span·class="w">
143 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="6575846803-7">(</span><span·class="n">CONNECT_STR</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;DSN=sqlserver;UID=alladin;PWD=sesame&quot;</span><span·class="p"·data-group-id="6575846803-7">)</span><span·class="p">.</span><span·class="w">143 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="6025772817-7">(</span><span·class="n">CONNECT_STR</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;DSN=sqlserver;UID=alladin;PWD=sesame&quot;</span><span·class="p"·data-group-id="6025772817-7">)</span><span·class="p">.</span><span·class="w">
  
144 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">144 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
145 </span><span·class="c1">%%·COMMON·TEST·CALLBACK·FUNCTIONS</span><span·class="w">145 </span><span·class="c1">%%·COMMON·TEST·CALLBACK·FUNCTIONS</span><span·class="w">
146 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">146 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
  
147 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">147 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
148 </span><span·class="c1">%%·Function:·suite()·-&gt;·Info</span><span·class="w">148 </span><span·class="c1">%%·Function:·suite()·-&gt;·Info</span><span·class="w">
149 </span><span·class="c1">%%</span><span·class="w">149 </span><span·class="c1">%%</span><span·class="w">
150 </span><span·class="c1">%%·Info·=·[tuple()]</span><span·class="w">150 </span><span·class="c1">%%·Info·=·[tuple()]</span><span·class="w">
151 </span><span·class="c1">%%···List·of·key/value·pairs.</span><span·class="w">151 </span><span·class="c1">%%···List·of·key/value·pairs.</span><span·class="w">
152 </span><span·class="c1">%%</span><span·class="w">152 </span><span·class="c1">%%</span><span·class="w">
153 </span><span·class="c1">%%·Description:·Returns·list·of·tuples·to·set·default·properties</span><span·class="w">153 </span><span·class="c1">%%·Description:·Returns·list·of·tuples·to·set·default·properties</span><span·class="w">
154 </span><span·class="c1">%%··············for·the·suite.</span><span·class="w">154 </span><span·class="c1">%%··············for·the·suite.</span><span·class="w">
155 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">155 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
156 </span><span·class="nf">suite</span><span·class="p"·data-group-id="6575846803-8">(</span><span·class="p"·data-group-id="6575846803-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">156 </span><span·class="nf">suite</span><span·class="p"·data-group-id="6025772817-8">(</span><span·class="p"·data-group-id="6025772817-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
157 ····</span><span·class="p"·data-group-id="6575846803-9">[</span><span·class="p"·data-group-id="6575846803-10">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="6575846803-11">{</span><span·class="ss">minutes</span><span·class="p">,</span><span·class="mi"[·...·truncated·by·diffoscope;·len:·158,·SHA:·9cfd391d90f85c66f2ee173628c186c079102350db4e053e575950f7538415e8·...·]-9">]</span><span·class="p">.</span><span·class="w">157 ····</span><span·class="p"·data-group-id="6025772817-9">[</span><span·class="p"·data-group-id="6025772817-10">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="6025772817-11">{</span><span·class="ss">minutes</span><span·class="p">,</span><span·class="mi"[·...·truncated·by·diffoscope;·len:·158,·SHA:·8e9a5157dc7294a62568f9b0ef772bd02c9caf639970ec222dc83f611e0e0d26·...·]-9">]</span><span·class="p">.</span><span·class="w">
  
158 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">158 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
159 </span><span·class="c1">%%·Function:·init_per_suite(Config0)·-&gt;·Config1</span><span·class="w">159 </span><span·class="c1">%%·Function:·init_per_suite(Config0)·-&gt;·Config1</span><span·class="w">
160 </span><span·class="c1">%%</span><span·class="w">160 </span><span·class="c1">%%</span><span·class="w">
161 </span><span·class="c1">%%·Config0·=·Config1·=·[tuple()]</span><span·class="w">161 </span><span·class="c1">%%·Config0·=·Config1·=·[tuple()]</span><span·class="w">
162 </span><span·class="c1">%%···A·list·of·key/value·pairs,·holding·the·test·case·configuration.</span><span·class="w">162 </span><span·class="c1">%%···A·list·of·key/value·pairs,·holding·the·test·case·configuration.</span><span·class="w">
163 </span><span·class="c1">%%</span><span·class="w">163 </span><span·class="c1">%%</span><span·class="w">
164 </span><span·class="c1">%%·Description:·Initialization·before·the·suite.</span><span·class="w">164 </span><span·class="c1">%%·Description:·Initialization·before·the·suite.</span><span·class="w">
165 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">165 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
166 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="6575846803-12">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">166 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="6025772817-12">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
167 ····</span><span·class="p"·data-group-id="6575846803-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ref</span><span·class="p"·data-group-id="6575846803-13">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·382,·SHA:·66bce3bfa2e602ab5773c6661f4e66fe0933e79ffccc41270d77f948ebdf9452·...·]-14">)</span><span·class="p">,</span><span·class="w">167 ····</span><span·class="p"·data-group-id="6025772817-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ref</span><span·class="p"·data-group-id="6025772817-13">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·382,·SHA:·c10c9d71daf3dc38ce13d66c226d66952daabfd6da15e91b09e1cdf4a64a5267·...·]-14">)</span><span·class="p">,</span><span·class="w">
168 ····</span><span·class="n">TableName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db_lib</span><span·class="p">:</span><span·class="nf">unique_table_name</span><span·class="p"·data-group-id="6575846803-16">(</span><span·class="p"·data-group-id="6575846803-16">)</span><span·class="p">,</span><span·class="w">168 ····</span><span·class="n">TableName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db_lib</span><span·class="p">:</span><span·class="nf">unique_table_name</span><span·class="p"·data-group-id="6025772817-16">(</span><span·class="p"·data-group-id="6025772817-16">)</span><span·class="p">,</span><span·class="w">
169 ····</span><span·class="p"·data-group-id="6575846803-17">[</span><span·class="p"·data-group-id="6575846803-18">{</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ref</span><span·class="w">·</span><span·class="p"·data-group-id="6575846803-18">}</sp[·...·truncated·by·diffoscope;·len:·367,·SHA:·1f5e6cea7fff94bb565b86531bab1f2a1e8d944d2ccb24a8321aafa0939d515a·...·]-17">]</span><span·class="p">.</span><span·class="w">169 ····</span><span·class="p"·data-group-id="6025772817-17">[</span><span·class="p"·data-group-id="6025772817-18">{</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ref</span><span·class="w">·</span><span·class="p"·data-group-id="6025772817-18">}</sp[·...·truncated·by·diffoscope;·len:·367,·SHA:·99649c2b63b6f617fb71326c20731f971052d7ade8d719c8d5ed9f38f9fce5cf·...·]-17">]</span><span·class="p">.</span><span·class="w">
  
170 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">170 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
171 </span><span·class="c1">%%·Function:·end_per_suite(Config)·-&gt;·term()</span><span·class="w">171 </span><span·class="c1">%%·Function:·end_per_suite(Config)·-&gt;·term()</span><span·class="w">
172 </span><span·class="c1">%%</span><span·class="w">172 </span><span·class="c1">%%</span><span·class="w">
173 </span><span·class="c1">%%·Config·=·[tuple()]</span><span·class="w">173 </span><span·class="c1">%%·Config·=·[tuple()]</span><span·class="w">
174 </span><span·class="c1">%%···A·list·of·key/value·pairs,·holding·the·test·case·configuration.</span><span·class="w">174 </span><span·class="c1">%%···A·list·of·key/value·pairs,·holding·the·test·case·configuration.</span><span·class="w">
175 </span><span·class="c1">%%</span><span·class="w">175 </span><span·class="c1">%%</span><span·class="w">
176 </span><span·class="c1">%%·Description:·Cleanup·after·the·suite.</span><span·class="w">176 </span><span·class="c1">%%·Description:·Cleanup·after·the·suite.</span><span·class="w">
177 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">177 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
178 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="6575846803-20">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="6025772817-20">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6575846803-21">(</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-21">)</span><span·class="p">,</span><span·class="w">179 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6025772817-21">(</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-21">)</span><span·class="p">,</span><span·class="w">
180 ····</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">disconnect</span><span·class="p"·data-group-id="6575846803-22">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="6575846803-22">)</span><span·class="p">,</span><span·class="w">180 ····</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">disconnect</span><span·class="p"·data-group-id="6025772817-22">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="6025772817-22">)</span><span·class="p">,</span><span·class="w">
181 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">181 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
182 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">182 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
183 </span><span·class="c1">%%·Function:·init_per_testcase(TestCase,·Config0)·-&gt;·Config1</span><span·class="w">183 </span><span·class="c1">%%·Function:·init_per_testcase(TestCase,·Config0)·-&gt;·Config1</span><span·class="w">
184 </span><span·class="c1">%%</span><span·class="w">184 </span><span·class="c1">%%</span><span·class="w">
185 </span><span·class="c1">%%·TestCase·=·atom()</span><span·class="w">185 </span><span·class="c1">%%·TestCase·=·atom()</span><span·class="w">
186 </span><span·class="c1">%%···Name·of·the·test·case·that·is·about·to·run.</span><span·class="w">186 </span><span·class="c1">%%···Name·of·the·test·case·that·is·about·to·run.</span><span·class="w">
187 </span><span·class="c1">%%·Config0·=·Config1·=·[tuple()]</span><span·class="w">187 </span><span·class="c1">%%·Config0·=·Config1·=·[tuple()]</span><span·class="w">
188 </span><span·class="c1">%%···A·list·of·key/value·pairs,·holding·the·test·case·configuration.</span><span·class="w">188 </span><span·class="c1">%%···A·list·of·key/value·pairs,·holding·the·test·case·configuration.</span><span·class="w">
189 </span><span·class="c1">%%</span><span·class="w">189 </span><span·class="c1">%%</span><span·class="w">
190 </span><span·class="c1">%%·Description:·Initialization·before·each·test·case.</span><span·class="w">190 </span><span·class="c1">%%·Description:·Initialization·before·each·test·case.</span><span·class="w">
191 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">191 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
192 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="6575846803-23">(</span><span·class="n">Case</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">192 </span><span·class="nf">init_per_testcase</span><span·class="p"·data-group-id="6025772817-23">(</span><span·class="n">Case</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
193 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6575846803-24">(</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-24">)</span><span·class="p">,</span><span·class="w">193 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6025772817-24">(</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-24">)</span><span·class="p">,</span><span·class="w">
194 ····</span><span·class="n">TableName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6575846803-25">(</span><span·class="ss">table_name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-25">)</span><span·class="p">,</span><span·class="w">194 ····</span><span·class="n">TableName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6025772817-25">(</span><span·class="ss">table_name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-25">)</span><span·class="p">,</span><span·class="w">
195 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6575846803-26">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TableName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">table_type</span><span·class="p"·data-group-id="6575846803-27">[·...·truncated·by·diffoscope;·len:·130,·SHA:·99a2e77ceca53c35b90b5b583a84d359687134a61437e9437125ebe01355a2ed·...·]-26">)</span><span·class="p">,</span><span·class="w">195 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6025772817-26">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TableName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">table_type</span><span·class="p"·data-group-id="6025772817-27">[·...·truncated·by·diffoscope;·len:·130,·SHA:·e1ba234550415f1d909a8dd2f8bfc8d1f2fa4488785df24665df1e469dd664a7·...·]-26">)</span><span·class="p">,</span><span·class="w">
196 ····</span><span·class="n">Config</span><span·class="p">.</span><span·class="w">196 ····</span><span·class="n">Config</span><span·class="p">.</span><span·class="w">
  
197 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">197 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
198 </span><span·class="c1">%%·Function:·end_per_testcase(TestCase,·Config)·-&gt;·term()</span><span·class="w">198 </span><span·class="c1">%%·Function:·end_per_testcase(TestCase,·Config)·-&gt;·term()</span><span·class="w">
199 </span><span·class="c1">%%</span><span·class="w">199 </span><span·class="c1">%%</span><span·class="w">
200 </span><span·class="c1">%%·TestCase·=·atom()</span><span·class="w">200 </span><span·class="c1">%%·TestCase·=·atom()</span><span·class="w">
201 </span><span·class="c1">%%···Name·of·the·test·case·that·is·finished.</span><span·class="w">201 </span><span·class="c1">%%···Name·of·the·test·case·that·is·finished.</span><span·class="w">
202 </span><span·class="c1">%%·Config·=·[tuple()]</span><span·class="w">202 </span><span·class="c1">%%·Config·=·[tuple()]</span><span·class="w">
203 </span><span·class="c1">%%···A·list·of·key/value·pairs,·holding·the·test·case·configuration.</span><span·class="w">203 </span><span·class="c1">%%···A·list·of·key/value·pairs,·holding·the·test·case·configuration.</span><span·class="w">
204 </span><span·class="c1">%%</span><span·class="w">204 </span><span·class="c1">%%</span><span·class="w">
205 </span><span·class="c1">%%·Description:·Cleanup·after·each·test·case.</span><span·class="w">205 </span><span·class="c1">%%·Description:·Cleanup·after·each·test·case.</span><span·class="w">
206 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">206 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
207 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="6575846803-28">(</span><span·class="p">_</span><span·class="n">Case</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">207 </span><span·class="nf">end_per_testcase</span><span·class="p"·data-group-id="6025772817-28">(</span><span·class="p">_</span><span·class="n">Case</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
208 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6575846803-29">(</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-29">)</span><span·class="p">,</span><span·class="w">208 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6025772817-29">(</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-29">)</span><span·class="p">,</span><span·class="w">
209 ····</span><span·class="n">TableName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6575846803-30">(</span><span·class="ss">table_name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-30">)</span><span·class="p">,</span><span·class="w">209 ····</span><span·class="n">TableName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6025772817-30">(</span><span·class="ss">table_name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-30">)</span><span·class="p">,</span><span·class="w">
210 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">delete_table</span><span·class="p"·data-group-id="6575846803-31">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TableName</span><span·class="p"·data-group-id="6575846803-31">)</span><span·class="p">,</span><span·class="w">210 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">delete_table</span><span·class="p"·data-group-id="6025772817-31">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TableName</span><span·class="p"·data-group-id="6025772817-31">)</span><span·class="p">,</span><span·class="w">
211 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">211 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
212 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">212 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
213 </span><span·class="c1">%%·Function:·all()·-&gt;·GroupsAndTestCases</span><span·class="w">213 </span><span·class="c1">%%·Function:·all()·-&gt;·GroupsAndTestCases</span><span·class="w">
214 </span><span·class="c1">%%</span><span·class="w">214 </span><span·class="c1">%%</span><span·class="w">
215 </span><span·class="c1">%%·GroupsAndTestCases·=·[{group,GroupName}·|·TestCase]</span><span·class="w">215 </span><span·class="c1">%%·GroupsAndTestCases·=·[{group,GroupName}·|·TestCase]</span><span·class="w">
216 </span><span·class="c1">%%·GroupName·=·atom()</span><span·class="w">216 </span><span·class="c1">%%·GroupName·=·atom()</span><span·class="w">
217 </span><span·class="c1">%%···Name·of·a·test·case·group.</span><span·class="w">217 </span><span·class="c1">%%···Name·of·a·test·case·group.</span><span·class="w">
218 </span><span·class="c1">%%·TestCase·=·atom()</span><span·class="w">218 </span><span·class="c1">%%·TestCase·=·atom()</span><span·class="w">
219 </span><span·class="c1">%%···Name·of·a·test·case.</span><span·class="w">219 </span><span·class="c1">%%···Name·of·a·test·case.</span><span·class="w">
220 </span><span·class="c1">%%</span><span·class="w">220 </span><span·class="c1">%%</span><span·class="w">
221 </span><span·class="c1">%%·Description:·Returns·the·list·of·groups·and·test·cases·that</span><span·class="w">221 </span><span·class="c1">%%·Description:·Returns·the·list·of·groups·and·test·cases·that</span><span·class="w">
222 </span><span·class="c1">%%··············are·to·be·executed.</span><span·class="w">222 </span><span·class="c1">%%··············are·to·be·executed.</span><span·class="w">
223 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">223 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
224 </span><span·class="nf">all</span><span·class="p"·data-group-id="6575846803-32">(</span><span·class="p"·data-group-id="6575846803-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 </span><span·class="nf">all</span><span·class="p"·data-group-id="6025772817-32">(</span><span·class="p"·data-group-id="6025772817-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 ····</span><span·class="p"·data-group-id="6575846803-33">[</span><span·class="ss">string</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">integer</span><span·class="p"·data-group-id="6575846803-33">]</span><span·class="p">.</span><span·class="w">225 ····</span><span·class="p"·data-group-id="6025772817-33">[</span><span·class="ss">string</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">integer</span><span·class="p"·data-group-id="6025772817-33">]</span><span·class="p">.</span><span·class="w">
  
  
226 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">226 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
227 </span><span·class="c1">%%·TEST·CASES</span><span·class="w">227 </span><span·class="c1">%%·TEST·CASES</span><span·class="w">
228 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">228 </span><span·class="c1">%%--------------------------------------------------------------------</span><span·class="w">
  
229 </span><span·class="nf">string</span><span·class="p"·data-group-id="6575846803-34">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-34">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">229 </span><span·class="nf">string</span><span·class="p"·data-group-id="6025772817-34">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-34">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
230 ····</span><span·class="nf">insert_and_lookup</span><span·class="p"·data-group-id="6575846803-35">(</span><span·class="ss">dummy_key</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Dummy·string&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·f07bffb4f3e8c7c5b487df9122fa3685821a9e7a85702c1908eb634893bb3e11·...·]-35">)</span><span·class="p">.</span><span·class="w">230 ····</span><span·class="nf">insert_and_lookup</span><span·class="p"·data-group-id="6025772817-35">(</span><span·class="ss">dummy_key</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Dummy·string&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·664924720646da7a2609832d8c41c3f34412de1acfe76ee895683cfea51a5706·...·]-35">)</span><span·class="p">.</span><span·class="w">
  
231 </span><span·class="nf">integer</span><span·class="p"·data-group-id="6575846803-36">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 </span><span·class="nf">integer</span><span·class="p"·data-group-id="6025772817-36">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 ····</span><span·class="nf">insert_and_lookup</span><span·class="p"·data-group-id="6575846803-37">(</span><span·class="ss">dummy_key</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-37">)</span><span·class="p">.</span><span·class="w">232 ····</span><span·class="nf">insert_and_lookup</span><span·class="p"·data-group-id="6025772817-37">(</span><span·class="ss">dummy_key</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-37">)</span><span·class="p">.</span><span·class="w">
  
  
233 </span><span·class="nf">insert_and_lookup</span><span·class="p"·data-group-id="6575846803-38">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Value</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">233 </span><span·class="nf">insert_and_lookup</span><span·class="p"·data-group-id="6025772817-38">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Value</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
234 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6575846803-39">(</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-39">)</span><span·class="p">,</span><span·class="w">234 ····</span><span·class="n">Ref</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6025772817-39">(</span><span·class="ss">con_ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-39">)</span><span·class="p">,</span><span·class="w">
235 ····</span><span·class="n">TableName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6575846803-40">(</span><span·class="ss">table_name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6575846803-40">)</span><span·class="p">,</span><span·class="w">235 ····</span><span·class="n">TableName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="6025772817-40">(</span><span·class="ss">table_name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="6025772817-40">)</span><span·class="p">,</span><span·class="w">
236 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="6575846803-41">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TableName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·63,·SHA:·02aa946645c3c21975053d85bd2052e69dc3e5102c481784fbd299a9c3cc75df·...·]-41">)</span><span·class="p">,</span><span·class="w">236 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="6025772817-41">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TableName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·63,·SHA:·814f568033cf4e374fef825d4de561536c2148cc537a7d0233074de19d8c1d67·...·]-41">)</span><span·class="p">,</span><span·class="w">
237 ····</span><span·class="p"·data-group-id="6575846803-42">[</span><span·class="n">Value</span><span·class="p"·data-group-id="6575846803-42">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">lookup</span>[·...·truncated·by·diffoscope;·len:·275,·SHA:·6d4c56b2b44f641d7f18cf8c8d0ace92c65c1dace47e529b87e04914fffbaa70·...·]-43">)</span><span·class="p">,</span><span·class="w">237 ····</span><span·class="p"·data-group-id="6025772817-42">[</span><span·class="n">Value</span><span·class="p"·data-group-id="6025772817-42">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">db</span><span·class="p">:</span><span·class="nf">lookup</span>[·...·truncated·by·diffoscope;·len:·275,·SHA:·02b052236ec3065ad1d13411de02ba9b53b38ca11b3554d15a94445501c10dfe·...·]-43">)</span><span·class="p">,</span><span·class="w">
Max diff block lines reached; 42816/79986 bytes (53.53%) of diff not shown.
709 B
html2text {}
Max HTML report size reached
26.6 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/getting_started_chapter.html
    
Offset 165, 61 lines modifiedOffset 165, 61 lines modified
165 ··</a>165 ··</a>
166 ··<span·class="text">A·Simple·Test·Suite</span>166 ··<span·class="text">A·Simple·Test·Suite</span>
167 </h2>167 </h2>
168 <p>As·shown·in·section·<a·href="basics_chapter.html#External_Interfaces">Common·Test·Basics</a>,168 <p>As·shown·in·section·<a·href="basics_chapter.html#External_Interfaces">Common·Test·Basics</a>,
169 the·test·suite·module·implements·<a·href="ct_suite.html">callback·functions</a>·(mandatory169 the·test·suite·module·implements·<a·href="ct_suite.html">callback·functions</a>·(mandatory
170 or·optional)·for·various·purposes,·for·example:</p><ul><li>Init/end·configuration·function·for·the·test·suite</li><li>Init/end·configuration·function·for·a·test·case</li><li>Init/end·configuration·function·for·a·test·case·group</li><li>Test·cases</li></ul><p>The·configuration·functions·are·optional.·The·following·example·is·a·test·suite170 or·optional)·for·various·purposes,·for·example:</p><ul><li>Init/end·configuration·function·for·the·test·suite</li><li>Init/end·configuration·function·for·a·test·case</li><li>Init/end·configuration·function·for·a·test·case·group</li><li>Test·cases</li></ul><p>The·configuration·functions·are·optional.·The·following·example·is·a·test·suite
171 without·configuration·functions,·including·one·simple·test·case,·to·check·that171 without·configuration·functions,·including·one·simple·test·case,·to·check·that
172 module·<code·class="inline">mymod</code>·exists·(that·is,·can·be·successfully·loaded·by·the·code·server):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9792061331-1">(</span><span·class="ss">my1st_SUITE</span><span·class="p"·data-group-id="9792061331-1">)</span><span·class="p">.</span><span·class="w">172 module·<code·class="inline">mymod</code>·exists·(that·is,·can·be·successfully·loaded·by·the·code·server):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8031440894-1">(</span><span·class="ss">my1st_SUITE</span><span·class="p"·data-group-id="8031440894-1">)</span><span·class="p">.</span><span·class="w">
173 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="9792061331-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="9792061331-2">)</span><span·class="p">.</span><span·class="w">173 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="8031440894-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="8031440894-2">)</span><span·class="p">.</span><span·class="w">
  
174 </span><span·class="nf">all</span><span·class="p"·data-group-id="9792061331-3">(</span><span·class="p"·data-group-id="9792061331-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">174 </span><span·class="nf">all</span><span·class="p"·data-group-id="8031440894-3">(</span><span·class="p"·data-group-id="8031440894-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
175 ····</span><span·class="p"·data-group-id="9792061331-4">[</span><span·class="ss">mod_exists</span><span·class="p"·data-group-id="9792061331-4">]</span><span·class="p">.</span><span·class="w">175 ····</span><span·class="p"·data-group-id="8031440894-4">[</span><span·class="ss">mod_exists</span><span·class="p"·data-group-id="8031440894-4">]</span><span·class="p">.</span><span·class="w">
  
176 </span><span·class="nf">mod_exists</span><span·class="p"·data-group-id="9792061331-5">(</span><span·class="p">_</span><span·class="p"·data-group-id="9792061331-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 </span><span·class="nf">mod_exists</span><span·class="p"·data-group-id="8031440894-5">(</span><span·class="p">_</span><span·class="p"·data-group-id="8031440894-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ····</span><span·class="p"·data-group-id="9792061331-6">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">mymod</span><span·class="p"·data-group-id="9792061331-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</spa[·...·truncated·by·diffoscope;·len:·182,·SHA:·bbc01f1e0a343d51b452417d26b2258fada98380e30a9ab8686066986ab3de98·...·]-7">)</span><span·class="p">.</span></code></pre><p>If·the·operation·fails,·a·bad·match·error·occurs·that·terminates·the·test·case.</p><h2·id="a-test-suite-with-configuration-functions"·class="section-heading">177 ····</span><span·class="p"·data-group-id="8031440894-6">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">mymod</span><span·class="p"·data-group-id="8031440894-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</spa[·...·truncated·by·diffoscope;·len:·182,·SHA:·0a3e8df399d3a7f43c9b3a380ce28a5067e0cca3150c43e78f2670cdf7471ec7·...·]-7">)</span><span·class="p">.</span></code></pre><p>If·the·operation·fails,·a·bad·match·error·occurs·that·terminates·the·test·case.</p><h2·id="a-test-suite-with-configuration-functions"·class="section-heading">
178 ··<a·href="#a-test-suite-with-configuration-functions"·class="hover-link">178 ··<a·href="#a-test-suite-with-configuration-functions"·class="hover-link">
179 ····<i·class="ri-link-m"·aria-hidden="true"></i>179 ····<i·class="ri-link-m"·aria-hidden="true"></i>
180 ··</a>180 ··</a>
181 ··<span·class="text">A·Test·Suite·with·Configuration·Functions</span>181 ··<span·class="text">A·Test·Suite·with·Configuration·Functions</span>
182 </h2>182 </h2>
183 <p>If·you·need·to·perform·configuration·operations·to·run·your·test,·you·can183 <p>If·you·need·to·perform·configuration·operations·to·run·your·test,·you·can
184 implement·configuration·functions·in·your·suite.·The·result·from·a·configuration184 implement·configuration·functions·in·your·suite.·The·result·from·a·configuration
185 function·is·configuration·data,·or·<code·class="inline">Config</code>.·This·is·a·list·of·key-value·tuples185 function·is·configuration·data,·or·<code·class="inline">Config</code>.·This·is·a·list·of·key-value·tuples
186 that·get·passed·from·the·configuration·function·to·the·test·cases·(possibly186 that·get·passed·from·the·configuration·function·to·the·test·cases·(possibly
187 through·configuration·functions·on·&quot;lower·level&quot;).·The·data·flow·looks·as187 through·configuration·functions·on·&quot;lower·level&quot;).·The·data·flow·looks·as
188 follows:</p><p><img·src="assets/config.gif"·alt="Configuration·Data·Flow·in·a·Suite"·title="Configuration·Data·Flow·in·a·Suite"/></p><p>The·following·example·shows·a·test·suite·that·uses·configuration·functions·to188 follows:</p><p><img·src="assets/config.gif"·alt="Configuration·Data·Flow·in·a·Suite"·title="Configuration·Data·Flow·in·a·Suite"/></p><p>The·following·example·shows·a·test·suite·that·uses·configuration·functions·to
189 open·and·close·a·log·file·for·the·test·cases·(an·operation·that·is·unnecessary189 open·and·close·a·log·file·for·the·test·cases·(an·operation·that·is·unnecessary
190 and·irrelevant·to·perform·by·each·test·case):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7322147195-1">(</span><span·class="ss">check_log_SUITE</span><span·class="p"·data-group-id="7322147195-1">)</span><span·class="p">.</span><span·class="w">190 and·irrelevant·to·perform·by·each·test·case):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1420877061-1">(</span><span·class="ss">check_log_SUITE</span><span·class="p"·data-group-id="1420877061-1">)</span><span·class="p">.</span><span·class="w">
191 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7322147195-2">(</span><span·class="p"·data-group-id="7322147195-3">[</span><span·class="ss">all</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init_per_suite</span><span·class="p">/</[·...·truncated·by·diffoscope;·len:·258,·SHA:·0b8545353206bf62b8dfb19e4aa146d9c39589d2ebf2dcbb9dc0239188ca516d·...·]-2">)</span><span·class="p">.</span><span·class="w">191 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1420877061-2">(</span><span·class="p"·data-group-id="1420877061-3">[</span><span·class="ss">all</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init_per_suite</span><span·class="p">/</[·...·truncated·by·diffoscope;·len:·258,·SHA:·c63ce55ba525e15cf70ae7e8afcf15f4102e2af82b36e02b20f5210084d6c85d·...·]-2">)</span><span·class="p">.</span><span·class="w">
192 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7322147195-4">(</span><span·class="p"·data-group-id="7322147195-5">[</span><span·class="ss">check_restart_result</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">check_no_errors</span><[·...·truncated·by·diffoscope;·len:·142,·SHA:·99ece29de928ffe315172a41bdc22fe90aa18cb3efdb3d236c803e0803def22b·...·]-4">)</span><span·class="p">.</span><span·class="w">192 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1420877061-4">(</span><span·class="p"·data-group-id="1420877061-5">[</span><span·class="ss">check_restart_result</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">check_no_errors</span><[·...·truncated·by·diffoscope;·len:·142,·SHA:·95ccba2b0b61a334edc4b4e838565e4b7cfb1ffcc17559525d8687d93a421e21·...·]-4">)</span><span·class="p">.</span><span·class="w">
193 </span><span·class="w">193 </span><span·class="w">
194 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7322147195-6">(</span><span·class="nf">value</span><span·class="p"·data-group-id="7322147195-7">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="7322147195-7">)</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·344,·SHA:·204dcb7a33bb12d27e7d6049ba637bd6929b991fb65a22c657f978d7df0bcfaf·...·]-6">)</span><span·class="p">.</span><span·class="w">194 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="1420877061-6">(</span><span·class="nf">value</span><span·class="p"·data-group-id="1420877061-7">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="n">Config</span><span·class="p"·data-group-id="1420877061-7">)</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·344,·SHA:·dda3f93abea8f4fde9eeae44e65d1964ec1a07808f15578de3cca425457026b3·...·]-6">)</span><span·class="p">.</span><span·class="w">
  
195 </span><span·class="nf">all</span><span·class="p"·data-group-id="7322147195-9">(</span><span·class="p"·data-group-id="7322147195-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7322147195-10">[</span><span·class="ss">check_restart_result</span><span·c[·...·truncated·by·diffoscope;·len:·121,·SHA:·0dd5f2ee1f607a7738d126769dd0b1081af02b1ebaa0b255863e8243247b2b34·...·]-10">]</span><span·class="p">.</span><span·class="w">195 </span><span·class="nf">all</span><span·class="p"·data-group-id="1420877061-9">(</span><span·class="p"·data-group-id="1420877061-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1420877061-10">[</span><span·class="ss">check_restart_result</span><span·c[·...·truncated·by·diffoscope;·len:·121,·SHA:·f9561283965ee5ac9ac165cb8868f06a408cd8c1462ca8d09eb40adde914a624·...·]-10">]</span><span·class="p">.</span><span·class="w">
  
196 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="7322147195-11">(</span><span·class="n">InitConfigData</span><span·class="p"·data-group-id="7322147195-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">196 </span><span·class="nf">init_per_suite</span><span·class="p"·data-group-id="1420877061-11">(</span><span·class="n">InitConfigData</span><span·class="p"·data-group-id="1420877061-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
197 ····</span><span·class="p"·data-group-id="7322147195-12">[</span><span·class="p"·data-group-id="7322147195-13">{</span><span·class="ss">logref</span><span·class="p">,</span><span·class="nf">open_log</span><span·class="p"·data-group-id="7322147195-14">(</span><span·class="p"·data-group-id="73221471[·...·truncated·by·diffoscope;·len:·219,·SHA:·8f9b4755341fbb7f4b4f97c67bccc16d67a6b879007dac14631ebec3c1b2d39a·...·]-12">]</span><span·class="p">.</span><span·class="w">197 ····</span><span·class="p"·data-group-id="1420877061-12">[</span><span·class="p"·data-group-id="1420877061-13">{</span><span·class="ss">logref</span><span·class="p">,</span><span·class="nf">open_log</span><span·class="p"·data-group-id="1420877061-14">(</span><span·class="p"·data-group-id="14208770[·...·truncated·by·diffoscope;·len:·219,·SHA:·bfd920b6debf8848c8f640a7299ea859cff3be4dc395bfb9103ebf7b429d7e82·...·]-12">]</span><span·class="p">.</span><span·class="w">
  
198 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="7322147195-15">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="7322147195-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">198 </span><span·class="nf">end_per_suite</span><span·class="p"·data-group-id="1420877061-15">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="1420877061-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
199 ····</span><span·class="nf">close_log</span><span·class="p"·data-group-id="7322147195-16">(</span><span·class="o">?</span><span·class="nf">value</span><span·class="p"·data-group-id="7322147195-17">(</span><span·class="ss">logref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ConfigData</span><span·class="p"[·...·truncated·by·diffoscope;·len:·80,·SHA:·5d2bd60ccc83792058e582530b1bd3003ee6b2eb80442e40951eb6ea7100fe84·...·]-16">)</span><span·class="p">.</span><span·class="w">199 ····</span><span·class="nf">close_log</span><span·class="p"·data-group-id="1420877061-16">(</span><span·class="o">?</span><span·class="nf">value</span><span·class="p"·data-group-id="1420877061-17">(</span><span·class="ss">logref</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ConfigData</span><span·class="p"[·...·truncated·by·diffoscope;·len:·80,·SHA:·f8a434360ca849b328c2deb5362e3c72a2bdb69d0a6e52aac0c6c48788396a6d·...·]-16">)</span><span·class="p">.</span><span·class="w">
  
200 </span><span·class="nf">check_restart_result</span><span·class="p"·data-group-id="7322147195-18">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="7322147195-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">200 </span><span·class="nf">check_restart_result</span><span·class="p"·data-group-id="1420877061-18">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="1420877061-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
201 ····</span><span·class="n">TestData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">read_log</span><span·class="p"·data-group-id="7322147195-19">(</span><span·class="ss">restart</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="nf">value</span><span·class="p"·data-group-id="7322147195-20">(</span><span·class="ss">logref</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·159,·SHA:·37b47960d568e4c8fce7da2ce50bba4b2e93eb692ada4506ab72db14259a1217·...·]-19">)</span><span·class="p">,</span><span·class="w">201 ····</span><span·class="n">TestData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">read_log</span><span·class="p"·data-group-id="1420877061-19">(</span><span·class="ss">restart</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="nf">value</span><span·class="p"·data-group-id="1420877061-20">(</span><span·class="ss">logref</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·159,·SHA:·a6370a7fcaf70924e1faef4e351fba06d0bdd167e1996d27799f43f4cd6a11a1·...·]-19">)</span><span·class="p">,</span><span·class="w">
202 ····</span><span·class="p"·data-group-id="7322147195-21">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p">_</span><span·class="n">Line</span><span·class="p"·data-group-id="7322147195-21">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·258,·SHA:·27a202c9d6afab1d6da0d8fce76e1f6a2205327995958151a8d8b06935234789·...·]-22">)</span><span·class="p">.</span><span·class="w">202 ····</span><span·class="p"·data-group-id="1420877061-21">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p">_</span><span·class="n">Line</span><span·class="p"·data-group-id="1420877061-21">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·258,·SHA:·911ee7cf16722d28b4b30854f3cd1181b43d0fa16a0512f586f23be91d11aa6d·...·]-22">)</span><span·class="p">.</span><span·class="w">
  
203 </span><span·class="nf">check_no_errors</span><span·class="p"·data-group-id="7322147195-23">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="7322147195-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">203 </span><span·class="nf">check_no_errors</span><span·class="p"·data-group-id="1420877061-23">(</span><span·class="n">ConfigData</span><span·class="p"·data-group-id="1420877061-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
204 ····</span><span·class="n">TestData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">read_log</span><span·class="p"·data-group-id="7322147195-24">(</span><span·class="ss">all</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="nf">value</span><span·class="p"·data-group-id="7322147195-25">(</span><span·class="ss">logref</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·155,·SHA:·295b059854dc0d137d14b2ee6cc6f5126d277c0344699ad844a67feea3295563·...·]-24">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="n">TestData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">read_log</span><span·class="p"·data-group-id="1420877061-24">(</span><span·class="ss">all</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="nf">value</span><span·class="p"·data-group-id="1420877061-25">(</span><span·class="ss">logref</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·155,·SHA:·a213145d69f59013cdc90fd705f81bdaeed1c141bda26085f1e4c156866e6e00·...·]-24">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">search_for</span><span·class="p"·data-group-id="7322147195-26">(</span><span·class="s">&quot;error&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TestData</span><span·class="p"·data-group-id="7322147195-26">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">205 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">search_for</span><span·class="p"·data-group-id="1420877061-26">(</span><span·class="s">&quot;error&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TestData</span><span·class="p"·data-group-id="1420877061-26">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
206 ········</span><span·class="p"·data-group-id="7322147195-27">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="n">Line</span><span·class="p"·data-group-id="7322147195-27">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">ct</sp[·...·truncated·by·diffoscope;·len:·351,·SHA:·86a204cf1174adf822559c5b0f51664583aff207945e5b9acd018b7275f07190·...·]-28">)</span><span·class="p">;</span><span·class="w">206 ········</span><span·class="p"·data-group-id="1420877061-27">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="n">Line</span><span·class="p"·data-group-id="1420877061-27">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">ct</sp[·...·truncated·by·diffoscope;·len:·351,·SHA:·297eaf075516bdba2df6a1fd34b37a257b2ce53f0caa11fe5f55c8d2de2168f7·...·]-28">)</span><span·class="p">;</span><span·class="w">
207 ········</span><span·class="ss">nomatch</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">207 ········</span><span·class="ss">nomatch</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">
208 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·test·cases·verify,·by·parsing·a·log·file,·that·our·SUT·has·performed·a208 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·test·cases·verify,·by·parsing·a·log·file,·that·our·SUT·has·performed·a
209 successful·restart·and·that·no·unexpected·errors·are·printed.</p><p>To·execute·the·test·cases·in·the·recent·test·suite,·type·the·following·on·the209 successful·restart·and·that·no·unexpected·errors·are·printed.</p><p>To·execute·the·test·cases·in·the·recent·test·suite,·type·the·following·on·the
210 UNIX/Linux·command·line·(assuming·that·the·suite·module·is·in·the·current210 UNIX/Linux·command·line·(assuming·that·the·suite·module·is·in·the·current
211 working·directory):</p><pre><code·class="text">$·ct_run·-dir·.</code></pre><p>or:</p><pre><code·class="text">$·ct_run·-suite·check_log_SUITE</code></pre><p>To·use·the·Erlang·shell·to·run·our·test,·you·can·evaluate·the·following·call:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">run_test</span><span·class="p"·data-group-id="1876048523-1">(</span><span·class="p"·data-group-id="1876048523-2">[</span><span·class="p"·data-group-id="1876048523-3">{</span><span·class="ss">dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.&quot;</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·795,·SHA:·0c4707cfae5ee94d6308b7aa60378485a3965ab73165d58ca1958ed9870f4181·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·result·from·running·the·test·is·printed·in·log·files·in·HTML·format·(stored211 working·directory):</p><pre><code·class="text">$·ct_run·-dir·.</code></pre><p>or:</p><pre><code·class="text">$·ct_run·-suite·check_log_SUITE</code></pre><p>To·use·the·Erlang·shell·to·run·our·test,·you·can·evaluate·the·following·call:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ct</span><span·class="p">:</span><span·class="nf">run_test</span><span·class="p"·data-group-id="2777845951-1">(</span><span·class="p"·data-group-id="2777845951-2">[</span><span·class="p"·data-group-id="2777845951-3">{</span><span·class="ss">dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.&quot;</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·795,·SHA:·e1fedf780c48f7052c6ba50ec6166026fb8e97a8e0bd829ff692119d84f34394·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·result·from·running·the·test·is·printed·in·log·files·in·HTML·format·(stored
212 in·unique·log·directories·on·a·different·level).·The·following·illustration212 in·unique·log·directories·on·a·different·level).·The·following·illustration
213 shows·the·log·file·structure:</p><p><img·src="assets/html_logs.gif"·alt="HTML·Log·File·Structure"·title="HTML·Log·File·Structure"/></p><h2·id="questions-and-answers"·class="section-heading">213 shows·the·log·file·structure:</p><p><img·src="assets/html_logs.gif"·alt="HTML·Log·File·Structure"·title="HTML·Log·File·Structure"/></p><h2·id="questions-and-answers"·class="section-heading">
214 ··<a·href="#questions-and-answers"·class="hover-link">214 ··<a·href="#questions-and-answers"·class="hover-link">
215 ····<i·class="ri-link-m"·aria-hidden="true"></i>215 ····<i·class="ri-link-m"·aria-hidden="true"></i>
216 ··</a>216 ··</a>
217 ··<span·class="text">Questions·and·Answers</span>217 ··<span·class="text">Questions·and·Answers</span>
218 </h2>218 </h2>
Offset 293, 15 lines modifiedOffset 293, 15 lines modified
293 ······<p·class="built-using">293 ······<p·class="built-using">
294 ········Built·using294 ········Built·using
295 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the295 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
296 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>296 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
297 ······</p>297 ······</p>
298 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>298 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
299 ····</footer>299 ····</footer>
300 ··</div>300 ··</div>
301 </main>301 </main>
302 </div>302 </div>
303 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>303 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
304 <script>304 <script>
305 ··document.addEventListener("DOMContentLoaded",·function·()·{305 ··document.addEventListener("DOMContentLoaded",·function·()·{
752 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/install_chapter.html
    
Offset 186, 15 lines modifiedOffset 186, 15 lines modified
186 ······<p·class="built-using">186 ······<p·class="built-using">
187 ········Built·using187 ········Built·using
188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
190 ······</p>190 ······</p>
191 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
192 ····</footer>192 ····</footer>
193 ··</div>193 ··</div>
194 </main>194 </main>
195 </div>195 </div>
196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
197 <script>197 <script>
198 ··document.addEventListener("DOMContentLoaded",·function·()·{198 ··document.addEventListener("DOMContentLoaded",·function·()·{
781 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/introduction.html
    
Offset 200, 15 lines modifiedOffset 200, 15 lines modified
200 ······<p·class="built-using">200 ······<p·class="built-using">
201 ········Built·using201 ········Built·using
202 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the202 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
203 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>203 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
204 ······</p>204 ······</p>
205 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>205 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
206 ····</footer>206 ····</footer>
207 ··</div>207 ··</div>
208 </main>208 </main>
209 </div>209 </div>
210 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>210 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
211 <script>211 <script>
212 ··document.addEventListener("DOMContentLoaded",·function·()·{212 ··document.addEventListener("DOMContentLoaded",·function·()·{
752 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/notes.html
    
Offset 2655, 15 lines modifiedOffset 2655, 15 lines modified
2655 ······<p·class="built-using">2655 ······<p·class="built-using">
2656 ········Built·using2656 ········Built·using
2657 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2657 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2658 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2658 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2659 ······</p>2659 ······</p>
2660 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2660 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2661 ····</footer>2661 ····</footer>
2662 ··</div>2662 ··</div>
2663 </main>2663 </main>
2664 </div>2664 </div>
2665 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2665 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2666 <script>2666 <script>
2667 ··document.addEventListener("DOMContentLoaded",·function·()·{2667 ··document.addEventListener("DOMContentLoaded",·function·()·{
705 B
html2text {}
Max HTML report size reached
200 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/run_test_chapter.html
Max HTML report size reached
1.28 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
467 B
html2text {}
Max HTML report size reached
1.67 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/test_structure_chapter.html
    
Offset 232, 15 lines modifiedOffset 232, 15 lines modified
232 ······<p·class="built-using">232 ······<p·class="built-using">
233 ········Built·using233 ········Built·using
234 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the234 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
235 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>235 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
236 ······</p>236 ······</p>
237 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>237 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
238 ····</footer>238 ····</footer>
239 ··</div>239 ··</div>
240 </main>240 </main>
241 </div>241 </div>
242 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>242 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
243 <script>243 <script>
244 ··document.addEventListener("DOMContentLoaded",·function·()·{244 ··document.addEventListener("DOMContentLoaded",·function·()·{
835 B
html2text {}
Max HTML report size reached
9.7 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/unix_telnet.html
    
Offset 125, 22 lines modifiedOffset 125, 22 lines modified
125 ····<small·class="app-vsn"·translate="no">(common_test·v1.27)</small>125 ····<small·class="app-vsn"·translate="no">(common_test·v1.27)</small>
  
126 ··</h1>126 ··</h1>
  
  
127 ····<section·id="moduledoc">127 ····<section·id="moduledoc">
128 <p>Callback·module·for·ct_telnet,·for·connecting·to·a·Telnet·server·on·a·UNIX·host.</p><p>Callback·module·for·<a·href="ct_telnet.html"><code·class="inline">ct_telnet</code></a>,·for·connecting·to·a·Telnet·server·on·a·UNIX128 <p>Callback·module·for·ct_telnet,·for·connecting·to·a·Telnet·server·on·a·UNIX·host.</p><p>Callback·module·for·<a·href="ct_telnet.html"><code·class="inline">ct_telnet</code></a>,·for·connecting·to·a·Telnet·server·on·a·UNIX
129 host.</p><p>It·requires·the·following·entry·in·the·configuration·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7551343318-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id="7551343318-2">[</span><span·class="p"·data-group-id="7551343318-3">{</span><span·class="ss">telnet</span><span·class="p">,</span><span·class="n">HostNameOrIpAddress</span><span·class="p"·data-group-id="7551343318-3">}</span><span·class="p">,</span><span·class="w"> 
130 ·······</span><span·class="p"·data-group-id="7551343318-4">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="n">PortNum</span><span·class="p"·data-group-id="7551343318-4">}</span><span·class="p">,</span><span·class="w">··············[·...·truncated·by·diffoscope;·len:·37,·SHA:·896a8775962438d09ec4b496c4b9822b3bc7e4bc0b7dd4f37d47c5b9c71c9ed0·...·]</span><span·class="w">129 host.</p><p>It·requires·the·following·entry·in·the·configuration·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9264868350-1">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·243,·SHA:·7493e7fdb96d93d01476d0152c3c6d736575f330e69ae07c341a4259235d2a4c·...·]</span><span·class="w">
 130 ·······</span><span·class="p"·data-group-id="9264868350-4">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="n">PortNum</span><span·class="p"·data-group-id="9264868350-4">}</span><span·class="p">,</span><span·class="w">·················</span><span·class="c1">%·optional</span><span·class="w">
131 ·······</span><span·class="p"·data-group-id="7551343318-5">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">UserName</span><span·class="p"·data-group-id="7551343318-5">}</span><span·class="p">,</span><span·class="w">131 ·······</span><span·class="p"·data-group-id="9264868350-5">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="n">UserName</span><span·class="p"·data-group-id="9264868350-5">}</span><span·class="p">,</span><span·class="w">
132 ·······</span><span·class="p"·data-group-id="7551343318-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="7551343318-6">}</span><span·class="p">,</span><span·class="w"> 
133 ·······</span><span·class="p"·data-group-id="7551343318-7">{</span><span·class="ss">keep_alive</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="7551343318-7">}</span><span·class="p"·data-group-id="7551343318-2">]</span><span·class="p"·data-group-id="7551343318-1[·...·truncated·by·diffoscope;·len:·222,·SHA:·67878fdbd1e304a1346f863eba7ee32a4a28313966a3fd87470af519a65c4b5e·...·]132 ·······</span><span·class="p"·data-group-id="9264868350-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="9264868350-6">}</span><span·class="p">,</span><span·class="w">
 133 ·······</span><span·class="p"·data-group-id="9264868350-7">{</span><span·class="ss">keep_alive</span><span·class="p">,</span><span·class="n">Bool</span><span·class="p"·data-group-id="9264868350-7">}</span><span·class="p"·data-group-id="9264868350-2">]</span><span·class="p"·data-group-id="9264868350-1">}</span><span·class="p">.</span><span·class="w">············</span><span·class="c1">%·optional</span></code></pre><p>To·communicate·through·Telnet·to·the·host·specified·by·<code·class="inline">HostNameOrIpAddress</code>,
134 use·the·interface·functions·in·<a·href="ct_telnet.html"><code·class="inline">ct_telnet</code></a>,·for·example,·<code·class="inline">open(Name)</code>·and134 use·the·interface·functions·in·<a·href="ct_telnet.html"><code·class="inline">ct_telnet</code></a>,·for·example,·<code·class="inline">open(Name)</code>·and
135 <code·class="inline">cmd(Name,Cmd)</code>.</p><p><code·class="inline">Name</code>·is·the·name·you·allocated·to·the·Unix·host·in·your·<code·class="inline">require</code>·statement,135 <code·class="inline">cmd(Name,Cmd)</code>.</p><p><code·class="inline">Name</code>·is·the·name·you·allocated·to·the·Unix·host·in·your·<code·class="inline">require</code>·statement,
136 for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="8568487438-1">(</span><span·class="p"·data-group-id="8568487438-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8568487438-2">[</span><span·class="p"·data-group-id="8568487438-3">{</span><[·...·truncated·by·diffoscope;·len:·1119,·SHA:·1d328de4d0764a8555889f1fa68e29d7167faa6df5929a42e0ab38d72b117148·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·&quot;keep·alive&quot;·activity·(that·is,·that·<code·class="inline">Common·Test</code>·sends·NOP·to·the·server136 for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="8500274516-1">(</span><span·class="p"·data-group-id="8500274516-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8500274516-2">[</span><span·class="p"·data-group-id="8500274516-3">{</span><[·...·truncated·by·diffoscope;·len:·1119,·SHA:·b1021d849cbc6cf6798f8f879c8f7c69fe098b6c529dd8edf61b3f80a2064b73·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·&quot;keep·alive&quot;·activity·(that·is,·that·<code·class="inline">Common·Test</code>·sends·NOP·to·the·server
137 every·10·seconds·if·the·connection·is·idle)·can·be·enabled·or·disabled·for·one137 every·10·seconds·if·the·connection·is·idle)·can·be·enabled·or·disabled·for·one
138 particular·connection·as·described·here.·It·can·be·disabled·for·all·connections138 particular·connection·as·described·here.·It·can·be·disabled·for·all·connections
139 using·<code·class="inline">telnet_settings</code>·(see·<a·href="ct_telnet.html"><code·class="inline">ct_telnet</code></a>).</p><p>The·<code·class="inline">{port,PortNum}</code>·tuple·is·optional·and·if·omitted,·default·Telnet·port·23·is139 using·<code·class="inline">telnet_settings</code>·(see·<a·href="ct_telnet.html"><code·class="inline">ct_telnet</code></a>).</p><p>The·<code·class="inline">{port,PortNum}</code>·tuple·is·optional·and·if·omitted,·default·Telnet·port·23·is
140 used.·Also·the·<code·class="inline">keep_alive</code>·tuple·is·optional,·and·the·value·default·to·<code·class="inline">true</code>140 used.·Also·the·<code·class="inline">keep_alive</code>·tuple·is·optional,·and·the·value·default·to·<code·class="inline">true</code>
141 (enabled).</p><h2·id="module-see-also"·class="section-heading">141 (enabled).</p><h2·id="module-see-also"·class="section-heading">
142 ··<a·href="#module-see-also"·class="hover-link">142 ··<a·href="#module-see-also"·class="hover-link">
143 ····<i·class="ri-link-m"·aria-hidden="true"></i>143 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 292, 15 lines modifiedOffset 292, 15 lines modified
292 ······<p·class="built-using">292 ······<p·class="built-using">
293 ········Built·using293 ········Built·using
294 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the294 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
295 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>295 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
296 ······</p>296 ······</p>
297 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>297 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
298 ····</footer>298 ····</footer>
299 ··</div>299 ··</div>
300 </main>300 </main>
301 </div>301 </div>
302 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>302 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
303 <script>303 <script>
304 ··document.addEventListener("DOMContentLoaded",·function·()·{304 ··document.addEventListener("DOMContentLoaded",·function·()·{
609 B
html2text {}
Max HTML report size reached
1.72 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/why_test_chapter.html
    
Offset 206, 15 lines modifiedOffset 206, 15 lines modified
206 ······<p·class="built-using">206 ······<p·class="built-using">
207 ········Built·using207 ········Built·using
208 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the208 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
209 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>209 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
210 ······</p>210 ······</p>
211 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>211 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
212 ····</footer>212 ····</footer>
213 ··</div>213 ··</div>
214 </main>214 </main>
215 </div>215 </div>
216 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>216 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
217 <script>217 <script>
218 ··document.addEventListener("DOMContentLoaded",·function·()·{218 ··document.addEventListener("DOMContentLoaded",·function·()·{
896 B
html2text {}
Max HTML report size reached
111 KB
./usr/share/doc/erlang-doc/html/lib/common_test-1.27/doc/html/write_test_chapter.html
    
Offset 262, 58 lines modifiedOffset 262, 58 lines modified
262 <a·href="write_test_chapter.html#timetraps">Timetrap·Time-Outs</a>.</p></li><li><p><strong><code·class="inline">userdata</code></strong>·-·Specifies·any·data·related·to·the·test·case.·This·data·can·be262 <a·href="write_test_chapter.html#timetraps">Timetrap·Time-Outs</a>.</p></li><li><p><strong><code·class="inline">userdata</code></strong>·-·Specifies·any·data·related·to·the·test·case.·This·data·can·be
263 retrieved·at·any·time·using·the·<a·href="ct.html#userdata/3"><code·class="inline">ct:userdata/3</code></a>·utility·function.</p></li><li><p><strong><code·class="inline">silent_connections</code></strong>·-·For·details,·see·section263 retrieved·at·any·time·using·the·<a·href="ct.html#userdata/3"><code·class="inline">ct:userdata/3</code></a>·utility·function.</p></li><li><p><strong><code·class="inline">silent_connections</code></strong>·-·For·details,·see·section
264 <a·href="run_test_chapter.html#silent_connections">Silent·Connections</a>.</p></li><li><p><strong><code·class="inline">require</code></strong>·-·Specifies·configuration·variables·required·by·the·test·case.264 <a·href="run_test_chapter.html#silent_connections">Silent·Connections</a>.</p></li><li><p><strong><code·class="inline">require</code></strong>·-·Specifies·configuration·variables·required·by·the·test·case.
265 If·the·required·configuration·variables·are·not·found·in·any·of·the·test265 If·the·required·configuration·variables·are·not·found·in·any·of·the·test
266 system·configuration·files,·the·test·case·is·skipped.</p><p>A·required·variable·can·also·be·given·a·default·value·to·be·used·if·the266 system·configuration·files,·the·test·case·is·skipped.</p><p>A·required·variable·can·also·be·given·a·default·value·to·be·used·if·the
267 variable·is·not·found·in·any·configuration·file.·To·specify·a·default·value,267 variable·is·not·found·in·any·configuration·file.·To·specify·a·default·value,
268 add·a·tuple·on·the·form·<code·class="inline">{default_config,ConfigVariableName,Value}</code>·to·the268 add·a·tuple·on·the·form·<code·class="inline">{default_config,ConfigVariableName,Value}</code>·to·the
269 test·case·information·list·(the·position·in·the·list·is·irrelevant).</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">testcase1</span><span·class="p"·data-group-id="4160804828-1">(</span><span·class="p"·data-group-id="4160804828-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">269 test·case·information·list·(the·position·in·the·list·is·irrelevant).</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">testcase1</span><span·class="p"·data-group-id="7854413855-1">(</span><span·class="p"·data-group-id="7854413855-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
270 ····</span><span·class="p"·data-group-id="4160804828-2">[</span><span·class="p"·data-group-id="4160804828-3">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ftp</span><span·class="p"·data-group-id="4160804828-3">}</span><span·class="p">,</span><span·class="w">270 ····</span><span·class="p"·data-group-id="7854413855-2">[</span><span·class="p"·data-group-id="7854413855-3">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ftp</span><span·class="p"·data-group-id="7854413855-3">}</span><span·class="p">,</span><span·class="w">
271 ·····</span><span·class="p"·data-group-id="4160804828-4">{</span><span·class="ss">default_config</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4160804828-5">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·195,·SHA:·8c309d0459fcf053a8065195241bfe44356b0bb6374e2901904274d3a33cc6ec·...·]-6">}</span><span·class="p">,</span><span·class="w">271 ·····</span><span·class="p"·data-group-id="7854413855-4">{</span><span·class="ss">default_config</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ftp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7854413855-5">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·195,·SHA:·93b5e77ed012f89c1a0b3c18f1e1913fcdefa7509b84bf55fb3f395a7f7ee142·...·]-6">}</span><span·class="p">,</span><span·class="w">
272 ····························</span><span·class="p"·data-group-id="4160804828-7">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;aladdin&quot;</span><span·class="p"·data-group-id="4160804828-7">}</span><span·class="p">,</span><span·class="w">272 ····························</span><span·class="p"·data-group-id="7854413855-7">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;aladdin&quot;</span><span·class="p"·data-group-id="7854413855-7">}</span><span·class="p">,</span><span·class="w">
273 ····························</span><span·class="p"·data-group-id="4160804828-8">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;sesame&quot;</span><span·class="p"·data-group-id="4160804828-8">}</span><span·class="p"·data-group-id="4160804828-5">]</span><span·c[·...·truncated·by·diffoscope;·len:·335,·SHA:·7183c8b88f3512c2a1e3eead7bcaba702d958393961fb11fa89fabda58714c78·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">273 ····························</span><span·class="p"·data-group-id="7854413855-8">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;sesame&quot;</span><span·class="p"·data-group-id="7854413855-8">}</span><span·class="p"·data-group-id="7854413855-5">]</span><span·c[·...·truncated·by·diffoscope;·len:·335,·SHA:·911e2c4fa363f07538f941c555c2ab7b96253510bdd236d89397b1197b80d66e·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
274 ····</span><span·class="p"·data-group-id="0631480640-2">[</span><span·class="p"·data-group-id="0631480640-3">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">unix_telnet</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">un[·...·truncated·by·diffoscope;·len:·50,·SHA:·321a4477b772c2dc6ccd83b17a35ca20af1a602a2688559fed824a31efb98252·...·]-3">}</span><span·class="p">,</span><span·class="w">274 ····</span><span·class="p"·data-group-id="1973343557-2">[</span><span·class="p"·data-group-id="1973343557-3">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">unix_telnet</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">un[·...·truncated·by·diffoscope;·len:·50,·SHA:·0ea2adb77931fb3c47d3483ec161d754670dca1f8149cef14a29f4a509ff42da·...·]-3">}</span><span·class="p">,</span><span·class="w">
275 ·····</span><span·class="p"·data-group-id="0631480640-4">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0631480640-5">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·364,·SHA:·30ff7406be3ecc1535ea1fa37eef2657b0b3606ac03cda0857ab398391679f84·...·]-4">}</span><span·class="p">,</span><span·class="w">275 ·····</span><span·class="p"·data-group-id="1973343557-4">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1973343557-5">{</span><span·class="ss">unix</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·364,·SHA:·8b9b23f81e4f8f2b84c90208de8f21efa283889c70c7e4671c347a51a9e00e80·...·]-4">}</span><span·class="p">,</span><span·class="w">
276 ·····</span><span·class="p"·data-group-id="0631480640-7">{</span><span·class="ss">default_config</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">unix</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0631480640-8">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·202,·SHA:·4a3247b9069a4e5c00f94920383f3f779cb72fd8a4309bc22af80e4e1e6f1ec5·...·]-9">}</span><span·class="p">,</span><span·class="w">276 ·····</span><span·class="p"·data-group-id="1973343557-7">{</span><span·class="ss">default_config</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">unix</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1973343557-8">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·202,·SHA:·906d0825004910b67efebbad67059376f519fbd339870bba4bd625d17d7decdd·...·]-9">}</span><span·class="p">,</span><span·class="w">
277 ·····························</span><span·class="p"·data-group-id="0631480640-10">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;aladdin&quot;</span><span·class="p"·data-group-id="0631480640-10">}</span><span·class="p">,</span><span·class="w">277 ·····························</span><span·class="p"·data-group-id="1973343557-10">{</span><span·class="ss">username</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;aladdin&quot;</span><span·class="p"·data-group-id="1973343557-10">}</span><span·class="p">,</span><span·class="w">
278 ·····························</span><span·class="p"·data-group-id="0631480640-11">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;sesame&quot;</span><span·class="p"·data-group-id="0631480640-11">}</span><span·class="p"·data-group-id="0631480640-8">]</span><span[·...·truncated·by·diffoscope;·len:·113,·SHA:·9902f881f1f335ecb8bb6079373a841cfc544e2b14941b254f76a8a76e1bccb9·...·]-2">]</span><span·class="p">.</span></code></pre></li></ul><p>For·more·information·about·<code·class="inline">require</code>,·see·section278 ·····························</span><span·class="p"·data-group-id="1973343557-11">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;sesame&quot;</span><span·class="p"·data-group-id="1973343557-11">}</span><span·class="p"·data-group-id="1973343557-8">]</span><span[·...·truncated·by·diffoscope;·len:·113,·SHA:·acc9047c9066d739e0ce4290c16bd3b8e75c68ba631a78275b970e84cc3800a3·...·]-2">]</span><span·class="p">.</span></code></pre></li></ul><p>For·more·information·about·<code·class="inline">require</code>,·see·section
279 <a·href="config_file_chapter.html#require_config_data">Requiring·and·Reading·Configuration·Data</a>279 <a·href="config_file_chapter.html#require_config_data">Requiring·and·Reading·Configuration·Data</a>
280 in·section·External·Configuration·Data·and·function280 in·section·External·Configuration·Data·and·function
281 <a·href="ct.html#require/1"><code·class="inline">ct:require/1/2</code></a>.</p><blockquote><h4·class="info">Note</h4><p>Specifying·a·default·value·for·a·required·variable·can·result·in·a·test·case281 <a·href="ct.html#require/1"><code·class="inline">ct:require/1/2</code></a>.</p><blockquote><h4·class="info">Note</h4><p>Specifying·a·default·value·for·a·required·variable·can·result·in·a·test·case
282 always·getting·executed.·This·might·not·be·a·desired·behavior.</p></blockquote><p>If·<code·class="inline">timetrap</code>·or·<code·class="inline">require</code>,·or·both,·is·not·set·specifically·for·a·particular282 always·getting·executed.·This·might·not·be·a·desired·behavior.</p></blockquote><p>If·<code·class="inline">timetrap</code>·or·<code·class="inline">require</code>,·or·both,·is·not·set·specifically·for·a·particular
283 test·case,·default·values·specified·by·function283 test·case,·default·values·specified·by·function
284 <a·href="ct_suite.html#c:suite/0"><code·class="inline">suite/0</code></a>·are·used.</p><p>Tags·other·than·the·earlier·mentioned·are·ignored·by·the·test·server.</p><p>An·example·of·a·test·case·information·function·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">reboot_node</span><span·class="p"·data-group-id="8841970172-1">(</span><span·class="p"·data-group-id="8841970172-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">284 <a·href="ct_suite.html#c:suite/0"><code·class="inline">suite/0</code></a>·are·used.</p><p>Tags·other·than·the·earlier·mentioned·are·ignored·by·the·test·server.</p><p>An·example·of·a·test·case·information·function·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">reboot_node</span><span·class="p"·data-group-id="8563394518-1">(</span><span·class="p"·data-group-id="8563394518-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
285 ····</span><span·class="p"·data-group-id="8841970172-2">[</span><span·class="w">285 ····</span><span·class="p"·data-group-id="8563394518-2">[</span><span·class="w">
286 ·····</span><span·class="p"·data-group-id="8841970172-3">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="8841970172-4">{</span><span·class="ss">seconds</span><span·class="p">,</span><span·class="mi">60</span><span·class="p"·data-group-id="8841970172-4">[·...·truncated·by·diffoscope;·len:·49,·SHA:·ede9a14308295607d5ed0079259ec3bfcd41129209bf3e86c72f8dd4af19473d·...·]-3">}</span><span·class="p">,</span><span·class="w">286 ·····</span><span·class="p"·data-group-id="8563394518-3">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="8563394518-4">{</span><span·class="ss">seconds</span><span·class="p">,</span><span·class="mi">60</span><span·class="p"·data-group-id="8563394518-4">[·...·truncated·by·diffoscope;·len:·49,·SHA:·9581e02f726b058c437eae687bdb5a542c0e00bd38a2eeeedcfc835522f3259b·...·]-3">}</span><span·class="p">,</span><span·class="w">
287 ·····</span><span·class="p"·data-group-id="8841970172-5">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">interfaces</span><span·class="p"·data-group-id="8841970172-5">}</span><span·class="p">,</span><span·class="w">287 ·····</span><span·class="p"·data-group-id="8563394518-5">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">interfaces</span><span·class="p"·data-group-id="8563394518-5">}</span><span·class="p">,</span><span·class="w">
288 ·····</span><span·class="p"·data-group-id="8841970172-6">{</span><span·class="ss">userdata</span><span·class="p">,</span><span·class="w">288 ·····</span><span·class="p"·data-group-id="8563394518-6">{</span><span·class="ss">userdata</span><span·class="p">,</span><span·class="w">
289 ·········</span><span·class="p"·data-group-id="8841970172-7">[</span><span·class="p"·data-group-id="8841970172-8">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="s">&quot;System·Upgrade:·RpuAddition·Normal·RebootNode&quot;</span><span·class="p"·data-group-id="8841970172-8">}</span><span·class="p">,</span><span·class="w">289 ·········</span><span·class="p"·data-group-id="8563394518-7">[</span><span·class="p"·data-group-id="8563394518-8">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="s">&quot;System·Upgrade:·RpuAddition·Normal·RebootNode&quot;</span><span·class="p"·data-group-id="8563394518-8">}</span><span·class="p">,</span><span·class="w">
290 ··········</span><span·class="p"·data-group-id="8841970172-9">{</span><span·class="ss">fts</span><span·class="p">,</span><span·class="s">&quot;http://someserver.ericsson.se/test_doc4711.pdf&quot;</span><span·class="p"·data-group-id="8841970172-9">}</span><span·class="p"·data-group-id="8841970172-7">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·c7348bcfb9e66b935b6466bc3ae06cd6b62f44a0de8bb367387a5baa6feb6e0d·...·]-6">}</span><span·class="w">290 ··········</span><span·class="p"·data-group-id="8563394518-9">{</span><span·class="ss">fts</span><span·class="p">,</span><span·class="s">&quot;http://someserver.ericsson.se/test_doc4711.pdf&quot;</span><span·class="p"·data-group-id="8563394518-9">}</span><span·class="p"·data-group-id="8563394518-7">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·9af37835a02fa6efee32ff341ba09cab587d0e268c743616675e2d69681a6395·...·]-6">}</span><span·class="w">
291 ····</span><span·class="p"·data-group-id="8841970172-2">]</span><span·class="p">.</span></code></pre><p><a·href=""·id="suite"></a></p><h2·id="test-suite-information-function"·class="section-heading">291 ····</span><span·class="p"·data-group-id="8563394518-2">]</span><span·class="p">.</span></code></pre><p><a·href=""·id="suite"></a></p><h2·id="test-suite-information-function"·class="section-heading">
292 ··<a·href="#test-suite-information-function"·class="hover-link">292 ··<a·href="#test-suite-information-function"·class="hover-link">
293 ····<i·class="ri-link-m"·aria-hidden="true"></i>293 ····<i·class="ri-link-m"·aria-hidden="true"></i>
294 ··</a>294 ··</a>
295 ··<span·class="text">Test·Suite·Information·Function</span>295 ··<span·class="text">Test·Suite·Information·Function</span>
296 </h2>296 </h2>
297 <p>Function·<a·href="ct_suite.html#c:suite/0"><code·class="inline">suite/0</code></a>·can,·for·example,·be·used·in·a·test297 <p>Function·<a·href="ct_suite.html#c:suite/0"><code·class="inline">suite/0</code></a>·can,·for·example,·be·used·in·a·test
298 suite·module·to·set·a·default·<code·class="inline">timetrap</code>·value·and·to·<code·class="inline">require</code>·external298 suite·module·to·set·a·default·<code·class="inline">timetrap</code>·value·and·to·<code·class="inline">require</code>·external
299 configuration·data.·If·a·test·case,·or·a·group·information·function·also299 configuration·data.·If·a·test·case,·or·a·group·information·function·also
300 specifies·any·of·the·information·tags,·it·overrides·the·default·values·set·by300 specifies·any·of·the·information·tags,·it·overrides·the·default·values·set·by
301 <code·class="inline">suite/0</code>.·For·details,·see301 <code·class="inline">suite/0</code>.·For·details,·see
302 <a·href="write_test_chapter.html#info_function">Test·Case·Information·Function</a>·and302 <a·href="write_test_chapter.html#info_function">Test·Case·Information·Function</a>·and
303 <a·href="write_test_chapter.html#test_case_groups">Test·Case·Groups</a>.</p><p>The·following·options·can·also·be·specified·with·the·suite·information·list:</p><ul><li><code·class="inline">stylesheet</code>,·see·<a·href="run_test_chapter.html#html_stylesheet">HTML·Style·Sheets</a></li><li><code·class="inline">userdata</code>,·see303 <a·href="write_test_chapter.html#test_case_groups">Test·Case·Groups</a>.</p><p>The·following·options·can·also·be·specified·with·the·suite·information·list:</p><ul><li><code·class="inline">stylesheet</code>,·see·<a·href="run_test_chapter.html#html_stylesheet">HTML·Style·Sheets</a></li><li><code·class="inline">userdata</code>,·see
304 <a·href="write_test_chapter.html#info_function">Test·Case·Information·Function</a></li><li><code·class="inline">silent_connections</code>,·see304 <a·href="write_test_chapter.html#info_function">Test·Case·Information·Function</a></li><li><code·class="inline">silent_connections</code>,·see
305 <a·href="run_test_chapter.html#silent_connections">Silent·Connections</a></li></ul><p>An·example·of·the·suite·information·function·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="5198260919-1">(</span><span·class="p"·data-group-id="5198260919-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">305 <a·href="run_test_chapter.html#silent_connections">Silent·Connections</a></li></ul><p>An·example·of·the·suite·information·function·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">suite</span><span·class="p"·data-group-id="6358111868-1">(</span><span·class="p"·data-group-id="6358111868-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
306 ····</span><span·class="p"·data-group-id="5198260919-2">[</span><span·class="w">306 ····</span><span·class="p"·data-group-id="6358111868-2">[</span><span·class="w">
307 ·····</span><span·class="p"·data-group-id="5198260919-3">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="5198260919-4">{</span><span·class="ss">minutes</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="5198260919-4"[·...·truncated·by·diffoscope;·len:·50,·SHA:·2a7a5adb08bc9035d320cf04dbf748266230918af829fc01181adc745e5dee56·...·]-3">}</span><span·class="p">,</span><span·class="w">307 ·····</span><span·class="p"·data-group-id="6358111868-3">{</span><span·class="ss">timetrap</span><span·class="p">,</span><span·class="p"·data-group-id="6358111868-4">{</span><span·class="ss">minutes</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="6358111868-4"[·...·truncated·by·diffoscope;·len:·50,·SHA:·942a87c4e8791f48432084dfec84a29f8ee200692fb4b8684eb59fbd04669f43·...·]-3">}</span><span·class="p">,</span><span·class="w">
308 ·····</span><span·class="p"·data-group-id="5198260919-5">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">global_names</span><span·class="p"·data-group-id="5198260919-5">}</span><span·class="p">,</span><span·class="w">308 ·····</span><span·class="p"·data-group-id="6358111868-5">{</span><span·class="ss">require</span><span·class="p">,</span><span·class="ss">global_names</span><span·class="p"·data-group-id="6358111868-5">}</span><span·class="p">,</span><span·class="w">
309 ·····</span><span·class="p"·data-group-id="5198260919-6">{</span><span·class="ss">userdata</span><span·class="p">,</span><span·class="p"·data-group-id="5198260919-7">[</span><span·class="p"·data-group-id="5198260919-8">{</span><span·class="ss">info</span><span·class="p">,</span><span·class="s">&quo[·...·truncated·by·diffoscope;·len:·201,·SHA:·ffe38ea1cd6ccdd3312f071f54e89df756ae83d882f075d9294dca75c5c9f38d·...·]-6">}</span><span·class="p">,</span><span·class="w">309 ·····</span><span·class="p"·data-group-id="6358111868-6">{</span><span·class="ss">userdata</span><span·class="p">,</span><span·class="p"·data-group-id="6358111868-7">[</span><span·class="p"·data-group-id="6358111868-8">{</span><span·class="ss">info</span><span·class="p">,</span><span·class="s">&quo[·...·truncated·by·diffoscope;·len:·201,·SHA:·9df0842b4385318290dc1b7cad10f0cb67a87702d177130aecd65a357697845c·...·]-6">}</span><span·class="p">,</span><span·class="w">
310 ·····</span><span·class="p"·data-group-id="5198260919-9">{</span><span·class="ss">silent_connections</span><span·class="p">,</span><span·class="p"·data-group-id="5198260919-10">[</span><span·class="ss">telnet</span><span·class="p"·data-group-id="5198260919-10">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·094419a193cd206dd94fd199a395d957d6269981f5bc7de07a3412eb47074a42·...·]-9">}</span><span·class="p">,</span><span·class="w">310 ·····</span><span·class="p"·data-group-id="6358111868-9">{</span><span·class="ss">silent_connections</span><span·class="p">,</span><span·class="p"·data-group-id="6358111868-10">[</span><span·class="ss">telnet</span><span·class="p"·data-group-id="6358111868-10">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·991a8a121e5da80f13cb523ff0e232afda9eccef610deeb56957853ef13c66d3·...·]-9">}</span><span·class="p">,</span><span·class="w">
311 ·····</span><span·class="p"·data-group-id="5198260919-11">{</span><span·class="ss">stylesheet</span><span·class="p">,</span><span·class="s">&quot;db_testing.css&quot;</span><span·class="p"·data-group-id="5198260919-11">}</span><span·class="w">311 ·····</span><span·class="p"·data-group-id="6358111868-11">{</span><span·class="ss">stylesheet</span><span·class="p">,</span><span·class="s">&quot;db_testing.css&quot;</span><span·class="p"·data-group-id="6358111868-11">}</span><span·class="w">
312 ····</span><span·class="p"·data-group-id="5198260919-2">]</span><span·class="p">.</span></code></pre><p><a·href=""·id="test_case_groups"></a></p><h2·id="test-case-groups"·class="section-heading">312 ····</span><span·class="p"·data-group-id="6358111868-2">]</span><span·class="p">.</span></code></pre><p><a·href=""·id="test_case_groups"></a></p><h2·id="test-case-groups"·class="section-heading">
313 ··<a·href="#test-case-groups"·class="hover-link">313 ··<a·href="#test-case-groups"·class="hover-link">
314 ····<i·class="ri-link-m"·aria-hidden="true"></i>314 ····<i·class="ri-link-m"·aria-hidden="true"></i>
315 ··</a>315 ··</a>
316 ··<span·class="text">Test·Case·Groups</span>316 ··<span·class="text">Test·Case·Groups</span>
317 </h2>317 </h2>
318 <p>A·test·case·group·is·a·set·of·test·cases·sharing·configuration·functions·and318 <p>A·test·case·group·is·a·set·of·test·cases·sharing·configuration·functions·and
319 execution·properties.·Test·case·groups·are·defined·by·function319 execution·properties.·Test·case·groups·are·defined·by·function
Offset 327, 63 lines modifiedOffset 327, 63 lines modified
327 GroupName·=·atom()327 GroupName·=·atom()
328 GroupsAndTestCases·=·[GroupDef·|·{group,GroupName}·|·TestCase·|328 GroupsAndTestCases·=·[GroupDef·|·{group,GroupName}·|·TestCase·|
329 ·····················{testcase,TestCase,TCRepeatProps}]329 ·····················{testcase,TestCase,TCRepeatProps}]
330 TestCase·=·atom()330 TestCase·=·atom()
331 TCRepeatProps·=·[{repeat,N}·|·{repeat_until_ok,N}·|·{repeat_until_fail,N}]</code></pre><p><code·class="inline">GroupName</code>·is·the·name·of·the·group·and·must·be·unique·within·the·test·suite331 TCRepeatProps·=·[{repeat,N}·|·{repeat_until_ok,N}·|·{repeat_until_fail,N}]</code></pre><p><code·class="inline">GroupName</code>·is·the·name·of·the·group·and·must·be·unique·within·the·test·suite
332 module.·Groups·can·be·nested,·by·including·a·group·definition·within·the332 module.·Groups·can·be·nested,·by·including·a·group·definition·within·the
333 <code·class="inline">GroupsAndTestCases</code>·list·of·another·group.·<code·class="inline">Properties</code>·is·the·list·of333 <code·class="inline">GroupsAndTestCases</code>·list·of·another·group.·<code·class="inline">Properties</code>·is·the·list·of
334 execution·properties·for·the·group.·The·possible·values·are·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Properties</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1068809758-1">[</span><span·class="ss">parallel</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">sequence</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Shuffle</s[·...·truncated·by·diffoscope;·len:·307,·SHA:·7ee8e3f896d98333fc14f54fc0719ff10f9119f278fc18654fa23875b595ddf0·...·]58-1">]</span><span·class="w">334 execution·properties·for·the·group.·The·possible·values·are·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Properties</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5669042258-1">[</span><span·class="ss">parallel</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">sequence</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Shuffle</s[·...·truncated·by·diffoscope;·len:·307,·SHA:·40b8fd58a0785756aca8e4a49018ab663637662e2e0219d91f2c565ec57bfe66·...·]58-1">]</span><span·class="w">
335 </span><span·class="n">Shuffle</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">shuffle</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1068809758-3">{</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="n">Seed</span><span·class="p"·data-group-id="1068809758-3">}</span><span·class="w">335 </span><span·class="n">Shuffle</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">shuffle</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="5669042258-3">{</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="n">Seed</span><span·class="p"·data-group-id="5669042258-3">}</span><span·class="w">
336 </span><span·class="n">Seed</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1068809758-4">{</span><span·class="nf">integer</span><span·class="p"·data-group-id="1068809758-5">(</span><span·class="p"·data-group-id="1068809758-5">)</span><span·class="p">,</span><span·class="nf">integer</span><span·class="p"·data-group-id="1068809758-[·...·truncated·by·diffoscope;·len:·264,·SHA:·357438f08adee6b4f0c50a617e6cb54b6add3ffab1a312bb4c04e60efdddd7bd·...·]58-4">}</span><span·class="w">336 </span><span·class="n">Seed</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5669042258-4">{</span><span·class="nf">integer</span><span·class="p"·data-group-id="5669042258-5">(</span><span·class="p"·data-group-id="5669042258-5">)</span><span·class="p">,</span><span·class="nf">integer</span><span·class="p"·data-group-id="5669042258-[·...·truncated·by·diffoscope;·len:·264,·SHA:·a18d73b4ab8e73ac04d8c84b1875ba9d2d931824d3b4208940ed6507ba47a959·...·]58-4">}</span><span·class="w">
337 </span><span·class="n">GroupRepeatType</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">repeat</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">repeat_until_all_ok</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">repeat_until_all_fail</span><span·class="w">·</span><span·class="p">|</span><span·class="w">337 </span><span·class="n">GroupRepeatType</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">repeat</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">repeat_until_all_ok</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">repeat_until_all_fail</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
338 ··················</span><span·class="ss">repeat_until_any_ok</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">repeat_until_any_fail</span><span·class="w">338 ··················</span><span·class="ss">repeat_until_any_ok</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">repeat_until_any_fail</span><span·class="w">
339 </span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1068809758-8">(</span><span·class="p"·data-group-id="1068809758-8">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">forever</span></code></pre><p><em>Explanations:</em></p><ul><li><p><strong><code·class="inline">parallel</code></strong>·-·<code·class="inline">Common·Test</code>·executes·all·test·cases·in·the·group·in339 </span><span·class="n">N</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="5669042258-8">(</span><span·class="p"·data-group-id="5669042258-8">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">forever</span></code></pre><p><em>Explanations:</em></p><ul><li><p><strong><code·class="inline">parallel</code></strong>·-·<code·class="inline">Common·Test</code>·executes·all·test·cases·in·the·group·in
340 parallel.</p></li><li><p><strong><code·class="inline">sequence</code></strong>·-·The·cases·are·executed·in·a·sequence·as·described·in·section340 parallel.</p></li><li><p><strong><code·class="inline">sequence</code></strong>·-·The·cases·are·executed·in·a·sequence·as·described·in·section
341 <a·href="dependencies_chapter.html#sequences">Sequences</a>·in·section·Dependencies·Between341 <a·href="dependencies_chapter.html#sequences">Sequences</a>·in·section·Dependencies·Between
342 Test·Cases·and·Suites.</p></li><li><p><strong><code·class="inline">shuffle</code></strong>·-·The·cases·in·the·group·are·executed·in·random·order.</p></li><li><p><strong><code·class="inline">repeat,·repeat_until_*</code></strong>·-·Orders·<code·class="inline">Common·Test</code>·to·repeat·execution·of·all342 Test·Cases·and·Suites.</p></li><li><p><strong><code·class="inline">shuffle</code></strong>·-·The·cases·in·the·group·are·executed·in·random·order.</p></li><li><p><strong><code·class="inline">repeat,·repeat_until_*</code></strong>·-·Orders·<code·class="inline">Common·Test</code>·to·repeat·execution·of·all
343 the·cases·in·the·group·a·given·number·of·times,·or·until·any,·or·all,·cases343 the·cases·in·the·group·a·given·number·of·times,·or·until·any,·or·all,·cases
344 fail·or·succeed.</p></li></ul><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">groups</span><span·class="p"·data-group-id="2568512468-1">(</span><span·class="p"·data-group-id="2568512468-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2568512468-2">[</span><span·class="p"·data-group-id="2568512468-3">{</span><span·class="ss">group1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2568512468-4">[</span><span·class="ss">parallel</span><span·class="p"·data-group-id="2568512468-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2568512468-5">[</span><span·class="ss">test1a</span><span·class="p">,</span><span·class="ss">test1b</span><span·class="p"·data-group-id="2568512468-5">]</span><span·class="p"·data-group-id="2568512468-3">}</span><span·class="p">,</span><span·class="w"> 
345 ·············</span><span·class="p"·data-group-id="2568512468-6">{</span><span·class="ss">group2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2568512468-7">[</span><span·class="ss">shuffle</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·604,·SHA:·e2a6fa22d951583c9dff8a39d31d9e2778b909edac8a9e81c4e2e9951b522cf7·...·]344 fail·or·succeed.</p></li></ul><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">groups</span><span·class="p"·data-group-id="5492943465-1">(</span><span·class="p"·data-group-id="5492943465-1">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·711,·SHA:·46deab6340465ceff6d86d3443bef8a978c08cc4ff6027e0e31ee0ad0dedf422·...·]
 345 ·············</span><span·class="p"·data-group-id="5492943465-6">{</span><span·class="ss">group2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5492943465-7">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="ss">sequence</span><span·class="p"·data-group-id="5492943465-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5492943465-8">[</span><span·class="ss">test2a</span><span·class="p">,</span><span·class="ss">test2b</span><span·class="p">,</span><span·class="ss">test2c</span><span·class="p"·data-group-id="5492943465-8">]</span><span·class="p"·data-group-id="5492943465-6">}</span><span·class="p"·data-group-id="5492943465-2">]</span><span·class="p">.</span></code></pre><p>To·specify·in·which·order·groups·are·to·be·executed·(also·with·respect·to·test
346 cases·that·are·not·part·of·any·group),·add·tuples·on·the·form346 cases·that·are·not·part·of·any·group),·add·tuples·on·the·form
347 <code·class="inline">{group,GroupName}</code>·to·the·<code·class="inline">all/0</code>·list.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all</span><span·class="p"·data-group-id="4148085849-1">(</span><span·class="p"·data-group-id="4148085849-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4148085849-2">[</span><span·class="ss">testcase1</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·1054,·SHA:·50d9d8d0c2f9b114f549795007678c1172bc3f77ebebd5e02f6a5543146ba44d·...·]9-2">]</span><span·class="p">.</span></code></pre><p>Execution·properties·with·a·group·tuple·in·<code·class="inline">all/0</code>:347 <code·class="inline">{group,GroupName}</code>·to·the·<code·class="inline">all/0</code>·list.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all</span><span·class="p"·data-group-id="9704371189-1">(</span><span·class="p"·data-group-id="9704371189-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9704371189-2">[</span><span·class="ss">testcase1</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·1054,·SHA:·2685ea5ba8156847643cf98dfabfd1e902d29c53930a4bb37229efa705d06388·...·]9-2">]</span><span·class="p">.</span></code></pre><p>Execution·properties·with·a·group·tuple·in·<code·class="inline">all/0</code>:
348 <code·class="inline">{group,GroupName,Properties}</code>·can·also·be·specified.·These·properties·override348 <code·class="inline">{group,GroupName,Properties}</code>·can·also·be·specified.·These·properties·override
349 those·specified·in·the·group·definition·(see·<code·class="inline">groups/0</code>·earlier).·This·way,·the349 those·specified·in·the·group·definition·(see·<code·class="inline">groups/0</code>·earlier).·This·way,·the
350 same·set·of·tests·can·be·run,·but·with·different·properties,·without·having·to350 same·set·of·tests·can·be·run,·but·with·different·properties,·without·having·to
351 make·copies·of·the·group·definition·in·question.</p><p>If·a·group·contains·subgroups,·the·execution·properties·for·these·can·also·be351 make·copies·of·the·group·definition·in·question.</p><p>If·a·group·contains·subgroups,·the·execution·properties·for·these·can·also·be
352 specified·in·the·group·tuple:·<code·class="inline">{group,GroupName,Properties,SubGroups}</code>·Where,352 specified·in·the·group·tuple:·<code·class="inline">{group,GroupName,Properties,SubGroups}</code>·Where,
353 <code·class="inline">SubGroups</code>·is·a·list·of·tuples,·<code·class="inline">{GroupName,Properties}</code>·or353 <code·class="inline">SubGroups</code>·is·a·list·of·tuples,·<code·class="inline">{GroupName,Properties}</code>·or
354 <code·class="inline">{GroupName,Properties,SubGroups}</code>·representing·the·subgroups.·Any·subgroups354 <code·class="inline">{GroupName,Properties,SubGroups}</code>·representing·the·subgroups.·Any·subgroups
355 defined·in·<code·class="inline">groups/0</code>·for·a·group,·that·are·not·specified·in·the·<code·class="inline">SubGroups</code>355 defined·in·<code·class="inline">groups/0</code>·for·a·group,·that·are·not·specified·in·the·<code·class="inline">SubGroups</code>
356 list,·executes·with·their·predefined·properties.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">groups</span><span·class="p"·data-group-id="4335864866-1">(</span><span·class="p"·data-group-id="4335864866-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4335864866-2">[</span><span·class="p"·data-group-id="4335864866-3">{</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4335864866-4">[</span><span·class="p"·data-group-id="4335864866-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4335864866-5">[</span><span·class="p"·data-group-id="4335864866-6">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4335864866-7">[</span><span·class="p"·data-group-id="4335864866-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4335864866-8">[</span><span·class="ss">t2a</span><span·class="p">,</span><span·class="ss">t2b</span><span·class="p"·data-group-id="4335864866-8">]</span><span·class="p"·data-group-id="4335864866-6">}</span><span·class="p">,</span><span·class="w"> 
357 ··························</span><span·class="p"·data-group-id="4335864866-9">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4335864866-10">[</span><span·class="p"·data-group-id="4335864[·...·truncated·by·diffoscope;·len:·629,·SHA:·a3585732726ca49a1b92a855341b4b28ad9c36db0832fde3dd9116d56769bfbe·...·]356 list,·executes·with·their·predefined·properties.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">groups</span><span·class="p"·data-group-id="3294765337-1">(</span><span·class="p"·data-group-id="3294765337-1">)</s[·...·truncated·by·diffoscope;·len:·1033,·SHA:·7f6deefad6575bebeb5eeab35de7e1898a4c53c992cbb6f2996375bfbec90f2e·...·]
 357 ··························</span><span·class="p"·data-group-id="3294765337-9">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3294765337-10">[</span><span·class="p"·data-group-id="3294765337-10">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3294765337-11">[</span><span·class="ss">t31</span><span·class="p">,</span><span·class="ss">t3b</span><span·class="p"·data-group-id="3294765337-11">]</span><span·class="p"·data-group-id="3294765337-9">}</span><span·class="p"·data-group-id="3294765337-5">]</span><span·class="p"·data-group-id="3294765337-3">}</span><span·class="p"·data-group-id="3294765337-2">]</span><span·class="p">.</span></code></pre><p>To·execute·group·<code·class="inline">tests1</code>·twice·with·different·properties·for·<code·class="inline">tests2</code>·each
358 time:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all</span><span·class="p"·data-group-id="9778263310-1">(</span><span·class="p"·data-group-id="9778263310-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">358 time:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all</span><span·class="p"·data-group-id="0142619637-1">(</span><span·class="p"·data-group-id="0142619637-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
359 ···</span><span·class="p"·data-group-id="9778263310-2">[</span><span·class="p"·data-group-id="9778263310-3">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9778263310-4">[</span><span·class="p"·data-group-id="9778263310-5">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9778263310-6">[</span><span·class="ss">parallel</span><span·class="p"·data-group-id="9778263310-6">]</span><span·class="p"·data-group-id="9778263310-5">}</span><span·class="p"·data-group-id="9778263310-4">]</span><span·class="p"·data-group-id="9778263310-3">}</span><span·class="p">,</span><span·class="w"> 
360 ····</span><span·class="p"·data-group-id="9778263310-7">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9778263310-8">[</span><span·class="p"·data-group-id="9778263310-9">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9778263310-10">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="p"·data-group-id="9778263310-11">{</span><span·class="ss">repeat</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="9778263310-11">}</span><span·class="p"·data-group-id="9778263310-10">]</span><span·class="p"·data-group-id="9778263310-9">}</span><span·class="p"·data-group-id="9778263310-8">]</span><span·class="p"·data-group-id="9778263310-7">}</span><span·class="p"·data-group-id="9778263310-2">]</span><span·class="p">.</span></code></pre><p>This·is·equivalent·to·the·following·specification:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all</span><span·class="p"·data-group-id="2103894640-1">(</span><span·class="p"·data-group-id="2103894640-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
361 ···</span><span·class="p"·data-group-id="2103894640-2">[</span><span·class="p"·data-group-id="2103894640-3">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</[·...·truncated·by·diffoscope;·len:·418,·SHA:·0e0d84cb74f28d71c95129774f38ebaf24a624b4b1fb7eee848dbf5412c5bd97·...·]">}</span><span·class="p">,</span><span·class="w">359 ···</span><span·class="p"·data-group-id="0142619637-2">[</span><span·class="p"·data-group-id="0142619637-3">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</[·...·truncated·by·diffoscope;·len:·524,·SHA:·a3733bf19fbe19274eeee40654182cad81b3127dcaebb9d0aab9f71f802795c9·...·]">}</span><span·class="p">,</span><span·class="w">
 360 ····</span><span·class="p"·data-group-id="0142619637-7">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0142619637-8">[</span><span·class="p"·data-group-id="0142619637-9">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0142619637-10">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="p"·data-group-id="0142619637-11">{</span><span·class="ss">repeat</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="0142619637-11">}</span><span·class="p"·data-group-id="0142619637-10">]</span><span·class="p"·data-group-id="0142619637-9">}</span><span·class="p"·data-group-id="0142619637-8">]</span><span·class="p"·data-group-id="0142619637-7">}</span><span·class="p"·data-group-id="0142619637-2">]</span><span·class="p">.</span></code></pre><p>This·is·equivalent·to·the·following·specification:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all</span><span·class="p"·data-group-id="2130204119-1">(</span><span·class="p"·data-group-id="2130204119-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
 361 ···</span><span·class="p"·data-group-id="2130204119-2">[</span><span·class="p"·data-group-id="2130204119-3">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2130204119-4">[</span><span·class="p"·data-group-id="2130204119-5">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2130204119-6">[</span><span·class="ss">parallel</span><span·class="p"·data-group-id="2130204119-6">]</span><span·class="p"·data-group-id="2130204119-5">}</span><span·class="p">,</span><span·class="w">
362 ······························</span><span·class="p"·data-group-id="2103894640-7">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p"·data-group-id="2103894640-7">}</span><span·class="p"·data-group-id="2103894640-4">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·5cebc568b9b4739ad400801d0101a658cb9de4faf42784d0369daa9e2fd58fde·...·]-3">}</span><span·class="p">,</span><span·class="w">362 ······························</span><span·class="p"·data-group-id="2130204119-7">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p"·data-group-id="2130204119-7">}</span><span·class="p"·data-group-id="2130204119-4">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·addf6ae59f5f4725a98f2c4849af7fd62c3e9de3975af35d60f98abe7bdd1cc3·...·]-3">}</span><span·class="p">,</span><span·class="w">
363 ····</span><span·class="p"·data-group-id="2103894640-8">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·575,·SHA:·7d83e5ca4b1d88861e3ba9611d80d2b2bc498016392fd7e03bb34edb892f7d09·...·]-10">}</span><span·class="p">,</span><span·class="w">363 ····</span><span·class="p"·data-group-id="2130204119-8">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·575,·SHA:·5af33125c4c8c9ce44fc7390229024fb249540d8354c1550c5a773ce1bf59822·...·]-10">}</span><span·class="p">,</span><span·class="w">
364 ······························</span><span·class="p"·data-group-id="2103894640-13">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p"·data-group-id="2103894640-13">}</span><span·class="p"·data-group-id="2103894640-9">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·4dd34fa7a8a96fccc9434e5460ded5bd9cc968eea28555456e2faafdaef73ca3·...·]-2">]</span><span·class="p">.</span></code></pre><p>Value·<code·class="inline">default</code>·states·that·the·predefined·properties·are·to·be·used.</p><p>The·following·example·shows·how·to·override·properties·in·a·scenario·with·deeply364 ······························</span><span·class="p"·data-group-id="2130204119-13">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p"·data-group-id="2130204119-13">}</span><span·class="p"·data-group-id="2130204119-9">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·57100aeab6a91ce311b3ad67b42ee166ca1c508f1b8fcd3bdffb0f6b61c748c3·...·]-2">]</span><span·class="p">.</span></code></pre><p>Value·<code·class="inline">default</code>·states·that·the·predefined·properties·are·to·be·used.</p><p>The·following·example·shows·how·to·override·properties·in·a·scenario·with·deeply
365 nested·groups:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">groups</span><span·class="p"·data-group-id="1187190512-1">(</span><span·class="p"·data-group-id="1187190512-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">365 nested·groups:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">groups</span><span·class="p"·data-group-id="4743429409-1">(</span><span·class="p"·data-group-id="4743429409-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
366 ···</span><span·class="p"·data-group-id="1187190512-2">[</span><span·class="p"·data-group-id="1187190512-3">{</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1187190512-4">[</span><span·class="p"·data-group-id="1187190512-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1187190512-5">[</span><span·class="p"·data-group-id="1187190512-6">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests2</span><span·class="p"·data-group-id="1187190512-6">}</span><span·class="p"·data-group-id="1187190512-5">]</span><span·class="p"·data-group-id="1187190512-3">}</span><span·class="p">,</span><span·class="w"> 
367 ····</span><span·class="p"·data-group-id="1187190512-7">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1187190512-8">[</span><span·class="p"·data-group-id="1187190512-8">]</span><span·class[·...·truncated·by·diffoscope;·len:·401,·SHA:·826bf121ba78c2d9ef5c7c09403da28fa1f0ee1df09706ce78b61567dcf0333f·...·]">}</span><span·class="p">,</span><span·class="w">366 ···</span><span·class="p"·data-group-id="4743429409-2">[</span><span·class="p"·data-group-id="4743429409-3">{</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4743429409-4">[</span><span·class=[·...·truncated·by·diffoscope;·len:·451,·SHA:·d429ddaefdd9301d72a43c5f3fc02df24f8fc8daa630520e96e89014fc0a929d·...·]">}</span><span·class="p">,</span><span·class="w">
 367 ····</span><span·class="p"·data-group-id="4743429409-7">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4743429409-8">[</span><span·class="p"·data-group-id="4743429409-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4743429409-9">[</span><span·class="p"·data-group-id="4743429409-10">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests3</span><span·class="p"·data-group-id="4743429409-10">}</span><span·class="p"·data-group-id="4743429409-9">]</span><span·class="p"·data-group-id="4743429409-7">}</span><span·class="p">,</span><span·class="w">
368 ····</span><span·class="p"·data-group-id="1187190512-11">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1187190512-12">[</span><span·class="p"·data-group-id="1187190512-13">{</span><span·class="ss">repeat</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·520,·SHA:·da208d1b0c71d3f52629dc1068f0d5c16d01c6a16cdcfcc55b39a94bd850365a·...·]-2">]</span><span·class="p">.</span><span·class="w">368 ····</span><span·class="p"·data-group-id="4743429409-11">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4743429409-12">[</span><span·class="p"·data-group-id="4743429409-13">{</span><span·class="ss">repeat</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·520,·SHA:·ca950f9f788b46b7e254534b810e4ec0c0521e1876b5cf763f06b3ac997a1860·...·]-2">]</span><span·class="p">.</span><span·class="w">
  
369 </span><span·class="nf">all</span><span·class="p"·data-group-id="1187190512-15">(</span><span·class="p"·data-group-id="1187190512-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">369 </span><span·class="nf">all</span><span·class="p"·data-group-id="4743429409-15">(</span><span·class="p"·data-group-id="4743429409-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
370 ···</span><span·class="p"·data-group-id="1187190512-16">[</span><span·class="p"·data-group-id="1187190512-17">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">370 ···</span><span·class="p"·data-group-id="4743429409-16">[</span><span·class="p"·data-group-id="4743429409-17">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">
371 ·····</span><span·class="p"·data-group-id="1187190512-18">[</span><span·class="p"·data-group-id="1187190512-19">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">371 ·····</span><span·class="p"·data-group-id="4743429409-18">[</span><span·class="p"·data-group-id="4743429409-19">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">
372 ·······</span><span·class="p"·data-group-id="1187190512-20">[</span><span·class="p"·data-group-id="1187190512-21">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1187190512-22">[</span><span·class="ss">parallel</span><span·class="p"[·...·truncated·by·diffoscope;·len:·563,·SHA:·d26a83abe05ca90b1a5d0509f53112d572a570ea7a9ffe32046ca1071e6f15dd·...·]-16">]</span><span·class="p">.</span></code></pre><p>For·ease·of·readability,·all·syntax·definitions·can·be·replaced·by·a·function372 ·······</span><span·class="p"·data-group-id="4743429409-20">[</span><span·class="p"·data-group-id="4743429409-21">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4743429409-22">[</span><span·class="ss">parallel</span><span·class="p"[·...·truncated·by·diffoscope;·len:·563,·SHA:·f38c27ef4c6fc692e58f4e066f1b8496d15956a7d2ce4ecfe054269eb512c853·...·]-16">]</span><span·class="p">.</span></code></pre><p>For·ease·of·readability,·all·syntax·definitions·can·be·replaced·by·a·function
373 call·whose·return·value·should·match·the·expected·syntax·case.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all</span><span·class="p"·data-group-id="4411896094-1">(</span><span·class="p"·data-group-id="4411896094-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">373 call·whose·return·value·should·match·the·expected·syntax·case.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">all</span><span·class="p"·data-group-id="1716631529-1">(</span><span·class="p"·data-group-id="1716631529-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
374 ···</span><span·class="p"·data-group-id="4411896094-2">[</span><span·class="p"·data-group-id="4411896094-3">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</[·...·truncated·by·diffoscope;·len:·234,·SHA:·4e8d19c9b11626e000bbd53f02a982fedc6c3c7d956fda44351de02fec0169c4·...·]-3">}</span><span·class="p">,</span><span·class="w">374 ···</span><span·class="p"·data-group-id="1716631529-2">[</span><span·class="p"·data-group-id="1716631529-3">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</[·...·truncated·by·diffoscope;·len:·234,·SHA:·6440515b8025ca5c4e180af666719e43e55e557974edd248ccd6dc6bccbb5bde·...·]-3">}</span><span·class="p">,</span><span·class="w">
375 ····</span><span·class="p"·data-group-id="4411896094-5">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·183,·SHA:·4f71a96d1760893fa964dc3fda6a204ea60c0c7246f4fdff1c4401dc3efd64a2·...·]-7">)</span><span·class="p">,</span><span·class="w">375 ····</span><span·class="p"·data-group-id="1716631529-5">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tests1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·183,·SHA:·8fa9a79b70c6a0f27d08634dc2ceca0f0662d81951d7982351cc908c177e490c·...·]-7">)</span><span·class="p">,</span><span·class="w">
376 ······························</span><span·class="p"·data-group-id="4411896094-8">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p"·data-group-id="4411896094-8">}</span><span·class="p"·data-group-id="4411896094-6">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·8095e049882fe8cf4c59c9284bfa625216fadc5500c99900b36555789aa5755b·...·]-2">]</span><span·class="p">.</span><span·class="w">376 ······························</span><span·class="p"·data-group-id="1716631529-8">{</span><span·class="ss">tests3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p"·data-group-id="1716631529-8">}</span><span·class="p"·data-group-id="1716631529-6">]</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·7286c28ff18767ef4ce5c0ce0273743f2f7c4909044bf85c8412ede0110a0b08·...·]-2">]</span><span·class="p">.</span><span·class="w">
377 </span><span·class="nf">test_cases</span><span·class="p"·data-group-id="4411896094-9">(</span><span·class="p"·data-group-id="4411896094-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">377 </span><span·class="nf">test_cases</span><span·class="p"·data-group-id="1716631529-9">(</span><span·class="p"·data-group-id="1716631529-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
378 ···</span><span·class="p"·data-group-id="4411896094-10">[</span><span·class="p"·data-group-id="4411896094-11">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4411896094-12">[</span><span·class="ss">parallel</span><span·class="p"[·...·truncated·by·diffoscope;·len:·399,·SHA:·1ac8ba1380792dcf8d1fbb920c51ec39bd7cf45342ade03ecc6dea37d167b77b·...·]-10">]</span><span·class="p">.</span><span·class="w">378 ···</span><span·class="p"·data-group-id="1716631529-10">[</span><span·class="p"·data-group-id="1716631529-11">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1716631529-12">[</span><span·class="ss">parallel</span><span·class="p"[·...·truncated·by·diffoscope;·len:·399,·SHA:·dc3cbe538767b6efdf5d36372c909550f74ee2be471adfad6668d2d4e490decf·...·]-10">]</span><span·class="p">.</span><span·class="w">
  
379 </span><span·class="nf">shuffle_test</span><span·class="p"·data-group-id="4411896094-14">(</span><span·class="p"·data-group-id="4411896094-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">379 </span><span·class="nf">shuffle_test</span><span·class="p"·data-group-id="1716631529-14">(</span><span·class="p"·data-group-id="1716631529-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
380 ···</span><span·class="p"·data-group-id="4411896094-15">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4411896094-16">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="p"·data-group-id="4411896094-17">[·...·truncated·by·diffoscope;·len:·237,·SHA:·4f059471a534baf734585a3185483231a1759ba6059b498b3b278c79cd3d5510·...·]-15">}</span><span·class="p">.</span></code></pre><p>The·described·syntax·can·also·be·used·in·test·specifications·to·change·group380 ···</span><span·class="p"·data-group-id="1716631529-15">{</span><span·class="ss">tests2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1716631529-16">[</span><span·class="ss">shuffle</span><span·class="p">,</span><span·class="p"·data-group-id="1716631529-17">[·...·truncated·by·diffoscope;·len:·237,·SHA:·db02f8da14668aa7664e9df016a1450e926c211e773149993864333c389814f5·...·]-15">}</span><span·class="p">.</span></code></pre><p>The·described·syntax·can·also·be·used·in·test·specifications·to·change·group
381 properties·at·the·time·of·execution,·without·having·to·edit·the·test·suite.·For381 properties·at·the·time·of·execution,·without·having·to·edit·the·test·suite.·For
382 more·information,·see·section382 more·information,·see·section
383 <a·href="run_test_chapter.html#test_specifications">Test·Specifications</a>·in·section383 <a·href="run_test_chapter.html#test_specifications">Test·Specifications</a>·in·section
384 Running·Tests·and·Analyzing·Results.</p><p>As·illustrated,·properties·can·be·combined.·If,·for·example,·<code·class="inline">shuffle</code>,384 Running·Tests·and·Analyzing·Results.</p><p>As·illustrated,·properties·can·be·combined.·If,·for·example,·<code·class="inline">shuffle</code>,
385 <code·class="inline">repeat_until_any_fail</code>,·and·<code·class="inline">sequence</code>·are·all·specified,·the·test·cases·in·the385 <code·class="inline">repeat_until_any_fail</code>,·and·<code·class="inline">sequence</code>·are·all·specified,·the·test·cases·in·the
386 group·are·executed·repeatedly,·and·in·random·order,·until·a·test·case·fails.386 group·are·executed·repeatedly,·and·in·random·order,·until·a·test·case·fails.
387 Then·execution·is·immediately·stopped·and·the·remaining·cases·are·skipped.</p><p>Before·execution·of·a·group·begins,·the·configuration·function387 Then·execution·is·immediately·stopped·and·the·remaining·cases·are·skipped.</p><p>Before·execution·of·a·group·begins,·the·configuration·function
Max diff block lines reached; 43243/112432 bytes (38.46%) of diff not shown.
791 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/api-reference.html
    
Offset 208, 15 lines modifiedOffset 208, 15 lines modified
208 ······<p·class="built-using">208 ······<p·class="built-using">
209 ········Built·using209 ········Built·using
210 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the210 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
211 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>211 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
212 ······</p>212 ······</p>
213 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>213 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
214 ····</footer>214 ····</footer>
215 ··</div>215 ··</div>
216 </main>216 </main>
217 </div>217 </div>
218 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>218 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
219 <script>219 <script>
220 ··document.addEventListener("DOMContentLoaded",·function·()·{220 ··document.addEventListener("DOMContentLoaded",·function·()·{
596 B
html2text {}
Max HTML report size reached
7.27 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/beam_ssa.html
    
Offset 184, 16 lines modifiedOffset 184, 16 lines modified
  
184 </span><span·class="nc">landing_pad_block</span><span·class="p">:</span><span·class="w">184 </span><span·class="nc">landing_pad_block</span><span·class="p">:</span><span·class="w">
185 ···</span><span·class="p">@</span><span·class="ss">aggregate</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">landingpad</span><span·class="w">·</span><span·class="k">catch</span><span·class="p">,</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">tag</span><span·class="w">185 ···</span><span·class="p">@</span><span·class="ss">aggregate</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">landingpad</span><span·class="w">·</span><span·class="k">catch</span><span·class="p">,</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">tag</span><span·class="w">
186 ···</span><span·class="p">@</span><span·class="ss">catched_val</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">extract</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">ssa_agg</span><span·class="p">,</span><span·class="w">·</span><span·class="err">`</span><span·class="mi">0</span><span·class="err">`</span><span·class="w">186 ···</span><span·class="p">@</span><span·class="ss">catched_val</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">extract</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">ssa_agg</span><span·class="p">,</span><span·class="w">·</span><span·class="err">`</span><span·class="mi">0</span><span·class="err">`</span><span·class="w">
187 ···</span><span·class="ss">br</span><span·class="w">·</span><span·class="err">^</span><span·class="ss">common_end_of_catch</span><span·class="w">187 ···</span><span·class="ss">br</span><span·class="w">·</span><span·class="err">^</span><span·class="ss">common_end_of_catch</span><span·class="w">
  
188 </span><span·class="nc">common_end_of_catch</span><span·class="p">:</span><span·class="w">188 </span><span·class="nc">common_end_of_catch</span><span·class="p">:</span><span·class="w">
189 ··</span><span·class="p">@</span><span·class="ss">tmp</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">phi</span><span·class="w">·</span><span·class="p"·data-group-id="3008768983-1">{</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">catched_val</span><span·class="p">,</span><span·class="w">·</span><span·class="err">^</span><span·class="ss">landing_pad_block</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·a8f0da6c2d9548784d84f1e6fbb717bfffd7759e808babc44a802ad638949b34·...·]-1">}</span><span·class="p">,</span><span·class="w">189 ··</span><span·class="p">@</span><span·class="ss">tmp</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">phi</span><span·class="w">·</span><span·class="p"·data-group-id="3411422107-1">{</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">catched_val</span><span·class="p">,</span><span·class="w">·</span><span·class="err">^</span><span·class="ss">landing_pad_block</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·fb47088ec4485fe20bf6df81d6220f0111bfec6dc26abeec84073c364f8709d5·...·]-1">}</span><span·class="p">,</span><span·class="w">
190 ·············</span><span·class="p"·data-group-id="3008768983-2">{</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">successful_result</span><span·class="p">,</span><span·class="w">·</span><span·class="err">^</span><span·class="ss">protected_blockN</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·dc8bd50b3345df2d3af035856078ec722dc5cda7b2a8c8d5b432477ac4e93316·...·]-2">}</span><span·class="w">190 ·············</span><span·class="p"·data-group-id="3411422107-2">{</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">successful_result</span><span·class="p">,</span><span·class="w">·</span><span·class="err">^</span><span·class="ss">protected_blockN</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·10ff893f956c226d742415873c6495ed3d73a888e9ccc6914e4d2d7712726bec·...·]-2">}</span><span·class="w">
191 ··</span><span·class="p">@</span><span·class="ss">result_of_catch_expr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">catch_end</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">tag</span><span·class="p">,</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">tmp</span></code></pre><p>Just·as·for·a·<code·class="inline">try</code>-<code·class="inline">catch</code>·expression·all·code·that·can·cause·an191 ··</span><span·class="p">@</span><span·class="ss">result_of_catch_expr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">catch_end</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">tag</span><span·class="p">,</span><span·class="w">·</span><span·class="p">@</span><span·class="ss">tmp</span></code></pre><p>Just·as·for·a·<code·class="inline">try</code>-<code·class="inline">catch</code>·expression·all·code·that·can·cause·an
192 exception·in·one·of·the·protected·blocks·must·have·explicit·control192 exception·in·one·of·the·protected·blocks·must·have·explicit·control
193 flow·edges·to·the·landing·pad·block.</p><h2·id="exception-re-issuing"·class="section-heading">193 flow·edges·to·the·landing·pad·block.</p><h2·id="exception-re-issuing"·class="section-heading">
194 ··<a·href="#exception-re-issuing"·class="hover-link">194 ··<a·href="#exception-re-issuing"·class="hover-link">
195 ····<i·class="ri-link-m"·aria-hidden="true"></i>195 ····<i·class="ri-link-m"·aria-hidden="true"></i>
196 ··</a>196 ··</a>
197 ··<span·class="text">Exception·Re-issuing</span>197 ··<span·class="text">Exception·Re-issuing</span>
Offset 230, 15 lines modifiedOffset 230, 15 lines modified
230 proven·to·always·succeed·or·fail.</p></li></ul><h2·id="variable-naming"·class="section-heading">230 proven·to·always·succeed·or·fail.</p></li></ul><h2·id="variable-naming"·class="section-heading">
231 ··<a·href="#variable-naming"·class="hover-link">231 ··<a·href="#variable-naming"·class="hover-link">
232 ····<i·class="ri-link-m"·aria-hidden="true"></i>232 ····<i·class="ri-link-m"·aria-hidden="true"></i>
233 ··</a>233 ··</a>
234 ··<span·class="text">Variable·Naming</span>234 ··<span·class="text">Variable·Naming</span>
235 </h2>235 </h2>
236 <p>A·variable·name·in·BEAM·SSA·is·either·an·atom·or·a·non-negative236 <p>A·variable·name·in·BEAM·SSA·is·either·an·atom·or·a·non-negative
237 integer:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">atom</span><span·class="p"·data-group-id="9531344470-1">(</span><span·class="p"·data-group-id="9531344470-1">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">non_neg_integer</span><span·class="p"·data-group-id="9531344470-2">(</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·4849c06b67cfd03c5124298ed47119f1e273700e75bdcf612b44c26e2eec1922·...·]-2">)</span></code></pre><p>In·order·to·generate·fresh·unused·variable·names,·all·compiler237 integer:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">atom</span><span·class="p"·data-group-id="0149374016-1">(</span><span·class="p"·data-group-id="0149374016-1">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">non_neg_integer</span><span·class="p"·data-group-id="0149374016-2">(</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·01a3c44a5889e35f8607691602eef1ec9ecd7a6c452fadc7d90022c40a6f1d50·...·]-2">)</span></code></pre><p>In·order·to·generate·fresh·unused·variable·names,·all·compiler
238 transforms·maintain·a·counter,·the·<code·class="inline">cnt</code>-field·in·the·<code·class="inline">b_function</code>·and238 transforms·maintain·a·counter,·the·<code·class="inline">cnt</code>-field·in·the·<code·class="inline">b_function</code>·and
239 <code·class="inline">opt_st</code>·records,·which·is·incremented·each·time·a·new·variable·or239 <code·class="inline">opt_st</code>·records,·which·is·incremented·each·time·a·new·variable·or
240 label·is·created.·In·the·following·description·the·value·of·the240 label·is·created.·In·the·following·description·the·value·of·the
241 <code·class="inline">cnt</code>-field·is·called·<code·class="inline">Cnt</code>.·The·<code·class="inline">Cnt</code>·value·is·guaranteed·to·never241 <code·class="inline">cnt</code>-field·is·called·<code·class="inline">Cnt</code>.·The·<code·class="inline">Cnt</code>·value·is·guaranteed·to·never
242 clash·with·a·previously·defined·variable·name.·Therefore,·value·of242 clash·with·a·previously·defined·variable·name.·Therefore,·value·of
243 <code·class="inline">Cnt</code>·can·directly·be·used·as·a·variable·name·in·the·SSA·passes.</p><p>Note·that·the·rules·were·more·complicated·before·Erlang/OTP·27,·because243 <code·class="inline">Cnt</code>·can·directly·be·used·as·a·variable·name·in·the·SSA·passes.</p><p>Note·that·the·rules·were·more·complicated·before·Erlang/OTP·27,·because
244 the·<code·class="inline">Cnt</code>·value·could·clash·with·other·variables.</p>244 the·<code·class="inline">Cnt</code>·value·could·clash·with·other·variables.</p>
Offset 288, 15 lines modifiedOffset 288, 15 lines modified
288 ······<p·class="built-using">288 ······<p·class="built-using">
289 ········Built·using289 ········Built·using
290 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the290 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
291 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>291 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
292 ······</p>292 ······</p>
293 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>293 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
294 ····</footer>294 ····</footer>
295 ··</div>295 ··</div>
296 </main>296 </main>
297 </div>297 </div>
298 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>298 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
299 <script>299 <script>
300 ··document.addEventListener("DOMContentLoaded",·function·()·{300 ··document.addEventListener("DOMContentLoaded",·function·()·{
761 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/cerl.html
    
Offset 11552, 15 lines modifiedOffset 11552, 15 lines modified
11552 ······<p·class="built-using">11552 ······<p·class="built-using">
11553 ········Built·using11553 ········Built·using
11554 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the11554 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
11555 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>11555 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
11556 ······</p>11556 ······</p>
11557 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>11557 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
11558 ····</footer>11558 ····</footer>
11559 ··</div>11559 ··</div>
11560 </main>11560 </main>
11561 </div>11561 </div>
11562 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>11562 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
11563 <script>11563 <script>
11564 ··document.addEventListener("DOMContentLoaded",·function·()·{11564 ··document.addEventListener("DOMContentLoaded",·function·()·{
653 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/cerl_clauses.html
    
Offset 672, 15 lines modifiedOffset 672, 15 lines modified
672 ······<p·class="built-using">672 ······<p·class="built-using">
673 ········Built·using673 ········Built·using
674 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the674 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
675 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>675 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
676 ······</p>676 ······</p>
677 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>677 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
678 ····</footer>678 ····</footer>
679 ··</div>679 ··</div>
680 </main>680 </main>
681 </div>681 </div>
682 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>682 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
683 <script>683 <script>
684 ··document.addEventListener("DOMContentLoaded",·function·()·{684 ··document.addEventListener("DOMContentLoaded",·function·()·{
794 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/cerl_trees.html
    
Offset 729, 15 lines modifiedOffset 729, 15 lines modified
729 ······<p·class="built-using">729 ······<p·class="built-using">
730 ········Built·using730 ········Built·using
731 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the731 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
732 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>732 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
733 ······</p>733 ······</p>
734 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>734 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
735 ····</footer>735 ····</footer>
736 ··</div>736 ··</div>
737 </main>737 </main>
738 </div>738 </div>
739 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>739 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
740 <script>740 <script>
741 ··document.addEventListener("DOMContentLoaded",·function·()·{741 ··document.addEventListener("DOMContentLoaded",·function·()·{
728 B
html2text {}
Max HTML report size reached
16.6 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/compile.html
    
Offset 149, 15 lines modifiedOffset 149, 15 lines modified
149 ····<i·class="ri-link-m"·aria-hidden="true"></i>149 ····<i·class="ri-link-m"·aria-hidden="true"></i>
150 ··</a>150 ··</a>
151 ··<span·class="text">Order·of·Compiler·Options</span>151 ··<span·class="text">Order·of·Compiler·Options</span>
152 </h2>152 </h2>
153 <p>Options·given·in·the·<code·class="inline">compile()</code>·attribute·in·the·source·code·take153 <p>Options·given·in·the·<code·class="inline">compile()</code>·attribute·in·the·source·code·take
154 precedence·over·options·given·to·the·compiler,·which·in·turn·take154 precedence·over·options·given·to·the·compiler,·which·in·turn·take
155 precedence·over·options·given·in·the·environment.</p><p>A·later·compiler·option·takes·precedence·over·an·earlier·one·in·the155 precedence·over·options·given·in·the·environment.</p><p>A·later·compiler·option·takes·precedence·over·an·earlier·one·in·the
156 option·list.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">compile</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="2961699145-1">(</span><span·class="ss">something</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2961699145-2">[</span><span·class="ss">nowarn_missing_spec</span><span·class="p">,</span><span·class="ss">warn_missing_spe[·...·truncated·by·diffoscope;·len:·102,·SHA:·2576613d8ed87e0c802dc0f8dd24c0c10835347ee0e4da9a312f14077f7ac741·...·]-1">)</span><span·class="p">.</span></code></pre><p>Warnings·will·be·emitted·for·functions·without·specifications,·unless156 option·list.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">compile</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="0208354626-1">(</span><span·class="ss">something</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0208354626-2">[</span><span·class="ss">nowarn_missing_spec</span><span·class="p">,</span><span·class="ss">warn_missing_spe[·...·truncated·by·diffoscope;·len:·102,·SHA:·eea6e26f397c716c98b710295c06305ff82bea16a08a333ce1b5536af97107ac·...·]-1">)</span><span·class="p">.</span></code></pre><p>Warnings·will·be·emitted·for·functions·without·specifications,·unless
157 the·source·code·for·module·<code·class="inline">something</code>·contains·a·<code·class="inline">compile(nowarn_missing_spec)</code>157 the·source·code·for·module·<code·class="inline">something</code>·contains·a·<code·class="inline">compile(nowarn_missing_spec)</code>
158 attribute.</p><blockquote><h4·class="info">Change</h4><p>In·Erlang/OTP·26·and·earlier,·the·option·order·was·the·opposite·of·what158 attribute.</p><blockquote><h4·class="info">Change</h4><p>In·Erlang/OTP·26·and·earlier,·the·option·order·was·the·opposite·of·what
159 is·described·here.</p></blockquote><h2·id="module-inlining"·class="section-heading">159 is·described·here.</p></blockquote><h2·id="module-inlining"·class="section-heading">
160 ··<a·href="#module-inlining"·class="hover-link">160 ··<a·href="#module-inlining"·class="hover-link">
161 ····<i·class="ri-link-m"·aria-hidden="true"></i>161 ····<i·class="ri-link-m"·aria-hidden="true"></i>
162 ··</a>162 ··</a>
163 ··<span·class="text">Inlining</span>163 ··<span·class="text">Inlining</span>
Offset 173, 22 lines modifiedOffset 173, 22 lines modified
173 all·calls·to·the·function·are·inlined.</p><p>Inlining·does·not·necessarily·improve·running·time.·For·example,·inlining·can173 all·calls·to·the·function·are·inlined.</p><p>Inlining·does·not·necessarily·improve·running·time.·For·example,·inlining·can
174 increase·Beam·stack·use,·which·probably·is·detrimental·to·performance·for174 increase·Beam·stack·use,·which·probably·is·detrimental·to·performance·for
175 recursive·functions.</p><p>Inlining·is·never·default.·It·must·be·explicitly·enabled·with·a·compiler·option175 recursive·functions.</p><p>Inlining·is·never·default.·It·must·be·explicitly·enabled·with·a·compiler·option
176 or·a·<code·class="inline">-compile()</code>·attribute·in·the·source·module.</p><p>To·enable·inlining,·either·use·the·option·<code·class="inline">inline</code>·to·let·the·compiler·decide176 or·a·<code·class="inline">-compile()</code>·attribute·in·the·source·module.</p><p>To·enable·inlining,·either·use·the·option·<code·class="inline">inline</code>·to·let·the·compiler·decide
177 which·functions·to·inline,·or·<code·class="inline">{inline,[{Name,Arity},...]}</code>·to·have·the·compiler177 which·functions·to·inline,·or·<code·class="inline">{inline,[{Name,Arity},...]}</code>·to·have·the·compiler
178 inline·all·calls·to·the·given·functions.·If·the·option·is·given·inside·a178 inline·all·calls·to·the·given·functions.·If·the·option·is·given·inside·a
179 <code·class="inline">compile</code>·directive·in·an·Erlang·module,·<code·class="inline">{Name,Arity}</code>·can·be·written·as179 <code·class="inline">compile</code>·directive·in·an·Erlang·module,·<code·class="inline">{Name,Arity}</code>·can·be·written·as
180 <code·class="inline">Name/Arity</code>.</p><p>Example·of·explicit·inlining:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="1878347533-1">(</span><span·class="p"·data-group-id="1878347533-2">{</span><span·class="ss">inline</span><span·class="p">,</span><span·class="p"·data-group-id="1878347533-3">[</span><span·class="ss">pi</span><span·class="p">/</span><span·class="mi">0</span[·...·truncated·by·diffoscope;·len:·148,·SHA:·0576ae449f925b436341d52b024f06720a29c70b69ed4fb2d048f04e48c381b3·...·]-1">)</span><span·class="p">.</span><span·class="w">180 <code·class="inline">Name/Arity</code>.</p><p>Example·of·explicit·inlining:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="2214246040-1">(</span><span·class="p"·data-group-id="2214246040-2">{</span><span·class="ss">inline</span><span·class="p">,</span><span·class="p"·data-group-id="2214246040-3">[</span><span·class="ss">pi</span><span·class="p">/</span><span·class="mi">0</span[·...·truncated·by·diffoscope;·len:·148,·SHA:·2ef86de77ec4ad1accc45c6b459c5860e3fa5352d1efdeb14bfee2dbce62d203·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
181 </span><span·class="nf">pi</span><span·class="p"·data-group-id="1878347533-4">(</span><span·class="p"·data-group-id="1878347533-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mf">3.1416</span><span·class="p">.</span></code></pre><p>Example·of·implicit·inlining:</p><pre><code·class="text">-compile(inline).</code></pre><p>The·option·<code·class="inline">{inline_size,Size}</code>·controls·how·large·functions·that·are·allowed·to181 </span><span·class="nf">pi</span><span·class="p"·data-group-id="2214246040-4">(</span><span·class="p"·data-group-id="2214246040-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mf">3.1416</span><span·class="p">.</span></code></pre><p>Example·of·implicit·inlining:</p><pre><code·class="text">-compile(inline).</code></pre><p>The·option·<code·class="inline">{inline_size,Size}</code>·controls·how·large·functions·that·are·allowed·to
182 be·inlined.·Default·is·<code·class="inline">24</code>,·which·keeps·the·size·of·the·inlined·code·roughly182 be·inlined.·Default·is·<code·class="inline">24</code>,·which·keeps·the·size·of·the·inlined·code·roughly
183 the·same·as·the·un-inlined·version·(only·relatively·small·functions·are183 the·same·as·the·un-inlined·version·(only·relatively·small·functions·are
184 inlined).</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Aggressive·inlining·-·will·increase·code·size.</span><span·class="w">184 inlined).</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Aggressive·inlining·-·will·increase·code·size.</span><span·class="w">
185 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="1480793899-1">(</span><span·class="ss">inline</span><span·class="p"·data-group-id="1480793899-1">)</span><span·class="p">.</span><span·class="w">185 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="2522840967-1">(</span><span·class="ss">inline</span><span·class="p"·data-group-id="2522840967-1">)</span><span·class="p">.</span><span·class="w">
186 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="1480793899-2">(</span><span·class="p"·data-group-id="1480793899-3">{</span><span·class="ss">inline_size</span><span·class="p">,</span><span·class="mi">100</span><span·class="p"·data-group-id="1480793899-3">}</span><span·class="p"·data-group-id="1480793899-2">)</span><span·class="p">.</span></code></pre><h2·id="module-inlining-of-list-functions"·class="section-heading">186 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="2522840967-2">(</span><span·class="p"·data-group-id="2522840967-3">{</span><span·class="ss">inline_size</span><span·class="p">,</span><span·class="mi">100</span><span·class="p"·data-group-id="2522840967-3">}</span><span·class="p"·data-group-id="2522840967-2">)</span><span·class="p">.</span></code></pre><h2·id="module-inlining-of-list-functions"·class="section-heading">
187 ··<a·href="#module-inlining-of-list-functions"·class="hover-link">187 ··<a·href="#module-inlining-of-list-functions"·class="hover-link">
188 ····<i·class="ri-link-m"·aria-hidden="true"></i>188 ····<i·class="ri-link-m"·aria-hidden="true"></i>
189 ··</a>189 ··</a>
190 ··<span·class="text">Inlining·of·List·Functions</span>190 ··<span·class="text">Inlining·of·List·Functions</span>
191 </h2>191 </h2>
192 <p>The·compiler·can·also·inline·various·list·manipulation·functions·from·the·module192 <p>The·compiler·can·also·inline·various·list·manipulation·functions·from·the·module
193 <code·class="inline">list</code>·in·STDLIB.</p><p>This·feature·must·be·explicitly·enabled·with·a·compiler·option·or·a·<code·class="inline">-compile()</code>193 <code·class="inline">list</code>·in·STDLIB.</p><p>This·feature·must·be·explicitly·enabled·with·a·compiler·option·or·a·<code·class="inline">-compile()</code>
Offset 928, 18 lines modifiedOffset 928, 18 lines modified
928 features.</p><blockquote><h4·class="info">Note</h4><p>This·option·has·no·effect·when·used·in·a·<code·class="inline">-compile(..)</code>·attribute.·Instead,928 features.</p><blockquote><h4·class="info">Note</h4><p>This·option·has·no·effect·when·used·in·a·<code·class="inline">-compile(..)</code>·attribute.·Instead,
929 the·<code·class="inline">-feature(..)</code>·directive·(described·next)·should·be·used.</p><p><a·href=""·id="feature-directive"></a>·A·feature·can·also·be·enabled·(disabled)·using929 the·<code·class="inline">-feature(..)</code>·directive·(described·next)·should·be·used.</p><p><a·href=""·id="feature-directive"></a>·A·feature·can·also·be·enabled·(disabled)·using
930 the·<code·class="inline">-feature(Feature,·enable·|·disable).</code>·module·directive.·Note·that·this930 the·<code·class="inline">-feature(Feature,·enable·|·disable).</code>·module·directive.·Note·that·this
931 directive·can·only·be·present·in·a·prefix·of·the·file,·before·exports·and931 directive·can·only·be·present·in·a·prefix·of·the·file,·before·exports·and
932 function·definitions.·This·is·the·preferred·method·of·enabling·and·disabling932 function·definitions.·This·is·the·preferred·method·of·enabling·and·disabling
933 features,·since·it·is·a·local·property·of·a·module.</p></blockquote></li><li><p><strong><code·class="inline">makedep</code></strong>·-·Produces·a·Makefile·rule·to·track·headers·dependencies.·No933 features,·since·it·is·a·local·property·of·a·module.</p></blockquote></li><li><p><strong><code·class="inline">makedep</code></strong>·-·Produces·a·Makefile·rule·to·track·headers·dependencies.·No
934 object·file·is·produced.</p><p>By·default,·this·rule·is·written·to·<code·class="inline">&lt;File&gt;.Pbeam</code>.·However,·if·option934 object·file·is·produced.</p><p>By·default,·this·rule·is·written·to·<code·class="inline">&lt;File&gt;.Pbeam</code>.·However,·if·option
935 <code·class="inline">binary</code>·is·set,·nothing·is·written·and·the·rule·is·returned·in·<code·class="inline">Binary</code>.</p><p>The·output·will·be·encoded·in·UTF-8.</p><p>For·example,·if·you·have·the·following·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="5833575830-1">(</span><span·class="ss">module</span><span·class="p"·data-group-id="5833575830-1">)</span><span·class="p">.</span><span·class="w">935 <code·class="inline">binary</code>·is·set,·nothing·is·written·and·the·rule·is·returned·in·<code·class="inline">Binary</code>.</p><p>The·output·will·be·encoded·in·UTF-8.</p><p>For·example,·if·you·have·the·following·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="3038000892-1">(</span><span·class="ss">module</span><span·class="p"·data-group-id="3038000892-1">)</span><span·class="p">.</span><span·class="w">
936 </span><span·class="w">936 </span><span·class="w">
937 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="5833575830-2">(</span><span·class="s">&quot;eunit/include/eunit.hrl&quot;</span><span·class="p"·data-group-id="5833575830-2">)</span><span·class="p">.</span><span·class="w">937 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="3038000892-2">(</span><span·class="s">&quot;eunit/include/eunit.hrl&quot;</span><span·class="p"·data-group-id="3038000892-2">)</span><span·class="p">.</span><span·class="w">
938 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="5833575830-3">(</span><span·class="s">&quot;header.hrl&quot;</span><span·class="p"·data-group-id="5833575830-3">)</span><span·class="p">.</span></code></pre><p>The·Makefile·rule·generated·by·this·option·looks·as·follows:</p><pre><code·class="text">module.beam:·module.erl·\938 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="3038000892-3">(</span><span·class="s">&quot;header.hrl&quot;</span><span·class="p"·data-group-id="3038000892-3">)</span><span·class="p">.</span></code></pre><p>The·Makefile·rule·generated·by·this·option·looks·as·follows:</p><pre><code·class="text">module.beam:·module.erl·\
939 ··/usr/local/lib/erlang/lib/eunit/include/eunit.hrl·\939 ··/usr/local/lib/erlang/lib/eunit/include/eunit.hrl·\
940 ··header.hrl</code></pre></li><li><p><strong><code·class="inline">makedep_side_effect</code></strong>·-·The·dependencies·are·created·as·a·side·effect·to940 ··header.hrl</code></pre></li><li><p><strong><code·class="inline">makedep_side_effect</code></strong>·-·The·dependencies·are·created·as·a·side·effect·to
941 the·normal·compilation·process.·This·means·that·the·object·file·will·also·be941 the·normal·compilation·process.·This·means·that·the·object·file·will·also·be
942 produced.·This·option·override·the·<code·class="inline">makedep</code>·option.</p></li><li><p><strong><code·class="inline">{makedep_output,·Output}</code></strong>·-·Writes·generated·rules·to·<code·class="inline">Output</code>·instead·of942 produced.·This·option·override·the·<code·class="inline">makedep</code>·option.</p></li><li><p><strong><code·class="inline">{makedep_output,·Output}</code></strong>·-·Writes·generated·rules·to·<code·class="inline">Output</code>·instead·of
943 the·default·<code·class="inline">&lt;File&gt;.Pbeam</code>.·<code·class="inline">Output</code>·can·be·a·filename·or·an·<code·class="inline">io_device()</code>.·To943 the·default·<code·class="inline">&lt;File&gt;.Pbeam</code>.·<code·class="inline">Output</code>·can·be·a·filename·or·an·<code·class="inline">io_device()</code>.·To
944 write·to·stdout,·use·<code·class="inline">standard_io</code>.·However,·if·<code·class="inline">binary</code>·is·set,·nothing·is944 write·to·stdout,·use·<code·class="inline">standard_io</code>.·However,·if·<code·class="inline">binary</code>·is·set,·nothing·is
945 written·to·<code·class="inline">Output</code>·and·the·result·is·returned·to·the·caller·with945 written·to·<code·class="inline">Output</code>·and·the·result·is·returned·to·the·caller·with
Offset 997, 15 lines modifiedOffset 997, 15 lines modified
997 that·verification·(there·will·not·even·be·a·warning·if·there·is·a997 that·verification·(there·will·not·even·be·a·warning·if·there·is·a
998 mismatch).</p></li><li><p><strong><code·class="inline">{no_auto_import,[{F,A},·...]}</code></strong>·-·Makes·the·function·<code·class="inline">F/A</code>·no·longer·being998 mismatch).</p></li><li><p><strong><code·class="inline">{no_auto_import,[{F,A},·...]}</code></strong>·-·Makes·the·function·<code·class="inline">F/A</code>·no·longer·being
999 auto-imported·from·the·<code·class="inline">erlang</code>·module,·which·resolves·BIF·name·clashes.·This999 auto-imported·from·the·<code·class="inline">erlang</code>·module,·which·resolves·BIF·name·clashes.·This
1000 option·must·be·used·to·resolve·name·clashes·with·auto-imported·BIFs·that·existed1000 option·must·be·used·to·resolve·name·clashes·with·auto-imported·BIFs·that·existed
1001 before·Erlang/OTP·R14A··when·calling·a·local·function·with·the·same·name1001 before·Erlang/OTP·R14A··when·calling·a·local·function·with·the·same·name
1002 as·an·auto-imported·BIF·without·module·prefix.</p><p>If·the·BIF·is·to·be·called,·use·the·<code·class="inline">erlang</code>·module·prefix1002 as·an·auto-imported·BIF·without·module·prefix.</p><p>If·the·BIF·is·to·be·called,·use·the·<code·class="inline">erlang</code>·module·prefix
1003 in·the·call,·not·<code·class="inline">{no_auto_import,[{F,A},·...]}</code>.</p><p>If·this·option·is·written·in·the·source·code,·as·a·<code·class="inline">-compile</code>·directive,·the1003 in·the·call,·not·<code·class="inline">{no_auto_import,[{F,A},·...]}</code>.</p><p>If·this·option·is·written·in·the·source·code,·as·a·<code·class="inline">-compile</code>·directive,·the
1004 syntax·<code·class="inline">F/A</code>·can·be·used·instead·of·<code·class="inline">{F,A}</code>.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="8882421617-1">(</span><span·class="p"·data-group-id="8882421617-2">{</span><span·class="ss">no_auto_import</span><span·class="p">,</span><span·class="p"·data-group-id="8882421617-3">[</span><span·class="ss">error</span><span·class="p">/</span><span·class="[·...·truncated·by·diffoscope;·len:·159,·SHA:·6c83657b4eb44a1610626b5b58d039c9ca89f1c6c0782b3f87cc73b8572a1831·...·]-1">)</span><span·class="p">.</span></code></pre></li><li><p><strong><code·class="inline">no_auto_import</code></strong>·-·Do·not·auto-import·any·functions·from·<code·class="inline">erlang</code>·module.</p></li><li><p><strong><code·class="inline">no_line_info</code></strong>·-·Omits·line·number·information·to·produce·a·slightly1004 syntax·<code·class="inline">F/A</code>·can·be·used·instead·of·<code·class="inline">{F,A}</code>.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="2178212336-1">(</span><span·class="p"·data-group-id="2178212336-2">{</span><span·class="ss">no_auto_import</span><span·class="p">,</span><span·class="p"·data-group-id="2178212336-3">[</span><span·class="ss">error</span><span·class="p">/</span><span·class="[·...·truncated·by·diffoscope;·len:·159,·SHA:·7dd38316053649cc72b89c08f299278295567e4d6e42b24aed16e1991496462c·...·]-1">)</span><span·class="p">.</span></code></pre></li><li><p><strong><code·class="inline">no_auto_import</code></strong>·-·Do·not·auto-import·any·functions·from·<code·class="inline">erlang</code>·module.</p></li><li><p><strong><code·class="inline">no_line_info</code></strong>·-·Omits·line·number·information·to·produce·a·slightly
1005 smaller·output·file.</p></li><li><p><strong><code·class="inline">no_lint</code></strong>·-·Skips·the·pass·that·checks·for·errors·and·warnings.·Only1005 smaller·output·file.</p></li><li><p><strong><code·class="inline">no_lint</code></strong>·-·Skips·the·pass·that·checks·for·errors·and·warnings.·Only
1006 applicable·together·with·the·<code·class="inline">from_abstr</code>·option.·This·is·mainly·for1006 applicable·together·with·the·<code·class="inline">from_abstr</code>·option.·This·is·mainly·for
1007 implementations·of·other·languages·on·top·of·Erlang,·which·have·already·done1007 implementations·of·other·languages·on·top·of·Erlang,·which·have·already·done
1008 their·own·checks·to·guarantee·correctness·of·the·code.</p><p>Caveat:·When·this·option·is·used,·there·are·no·guarantees·that·the·code·output1008 their·own·checks·to·guarantee·correctness·of·the·code.</p><p>Caveat:·When·this·option·is·used,·there·are·no·guarantees·that·the·code·output
1009 by·the·compiler·is·correct·and·safe·to·use.·The·responsibility·for·correctness1009 by·the·compiler·is·correct·and·safe·to·use.·The·responsibility·for·correctness
1010 lies·on·the·code·or·person·generating·the·abstract·format.·If·the·code1010 lies·on·the·code·or·person·generating·the·abstract·format.·If·the·code
1011 contains·errors,·the·compiler·may·crash·or·produce·unsafe·code.</p></li><li><p><strong><code·class="inline">{extra_chunks,·[{binary(),·binary()}]}</code></strong>·-·Pass·extra·chunks·to·be·stored1011 contains·errors,·the·compiler·may·crash·or·produce·unsafe·code.</p></li><li><p><strong><code·class="inline">{extra_chunks,·[{binary(),·binary()}]}</code></strong>·-·Pass·extra·chunks·to·be·stored
Offset 1367, 15 lines modifiedOffset 1367, 15 lines modified
1367 ······<p·class="built-using">1367 ······<p·class="built-using">
1368 ········Built·using1368 ········Built·using
1369 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1369 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1370 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1370 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1371 ······</p>1371 ······</p>
1372 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1372 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1373 ····</footer>1373 ····</footer>
1374 ··</div>1374 ··</div>
1375 </main>1375 </main>
1376 </div>1376 </div>
1377 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1377 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1378 <script>1378 <script>
1379 ··document.addEventListener("DOMContentLoaded",·function·()·{1379 ··document.addEventListener("DOMContentLoaded",·function·()·{
703 B
html2text {}
Max HTML report size reached
120 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/compiler.epub
2.55 KB
zipinfo {}
Max HTML report size reached
31.3 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
15.8 KB
OEBPS/ssa_checks.xhtml
Max HTML report size reached
47.7 KB
OEBPS/notes.xhtml
Max HTML report size reached
1.22 KB
OEBPS/content.opf
1.19 KB
OEBPS/content.opf
Max HTML report size reached
15.1 KB
OEBPS/compile.xhtml
Max HTML report size reached
5.74 KB
OEBPS/beam_ssa.xhtml
Max HTML report size reached
38.1 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/notes.html
    
Offset 145, 61 lines modifiedOffset 145, 61 lines modified
145 </h2>145 </h2>
146 <h3·id="fixed-bugs-and-malfunctions-1"·class="section-heading">146 <h3·id="fixed-bugs-and-malfunctions-1"·class="section-heading">
147 ··<a·href="#fixed-bugs-and-malfunctions-1"·class="hover-link">147 ··<a·href="#fixed-bugs-and-malfunctions-1"·class="hover-link">
148 ····<i·class="ri-link-m"·aria-hidden="true"></i>148 ····<i·class="ri-link-m"·aria-hidden="true"></i>
149 ··</a>149 ··</a>
150 ··<span·class="text">Fixed·Bugs·and·Malfunctions</span>150 ··<span·class="text">Fixed·Bugs·and·Malfunctions</span>
151 </h3>151 </h3>
152 <ul><li><p>Generators·for·binary·comprehensions·could·be·evaluated·before·it·was·known·that·they·would·be·needed.·That·could·result·in·a·binary·comprehensions·failing·if·a·generator·that·should·not·be·evaluated·until·later·failed.</p><p>As·an·example,·consider·this·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9856580648-1">(</span><span·class="ss">t</span><span·class="p"·data-group-id="9856580648-1">)</span><span·class="p">.</span><span·class="w">152 <ul><li><p>Generators·for·binary·comprehensions·could·be·evaluated·before·it·was·known·that·they·would·be·needed.·That·could·result·in·a·binary·comprehensions·failing·if·a·generator·that·should·not·be·evaluated·until·later·failed.</p><p>As·an·example,·consider·this·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8562881389-1">(</span><span·class="ss">t</span><span·class="p"·data-group-id="8562881389-1">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9856580648-2">(</span><span·class="p"·data-group-id="9856580648-3">[</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="9856580648-3">]</span><span·class="p"·data-group-id="9856580648-2">)</span><span·class="p">.</span><span·class="w">153 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8562881389-2">(</span><span·class="p"·data-group-id="8562881389-3">[</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8562881389-3">]</span><span·class="p"·data-group-id="8562881389-2">)</span><span·class="p">.</span><span·class="w">
  
154 </span><span·class="nf">f</span><span·class="p"·data-group-id="9856580648-4">(</span><span·class="p"·data-group-id="9856580648-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">154 </span><span·class="nf">f</span><span·class="p"·data-group-id="8562881389-4">(</span><span·class="p"·data-group-id="8562881389-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
155 ····</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="p">_</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="9856580648-5">[</span><span·class="p"·data-group-id="9856580648-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="ss">ok</span><span·c[·...·truncated·by·diffoscope;·len:·443,·SHA:·35456e9149102aa8b1e986ad31c4744b8c450dcf368449575e5d7ba942e1c2aa·...·]-1">)</span><span·class="p">.</span><span·class="w">155 ····</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">||</span><span·class="w">·</span><span·class="p">_</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="8562881389-5">[</span><span·class="p"·data-group-id="8562881389-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="ss">ok</span><span·c[·...·truncated·by·diffoscope;·len:·443,·SHA:·11a2bb46a1d14ef3c14851e7acbf9b8904fb2f808903038e2a7189b7278ff77e·...·]-1">)</span><span·class="p">.</span><span·class="w">
156 </span><span·class="gt">**·exception·error:·bad·generator·ok156 </span><span·class="gt">**·exception·error:·bad·generator·ok
157 ·····in·function··t:f/0·(t.erl,·line·6)</span></code></pre><p>In·Erlang/OTP·27·it·returns·an·empty·binary:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">t</span><span·class="p">:</span><span·class="nf">f</span><span·class="p"·data-group-id="7616394232-1">(</span><span·class="p"·data-group-id="7616394232-1">)</span><span·class="p">.</span><span·class="w">157 ·····in·function··t:f/0·(t.erl,·line·6)</span></code></pre><p>In·Erlang/OTP·27·it·returns·an·empty·binary:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">t</span><span·class="p">:</span><span·class="nf">f</span><span·class="p"·data-group-id="4564300959-1">(</span><span·class="p"·data-group-id="4564300959-1">)</span><span·class="p">.</span><span·class="w">
158 </span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span></code></pre><p>Own·Id:·OTP-18703·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/7494"·title="">GH-7494</a>,·<a·href="https://github.com/erlang/otp/pull/7538"·title="">PR-7538</a></p></li><li><p>The·documentation·for·the·preprocessor·now·mentions·that·<code·class="inline">defined(Name)</code>·can·be·called·in·the·condition·for·an·<code·class="inline">-if</code>·or·<code·class="inline">-elif</code>·directive·to·test·whether·<code·class="inline">Name</code>·is·the·name·of·a·defined·macro.·(This·feature·was·implemented·in·OTP·21.)</p><p>If·a·function·call·in·an·<code·class="inline">-if</code>·or·<code·class="inline">-elif</code>·with·a·name·that·is·not·the·name·of·a·guard·BIF,·there·would·not·be·a·compilation·error,·but·would·instead·cause·the·lines·following·the·directive·to·be·skipped.·This·has·now·been·changed·to·be·a·compilation·error.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18784·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/7706"·title="">GH-7706</a>,·<a·href="https://github.com/erlang/otp/pull/7726"·title="">PR-7726</a></p></li></ul><h3·id="improvements-and-new-features"·class="section-heading">158 </span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span></code></pre><p>Own·Id:·OTP-18703·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/7494"·title="">GH-7494</a>,·<a·href="https://github.com/erlang/otp/pull/7538"·title="">PR-7538</a></p></li><li><p>The·documentation·for·the·preprocessor·now·mentions·that·<code·class="inline">defined(Name)</code>·can·be·called·in·the·condition·for·an·<code·class="inline">-if</code>·or·<code·class="inline">-elif</code>·directive·to·test·whether·<code·class="inline">Name</code>·is·the·name·of·a·defined·macro.·(This·feature·was·implemented·in·OTP·21.)</p><p>If·a·function·call·in·an·<code·class="inline">-if</code>·or·<code·class="inline">-elif</code>·with·a·name·that·is·not·the·name·of·a·guard·BIF,·there·would·not·be·a·compilation·error,·but·would·instead·cause·the·lines·following·the·directive·to·be·skipped.·This·has·now·been·changed·to·be·a·compilation·error.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18784·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/7706"·title="">GH-7706</a>,·<a·href="https://github.com/erlang/otp/pull/7726"·title="">PR-7726</a></p></li></ul><h3·id="improvements-and-new-features"·class="section-heading">
159 ··<a·href="#improvements-and-new-features"·class="hover-link">159 ··<a·href="#improvements-and-new-features"·class="hover-link">
160 ····<i·class="ri-link-m"·aria-hidden="true"></i>160 ····<i·class="ri-link-m"·aria-hidden="true"></i>
161 ··</a>161 ··</a>
162 ··<span·class="text">Improvements·and·New·Features</span>162 ··<span·class="text">Improvements·and·New·Features</span>
163 </h3>163 </h3>
164 <ul><li><p>The·compiler·now·emits·nicer·error·message·for·function·head·mismatches.164 <ul><li><p>The·compiler·now·emits·nicer·error·message·for·function·head·mismatches.
165 For·example,·given:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">a</span><span·class="p"·data-group-id="7477414934-1">(</span><span·class="p"·data-group-id="7477414934-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">165 For·example,·given:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">a</span><span·class="p"·data-group-id="9671698416-1">(</span><span·class="p"·data-group-id="9671698416-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
166 </span><span·class="nf">a</span><span·class="p"·data-group-id="7477414934-2">(</span><span·class="p">_</span><span·class="p"·data-group-id="7477414934-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="p">.</span></code></pre><p>Erlang/OTP·26·and·earlier·would·emit·a·diagnostic·similar·to:</p><pre><code·class="text">t.erl:6:1:·head·mismatch166 </span><span·class="nf">a</span><span·class="p"·data-group-id="9671698416-2">(</span><span·class="p">_</span><span·class="p"·data-group-id="9671698416-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="p">.</span></code></pre><p>Erlang/OTP·26·and·earlier·would·emit·a·diagnostic·similar·to:</p><pre><code·class="text">t.erl:6:1:·head·mismatch
167 %····6|·a(_)·-&gt;·error.167 %····6|·a(_)·-&gt;·error.
168 %·····|·^</code></pre><p>while·in·Erlang/OTP·27·the·diagnostic·is·similar·to:</p><pre><code·class="text">t.erl:6:1:·head·mismatch:·function·a·with·arities·0·and·1·is·regarded·as·two·distinct·functions.·Is·the·number·of·arguments·incorrect·or·is·the·semicolon·in·a/0·unwanted?168 %·····|·^</code></pre><p>while·in·Erlang/OTP·27·the·diagnostic·is·similar·to:</p><pre><code·class="text">t.erl:6:1:·head·mismatch:·function·a·with·arities·0·and·1·is·regarded·as·two·distinct·functions.·Is·the·number·of·arguments·incorrect·or·is·the·semicolon·in·a/0·unwanted?
169 %····6|·a(_)·-&gt;·error.169 %····6|·a(_)·-&gt;·error.
170 %·····|·^</code></pre><p>Own·Id:·OTP-18648·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7383"·title="">PR-7383</a></p></li><li><p>The·compiler·now·optimizes·creation·of·binaries·that·are·known·to·be·constant.</p><p>Consider·this·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bin</span><span·class="p"·data-group-id="6594093270-1">(</span><span·class="p"·data-group-id="6594093270-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">170 %·····|·^</code></pre><p>Own·Id:·OTP-18648·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7383"·title="">PR-7383</a></p></li><li><p>The·compiler·now·optimizes·creation·of·binaries·that·are·known·to·be·constant.</p><p>Consider·this·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bin</span><span·class="p"·data-group-id="5169160350-1">(</span><span·class="p"·data-group-id="5169160350-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
171 ····</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">char</span><span·class="p"·data-group-id="6594093270-2">(</span><span·class="p"·data-group-id="6594093270-2">)</span><span·class="p">,</span><span·class="w">171 ····</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">char</span><span·class="p"·data-group-id="5169160350-2">(</span><span·class="p"·data-group-id="5169160350-2">)</span><span·class="p">,</span><span·class="w">
172 ····</span><span·class="p">&lt;&lt;</span><span·class="n">C</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">172 ····</span><span·class="p">&lt;&lt;</span><span·class="n">C</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">char</span><span·class="p"·data-group-id="6594093270-3">(</span><span·class="p"·data-group-id="6594093270-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="sc">$*</span><span·class="p">.</span></code></pre><p>Essentially,·the·compiler·rewrites·the·[·...·truncated·by·diffoscope;·len:·212,·SHA:·f50de98276ead1203fa1208fc71517d7a9cdce234a8559418b8b06b852d36757·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 </span><span·class="nf">char</span><span·class="p"·data-group-id="5169160350-3">(</span><span·class="p"·data-group-id="5169160350-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="sc">$*</span><span·class="p">.</span></code></pre><p>Essentially,·the·compiler·rewrites·the·[·...·truncated·by·diffoscope;·len:·212,·SHA:·7cb026580a0318bdd016aa835659ae0fbfaeb779c18217d46e5627d14f0ee73f·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ····</span><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">char</span><span·class="p"·data-group-id="9203174469-2">(</span><span·class="p"·data-group-id="9203174469-2">)</span><span·class="p">,</span><span·class="w">174 ····</span><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">char</span><span·class="p"·data-group-id="8001278412-2">(</span><span·class="p"·data-group-id="8001278412-2">)</span><span·class="p">,</span><span·class="w">
175 ····</span><span·class="p">&lt;&lt;</span><span·class="sc">$*</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">175 ····</span><span·class="p">&lt;&lt;</span><span·class="sc">$*</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
  
176 </span><span·class="nf">char</span><span·class="p"·data-group-id="9203174469-3">(</span><span·class="p"·data-group-id="9203174469-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="sc">$*</span><span·class="p">.</span></code></pre><p>Own·Id:·OTP-18673·Aux·Id:·<a·href="http[·...·truncated·by·diffoscope;·len:·818,·SHA:·172098b808c0a8825262ec67d7202da3bc3f68c017bf720f2c1015f4371d2fb8·...·]-1">)</span><span·class="p">.</span><span·class="w">176 </span><span·class="nf">char</span><span·class="p"·data-group-id="8001278412-3">(</span><span·class="p"·data-group-id="8001278412-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="sc">$*</span><span·class="p">.</span></code></pre><p>Own·Id:·OTP-18673·Aux·Id:·<a·href="http[·...·truncated·by·diffoscope;·len:·818,·SHA:·d9c2d62ff690fda6841c6fa434dcf84427793be006f14e6e0ac7cab37c9717d9·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
177 </span><span·class="nf">update</span><span·class="p"·data-group-id="8493008689-3">(</span><span·class="n">Value</span><span·class="p"·data-group-id="8493008689-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">177 </span><span·class="nf">update</span><span·class="p"·data-group-id="6953530743-3">(</span><span·class="n">Value</span><span·class="p"·data-group-id="6953530743-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
178 ····</span><span·class="n">R0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="8493008689-4">{</span><span·class="p"·data-group-id="8493008689-4">}</span><span·class="p">,</span><span·class="w">178 ····</span><span·class="n">R0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="6953530743-4">{</span><span·class="p"·data-group-id="6953530743-4">}</span><span·class="p">,</span><span·class="w">
179 ····</span><span·class="n">R1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">R0</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="8493008689-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="n">Value</span><span·class="p"·data-group-id="8493008689-5">}</span><span·class="p">,</span><span·class="w">179 ····</span><span·class="n">R1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">R0</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="6953530743-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="n">Value</span><span·class="p"·data-group-id="6953530743-5">}</span><span·class="p">,</span><span·class="w">
180 ····</span><span·class="n">R2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">R1</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="8493008689-6">{</span><span·class="ss">b</span><span·class="o">=</span><span·class="mi">2</span><span·class="p"·data-group-id="8493008689-6">}</span><span·class="p">,</span><span·class="w">180 ····</span><span·class="n">R2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">R1</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="6953530743-6">{</span><span·class="ss">b</span><span·class="o">=</span><span·class="mi">2</span><span·class="p"·data-group-id="6953530743-6">}</span><span·class="p">,</span><span·class="w">
181 ····</span><span·class="n">R2</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="8493008689-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="mi">3</span><span·class="p"·data-group-id="8493008689-7">}</span><span·class="p">.</span></code></pre><p>Own·Id:·OTP-18680·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7491"·title="">PR-7491</a>,·<a·href="https://github.com/erlang/otp/pull/8086"·title="">PR-8086</a>,·ERIERL-967</p></li><li><p>Improved·the·performance·of·the·alias·analysis·pass.</p><p>Own·Id:·OTP-18714·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7528"·title="">PR-7528</a>,·<a·href="https://github.com/erlang/otp/issues/7432"·title="">GH-7432</a></p></li><li><p><code·class="inline">-spec</code>·attributes·are·now·used·for·documentation.</p><p>Own·Id:·OTP-18801·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7739"·title="">PR-7739</a></p></li><li><p>Native·coverage·support·has·been·implemented·in·the·JIT.·It·will··automatically·be·used·by·the·<a·href="../../../../lib/tools-4.0/doc/html/cover.html"><code·class="inline">cover</code></a>·tool·to·reduce·the·execution·overhead·when·running·cover-compiled·code.</p><p>There·are·also·new·APIs·to·support·native·coverage·without·using·the·<code·class="inline">cover</code>·tool.</p><p>To·instrument·code·for·native·coverage·it·must·be·compiled·with·the·<a·href="compile.html#line_coverage"><code·class="inline">line_coverage</code></a>·option.</p><p>To·enable·native·coverage·in·the·runtime·system,·start·it·like·so:</p><pre><code·class="text">$·erl·+JPcover·true</code></pre><p>There·are·also·the·following·new·functions·for·supporting·native·coverage:</p><ul><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#coverage_support/0"><code·class="inline">code:coverage_support/0</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage/2"><code·class="inline">code:get_coverage/2</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#reset_coverage/1"><code·class="inline">code:reset_coverage/1</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/0"><code·class="inline">code:get_coverage_mode/0</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/1"><code·class="inline">code:get_coverage_mode/1</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#set_coverage_mode/1"><code·class="inline">code:set_coverage_mode/1</code></a></li></ul><p>Own·Id:·OTP-18856·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7856"·title="">PR-7856</a></p></li><li><p><a·href="https://www.erlang.org/eeps/eep-0059">EEP-59·-·Documentation·Attributes</a>·has·been·implemented.</p><p>Documentation·attributes·can·be·used·to·document·functions,·types,·callbacks,·and·modules.181 ····</span><span·class="n">R2</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="6953530743-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="mi">3</span><span·class="p"·data-group-id="6953530743-7">}</span><span·class="p">.</span></code></pre><p>Own·Id:·OTP-18680·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7491"·title="">PR-7491</a>,·<a·href="https://github.com/erlang/otp/pull/8086"·title="">PR-8086</a>,·ERIERL-967</p></li><li><p>Improved·the·performance·of·the·alias·analysis·pass.</p><p>Own·Id:·OTP-18714·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7528"·title="">PR-7528</a>,·<a·href="https://github.com/erlang/otp/issues/7432"·title="">GH-7432</a></p></li><li><p><code·class="inline">-spec</code>·attributes·are·now·used·for·documentation.</p><p>Own·Id:·OTP-18801·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7739"·title="">PR-7739</a></p></li><li><p>Native·coverage·support·has·been·implemented·in·the·JIT.·It·will··automatically·be·used·by·the·<a·href="../../../../lib/tools-4.0/doc/html/cover.html"><code·class="inline">cover</code></a>·tool·to·reduce·the·execution·overhead·when·running·cover-compiled·code.</p><p>There·are·also·new·APIs·to·support·native·coverage·without·using·the·<code·class="inline">cover</code>·tool.</p><p>To·instrument·code·for·native·coverage·it·must·be·compiled·with·the·<a·href="compile.html#line_coverage"><code·class="inline">line_coverage</code></a>·option.</p><p>To·enable·native·coverage·in·the·runtime·system,·start·it·like·so:</p><pre><code·class="text">$·erl·+JPcover·true</code></pre><p>There·are·also·the·following·new·functions·for·supporting·native·coverage:</p><ul><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#coverage_support/0"><code·class="inline">code:coverage_support/0</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage/2"><code·class="inline">code:get_coverage/2</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#reset_coverage/1"><code·class="inline">code:reset_coverage/1</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/0"><code·class="inline">code:get_coverage_mode/0</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/1"><code·class="inline">code:get_coverage_mode/1</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#set_coverage_mode/1"><code·class="inline">code:set_coverage_mode/1</code></a></li></ul><p>Own·Id:·OTP-18856·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7856"·title="">PR-7856</a></p></li><li><p><a·href="https://www.erlang.org/eeps/eep-0059">EEP-59·-·Documentation·Attributes</a>·has·been·implemented.</p><p>Documentation·attributes·can·be·used·to·document·functions,·types,·callbacks,·and·modules.
182 The·keyword·<code·class="inline">-moduledoc·&quot;Documentation·here&quot;.</code>·is·used·to·document·modules,·while·<code·class="inline">-doc·&quot;Documentation·here&quot;.</code>·can·be·used·on·top·of·functions,·types,·and·callbacks·to·document·them,·respectively.</p><ul><li><p>Types,·callbacks,·and·function·documentation·can·be·set·to·<code·class="inline">hidden</code>·either·via·<code·class="inline">-doc·false</code>·or·<code·class="inline">-doc·hidden</code>.·When·documentation·attributes·mark·a·type·as·hidden,·they·will·not·be·part·of·the·documentation.</p></li><li><p>The·documentation·from·<code·class="inline">moduledoc</code>·and·<code·class="inline">doc</code>·gets·added·by·default·to·the·binary·beam·file,·following·the·format·of·<a·href="https://www.erlang.org/eeps/eep-0048">EEP-48</a>.</p></li><li><p>Using·the·compiler·flag·<code·class="inline">warn_missing_doc</code>·will·raise·a·warning·when182 The·keyword·<code·class="inline">-moduledoc·&quot;Documentation·here&quot;.</code>·is·used·to·document·modules,·while·<code·class="inline">-doc·&quot;Documentation·here&quot;.</code>·can·be·used·on·top·of·functions,·types,·and·callbacks·to·document·them,·respectively.</p><ul><li><p>Types,·callbacks,·and·function·documentation·can·be·set·to·<code·class="inline">hidden</code>·either·via·<code·class="inline">-doc·false</code>·or·<code·class="inline">-doc·hidden</code>.·When·documentation·attributes·mark·a·type·as·hidden,·they·will·not·be·part·of·the·documentation.</p></li><li><p>The·documentation·from·<code·class="inline">moduledoc</code>·and·<code·class="inline">doc</code>·gets·added·by·default·to·the·binary·beam·file,·following·the·format·of·<a·href="https://www.erlang.org/eeps/eep-0048">EEP-48</a>.</p></li><li><p>Using·the·compiler·flag·<code·class="inline">warn_missing_doc</code>·will·raise·a·warning·when
183 <code·class="inline">-doc</code>·attributes·are·missing·in·exported·functions,·types,·and·callbacks.</p></li><li><p>Using·the·compiler·flag·<code·class="inline">warn_missing_spec_documented</code>·will·raise·a·warning·when183 <code·class="inline">-doc</code>·attributes·are·missing·in·exported·functions,·types,·and·callbacks.</p></li><li><p>Using·the·compiler·flag·<code·class="inline">warn_missing_spec_documented</code>·will·raise·a·warning·when
184 spec·attributes·are·missing·in·documented·functions,·types,·and·callbacks.</p></li><li><p><code·class="inline">moduledoc</code>s·and·<code·class="inline">doc</code>s·may·refer·to·external·files·to·be·embedded,·such·as·<code·class="inline">-doc·{file,·&quot;README.md&quot;}.</code>,·which·refers·to·the·file·<code·class="inline">README.md</code>·found·in·the·current·working·directory.</p></li><li><p>The·compiler·warns·about·exported·functions·whose·specs·refer·to·hidden·types.·Thus,·there·will·be·warnings·when·a·hidden·type·(meaning,·the·type·is·not·part·of·the·documentation)·gets·used·in·an·exported·function.</p></li></ul><p>Own·Id:·OTP-18916·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7936"·title="">PR-7936</a></p></li><li><p>The·documentation·has·been·migrated·to·use·Markdown·and·ExDoc.</p><p>Own·Id:·OTP-18955·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8026"·title="">PR-8026</a></p></li><li><p>The·order·in·which·the·compiler·looks·up·options·has·changed.</p><p>When·there·is·a·conflict·in·the·compiler·options·given·in·the·<code·class="inline">-compile()</code>·attribute·and·options·given·to·the·compiler,·the·options·given·in·the·<code·class="inline">-compile()</code>·attribute·overrides·the·option·given·to·the·compiler,·which·in·turn·overrides·options·given·in·the·<code·class="inline">ERL_COMPILER_OPTIONS</code>·environment·variable.</p><p>Example:</p><p>If··<code·class="inline">some_module.erl</code>·has·the·following·attribute:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="6061966822-1">(</span><span·class="p"·data-group-id="6061966822-2">[</span><span·class="ss">nowarn_missing_spec</span><span·class="p"·data-group-id="6061966822-2">]</span><span·class="p"·data-group-id="6061966822-1">)</span><span·class="p">.</span></code><[·...·truncated·by·diffoscope;·len:·1215,·SHA:·88a3283e2df9a6cbc3844c33f8f1ba77e33428fcee6309aaae415a216ab61d38·...·]-1">)</span><span·class="p">.</span><span·class="w">184 spec·attributes·are·missing·in·documented·functions,·types,·and·callbacks.</p></li><li><p><code·class="inline">moduledoc</code>s·and·<code·class="inline">doc</code>s·may·refer·to·external·files·to·be·embedded,·such·as·<code·class="inline">-doc·{file,·&quot;README.md&quot;}.</code>,·which·refers·to·the·file·<code·class="inline">README.md</code>·found·in·the·current·working·directory.</p></li><li><p>The·compiler·warns·about·exported·functions·whose·specs·refer·to·hidden·types.·Thus,·there·will·be·warnings·when·a·hidden·type·(meaning,·the·type·is·not·part·of·the·documentation)·gets·used·in·an·exported·function.</p></li></ul><p>Own·Id:·OTP-18916·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7936"·title="">PR-7936</a></p></li><li><p>The·documentation·has·been·migrated·to·use·Markdown·and·ExDoc.</p><p>Own·Id:·OTP-18955·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8026"·title="">PR-8026</a></p></li><li><p>The·order·in·which·the·compiler·looks·up·options·has·changed.</p><p>When·there·is·a·conflict·in·the·compiler·options·given·in·the·<code·class="inline">-compile()</code>·attribute·and·options·given·to·the·compiler,·the·options·given·in·the·<code·class="inline">-compile()</code>·attribute·overrides·the·option·given·to·the·compiler,·which·in·turn·overrides·options·given·in·the·<code·class="inline">ERL_COMPILER_OPTIONS</code>·environment·variable.</p><p>Example:</p><p>If··<code·class="inline">some_module.erl</code>·has·the·following·attribute:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="3109045545-1">(</span><span·class="p"·data-group-id="3109045545-2">[</span><span·class="ss">nowarn_missing_spec</span><span·class="p"·data-group-id="3109045545-2">]</span><span·class="p"·data-group-id="3109045545-1">)</span><span·class="p">.</span></code><[·...·truncated·by·diffoscope;·len:·1215,·SHA:·5f211eed6ae4d4e4e0215bc7b60bc6b27f2244c3c005a6b52687598616de2c80·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
185 </span><span·class="nf">update</span><span·class="p"·data-group-id="6256067162-3">(</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="6256067162-4">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">needs_update</span><span·class="p">,</span><span·class="ss">b</s[·...·truncated·by·diffoscope;·len:·195,·SHA:·9d9db28df130ef43d94f233ae8e9429ecee853c84d11802e5a711bdde0d64d29·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">185 </span><span·class="nf">update</span><span·class="p"·data-group-id="3997541146-3">(</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3997541146-4">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">needs_update</span><span·class="p">,</span><span·class="ss">b</s[·...·truncated·by·diffoscope;·len:·195,·SHA:·5830c4236398b833bcfc1234dcc25f51b68a67e6534d276bf6f679a044c44ac5·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
186 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">R0</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="6256067162-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">up_to_date</span><span·class="p"·data-group-id="6256067162-5">}</span><span·class="p">,</span><span·class="w">186 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">R0</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3997541146-5">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="ss">up_to_date</span><span·class="p"·data-group-id="3997541146-5">}</span><span·class="p">,</span><span·class="w">
187 ····</span><span·class="k">if</span><span·class="w">187 ····</span><span·class="k">if</span><span·class="w">
188 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">188 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
189 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="6256067162-6">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">negative</span><span·class="p"·data-group-id="6256067162-6">}</span><span·class="p">;</span><span·class="w">189 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3997541146-6">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">negative</span><span·class="p"·data-group-id="3997541146-6">}</span><span·class="p">;</span><span·class="w">
190 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">190 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
191 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="6256067162-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">zero</span><span·class="p"·data-group-id="6256067162-7">}</span><span·class="p">;</span><span·class="w">191 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3997541146-7">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">zero</span><span·class="p"·data-group-id="3997541146-7">}</span><span·class="p">;</span><span·class="w">
192 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">192 ········</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
193 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="6256067162-8">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">positive</span><span·class="p"·data-group-id="6256067162-8">}</span><span·class="w">193 ············</span><span·class="n">R</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="3997541146-8">{</span><span·class="ss">c</span><span·class="o">=</span><span·class="ss">positive</span><span·class="p"·data-group-id="3997541146-8">}</span><span·class="w">
194 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·record·updates·in·each·of·the·three·clauses·of·the·<code·class="inline">if</code>·can·safely·be·done·in-place,·because·variable·<code·class="inline">R</code>·is·not·used·again.</p><p>Own·Id:·OTP-18972·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8090"·title="">PR-8090</a></p></li><li><p>Improved·the·match·context·reuse·optimization·slightly,·allowing·match·contexts·to·be·passed·as-is·to·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#bit_size/1"><code·class="inline">bit_size/1</code></a>·and·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#byte_size/1"><code·class="inline">byte_size/1</code></a>.</p><p>Own·Id:·OTP-18987</p></li><li><p><a·href="../../../../lib/stdlib-6.0.1/doc/html/erl_lint.html"><code·class="inline">erl_lint</code></a>·(and·by·extension·the·<a·href="compile.html"><code·class="inline">compiler</code></a>)·will·now·warn·for·code·using·deprecated·callbacks.</p><p>The·only·callback·currenly·deprecated·is·<code·class="inline">format_status/2</code>·in·<a·href="../../../../lib/stdlib-6.0.1/doc/html/gen_server.html#c:format_status/2"><code·class="inline">gen_server</code></a>,·<a·href="../../../../lib/stdlib-6.0.1/doc/html/gen_event.html#c:format_status/2"><code·class="inline">gen_event</code></a>·and·<a·href="../../../../lib/stdlib-6.0.1/doc/html/gen_server.html#c:format_status/2"><code·class="inline">gen_statem</code></a>.</p><p>You·can·use·<code·class="inline">nowarn_deprecated_callback</code>·to·silence·the·warning.</p><p>Own·Id:·OTP-19010·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8205"·title="">PR-8205</a></p></li></ul><h2·id="compiler-8-4-3"·class="section-heading">194 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·record·updates·in·each·of·the·three·clauses·of·the·<code·class="inline">if</code>·can·safely·be·done·in-place,·because·variable·<code·class="inline">R</code>·is·not·used·again.</p><p>Own·Id:·OTP-18972·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8090"·title="">PR-8090</a></p></li><li><p>Improved·the·match·context·reuse·optimization·slightly,·allowing·match·contexts·to·be·passed·as-is·to·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#bit_size/1"><code·class="inline">bit_size/1</code></a>·and·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#byte_size/1"><code·class="inline">byte_size/1</code></a>.</p><p>Own·Id:·OTP-18987</p></li><li><p><a·href="../../../../lib/stdlib-6.0.1/doc/html/erl_lint.html"><code·class="inline">erl_lint</code></a>·(and·by·extension·the·<a·href="compile.html"><code·class="inline">compiler</code></a>)·will·now·warn·for·code·using·deprecated·callbacks.</p><p>The·only·callback·currenly·deprecated·is·<code·class="inline">format_status/2</code>·in·<a·href="../../../../lib/stdlib-6.0.1/doc/html/gen_server.html#c:format_status/2"><code·class="inline">gen_server</code></a>,·<a·href="../../../../lib/stdlib-6.0.1/doc/html/gen_event.html#c:format_status/2"><code·class="inline">gen_event</code></a>·and·<a·href="../../../../lib/stdlib-6.0.1/doc/html/gen_server.html#c:format_status/2"><code·class="inline">gen_statem</code></a>.</p><p>You·can·use·<code·class="inline">nowarn_deprecated_callback</code>·to·silence·the·warning.</p><p>Own·Id:·OTP-19010·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8205"·title="">PR-8205</a></p></li></ul><h2·id="compiler-8-4-3"·class="section-heading">
195 ··<a·href="#compiler-8-4-3"·class="hover-link">195 ··<a·href="#compiler-8-4-3"·class="hover-link">
196 ····<i·class="ri-link-m"·aria-hidden="true"></i>196 ····<i·class="ri-link-m"·aria-hidden="true"></i>
197 ··</a>197 ··</a>
198 ··<span·class="text">Compiler·8.4.3</span>198 ··<span·class="text">Compiler·8.4.3</span>
199 </h2>199 </h2>
200 <h3·id="fixed-bugs-and-malfunctions-2"·class="section-heading">200 <h3·id="fixed-bugs-and-malfunctions-2"·class="section-heading">
Offset 3095, 15 lines modifiedOffset 3095, 15 lines modified
3095 ······<p·class="built-using">3095 ······<p·class="built-using">
3096 ········Built·using3096 ········Built·using
3097 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3097 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3098 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3098 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3099 ······</p>3099 ······</p>
3100 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3100 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3101 ····</footer>3101 ····</footer>
3102 ··</div>3102 ··</div>
3103 </main>3103 </main>
3104 </div>3104 </div>
3105 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3105 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3106 <script>3106 <script>
3107 ··document.addEventListener("DOMContentLoaded",·function·()·{3107 ··document.addEventListener("DOMContentLoaded",·function·()·{
790 B
html2text {}
Max HTML report size reached
1.28 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
465 B
html2text {}
Max HTML report size reached
17.3 KB
./usr/share/doc/erlang-doc/html/lib/compiler-8.5.1/doc/html/ssa_checks.html
    
Offset 138, 50 lines modifiedOffset 138, 50 lines modified
138 ····<i·class="ri-link-m"·aria-hidden="true"></i>138 ····<i·class="ri-link-m"·aria-hidden="true"></i>
139 ··</a>139 ··</a>
140 ··<span·class="text">Syntax</span>140 ··<span·class="text">Syntax</span>
141 </h2>141 </h2>
142 <p>SSA·checks·are·embedded·in·the·source·code·as·comments·starting·with142 <p>SSA·checks·are·embedded·in·the·source·code·as·comments·starting·with
143 with·one·of·<code·class="inline">%ssa%</code>,·<code·class="inline">%%ssa%</code>·or·<code·class="inline">%%%ssa%</code>.·This·is·a·short143 with·one·of·<code·class="inline">%ssa%</code>,·<code·class="inline">%%ssa%</code>·or·<code·class="inline">%%%ssa%</code>.·This·is·a·short
144 introduction·the·syntax,·for·the·full·syntax·please·refer·to·the144 introduction·the·syntax,·for·the·full·syntax·please·refer·to·the
145 <code·class="inline">ssa_check_when_clause</code>·production·in·<code·class="inline">erl_parse.yrl</code>.</p><p>SSA·checks·can·be·placed·inside·any·Erlang·function,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">t0</span><span·class="p"·data-group-id="9768184563-1">(</span><span·class="p"·data-group-id="9768184563-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">145 <code·class="inline">ssa_check_when_clause</code>·production·in·<code·class="inline">erl_parse.yrl</code>.</p><p>SSA·checks·can·be·placed·inside·any·Erlang·function,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">t0</span><span·class="p"·data-group-id="3010077377-1">(</span><span·class="p"·data-group-id="3010077377-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
146 </span><span·class="c1">%ssa%·()·when·post_ssa_opt·-&gt;</span><span·class="w">146 </span><span·class="c1">%ssa%·()·when·post_ssa_opt·-&gt;</span><span·class="w">
147 </span><span·class="c1">%ssa%···ret(#{}).</span><span·class="w">147 </span><span·class="c1">%ssa%···ret(#{}).</span><span·class="w">
148 ··</span><span·class="p"·data-group-id="9768184563-2">#{</span><span·class="p"·data-group-id="9768184563-2">}</span><span·class="p">.</span></code></pre><p>will·check·that·<code·class="inline">t0/0</code>·returns·the·literal·<code·class="inline">#{}</code>.·If·we·want·to·check148 ··</span><span·class="p"·data-group-id="3010077377-2">#{</span><span·class="p"·data-group-id="3010077377-2">}</span><span·class="p">.</span></code></pre><p>will·check·that·<code·class="inline">t0/0</code>·returns·the·literal·<code·class="inline">#{}</code>.·If·we·want·to·check
149 that·a·function·returns·its·first·formal·parameter,·we·can·write:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">t1</span><span·class="p"·data-group-id="1713169814-1">(</span><span·class="n">A</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">B</span><span·class="p"·data-group-id="1713169814-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 that·a·function·returns·its·first·formal·parameter,·we·can·write:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">t1</span><span·class="p"·data-group-id="4309715298-1">(</span><span·class="n">A</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">B</span><span·class="p"·data-group-id="4309715298-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
150 </span><span·class="c1">%ssa%·(X,·_)·when·post_ssa_opt·-&gt;</span><span·class="w">150 </span><span·class="c1">%ssa%·(X,·_)·when·post_ssa_opt·-&gt;</span><span·class="w">
151 </span><span·class="c1">%ssa%···ret(X).</span><span·class="w">151 </span><span·class="c1">%ssa%···ret(X).</span><span·class="w">
152 ··</span><span·class="n">A</span><span·class="p">.</span></code></pre><p>Note·how·we·match·the·first·formal·parameter·using·<code·class="inline">X</code>.·The·reason·for152 ··</span><span·class="n">A</span><span·class="p">.</span></code></pre><p>Note·how·we·match·the·first·formal·parameter·using·<code·class="inline">X</code>.·The·reason·for
153 having·our·own·formal·parameters·for·the·SSA·check,·is·that·we·don't153 having·our·own·formal·parameters·for·the·SSA·check,·is·that·we·don't
154 want·to·introduce·new·identifiers·at·the·Erlang·level·to·support154 want·to·introduce·new·identifiers·at·the·Erlang·level·to·support
155 SSA-level·checks.·Consider·if·<code·class="inline">t1/2</code>·had·been·defined·as·<code·class="inline">t1([A|As],·B)</code>·we·would·have·had·to·introduce·a·new·identifier·for·the·aggregate155 SSA-level·checks.·Consider·if·<code·class="inline">t1/2</code>·had·been·defined·as·<code·class="inline">t1([A|As],·B)</code>·we·would·have·had·to·introduce·a·new·identifier·for·the·aggregate
156 value·<code·class="inline">[A|As]</code>.</p><p>The·full·syntax·for·a·SSA·check·clause·is:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="ss">expected</span><span·class="o">-</span><span·class="ss">result</span><span·class="o">&gt;</span><span·class="o">?</span><span·class="w">·</span><span·class="p"·data-group-id="8552364079-1">(</span><span·class="o">&lt;</span><span·class="ss">formals</span><span·class="o">&gt;</span><span·class="p"·data-group-id="8552364079-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">pipeline</span><span·class="o">-</span><span·class="ss">location</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">checks</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="ss">&#39;.&#39;</span></code></pre><p>where·<code·class="inline">&lt;expected-result&gt;</code>·can·be·one·of·<code·class="inline">pass</code>·(the·check·must156 value·<code·class="inline">[A|As]</code>.</p><p>The·full·syntax·for·a·SSA·check·clause·is:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="ss">expected</span><span·class="o">-</span><span·class="ss">result</span><span·class="o">&gt;</span><span·class="o">?</span><span·class="w">·</span><span·class="p"·data-group-id="9952130184-1">(</span><span·class="o">&lt;</span><span·class="ss">formals</span><span·class="o">&gt;</span><span·class="p"·data-group-id="9952130184-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">pipeline</span><span·class="o">-</span><span·class="ss">location</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">checks</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="ss">&#39;.&#39;</span></code></pre><p>where·<code·class="inline">&lt;expected-result&gt;</code>·can·be·one·of·<code·class="inline">pass</code>·(the·check·must
157 succeed),·<code·class="inline">fail</code>·and·<code·class="inline">xfail</code>·(the·check·must·fail).·Omitting157 succeed),·<code·class="inline">fail</code>·and·<code·class="inline">xfail</code>·(the·check·must·fail).·Omitting
158 <code·class="inline">&lt;expected-result&gt;</code>·is·parsed·as·an·implicit·<code·class="inline">pass</code>.</p><p><code·class="inline">&lt;formals&gt;</code>·is·a·comma-separated·list·of·variables.</p><p><code·class="inline">&lt;pipeline-location&gt;</code>·specifies·when·in·the·compiler·pipeline·to·run158 <code·class="inline">&lt;expected-result&gt;</code>·is·parsed·as·an·implicit·<code·class="inline">pass</code>.</p><p><code·class="inline">&lt;formals&gt;</code>·is·a·comma-separated·list·of·variables.</p><p><code·class="inline">&lt;pipeline-location&gt;</code>·specifies·when·in·the·compiler·pipeline·to·run
159 the·checks.·For·now·the·only·supported·value·for·<code·class="inline">&lt;pipeline-location&gt;</code>159 the·checks.·For·now·the·only·supported·value·for·<code·class="inline">&lt;pipeline-location&gt;</code>
160 is·<code·class="inline">post_ssa_opt</code>·which·runs·the·checks·after·the·<code·class="inline">ssa_opt</code>·pass.</p><p><code·class="inline">&lt;checks&gt;</code>·is·a·comma-separated·list·of·matches·against·the·BEAM·SSA160 is·<code·class="inline">post_ssa_opt</code>·which·runs·the·checks·after·the·<code·class="inline">ssa_opt</code>·pass.</p><p><code·class="inline">&lt;checks&gt;</code>·is·a·comma-separated·list·of·matches·against·the·BEAM·SSA
161 code.·For·non-flow-control·operations·the·syntax·is:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="ss">variable</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">operation</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3484551036-1">(</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">arguments</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3484551036-1">)</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">annotation</span><span·class="o">&gt;</span><span·class="o">?</span></code></pre><p>where·<code·class="inline">&lt;operation&gt;</code>·is·the·<code·class="inline">#b_set.op</code>·field·from·the·internal·SSA161 code.·For·non-flow-control·operations·the·syntax·is:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="ss">variable</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">operation</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1100763083-1">(</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">arguments</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1100763083-1">)</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">annotation</span><span·class="o">&gt;</span><span·class="o">?</span></code></pre><p>where·<code·class="inline">&lt;operation&gt;</code>·is·the·<code·class="inline">#b_set.op</code>·field·from·the·internal·SSA
162 representation.·BIFs·are·written·as·<code·class="inline">bif:&lt;atom&gt;</code>.</p><p><code·class="inline">&lt;arguments&gt;</code>·is·a·comma-separated·list·of·variables·or·literals.</p><p>For·flow·control·operations·and·labels,·the·syntax·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">br</span><span·class="p"·data-group-id="5861428168-1">(</span><span·class="o">&lt;</span><span·class="ss">bool</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">true</span><span·class="o">-</span><span·class="ss">label</s[·...·truncated·by·diffoscope;·len:·256,·SHA:·08510d2f30d625322834c8bb7e2722fb1df49b6ba4d62613355470fe60f13496·...·]-1">)</span><span·class="w">162 representation.·BIFs·are·written·as·<code·class="inline">bif:&lt;atom&gt;</code>.</p><p><code·class="inline">&lt;arguments&gt;</code>·is·a·comma-separated·list·of·variables·or·literals.</p><p>For·flow·control·operations·and·labels,·the·syntax·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">br</span><span·class="p"·data-group-id="4221266122-1">(</span><span·class="o">&lt;</span><span·class="ss">bool</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">true</span><span·class="o">-</span><span·class="ss">label</s[·...·truncated·by·diffoscope;·len:·256,·SHA:·492a53395e7495c5583304acba811cf740da9763b7ad7b5c54eb1b9323428cc3·...·]-1">)</span><span·class="w">
  
163 </span><span·class="nf">switch</span><span·class="p"·data-group-id="5861428168-2">(</span><span·class="o">&lt;</span><span·class="ss">value</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">fail</span><span·class="o">-</span><span·class="ss">label</[·...·truncated·by·diffoscope;·len:·619,·SHA:·fd05de229bd6dee404b048f065c83c7541419c6fcdb8dce8a2805ac1231e7f8a·...·]-2">)</span><span·class="w">163 </span><span·class="nf">switch</span><span·class="p"·data-group-id="4221266122-2">(</span><span·class="o">&lt;</span><span·class="ss">value</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">fail</span><span·class="o">-</span><span·class="ss">label</[·...·truncated·by·diffoscope;·len:·619,·SHA:·4bcf791e69caf588c52f526de885ca3b21e2f5a09bb1bfb669d1d8881473ff82·...·]-2">)</span><span·class="w">
  
164 </span><span·class="nf">ret</span><span·class="p"·data-group-id="5861428168-5">(</span><span·class="o">&lt;</span><span·class="ss">value</span><span·class="o">&gt;</span><span·class="p"·data-group-id="5861428168-5">)</span><span·class="w">164 </span><span·class="nf">ret</span><span·class="p"·data-group-id="4221266122-5">(</span><span·class="o">&lt;</span><span·class="ss">value</span><span·class="o">&gt;</span><span·class="p"·data-group-id="4221266122-5">)</span><span·class="w">
  
165 </span><span·class="ss">label</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">value</span><span·class="o">&gt;</span></code></pre><p>where·<code·class="inline">&lt;value&gt;</code>·is·a·literal·or·a·variable.</p><p>A·check·can·also·include·an·assertion·on·operation·annotations.·The165 </span><span·class="ss">label</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="ss">value</span><span·class="o">&gt;</span></code></pre><p>where·<code·class="inline">&lt;value&gt;</code>·is·a·literal·or·a·variable.</p><p>A·check·can·also·include·an·assertion·on·operation·annotations.·The
166 assertion·is·written·as·a·map-like·pattern·following·the·argument166 assertion·is·written·as·a·map-like·pattern·following·the·argument
167 list,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">t0</span><span·class="p"·data-group-id="3947890654-1">(</span><span·class="p"·data-group-id="3947890654-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">167 list,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">t0</span><span·class="p"·data-group-id="9142700637-1">(</span><span·class="p"·data-group-id="9142700637-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
168 </span><span·class="c1">%ssa%·()·when·post_ssa_opt·-&gt;</span><span·class="w">168 </span><span·class="c1">%ssa%·()·when·post_ssa_opt·-&gt;</span><span·class="w">
169 </span><span·class="c1">%ssa%·_·=·call(fun·return_int/0)·{·result_type·=&gt;·{t_integer,{17,17}},</span><span·class="w">169 </span><span·class="c1">%ssa%·_·=·call(fun·return_int/0)·{·result_type·=&gt;·{t_integer,{17,17}},</span><span·class="w">
170 </span><span·class="c1">%ssa%······························location·=&gt;·{_,32}·},</span><span·class="w">170 </span><span·class="c1">%ssa%······························location·=&gt;·{_,32}·},</span><span·class="w">
171 </span><span·class="c1">%ssa%·_·=·call(fun·return_tuple/0)·{</span><span·class="w">171 </span><span·class="c1">%ssa%·_·=·call(fun·return_tuple/0)·{</span><span·class="w">
172 </span><span·class="c1">%ssa%····result_type·=&gt;·{t_tuple,2,true,#{1·=&gt;·{t_integer,{1,1}},</span><span·class="w">172 </span><span·class="c1">%ssa%····result_type·=&gt;·{t_tuple,2,true,#{1·=&gt;·{t_integer,{1,1}},</span><span·class="w">
173 </span><span·class="c1">%ssa%·····································2·=&gt;·{t_integer,{2,2}}}}</span><span·class="w">173 </span><span·class="c1">%ssa%·····································2·=&gt;·{t_integer,{2,2}}}}</span><span·class="w">
174 </span><span·class="c1">%ssa%·}.</span><span·class="w">174 </span><span·class="c1">%ssa%·}.</span><span·class="w">
175 ····</span><span·class="n">X</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">return_int</span><span·class="p"·data-group-id="3947890654-2">(</span><span·class="p"·data-group-id="3947890654-2">)</span><span·class="p">,</span><span·class="w">175 ····</span><span·class="n">X</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">return_int</span><span·class="p"·data-group-id="9142700637-2">(</span><span·class="p"·data-group-id="9142700637-2">)</span><span·class="p">,</span><span·class="w">
176 ····</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">return_tuple</span><span·class="p"·data-group-id="3947890654-3">(</span><span·class="p"·data-group-id="3947890654-3">)</span><span·class="p">,</span><span·class="w">176 ····</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">return_tuple</span><span·class="p"·data-group-id="9142700637-3">(</span><span·class="p"·data-group-id="9142700637-3">)</span><span·class="p">,</span><span·class="w">
177 ····</span><span·class="p"·data-group-id="3947890654-4">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="3947890654-4">}</span><span·class="p">.</span></code></pre><h2·id="semantics"·class="section-heading">177 ····</span><span·class="p"·data-group-id="9142700637-4">{</span><span·class="n">X</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Y</span><span·class="p"·data-group-id="9142700637-4">}</span><span·class="p">.</span></code></pre><h2·id="semantics"·class="section-heading">
178 ··<a·href="#semantics"·class="hover-link">178 ··<a·href="#semantics"·class="hover-link">
179 ····<i·class="ri-link-m"·aria-hidden="true"></i>179 ····<i·class="ri-link-m"·aria-hidden="true"></i>
180 ··</a>180 ··</a>
181 ··<span·class="text">Semantics</span>181 ··<span·class="text">Semantics</span>
182 </h2>182 </h2>
183 <p>When·an·SSA·assertion·is·matched·against·the·BEAM·SSA·for·a·function,183 <p>When·an·SSA·assertion·is·matched·against·the·BEAM·SSA·for·a·function,
184 patterns·are·applied·sequentially.·If·the·current·pattern·doesn't184 patterns·are·applied·sequentially.·If·the·current·pattern·doesn't
Offset 246, 15 lines modifiedOffset 246, 15 lines modified
246 ······<p·class="built-using">246 ······<p·class="built-using">
247 ········Built·using247 ········Built·using
248 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the248 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
249 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>249 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
250 ······</p>250 ······</p>
251 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>251 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
252 ····</footer>252 ····</footer>
253 ··</div>253 ··</div>
254 </main>254 </main>
255 </div>255 </div>
256 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>256 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
257 <script>257 <script>
258 ··document.addEventListener("DOMContentLoaded",·function·()·{258 ··document.addEventListener("DOMContentLoaded",·function·()·{
771 B
html2text {}
Max HTML report size reached
625 B
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/.build
    
Offset 17, 15 lines modifiedOffset 17, 15 lines modified
17 dist/lato-latin-300-normal-YUMVEFOL.woff217 dist/lato-latin-300-normal-YUMVEFOL.woff2
18 dist/lato-latin-400-normal-W7754I4D.woff218 dist/lato-latin-400-normal-W7754I4D.woff2
19 dist/lato-latin-700-normal-2XVSBPG4.woff219 dist/lato-latin-700-normal-2XVSBPG4.woff2
20 dist/lato-latin-ext-300-normal-VPGGJKJL.woff220 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
21 dist/lato-latin-ext-400-normal-N27NCBWW.woff221 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
22 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff222 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
23 dist/remixicon-NKANDIL5.woff223 dist/remixicon-NKANDIL5.woff2
24 dist/search_data-0B570D5C.js24 dist/search_data-9D4A4726.js
25 dist/sidebar_items-EA7182F4.js25 dist/sidebar_items-EA7182F4.js
26 engine_keys.html26 engine_keys.html
27 engine_load.html27 engine_load.html
28 fips.html28 fips.html
29 index.html29 index.html
30 licenses.html30 licenses.html
31 new_api.html31 new_api.html
1.46 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/algorithm_details.html
    
Offset 315, 15 lines modifiedOffset 315, 15 lines modified
315 ······<p·class="built-using">315 ······<p·class="built-using">
316 ········Built·using316 ········Built·using
317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
319 ······</p>319 ······</p>
320 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
321 ····</footer>321 ····</footer>
322 ··</div>322 ··</div>
323 </main>323 </main>
324 </div>324 </div>
325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
326 <script>326 <script>
327 ··document.addEventListener("DOMContentLoaded",·function·()·{327 ··document.addEventListener("DOMContentLoaded",·function·()·{
744 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/api-reference.html
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ······<p·class="built-using">181 ······<p·class="built-using">
182 ········Built·using182 ········Built·using
183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
185 ······</p>185 ······</p>
186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
187 ····</footer>187 ····</footer>
188 ··</div>188 ··</div>
189 </main>189 </main>
190 </div>190 </div>
191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
192 <script>192 <script>
193 ··document.addEventListener("DOMContentLoaded",·function·()·{193 ··document.addEventListener("DOMContentLoaded",·function·()·{
625 B
html2text {}
Max HTML report size reached
177 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/crypto.epub
2.98 KB
zipinfo {}
Max HTML report size reached
56.7 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
51.5 KB
OEBPS/new_api.xhtml
Max HTML report size reached
21.7 KB
OEBPS/engine_load.xhtml
Max HTML report size reached
15.6 KB
OEBPS/engine_keys.xhtml
Max HTML report size reached
26.8 KB
OEBPS/crypto.xhtml
Max HTML report size reached
1.21 KB
OEBPS/content.opf
1.18 KB
OEBPS/content.opf
Max HTML report size reached
28.3 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/crypto.html
    
Offset 591, 15 lines modifiedOffset 591, 15 lines modified
  
591 ····<div·class="summary-row">591 ····<div·class="summary-row">
592 ······<div·class="summary-signature">592 ······<div·class="summary-signature">
593 ········<a·href="#t:rsa_params/0"·data-no-tooltip·translate="no">rsa_params()</a>593 ········<a·href="#t:rsa_params/0"·data-no-tooltip·translate="no">rsa_params()</a>
  
594 ······</div>594 ······</div>
  
595 ········<div·class="summary-synopsis"><pre><code·class="text">rsa_public()·=·[E,·N]</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rsa_private</span><span·class="p"·data-group-id="5563343849-1">(</span><span·class="p"·data-group-id="5563343849-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5563343849-2">[</span><span·class="n">E</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·863,·SHA:·5824f20cc6ebf95fc80b108a5ae2a16762047bfa15c44909ee96a7ea5674142b·...·]-3">]</span></code></pre><p>Where·E·is·the·public·exponent,·N·is·public·modulus·and·D·is·the·private595 ········<div·class="summary-synopsis"><pre><code·class="text">rsa_public()·=·[E,·N]</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rsa_private</span><span·class="p"·data-group-id="9973048196-1">(</span><span·class="p"·data-group-id="9973048196-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9973048196-2">[</span><span·class="n">E</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·863,·SHA:·a7c68762a9a2a669a1a705a0de5dd139e48c09fcef4036f5d8c2edd308ccc57f·...·]-3">]</span></code></pre><p>Where·E·is·the·public·exponent,·N·is·public·modulus·and·D·is·the·private
596 exponent.·The·longer·key·format·contains·redundant·information·that·will·make596 exponent.·The·longer·key·format·contains·redundant·information·that·will·make
597 the·calculation·faster.·P1·and·P2·are·first·and·second·prime·factors.·E1·and·E2597 the·calculation·faster.·P1·and·P2·are·first·and·second·prime·factors.·E1·and·E2
598 are·first·and·second·exponents.·C·is·the·CRT·coefficient.·The·terminology·is598 are·first·and·second·exponents.·C·is·the·CRT·coefficient.·The·terminology·is
599 taken·from·<a·href="http://www.ietf.org/rfc/rfc3447.txt">RFC·3447</a>.</p></div>599 taken·from·<a·href="http://www.ietf.org/rfc/rfc3447.txt">RFC·3447</a>.</p></div>
  
600 ····</div>600 ····</div>
  
Offset 3123, 15 lines modifiedOffset 3123, 15 lines modified
  
3123 ······<div·class="specs">3123 ······<div·class="specs">
  
3124 ··········<pre·translate="no"><span·class="attribute">-type</span>·rsa_params()·::·{ModulusSizeInBits·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·PublicExponent·::·<a·href="#t:key_integer/0">key_integer</a>()}.</pre>3124 ··········<pre·translate="no"><span·class="attribute">-type</span>·rsa_params()·::·{ModulusSizeInBits·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·PublicExponent·::·<a·href="#t:key_integer/0">key_integer</a>()}.</pre>
  
3125 ······</div>3125 ······</div>
  
3126 <pre><code·class="text">rsa_public()·=·[E,·N]</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rsa_private</span><span·class="p"·data-group-id="5563343849-1">(</span><span·class="p"·data-group-id="5563343849-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5563343849-2">[</span><span·class="n">E</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·863,·SHA:·5824f20cc6ebf95fc80b108a5ae2a16762047bfa15c44909ee96a7ea5674142b·...·]-3">]</span></code></pre><p>Where·E·is·the·public·exponent,·N·is·public·modulus·and·D·is·the·private3126 <pre><code·class="text">rsa_public()·=·[E,·N]</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">rsa_private</span><span·class="p"·data-group-id="9973048196-1">(</span><span·class="p"·data-group-id="9973048196-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9973048196-2">[</span><span·class="n">E</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·863,·SHA:·a7c68762a9a2a669a1a705a0de5dd139e48c09fcef4036f5d8c2edd308ccc57f·...·]-3">]</span></code></pre><p>Where·E·is·the·public·exponent,·N·is·public·modulus·and·D·is·the·private
3127 exponent.·The·longer·key·format·contains·redundant·information·that·will·make3127 exponent.·The·longer·key·format·contains·redundant·information·that·will·make
3128 the·calculation·faster.·P1·and·P2·are·first·and·second·prime·factors.·E1·and·E23128 the·calculation·faster.·P1·and·P2·are·first·and·second·prime·factors.·E1·and·E2
3129 are·first·and·second·exponents.·C·is·the·CRT·coefficient.·The·terminology·is3129 are·first·and·second·exponents.·C·is·the·CRT·coefficient.·The·terminology·is
3130 taken·from·<a·href="http://www.ietf.org/rfc/rfc3447.txt">RFC·3447</a>.</p>3130 taken·from·<a·href="http://www.ietf.org/rfc/rfc3447.txt">RFC·3447</a>.</p>
3131 ··</section>3131 ··</section>
3132 </section>3132 </section>
3133 <section·class="detail"·id="t:rsa_private/0">3133 <section·class="detail"·id="t:rsa_private/0">
Offset 5542, 17 lines modifiedOffset 5542, 17 lines modified
5542 ······</div>5542 ······</div>
  
5543 <p>Create·a·state·object·for·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html">random·number·generation</a>,·in·order·to5543 <p>Create·a·state·object·for·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html">random·number·generation</a>,·in·order·to
5544 generate·cryptographically·strong·random·numbers·(based·on·OpenSSL's5544 generate·cryptographically·strong·random·numbers·(based·on·OpenSSL's
5545 <code·class="inline">BN_rand_range</code>).</p><p>Saves·the·state·in·the·process·dictionary·before·returning·it·as5545 <code·class="inline">BN_rand_range</code>).</p><p>Saves·the·state·in·the·process·dictionary·before·returning·it·as
5546 well.·See·also·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html#seed/1"><code·class="inline">rand:seed/1</code></a>·and·<a·href="#rand_seed_s/0"><code·class="inline">rand_seed_s/0</code></a>.</p><p>When·using·the·state·object·from·this·function·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html"><code·class="inline">rand</code></a>·functions·using·it5546 well.·See·also·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html#seed/1"><code·class="inline">rand:seed/1</code></a>·and·<a·href="#rand_seed_s/0"><code·class="inline">rand_seed_s/0</code></a>.</p><p>When·using·the·state·object·from·this·function·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html"><code·class="inline">rand</code></a>·functions·using·it
5547 may·raise·exception·<code·class="inline">error:low_entropy</code>·in·case·the·random·generator·failed·due5547 may·raise·exception·<code·class="inline">error:low_entropy</code>·in·case·the·random·generator·failed·due
5548 to·lack·of·secure·&quot;randomness&quot;.</p><p><em>Example</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">rand_seed</span><span·class="p"·data-group-id="0117725404-1">(</span><span·class="p"·data-group-id="0117725404-1">)</span><span·class="p">,</span><span·class="w">5548 to·lack·of·secure·&quot;randomness&quot;.</p><p><em>Example</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">rand_seed</span><span·class="p"·data-group-id="3326644332-1">(</span><span·class="p"·data-group-id="3326644332-1">)</span><span·class="p">,</span><span·class="w">
5549 </span><span·class="p">_</span><span·class="n">IntegerValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="0117725404-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="0117725404-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·[1;·42]</span><span·class="w">5549 </span><span·class="p">_</span><span·class="n">IntegerValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="3326644332-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="3326644332-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·[1;·42]</span><span·class="w">
5550 </span><span·class="p">_</span><span·class="n">FloatValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="0117725404-3">(</span><span·class="p"·data-group-id="0117725404-3">)</span><span·class="p">.</span><span·class="w">·····</span><span·class="c1">%·[0.0;·1.0[</span></code></pre>5550 </span><span·class="p">_</span><span·class="n">FloatValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="3326644332-3">(</span><span·class="p"·data-group-id="3326644332-3">)</span><span·class="p">.</span><span·class="w">·····</span><span·class="c1">%·[0.0;·1.0[</span></code></pre>
5551 ··</section>5551 ··</section>
5552 </section>5552 </section>
5553 <section·class="detail"·id="rand_seed/1">5553 <section·class="detail"·id="rand_seed/1">
  
5554 ··<div·class="detail-header">5554 ··<div·class="detail-header">
5555 ····<a·href="#rand_seed/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">5555 ····<a·href="#rand_seed/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
5556 ······<i·class="ri-link-m"·aria-hidden="true"></i>5556 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 5610, 17 lines modifiedOffset 5610, 17 lines modified
  
5610 ······</div>5610 ······</div>
  
5611 <p>Create·a·state·object·for·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html">random·number·generation</a>,·in·order·to5611 <p>Create·a·state·object·for·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html">random·number·generation</a>,·in·order·to
5612 generate·cryptographically·strong·random·numbers.</p><p>Saves·the·state·in·the·process·dictionary·before·returning·it·as·well.·See·also5612 generate·cryptographically·strong·random·numbers.</p><p>Saves·the·state·in·the·process·dictionary·before·returning·it·as·well.·See·also
5613 <a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html#seed/1"><code·class="inline">rand:seed/1</code></a>·and·<a·href="#rand_seed_alg_s/1"><code·class="inline">rand_seed_alg_s/1</code></a>.</p><p>When·using·the·state·object·from·this·function·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html"><code·class="inline">rand</code></a>·functions·using·it5613 <a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html#seed/1"><code·class="inline">rand:seed/1</code></a>·and·<a·href="#rand_seed_alg_s/1"><code·class="inline">rand_seed_alg_s/1</code></a>.</p><p>When·using·the·state·object·from·this·function·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html"><code·class="inline">rand</code></a>·functions·using·it
5614 may·raise·exception·<code·class="inline">error:low_entropy</code>·in·case·the·random·generator·failed·due5614 may·raise·exception·<code·class="inline">error:low_entropy</code>·in·case·the·random·generator·failed·due
5615 to·lack·of·secure·&quot;randomness&quot;.</p><p><em>Example</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">rand_seed_alg</span><span·class="p"·data-group-id="5196929864-1">(</span><span·class="ss">crypto_cache</span><span·class="p"·data-group-id="5196929864-1">)</span><span·class="p">,</span><span·class="w">5615 to·lack·of·secure·&quot;randomness&quot;.</p><p><em>Example</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">rand_seed_alg</span><span·class="p"·data-group-id="6897601158-1">(</span><span·class="ss">crypto_cache</span><span·class="p"·data-group-id="6897601158-1">)</span><span·class="p">,</span><span·class="w">
5616 </span><span·class="p">_</span><span·class="n">IntegerValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="5196929864-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="5196929864-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·[1;·42]</span><span·class="w">5616 </span><span·class="p">_</span><span·class="n">IntegerValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="6897601158-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="6897601158-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·[1;·42]</span><span·class="w">
5617 </span><span·class="p">_</span><span·class="n">FloatValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="5196929864-3">(</span><span·class="p"·data-group-id="5196929864-3">)</span><span·class="p">.</span><span·class="w">·····</span><span·class="c1">%·[0.0;·1.0[</span></code></pre>5617 </span><span·class="p">_</span><span·class="n">FloatValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="6897601158-3">(</span><span·class="p"·data-group-id="6897601158-3">)</span><span·class="p">.</span><span·class="w">·····</span><span·class="c1">%·[0.0;·1.0[</span></code></pre>
5618 ··</section>5618 ··</section>
5619 </section>5619 </section>
5620 <section·class="detail"·id="rand_seed_alg/2">5620 <section·class="detail"·id="rand_seed_alg/2">
  
5621 ··<div·class="detail-header">5621 ··<div·class="detail-header">
5622 ····<a·href="#rand_seed_alg/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">5622 ····<a·href="#rand_seed_alg/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
5623 ······<i·class="ri-link-m"·aria-hidden="true"></i>5623 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 5644, 20 lines modifiedOffset 5644, 20 lines modified
  
5644 ··········<pre·translate="no"><span·class="attribute">-spec</span>·rand_seed_alg(Alg·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),·Seed·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->·{<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html#t:alg_handler/0">rand:alg_handler</a>(),·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>()·|·<a·href="#t:rand_cache_seed/0">rand_cache_seed</a>()}.</pre>5644 ··········<pre·translate="no"><span·class="attribute">-spec</span>·rand_seed_alg(Alg·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),·Seed·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->·{<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html#t:alg_handler/0">rand:alg_handler</a>(),·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>()·|·<a·href="#t:rand_cache_seed/0">rand_cache_seed</a>()}.</pre>
  
5645 ······</div>5645 ······</div>
  
5646 <p>Creates·a·state·object·for·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html">random·number·generation</a>,·in·order·to5646 <p>Creates·a·state·object·for·<a·href="../../../../lib/stdlib-6.0.1/doc/html/rand.html">random·number·generation</a>,·in·order·to
5647 generate·cryptographically·unpredictable·random·numbers.</p><p>Saves·the·state·in·the·process·dictionary·before·returning·it·as·well.·See·also5647 generate·cryptographically·unpredictable·random·numbers.</p><p>Saves·the·state·in·the·process·dictionary·before·returning·it·as·well.·See·also
5648 <a·href="#rand_seed_alg_s/2"><code·class="inline">rand_seed_alg_s/2</code></a>.</p><p><em>Example</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">rand_seed_alg</span><span·class="p"·data-group-id="0158819676-1">(</span><span·class="ss">crypto_aes</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my·seed&quot;</span><span·class="p"·data-group-id="0158819676-1">)</span><span·class="p">,</span><span·class="w">5648 <a·href="#rand_seed_alg_s/2"><code·class="inline">rand_seed_alg_s/2</code></a>.</p><p><em>Example</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">rand_seed_alg</span><span·class="p"·data-group-id="9518646297-1">(</span><span·class="ss">crypto_aes</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my·seed&quot;</span><span·class="p"·data-group-id="9518646297-1">)</span><span·class="p">,</span><span·class="w">
5649 </span><span·class="n">IntegerValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="0158819676-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="0158819676-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·[1;·42]</span><span·class="w">5649 </span><span·class="n">IntegerValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="9518646297-2">(</span><span·class="mi">42</span><span·class="p"·data-group-id="9518646297-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·[1;·42]</span><span·class="w">
5650 </span><span·class="n">FloatValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="0158819676-3">(</span><span·class="p"·data-group-id="0158819676-3">)</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%·[0.0;·1.0[</span><span·class="w">5650 </span><span·class="n">FloatValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="9518646297-3">(</span><span·class="p"·data-group-id="9518646297-3">)</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%·[0.0;·1.0[</span><span·class="w">
5651 </span><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">rand_seed_alg</span><span·class="p"·data-group-id="0158819676-4">(</span><span·class="ss">crypto_aes</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my·seed&quot;</span><span·class="p"·data-group-id="0158819676-4">)</span><span·class="p">,</span><span·class="w">5651 </span><span·class="p">_</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">rand_seed_alg</span><span·class="p"·data-group-id="9518646297-4">(</span><span·class="ss">crypto_aes</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my·seed&quot;</span><span·class="p"·data-group-id="9518646297-4">)</span><span·class="p">,</span><span·class="w">
5652 </span><span·class="n">IntegerValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="0158819676-5">(</span><span·class="mi">42</span><span·class="p"·data-group-id="0158819676-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Same·values</span><span·class="w">5652 </span><span·class="n">IntegerValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="9518646297-5">(</span><span·class="mi">42</span><span·class="p"·data-group-id="9518646297-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Same·values</span><span·class="w">
5653 </span><span·class="n">FloatValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="0158819676-6">(</span><span·class="p"·data-group-id="0158819676-6">)</span><span·class="p">.</span><span·class="w">·····</span><span·class="c1">%·again</span></code></pre>5653 </span><span·class="n">FloatValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="9518646297-6">(</span><span·class="p"·data-group-id="9518646297-6">)</span><span·class="p">.</span><span·class="w">·····</span><span·class="c1">%·again</span></code></pre>
5654 ··</section>5654 ··</section>
5655 </section>5655 </section>
5656 <section·class="detail"·id="rand_seed_alg_s/1">5656 <section·class="detail"·id="rand_seed_alg_s/1">
  
5657 ··<div·class="detail-header">5657 ··<div·class="detail-header">
5658 ····<a·href="#rand_seed_alg_s/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">5658 ····<a·href="#rand_seed_alg_s/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
5659 ······<i·class="ri-link-m"·aria-hidden="true"></i>5659 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 6146, 20 lines modifiedOffset 6146, 20 lines modified
6146 ················cryptolib_version_compiled·=>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·|·undefined,6146 ················cryptolib_version_compiled·=>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·|·undefined,
6147 ················cryptolib_version_linked·:=·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),6147 ················cryptolib_version_linked·:=·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),
6148 ················link_type·:=·dynamic·|·static,6148 ················link_type·:=·dynamic·|·static,
6149 ················otp_crypto_version·:=·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()}.</pre>6149 ················otp_crypto_version·:=·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()}.</pre>
  
6150 ······</div>6150 ······</div>
  
6151 <p>Get·information·about·crypto·and·the·OpenSSL·backend.</p><p>Returns·a·map·with·information·about·the·compilation·and·linking·of·crypto.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">info</span><span·class="p"·data-group-id="7435910150-1">(</span><span·class="p"·data-group-id="7435910150-1">)</span><span·class="p">.</span><span·class="w">6151 <p>Get·information·about·crypto·and·the·OpenSSL·backend.</p><p>Returns·a·map·with·information·about·the·compilation·and·linking·of·crypto.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">info</span><span·class="p"·data-group-id="4158264390-1">(</span><span·class="p"·data-group-id="4158264390-1">)</span><span·class="p">.</span><span·class="w">
6152 </span><span·class="p"·data-group-id="7435910150-2">#{</span><span·class="ss">compile_type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">6152 </span><span·class="p"·data-group-id="4158264390-2">#{</span><span·class="ss">compile_type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">
6153 ··</span><span·class="ss">cryptolib_version_compiled</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;OpenSSL·3.0.0·7·sep·2021&quot;</span><span·class="p">,</span><span·class="w">6153 ··</span><span·class="ss">cryptolib_version_compiled</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;OpenSSL·3.0.0·7·sep·2021&quot;</span><span·class="p">,</span><span·class="w">
6154 ··</span><span·class="ss">cryptolib_version_linked</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;OpenSSL·3.0.0·7·sep·2021&quot;</span><span·class="p">,</span><span·class="w">6154 ··</span><span·class="ss">cryptolib_version_linked</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;OpenSSL·3.0.0·7·sep·2021&quot;</span><span·class="p">,</span><span·class="w">
6155 ··</span><span·class="ss">link_type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">dynamic</span><span·class="p">,</span><span·class="w">6155 ··</span><span·class="ss">link_type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">dynamic</span><span·class="p">,</span><span·class="w">
6156 ··</span><span·class="ss">otp_crypto_version</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;5.0.2&quot;</span><span·class="p"·data-group-id="7435910150-2">}</span><span·class="w">6156 ··</span><span·class="ss">otp_crypto_version</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;5.0.2&quot;</span><span·class="p"·data-group-id="4158264390-2">}</span><span·class="w">
6157 </span><span·class="mi">2</span><span·class="o">&gt;</span></code></pre><p>More·association·types·than·documented·may·be·present·in·the·map.</p>6157 </span><span·class="mi">2</span><span·class="o">&gt;</span></code></pre><p>More·association·types·than·documented·may·be·present·in·the·map.</p>
6158 ··</section>6158 ··</section>
6159 </section>6159 </section>
6160 <section·class="detail"·id="info_fips/0">6160 <section·class="detail"·id="info_fips/0">
  
6161 ··<div·class="detail-header">6161 ··<div·class="detail-header">
6162 ····<a·href="#info_fips/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">6162 ····<a·href="#info_fips/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 6218, 16 lines modifiedOffset 6218, 16 lines modified
6218 ··········<pre·translate="no"><span·class="attribute">-spec</span>·info_lib()·->·[{Name,·VerNum,·VerStr}]6218 ··········<pre·translate="no"><span·class="attribute">-spec</span>·info_lib()·->·[{Name,·VerNum,·VerStr}]
6219 ··················when·Name·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),·VerNum·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·VerStr·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>6219 ··················when·Name·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),·VerNum·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·VerStr·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>
  
6220 ······</div>6220 ······</div>
  
6221 <p>Get·the·name·and·version·of·the·libraries·used·by·crypto.</p><p><code·class="inline">Name</code>·is·the·name·of·the·library.·<code·class="inline">VerNum</code>·is·the·numeric·version·according·to6221 <p>Get·the·name·and·version·of·the·libraries·used·by·crypto.</p><p><code·class="inline">Name</code>·is·the·name·of·the·library.·<code·class="inline">VerNum</code>·is·the·numeric·version·according·to
6222 the·library's·own·versioning·scheme.·<code·class="inline">VerStr</code>·contains·a·text·variant·of·the6222 the·library's·own·versioning·scheme.·<code·class="inline">VerStr</code>·contains·a·text·variant·of·the
6223 version.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">info_lib</span><span·class="p"·data-group-id="4025709559-1">(</span><span·class="p"·data-group-id="4025709559-1">)</span><span·class="p">.</span><span·class="w">6223 version.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">info_lib</span><span·class="p"·data-group-id="5678952806-1">(</span><span·class="p"·data-group-id="5678952806-1">)</span><span·class="p">.</span><span·class="w">
6224 </span><span·class="p"·data-group-id="4025709559-2">[</span><span·class="p"·data-group-id="4025709559-3">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;OpenSSL&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="mi">269484095</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·251,·SHA:·31e68864f835412e384395740103af9b44ae8de9995b0423416b2d586a039f19·...·]-2">]</span></code></pre><blockquote><h4·class="info">Note</h4><p>From·OTP·R16·the·<em>numeric·version</em>·represents·the·version·of·the·OpenSSL6224 </span><span·class="p"·data-group-id="5678952806-2">[</span><span·class="p"·data-group-id="5678952806-3">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;OpenSSL&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="mi">269484095</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·251,·SHA:·5c6af0ccb67165a04b9d82b859f1b3ac72ecaa347c53726fec3308015bb7bd81·...·]-2">]</span></code></pre><blockquote><h4·class="info">Note</h4><p>From·OTP·R16·the·<em>numeric·version</em>·represents·the·version·of·the·OpenSSL
6225 <em>header·files</em>·(<code·class="inline">openssl/opensslv.h</code>)·used·when·crypto·was·compiled.·The·text6225 <em>header·files</em>·(<code·class="inline">openssl/opensslv.h</code>)·used·when·crypto·was·compiled.·The·text
6226 variant·represents·the·libcrypto·library·used·at·runtime.·In·earlier·OTP6226 variant·represents·the·libcrypto·library·used·at·runtime.·In·earlier·OTP
6227 versions·both·numeric·and·text·was·taken·from·the·library.</p></blockquote>6227 versions·both·numeric·and·text·was·taken·from·the·library.</p></blockquote>
6228 ··</section>6228 ··</section>
6229 </section>6229 </section>
6230 <section·class="detail"·id="mod_pow/3">6230 <section·class="detail"·id="mod_pow/3">
  
Offset 7172, 15 lines modifiedOffset 7172, 15 lines modified
Max diff block lines reached; 680/28110 bytes (2.42%) of diff not shown.
761 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/crypto_app.html
    
Offset 221, 15 lines modifiedOffset 221, 15 lines modified
221 ······<p·class="built-using">221 ······<p·class="built-using">
222 ········Built·using222 ········Built·using
223 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the223 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
224 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>224 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
225 ······</p>225 ······</p>
226 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>226 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
227 ····</footer>227 ····</footer>
228 ··</div>228 ··</div>
229 </main>229 </main>
230 </div>230 </div>
231 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>231 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
232 <script>232 <script>
233 ··document.addEventListener("DOMContentLoaded",·function·()·{233 ··document.addEventListener("DOMContentLoaded",·function·()·{
653 B
html2text {}
Max HTML report size reached
17.0 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/engine_keys.html
    
Offset 157, 47 lines modifiedOffset 157, 47 lines modified
157 <h3·id="sign-with-an-engine-stored-private-key"·class="section-heading">157 <h3·id="sign-with-an-engine-stored-private-key"·class="section-heading">
158 ··<a·href="#sign-with-an-engine-stored-private-key"·class="hover-link">158 ··<a·href="#sign-with-an-engine-stored-private-key"·class="hover-link">
159 ····<i·class="ri-link-m"·aria-hidden="true"></i>159 ····<i·class="ri-link-m"·aria-hidden="true"></i>
160 ··</a>160 ··</a>
161 ··<span·class="text">Sign·with·an·engine·stored·private·key</span>161 ··<span·class="text">Sign·with·an·engine·stored·private·key</span>
162 </h3>162 </h3>
163 <p>This·example·shows·how·to·construct·a·key·reference·that·is·used·in·a·sign163 <p>This·example·shows·how·to·construct·a·key·reference·that·is·used·in·a·sign
164 operation.·The·actual·key·is·stored·in·the·engine·that·is·loaded·at·prompt·1.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="2970279075-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EngineRef</span><span·class="p"·data-group-id="2970279075-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·276,·SHA:·2ae6ec36b5cf4b97ce7342f6559187425687ee3e471ec1f2c4e028835aea480b·...·]-2">)</span><span·class="p">.</span><span·class="w">164 operation.·The·actual·key·is·stored·in·the·engine·that·is·loaded·at·prompt·1.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="1958714058-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EngineRef</span><span·class="p"·data-group-id="1958714058-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·276,·SHA:·2d4ca035b7d3152a20ccdae7f6a760001f1f47866fabd3f5510195604b74c022·...·]-2">)</span><span·class="p">.</span><span·class="w">
165 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">165 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
166 </span><span·class="p"·data-group-id="2970279075-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2399045421</span><span·class="p">.</span><span·class="mf">3028942852.173962</span><span·[·...·truncated·by·diffoscope;·len:·62,·SHA:·2c1c4fcaec6e067df35ee56076e2df70c69e7b39044abdaab72cf8c90b2d5e41·...·]-3">}</span><span·class="gp·unselectable">166 </span><span·class="p"·data-group-id="1958714058-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2399045421</span><span·class="p">.</span><span·class="mf">3028942852.173962</span><span·[·...·truncated·by·diffoscope;·len:·62,·SHA:·ac8aca98b48d951eb52bd248fcb454e0f8fee64be1eb36ae294bfccf0a5cc9df·...·]-3">}</span><span·class="gp·unselectable">
167 2&gt;·</span><span·class="n">PrivKey</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2970279075-4">#{</span><span·class="ss">engine</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">EngineRef</span><span·class="p">,</span><span·class="w">167 2&gt;·</span><span·class="n">PrivKey</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1958714058-4">#{</span><span·class="ss">engine</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">EngineRef</span><span·class="p">,</span><span·class="w">
168 ···············</span><span·class="ss">key_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;id·of·the·private·key·in·Engine&quot;</span><span·class="p"·data-group-id="2970279075-4">}</span><span·class="p">.</span><span·class="w">168 ···············</span><span·class="ss">key_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;id·of·the·private·key·in·Engine&quot;</span><span·class="p"·data-group-id="1958714058-4">}</span><span·class="p">.</span><span·class="w">
169 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">169 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">
170 3&gt;·</span><span·class="n">Signature</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">sign</span><span·class="p"·data-group-id="2970279075-5">(</span><span·class="ss">rsa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sha</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;The·message&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·306465928d30d452571e274106dcd4085aea55618f5f57c3cf764dec47a69501·...·]-5">)</span><span·class="p">.</span><span·class="w">170 3&gt;·</span><span·class="n">Signature</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">sign</span><span·class="p"·data-group-id="1958714058-5">(</span><span·class="ss">rsa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sha</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;The·message&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·143,·SHA:·0c7004d717d533037f964cf428f3a5a636c369db7c0e71d1d3c8e0466324b5d8·...·]-5">)</span><span·class="p">.</span><span·class="w">
171 </span><span·class="p">&lt;&lt;</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">125</span><span·class="p">,</span><span·class="mi">254</span><span·class="p">,</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">233</span><span·class="p">,</span><span·class="mi">84</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">83</span><span·class="p">,</span><span·class="mi">63</span><span·class="p">,</span><span·class="mi">168</span><span·class="p">,</span><span·class="mi">28</span><span·class="p">,</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">214</span><span·class="p">,</span><span·class="mi">121</span><span·class="p">,</span><span·class="mi">76</span><span·class="p">,</span><span·class="w">171 </span><span·class="p">&lt;&lt;</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">125</span><span·class="p">,</span><span·class="mi">254</span><span·class="p">,</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">233</span><span·class="p">,</span><span·class="mi">84</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">83</span><span·class="p">,</span><span·class="mi">63</span><span·class="p">,</span><span·class="mi">168</span><span·class="p">,</span><span·class="mi">28</span><span·class="p">,</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">214</span><span·class="p">,</span><span·class="mi">121</span><span·class="p">,</span><span·class="mi">76</span><span·class="p">,</span><span·class="w">
172 ··</span><span·class="mi">207</span><span·class="p">,</span><span·class="mi">177</span><span·class="p">,</span><span·class="mi">124</span><span·class="p">,</span><span·class="mi">183</span><span·class="p">,</span><span·class="mi">156</span><span·class="p">,</span><span·class="mi">185</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="mi">243</span><span·class="p">,</span><span·class="mi">36</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">125</span><span·class="p">,</span><span·class="mi">230</span><span·class="p">,</span><span·class="mi">231</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span></code></pre><h3·id="verify-with-an-engine-stored-public-key"·class="section-heading">172 ··</span><span·class="mi">207</span><span·class="p">,</span><span·class="mi">177</span><span·class="p">,</span><span·class="mi">124</span><span·class="p">,</span><span·class="mi">183</span><span·class="p">,</span><span·class="mi">156</span><span·class="p">,</span><span·class="mi">185</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="mi">243</span><span·class="p">,</span><span·class="mi">36</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">125</span><span·class="p">,</span><span·class="mi">230</span><span·class="p">,</span><span·class="mi">231</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span></code></pre><h3·id="verify-with-an-engine-stored-public-key"·class="section-heading">
173 ··<a·href="#verify-with-an-engine-stored-public-key"·class="hover-link">173 ··<a·href="#verify-with-an-engine-stored-public-key"·class="hover-link">
174 ····<i·class="ri-link-m"·aria-hidden="true"></i>174 ····<i·class="ri-link-m"·aria-hidden="true"></i>
175 ··</a>175 ··</a>
176 ··<span·class="text">Verify·with·an·engine·stored·public·key</span>176 ··<span·class="text">Verify·with·an·engine·stored·public·key</span>
177 </h3>177 </h3>
178 <p>Here·the·signature·and·message·in·the·last·example·is·verifyed·using·the·public178 <p>Here·the·signature·and·message·in·the·last·example·is·verifyed·using·the·public
179 key.·The·public·key·is·stored·in·an·engine,·only·to·exemplify·that·it·is179 key.·The·public·key·is·stored·in·an·engine,·only·to·exemplify·that·it·is
180 possible.·The·public·key·could·of·course·be·handled·openly·as·usual.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="n">PublicKey</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2983517832-1">#{</span><span·class="ss">engine</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">EngineRef</span><span·class="p">,</span><span·class="w">180 possible.·The·public·key·could·of·course·be·handled·openly·as·usual.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="n">PublicKey</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6901360917-1">#{</span><span·class="ss">engine</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">EngineRef</span><span·class="p">,</span><span·class="w">
181 ·················</span><span·class="ss">key_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;id·of·the·public·key·in·Engine&quot;</span><span·class="p"·data-group-id="2983517832-1">}</span><span·class="p">.</span><span·class="w">181 ·················</span><span·class="ss">key_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;id·of·the·public·key·in·Engine&quot;</span><span·class="p"·data-group-id="6901360917-1">}</span><span·class="p">.</span><span·class="w">
182 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">182 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">
183 5&gt;·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">verify</span><span·class="p"·data-group-id="2983517832-2">(</span><span·class="ss">rsa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sha</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;The·message&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·225,·SHA:·92f9e062adfa289afc3e292df9de8e17a8e25bd52b15cc25986390088ec350f5·...·]-2">)</span><span·class="p">.</span><span·class="w">183 5&gt;·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">verify</span><span·class="p"·data-group-id="6901360917-2">(</span><span·class="ss">rsa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sha</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;The·message&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·225,·SHA:·1bc9412ff43b7e74227c9cff64b2e5977b82a249792054f2d92f3188af494493·...·]-2">)</span><span·class="p">.</span><span·class="w">
184 </span><span·class="ss">true</span><span·class="w">184 </span><span·class="ss">true</span><span·class="w">
185 </span><span·class="mi">6</span><span·class="o">&gt;</span></code></pre><h3·id="using-a-password-protected-private-key"·class="section-heading">185 </span><span·class="mi">6</span><span·class="o">&gt;</span></code></pre><h3·id="using-a-password-protected-private-key"·class="section-heading">
186 ··<a·href="#using-a-password-protected-private-key"·class="hover-link">186 ··<a·href="#using-a-password-protected-private-key"·class="hover-link">
187 ····<i·class="ri-link-m"·aria-hidden="true"></i>187 ····<i·class="ri-link-m"·aria-hidden="true"></i>
188 ··</a>188 ··</a>
189 ··<span·class="text">Using·a·password·protected·private·key</span>189 ··<span·class="text">Using·a·password·protected·private·key</span>
190 </h3>190 </h3>
191 <p>The·same·example·as·the·first·sign·example,·except·that·a·password·protects·the191 <p>The·same·example·as·the·first·sign·example,·except·that·a·password·protects·the
192 key·down·in·the·Engine.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">6&gt;·</span><span·class="n">PrivKeyPwd</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1485785231-1">#{</span><span·class="ss">engine</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">EngineRef</span><span·class="p">,</span><span·class="w">192 key·down·in·the·Engine.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">6&gt;·</span><span·class="n">PrivKeyPwd</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2516035763-1">#{</span><span·class="ss">engine</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">EngineRef</span><span·class="p">,</span><span·class="w">
193 ··················</span><span·class="ss">key_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;id·of·the·pwd·protected·private·key·in·Engine&quot;</span><span·class="p">,</span><span·class="w">193 ··················</span><span·class="ss">key_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;id·of·the·pwd·protected·private·key·in·Engine&quot;</span><span·class="p">,</span><span·class="w">
194 »       »       ··</span><span·class="ss">password</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;password&quot;</span><span·class="p"·data-group-id="1485785231-1">}</span><span·class="p">.</span><span·class="w">194 »       »       ··</span><span·class="ss">password</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;password&quot;</span><span·class="p"·data-group-id="2516035763-1">}</span><span·class="p">.</span><span·class="w">
195 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">195 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">
196 7&gt;·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">sign</span><span·class="p"·data-group-id="1485785231-2">(</span><span·class="ss">rsa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sha</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;The·message&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·146,·SHA:·ad5b31661d481175238db0157f0f5e4a6a46147a785856f7fd4b26700d78392c·...·]-2">)</span><span·class="p">.</span><span·class="w">196 7&gt;·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">sign</span><span·class="p"·data-group-id="2516035763-2">(</span><span·class="ss">rsa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sha</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;The·message&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·146,·SHA:·88d464fca6d608fe6d390a4a09da0cfb8cc262e4c9f8aa1c2050d5a6ddc76e06·...·]-2">)</span><span·class="p">.</span><span·class="w">
197 </span><span·class="p">&lt;&lt;</span><span·class="mi">140</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">168</span><span·class="p">,</span><span·class="mi">101</span><span·class="p">,</span><span·class="mi">234</span><span·class="p">,</span><span·class="mi">211</span><span·class="p">,</span><span·class="mi">146</span><span·class="p">,</span><span·class="mi">183</span><span·class="p">,</span><span·class="mi">231</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">85</span><span·class="p">,</span><span·class="mi">163</span><span·class="p">,</span><span·class="w">197 </span><span·class="p">&lt;&lt;</span><span·class="mi">140</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">168</span><span·class="p">,</span><span·class="mi">101</span><span·class="p">,</span><span·class="mi">234</span><span·class="p">,</span><span·class="mi">211</span><span·class="p">,</span><span·class="mi">146</span><span·class="p">,</span><span·class="mi">183</span><span·class="p">,</span><span·class="mi">231</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">85</span><span·class="p">,</span><span·class="mi">163</span><span·class="p">,</span><span·class="w">
198 ··</span><span·class="mi">175</span><span·class="p">,</span><span·class="mi">106</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">241</span><span·class="p">,</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">120</span><span·class="p">,</span><span·class="mi">72</span><span·class="p">,</span><span·class="mi">149</span><span·class="p">,</span><span·class="mi">181</span><span·class="p">,</span><span·class="mi">181</span><span·class="p">,</span><span·class="mi">194</span><span·class="p">,</span><span·class="mi">154</span><span·class="p">,</span><span·class="mi">175</span><span·class="p">,</span><span·class="mi">76</span><span·class="p">,</span><span·class="w">198 ··</span><span·class="mi">175</span><span·class="p">,</span><span·class="mi">106</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">241</span><span·class="p">,</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">120</span><span·class="p">,</span><span·class="mi">72</span><span·class="p">,</span><span·class="mi">149</span><span·class="p">,</span><span·class="mi">181</span><span·class="p">,</span><span·class="mi">181</span><span·class="p">,</span><span·class="mi">194</span><span·class="p">,</span><span·class="mi">154</span><span·class="p">,</span><span·class="mi">175</span><span·class="p">,</span><span·class="mi">76</span><span·class="p">,</span><span·class="w">
199 ··</span><span·class="mi">223</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="w">199 ··</span><span·class="mi">223</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="w">
200 </span><span·class="mi">8</span><span·class="o">&gt;</span></code></pre>200 </span><span·class="mi">8</span><span·class="o">&gt;</span></code></pre>
201 </div>201 </div>
  
202 <div·class="bottom-actions"·id="bottom-actions">202 <div·class="bottom-actions"·id="bottom-actions">
Offset 244, 15 lines modifiedOffset 244, 15 lines modified
244 ······<p·class="built-using">244 ······<p·class="built-using">
245 ········Built·using245 ········Built·using
246 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the246 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
247 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>247 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
248 ······</p>248 ······</p>
249 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>249 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
250 ····</footer>250 ····</footer>
251 ··</div>251 ··</div>
252 </main>252 </main>
253 </div>253 </div>
254 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>254 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
255 <script>255 <script>
256 ··document.addEventListener("DOMContentLoaded",·function·()·{256 ··document.addEventListener("DOMContentLoaded",·function·()·{
611 B
html2text {}
Max HTML report size reached
23.3 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/engine_load.html
    
Offset 148, 64 lines modifiedOffset 148, 64 lines modified
148 <h3·id="dynamically-load-an-engine-from-default-directory"·class="section-heading">148 <h3·id="dynamically-load-an-engine-from-default-directory"·class="section-heading">
149 ··<a·href="#dynamically-load-an-engine-from-default-directory"·class="hover-link">149 ··<a·href="#dynamically-load-an-engine-from-default-directory"·class="hover-link">
150 ····<i·class="ri-link-m"·aria-hidden="true"></i>150 ····<i·class="ri-link-m"·aria-hidden="true"></i>
151 ··</a>151 ··</a>
152 ··<span·class="text">Dynamically·load·an·engine·from·default·directory</span>152 ··<span·class="text">Dynamically·load·an·engine·from·default·directory</span>
153 </h3>153 </h3>
154 <p>If·the·engine·is·located·in·the·OpenSSL/LibreSSL·installation·<code·class="inline">engines</code>154 <p>If·the·engine·is·located·in·the·OpenSSL/LibreSSL·installation·<code·class="inline">engines</code>
155 directory.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="2714896196-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Engine</span><span·class="p"·data-group-id="2714896196-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">engine_load</span><span·class="p"·data-group-id="2714896196-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;otp_test_engine&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2714896196-3">[</span><span·class="p"·data-group-id="2714896196-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2714896196-4">[</span><span·class="p"·data-group-id="2714896196-4">]</span><span·class="p"·data-group-id="2714896196-2">)</span><span·class="p">.</span><span·class="w"> 
156 ·</span><span·class="p"·data-group-id="2714896196-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Ref</span><span·class="p"·data-group-id="2714896196-5">}</span></code></pre><h3·i[·...·truncated·by·diffoscope;·len:·65,·SHA:·6843b29c2536b654e20e52263252797b98ab356d5b1d426f542309cac7f8a9e7·...·]">155 directory.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="8174177751-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Engine</[·...·truncated·by·diffoscope;·len:·783,·SHA:·3dce4d68efd9fa2d0f5eed119643ebcc31d6e7592777798dfda61ae4fe43b0bb·...·]">
 156 ·</span><span·class="p"·data-group-id="8174177751-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Ref</span><span·class="p"·data-group-id="8174177751-5">}</span></code></pre><h3·id="load-an-engine-with-the-dynamic-engine"·class="section-heading">
157 ··<a·href="#load-an-engine-with-the-dynamic-engine"·class="hover-link">157 ··<a·href="#load-an-engine-with-the-dynamic-engine"·class="hover-link">
158 ····<i·class="ri-link-m"·aria-hidden="true"></i>158 ····<i·class="ri-link-m"·aria-hidden="true"></i>
159 ··</a>159 ··</a>
160 ··<span·class="text">Load·an·engine·with·the·dynamic·engine</span>160 ··<span·class="text">Load·an·engine·with·the·dynamic·engine</span>
161 </h3>161 </h3>
162 <p>Load·an·engine·with·the·help·of·the·dynamic·engine·by·giving·the·path·to·the162 <p>Load·an·engine·with·the·help·of·the·dynamic·engine·by·giving·the·path·to·the
163 library.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7962365239-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Engine</span><span·class="p"·data-group-id="7962365239-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·123,·SHA:·c2c61d5694abf36878a2496be81782ec6021a69eb1378c33cdb2d7303d0e6766·...·]-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;dynamic&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">163 library.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7463503065-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Engine</span><span·class="p"·data-group-id="7463503065-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·123,·SHA:·c363ec66e7033831f39cd0c057d2ed565d4093f4b979df6399a4891fa2536e8a·...·]-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;dynamic&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
164 ······································</span><span·class="p"·data-group-id="7962365239-3">[</span><span·class="p"·data-group-id="7962365239-4">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;SO_PATH&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">164 ······································</span><span·class="p"·data-group-id="7463503065-3">[</span><span·class="p"·data-group-id="7463503065-4">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;SO_PATH&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
165 ········································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/some/path/otp_test_engine.so&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7962365239-4">}</span><span·class="p">,</span><span·class="w">165 ········································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/some/path/otp_test_engine.so&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7463503065-4">}</span><span·class="p">,</span><span·class="w">
166 ·······································</span><span·class="p"·data-group-id="7962365239-5">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ID&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;MD5&quot;</span><span·class="p">&gt[·...·truncated·by·diffoscope;·len:·53,·SHA:·1f4734b741e10d9f62c81d7e85490ad0a5f32c8a48edc3b19b8cb44192e28d31·...·]-5">}</span><span·class="p">,</span><span·class="w">166 ·······································</span><span·class="p"·data-group-id="7463503065-5">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ID&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;MD5&quot;</span><span·class="p">&gt[·...·truncated·by·diffoscope;·len:·53,·SHA:·61c7c122cfd7fcb8585aa28fdce451a7dea20c10f12025059565564c6e015a7c·...·]-5">}</span><span·class="p">,</span><span·class="w">
167 ·······································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;LOAD&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7962365239-3">]</span><span·class="p">,</span><span·class="w">167 ·······································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;LOAD&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7463503065-3">]</span><span·class="p">,</span><span·class="w">
168 ······································</span><span·class="p"·data-group-id="7962365239-6">[</span><span·class="p"·data-group-id="7962365239-6">]</span><span·class="p"·data-group-id="7962365239-2">)</span><span·class="p">.</span><span·class="w">168 ······································</span><span·class="p"·data-group-id="7463503065-6">[</span><span·class="p"·data-group-id="7463503065-6">]</span><span·class="p"·data-group-id="7463503065-2">)</span><span·class="p">.</span><span·class="w">
169 ·</span><span·class="p"·data-group-id="7962365239-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Ref</span><span·class="p"·data-group-id="7962365239-7">}</span></code></pre><h3·id="load-an-engine-and-replace-some-methods"·class="section-heading">169 ·</span><span·class="p"·data-group-id="7463503065-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Ref</span><span·class="p"·data-group-id="7463503065-7">}</span></code></pre><h3·id="load-an-engine-and-replace-some-methods"·class="section-heading">
170 ··<a·href="#load-an-engine-and-replace-some-methods"·class="hover-link">170 ··<a·href="#load-an-engine-and-replace-some-methods"·class="hover-link">
171 ····<i·class="ri-link-m"·aria-hidden="true"></i>171 ····<i·class="ri-link-m"·aria-hidden="true"></i>
172 ··</a>172 ··</a>
173 ··<span·class="text">Load·an·engine·and·replace·some·methods</span>173 ··<span·class="text">Load·an·engine·and·replace·some·methods</span>
174 </h3>174 </h3>
175 <p>Load·an·engine·with·the·help·of·the·dynamic·engine·and·just·replace·some·engine175 <p>Load·an·engine·with·the·help·of·the·dynamic·engine·and·just·replace·some·engine
176 methods.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6017100965-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Engine</span><span·class="p"·data-group-id="6017100965-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·124,·SHA:·d0124579a7585d3530079dad0ddcb69633851ff6462f8b66b40dbdb6caeee1b2·...·]-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;dynamic&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">176 methods.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8461014464-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Engine</span><span·class="p"·data-group-id="8461014464-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·124,·SHA:·7ef40215e51df444abbbede9cb6e6094c5c691849f086760d3c4325cd4bdbcd9·...·]-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;dynamic&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
177 ······································</span><span·class="p"·data-group-id="6017100965-3">[</span><span·class="p"·data-group-id="6017100965-4">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;SO_PATH&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">177 ······································</span><span·class="p"·data-group-id="8461014464-3">[</span><span·class="p"·data-group-id="8461014464-4">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;SO_PATH&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
178 ········································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/some/path/otp_test_engine.so&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6017100965-4">}</span><span·class="p">,</span><span·class="w">178 ········································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/some/path/otp_test_engine.so&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8461014464-4">}</span><span·class="p">,</span><span·class="w">
179 ·······································</span><span·class="p"·data-group-id="6017100965-5">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ID&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;MD5&quot;</span><span·class="p">&g[·...·truncated·by·diffoscope;·len:·54,·SHA:·ca7f03a8047adcd81626e0161af7d608b833eb000980d15feb5fa49ebca6005e·...·]-5">}</span><span·class="p">,</span><span·class="w">179 ·······································</span><span·class="p"·data-group-id="8461014464-5">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ID&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;MD5&quot;</span><span·class="p">&g[·...·truncated·by·diffoscope;·len:·54,·SHA:·4bb0d7e740c8d94a059cff91b5a5f0fba249258f02d1037a540e27e905540c63·...·]-5">}</span><span·class="p">,</span><span·class="w">
180 ·······································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;LOAD&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6017100965-3">]</span><span·class="p">,</span><span·class="w">180 ·······································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;LOAD&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8461014464-3">]</span><span·class="p">,</span><span·class="w">
181 ······································</span><span·class="p"·data-group-id="6017100965-6">[</span><span·class="p"·data-group-id="6017100965-6">]</span><span·class="p"·data-group-id="6017100965-2">)</span><span·class="p">.</span><span·class="w">181 ······································</span><span·class="p"·data-group-id="8461014464-6">[</span><span·class="p"·data-group-id="8461014464-6">]</span><span·class="p"·data-group-id="8461014464-2">)</span><span·class="p">.</span><span·class="w">
182 </span><span·class="p"·data-group-id="6017100965-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Ref</span><span·class="p"·data-group-id="6017100965-7">}</span><span·class="gp·unselectable">182 </span><span·class="p"·data-group-id="8461014464-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Ref</span><span·class="p"·data-group-id="8461014464-7">}</span><span·class="gp·unselectable">
183 4&gt;·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">engine_register</span><span·class="p"·data-group-id="6017100965-8">(</span><span·class="n">Engine</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6017100965-9">[</span><span·class="ss">engine_method_digests</span><span·class="p"·data-group-id="6017100965-9">]</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·9833825649dbb9ff5e62b98ba4df937f5334ba0e0969fcc7d293403a7b7c6993·...·]-8">)</span><span·class="p">.</span><span·class="w">183 4&gt;·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">engine_register</span><span·class="p"·data-group-id="8461014464-8">(</span><span·class="n">Engine</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8461014464-9">[</span><span·class="ss">engine_method_digests</span><span·class="p"·data-group-id="8461014464-9">]</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·a4874812ba2d60f64f6788306edea1b270229ad0f9fe541797d6880a2403cc99·...·]-8">)</span><span·class="p">.</span><span·class="w">
184 </span><span·class="ss">ok</span></code></pre><h3·id="load-with-the-ensure-loaded-function"·class="section-heading">184 </span><span·class="ss">ok</span></code></pre><h3·id="load-with-the-ensure-loaded-function"·class="section-heading">
185 ··<a·href="#load-with-the-ensure-loaded-function"·class="hover-link">185 ··<a·href="#load-with-the-ensure-loaded-function"·class="hover-link">
186 ····<i·class="ri-link-m"·aria-hidden="true"></i>186 ····<i·class="ri-link-m"·aria-hidden="true"></i>
187 ··</a>187 ··</a>
188 ··<span·class="text">Load·with·the·ensure·loaded·function</span>188 ··<span·class="text">Load·with·the·ensure·loaded·function</span>
189 </h3>189 </h3>
190 <p>This·function·makes·sure·the·engine·is·loaded·just·once·and·the·ID·is·added·to190 <p>This·function·makes·sure·the·engine·is·loaded·just·once·and·the·ID·is·added·to
191 the·internal·engine·list·of·OpenSSL.·The·following·calls·to·the·function·will191 the·internal·engine·list·of·OpenSSL.·The·following·calls·to·the·function·will
192 check·if·the·ID·is·loaded·and·then·just·get·a·new·reference·to·the·engine.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2422680929-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Engine</span><span·class="p"·data-group-id="2422680929-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·133,·SHA:·e16ba2c06cfb2e619769e3db8da3e97fae261ac8daab1f847aa6043f1002abca·...·]-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;MD5&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">192 check·if·the·ID·is·loaded·and·then·just·get·a·new·reference·to·the·engine.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1121790762-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Engine</span><span·class="p"·data-group-id="1121790762-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·133,·SHA:·6b2b25faa85d70af68125ce50f80fa25bab8d82e2669497fd1ae3ab376a9d308·...·]-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;MD5&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
193 ···············································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/some/path/otp_test_engine.so&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2422680929-2">)</span><span·class="p">.</span><span·class="w">193 ···············································</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/some/path/otp_test_engine.so&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1121790762-2">)</span><span·class="p">.</span><span·class="w">
194 ·</span><span·class="p"·data-group-id="2422680929-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Ref</span><span·class="p"·data-group-id="2422680929-3">}</span></code></pre><p>To·remove·the·tag·from·the·OpenSSL·engine[·...·truncated·by·diffoscope;·len:·469,·SHA:·c610dfc024d91cd4cec17fac5203e21e9dd13fffb6aae6523e5376f17b6081ab·...·]-1">)</span><span·class="p">.</span><span·class="w">194 ·</span><span·class="p"·data-group-id="1121790762-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">#</span><span·class="n">Ref</span><span·class="p"·data-group-id="1121790762-3">}</span></code></pre><p>To·remove·the·tag·from·the·OpenSSL·engine[·...·truncated·by·diffoscope;·len:·469,·SHA:·caafff4ef8a3e25edbe2a683d3ca13179525a3b43b0218cd4985be7301af6c38·...·]-1">)</span><span·class="p">.</span><span·class="w">
195 ·</span><span·class="ss">ok</span></code></pre><p>To·unload·it·use·<a·href="crypto.html#engine_unload/1"><code·class="inline">crypto:engine_unload/1</code></a>·which·removes·the·references·to·the195 ·</span><span·class="ss">ok</span></code></pre><p>To·unload·it·use·<a·href="crypto.html#engine_unload/1"><code·class="inline">crypto:engine_unload/1</code></a>·which·removes·the·references·to·the
196 engine.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">engine_unload</span><span·class="p"·data-group-id="2863400216-1">(</span><span·class="n">Engine</span><span·class="p"·data-group-id="2863400216-1">)</span><span·class="p">.</span><span·class="w">196 engine.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">engine_unload</span><span·class="p"·data-group-id="6350474800-1">(</span><span·class="n">Engine</span><span·class="p"·data-group-id="6350474800-1">)</span><span·class="p">.</span><span·class="w">
197 ·</span><span·class="ss">ok</span></code></pre><h3·id="list-all-engines-currently-loaded"·class="section-heading">197 ·</span><span·class="ss">ok</span></code></pre><h3·id="list-all-engines-currently-loaded"·class="section-heading">
198 ··<a·href="#list-all-engines-currently-loaded"·class="hover-link">198 ··<a·href="#list-all-engines-currently-loaded"·class="hover-link">
199 ····<i·class="ri-link-m"·aria-hidden="true"></i>199 ····<i·class="ri-link-m"·aria-hidden="true"></i>
200 ··</a>200 ··</a>
201 ··<span·class="text">List·all·engines·currently·loaded</span>201 ··<span·class="text">List·all·engines·currently·loaded</span>
202 </h3>202 </h3>
203 <pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">engine_list</span><span·class="p"·data-group-id="3278196580-1">(</span><span·class="p"·data-group-id="3278196580-1">)</span><span·class="p">.</span><span·class="w">203 <pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">engine_list</span><span·class="p"·data-group-id="3556127929-1">(</span><span·class="p"·data-group-id="3556127929-1">)</span><span·class="p">.</span><span·class="w">
204 </span><span·class="p"·data-group-id="3278196580-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;dynamic&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;MD5&quot;</span><span·class="p[·...·truncated·by·diffoscope;·len:·58,·SHA:·6030541561262203aca975a5a56de1b43338f093c852159cf92beae6bb117577·...·]-2">]</span></code></pre>204 </span><span·class="p"·data-group-id="3556127929-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;dynamic&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;MD5&quot;</span><span·class="p[·...·truncated·by·diffoscope;·len:·58,·SHA:·2bd90f325fca4994bd1a7ea4dd291f774b52c115351c1bbededa268805017869·...·]-2">]</span></code></pre>
205 </div>205 </div>
  
206 <div·class="bottom-actions"·id="bottom-actions">206 <div·class="bottom-actions"·id="bottom-actions">
207 ··<div·class="bottom-actions-item">207 ··<div·class="bottom-actions-item">
  
208 ······<a·href="fips.html"·class="bottom-actions-button"·rel="prev">208 ······<a·href="fips.html"·class="bottom-actions-button"·rel="prev">
209 ········<span·class="subheader">209 ········<span·class="subheader">
Offset 248, 15 lines modifiedOffset 248, 15 lines modified
248 ······<p·class="built-using">248 ······<p·class="built-using">
249 ········Built·using249 ········Built·using
250 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the250 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
251 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>251 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
252 ······</p>252 ······</p>
253 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>253 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
254 ····</footer>254 ····</footer>
255 ··</div>255 ··</div>
256 </main>256 </main>
257 </div>257 </div>
258 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>258 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
259 <script>259 <script>
260 ··document.addEventListener("DOMContentLoaded",·function·()·{260 ··document.addEventListener("DOMContentLoaded",·function·()·{
682 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/fips.html
    
Offset 289, 15 lines modifiedOffset 289, 15 lines modified
289 ······<p·class="built-using">289 ······<p·class="built-using">
290 ········Built·using290 ········Built·using
291 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the291 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
292 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>292 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
293 ······</p>293 ······</p>
294 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>294 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
295 ····</footer>295 ····</footer>
296 ··</div>296 ··</div>
297 </main>297 </main>
298 </div>298 </div>
299 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>299 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
300 <script>300 <script>
301 ··document.addEventListener("DOMContentLoaded",·function·()·{301 ··document.addEventListener("DOMContentLoaded",·function·()·{
726 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/licenses.html
    
Offset 292, 15 lines modifiedOffset 292, 15 lines modified
292 ······<p·class="built-using">292 ······<p·class="built-using">
293 ········Built·using293 ········Built·using
294 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the294 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
295 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>295 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
296 ······</p>296 ······</p>
297 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>297 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
298 ····</footer>298 ····</footer>
299 ··</div>299 ··</div>
300 </main>300 </main>
301 </div>301 </div>
302 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>302 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
303 <script>303 <script>
304 ··document.addEventListener("DOMContentLoaded",·function·()·{304 ··document.addEventListener("DOMContentLoaded",·function·()·{
641 B
html2text {}
Max HTML report size reached
52.8 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/new_api.html
    
Offset 188, 64 lines modifiedOffset 188, 64 lines modified
188 </h3>188 </h3>
189 <p>The·functions·<a·href="crypto.html#crypto_init/4">crypto_init/4</a>·and189 <p>The·functions·<a·href="crypto.html#crypto_init/4">crypto_init/4</a>·and
190 <a·href="crypto.html#crypto_update/2">crypto_update/2</a>·are·intended·to·be·used·for190 <a·href="crypto.html#crypto_update/2">crypto_update/2</a>·are·intended·to·be·used·for
191 encrypting·or·decrypting·a·sequence·of·blocks.·First·one·call·of·<code·class="inline">crypto_init/4</code>191 encrypting·or·decrypting·a·sequence·of·blocks.·First·one·call·of·<code·class="inline">crypto_init/4</code>
192 initialises·the·crypto·context.·One·or·more·calls·<code·class="inline">crypto_update/2</code>·does·the192 initialises·the·crypto·context.·One·or·more·calls·<code·class="inline">crypto_update/2</code>·does·the
193 actual·encryption·or·decryption·for·each·block.</p><p>This·example·shows·first·the·encryption·of·two·blocks·and·then·decryptions·of193 actual·encryption·or·decryption·for·each·block.</p><p>This·example·shows·first·the·encryption·of·two·blocks·and·then·decryptions·of
194 the·cipher·text,·but·divided·into·three·blocks·just·to·show·that·it·is·possible194 the·cipher·text,·but·divided·into·three·blocks·just·to·show·that·it·is·possible
195 to·divide·the·plain·text·and·cipher·text·differently·for·some·ciphers:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»    </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="1627071775-1">(</span><span·class="p"·data-group-id="1627071775-1">)</span><span·class="p">.</span><span·class="w">195 to·divide·the·plain·text·and·cipher·text·differently·for·some·ciphers:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»    </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8368179349-1">(</span><span·class="p"·data-group-id="8368179349-1">)</span><span·class="p">.</span><span·class="w">
196 »       </span><span·class="ss">ok</span><span·class="w">196 »       </span><span·class="ss">ok</span><span·class="w">
197 »       </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">197 »       </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
198 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="w">198 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="w">
199 »       </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">IV</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">199 »       </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">IV</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
200 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="w">200 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="w">
201 »       </span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">StateEnc</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_init</span><span·class="p"·data-group-id="1627071775-2">(</span><span·class="ss">aes_128_ctr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·65,·SHA:·aedbb78559a57893815a182189c3a7e1f5ff0d7b138ba59732f5ce5f9deb191f·...·]-2">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·encrypt·-&gt;·true</span><span·class="w">201 »       </span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">StateEnc</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_init</span><span·class="p"·data-group-id="8368179349-2">(</span><span·class="ss">aes_128_ctr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·65,·SHA:·9d5ec88630769a2ec79c89f301bff42af445e9afcfa5ec29adca6755a353ccf5·...·]-2">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·encrypt·-&gt;·true</span><span·class="w">
202 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.3768901617</span><span·class="p">.</span><span·class="mf">1128660993.124047</span><span·class="o">&gt;</span><span·class="w">202 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.3768901617</span><span·class="p">.</span><span·class="mf">1128660993.124047</span><span·class="o">&gt;</span><span·class="w">
203 »       </span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="1627071775-3">(</span><span·class="n">StateEnc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1627071775-3">)</span><span·class="p">.</span><span·class="w">203 »       </span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="8368179349-3">(</span><span·class="n">StateEnc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8368179349-3">)</span><span·class="p">.</span><span·class="w">
204 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">44</span><span·class="p">,</span><span·class="mi">216</span><span·class="p">,</span><span·class="mi">166</span><span·class="p">,</span><span·class="mi">25</span><span·class="p">,</span><span·class="mi">130</span><span·class="p">,</span><span·class="mi">203</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">162</span><span·class="p">&gt;&gt;</span><span·class="w">204 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">44</span><span·class="p">,</span><span·class="mi">216</span><span·class="p">,</span><span·class="mi">166</span><span·class="p">,</span><span·class="mi">25</span><span·class="p">,</span><span·class="mi">130</span><span·class="p">,</span><span·class="mi">203</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">162</span><span·class="p">&gt;&gt;</span><span·class="w">
205 »       </span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="1627071775-4">(</span><span·class="n">StateEnc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1627071775-4">)</span><span·class="p">.</span><span·class="w">205 »       </span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="8368179349-4">(</span><span·class="n">StateEnc</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8368179349-4">)</span><span·class="p">.</span><span·class="w">
206 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">115</span><span·class="p">,</span><span·class="mi">234</span><span·class="p">,</span><span·class="mi">197</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">253</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">144</span><span·class="p">,</span><span·class="mi">151</span><span·class="p">,</span><span·class="mi">41</span><span·class="p">&gt;&gt;</span><span·class="w">206 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">115</span><span·class="p">,</span><span·class="mi">234</span><span·class="p">,</span><span·class="mi">197</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">253</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">144</span><span·class="p">,</span><span·class="mi">151</span><span·class="p">,</span><span·class="mi">41</span><span·class="p">&gt;&gt;</span><span·class="w">
207 »       </span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">207 »       </span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">
208 »       </span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">StateDec</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_init</span><span·class="p"·data-group-id="1627071775-5">(</span><span·class="ss">aes_128_ctr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·66,·SHA:·01e1a678aff3b6bacf163eff55a4dc928420c8d50471f18ba5a3a16fae03d751·...·]-5">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·decrypt·-&gt;·false</span><span·class="w">208 »       </span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">StateDec</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_init</span><span·class="p"·data-group-id="8368179349-5">(</span><span·class="ss">aes_128_ctr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·66,·SHA:·75bd534a41f087f03c52e0eff9dd3133651df934e1b908d84f36c6a6309fa2d1·...·]-5">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·decrypt·-&gt;·false</span><span·class="w">
209 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.3768901617</span><span·class="p">.</span><span·class="mf">1128660994.124255</span><span·class="o">&gt;</span><span·class="w">209 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.3768901617</span><span·class="p">.</span><span·class="mf">1128660994.124255</span><span·class="o">&gt;</span><span·class="w">
210 »       </span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="1627071775-6">(</span><span·class="n">StateDec</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">44</span><span·class="p">,</span><span·class="mi">216</sp[·...·truncated·by·diffoscope;·len:·278,·SHA:·6f5fa6a619b706af5c2f04df610b6b904e3fd95574d79666508be99d92f43dbf·...·]-6">)</span><span·class="p">.</span><span·class="w">210 »       </span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="8368179349-6">(</span><span·class="n">StateDec</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">44</span><span·class="p">,</span><span·class="mi">216</sp[·...·truncated·by·diffoscope;·len:·278,·SHA:·2b1ab3f75fccf77c638df2d7559989d530f5db85289b596d4c3164edaf6ffead·...·]-6">)</span><span·class="p">.</span><span·class="w">
211 »       </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·b&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">211 »       </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·b&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">
212 »       </span><span·class="mi">9</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="1627071775-7">(</span><span·class="n">StateDec</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">162</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">115</span><span·class="p">,</span><span·class="mi">234</span><span·class="p">,</span><span·class="mi">197</span><span·class="p">,</span><span·class="w">212 »       </span><span·class="mi">9</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="8368179349-7">(</span><span·class="n">StateDec</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">162</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">115</span><span·class="p">,</span><span·class="mi">234</span><span·class="p">,</span><span·class="mi">197</span><span·class="p">,</span><span·class="w">
213 ········</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">253</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">144</span><span·class="p">,</span><span·class="mi">151</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1627071775-7">)</span><span·class="p">.</span><span·class="w">213 ········</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">253</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">144</span><span·class="p">,</span><span·class="mi">151</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8368179349-7">)</span><span·class="p">.</span><span·class="w">
214 »       </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ytesSecond·byte&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">214 »       </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ytesSecond·byte&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">
215 »       </span><span·class="mi">10</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="1627071775-8">(</span><span·class="n">StateDec</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">41</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1627071775-8">)</span><span·class="p">.</span><span·class="w">215 »       </span><span·class="mi">10</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="8368179349-8">(</span><span·class="n">StateDec</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">41</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8368179349-8">)</span><span·class="p">.</span><span·class="w">
216 »       </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;s&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">216 »       </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;s&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">
217 »       </span><span·class="mi">11</span><span·class="o">&gt;</span></code></pre><p>Note·that·the·internal·data·that·the·<code·class="inline">StateEnc</code>·and·<code·class="inline">StateDec</code>·references·are217 »       </span><span·class="mi">11</span><span·class="o">&gt;</span></code></pre><p>Note·that·the·internal·data·that·the·<code·class="inline">StateEnc</code>·and·<code·class="inline">StateDec</code>·references·are
218 destructivly·updated·by·the·calls·to218 destructivly·updated·by·the·calls·to
219 <a·href="crypto.html#crypto_update/2">crypto_update/2</a>.·This·is·to·gain·time·in·the·calls219 <a·href="crypto.html#crypto_update/2">crypto_update/2</a>.·This·is·to·gain·time·in·the·calls
220 of·the·nifs·interfacing·the·cryptolib.·In·a·loop·where·the·state·is·saved·in·the220 of·the·nifs·interfacing·the·cryptolib.·In·a·loop·where·the·state·is·saved·in·the
221 loop's·state,·it·also·saves·one·update·of·the·loop·state·per·crypto·operation.</p><p>For·example,·a·simple·server·receiving·text·parts·to·encrypt·and·send·the·result221 loop's·state,·it·also·saves·one·update·of·the·loop·state·per·crypto·operation.</p><p>For·example,·a·simple·server·receiving·text·parts·to·encrypt·and·send·the·result
222 back·to·the·one·who·sent·them·(the·<code·class="inline">Requester</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»      </span><span·class="nf">encode</span><span·class="p"·data-group-id="6898022769-1">(</span><span·class="n">Crypto</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p"·data-group-id="6898022769-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">222 back·to·the·one·who·sent·them·(the·<code·class="inline">Requester</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»      </span><span·class="nf">encode</span><span·class="p"·data-group-id="9953122792-1">(</span><span·class="n">Crypto</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p"·data-group-id="9953122792-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
223 »       </span><span·class="nf">crypto_loop</span><span·class="p"·data-group-id="6898022769-2">(</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_init</span><span·class="p"·data-group-id="6898022769-3">(</span><span·class="n">Crypto</span><span·class="p">,</span><span·class="w">·</span><span·class="n"[·...·truncated·by·diffoscope;·len:·254,·SHA:·cc0cc727ad5631cc7bcf3ff4f1d44e4f9a30953e80a9d2bf4c994ce5390bdd79·...·]-2">)</span><span·class="p">.</span><span·class="w">223 »       </span><span·class="nf">crypto_loop</span><span·class="p"·data-group-id="9953122792-2">(</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_init</span><span·class="p"·data-group-id="9953122792-3">(</span><span·class="n">Crypto</span><span·class="p">,</span><span·class="w">·</span><span·class="n"[·...·truncated·by·diffoscope;·len:·254,·SHA:·c0dec8438631b67a751a77b6ce93f7456abbe52511f4408124d304a5a108c22f·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
224 »       </span><span·class="nf">crypto_loop</span><span·class="p"·data-group-id="6898022769-4">(</span><span·class="n">State</span><span·class="p"·data-group-id="6898022769-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 »       </span><span·class="nf">crypto_loop</span><span·class="p"·data-group-id="9953122792-4">(</span><span·class="n">State</span><span·class="p"·data-group-id="9953122792-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 »       </span><span·class="k">receive</span><span·class="w">225 »       </span><span·class="k">receive</span><span·class="w">
226 ········</span><span·class="p"·data-group-id="6898022769-5">{</span><span·class="n">Text</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Requester</span><span·class="p"·data-group-id="6898022769-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">226 ········</span><span·class="p"·data-group-id="9953122792-5">{</span><span·class="n">Text</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Requester</span><span·class="p"·data-group-id="9953122792-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
227 ········</span><span·class="n">Requester</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="6898022769-6">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Text</span><span·class="p"·data-group-id="6898022769-6">)</span><span·class="p">,</span><span·class="w">227 ········</span><span·class="n">Requester</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_update</span><span·class="p"·data-group-id="9953122792-6">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Text</span><span·class="p"·data-group-id="9953122792-6">)</span><span·class="p">,</span><span·class="w">
228 »       </span><span·class="nf">loop</span><span·class="p"·data-group-id="6898022769-7">(</span><span·class="n">State</span><span·class="p"·data-group-id="6898022769-7">)</span><span·class="w">228 »       </span><span·class="nf">loop</span><span·class="p"·data-group-id="9953122792-7">(</span><span·class="n">State</span><span·class="p"·data-group-id="9953122792-7">)</span><span·class="w">
229 »       </span><span·class="k">end</span><span·class="p">.</span></code></pre><h3·id="example-of-crypto_one_time-5"·class="section-heading">229 »       </span><span·class="k">end</span><span·class="p">.</span></code></pre><h3·id="example-of-crypto_one_time-5"·class="section-heading">
230 ··<a·href="#example-of-crypto_one_time-5"·class="hover-link">230 ··<a·href="#example-of-crypto_one_time-5"·class="hover-link">
231 ····<i·class="ri-link-m"·aria-hidden="true"></i>231 ····<i·class="ri-link-m"·aria-hidden="true"></i>
232 ··</a>232 ··</a>
233 ··<span·class="text">Example·of·crypto_one_time/5</span>233 ··<span·class="text">Example·of·crypto_one_time/5</span>
234 </h3>234 </h3>
235 <p>The·same·example·as·in·the235 <p>The·same·example·as·in·the
236 <a·href="new_api.html#examples-of-crypto_init-4-and-crypto_update-2">previous·section</a>,236 <a·href="new_api.html#examples-of-crypto_init-4-and-crypto_update-2">previous·section</a>,
237 but·now·with·one·call·to·<a·href="crypto.html#crypto_one_time/5">crypto_one_time/5</a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»       </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">237 but·now·with·one·call·to·<a·href="crypto.html#crypto_one_time/5">crypto_one_time/5</a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»       </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
238 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="w">238 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="w">
239 »       </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">IV</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">239 »       </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">IV</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
240 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="w">240 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="w">
241 »       </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Txt</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1210835354-1">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;[·...·truncated·by·diffoscope;·len:·48,·SHA:·2eb6d045a3ccd1f4c8927e9a0a2e400f9dadb3a332368d03c23c0955f96b37b5·...·]-1">]</span><span·class="p">.</span><span·class="w">241 »       </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Txt</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4347591023-1">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;[·...·truncated·by·diffoscope;·len:·48,·SHA:·033f97f95f29a7b16092769490ac1a2dd23f4ed5df6af86a8e3c17867349d0e1·...·]-1">]</span><span·class="p">.</span><span·class="w">
242 »       </span><span·class="p"·data-group-id="1210835354-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;[·...·truncated·by·diffoscope;·len:·48,·SHA:·2eb6d045a3ccd1f4c8927e9a0a2e400f9dadb3a332368d03c23c0955f96b37b5·...·]-2">]</span><span·class="w">242 »       </span><span·class="p"·data-group-id="4347591023-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;[·...·truncated·by·diffoscope;·len:·48,·SHA:·033f97f95f29a7b16092769490ac1a2dd23f4ed5df6af86a8e3c17867349d0e1·...·]-2">]</span><span·class="w">
243 »       </span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_one_time</span><span·class="p"·data-group-id="1210835354-3">(</span><span·class="ss">aes_128_ctr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·139,·SHA:·819292b5353d8cae942e2f124805bcfdada5c36940c9ca1187e83ee1d1d677ca·...·]-3">)</span><span·class="p">.</span><span·class="w">243 »       </span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_one_time</span><span·class="p"·data-group-id="4347591023-3">(</span><span·class="ss">aes_128_ctr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·139,·SHA:·6d01a550a33fe55a603631676cd210b9913b67e6fa8c11c90836f92f527f48cb·...·]-3">)</span><span·class="p">.</span><span·class="w">
244 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">44</span><span·class="p">,</span><span·class="mi">216</span><span·class="p">,</span><span·class="mi">166</span><span·class="p">,</span><span·class="mi">25</span><span·class="p">,</span><span·class="mi">130</span><span·class="p">,</span><span·class="mi">203</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">162</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">115</span><span·class="p">,</span><span·class="mi">234</span><span·class="p">,</span><span·class="w">244 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">44</span><span·class="p">,</span><span·class="mi">216</span><span·class="p">,</span><span·class="mi">166</span><span·class="p">,</span><span·class="mi">25</span><span·class="p">,</span><span·class="mi">130</span><span·class="p">,</span><span·class="mi">203</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">162</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">115</span><span·class="p">,</span><span·class="mi">234</span><span·class="p">,</span><span·class="w">
245 »       </span><span·class="mi">197</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">253</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">144</span><span·class="p">,</span><span·class="mi">151</span><span·class="p">,</span><span·class="mi">41</span><span·class="p">&gt;&gt;</span><span·class="w">245 »       </span><span·class="mi">197</span><span·class="p">,</span><span·class="mi">94</span><span·class="p">,</span><span·class="mi">253</span><span·class="p">,</span><span·class="mi">16</span><span·class="p">,</span><span·class="mi">144</span><span·class="p">,</span><span·class="mi">151</span><span·class="p">,</span><span·class="mi">41</span><span·class="p">&gt;&gt;</span><span·class="w">
246 »       </span><span·class="mi">5</span><span·class="o">&gt;</span></code></pre><p>The·<code·class="inline">[&lt;&lt;&quot;First·bytes&quot;&gt;&gt;,&lt;&lt;&quot;Second·bytes&quot;&gt;&gt;]</code>·could·of·course·have·been·one246 »       </span><span·class="mi">5</span><span·class="o">&gt;</span></code></pre><p>The·<code·class="inline">[&lt;&lt;&quot;First·bytes&quot;&gt;&gt;,&lt;&lt;&quot;Second·bytes&quot;&gt;&gt;]</code>·could·of·course·have·been·one
247 single·binary:·<code·class="inline">&lt;&lt;&quot;First·bytesSecond·bytes&quot;&gt;&gt;</code>.</p><h3·id="example-of-crypto_one_time_aead-6"·class="section-heading">247 single·binary:·<code·class="inline">&lt;&lt;&quot;First·bytesSecond·bytes&quot;&gt;&gt;</code>.</p><h3·id="example-of-crypto_one_time_aead-6"·class="section-heading">
248 ··<a·href="#example-of-crypto_one_time_aead-6"·class="hover-link">248 ··<a·href="#example-of-crypto_one_time_aead-6"·class="hover-link">
249 ····<i·class="ri-link-m"·aria-hidden="true"></i>249 ····<i·class="ri-link-m"·aria-hidden="true"></i>
250 ··</a>250 ··</a>
Offset 253, 46 lines modifiedOffset 253, 46 lines modified
253 </h3>253 </h3>
254 <p>The·same·example·as·in·the254 <p>The·same·example·as·in·the
255 <a·href="new_api.html#example-of-crypto_one_time-5">previous·section</a>,·but·now·with·one255 <a·href="new_api.html#example-of-crypto_one_time-5">previous·section</a>,·but·now·with·one
256 call·to·<a·href="crypto.html#crypto_one_time_aead/6">crypto_one_time_aead/6</a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»  </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">256 call·to·<a·href="crypto.html#crypto_one_time_aead/6">crypto_one_time_aead/6</a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»  </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
257 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="w">257 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="w">
258 »       </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">IV</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">258 »       </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">IV</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
259 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="w">259 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="w">
260 »       </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Txt</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3960591894-1">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;[·...·truncated·by·diffoscope;·len:·48,·SHA:·bddd444b7a26df6ce89d527a63cb6f4836d69fab2b049c2a390af0d0d4761474·...·]-1">]</span><span·class="p">.</span><span·class="w">260 »       </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Txt</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4426266230-1">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;[·...·truncated·by·diffoscope;·len:·48,·SHA:·861ce5640d69c1723cfa1111426861d5f81a90a315fb908b8929ad9b5e3d92ae·...·]-1">]</span><span·class="p">.</span><span·class="w">
261 »       </span><span·class="p"·data-group-id="3960591894-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;[·...·truncated·by·diffoscope;·len:·48,·SHA:·bddd444b7a26df6ce89d527a63cb6f4836d69fab2b049c2a390af0d0d4761474·...·]-2">]</span><span·class="w">261 »       </span><span·class="p"·data-group-id="4426266230-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Second·bytes&quot;</span><span·class="p">&gt;&gt;[·...·truncated·by·diffoscope;·len:·48,·SHA:·861ce5640d69c1723cfa1111426861d5f81a90a315fb908b8929ad9b5e3d92ae·...·]-2">]</span><span·class="w">
262 »       </span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">AAD</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Some·additional·auth·data&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">262 »       </span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">AAD</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Some·additional·auth·data&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
263 »       </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Some·additional·auth·data&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">263 »       </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Some·additional·auth·data&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">
264 »       </span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_one_time_aead</span><span·class="p"·data-group-id="3960591894-3">(</span><span·class="ss">aes_128_gcm</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·213,·SHA:·2bca8d0d9f81dbf22ee4af216e2fabf6ac4805cb633350951c3fb70d6501c0a0·...·]-3">)</span><span·class="p">.</span><span·class="w">264 »       </span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">crypto_one_time_aead</span><span·class="p"·data-group-id="4426266230-3">(</span><span·class="ss">aes_128_gcm</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IV</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·213,·SHA:·6a038c2610bf006db3382c91e0a884e251f982dc85d8038cf7b216bb488cc921·...·]-3">)</span><span·class="p">.</span><span·class="w">
265 »       </span><span·class="p"·data-group-id="3960591894-4">{</span><span·class="p">&lt;&lt;</span><span·class="mi">240</span><span·class="p">,</span><span·class="mi">130</span><span·class="p">,</span><span·class="mi">38</span><span·class="p">,</span><span·class="mi">96</span><span·class="p">,</span><span·class="mi">130</span><span·class="p">,</span><span·class="mi">241</span><span·class="p">,</span><span·class="mi">189</span><span·class="p">,</span><span·class="mi">52</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">179</span><span·class="p">,</span><span·class="mi">213</span><span·class="p">,</span><span·class="mi">132</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">72</span><span·class="p">,</span><span·class="w">265 »       </span><span·class="p"·data-group-id="4426266230-4">{</span><span·class="p">&lt;&lt;</span><span·class="mi">240</span><span·class="p">,</span><span·class="mi">130</span><span·class="p">,</span><span·class="mi">38</span><span·class="p">,</span><span·class="mi">96</span><span·class="p">,</span><span·class="mi">130</span><span·class="p">,</span><span·class="mi">241</span><span·class="p">,</span><span·class="mi">189</span><span·class="p">,</span><span·class="mi">52</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">179</span><span·class="p">,</span><span·class="mi">213</span><span·class="p">,</span><span·class="mi">132</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">72</span><span·class="p">,</span><span·class="w">
266 »       </span><span·class="mi">192</span><span·class="p">,</span><span·class="mi">103</span><span·class="p">,</span><span·class="mi">176</span><span·class="p">,</span><span·class="mi">90</span><span·class="p">,</span><span·class="mi">104</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">71</span><span·class="p">,</span><span·class="mi">158</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">266 »       </span><span·class="mi">192</span><span·class="p">,</span><span·class="mi">103</span><span·class="p">,</span><span·class="mi">176</span><span·class="p">,</span><span·class="mi">90</span><span·class="p">,</span><span·class="mi">104</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">71</span><span·class="p">,</span><span·class="mi">158</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
267 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">131</span><span·class="p">,</span><span·class="mi">47</span><span·class="p">,</span><span·class="mi">45</span><span·class="p">,</span><span·class="mi">91</span><span·class="p">,</span><span·class="mi">142</span><span·class="p">,</span><span·class="mi">85</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="mi">244</span><span·class="p">,</span><span·class="mi">21</span><span·class="p">,</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">214</span><span·class="p">,</span><span·class="mi">71</span><span·class="p">,</span><span·class="mi">31</span><span·class="p">,</span><span·class="mi">135</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">155</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3960591894-4">}</span><span·class="w">267 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">131</span><span·class="p">,</span><span·class="mi">47</span><span·class="p">,</span><span·class="mi">45</span><span·class="p">,</span><span·class="mi">91</span><span·class="p">,</span><span·class="mi">142</span><span·class="p">,</span><span·class="mi">85</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="mi">244</span><span·class="p">,</span><span·class="mi">21</span><span·class="p">,</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">214</span><span·class="p">,</span><span·class="mi">71</span><span·class="p">,</span><span·class="mi">31</span><span·class="p">,</span><span·class="mi">135</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">155</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4426266230-4">}</span><span·class="w">
268 »       </span><span·class="mi">6</span><span·class="o">&gt;</span></code></pre><p>The·<code·class="inline">[&lt;&lt;&quot;First·bytes&quot;&gt;&gt;,&lt;&lt;&quot;Second·bytes&quot;&gt;&gt;]</code>·could·of·course·have·been·one268 »       </span><span·class="mi">6</span><span·class="o">&gt;</span></code></pre><p>The·<code·class="inline">[&lt;&lt;&quot;First·bytes&quot;&gt;&gt;,&lt;&lt;&quot;Second·bytes&quot;&gt;&gt;]</code>·could·of·course·have·been·one
269 single·binary:·<code·class="inline">&lt;&lt;&quot;First·bytesSecond·bytes&quot;&gt;&gt;</code>.</p><h3·id="example-of-mac_init-mac_update-and-mac_final"·class="section-heading">269 single·binary:·<code·class="inline">&lt;&lt;&quot;First·bytesSecond·bytes&quot;&gt;&gt;</code>.</p><h3·id="example-of-mac_init-mac_update-and-mac_final"·class="section-heading">
270 ··<a·href="#example-of-mac_init-mac_update-and-mac_final"·class="hover-link">270 ··<a·href="#example-of-mac_init-mac_update-and-mac_final"·class="hover-link">
271 ····<i·class="ri-link-m"·aria-hidden="true"></i>271 ····<i·class="ri-link-m"·aria-hidden="true"></i>
272 ··</a>272 ··</a>
273 ··<span·class="text">Example·of·mac_init·mac_update·and·mac_final</span>273 ··<span·class="text">Example·of·mac_init·mac_update·and·mac_final</span>
274 </h3>274 </h3>
275 <pre><code·class="makeup·erlang"·translate="no"><span·class="w">»   </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">275 <pre><code·class="makeup·erlang"·translate="no"><span·class="w">»   </span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">:</span><span·class="mi">128</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
276 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="w">276 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">&gt;&gt;</span><span·class="w">
277 »       </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">StateMac</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_init</span><span·class="p"·data-group-id="0068138932-1">(</span><span·class="ss">cmac</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">aes_128_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="0068138932-1">)</span><span·class="p">.</span><span·class="w">277 »       </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">StateMac</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_init</span><span·class="p"·data-group-id="5196765636-1">(</span><span·class="ss">cmac</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">aes_128_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="5196765636-1">)</span><span·class="p">.</span><span·class="w">
278 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2424664121</span><span·class="p">.</span><span·class="mf">2781478916.232610</span><span·class="o">&gt;</span><span·class="w">278 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2424664121</span><span·class="p">.</span><span·class="mf">2781478916.232610</span><span·class="o">&gt;</span><span·class="w">
279 »       </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_update</span><span·class="p"·data-group-id="0068138932-2">(</span><span·class="n">StateMac</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0068138932-2">)</span><span·class="p">.</span><span·class="w">279 »       </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_update</span><span·class="p"·data-group-id="5196765636-2">(</span><span·class="n">StateMac</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;First·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="5196765636-2">)</span><span·class="p">.</span><span·class="w">
280 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2424664121</span><span·class="p">.</span><span·class="mf">2781478916.232610</span><span·class="o">&gt;</span><span·class="w">280 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2424664121</span><span·class="p">.</span><span·class="mf">2781478916.232610</span><span·class="o">&gt;</span><span·class="w">
281 »       </span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_update</span><span·class="p"·data-group-id="0068138932-3">(</span><span·class="n">StateMac</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;·&quot;</span><span·class="p"·data-group-id="0068138932-3">)</span><span·class="p">.</span><span·class="w">281 »       </span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_update</span><span·class="p"·data-group-id="5196765636-3">(</span><span·class="n">StateMac</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;·&quot;</span><span·class="p"·data-group-id="5196765636-3">)</span><span·class="p">.</span><span·class="w">
282 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2424664121</span><span·class="p">.</span><span·class="mf">2781478916.232610</span><span·class="o">&gt;</span><span·class="w">282 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2424664121</span><span·class="p">.</span><span·class="mf">2781478916.232610</span><span·class="o">&gt;</span><span·class="w">
283 »       </span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_update</span><span·class="p"·data-group-id="0068138932-4">(</span><span·class="n">StateMac</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;last·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0068138932-4">)</span><span·class="p">.</span><span·class="w">283 »       </span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_update</span><span·class="p"·data-group-id="5196765636-4">(</span><span·class="n">StateMac</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;last·bytes&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="5196765636-4">)</span><span·class="p">.</span><span·class="w">
284 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2424664121</span><span·class="p">.</span><span·class="mf">2781478916.232610</span><span·class="o">&gt;</span><span·class="w">284 »       </span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.2424664121</span><span·class="p">.</span><span·class="mf">2781478916.232610</span><span·class="o">&gt;</span><span·class="w">
285 »       </span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_final</span><span·class="p"·data-group-id="0068138932-5">(</span><span·class="n">StateMac</span><span·class="p"·data-group-id="0068138932-5">)</span><span·class="p">.</span><span·class="w">285 »       </span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac_final</span><span·class="p"·data-group-id="5196765636-5">(</span><span·class="n">StateMac</span><span·class="p"·data-group-id="5196765636-5">)</span><span·class="p">.</span><span·class="w">
286 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">68</span><span·class="p">,</span><span·class="mi">191</span><span·class="p">,</span><span·class="mi">219</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">84</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">193</span><span·class="p">,</span><span·class="mi">197</span><span·class="p">,</span><span·class="mi">238</span><span·class="p">,</span><span·class="mi">107</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">214</span><span·class="p">,</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="w">286 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">68</span><span·class="p">,</span><span·class="mi">191</span><span·class="p">,</span><span·class="mi">219</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">84</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">193</span><span·class="p">,</span><span·class="mi">197</span><span·class="p">,</span><span·class="mi">238</span><span·class="p">,</span><span·class="mi">107</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">214</span><span·class="p">,</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="w">
287 »       </span><span·class="mi">249</span><span·class="p">&gt;&gt;</span><span·class="w">287 »       </span><span·class="mi">249</span><span·class="p">&gt;&gt;</span><span·class="w">
288 »       </span><span·class="mi">7</span><span·class="o">&gt;</span></code></pre><p>and·compare·the·result·with·a·single·calculation·just·for·this·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»  </span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac</span><span·class="p"·data-group-id="5446491149-1">(</span><span·class="ss">cmac</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">aes_128_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·97,·SHA:·151fd665e6a4084c1320bf882cd9bef082c53247bfc711ece7bf06ae9fce4a6e·...·]-1">)</span><span·class="p">.</span><span·class="w">288 »       </span><span·class="mi">7</span><span·class="o">&gt;</span></code></pre><p>and·compare·the·result·with·a·single·calculation·just·for·this·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»  </span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">crypto</span><span·class="p">:</span><span·class="nf">mac</span><span·class="p"·data-group-id="6858374663-1">(</span><span·class="ss">cmac</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">aes_128_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·97,·SHA:·dde3dd605a68ab49d117dacb4bd57223bb814b93f6ef080ba06441dfa7eab7b5·...·]-1">)</span><span·class="p">.</span><span·class="w">
289 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">68</span><span·class="p">,</span><span·class="mi">191</span><span·class="p">,</span><span·class="mi">219</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">84</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">193</span><span·class="p">,</span><span·class="mi">197</span><span·class="p">,</span><span·class="mi">238</span><span·class="p">,</span><span·class="mi">107</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">214</span><span·class="p">,</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="w">289 »       </span><span·class="p">&lt;&lt;</span><span·class="mi">68</span><span·class="p">,</span><span·class="mi">191</span><span·class="p">,</span><span·class="mi">219</span><span·class="p">,</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">84</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">193</span><span·class="p">,</span><span·class="mi">197</span><span·class="p">,</span><span·class="mi">238</span><span·class="p">,</span><span·class="mi">107</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">214</span><span·class="p">,</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">160</span><span·class="p">,</span><span·class="w">
290 »       </span><span·class="mi">249</span><span·class="p">&gt;&gt;</span><span·class="w">290 »       </span><span·class="mi">249</span><span·class="p">&gt;&gt;</span><span·class="w">
291 »       </span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">v</span><span·class="p"·data-group-id="5446491149-2">(</span><span·class="mi">7</span><span·class="p"·data-group-id="5446491149-2">)</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="nf">v</span><span·class="p"·data-group-id="5446491149-3">(</span><span[·...·truncated·by·diffoscope;·len:·61,·SHA:·0bdfa2fef2d546a6cb97e4a49e5cafb0328d3bcbde3eaeb006736b6e56236da9·...·]-3">)</span><span·class="p">.</span><span·class="w">291 »       </span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">v</span><span·class="p"·data-group-id="6858374663-2">(</span><span·class="mi">7</span><span·class="p"·data-group-id="6858374663-2">)</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="nf">v</span><span·class="p"·data-group-id="6858374663-3">(</span><span[·...·truncated·by·diffoscope;·len:·61,·SHA:·9abe448fbdb9f19d1f2217d7a7db58424ceea1a40dc81e9f6e942ce4ed67cd47·...·]-3">)</span><span·class="p">.</span><span·class="w">
292 »       </span><span·class="ss">true</span><span·class="w">292 »       </span><span·class="ss">true</span><span·class="w">
293 »       </span><span·class="mi">9</span><span·class="o">&gt;</span></code></pre><h2·id="retired-cipher-names"·class="section-heading">293 »       </span><span·class="mi">9</span><span·class="o">&gt;</span></code></pre><h2·id="retired-cipher-names"·class="section-heading">
294 ··<a·href="#retired-cipher-names"·class="hover-link">294 ··<a·href="#retired-cipher-names"·class="hover-link">
295 ····<i·class="ri-link-m"·aria-hidden="true"></i>295 ····<i·class="ri-link-m"·aria-hidden="true"></i>
296 ··</a>296 ··</a>
297 ··<span·class="text">Retired·cipher·names</span>297 ··<span·class="text">Retired·cipher·names</span>
298 </h2>298 </h2>
Offset 341, 15 lines modifiedOffset 341, 15 lines modified
341 ······<p·class="built-using">341 ······<p·class="built-using">
342 ········Built·using342 ········Built·using
343 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the343 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
344 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>344 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
345 ······</p>345 ······</p>
346 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>346 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
347 ····</footer>347 ····</footer>
348 ··</div>348 ··</div>
349 </main>349 </main>
350 </div>350 </div>
351 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>351 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
352 <script>352 <script>
353 ··document.addEventListener("DOMContentLoaded",·function·()·{353 ··document.addEventListener("DOMContentLoaded",·function·()·{
Max diff block lines reached; -1/53397 bytes (-0.00%) of diff not shown.
576 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/notes.html
    
Offset 2152, 15 lines modifiedOffset 2152, 15 lines modified
2152 ······<p·class="built-using">2152 ······<p·class="built-using">
2153 ········Built·using2153 ········Built·using
2154 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2154 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2155 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2155 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2156 ······</p>2156 ······</p>
2157 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2157 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2158 ····</footer>2158 ····</footer>
2159 ··</div>2159 ··</div>
2160 </main>2160 </main>
2161 </div>2161 </div>
2162 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2162 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2163 <script>2163 <script>
2164 ··document.addEventListener("DOMContentLoaded",·function·()·{2164 ··document.addEventListener("DOMContentLoaded",·function·()·{
607 B
html2text {}
Max HTML report size reached
1.75 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-0B570D5C.js"></script>124 <script·src="dist/search_data-9D4A4726.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
461 B
html2text {}
Max HTML report size reached
615 B
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/.build
    
Offset 24, 15 lines modifiedOffset 24, 15 lines modified
24 dist/lato-latin-300-normal-YUMVEFOL.woff224 dist/lato-latin-300-normal-YUMVEFOL.woff2
25 dist/lato-latin-400-normal-W7754I4D.woff225 dist/lato-latin-400-normal-W7754I4D.woff2
26 dist/lato-latin-700-normal-2XVSBPG4.woff226 dist/lato-latin-700-normal-2XVSBPG4.woff2
27 dist/lato-latin-ext-300-normal-VPGGJKJL.woff227 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
28 dist/lato-latin-ext-400-normal-N27NCBWW.woff228 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
29 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff229 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
30 dist/remixicon-NKANDIL5.woff230 dist/remixicon-NKANDIL5.woff2
31 dist/search_data-1474772F.js31 dist/search_data-9403A99F.js
32 dist/sidebar_items-E1F6BD8E.js32 dist/sidebar_items-E1F6BD8E.js
33 i.html33 i.html
34 index.html34 index.html
35 int.html35 int.html
36 introduction.html36 introduction.html
37 notes.html37 notes.html
38 search.html38 search.html
1.47 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.36 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/api-reference.html
    
Offset 199, 15 lines modifiedOffset 199, 15 lines modified
199 ······<p·class="built-using">199 ······<p·class="built-using">
200 ········Built·using200 ········Built·using
201 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the201 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
202 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>202 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
203 ······</p>203 ······</p>
204 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>204 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
205 ····</footer>205 ····</footer>
206 ··</div>206 ··</div>
207 </main>207 </main>
208 </div>208 </div>
209 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>209 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
210 <script>210 <script>
211 ··document.addEventListener("DOMContentLoaded",·function·()·{211 ··document.addEventListener("DOMContentLoaded",·function·()·{
542 B
html2text {}
Max HTML report size reached
73.1 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/debugger.epub
3.54 KB
zipinfo {}
Max HTML report size reached
37.1 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
2.79 KB
OEBPS/int.xhtml
Max HTML report size reached
2.8 KB
OEBPS/i.xhtml
Max HTML report size reached
25.5 KB
OEBPS/debugger_chapter.xhtml
Max HTML report size reached
1.24 KB
OEBPS/content.opf
1.2 KB
OEBPS/content.opf
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/debugger.html
    
Offset 343, 15 lines modifiedOffset 343, 15 lines modified
343 ······<p·class="built-using">343 ······<p·class="built-using">
344 ········Built·using344 ········Built·using
345 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the345 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
346 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>346 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
347 ······</p>347 ······</p>
348 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>348 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
349 ····</footer>349 ····</footer>
350 ··</div>350 ··</div>
351 </main>351 </main>
352 </div>352 </div>
353 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>353 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
354 <script>354 <script>
355 ··document.addEventListener("DOMContentLoaded",·function·()·{355 ··document.addEventListener("DOMContentLoaded",·function·()·{
659 B
html2text {}
Max HTML report size reached
26.9 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/debugger_chapter.html
    
Offset 160, 20 lines modifiedOffset 160, 20 lines modified
160 ····<i·class="ri-link-m"·aria-hidden="true"></i>160 ····<i·class="ri-link-m"·aria-hidden="true"></i>
161 ··</a>161 ··</a>
162 ··<span·class="text">Executable·Lines</span>162 ··<span·class="text">Executable·Lines</span>
163 </h3>163 </h3>
164 <p>To·have·an·effect,·a·breakpoint·must·be·set·at·an·<em>executable·line</em>,·which·is·a164 <p>To·have·an·effect,·a·breakpoint·must·be·set·at·an·<em>executable·line</em>,·which·is·a
165 line·of·code·containing·an·executable·expression·such·as·a·matching·or·a165 line·of·code·containing·an·executable·expression·such·as·a·matching·or·a
166 function·call.·A·blank·line·or·a·line·containing·a·comment,·function·head,·or166 function·call.·A·blank·line·or·a·line·containing·a·comment,·function·head,·or
167 pattern·in·a·<code·class="inline">case</code>·statement·or·<code·class="inline">receive</code>·statement·is·not·executable.</p><p>In·the·following·example,·lines·2,·4,·6,·8,·and·11·are·executable·lines:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="mi">1</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">is_loaded</span><span·class="p"·data-group-id="8287373079-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">Compiled</span><span·class="p"·data-group-id="8287373079-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">167 pattern·in·a·<code·class="inline">case</code>·statement·or·<code·class="inline">receive</code>·statement·is·not·executable.</p><p>In·the·following·example,·lines·2,·4,·6,·8,·and·11·are·executable·lines:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="mi">1</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">is_loaded</span><span·class="p"·data-group-id="7601082600-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">Compiled</span><span·class="p"·data-group-id="7601082600-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
168 </span><span·class="mi">2</span><span·class="p">:</span><span·class="w">···</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">get_file</span><span·class="p"·data-group-id="8287373079-2">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">Compiled</span><span·class="p"·data-group-id="8287373079-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">168 </span><span·class="mi">2</span><span·class="p">:</span><span·class="w">···</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">get_file</span><span·class="p"·data-group-id="7601082600-2">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">Compiled</span><span·class="p"·data-group-id="7601082600-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
169 </span><span·class="mi">3</span><span·class="p">:</span><span·class="w">·····</span><span·class="p"·data-group-id="8287373079-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">File</span><span·class="p"·data-group-id="8287373079-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">169 </span><span·class="mi">3</span><span·class="p">:</span><span·class="w">·····</span><span·class="p"·data-group-id="7601082600-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">File</span><span·class="p"·data-group-id="7601082600-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
170 </span><span·class="mi">4</span><span·class="p">:</span><span·class="w">·······</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">which</span><span·class="p"·data-group-id="8287373079-4">(</span><span·class="n">Module</span><span·class="p"·data-group-id="8287373079-4">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">170 </span><span·class="mi">4</span><span·class="p">:</span><span·class="w">·······</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">which</span><span·class="p"·data-group-id="7601082600-4">(</span><span·class="n">Module</span><span·class="p"·data-group-id="7601082600-4">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
171 </span><span·class="mi">5</span><span·class="p">:</span><span·class="w">·········</span><span·class="o">?</span><span·class="n">TAG</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">171 </span><span·class="mi">5</span><span·class="p">:</span><span·class="w">·········</span><span·class="o">?</span><span·class="n">TAG</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 </span><span·class="mi">6</span><span·class="p">:</span><span·class="w">···········</span><span·class="p"·data-group-id="8287373079-5">{</span><span·class="ss">loaded</span><span·class="p">,</span><span·class="n">File</span><span·class="p"·data-group-id="8287373079-5">}</span><span·class="p">;</span><span·class="w">172 </span><span·class="mi">6</span><span·class="p">:</span><span·class="w">···········</span><span·class="p"·data-group-id="7601082600-5">{</span><span·class="ss">loaded</span><span·class="p">,</span><span·class="n">File</span><span·class="p"·data-group-id="7601082600-5">}</span><span·class="p">;</span><span·class="w">
173 </span><span·class="mi">7</span><span·class="p">:</span><span·class="w">·········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 </span><span·class="mi">7</span><span·class="p">:</span><span·class="w">·········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 </span><span·class="mi">8</span><span·class="p">:</span><span·class="w">···········</span><span·class="ss">unloaded</span><span·class="w">174 </span><span·class="mi">8</span><span·class="p">:</span><span·class="w">···········</span><span·class="ss">unloaded</span><span·class="w">
175 </span><span·class="mi">9</span><span·class="p">:</span><span·class="w">·······</span><span·class="k">end</span><span·class="p">;</span><span·class="w">175 </span><span·class="mi">9</span><span·class="p">:</span><span·class="w">·······</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
176 </span><span·class="mi">10</span><span·class="p">:</span><span·class="w">····</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 </span><span·class="mi">10</span><span·class="p">:</span><span·class="w">····</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 </span><span·class="mi">11</span><span·class="p">:</span><span·class="w">······</span><span·class="ss">false</span><span·class="w">177 </span><span·class="mi">11</span><span·class="p">:</span><span·class="w">······</span><span·class="ss">false</span><span·class="w">
178 </span><span·class="mi">12</span><span·class="p">:</span><span·class="w">··</span><span·class="k">end</span><span·class="p">.</span></code></pre><h3·id="status-and-trigger-action"·class="section-heading">178 </span><span·class="mi">12</span><span·class="p">:</span><span·class="w">··</span><span·class="k">end</span><span·class="p">.</span></code></pre><h3·id="status-and-trigger-action"·class="section-heading">
179 ··<a·href="#status-and-trigger-action"·class="hover-link">179 ··<a·href="#status-and-trigger-action"·class="hover-link">
Offset 204, 21 lines modifiedOffset 204, 21 lines modified
204 returns·<code·class="inline">true</code>,·the·process·stops.·If·the·function·call·returns·<code·class="inline">false</code>,·the204 returns·<code·class="inline">true</code>,·the·process·stops.·If·the·function·call·returns·<code·class="inline">false</code>,·the
205 breakpoint·is·silently·ignored.</p><p><code·class="inline">Bindings</code>·is·a·list·of·variable·bindings.·To·retrieve·the·value·of·<code·class="inline">Variable</code>205 breakpoint·is·silently·ignored.</p><p><code·class="inline">Bindings</code>·is·a·list·of·variable·bindings.·To·retrieve·the·value·of·<code·class="inline">Variable</code>
206 (given·as·an·atom),·use·function206 (given·as·an·atom),·use·function
207 <a·href="int.html#get_binding/2"><code·class="inline">int:get_binding(Variable,·Bindings)</code></a>.·The·function207 <a·href="int.html#get_binding/2"><code·class="inline">int:get_binding(Variable,·Bindings)</code></a>.·The·function
208 returns·<code·class="inline">unbound</code>·or·<code·class="inline">{value,Value}</code>.</p><p><img·src="assets/cond_break_dialog.jpg"·alt="Conditional·Break·Dialog·Window"·title="Conditional·Break·Dialog·Window"/></p><p>Right-click·the·<em>Module</em>·entry·to·open·a·popup·menu·from·which·the·appropriate208 returns·<code·class="inline">unbound</code>·or·<code·class="inline">{value,Value}</code>.</p><p><img·src="assets/cond_break_dialog.jpg"·alt="Conditional·Break·Dialog·Window"·title="Conditional·Break·Dialog·Window"/></p><p>Right-click·the·<em>Module</em>·entry·to·open·a·popup·menu·from·which·the·appropriate
209 module·can·be·selected.</p><p><em>Example:</em></p><p>A·conditional·breakpoint·calling·<code·class="inline">c_test:c_break/1</code>·is·added·at·line·6·in·module209 module·can·be·selected.</p><p><em>Example:</em></p><p>A·conditional·breakpoint·calling·<code·class="inline">c_test:c_break/1</code>·is·added·at·line·6·in·module
210 <code·class="inline">fact</code>.·Each·time·the·breakpoint·is·reached,·the·function·is·called.·When·<code·class="inline">N</code>·is210 <code·class="inline">fact</code>.·Each·time·the·breakpoint·is·reached,·the·function·is·called.·When·<code·class="inline">N</code>·is
211 equal·to·3,·the·function·returns·<code·class="inline">true</code>·and·the·process·stops.</p><p>Extract·from·<code·class="inline">fact.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="mi">5</span><span·class="p">.</span><span·class="w">·</span><span·class="nf">fac</span><span·class="p"·data-group-id="3869579697-1">(</span><span·class="mi">0</span><span·class="p"·data-group-id="3869579697-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">211 equal·to·3,·the·function·returns·<code·class="inline">true</code>·and·the·process·stops.</p><p>Extract·from·<code·class="inline">fact.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="mi">5</span><span·class="p">.</span><span·class="w">·</span><span·class="nf">fac</span><span·class="p"·data-group-id="1647861964-1">(</span><span·class="mi">0</span><span·class="p"·data-group-id="1647861964-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">
212 </span><span·class="mi">6</span><span·class="p">.</span><span·class="w">·</span><span·class="nf">fac</span><span·class="p"·data-group-id="3869579697-2">(</span><span·class="n">N</span><span·class="p"·data-group-id="3869579697-2">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·961,·SHA:·a0dd04dcafca09da61a4d9bd5b1de4a8e35203e46e6df184f80d9a28038e5b70·...·]-1">)</span><span·class="p">.</span><span·class="w">212 </span><span·class="mi">6</span><span·class="p">.</span><span·class="w">·</span><span·class="nf">fac</span><span·class="p"·data-group-id="1647861964-2">(</span><span·class="n">N</span><span·class="p"·data-group-id="1647861964-2">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·961,·SHA:·6ac5d16a438f1a095fa19bda9dfd1c042f66e5abcb5d334e81c46619e06b273c·...·]-1">)</span><span·class="p">.</span><span·class="w">
213 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7338025314-2">(</span><span·class="p"·data-group-id="7338025314-3">[</span><span·class="ss">c_break</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="7338025314-3">]</span><span·class="p"·data-group-id="7338025314-2">)</span><span·class="p">.</span><span·class="w">213 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2828804282-2">(</span><span·class="p"·data-group-id="2828804282-3">[</span><span·class="ss">c_break</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="2828804282-3">]</span><span·class="p"·data-group-id="2828804282-2">)</span><span·class="p">.</span><span·class="w">
  
214 </span><span·class="nf">c_break</span><span·class="p"·data-group-id="7338025314-4">(</span><span·class="n">Bindings</span><span·class="p"·data-group-id="7338025314-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 </span><span·class="nf">c_break</span><span·class="p"·data-group-id="2828804282-4">(</span><span·class="n">Bindings</span><span·class="p"·data-group-id="2828804282-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">int</span><span·class="p">:</span><span·class="nf">get_binding</span><span·class="p"·data-group-id="7338025314-5">(</span><span·class="ss">&#39;N&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bindings</span><span·class="p"·data-group-id="7338025314-5">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">215 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">int</span><span·class="p">:</span><span·class="nf">get_binding</span><span·class="p"·data-group-id="2828804282-5">(</span><span·class="ss">&#39;N&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bindings</span><span·class="p"·data-group-id="2828804282-5">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
216 ········</span><span·class="p"·data-group-id="7338025314-6">{</span><span·class="ss">value</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">3</span><span·class="p"·data-group-id="7338025314-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">216 ········</span><span·class="p"·data-group-id="2828804282-6">{</span><span·class="ss">value</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">3</span><span·class="p"·data-group-id="2828804282-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
217 ············</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">217 ············</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">
218 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">218 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
219 ············</span><span·class="ss">false</span><span·class="w">219 ············</span><span·class="ss">false</span><span·class="w">
220 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><h3·id="function-breakpoints"·class="section-heading">220 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><h3·id="function-breakpoints"·class="section-heading">
221 ··<a·href="#function-breakpoints"·class="hover-link">221 ··<a·href="#function-breakpoints"·class="hover-link">
222 ····<i·class="ri-link-m"·aria-hidden="true"></i>222 ····<i·class="ri-link-m"·aria-hidden="true"></i>
223 ··</a>223 ··</a>
Offset 231, 20 lines modifiedOffset 231, 20 lines modified
231 ··<a·href="#stack-trace"·class="hover-link">231 ··<a·href="#stack-trace"·class="hover-link">
232 ····<i·class="ri-link-m"·aria-hidden="true"></i>232 ····<i·class="ri-link-m"·aria-hidden="true"></i>
233 ··</a>233 ··</a>
234 ··<span·class="text">Stack·Trace</span>234 ··<span·class="text">Stack·Trace</span>
235 </h2>235 </h2>
236 <p>The·Erlang·emulator·keeps·track·of·a·<em>stack·trace</em>,·information·about·recent236 <p>The·Erlang·emulator·keeps·track·of·a·<em>stack·trace</em>,·information·about·recent
237 function·calls.·This·information·is·used·if·an·error·occurs,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="k">catch</span><span·class="w">·</span><span·class="ss">a</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">237 function·calls.·This·information·is·used·if·an·error·occurs,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="k">catch</span><span·class="w">·</span><span·class="ss">a</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">
238 </span><span·class="p"·data-group-id="9464933456-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-2">{</span><span·class="ss">badarith</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-3">[</span><span·clas[·...·truncated·by·diffoscope;·len:·507,·SHA:·dcf6098ced60c4bd062bcadc8c30c309057d31e5644be2a3e3ca4c7ed1e70ca0·...·]-4">}</span><span·class="p">,</span><span·class="w">238 </span><span·class="p"·data-group-id="2052195563-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-2">{</span><span·class="ss">badarith</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-3">[</span><span·clas[·...·truncated·by·diffoscope;·len:·507,·SHA:·a4cdb8e8c1eb4844ad6ccaec8484d6217831ec3a45e01aeb7260bd035e47b563·...·]-4">}</span><span·class="p">,</span><span·class="w">
239 ···················</span><span·class="p"·data-group-id="9464933456-7">{</span><span·class="ss">erl_eval</span><span·class="p">,</span><span·class="ss">do_apply</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-8">[</span><span·class="p"·data-group-id="9464933456-9">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="s">&quot;erl_eval.erl&quot;</span><span·class="p"·data-group-id="9464933456-9">}</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-10">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">573</span><span·class="p"·data-group-id="9464933456-10">}</span><span·class="p"·data-group-id="9464933456-8">]</span><span·class="p"·data-group-id="9464933456-7">}</span><span·class="p">,</span><span·class="w"> 
240 ···················</span><span·class="p"·data-group-id="9464933456-11">{</span><span·class="ss">erl_eval</span><span·class="p">,</span><span·class="ss">expr</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-12">[</span><span·class="p"·data-group-id="9464933456-13">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="s">&quot;erl_eval.erl&quot;</span><span·class="p"·data-group-id="9464933456-13">}</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-14">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">357</span><span·class="p"·data-group-id="9464933456-14">}</span><span·class="p"·data-group-id="9464933456-12">]</span><span·class="p"·data-group-id="9464933456-11">}</span><span·class="p">,</span><span·class="w"> 
241 ···················</span><span·class="p"·data-group-id="9464933456-15">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">exprs</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-16">[</span><span·class="p"·data-group-id="9464933456-17">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="s">&quot;shell.erl&quot;</span><span·class="p"·data-group-id="9464933456-17">}</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-18">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">674</span><span·class="p"·data-group-id="9464933456-18">}</span><span·class="p"·data-group-id="9464933456-16">]</span><span·class="p"·data-group-id="9464933456-15">}</span><span·class="p">,</span><span·class="w"> 
242 ···················</span><span·class="p"·data-group-id="9464933456-19">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">eval_exprs</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-20">[</span><span·class="p"·data-group-id="9464933456-21">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="s">&quot;shell.erl&quot;</span><span·class="p"·data-group-id="9464933456-21">}</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-22">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">629</span><span·class="p"·data-group-id="9464933456-22">}</span><span·class="p"·data-group-id="9464933456-20">]</span><span·class="p"·data-group-id="9464933456-19">}</span><span·class="p">,</span><span·class="w"> 
243 ···················</span><span·class="p"·data-group-id="9464933456-23">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">eval_loop</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data-group-id="9464933456-24">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·724,·SHA:·1551e0c6adfceec0e759cb3d81b6dfc609cc6cc169fe1dbee7011c46f4343e64·...·]239 ···················</span><span·class="p"·data-group-id="2052195563-7">{</span><span·class="ss">erl_eval</span><span·class="p">,</span><span·class="ss">do_apply</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-8">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·542,·SHA:·1bed9aa746908f0f67b3905c49cd59cd23377464cbbc2ed25ca862193640c91e·...·]
 240 ···················</span><span·class="p"·data-group-id="2052195563-11">{</span><span·class="ss">erl_eval</span><span·class="p">,</span><span·class="ss">expr</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-12">[</span><span·class="p"·data-group-id="2052195563-13">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="s">&quot;erl_eval.erl&quot;</span><span·class="p"·data-group-id="2052195563-13">}</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-14">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">357</span><span·class="p"·data-group-id="2052195563-14">}</span><span·class="p"·data-group-id="2052195563-12">]</span><span·class="p"·data-group-id="2052195563-11">}</span><span·class="p">,</span><span·class="w">
 241 ···················</span><span·class="p"·data-group-id="2052195563-15">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">exprs</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-16">[</span><span·class="p"·data-group-id="2052195563-17">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="s">&quot;shell.erl&quot;</span><span·class="p"·data-group-id="2052195563-17">}</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-18">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">674</span><span·class="p"·data-group-id="2052195563-18">}</span><span·class="p"·data-group-id="2052195563-16">]</span><span·class="p"·data-group-id="2052195563-15">}</span><span·class="p">,</span><span·class="w">
 242 ···················</span><span·class="p"·data-group-id="2052195563-19">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">eval_exprs</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-20">[</span><span·class="p"·data-group-id="2052195563-21">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="s">&quot;shell.erl&quot;</span><span·class="p"·data-group-id="2052195563-21">}</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-22">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">629</span><span·class="p"·data-group-id="2052195563-22">}</span><span·class="p"·data-group-id="2052195563-20">]</span><span·class="p"·data-group-id="2052195563-19">}</span><span·class="p">,</span><span·class="w">
 243 ···················</span><span·class="p"·data-group-id="2052195563-23">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">eval_loop</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-24">[</span><span·class="p"·data-group-id="2052195563-25">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="s">&quot;shell.erl&quot;</span><span·class="p"·data-group-id="2052195563-25">}</span><span·class="p">,</span><span·class="p"·data-group-id="2052195563-26">{</span><span·class="ss">line</span><span·class="p">,</span><span·class="mi">614</span><span·class="p"·data-group-id="2052195563-26">}</span><span·class="p"·data-group-id="2052195563-24">]</span><span·class="p"·data-group-id="2052195563-23">}</span><span·class="p"·data-group-id="2052195563-3">]</span><span·class="p"·data-group-id="2052195563-2">}</span><span·class="p"·data-group-id="2052195563-1">}</span></code></pre><p>For·details·about·the·stack·trace,·see·section
244 <a·href="../../../../doc/system/errors.html">Errors·and·Error·Handling</a>·in·the·Erlang·Reference244 <a·href="../../../../doc/system/errors.html">Errors·and·Error·Handling</a>·in·the·Erlang·Reference
245 Manual.</p><p>Debugger·emulates·the·stack·trace·by·keeping·track·of·recently·called245 Manual.</p><p>Debugger·emulates·the·stack·trace·by·keeping·track·of·recently·called
246 interpreted·functions.·(The·real·stack·trace·cannot·be·used,·as·it·shows·which246 interpreted·functions.·(The·real·stack·trace·cannot·be·used,·as·it·shows·which
247 functions·of·Debugger·have·been·called,·rather·than·which·interpreted247 functions·of·Debugger·have·been·called,·rather·than·which·interpreted
248 functions.)</p><p>This·information·can·be·used·to·traverse·the·chain·of·function·calls,·using·the248 functions.)</p><p>This·information·can·be·used·to·traverse·the·chain·of·function·calls,·using·the
249 <em>Up</em>·and·<em>Down</em>·buttons·in·the249 <em>Up</em>·and·<em>Down</em>·buttons·in·the
250 <a·href="debugger_chapter.html#attach">Attach·Process·window</a>.</p><p>By·default,·Debugger·only·saves·information·about·recursive·function·calls,·that250 <a·href="debugger_chapter.html#attach">Attach·Process·window</a>.</p><p>By·default,·Debugger·only·saves·information·about·recursive·function·calls,·that
Offset 543, 15 lines modifiedOffset 543, 15 lines modified
543 ······<p·class="built-using">543 ······<p·class="built-using">
544 ········Built·using544 ········Built·using
545 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the545 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
546 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>546 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
547 ······</p>547 ······</p>
548 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>548 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
549 ····</footer>549 ····</footer>
550 ··</div>550 ··</div>
551 </main>551 </main>
552 </div>552 </div>
553 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>553 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
554 <script>554 <script>
555 ··document.addEventListener("DOMContentLoaded",·function·()·{555 ··document.addEventListener("DOMContentLoaded",·function·()·{
672 B
html2text {}
Max HTML report size reached
4.11 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/i.html
    
Offset 130, 17 lines modifiedOffset 130, 17 lines modified
130 ····<section·id="moduledoc">130 ····<section·id="moduledoc">
131 <p>Debugger/Interpreter·Interface.</p><p>The·<code·class="inline">i</code>·module·provides·short·forms·for·some·of·the·functions·used·by·the131 <p>Debugger/Interpreter·Interface.</p><p>The·<code·class="inline">i</code>·module·provides·short·forms·for·some·of·the·functions·used·by·the
132 graphical·Debugger·and·some·of·the·functions·in·module·<a·href="int.html"><code·class="inline">int</code></a>,·the·Erlang132 graphical·Debugger·and·some·of·the·functions·in·module·<a·href="int.html"><code·class="inline">int</code></a>,·the·Erlang
133 interpreter.</p><p>This·module·also·provides·facilities·for·displaying·status·information·about133 interpreter.</p><p>This·module·also·provides·facilities·for·displaying·status·information·about
134 interpreted·processes·and·break·points.</p><p>It·is·possible·to·attach·to·interpreted·processes·by·only·giving·the·corresponding134 interpreted·processes·and·break·points.</p><p>It·is·possible·to·attach·to·interpreted·processes·by·only·giving·the·corresponding
135 process·identity.·By·default,·an·attachment·window·is·displayed.·Processes135 process·identity.·By·default,·an·attachment·window·is·displayed.·Processes
136 at·other·Erlang·nodes·can·be·attached·manually·or·automatically.</p><p>The·functions·in·this·module·are·defined·in·the·Erlang·shell.·That·is,136 at·other·Erlang·nodes·can·be·attached·manually·or·automatically.</p><p>The·functions·in·this·module·are·defined·in·the·Erlang·shell.·That·is,
137 they·can·be·called·without·the·<code·class="inline">i:</code>·prefix.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">ii</span><span·class="p"·data-group-id="2237095729-1">(</span><span·class="ss">t</span><span·class="p"·data-group-id="2237095729-1">)</span><span·class="p">.</span><span·class="w">137 they·can·be·called·without·the·<code·class="inline">i:</code>·prefix.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">ii</span><span·class="p"·data-group-id="8349344501-1">(</span><span·class="ss">t</span><span·class="p"·data-group-id="8349344501-1">)</span><span·class="p">.</span><span·class="w">
138 </span><span·class="p"·data-group-id="2237095729-2">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">t</span><span·class="p"·data-group-id="2237095729-2">}</span><span·class="gp·unselectable">138 </span><span·class="p"·data-group-id="8349344501-2">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">t</span><span·class="p"·data-group-id="8349344501-2">}</span><span·class="gp·unselectable">
139 2&gt;·</span><span·class="nf">iaa</span><span·class="p"·data-group-id="2237095729-3">(</span><span·class="p"·data-group-id="2237095729-4">[</span><span·class="ss">init</span><span·class="p"·data-group-id="2237095729-4">]</span><span·class="p"·data-group-id="2237095729-3">)</span><span·class="p">.</span><span·class="w">139 2&gt;·</span><span·class="nf">iaa</span><span·class="p"·data-group-id="8349344501-3">(</span><span·class="p"·data-group-id="8349344501-4">[</span><span·class="ss">init</span><span·class="p"·data-group-id="8349344501-4">]</span><span·class="p"·data-group-id="8349344501-3">)</span><span·class="p">.</span><span·class="w">
140 </span><span·class="ss">true</span></code></pre>140 </span><span·class="ss">true</span></code></pre>
141 ····</section>141 ····</section>
  
142 </div>142 </div>
  
143 ··<section·id="summary"·class="details-list">143 ··<section·id="summary"·class="details-list">
144 ····<h1·class="section-heading">144 ····<h1·class="section-heading">
Offset 1344, 15 lines modifiedOffset 1344, 15 lines modified
1344 ······<p·class="built-using">1344 ······<p·class="built-using">
1345 ········Built·using1345 ········Built·using
1346 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1346 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1347 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1347 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1348 ······</p>1348 ······</p>
1349 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1349 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1350 ····</footer>1350 ····</footer>
1351 ··</div>1351 ··</div>
1352 </main>1352 </main>
1353 </div>1353 </div>
1354 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1354 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1355 <script>1355 <script>
1356 ··document.addEventListener("DOMContentLoaded",·function·()·{1356 ··document.addEventListener("DOMContentLoaded",·function·()·{
610 B
html2text {}
Max HTML report size reached
4.21 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/int.html
    
Offset 682, 15 lines modifiedOffset 682, 15 lines modified
682 ·························Args·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()].</pre>682 ·························Args·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()].</pre>
  
683 ······</div>683 ······</div>
  
684 <p>Sets·when·and·how·to·attach·automatically·to·a·process·executing·code684 <p>Sets·when·and·how·to·attach·automatically·to·a·process·executing·code
685 in·interpreted·modules.</p><p>By·default·when·the·interpreter·is·started,·automatic·attach·is·disabled.</p><p>If·<code·class="inline">Flags</code>·is·an·empty·list,·automatic·attach·is·disabled.</p><p>Otherwise·<code·class="inline">Flags</code>·should·be·a·list·containing··at·least·one·of·the·following685 in·interpreted·modules.</p><p>By·default·when·the·interpreter·is·started,·automatic·attach·is·disabled.</p><p>If·<code·class="inline">Flags</code>·is·an·empty·list,·automatic·attach·is·disabled.</p><p>Otherwise·<code·class="inline">Flags</code>·should·be·a·list·containing··at·least·one·of·the·following
686 flags:</p><ul><li><code·class="inline">init</code>·-·Attach·when·a·process·for·the·first·time·calls·an·interpreted686 flags:</p><ul><li><code·class="inline">init</code>·-·Attach·when·a·process·for·the·first·time·calls·an·interpreted
687 function.</li><li><code·class="inline">break</code>·-·Attach·whenever·a·process·reaches·a·breakpoint.</li><li><code·class="inline">exit</code>·-·Attach·when·a·process·terminates.</li></ul><p>When·the·specified·event·occurs,·the·function·<code·class="inline">Function</code>·is·called·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">spawn</span><span·class="p"·data-group-id="3022586838-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3022586838-2">[</span><span·class="n">Pid</span><sp[·...·truncated·by·diffoscope;·len:·190,·SHA:·9d4daecb56272d2d5d62a203c9187f9e1f76ecf12518f747ff05684fb2657512·...·]-1">)</span></code></pre><p><code·class="inline">Pid</code>·is·the·pid·of·the·process·executing·interpreted·code.</p>687 function.</li><li><code·class="inline">break</code>·-·Attach·whenever·a·process·reaches·a·breakpoint.</li><li><code·class="inline">exit</code>·-·Attach·when·a·process·terminates.</li></ul><p>When·the·specified·event·occurs,·the·function·<code·class="inline">Function</code>·is·called·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">spawn</span><span·class="p"·data-group-id="6489569693-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6489569693-2">[</span><span·class="n">Pid</span><sp[·...·truncated·by·diffoscope;·len:·190,·SHA:·4446840dd429b9e3bef70971fb4e69612afe60729333c3b384e0466e28658b06·...·]-1">)</span></code></pre><p><code·class="inline">Pid</code>·is·the·pid·of·the·process·executing·interpreted·code.</p>
688 ··</section>688 ··</section>
689 </section>689 </section>
690 <section·class="detail"·id="break/2">690 <section·class="detail"·id="break/2">
  
691 ··<div·class="detail-header">691 ··<div·class="detail-header">
692 ····<a·href="#break/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">692 ····<a·href="#break/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
693 ······<i·class="ri-link-m"·aria-hidden="true"></i>693 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1455, 15 lines modifiedOffset 1455, 15 lines modified
1455 ······<p·class="built-using">1455 ······<p·class="built-using">
1456 ········Built·using1456 ········Built·using
1457 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1457 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1458 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1458 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1459 ······</p>1459 ······</p>
1460 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1460 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1461 ····</footer>1461 ····</footer>
1462 ··</div>1462 ··</div>
1463 </main>1463 </main>
1464 </div>1464 </div>
1465 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1465 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1466 <script>1466 <script>
1467 ··document.addEventListener("DOMContentLoaded",·function·()·{1467 ··document.addEventListener("DOMContentLoaded",·function·()·{
657 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/introduction.html
    
Offset 188, 15 lines modifiedOffset 188, 15 lines modified
188 ······<p·class="built-using">188 ······<p·class="built-using">
189 ········Built·using189 ········Built·using
190 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the190 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
191 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>191 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
192 ······</p>192 ······</p>
193 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>193 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
194 ····</footer>194 ····</footer>
195 ··</div>195 ··</div>
196 </main>196 </main>
197 </div>197 </div>
198 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>198 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
199 <script>199 <script>
200 ··document.addEventListener("DOMContentLoaded",·function·()·{200 ··document.addEventListener("DOMContentLoaded",·function·()·{
723 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/notes.html
    
Offset 959, 15 lines modifiedOffset 959, 15 lines modified
959 ······<p·class="built-using">959 ······<p·class="built-using">
960 ········Built·using960 ········Built·using
961 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the961 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
962 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>962 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
963 ······</p>963 ······</p>
964 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>964 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
965 ····</footer>965 ····</footer>
966 ··</div>966 ··</div>
967 </main>967 </main>
968 </div>968 </div>
969 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>969 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
970 <script>970 <script>
971 ··document.addEventListener("DOMContentLoaded",·function·()·{971 ··document.addEventListener("DOMContentLoaded",·function·()·{
698 B
html2text {}
Max HTML report size reached
1.75 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-1474772F.js"></script>124 <script·src="dist/search_data-9403A99F.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
463 B
html2text {}
Max HTML report size reached
594 B
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/.build
    
Offset 16, 13 lines modifiedOffset 16, 13 lines modified
16 dist/lato-latin-300-normal-YUMVEFOL.woff216 dist/lato-latin-300-normal-YUMVEFOL.woff2
17 dist/lato-latin-400-normal-W7754I4D.woff217 dist/lato-latin-400-normal-W7754I4D.woff2
18 dist/lato-latin-700-normal-2XVSBPG4.woff218 dist/lato-latin-700-normal-2XVSBPG4.woff2
19 dist/lato-latin-ext-300-normal-VPGGJKJL.woff219 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
20 dist/lato-latin-ext-400-normal-N27NCBWW.woff220 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
21 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff221 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
22 dist/remixicon-NKANDIL5.woff222 dist/remixicon-NKANDIL5.woff2
23 dist/search_data-1DB1C954.js23 dist/search_data-009BAE67.js
24 dist/sidebar_items-D08FD193.js24 dist/sidebar_items-D08FD193.js
25 index.html25 index.html
26 notes.html26 notes.html
27 search.html27 search.html
28 typer_cmd.html28 typer_cmd.html
1.47 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/api-reference.html
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ······<p·class="built-using">181 ······<p·class="built-using">
182 ········Built·using182 ········Built·using
183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
185 ······</p>185 ······</p>
186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
187 ····</footer>187 ····</footer>
188 ··</div>188 ··</div>
189 </main>189 </main>
190 </div>190 </div>
191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
192 <script>192 <script>
193 ··document.addEventListener("DOMContentLoaded",·function·()·{193 ··document.addEventListener("DOMContentLoaded",·function·()·{
704 B
html2text {}
Max HTML report size reached
76.3 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/dialyzer.epub
2.24 KB
zipinfo {}
Max HTML report size reached
39.4 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
18.4 KB
OEBPS/dialyzer_chapter.xhtml
Max HTML report size reached
14.8 KB
OEBPS/dialyzer.xhtml
Max HTML report size reached
1.23 KB
OEBPS/content.opf
1.2 KB
OEBPS/content.opf
Max HTML report size reached
16.2 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/dialyzer.html
    
Offset 266, 35 lines modifiedOffset 266, 35 lines modified
266 the·value·is·a·list,·it·is·used·as·is.·If·it·is·not·a·list,·it·is·put·into·a266 the·value·is·a·list,·it·is·used·as·is.·If·it·is·not·a·list,·it·is·put·into·a
267 list.</p><p>The·list·is·appended·to·any·options·given·to·<a·href="#run/1"><code·class="inline">run/1</code></a>·or·on·the·command·line.</p><p>The·list·can·be·retrieved·with·<a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html#env_compiler_options/0"><code·class="inline">compile:env_compiler_options/0</code></a>.</p><p>Currently·the·only·option·used·is·the267 list.</p><p>The·list·is·appended·to·any·options·given·to·<a·href="#run/1"><code·class="inline">run/1</code></a>·or·on·the·command·line.</p><p>The·list·can·be·retrieved·with·<a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html#env_compiler_options/0"><code·class="inline">compile:env_compiler_options/0</code></a>.</p><p>Currently·the·only·option·used·is·the
268 <a·href="dialyzer.html#error_location"><code·class="inline">error_location</code></a>·option.</p><p><em>Dialyzer·configuration·file:</em></p><p>Dialyzer's·configuration·file·may·also·be·used·to·augment·the·default·options268 <a·href="dialyzer.html#error_location"><code·class="inline">error_location</code></a>·option.</p><p><em>Dialyzer·configuration·file:</em></p><p>Dialyzer's·configuration·file·may·also·be·used·to·augment·the·default·options
269 and·those·given·directly·to·the·Dialyzer·command.·It·is·commonly·used·to·avoid269 and·those·given·directly·to·the·Dialyzer·command.·It·is·commonly·used·to·avoid
270 repeating·options·which·would·otherwise·need·to·be·given·explicitly·to·Dialyzer270 repeating·options·which·would·otherwise·need·to·be·given·explicitly·to·Dialyzer
271 on·every·invocation.</p><p>The·location·of·the·configuration·file·can·be·set·via·the·<code·class="inline">DIALYZER_CONFIG</code>271 on·every·invocation.</p><p>The·location·of·the·configuration·file·can·be·set·via·the·<code·class="inline">DIALYZER_CONFIG</code>
272 environment·variable,·and·defaults·to·within·the·<code·class="inline">user_config</code>·from272 environment·variable,·and·defaults·to·within·the·<code·class="inline">user_config</code>·from
273 <a·href="../../../../lib/stdlib-6.0.1/doc/html/filename.html#basedir/3"><code·class="inline">filename:basedir/3</code></a>.</p><p>An·example·configuration·file's·contents·might·be:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="4763348890-1">{</span><span·class="ss">incremental</span><span·class="p">,</span><span·class="w">273 <a·href="../../../../lib/stdlib-6.0.1/doc/html/filename.html#basedir/3"><code·class="inline">filename:basedir/3</code></a>.</p><p>An·example·configuration·file's·contents·might·be:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="5031432260-1">{</span><span·class="ss">incremental</span><span·class="p">,</span><span·class="w">
274 ········</span><span·class="p"·data-group-id="4763348890-2">{</span><span·class="ss">default_apps</span><span·class="p">,</span><span·class="p"·data-group-id="4763348890-3">[</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·108,·SHA:·630d66890ab01d1b0147a2a356ded8016964e27f63dc8ce8585ab246f62176f6·...·]0-2">}</span><span·class="p">,</span><span·class="w">274 ········</span><span·class="p"·data-group-id="5031432260-2">{</span><span·class="ss">default_apps</span><span·class="p">,</span><span·class="p"·data-group-id="5031432260-3">[</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·108,·SHA:·0b4093a32fe49c0201102d0f3b3ff01ce8cc5d6b04d19736520f25d6a11bf8bf·...·]0-2">}</span><span·class="p">,</span><span·class="w">
275 ········</span><span·class="p"·data-group-id="4763348890-4">{</span><span·class="ss">default_warning_apps</span><span·class="p">,</span><span·class="p"·data-group-id="4763348890-5">[</span><span·class="ss">stdlib</span><span·class="p"·data-group-id="4763348890-5">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·10,·SHA:·21b387662270aa260cde035614041a06049970c3716049011ef43ecb0e4a0cf1·...·]0-4">}</span><span·class="w">275 ········</span><span·class="p"·data-group-id="5031432260-4">{</span><span·class="ss">default_warning_apps</span><span·class="p">,</span><span·class="p"·data-group-id="5031432260-5">[</span><span·class="ss">stdlib</span><span·class="p"·data-group-id="5031432260-5">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·10,·SHA:·7a3ec0f16296b536c3faa66618b543c643fc2bb4d9fb57c26a201e1474520c75·...·]0-4">}</span><span·class="w">
276 ······</span><span·class="p"·data-group-id="4763348890-1">}</span><span·class="p">.</span><span·class="w">276 ······</span><span·class="p"·data-group-id="5031432260-1">}</span><span·class="p">.</span><span·class="w">
277 ······</span><span·class="p"·data-group-id="4763348890-6">{</span><span·class="ss">warnings</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4763348890-7">[</span><span·class="ss">no_improper_lists</span><span·class="p"·data-group-id="4763348890-7">]</span><span·class="p"·data-group-id="4763348890-6">}</span><span·class="p">.</span><span·class="w"> 
278 ······</span><span·class="p"·data-group-id="4763348890-8">{</span><span·class="ss">add_pathsa</span><span·class="p">,</span><span·class="p"·data-group-id="4763348890-9">[</span><span·class="s">&quot;/users/samwise/potatoes/ebin&quot;</span><span·class="p"·data-group-id="4763348890-9">]</span><span·class="p"·data-group-id="4763348890-8">}</span><span·class="p">.</span><span·class="w"> 
279 ······</span><span·class="p"·data-group-id="4763348890-10">{</span><span·class="ss">add_pathsz</span><span·class="p">,</span><span·class="p"·data-group-id="4763348890-11">[</span><span·class="s">&quot;/users/smeagol/fish/ebin&quot;</span><span·class="p"·data-group-id="4763348890-11">]</span><span·cl[·...·truncated·by·diffoscope;·len:·211,·SHA:·ec28a59c3685d78d304a8c043cecf65e0f27c9375b3af1bb0797cf2066381872·...·]">277 ······</span><span·class="p"·data-group-id="5031432260-6">{</span><span·class="ss">warnings</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5031432260-7">[</span><span·class="ss">no_improper_lists</span><span·class="p"·data-group-id="5031432260-7">]</span><span·c[·...·truncated·by·diffoscope;·len:·84,·SHA:·513bccbfdc02f651ba58e6d251fced17225c3f9d09954327d503b35f2fb176ab·...·]">
 278 ······</span><span·class="p"·data-group-id="5031432260-8">{</span><span·class="ss">add_pathsa</span><span·class="p">,</span><span·class="p"·data-group-id="5031432260-9">[</span><span·class="s">&quot;/users/samwise/potatoes/ebin&quot;</span><span·class="p"·data-group-id="5031432260-9">]</span><span·class="p"·data-group-id="5031432260-8">}</span><span·class="p">.</span><span·class="w">
 279 ······</span><span·class="p"·data-group-id="5031432260-10">{</span><span·class="ss">add_pathsz</span><span·class="p">,</span><span·class="p"·data-group-id="5031432260-11">[</span><span·class="s">&quot;/users/smeagol/fish/ebin&quot;</span><span·class="p"·data-group-id="5031432260-11">]</span><span·class="p"·data-group-id="5031432260-10">}</span><span·class="p">.</span></code></pre><p><a·href=""·id="suppression"></a></p><h2·id="module-requesting-or-suppressing-warnings-in-source-files"·class="section-heading">
280 ··<a·href="#module-requesting-or-suppressing-warnings-in-source-files"·class="hover-link">280 ··<a·href="#module-requesting-or-suppressing-warnings-in-source-files"·class="hover-link">
281 ····<i·class="ri-link-m"·aria-hidden="true"></i>281 ····<i·class="ri-link-m"·aria-hidden="true"></i>
282 ··</a>282 ··</a>
283 ··<span·class="text">Requesting·or·Suppressing·Warnings·in·Source·Files</span>283 ··<span·class="text">Requesting·or·Suppressing·Warnings·in·Source·Files</span>
284 </h2>284 </h2>
285 <p>Attribute·<code·class="inline">-dialyzer()</code>·can·be·used·for·turning·off·warnings·in·a·module·by285 <p>Attribute·<code·class="inline">-dialyzer()</code>·can·be·used·for·turning·off·warnings·in·a·module·by
286 specifying·functions·or·warning·options.·For·example,·to·turn·off·all·warnings286 specifying·functions·or·warning·options.·For·example,·to·turn·off·all·warnings
287 for·the·function·<code·class="inline">f/0</code>,·include·the·following·line:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">dialyzer</span><span·class="p"·data-group-id="9937661393-1">(</span><span·class="p"·data-group-id="9937661393-2">{</span><span·class="ss">nowarn_function</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·73,·SHA:·f0bb743dee51408c6b2d19437b24ce09f5611c8977bbaaee7321fcd82bf41a0e·...·]-1">)</span><span·class="p">.</span></code></pre><p>To·turn·off·warnings·for·improper·lists,·add·the·following·line·to·the·source287 for·the·function·<code·class="inline">f/0</code>,·include·the·following·line:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">dialyzer</span><span·class="p"·data-group-id="9136643287-1">(</span><span·class="p"·data-group-id="9136643287-2">{</span><span·class="ss">nowarn_function</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·73,·SHA:·e2391be6fb0dfa29e0aaa4562417eb448698ed6cfa11b610fdc306781f3d51b6·...·]-1">)</span><span·class="p">.</span></code></pre><p>To·turn·off·warnings·for·improper·lists,·add·the·following·line·to·the·source
288 file:</p><pre><code·class="text">-dialyzer(no_improper_lists).</code></pre><p>Attribute·<code·class="inline">-dialyzer()</code>·is·allowed·after·function·declarations.·Lists·of·warning288 file:</p><pre><code·class="text">-dialyzer(no_improper_lists).</code></pre><p>Attribute·<code·class="inline">-dialyzer()</code>·is·allowed·after·function·declarations.·Lists·of·warning
289 options·or·functions·are·allowed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">dialyzer</span><span·class="p"·data-group-id="0924896407-1">(</span><span·class="p"·data-group-id="0924896407-2">[</span><span·class="p"·data-group-id="0924896407-3">{</span><span·class="ss">nowarn_function</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0924896407[·...·truncated·by·diffoscope;·len:·1867,·SHA:·fb3cf2eb61f6ebac72d7c7231204582112290654ae0c5164966773e29a783310·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·warning·option·for·underspecified·functions,·<code·class="inline">-Wunderspecs</code>,·can·result·in289 options·or·functions·are·allowed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">dialyzer</span><span·class="p"·data-group-id="5167235731-1">(</span><span·class="p"·data-group-id="5167235731-2">[</span><span·class="p"·data-group-id="5167235731-3">{</span><span·class="ss">nowarn_function</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5167235731[·...·truncated·by·diffoscope;·len:·1867,·SHA:·d21db29db592821493c6b47297ed1a5105afff9d9641554d532219ee4588ee2d·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·warning·option·for·underspecified·functions,·<code·class="inline">-Wunderspecs</code>,·can·result·in
290 useful·warnings,·but·often·functions·with·specifications·that·are·strictly·more290 useful·warnings,·but·often·functions·with·specifications·that·are·strictly·more
291 allowing·than·the·success·typing·cannot·easily·be·modified·to·be·less·allowing.291 allowing·than·the·success·typing·cannot·easily·be·modified·to·be·less·allowing.
292 To·turn·off·the·warning·for·underspecified·function·<code·class="inline">f/0</code>,·include·the·following292 To·turn·off·the·warning·for·underspecified·function·<code·class="inline">f/0</code>,·include·the·following
293 line:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">dialyzer</span><span·class="p"·data-group-id="9359218601-1">(</span><span·class="p"·data-group-id="9359218601-2">{</span><span·class="ss">no_underspecs</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·72,·SHA:·65f3c91ed52f9a0e647e388842ac111c804dab7646d9c1fb984ce3e5892b3bb8·...·]-1">)</span><span·class="p">.</span></code></pre><p>For·help·on·the·warning·options,·use·<code·class="inline">dialyzer·-Whelp</code>.·The·options·are·also293 line:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">dialyzer</span><span·class="p"·data-group-id="1503137884-1">(</span><span·class="p"·data-group-id="1503137884-2">{</span><span·class="ss">no_underspecs</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·72,·SHA:·78fe5da331f2342912131c6a3866c3f0b20a7362dda18db09199c3b1175029e9·...·]-1">)</span><span·class="p">.</span></code></pre><p>For·help·on·the·warning·options,·use·<code·class="inline">dialyzer·-Whelp</code>.·The·options·are·also
294 enumerated,·see·type·<a·href="#t:warn_option/0"><code·class="inline">warn_option/0</code></a>.</p><p>Attribute·<code·class="inline">-dialyzer()</code>·can·also·be·used·for·turning·on·warnings.·For·example,294 enumerated,·see·type·<a·href="#t:warn_option/0"><code·class="inline">warn_option/0</code></a>.</p><p>Attribute·<code·class="inline">-dialyzer()</code>·can·also·be·used·for·turning·on·warnings.·For·example,
295 if·a·module·has·been·fixed·regarding·unmatched·returns,·adding·the·following295 if·a·module·has·been·fixed·regarding·unmatched·returns,·adding·the·following
296 line·can·help·in·assuring·that·no·new·unmatched·return·warnings·are·introduced:</p><pre><code·class="text">-dialyzer(unmatched_returns).</code></pre>296 line·can·help·in·assuring·that·no·new·unmatched·return·warnings·are·introduced:</p><pre><code·class="text">-dialyzer(unmatched_returns).</code></pre>
297 ····</section>297 ····</section>
  
298 </div>298 </div>
  
Offset 878, 15 lines modifiedOffset 878, 15 lines modified
878 ······<p·class="built-using">878 ······<p·class="built-using">
879 ········Built·using879 ········Built·using
880 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the880 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
881 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>881 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
882 ······</p>882 ······</p>
883 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>883 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
884 ····</footer>884 ····</footer>
885 ··</div>885 ··</div>
886 </main>886 </main>
887 </div>887 </div>
888 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>888 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
889 <script>889 <script>
890 ··document.addEventListener("DOMContentLoaded",·function·()·{890 ··document.addEventListener("DOMContentLoaded",·function·()·{
655 B
html2text {}
Max HTML report size reached
20.0 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/dialyzer_chapter.html
    
Offset 205, 37 lines modifiedOffset 205, 37 lines modified
205 spec·is·invalid·with·respect·to·the·implementation.·However,·if·they·do·overlap,205 spec·is·invalid·with·respect·to·the·implementation.·However,·if·they·do·overlap,
206 Dialyzer·will·proceed·under·the·assumption·that·the·correct·type·for·the·given206 Dialyzer·will·proceed·under·the·assumption·that·the·correct·type·for·the·given
207 function·is·the·intersection·of·the·inferred·type·and·the·specified·type·(the207 function·is·the·intersection·of·the·inferred·type·and·the·specified·type·(the
208 rationale·being·that·the·user·may·know·something·that·Dialyzer·itself·cannot208 rationale·being·that·the·user·may·know·something·that·Dialyzer·itself·cannot
209 deduce).·One·implication·of·this·is·that·if·the·user·gives·a·spec·for·a·function209 deduce).·One·implication·of·this·is·that·if·the·user·gives·a·spec·for·a·function
210 which·overlaps·with·Dialyzer's·inferred·type,·but·is·more·restrictive,·Dialyzer210 which·overlaps·with·Dialyzer's·inferred·type,·but·is·more·restrictive,·Dialyzer
211 will·trust·those·restrictions.·This·may·then·generate·an·error·elsewhere·that211 will·trust·those·restrictions.·This·may·then·generate·an·error·elsewhere·that
212 follows·from·the·erroneously·restricted·spec.</p><p><em>Examples:</em></p><p>Non-overlapping·argument:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="3508006519-1">(</span><span·class="nf">boolean</span><span·class="p"·data-group-id="3508006519-2">(</span><span·class="p"·data-group-id="3508006519-2">)</span><span·class="p"·data-group-id="3508006519-1">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·fd7cb89d28de4023c42e5da41d1d358dbb0b4568a6923f2cca79c6d4efb1d3fc·...·]-3">)</span><span·class="p">.</span><span·class="w">212 follows·from·the·erroneously·restricted·spec.</p><p><em>Examples:</em></p><p>Non-overlapping·argument:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="5074571262-1">(</span><span·class="nf">boolean</span><span·class="p"·data-group-id="5074571262-2">(</span><span·class="p"·data-group-id="5074571262-2">)</span><span·class="p"·data-group-id="5074571262-1">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·bacf2e236a98c12664a1c555baf880b033c2c407e292a0c1a6fffaceba04c5cb·...·]-3">)</span><span·class="p">.</span><span·class="w">
213 </span><span·class="c1">%%·Dialyzer·will·infer:·foo(integer())·-&gt;·string().</span><span·class="w">213 </span><span·class="c1">%%·Dialyzer·will·infer:·foo(integer())·-&gt;·string().</span><span·class="w">
214 </span><span·class="nf">foo</span><span·class="p"·data-group-id="3508006519-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="3508006519-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 </span><span·class="nf">foo</span><span·class="p"·data-group-id="5074571262-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="5074571262-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 ····</span><span·class="nf">integer_to_list</span><span·class="p"·data-group-id="3508006519-5">(</span><span·class="n">N</span><span·class="p"·data-group-id="3508006519-5">)</span><span·class="p">.</span></code></pre><p>Since·the·type·of·the·argument·in·the·spec·is·different·from·the·type·that215 ····</span><span·class="nf">integer_to_list</span><span·class="p"·data-group-id="5074571262-5">(</span><span·class="n">N</span><span·class="p"·data-group-id="5074571262-5">)</span><span·class="p">.</span></code></pre><p>Since·the·type·of·the·argument·in·the·spec·is·different·from·the·type·that
216 Dialyzer·inferred,·Dialyzer·will·generate·the·following·warning:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">some_module</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">7</span><span·class="p">:</span><span·class="mi">2</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Invalid</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span><span·class="ss">specification</span><span·class="w">·</span><span·class="ss">for</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">216 Dialyzer·inferred,·Dialyzer·will·generate·the·following·warning:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">some_module</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">7</span><span·class="p">:</span><span·class="mi">2</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Invalid</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span><span·class="ss">specification</span><span·class="w">·</span><span·class="ss">for</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="ss">foo</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">
217 ·</span><span·class="n">The</span><span·class="w">·</span><span·class="ss">success</span><span·class="w">·</span><span·class="ss">typing</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="nf">foo</span><span·class="w">217 ·</span><span·class="n">The</span><span·class="w">·</span><span·class="ss">success</span><span·class="w">·</span><span·class="ss">typing</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="nf">foo</span><span·class="w">
218 ··········</span><span·class="p"·data-group-id="2416863566-1">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="2416863566-2">(</span><span·class="p"·data-group-id="2416863566-2">)</span><span·class="p"·data-group-id="2416863566-1">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·33d5fe996ff32a9bde2be239ec4462af08693338880dad0122c738e2a8b40f22·...·]-3">)</span><span·class="w">218 ··········</span><span·class="p"·data-group-id="4638017447-1">(</span><span·class="nf">integer</span><span·class="p"·data-group-id="4638017447-2">(</span><span·class="p"·data-group-id="4638017447-2">)</span><span·class="p"·data-group-id="4638017447-1">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·708572e0585362176b98adf91208e3c4f9bf5990727566f17bbd5bc91998f5f2·...·]-3">)</span><span·class="w">
219 ·</span><span·class="n">But</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">spec</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="nf">foo</span><span·class="w">219 ·</span><span·class="n">But</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">spec</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="nf">foo</span><span·class="w">
220 ··········</span><span·class="p"·data-group-id="2416863566-4">(</span><span·class="nf">boolean</span><span·class="p"·data-group-id="2416863566-5">(</span><span·class="p"·data-group-id="2416863566-5">)</span><span·class="p"·data-group-id="2416863566-4">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·77e9ae868e712660f23a9635e6eefa2f21b82b17a7b1046b320cee239044dc26·...·]-6">)</span><span·class="w">220 ··········</span><span·class="p"·data-group-id="4638017447-4">(</span><span·class="nf">boolean</span><span·class="p"·data-group-id="4638017447-5">(</span><span·class="p"·data-group-id="4638017447-5">)</span><span·class="p"·data-group-id="4638017447-4">)</span><span·class="w">·</span><span·class="p">-&gt[·...·truncated·by·diffoscope;·len:·156,·SHA:·293623de6ed13c51e78aaa1d41bdd838c3055c980307639ab856b6deac8e4226·...·]-6">)</span><span·class="w">
221 ·</span><span·class="n">They</span><span·class="w">·</span><span·class="ss">do</span><span·class="w">·</span><span·class="ow">not</span><span·class="w">·</span><span·class="ss">overlap</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="mi">1</span><span·class="ss">st</span><span·class="w">·</span><span·class="ss">argument</span></code></pre><p>Non-overlapping·return:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">bar</span><span·class="p"·data-group-id="8676949863-1">(</span><span·class="ss">a</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">b</span><span·class="p"·data-group-id="8676949863-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·139,·SHA:·4c77a89bead2c7b0d879033fb746ec75c6d0dbd2a7e39eb9ac3805c989a05e90·...·]-2">)</span><span·class="p">.</span><span·class="w">221 ·</span><span·class="n">They</span><span·class="w">·</span><span·class="ss">do</span><span·class="w">·</span><span·class="ow">not</span><span·class="w">·</span><span·class="ss">overlap</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="mi">1</span><span·class="ss">st</span><span·class="w">·</span><span·class="ss">argument</span></code></pre><p>Non-overlapping·return:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">bar</span><span·class="p"·data-group-id="4903561577-1">(</span><span·class="ss">a</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">b</span><span·class="p"·data-group-id="4903561577-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·139,·SHA:·2de8f292351728e73da5313b4b8444b370c8cec79e203be48c7131ef56d32bb4·...·]-2">)</span><span·class="p">.</span><span·class="w">
222 </span><span·class="c1">%%·Dialyzer·will·infer:·bar(a·|·b)·-&gt;·binary().</span><span·class="w">222 </span><span·class="c1">%%·Dialyzer·will·infer:·bar(a·|·b)·-&gt;·binary().</span><span·class="w">
223 </span><span·class="nf">bar</span><span·class="p"·data-group-id="8676949863-3">(</span><span·class="ss">a</span><span·class="p"·data-group-id="8676949863-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">;</span><span·class="w">223 </span><span·class="nf">bar</span><span·class="p"·data-group-id="4903561577-3">(</span><span·class="ss">a</span><span·class="p"·data-group-id="4903561577-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">;</span><span·class="w">
224 </span><span·class="nf">bar</span><span·class="p"·data-group-id="8676949863-4">(</span><span·class="ss">b</span><span·class="p"·data-group-id="8676949863-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;b&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">.</span></code></pre><p>Since·the·return·value·in·the·spec·and·the·return·value·inferred·by·Dialyzer·are224 </span><span·class="nf">bar</span><span·class="p"·data-group-id="4903561577-4">(</span><span·class="ss">b</span><span·class="p"·data-group-id="4903561577-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;b&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">.</span></code></pre><p>Since·the·return·value·in·the·spec·and·the·return·value·inferred·by·Dialyzer·are
225 different,·Dialyzer·will·generate·the·following·warning:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">some_module</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">11</span><span·class="p">:</span><span·class="mi">2</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Invalid</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span><span·class="ss">specification</span><span·class="w">·</span><span·class="ss">for</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="ss">bar</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">225 different,·Dialyzer·will·generate·the·following·warning:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">some_module</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">11</span><span·class="p">:</span><span·class="mi">2</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Invalid</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span><span·class="ss">specification</span><span·class="w">·</span><span·class="ss">for</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="ss">bar</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">.</span><span·class="w">
226 ·</span><span·class="n">The</span><span·class="w">·</span><span·class="ss">success</span><span·class="w">·</span><span·class="ss">typing</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="nf">bar</span><span·class="w">226 ·</span><span·class="n">The</span><span·class="w">·</span><span·class="ss">success</span><span·class="w">·</span><span·class="ss">typing</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="nf">bar</span><span·class="w">
227 ··········</span><span·class="p"·data-group-id="3026954454-1">(</span><span·class="ss">&#39;a&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;b&#39;</span><span·class="p"·data-group-id="3026954454-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">_</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">&gt;&gt;</span><span·class="w">227 ··········</span><span·class="p"·data-group-id="7040854196-1">(</span><span·class="ss">&#39;a&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;b&#39;</span><span·class="p"·data-group-id="7040854196-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="p">_</span><span·class="p">:</span><span·class="mi">8</span><span·class="p">&gt;&gt;</span><span·class="w">
228 ·</span><span·class="n">But</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">spec</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="nf">bar</span><span·class="w">228 ·</span><span·class="n">But</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">spec</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="nc">some_module</span><span·class="p">:</span><span·class="nf">bar</span><span·class="w">
229 ··········</span><span·class="p"·data-group-id="3026954454-2">(</span><span·class="ss">&#39;a&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;b&#39;</span><span·class="p"·data-group-id="3026954454-2">)</span><span·class="w">·</span><span·class="p"[·...·truncated·by·diffoscope;·len:·159,·SHA:·09267549a0d79e408040988f618f56da7f9b22a7ac91cc4322d9c6301662dd98·...·]-3">)</span><span·class="w">229 ··········</span><span·class="p"·data-group-id="7040854196-2">(</span><span·class="ss">&#39;a&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;b&#39;</span><span·class="p"·data-group-id="7040854196-2">)</span><span·class="w">·</span><span·class="p"[·...·truncated·by·diffoscope;·len:·159,·SHA:·659cd5e0084c917a010b39740927d550dff0d41629dfe5f129e1cf5292cd3036·...·]-3">)</span><span·class="w">
230 ·</span><span·class="n">The</span><span·class="w">·</span><span·class="ss">return</span><span·class="w">·</span><span·class="ss">types</span><span·class="w">·</span><span·class="ss">do</span><span·class="w">·</span><span·class="ow">not</span><span·class="w">·</span><span·class="ss">overlap</span></code></pre><p>Overlapping·spec·and·inferred·type:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">baz</span><span·class="p"·data-group-id="0295827841-1">(</span><span·class="ss">a</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">b</span><span·class="p"·data-group-id="0295827841-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·150,·SHA:·f2a8deac3bdf32aad84c7b722bb04e17c3fa36dd0fc2794d3c4bf99b1324e4a3·...·]-2">)</span><span·class="p">.</span><span·class="w">230 ·</span><span·class="n">The</span><span·class="w">·</span><span·class="ss">return</span><span·class="w">·</span><span·class="ss">types</span><span·class="w">·</span><span·class="ss">do</span><span·class="w">·</span><span·class="ow">not</span><span·class="w">·</span><span·class="ss">overlap</span></code></pre><p>Overlapping·spec·and·inferred·type:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">baz</span><span·class="p"·data-group-id="8834565298-1">(</span><span·class="ss">a</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">b</span><span·class="p"·data-group-id="8834565298-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·c[·...·truncated·by·diffoscope;·len:·150,·SHA:·daabf5dcb5b778dfc4d3d9bdce8a03fc3dcd64f92d982fb092921cdcb19cd61c·...·]-2">)</span><span·class="p">.</span><span·class="w">
231 </span><span·class="c1">%%·Dialyzer·will·infer:·baz(b·|·c·|·d)·-&gt;·-1·|·0·|·1.</span><span·class="w">231 </span><span·class="c1">%%·Dialyzer·will·infer:·baz(b·|·c·|·d)·-&gt;·-1·|·0·|·1.</span><span·class="w">
232 </span><span·class="nf">baz</span><span·class="p"·data-group-id="0295827841-3">(</span><span·class="ss">b</span><span·class="p"·data-group-id="0295827841-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="o">-</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">232 </span><span·class="nf">baz</span><span·class="p"·data-group-id="8834565298-3">(</span><span·class="ss">b</span><span·class="p"·data-group-id="8834565298-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="o">-</span><span·class="mi">1</span><span·class="p">;</span><span·class="w">
233 </span><span·class="nf">baz</span><span·class="p"·data-group-id="0295827841-4">(</span><span·class="ss">c</span><span·class="p"·data-group-id="0295827841-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">;</span><span·class="w">233 </span><span·class="nf">baz</span><span·class="p"·data-group-id="8834565298-4">(</span><span·class="ss">c</span><span·class="p"·data-group-id="8834565298-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">;</span><span·class="w">
234 </span><span·class="nf">baz</span><span·class="p"·data-group-id="0295827841-5">(</span><span·class="ss">d</span><span·class="p"·data-group-id="0295827841-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">.</span></code></pre><p>Dialyzer·will·&quot;trust&quot;·the·spec·and·using·the·intersection·of·the·spec·and234 </span><span·class="nf">baz</span><span·class="p"·data-group-id="8834565298-5">(</span><span·class="ss">d</span><span·class="p"·data-group-id="8834565298-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">.</span></code></pre><p>Dialyzer·will·&quot;trust&quot;·the·spec·and·using·the·intersection·of·the·spec·and
235 inferred·type:</p><pre><code·class="text">baz(b)·-&gt;·0·|·1.</code></pre><p>Notice·how·the·<code·class="inline">c</code>·and·<code·class="inline">d</code>·from·the·argument·to·<code·class="inline">baz/1</code>·and·the·<code·class="inline">-1</code>·in·the235 inferred·type:</p><pre><code·class="text">baz(b)·-&gt;·0·|·1.</code></pre><p>Notice·how·the·<code·class="inline">c</code>·and·<code·class="inline">d</code>·from·the·argument·to·<code·class="inline">baz/1</code>·and·the·<code·class="inline">-1</code>·in·the
236 return·from·the·inferred·type·were·dropped·once·the·spec·and·inferred·type·were236 return·from·the·inferred·type·were·dropped·once·the·spec·and·inferred·type·were
237 intersected.·This·could·result·in·warnings·being·emitted·for·later·functions.</p><p>For·example,·if·<code·class="inline">baz/1</code>·is·called·like·this:</p><pre><code·class="text">call_baz1(A)·-&gt;237 intersected.·This·could·result·in·warnings·being·emitted·for·later·functions.</p><p>For·example,·if·<code·class="inline">baz/1</code>·is·called·like·this:</p><pre><code·class="text">call_baz1(A)·-&gt;
238 ····case·baz(A)·of238 ····case·baz(A)·of
239 ········-1·-&gt;·negative;239 ········-1·-&gt;·negative;
240 ········0·-&gt;·zero;240 ········0·-&gt;·zero;
241 ········1·-&gt;·positive241 ········1·-&gt;·positive
Offset 302, 15 lines modifiedOffset 302, 15 lines modified
302 ······<p·class="built-using">302 ······<p·class="built-using">
303 ········Built·using303 ········Built·using
304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
306 ······</p>306 ······</p>
307 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>307 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
308 ····</footer>308 ····</footer>
309 ··</div>309 ··</div>
310 </main>310 </main>
311 </div>311 </div>
312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
313 <script>313 <script>
314 ··document.addEventListener("DOMContentLoaded",·function·()·{314 ··document.addEventListener("DOMContentLoaded",·function·()·{
750 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/notes.html
    
Offset 1833, 15 lines modifiedOffset 1833, 15 lines modified
1833 ······<p·class="built-using">1833 ······<p·class="built-using">
1834 ········Built·using1834 ········Built·using
1835 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1835 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1836 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1836 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1837 ······</p>1837 ······</p>
1838 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1838 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1839 ····</footer>1839 ····</footer>
1840 ··</div>1840 ··</div>
1841 </main>1841 </main>
1842 </div>1842 </div>
1843 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1843 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1844 <script>1844 <script>
1845 ··document.addEventListener("DOMContentLoaded",·function·()·{1845 ··document.addEventListener("DOMContentLoaded",·function·()·{
709 B
html2text {}
Max HTML report size reached
1.75 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-1DB1C954.js"></script>124 <script·src="dist/search_data-009BAE67.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
463 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/typer_cmd.html
    
Offset 196, 15 lines modifiedOffset 196, 15 lines modified
196 ······<p·class="built-using">196 ······<p·class="built-using">
197 ········Built·using197 ········Built·using
198 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the198 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
199 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>199 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
200 ······</p>200 ······</p>
201 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>201 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
202 ····</footer>202 ····</footer>
203 ··</div>203 ··</div>
204 </main>204 </main>
205 </div>205 </div>
206 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>206 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
207 <script>207 <script>
208 ··document.addEventListener("DOMContentLoaded",·function·()·{208 ··document.addEventListener("DOMContentLoaded",·function·()·{
667 B
html2text {}
Max HTML report size reached
578 B
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/.build
    
Offset 27, 12 lines modifiedOffset 27, 12 lines modified
27 dist/lato-latin-300-normal-YUMVEFOL.woff227 dist/lato-latin-300-normal-YUMVEFOL.woff2
28 dist/lato-latin-400-normal-W7754I4D.woff228 dist/lato-latin-400-normal-W7754I4D.woff2
29 dist/lato-latin-700-normal-2XVSBPG4.woff229 dist/lato-latin-700-normal-2XVSBPG4.woff2
30 dist/lato-latin-ext-300-normal-VPGGJKJL.woff230 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
31 dist/lato-latin-ext-400-normal-N27NCBWW.woff231 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
32 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff232 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
33 dist/remixicon-NKANDIL5.woff233 dist/remixicon-NKANDIL5.woff2
34 dist/search_data-A0E8AF89.js34 dist/search_data-21BE4584.js
35 dist/sidebar_items-9E4925B5.js35 dist/sidebar_items-9E4925B5.js
36 index.html36 index.html
37 notes.html37 notes.html
38 search.html38 search.html
1.47 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/api-reference.html
    
Offset 235, 15 lines modifiedOffset 235, 15 lines modified
235 ······<p·class="built-using">235 ······<p·class="built-using">
236 ········Built·using236 ········Built·using
237 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the237 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
238 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>238 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
239 ······</p>239 ······</p>
240 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>240 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
241 ····</footer>241 ····</footer>
242 ··</div>242 ··</div>
243 </main>243 </main>
244 </div>244 </div>
245 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>245 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
246 <script>246 <script>
247 ··document.addEventListener("DOMContentLoaded",·function·()·{247 ··document.addEventListener("DOMContentLoaded",·function·()·{
597 B
html2text {}
Max HTML report size reached
554 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter.epub
3.71 KB
zipinfo {}
Max HTML report size reached
37.5 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
17.4 KB
OEBPS/diameter_dict.xhtml
Max HTML report size reached
2.26 KB
OEBPS/diameter_codec.xhtml
Max HTML report size reached
7.47 KB
OEBPS/diameter_app.xhtml
Max HTML report size reached
484 KB
OEBPS/diameter.xhtml
Max HTML report size reached
1.24 KB
OEBPS/content.opf
1.2 KB
OEBPS/content.opf
Max HTML report size reached
199 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter.html
Max HTML report size reached
8.98 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_app.html
    
Offset 715, 20 lines modifiedOffset 715, 20 lines modified
715 ······</div>715 ······</div>
  
716 <p>Invoked·when·a·request·message·is·received·from·a·peer.·The·application·in·which716 <p>Invoked·when·a·request·message·is·received·from·a·peer.·The·application·in·which
717 the·callback·takes·place·(that·is,·the·callback·module·as·configured·with717 the·callback·takes·place·(that·is,·the·callback·module·as·configured·with
718 <a·href="diameter.html#start_service/2"><code·class="inline">diameter:start_service/2</code></a>)·is·determined·by·the·Application·Identifier·in·the718 <a·href="diameter.html#start_service/2"><code·class="inline">diameter:start_service/2</code></a>)·is·determined·by·the·Application·Identifier·in·the
719 header·of·the·incoming·request·message,·the·selected·module·being·the·one·whose719 header·of·the·incoming·request·message,·the·selected·module·being·the·one·whose
720 corresponding·dictionary·declares·itself·as·defining·either·the·application·in720 corresponding·dictionary·declares·itself·as·defining·either·the·application·in
721 question·or·the·Relay·application.</p><p>The·argument·<a·href="#t:packet/0">packet()</a>·has·the·following·signature.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">#</span><span·class="ss">diameter_packet</span><span·class="p"·data-group-id="3362325612-1">{</span><span·class="ss">header</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">diameter_header</span><span·class="p"·data-group-id="3362325612-2">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·24,·SHA:·efc824a0c2ffdb8f80e8a6c4abc0fd7945e06c10e7e42f9d7420dc67c320a5d2·...·]2-2">}</span><span·class="p">,</span><span·class="w">721 question·or·the·Relay·application.</p><p>The·argument·<a·href="#t:packet/0">packet()</a>·has·the·following·signature.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">#</span><span·class="ss">diameter_packet</span><span·class="p"·data-group-id="4180947702-1">{</span><span·class="ss">header</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">diameter_header</span><span·class="p"·data-group-id="4180947702-2">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·24,·SHA:·939f8be47d6b872d8fdc957ebf293632c7915f9f53883d5a03a85ebb93fcf286·...·]2-2">}</span><span·class="p">,</span><span·class="w">
722 ·················</span><span·class="ss">avps</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3362325612-3">[</span><span·class="o">#</span><span·class="ss">diameter_avp</span><span·class="p"·data-group-id="3362325612-4">{</span><span·class="p"·data-group-id="3362325612-4">}</span><span·class="p"·data-group-id="3362325612-3">]</span><span·class="p">,</span><span·class="w">722 ·················</span><span·class="ss">avps</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4180947702-3">[</span><span·class="o">#</span><span·class="ss">diameter_avp</span><span·class="p"·data-group-id="4180947702-4">{</span><span·class="p"·data-group-id="4180947702-4">}</span><span·class="p"·data-group-id="4180947702-3">]</span><span·class="p">,</span><span·class="w">
723 ·················</span><span·class="ss">msg</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">record</span><span·class="p"·data-group-id="3362325612-5">(</span><span·class="p"·data-group-id="3362325612-5">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="w">723 ·················</span><span·class="ss">msg</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">record</span><span·class="p"·data-group-id="4180947702-5">(</span><span·class="p"·data-group-id="4180947702-5">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="w">
724 ·················</span><span·class="ss">errors</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3362325612-6">[</span><span·class="n">Unsigned32</span><span·class="p"·data-group-id="3362325612-7">(</span><span·class="p"·data-group-id="3362325612-7">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·478,·SHA:·e74a6925b761544ed02496cbe0fe49adae9bd99240aef474ea4ead1979916657·...·]2-6">]</span><span·class="p">,</span><span·class="w">724 ·················</span><span·class="ss">errors</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4180947702-6">[</span><span·class="n">Unsigned32</span><span·class="p"·data-group-id="4180947702-7">(</span><span·class="p"·data-group-id="4180947702-7">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·478,·SHA:·728e98d28b0d351364c8f6288d2f44e778df33df8a877c7c436a5ea957c7eef0·...·]2-6">]</span><span·class="p">,</span><span·class="w">
725 ·················</span><span·class="ss">bin</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="3362325612-11">(</span><span·class="p"·data-group-id="3362325612-11">)</span><span·class="p">,</span><span·class="w">725 ·················</span><span·class="ss">bin</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="4180947702-11">(</span><span·class="p"·data-group-id="4180947702-11">)</span><span·class="p">,</span><span·class="w">
726 ·················</span><span·class="ss">transport_data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="3362325612-12">(</span><span·class="p"·data-group-id="3362325612-12">)</span><span·class="p"·data-group-id="3362325612-1">}</span></code></pre><p>The·<code·class="inline">msg</code>·field·will·be·<code·class="inline">undefined</code>·in·case·the·request·has·been·received·in·the726 ·················</span><span·class="ss">transport_data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="4180947702-12">(</span><span·class="p"·data-group-id="4180947702-12">)</span><span·class="p"·data-group-id="4180947702-1">}</span></code></pre><p>The·<code·class="inline">msg</code>·field·will·be·<code·class="inline">undefined</code>·in·case·the·request·has·been·received·in·the
727 relay·application.·Otherwise·it·contains·the·record·representing·the·request·as727 relay·application.·Otherwise·it·contains·the·record·representing·the·request·as
728 outlined·in·<a·href="diameter_dict.html#MESSAGE_RECORDS">diameter_dict(4)</a>.</p><p>The·<code·class="inline">errors</code>·field·specifies·any·results·codes·identifying·errors·found·while728 outlined·in·<a·href="diameter_dict.html#MESSAGE_RECORDS">diameter_dict(4)</a>.</p><p>The·<code·class="inline">errors</code>·field·specifies·any·results·codes·identifying·errors·found·while
729 decoding·the·request.·This·is·used·to·set·Result-Code·and/or·Failed-AVP·in·a729 decoding·the·request.·This·is·used·to·set·Result-Code·and/or·Failed-AVP·in·a
730 returned·answer·unless·the·callback·returns·a·<code·class="inline">#diameter_packet{}</code>·whose730 returned·answer·unless·the·callback·returns·a·<code·class="inline">#diameter_packet{}</code>·whose
731 <code·class="inline">errors</code>·field·is·set·to·either·a·non-empty·list·of·its·own,·in·which·case·this731 <code·class="inline">errors</code>·field·is·set·to·either·a·non-empty·list·of·its·own,·in·which·case·this
732 list·is·used·instead,·or·the·atom·<code·class="inline">false</code>·to·disable·any·setting·of·Result-Code732 list·is·used·instead,·or·the·atom·<code·class="inline">false</code>·to·disable·any·setting·of·Result-Code
733 and·Failed-AVP.·Note·that·the·errors·detected·by·diameter·are·of·the·3xxx·and733 and·Failed-AVP.·Note·that·the·errors·detected·by·diameter·are·of·the·3xxx·and
Offset 1038, 15 lines modifiedOffset 1038, 15 lines modified
1038 ······<p·class="built-using">1038 ······<p·class="built-using">
1039 ········Built·using1039 ········Built·using
1040 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1040 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1041 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1041 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1042 ······</p>1042 ······</p>
1043 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1043 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1044 ····</footer>1044 ····</footer>
1045 ··</div>1045 ··</div>
1046 </main>1046 </main>
1047 </div>1047 </div>
1048 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1048 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1049 <script>1049 <script>
1050 ··document.addEventListener("DOMContentLoaded",·function·()·{1050 ··document.addEventListener("DOMContentLoaded",·function·()·{
744 B
html2text {}
Max HTML report size reached
3.63 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_codec.html
    
Offset 135, 15 lines modifiedOffset 135, 15 lines modified
135 encode/decode.</p><blockquote><h4·class="warning">Warning</h4><p>The·diameter·user·does·not·need·to·call·functions·here·explicitly·when·sending135 encode/decode.</p><blockquote><h4·class="warning">Warning</h4><p>The·diameter·user·does·not·need·to·call·functions·here·explicitly·when·sending
136 and·receiving·messages·using·<a·href="diameter.html#call/4"><code·class="inline">diameter:call/4</code></a>·and·the·callback·interface136 and·receiving·messages·using·<a·href="diameter.html#call/4"><code·class="inline">diameter:call/4</code></a>·and·the·callback·interface
137 documented·in·<a·href="diameter_app.html"><code·class="inline">diameter_app</code></a>:·diameter·itself·provides·encode/decode·as·a137 documented·in·<a·href="diameter_app.html"><code·class="inline">diameter_app</code></a>:·diameter·itself·provides·encode/decode·as·a
138 consequence·of·configuration·passed·to·<a·href="diameter.html#start_service/2"><code·class="inline">diameter:start_service/2</code></a>,·and·the138 consequence·of·configuration·passed·to·<a·href="diameter.html#start_service/2"><code·class="inline">diameter:start_service/2</code></a>,·and·the
139 results·may·differ·from·those·returned·by·the·functions·documented·here,139 results·may·differ·from·those·returned·by·the·functions·documented·here,
140 depending·on·configuration.</p></blockquote><p>The·<a·href="diameter_codec.html#header">header()</a>·and140 depending·on·configuration.</p></blockquote><p>The·<a·href="diameter_codec.html#header">header()</a>·and
141 <a·href="diameter_codec.html#packet">packet()</a>·records·below·are·defined·in·diameter.hrl,141 <a·href="diameter_codec.html#packet">packet()</a>·records·below·are·defined·in·diameter.hrl,
142 which·can·be·included·as·follows.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2327745402-1">(</span><span·class="s">&quot;diameter/include/diameter.hrl&quot;</span><span·class="p"·data-group-id="2327745402-1">)</span><span·class="p">.</span></code></pre><p>Application-specific·records·are·defined·in·the·hrl·files·resulting·from142 which·can·be·included·as·follows.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="0483269626-1">(</span><span·class="s">&quot;diameter/include/diameter.hrl&quot;</span><span·class="p"·data-group-id="0483269626-1">)</span><span·class="p">.</span></code></pre><p>Application-specific·records·are·defined·in·the·hrl·files·resulting·from
143 dictionary·file·compilation.</p><h2·id="module-data-types"·class="section-heading">143 dictionary·file·compilation.</p><h2·id="module-data-types"·class="section-heading">
144 ··<a·href="#module-data-types"·class="hover-link">144 ··<a·href="#module-data-types"·class="hover-link">
145 ····<i·class="ri-link-m"·aria-hidden="true"></i>145 ····<i·class="ri-link-m"·aria-hidden="true"></i>
146 ··</a>146 ··</a>
147 ··<span·class="text">DATA·TYPES</span>147 ··<span·class="text">DATA·TYPES</span>
148 </h2>148 </h2>
149 <ul><li><p><strong><code·class="inline"·id="integers">uint8() ·=·0..255</code></strong></p></li><li><p><strong><code·class="inline">uint24()·=·0..16777215</code></strong></p></li><li><p><strong><code·class="inline">uint32()·=·0..4294967295</code></strong>·-·8-bit,·24-bit·and·32-bit·integers·occurring149 <ul><li><p><strong><code·class="inline"·id="integers">uint8() ·=·0..255</code></strong></p></li><li><p><strong><code·class="inline">uint24()·=·0..16777215</code></strong></p></li><li><p><strong><code·class="inline">uint32()·=·0..4294967295</code></strong>·-·8-bit,·24-bit·and·32-bit·integers·occurring
Offset 557, 15 lines modifiedOffset 557, 15 lines modified
557 ······<p·class="built-using">557 ······<p·class="built-using">
558 ········Built·using558 ········Built·using
559 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the559 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
560 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>560 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
561 ······</p>561 ······</p>
562 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>562 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
563 ····</footer>563 ····</footer>
564 ··</div>564 ··</div>
565 </main>565 </main>
566 </div>566 </div>
567 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>567 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
568 <script>568 <script>
569 ··document.addEventListener("DOMContentLoaded",·function·()·{569 ··document.addEventListener("DOMContentLoaded",·function·()·{
602 B
html2text {}
Max HTML report size reached
18.9 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_dict.html
    
Offset 305, 37 lines modifiedOffset 305, 37 lines modified
305 (&quot;Derived·AVP·Data·Formats&quot;)·of·RFC·6733·are·encoded·as·values·of·the·types305 (&quot;Derived·AVP·Data·Formats&quot;)·of·RFC·6733·are·encoded·as·values·of·the·types
306 defined·here.·Values·are·passed·to·<a·href="diameter.html#call/4"><code·class="inline">diameter:call/4</code></a>·in·a·request·record·when306 defined·here.·Values·are·passed·to·<a·href="diameter.html#call/4"><code·class="inline">diameter:call/4</code></a>·in·a·request·record·when
307 sending·a·request,·returned·in·a·resulting·answer·record·and·passed·to·a307 sending·a·request,·returned·in·a·resulting·answer·record·and·passed·to·a
308 <a·href="diameter_app.html#c:handle_request/3">handle_request/3</a>·callback·upon·reception·of308 <a·href="diameter_app.html#c:handle_request/3">handle_request/3</a>·callback·upon·reception·of
309 an·incoming·request.</p><p>In·cases·in·which·there·is·a·choice·between·string()·and·binary()·types·for309 an·incoming·request.</p><p>In·cases·in·which·there·is·a·choice·between·string()·and·binary()·types·for
310 OctetString()·and·derived·types,·the·representation·is·determined·by·the·value310 OctetString()·and·derived·types,·the·representation·is·determined·by·the·value
311 of·<a·href="diameter.html#service_opt">diameter:service_opt()</a>311 of·<a·href="diameter.html#service_opt">diameter:service_opt()</a>
312 <a·href="diameter.html#string_decode">string_decode</a>.</p><p><em>Basic·AVP·Data·Formats</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">OctetString</span><span·class="p"·data-group-id="2000050572-1">(</span><span·class="p"·data-group-id="2000050572-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="2000050572-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·223,·SHA:·83350521eb6bd160d19de074d93ef4f71a622d54e102d8726c8c65f77bad434f·...·]-3">)</span><span·class="w">312 <a·href="diameter.html#string_decode">string_decode</a>.</p><p><em>Basic·AVP·Data·Formats</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">OctetString</span><span·class="p"·data-group-id="7747678021-1">(</span><span·class="p"·data-group-id="7747678021-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="7747678021-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·223,·SHA:·98c4581c54447eee6ef626de06b3bc269f215c74b18e3868fa1ac830dee3d4d3·...·]-3">)</span><span·class="w">
313 </span><span·class="n">Integer32</span><span·class="p"·data-group-id="2000050572-4">(</span><span·class="p"·data-group-id="2000050572-4">)</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="o">-</span><span·class="mi">2147483647</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">2147483647</span><span·class="w">313 </span><span·class="n">Integer32</span><span·class="p"·data-group-id="7747678021-4">(</span><span·class="p"·data-group-id="7747678021-4">)</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="o">-</span><span·class="mi">2147483647</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">2147483647</span><span·class="w">
314 </span><span·class="n">Integer64</span><span·class="p"·data-group-id="2000050572-5">(</span><span·class="p"·data-group-id="2000050572-5">)</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="o">-</span><span·class="mi">9223372036854775807</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">9223372036854775807</span><span·class="w">314 </span><span·class="n">Integer64</span><span·class="p"·data-group-id="7747678021-5">(</span><span·class="p"·data-group-id="7747678021-5">)</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="o">-</span><span·class="mi">9223372036854775807</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">9223372036854775807</span><span·class="w">
315 </span><span·class="n">Unsigned32</span><span·class="p"·data-group-id="2000050572-6">(</span><span·class="p"·data-group-id="2000050572-6">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">4294967295</span><span·class="w">315 </span><span·class="n">Unsigned32</span><span·class="p"·data-group-id="7747678021-6">(</span><span·class="p"·data-group-id="7747678021-6">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">4294967295</span><span·class="w">
316 </span><span·class="n">Unsigned64</span><span·class="p"·data-group-id="2000050572-7">(</span><span·class="p"·data-group-id="2000050572-7">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">18446744073709551615</span><span·class="w">316 </span><span·class="n">Unsigned64</span><span·class="p"·data-group-id="7747678021-7">(</span><span·class="p"·data-group-id="7747678021-7">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">18446744073709551615</span><span·class="w">
317 </span><span·class="n">Float32</span><span·class="p"·data-group-id="2000050572-8">(</span><span·class="p"·data-group-id="2000050572-8">)</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;-infinity&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w[·...·truncated·by·diffoscope;·len:·133,·SHA:·6e5fde30deffc245a16d54b2a5326ad8996108fa03b1dfb1e1655572fe5f9b5f·...·]-9">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="w">317 </span><span·class="n">Float32</span><span·class="p"·data-group-id="7747678021-8">(</span><span·class="p"·data-group-id="7747678021-8">)</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;-infinity&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w[·...·truncated·by·diffoscope;·len:·133,·SHA:·bd499efc3e3f7111c0ff582b2e1906b9602ae64eaa29beeb4521924f04b4b022·...·]-9">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="w">
318 </span><span·class="n">Float64</span><span·class="p"·data-group-id="2000050572-10">(</span><span·class="p"·data-group-id="2000050572-10">)</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;-infinity&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class=[·...·truncated·by·diffoscope;·len:·136,·SHA:·55e5f5c50fa983620f80a64850e980634f3a6afad3b137670dcdb7f9eaff04be·...·]-11">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="w">318 </span><span·class="n">Float64</span><span·class="p"·data-group-id="7747678021-10">(</span><span·class="p"·data-group-id="7747678021-10">)</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;-infinity&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class=[·...·truncated·by·diffoscope;·len:·136,·SHA:·5322c25466715bc72182316c843c02b59729c662e8ec4e1bb9814c0e79da10ac·...·]-11">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="w">
319 </span><span·class="n">Grouped</span><span·class="p"·data-group-id="2000050572-12">(</span><span·class="p"·data-group-id="2000050572-12">)</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">record</span><span·class="p"·data-group-id="2000050572-13">(</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·60b613074d01e5aa7a658ba522b9ad3eb0dbafe3f1c110cc31214af5e749a336·...·]-13">)</span></code></pre><p>On·encode,·an·OctetString()·can·be·specified·as·an·iolist(),·excessively·large319 </span><span·class="n">Grouped</span><span·class="p"·data-group-id="7747678021-12">(</span><span·class="p"·data-group-id="7747678021-12">)</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">record</span><span·class="p"·data-group-id="7747678021-13">(</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·e884f412f8e8c7fc8616a8f5a5767a8c5d5373a1267196cdb4c414b871ad9d7d·...·]-13">)</span></code></pre><p>On·encode,·an·OctetString()·can·be·specified·as·an·iolist(),·excessively·large
320 floats·(in·absolute·value)·are·equivalent·to·<code·class="inline">infinity</code>·or·<code·class="inline">'-infinity'</code>·and320 floats·(in·absolute·value)·are·equivalent·to·<code·class="inline">infinity</code>·or·<code·class="inline">'-infinity'</code>·and
321 excessively·large·integers·result·in·encode·failure.·The·records·for·grouped321 excessively·large·integers·result·in·encode·failure.·The·records·for·grouped
322 AVPs·are·as·discussed·in·the·previous·section.</p><p><em>Derived·AVP·Data·Formats</em></p><p><a·href=""·id="Address"></a></p><pre><code·class="text">Address()·=·OctetString()322 AVPs·are·as·discussed·in·the·previous·section.</p><p><em>Derived·AVP·Data·Formats</em></p><p><a·href=""·id="Address"></a></p><pre><code·class="text">Address()·=·OctetString()
323 ··········|·tuple()</code></pre><p>On·encode,·an·OctetString()·IPv4·address·is·parsed·in·the·usual·x.x.x.x·format323 ··········|·tuple()</code></pre><p>On·encode,·an·OctetString()·IPv4·address·is·parsed·in·the·usual·x.x.x.x·format
324 while·an·IPv6·address·is·parsed·in·any·of·the·formats·specified·by·section·2.2324 while·an·IPv6·address·is·parsed·in·any·of·the·formats·specified·by·section·2.2
325 of·RFC·2373,·&quot;Text·Representation·of·Addresses&quot;.·An·IPv4·tuple()·has·length·4325 of·RFC·2373,·&quot;Text·Representation·of·Addresses&quot;.·An·IPv4·tuple()·has·length·4
326 and·contains·values·of·type·0..255.·An·IPv6·tuple()·has·length·8·and·contains326 and·contains·values·of·type·0..255.·An·IPv6·tuple()·has·length·8·and·contains
327 values·of·type·0..65535.·The·tuple·representation·is·used·on·decode.</p><p><a·href=""·id="Time"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Time</span><span·class="p"·data-group-id="6580804715-1">(</span><span·class="p"·data-group-id="6580804715-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6580804715-2">{</span><span·class="nf">date</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·301,·SHA:·685ad7e90ab5ce3bb3577b4bb6c151d44d3b1667830fe95a4dd5d0fc28975d06·...·]-2">}</span><span·class="w">327 values·of·type·0..65535.·The·tuple·representation·is·used·on·decode.</p><p><a·href=""·id="Time"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Time</span><span·class="p"·data-group-id="1795127048-1">(</span><span·class="p"·data-group-id="1795127048-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1795127048-2">{</span><span·class="nf">date</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·301,·SHA:·6f50628364650a0e10a7a8718bc3e3c5bea384bf16f2d2a1821e44ec83a750b4·...·]-2">}</span><span·class="w">
  
328 </span><span·class="ss">where</span><span·class="w">328 </span><span·class="ss">where</span><span·class="w">
  
329 ··</span><span·class="nf">date</span><span·class="p"·data-group-id="6580804715-5">(</span><span·class="p"·data-group-id="6580804715-5">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6580804715-6">{</span><span·class="n">Year</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·162,·SHA:·464443a05ee59b93104303298c0623b444c1557e453c5c2f950d6ae8cf5c0584·...·]-6">}</span><span·class="w">329 ··</span><span·class="nf">date</span><span·class="p"·data-group-id="1795127048-5">(</span><span·class="p"·data-group-id="1795127048-5">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1795127048-6">{</span><span·class="n">Year</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·162,·SHA:·20e6b928a5947887c6a41dae3617890e9d54e1c9661daa4c96698b4d41d6531e·...·]-6">}</span><span·class="w">
330 ··</span><span·class="nf">time</span><span·class="p"·data-group-id="6580804715-7">(</span><span·class="p"·data-group-id="6580804715-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6580804715-8">{</span><span·class="n">Hour</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·166,·SHA:·66964956351d93fb2267d3618a4b5d16ef6db402305e6de8794baabde43b8da4·...·]-8">}</span><span·class="w">330 ··</span><span·class="nf">time</span><span·class="p"·data-group-id="1795127048-7">(</span><span·class="p"·data-group-id="1795127048-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1795127048-8">{</span><span·class="n">Hour</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·166,·SHA:·be5ca379f55f8246f12ecd246d2b6de725fd1d7215eedfe204f8c656e8b3c5f8·...·]-8">}</span><span·class="w">
  
331 ··</span><span·class="n">Year</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="6580804715-9">(</span><span·class="p"·data-group-id="6580804715-9">)</span><span·class="w">331 ··</span><span·class="n">Year</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1795127048-9">(</span><span·class="p"·data-group-id="1795127048-9">)</span><span·class="w">
332 ··</span><span·class="n">Month</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">12</span><span·class="w">332 ··</span><span·class="n">Month</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">12</span><span·class="w">
333 ··</span><span·class="n">Day</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">31</span><span·class="w">333 ··</span><span·class="n">Day</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">31</span><span·class="w">
334 ··</span><span·class="n">Hour</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">23</span><span·class="w">334 ··</span><span·class="n">Hour</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">23</span><span·class="w">
335 ··</span><span·class="n">Minute</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">59</span><span·class="w">335 ··</span><span·class="n">Minute</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">59</span><span·class="w">
336 ··</span><span·class="n">Second</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">59</span></code></pre><p>Additionally,·values·that·can·be·encoded·are·limited·by·way·of·their·encoding·as336 ··</span><span·class="n">Second</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</span><span·class="mi">59</span></code></pre><p>Additionally,·values·that·can·be·encoded·are·limited·by·way·of·their·encoding·as
337 four·octets·as·required·by·RFC·6733·with·the·required·extension·from·RFC·2030.337 four·octets·as·required·by·RFC·6733·with·the·required·extension·from·RFC·2030.
338 In·particular,·only·values·between·<code·class="inline">{{1968,1,20},{3,14,8}}</code>·and338 In·particular,·only·values·between·<code·class="inline">{{1968,1,20},{3,14,8}}</code>·and
Offset 355, 16 lines modifiedOffset 355, 16 lines modified
355 ··FQDN·=·OctetString()355 ··FQDN·=·OctetString()
356 ··Port·=·integer()356 ··Port·=·integer()
357 ··Transport·=·sctp·|·tcp357 ··Transport·=·sctp·|·tcp
358 ··Protocol··=·diameter·|·radius·|·'tacacs+'</code></pre><p>On·encode,·fields·port,·transport·and·protocol·default·to·3868,·sctp·and358 ··Protocol··=·diameter·|·radius·|·'tacacs+'</code></pre><p>On·encode,·fields·port,·transport·and·protocol·default·to·3868,·sctp·and
359 diameter·respectively.·The·grammar·of·an·OctetString-valued·DiameterURI()·is·as359 diameter·respectively.·The·grammar·of·an·OctetString-valued·DiameterURI()·is·as
360 specified·in·section·4.3·of·RFC·6733.·The·record·representation·is·used·on360 specified·in·section·4.3·of·RFC·6733.·The·record·representation·is·used·on
361 decode.</p><p><a·href=""·id="Enumerated"></a></p><pre><code·class="text">Enumerated()·=·Integer32()</code></pre><p>On·encode,·values·can·be·specified·using·the·macros·defined·in·a·dictionary's361 decode.</p><p><a·href=""·id="Enumerated"></a></p><pre><code·class="text">Enumerated()·=·Integer32()</code></pre><p>On·encode,·values·can·be·specified·using·the·macros·defined·in·a·dictionary's
362 hrl·file.</p><p><a·href=""·id="IPFilterRule"></a>·<a·href=""·id="QoSFilterRule"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">IPFilterRule</span><span·class="p"·data-group-id="6157952958-1">(</span><span·class="p"·data-group-id="6157952958-1">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OctetString</span><span·class="p"·data-group-id="6157952958-2">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·5ad9d15d4ec8e00d524f380693b0b96a196b21e9b294312416b22d5335fa1b1d·...·]-2">)</span><span·class="w">362 hrl·file.</p><p><a·href=""·id="IPFilterRule"></a>·<a·href=""·id="QoSFilterRule"></a></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">IPFilterRule</span><span·class="p"·data-group-id="1404243330-1">(</span><span·class="p"·data-group-id="1404243330-1">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OctetString</span><span·class="p"·data-group-id="1404243330-2">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·1a7caf406db8d14d50c13c1ab4537b24d393aa2a96d475651f112202e2632012·...·]-2">)</span><span·class="w">
363 </span><span·class="n">QoSFilterRule</span><span·class="p"·data-group-id="6157952958-3">(</span><span·class="p"·data-group-id="6157952958-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OctetString</span><span·class="p"·data-group-id="6157952958-4">(</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·0e65d5db82dcab519c8f1eacc80fdb6f222bb204dc125d57305ca91c6bf0f4cd·...·]-4">)</span></code></pre><p>Values·of·these·types·are·not·currently·parsed·by·diameter.</p><h2·id="see-also"·class="section-heading">363 </span><span·class="n">QoSFilterRule</span><span·class="p"·data-group-id="1404243330-3">(</span><span·class="p"·data-group-id="1404243330-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OctetString</span><span·class="p"·data-group-id="1404243330-4">(</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·d6587c750f41528dd5cbac7c7c14aaa8c71ee35791b493aaf2c62ab72edebb52·...·]-4">)</span></code></pre><p>Values·of·these·types·are·not·currently·parsed·by·diameter.</p><h2·id="see-also"·class="section-heading">
364 ··<a·href="#see-also"·class="hover-link">364 ··<a·href="#see-also"·class="hover-link">
365 ····<i·class="ri-link-m"·aria-hidden="true"></i>365 ····<i·class="ri-link-m"·aria-hidden="true"></i>
366 ··</a>366 ··</a>
367 ··<span·class="text">SEE·ALSO</span>367 ··<span·class="text">SEE·ALSO</span>
368 </h2>368 </h2>
369 <p><a·href="diameterc_cmd.html">diameterc(1)</a>,·<a·href="diameter.html"><code·class="inline">diameter</code></a>,·<a·href="diameter_app.html"><code·class="inline">diameter_app</code></a>,369 <p><a·href="diameterc_cmd.html">diameterc(1)</a>,·<a·href="diameter.html"><code·class="inline">diameter</code></a>,·<a·href="diameter_app.html"><code·class="inline">diameter_app</code></a>,
370 <a·href="diameter_codec.html"><code·class="inline">diameter_codec</code></a>,·<a·href="diameter_make.html"><code·class="inline">diameter_make</code></a></p>370 <a·href="diameter_codec.html"><code·class="inline">diameter_codec</code></a>,·<a·href="diameter_make.html"><code·class="inline">diameter_make</code></a></p>
Offset 405, 15 lines modifiedOffset 405, 15 lines modified
405 ······<p·class="built-using">405 ······<p·class="built-using">
406 ········Built·using406 ········Built·using
407 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the407 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
408 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>408 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
409 ······</p>409 ······</p>
410 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>410 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
411 ····</footer>411 ····</footer>
412 ··</div>412 ··</div>
413 </main>413 </main>
414 </div>414 </div>
415 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>415 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
416 <script>416 <script>
417 ··document.addEventListener("DOMContentLoaded",·function·()·{417 ··document.addEventListener("DOMContentLoaded",·function·()·{
749 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_examples.html
    
Offset 172, 15 lines modifiedOffset 172, 15 lines modified
172 ······<p·class="built-using">172 ······<p·class="built-using">
173 ········Built·using173 ········Built·using
174 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the174 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
175 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>175 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
176 ······</p>176 ······</p>
177 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>177 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
178 ····</footer>178 ····</footer>
179 ··</div>179 ··</div>
180 </main>180 </main>
181 </div>181 </div>
182 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>182 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
183 <script>183 <script>
184 ··document.addEventListener("DOMContentLoaded",·function·()·{184 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_intro.html
    
Offset 200, 15 lines modifiedOffset 200, 15 lines modified
200 ······<p·class="built-using">200 ······<p·class="built-using">
201 ········Built·using201 ········Built·using
202 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the202 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
203 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>203 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
204 ······</p>204 ······</p>
205 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>205 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
206 ····</footer>206 ····</footer>
207 ··</div>207 ··</div>
208 </main>208 </main>
209 </div>209 </div>
210 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>210 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
211 <script>211 <script>
212 ··document.addEventListener("DOMContentLoaded",·function·()·{212 ··document.addEventListener("DOMContentLoaded",·function·()·{
742 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_make.html
    
Offset 530, 15 lines modifiedOffset 530, 15 lines modified
530 ······<p·class="built-using">530 ······<p·class="built-using">
531 ········Built·using531 ········Built·using
532 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the532 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
533 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>533 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
534 ······</p>534 ······</p>
535 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>535 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
536 ····</footer>536 ····</footer>
537 ··</div>537 ··</div>
538 </main>538 </main>
539 </div>539 </div>
540 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>540 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
541 <script>541 <script>
542 ··document.addEventListener("DOMContentLoaded",·function·()·{542 ··document.addEventListener("DOMContentLoaded",·function·()·{
619 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_sctp.html
    
Offset 447, 15 lines modifiedOffset 447, 15 lines modified
447 ······<p·class="built-using">447 ······<p·class="built-using">
448 ········Built·using448 ········Built·using
449 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the449 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
450 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>450 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
451 ······</p>451 ······</p>
452 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>452 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
453 ····</footer>453 ····</footer>
454 ··</div>454 ··</div>
455 </main>455 </main>
456 </div>456 </div>
457 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>457 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
458 <script>458 <script>
459 ··document.addEventListener("DOMContentLoaded",·function·()·{459 ··document.addEventListener("DOMContentLoaded",·function·()·{
676 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_soc.html
    
Offset 186, 15 lines modifiedOffset 186, 15 lines modified
186 ······<p·class="built-using">186 ······<p·class="built-using">
187 ········Built·using187 ········Built·using
188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
190 ······</p>190 ······</p>
191 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
192 ····</footer>192 ····</footer>
193 ··</div>193 ··</div>
194 </main>194 </main>
195 </div>195 </div>
196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
197 <script>197 <script>
198 ··document.addEventListener("DOMContentLoaded",·function·()·{198 ··document.addEventListener("DOMContentLoaded",·function·()·{
662 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_tcp.html
    
Offset 482, 15 lines modifiedOffset 482, 15 lines modified
482 ······<p·class="built-using">482 ······<p·class="built-using">
483 ········Built·using483 ········Built·using
484 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the484 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
485 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>485 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
486 ······</p>486 ······</p>
487 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>487 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
488 ····</footer>488 ····</footer>
489 ··</div>489 ··</div>
490 </main>490 </main>
491 </div>491 </div>
492 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>492 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
493 <script>493 <script>
494 ··document.addEventListener("DOMContentLoaded",·function·()·{494 ··document.addEventListener("DOMContentLoaded",·function·()·{
635 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_transport.html
    
Offset 319, 15 lines modifiedOffset 319, 15 lines modified
319 ······<p·class="built-using">319 ······<p·class="built-using">
320 ········Built·using320 ········Built·using
321 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the321 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
322 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>322 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
323 ······</p>323 ······</p>
324 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>324 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
325 ····</footer>325 ····</footer>
326 ··</div>326 ··</div>
327 </main>327 </main>
328 </div>328 </div>
329 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>329 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
330 <script>330 <script>
331 ··document.addEventListener("DOMContentLoaded",·function·()·{331 ··document.addEventListener("DOMContentLoaded",·function·()·{
698 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameter_using.html
    
Offset 172, 15 lines modifiedOffset 172, 15 lines modified
172 ······<p·class="built-using">172 ······<p·class="built-using">
173 ········Built·using173 ········Built·using
174 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the174 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
175 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>175 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
176 ······</p>176 ······</p>
177 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>177 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
178 ····</footer>178 ····</footer>
179 ··</div>179 ··</div>
180 </main>180 </main>
181 </div>181 </div>
182 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>182 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
183 <script>183 <script>
184 ··document.addEventListener("DOMContentLoaded",·function·()·{184 ··document.addEventListener("DOMContentLoaded",·function·()·{
599 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/diameterc_cmd.html
    
Offset 211, 15 lines modifiedOffset 211, 15 lines modified
211 ······<p·class="built-using">211 ······<p·class="built-using">
212 ········Built·using212 ········Built·using
213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
215 ······</p>215 ······</p>
216 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>216 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
217 ····</footer>217 ····</footer>
218 ··</div>218 ··</div>
219 </main>219 </main>
220 </div>220 </div>
221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
222 <script>222 <script>
223 ··document.addEventListener("DOMContentLoaded",·function·()·{223 ··document.addEventListener("DOMContentLoaded",·function·()·{
711 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/notes.html
    
Offset 1310, 15 lines modifiedOffset 1310, 15 lines modified
1310 ······<p·class="built-using">1310 ······<p·class="built-using">
1311 ········Built·using1311 ········Built·using
1312 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1312 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1313 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1313 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1314 ······</p>1314 ······</p>
1315 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1315 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1316 ····</footer>1316 ····</footer>
1317 ··</div>1317 ··</div>
1318 </main>1318 </main>
1319 </div>1319 </div>
1320 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1320 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1321 <script>1321 <script>
1322 ··document.addEventListener("DOMContentLoaded",·function·()·{1322 ··document.addEventListener("DOMContentLoaded",·function·()·{
740 B
html2text {}
Max HTML report size reached
1.75 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-A0E8AF89.js"></script>124 <script·src="dist/search_data-21BE4584.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
463 B
html2text {}
Max HTML report size reached
651 B
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/.build
    
Offset 18, 15 lines modifiedOffset 18, 15 lines modified
18 dist/lato-latin-300-normal-YUMVEFOL.woff218 dist/lato-latin-300-normal-YUMVEFOL.woff2
19 dist/lato-latin-400-normal-W7754I4D.woff219 dist/lato-latin-400-normal-W7754I4D.woff2
20 dist/lato-latin-700-normal-2XVSBPG4.woff220 dist/lato-latin-700-normal-2XVSBPG4.woff2
21 dist/lato-latin-ext-300-normal-VPGGJKJL.woff221 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
22 dist/lato-latin-ext-400-normal-N27NCBWW.woff222 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
23 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff223 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
24 dist/remixicon-NKANDIL5.woff224 dist/remixicon-NKANDIL5.woff2
25 dist/search_data-EEF082FF.js25 dist/search_data-4C4A2C52.js
26 dist/sidebar_items-8E345266.js26 dist/sidebar_items-8E345266.js
27 doc_storage.html27 doc_storage.html
28 edoc.html28 edoc.html
29 edoc_cmd.html29 edoc_cmd.html
30 edoc_doclet.html30 edoc_doclet.html
31 edoc_doclet_chunks.html31 edoc_doclet_chunks.html
32 edoc_doclet_markdown.html32 edoc_doclet_markdown.html
1.4 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/404.html
    
Offset 139, 15 lines modifiedOffset 139, 15 lines modified
139 ······<p·class="built-using">139 ······<p·class="built-using">
140 ········Built·using140 ········Built·using
141 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the141 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
142 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>142 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
143 ······</p>143 ······</p>
144 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>144 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
145 ····</footer>145 ····</footer>
146 ··</div>146 ··</div>
147 </main>147 </main>
148 </div>148 </div>
149 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>149 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
150 <script>150 <script>
151 ··document.addEventListener("DOMContentLoaded",·function·()·{151 ··document.addEventListener("DOMContentLoaded",·function·()·{
604 B
html2text {}
Max HTML report size reached
1.35 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/api-reference.html
    
Offset 258, 15 lines modifiedOffset 258, 15 lines modified
258 ······<p·class="built-using">258 ······<p·class="built-using">
259 ········Built·using259 ········Built·using
260 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the260 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
261 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>261 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
262 ······</p>262 ······</p>
263 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>263 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
264 ····</footer>264 ····</footer>
265 ··</div>265 ··</div>
266 </main>266 </main>
267 </div>267 </div>
268 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>268 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
269 <script>269 <script>
270 ··document.addEventListener("DOMContentLoaded",·function·()·{270 ··document.addEventListener("DOMContentLoaded",·function·()·{
531 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/chapter.html
    
Offset 833, 15 lines modifiedOffset 833, 15 lines modified
833 ······<p·class="built-using">833 ······<p·class="built-using">
834 ········Built·using834 ········Built·using
835 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the835 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
836 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>836 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
837 ······</p>837 ······</p>
838 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>838 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
839 ····</footer>839 ····</footer>
840 ··</div>840 ··</div>
841 </main>841 </main>
842 </div>842 </div>
843 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>843 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
844 <script>844 <script>
845 ··document.addEventListener("DOMContentLoaded",·function·()·{845 ··document.addEventListener("DOMContentLoaded",·function·()·{
724 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/doc_storage.html
    
Offset 232, 15 lines modifiedOffset 232, 15 lines modified
232 ······<p·class="built-using">232 ······<p·class="built-using">
233 ········Built·using233 ········Built·using
234 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the234 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
235 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>235 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
236 ······</p>236 ······</p>
237 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>237 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
238 ····</footer>238 ····</footer>
239 ··</div>239 ··</div>
240 </main>240 </main>
241 </div>241 </div>
242 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>242 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
243 <script>243 <script>
244 ··document.addEventListener("DOMContentLoaded",·function·()·{244 ··document.addEventListener("DOMContentLoaded",·function·()·{
621 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc.html
    
Offset 1403, 15 lines modifiedOffset 1403, 15 lines modified
1403 ······<p·class="built-using">1403 ······<p·class="built-using">
1404 ········Built·using1404 ········Built·using
1405 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1405 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1406 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1406 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1407 ······</p>1407 ······</p>
1408 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1408 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1409 ····</footer>1409 ····</footer>
1410 ··</div>1410 ··</div>
1411 </main>1411 </main>
1412 </div>1412 </div>
1413 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1413 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1414 <script>1414 <script>
1415 ··document.addEventListener("DOMContentLoaded",·function·()·{1415 ··document.addEventListener("DOMContentLoaded",·function·()·{
659 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_cmd.html
    
Offset 183, 15 lines modifiedOffset 183, 15 lines modified
183 ······<p·class="built-using">183 ······<p·class="built-using">
184 ········Built·using184 ········Built·using
185 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the185 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
186 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>186 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
187 ······</p>187 ······</p>
188 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>188 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
189 ····</footer>189 ····</footer>
190 ··</div>190 ··</div>
191 </main>191 </main>
192 </div>192 </div>
193 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>193 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
194 <script>194 <script>
195 ··document.addEventListener("DOMContentLoaded",·function·()·{195 ··document.addEventListener("DOMContentLoaded",·function·()·{
714 B
html2text {}
Max HTML report size reached
1.35 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_doclet.html
    
Offset 440, 15 lines modifiedOffset 440, 15 lines modified
440 ······<p·class="built-using">440 ······<p·class="built-using">
441 ········Built·using441 ········Built·using
442 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the442 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
443 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>443 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
444 ······</p>444 ······</p>
445 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>445 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
446 ····</footer>446 ····</footer>
447 ··</div>447 ··</div>
448 </main>448 </main>
449 </div>449 </div>
450 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>450 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
451 <script>451 <script>
452 ··document.addEventListener("DOMContentLoaded",·function·()·{452 ··document.addEventListener("DOMContentLoaded",·function·()·{
534 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_doclet_chunks.html
    
Offset 214, 15 lines modifiedOffset 214, 15 lines modified
214 ······<p·class="built-using">214 ······<p·class="built-using">
215 ········Built·using215 ········Built·using
216 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the216 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
217 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>217 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
218 ······</p>218 ······</p>
219 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>219 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
220 ····</footer>220 ····</footer>
221 ··</div>221 ··</div>
222 </main>222 </main>
223 </div>223 </div>
224 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>224 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
225 <script>225 <script>
226 ··document.addEventListener("DOMContentLoaded",·function·()·{226 ··document.addEventListener("DOMContentLoaded",·function·()·{
591 B
html2text {}
Max HTML report size reached
5.74 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_doclet_markdown.html
    
Offset 124, 16 lines modifiedOffset 124, 16 lines modified
124 ····<span·translate="no">edoc_doclet_markdown</span>·124 ····<span·translate="no">edoc_doclet_markdown</span>·
125 ····<small·class="app-vsn"·translate="no">(edoc·v1.3.1)</small>125 ····<small·class="app-vsn"·translate="no">(edoc·v1.3.1)</small>
  
126 ··</h1>126 ··</h1>
  
  
127 ····<section·id="moduledoc">127 ····<section·id="moduledoc">
128 <p>Doclet·converting·an·edoc·application·to·use·EEP-59·and·markdown.</p><p>This·doclet·has·to·be·used·together·with·<a·href="edoc_layout_chunks.html"><code>edoc_layout_chunks</code></a>.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">edoc</span><span·class="p">:</span><span·class="nf">application</span><span·class="p"·data-group-id="5795872015-1">(</span><span·class="ss">example</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5795872015-2">[</span><span·class="p"·data-group-id="5795872015-3">{</span><span·class="ss">preprocess</span><span·class="p">[·...·truncated·by·diffoscope;·len:·377,·SHA:·84a6a84e8b4d2f1fbad018f0388ed3f0b324f9087668c6e987d90060f890d5bc·...·]-4">}</span><span·class="p">,</span><span·class="w">128 <p>Doclet·converting·an·edoc·application·to·use·EEP-59·and·markdown.</p><p>This·doclet·has·to·be·used·together·with·<a·href="edoc_layout_chunks.html"><code>edoc_layout_chunks</code></a>.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">edoc</span><span·class="p">:</span><span·class="nf">application</span><span·class="p"·data-group-id="5866014297-1">(</span><span·class="ss">example</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5866014297-2">[</span><span·class="p"·data-group-id="5866014297-3">{</span><span·class="ss">preprocess</span><span·class="p">[·...·truncated·by·diffoscope;·len:·377,·SHA:·223b0f21ea484a1189aad3a947df5b049ca9b9ea36c9b88a9c5c751b26dbb1cf·...·]-4">}</span><span·class="p">,</span><span·class="w">
129 ·······</span><span·class="p"·data-group-id="5795872015-5">{</span><span·class="ss">layout</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">edoc_layout_chunks</span><span·class="p"·data-group-id="5795872015-5">}</span><span·class="p"·data-group-id="5795872015-2">]</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·aa8297f44f3c0f05f895a2b650aeb8d3a55dc01bf84f2dc00b0a060b21eb35ed·...·]-1">)</span><span·class="p">.</span></code></pre><p>It·will·convert·the·overview·to·markdown·and·any·module·documentation·to·use·<code>-doc</code>·attributes·and·markdown.·Any·XHTML·tags·in·the·edoc·documentation·that·are·not·part·of·the·tags·supported·by·<a·href="doc_storage.html#erlang-documentation-format">Erlang·Documentation·Format</a>·will·be·added·as·HTML·tags·in·the·Markdown.</p><p>It·does·not·delete·the·old·edoc·documentation.</p><p><em>See·also:·</em><a·href="edoc_layout_chunks.html">edoc_layout_chunks</a>.</p>129 ·······</span><span·class="p"·data-group-id="5866014297-5">{</span><span·class="ss">layout</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">edoc_layout_chunks</span><span·class="p"·data-group-id="5866014297-5">}</span><span·class="p"·data-group-id="5866014297-2">]</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·de9723b8a7bde92e2b79e36de12239437af6adfb3689e80fa928b6512cf581d8·...·]-1">)</span><span·class="p">.</span></code></pre><p>It·will·convert·the·overview·to·markdown·and·any·module·documentation·to·use·<code>-doc</code>·attributes·and·markdown.·Any·XHTML·tags·in·the·edoc·documentation·that·are·not·part·of·the·tags·supported·by·<a·href="doc_storage.html#erlang-documentation-format">Erlang·Documentation·Format</a>·will·be·added·as·HTML·tags·in·the·Markdown.</p><p>It·does·not·delete·the·old·edoc·documentation.</p><p><em>See·also:·</em><a·href="edoc_layout_chunks.html">edoc_layout_chunks</a>.</p>
130 ····</section>130 ····</section>
  
131 </div>131 </div>
  
132 ··<section·id="summary"·class="details-list">132 ··<section·id="summary"·class="details-list">
133 ····<h1·class="section-heading">133 ····<h1·class="section-heading">
134 ······<a·class="hover-link"·href="#summary">134 ······<a·class="hover-link"·href="#summary">
Offset 215, 15 lines modifiedOffset 215, 15 lines modified
215 ······<p·class="built-using">215 ······<p·class="built-using">
216 ········Built·using216 ········Built·using
217 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the217 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
218 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>218 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
219 ······</p>219 ······</p>
220 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>220 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
221 ····</footer>221 ····</footer>
222 ··</div>222 ··</div>
223 </main>223 </main>
224 </div>224 </div>
225 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>225 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
226 <script>226 <script>
227 ··document.addEventListener("DOMContentLoaded",·function·()·{227 ··document.addEventListener("DOMContentLoaded",·function·()·{
632 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_extract.html
    
Offset 649, 15 lines modifiedOffset 649, 15 lines modified
649 ······<p·class="built-using">649 ······<p·class="built-using">
650 ········Built·using650 ········Built·using
651 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the651 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
652 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>652 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
653 ······</p>653 ······</p>
654 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>654 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
655 ····</footer>655 ····</footer>
656 ··</div>656 ··</div>
657 </main>657 </main>
658 </div>658 </div>
659 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>659 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
660 <script>660 <script>
661 ··document.addEventListener("DOMContentLoaded",·function·()·{661 ··document.addEventListener("DOMContentLoaded",·function·()·{
663 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_html_to_markdown.html
    
Offset 215, 15 lines modifiedOffset 215, 15 lines modified
215 ······<p·class="built-using">215 ······<p·class="built-using">
216 ········Built·using216 ········Built·using
217 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the217 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
218 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>218 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
219 ······</p>219 ······</p>
220 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>220 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
221 ····</footer>221 ····</footer>
222 ··</div>222 ··</div>
223 </main>223 </main>
224 </div>224 </div>
225 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>225 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
226 <script>226 <script>
227 ··document.addEventListener("DOMContentLoaded",·function·()·{227 ··document.addEventListener("DOMContentLoaded",·function·()·{
692 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_layout.html
    
Offset 401, 15 lines modifiedOffset 401, 15 lines modified
401 ······<p·class="built-using">401 ······<p·class="built-using">
402 ········Built·using402 ········Built·using
403 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the403 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
404 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>404 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
405 ······</p>405 ······</p>
406 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>406 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
407 ····</footer>407 ····</footer>
408 ··</div>408 ··</div>
409 </main>409 </main>
410 </div>410 </div>
411 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>411 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
412 <script>412 <script>
413 ··document.addEventListener("DOMContentLoaded",·function·()·{413 ··document.addEventListener("DOMContentLoaded",·function·()·{
636 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_layout_chunks.html
    
Offset 744, 15 lines modifiedOffset 744, 15 lines modified
744 ······<p·class="built-using">744 ······<p·class="built-using">
745 ········Built·using745 ········Built·using
746 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the746 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
747 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>747 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
748 ······</p>748 ······</p>
749 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>749 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
750 ····</footer>750 ····</footer>
751 ··</div>751 ··</div>
752 </main>752 </main>
753 </div>753 </div>
754 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>754 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
755 <script>755 <script>
756 ··document.addEventListener("DOMContentLoaded",·function·()·{756 ··document.addEventListener("DOMContentLoaded",·function·()·{
704 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_lib.html
    
Offset 445, 15 lines modifiedOffset 445, 15 lines modified
445 ······<p·class="built-using">445 ······<p·class="built-using">
446 ········Built·using446 ········Built·using
447 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the447 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
448 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>448 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
449 ······</p>449 ······</p>
450 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>450 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
451 ····</footer>451 ····</footer>
452 ··</div>452 ··</div>
453 </main>453 </main>
454 </div>454 </div>
455 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>455 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
456 <script>456 <script>
457 ··document.addEventListener("DOMContentLoaded",·function·()·{457 ··document.addEventListener("DOMContentLoaded",·function·()·{
653 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/edoc_run.html
    
Offset 354, 15 lines modifiedOffset 354, 15 lines modified
354 ······<p·class="built-using">354 ······<p·class="built-using">
355 ········Built·using355 ········Built·using
356 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the356 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
357 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>357 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
358 ······</p>358 ······</p>
359 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>359 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
360 ····</footer>360 ····</footer>
361 ··</div>361 ··</div>
362 </main>362 </main>
363 </div>363 </div>
364 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>364 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
365 <script>365 <script>
366 ··document.addEventListener("DOMContentLoaded",·function·()·{366 ··document.addEventListener("DOMContentLoaded",·function·()·{
637 B
html2text {}
Max HTML report size reached
1.35 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/notes.html
    
Offset 840, 15 lines modifiedOffset 840, 15 lines modified
840 ······<p·class="built-using">840 ······<p·class="built-using">
841 ········Built·using841 ········Built·using
842 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the842 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
843 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>843 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
844 ······</p>844 ······</p>
845 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>845 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
846 ····</footer>846 ····</footer>
847 ··</div>847 ··</div>
848 </main>848 </main>
849 </div>849 </div>
850 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>850 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
851 <script>851 <script>
852 ··document.addEventListener("DOMContentLoaded",·function·()·{852 ··document.addEventListener("DOMContentLoaded",·function·()·{
553 B
html2text {}
Max HTML report size reached
1.68 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-EEF082FF.js"></script>124 <script·src="dist/search_data-4C4A2C52.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 137, 15 lines modifiedOffset 137, 15 lines modified
137 ······<p·class="built-using">137 ······<p·class="built-using">
138 ········Built·using138 ········Built·using
139 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the139 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
140 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>140 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
141 ······</p>141 ······</p>
142 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>142 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
143 ····</footer>143 ····</footer>
144 ··</div>144 ··</div>
145 </main>145 </main>
146 </div>146 </div>
147 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>147 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
148 <script>148 <script>
149 ··document.addEventListener("DOMContentLoaded",·function·()·{149 ··document.addEventListener("DOMContentLoaded",·function·()·{
397 B
html2text {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v1.3.13 v1.3.1
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·edoc[q···················]6 Search·documentation·of·edoc[q···················]
7 Settings7 Settings
8 Search·HexDocs8 Search·HexDocs
9 Built·using·_\x8E_\x8x_\x8D_\x8o_\x8c·(v0.34.2)·for·the·_\x8E_\x8r_\x8l_\x8a_\x8n_\x8g_\x8·_\x8p_\x8r_\x8o_\x8g_\x8r_\x8a_\x8m_\x8m_\x8i_\x8n_\x8g_\x8·_\x8l_\x8a_\x8n_\x8g_\x8u_\x8a_\x8g_\x8e9 Built·using·_\x8E_\x8x_\x8D_\x8o_\x8c·(v0.34.2)·for·the·_\x8E_\x8r_\x8l_\x8a_\x8n_\x8g_\x8·_\x8p_\x8r_\x8o_\x8g_\x8r_\x8a_\x8m_\x8m_\x8i_\x8n_\x8g_\x8·_\x8l_\x8a_\x8n_\x8g_\x8u_\x8a_\x8g_\x8e
10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
590 B
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/doc/html/.build
    
Offset 14, 13 lines modifiedOffset 14, 13 lines modified
14 dist/lato-latin-300-normal-YUMVEFOL.woff214 dist/lato-latin-300-normal-YUMVEFOL.woff2
15 dist/lato-latin-400-normal-W7754I4D.woff215 dist/lato-latin-400-normal-W7754I4D.woff2
16 dist/lato-latin-700-normal-2XVSBPG4.woff216 dist/lato-latin-700-normal-2XVSBPG4.woff2
17 dist/lato-latin-ext-300-normal-VPGGJKJL.woff217 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
18 dist/lato-latin-ext-400-normal-N27NCBWW.woff218 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
19 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff219 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
20 dist/remixicon-NKANDIL5.woff220 dist/remixicon-NKANDIL5.woff2
21 dist/search_data-D30927ED.js21 dist/search_data-1183DD51.js
22 dist/sidebar_items-A81F2B0C.js22 dist/sidebar_items-A81F2B0C.js
23 eldap.html23 eldap.html
24 index.html24 index.html
25 notes.html25 notes.html
26 search.html26 search.html
1.47 KB
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/doc/html/api-reference.html
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ······<p·class="built-using">181 ······<p·class="built-using">
182 ········Built·using182 ········Built·using
183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
185 ······</p>185 ······</p>
186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
187 ····</footer>187 ····</footer>
188 ··</div>188 ··</div>
189 </main>189 </main>
190 </div>190 </div>
191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
192 <script>192 <script>
193 ··document.addEventListener("DOMContentLoaded",·function·()·{193 ··document.addEventListener("DOMContentLoaded",·function·()·{
626 B
html2text {}
Max HTML report size reached
67.2 KB
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/doc/html/eldap.epub
1.92 KB
zipinfo {}
Max HTML report size reached
34.7 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
29.3 KB
OEBPS/eldap.xhtml
Max HTML report size reached
1.19 KB
OEBPS/content.opf
1.15 KB
OEBPS/content.opf
Max HTML report size reached
30.6 KB
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/doc/html/eldap.html
    
Offset 973, 21 lines modifiedOffset 973, 21 lines modified
973 ·················Dn·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),973 ·················Dn·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),
974 ·················Attributes·::·[<a·href="#t:attribute/0">attribute</a>()],974 ·················Attributes·::·[<a·href="#t:attribute/0">attribute</a>()],
975 ·················Refs·::·{referral,·<a·href="#t:referrals/0">referrals</a>()},975 ·················Refs·::·{referral,·<a·href="#t:referrals/0">referrals</a>()},
976 ·················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>976 ·················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
977 ······</div>977 ······</div>
  
978 <p>Add·an·entry.·The·entry·must·not·exist.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nf">add</span><span·class="p"·data-group-id="1946200370-1">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">978 <p>Add·an·entry.·The·entry·must·not·exist.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nf">add</span><span·class="p"·data-group-id="1800182065-1">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">
979 ······</span><span·class="s">&quot;cn=Bill·Valentine,·ou=people,·o=Example·Org,·dc=example,·dc=com&quot;</span><span·class="p">,</span><span·class="w">979 ······</span><span·class="s">&quot;cn=Bill·Valentine,·ou=people,·o=Example·Org,·dc=example,·dc=com&quot;</span><span·class="p">,</span><span·class="w">
980 ·······</span><span·class="p"·data-group-id="1946200370-2">[</span><span·class="p"·data-group-id="1946200370-3">{</span><span·class="s">&quot;objectclass&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1946200370-4">[</span><span·class="s">&quot;person&quot;<[·...·truncated·by·diffoscope;·len:·100,·SHA:·75b7ce060c6ae990b0fd286af38f89dfb06b0b3d90d94cbcd7366c6e9a65362b·...·]-3">}</span><span·class="p">,</span><span·class="w">980 ·······</span><span·class="p"·data-group-id="1800182065-2">[</span><span·class="p"·data-group-id="1800182065-3">{</span><span·class="s">&quot;objectclass&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1800182065-4">[</span><span·class="s">&quot;person&quot;<[·...·truncated·by·diffoscope;·len:·100,·SHA:·de3e8d1e56c7a580fd95f8de9a07143470505416dfbb53816a98040eb8dfba91·...·]-3">}</span><span·class="p">,</span><span·class="w">
981 ········</span><span·class="p"·data-group-id="1946200370-5">{</span><span·class="s">&quot;cn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1946200370-6">[</span><span·class="s">&quot;Bill·Valentine&quot;</span><span·class="p"·data-group-id="1946200370-6">]</[·...·truncated·by·diffoscope;·len:·46,·SHA:·1fca082e33d8e5717c38e59c1383ed06b1b38073844223d701bac622f50ed85e·...·]-5">}</span><span·class="p">,</span><span·class="w">981 ········</span><span·class="p"·data-group-id="1800182065-5">{</span><span·class="s">&quot;cn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1800182065-6">[</span><span·class="s">&quot;Bill·Valentine&quot;</span><span·class="p"·data-group-id="1800182065-6">]</[·...·truncated·by·diffoscope;·len:·46,·SHA:·318521896828a4f4e10ff8cc4f1e44dd62ae547f22ead27191a066af1b1c54e9·...·]-5">}</span><span·class="p">,</span><span·class="w">
982 ········</span><span·class="p"·data-group-id="1946200370-7">{</span><span·class="s">&quot;sn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1946200370-8">[</span><span·class="s">&quot;Valentine&quot;</span><span·class="p"·data-group-id="1946200370-8">]</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·2c7e02e1d1476db3b4ba579558e43d6b6c237f9673d8c3e43142fa9e4f24b7bf·...·]-7">}</span><span·class="p">,</span><span·class="w">982 ········</span><span·class="p"·data-group-id="1800182065-7">{</span><span·class="s">&quot;sn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1800182065-8">[</span><span·class="s">&quot;Valentine&quot;</span><span·class="p"·data-group-id="1800182065-8">]</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·c2e26a757562d0e2996b0d29cabb4b9f4e3b48659b6866aa0aa9b1e7b8ff4892·...·]-7">}</span><span·class="p">,</span><span·class="w">
983 ········</span><span·class="p"·data-group-id="1946200370-9">{</span><span·class="s">&quot;telephoneNumber&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1946200370-10">[</span><span·class="s">&quot;545·555·00&quot;</span><span·class="p"·data-group-id="1946200[·...·truncated·by·diffoscope;·len:·110,·SHA:·f2567f2f1ff9a3dfa32a557a7b8f00b9db732758cd25dcae31b84a508780aac9·...·]-2">]</span><span·class="w">983 ········</span><span·class="p"·data-group-id="1800182065-9">{</span><span·class="s">&quot;telephoneNumber&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1800182065-10">[</span><span·class="s">&quot;545·555·00&quot;</span><span·class="p"·data-group-id="1800182[·...·truncated·by·diffoscope;·len:·110,·SHA:·0f9d3a9e134acf3f65463b848f29b163bd2e9cfbbba90b4b2683a3ff8a878414·...·]-2">]</span><span·class="w">
984 ·····</span><span·class="p"·data-group-id="1946200370-1">)</span></code></pre>984 ·····</span><span·class="p"·data-group-id="1800182065-1">)</span></code></pre>
985 ··</section>985 ··</section>
986 </section>986 </section>
987 <section·class="detail"·id="and/1">987 <section·class="detail"·id="and/1">
  
988 ··<div·class="detail-header">988 ··<div·class="detail-header">
989 ····<a·href="#and/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">989 ····<a·href="#and/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
990 ······<i·class="ri-link-m"·aria-hidden="true"></i>990 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1291, 15 lines modifiedOffset 1291, 15 lines modified
1291 ·····························OptionalAttrs·::1291 ·····························OptionalAttrs·::
1292 ·································[{matchingRule,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()}·|1292 ·································[{matchingRule,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()}·|
1293 ··································{type,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()}·|1293 ··································{type,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()}·|
1294 ··································{dnAttributes,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()}].</pre>1294 ··································{dnAttributes,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()}].</pre>
  
1295 ······</div>1295 ······</div>
  
1296 <p>Creates·an·extensible·match·filter.·For·example,</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">extensibleMatch</span><span·class="p"·data-group-id="9787797381-1">(</span><span·class="s">&quot;Bar&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9787797381-2">[</span><span·class="p"·data-group-id="9787797381-3">{</span><span·class="ss">type</span><span·class="p[·...·truncated·by·diffoscope;·len:·457,·SHA:·faa8b45e19125ca2f7aa90f55a5f65a4860acf27e366aa877106f976923e062a·...·]-1">)</span><span·class="p">)</span></code></pre><p>creates·a·filter·which·performs·a·<code·class="inline">caseExactMatch</code>·on·the·attribute·<code·class="inline">sn</code>·and1296 <p>Creates·an·extensible·match·filter.·For·example,</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">extensibleMatch</span><span·class="p"·data-group-id="2617045148-1">(</span><span·class="s">&quot;Bar&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2617045148-2">[</span><span·class="p"·data-group-id="2617045148-3">{</span><span·class="ss">type</span><span·class="p[·...·truncated·by·diffoscope;·len:·457,·SHA:·db24a87c9085a05e1e34b9f7bc99db0ff7f133864b60f91372e8a8e15ad9b5dc·...·]-1">)</span><span·class="p">)</span></code></pre><p>creates·a·filter·which·performs·a·<code·class="inline">caseExactMatch</code>·on·the·attribute·<code·class="inline">sn</code>·and
1297 matches·with·the·value·<code·class="inline">&quot;Bar&quot;</code>.·The·default·value·of·<code·class="inline">dnAttributes</code>·is·<code·class="inline">false</code>.</p>1297 matches·with·the·value·<code·class="inline">&quot;Bar&quot;</code>.·The·default·value·of·<code·class="inline">dnAttributes</code>·is·<code·class="inline">false</code>.</p>
1298 ··</section>1298 ··</section>
1299 </section>1299 </section>
1300 <section·class="detail"·id="greaterOrEqual/2">1300 <section·class="detail"·id="greaterOrEqual/2">
  
1301 ··<div·class="detail-header">1301 ··<div·class="detail-header">
1302 ····<a·href="#greaterOrEqual/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1302 ····<a·href="#greaterOrEqual/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1509, 17 lines modifiedOffset 1509, 17 lines modified
1509 ····················Dn·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),1509 ····················Dn·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),
1510 ····················ModifyOps·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()],1510 ····················ModifyOps·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()],
1511 ····················Refs·::·{referral,·<a·href="#t:referrals/0">referrals</a>()},1511 ····················Refs·::·{referral,·<a·href="#t:referrals/0">referrals</a>()},
1512 ····················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>1512 ····················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
1513 ······</div>1513 ······</div>
  
1514 <p>Modify·an·entry.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nf">modify</span><span·class="p"·data-group-id="6996733692-1">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;cn=Bill·Valentine,·ou=people,·o=Example·Org,·dc=example,·dc=com&quot;</span><span·class="p">,</span><span·class="w">1514 <p>Modify·an·entry.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nf">modify</span><span·class="p"·data-group-id="0635499277-1">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;cn=Bill·Valentine,·ou=people,·o=Example·Org,·dc=example,·dc=com&quot;</span><span·class="p">,</span><span·class="w">
1515 ·········</span><span·class="p"·data-group-id="6996733692-2">[</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">mod_replace</span><span·class="p"·data-group-id="6996733692-3">(</span><span·class="s">&quot;telephoneNumber&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6996733692-4">[</span><span·class="s">&quot;555·555·00&quot;</span><span·class="p"·data-group-id="6996733692-4">]</span><span·class="p"·data-group-id="6996733692-3">)</span><span·class="p">,</span><span·class="w"> 
1516 »       ··</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">mod_add</span><span·class="p"·data-group-id="6996733692-5">(</span><span·class="s">&quot;description&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"[·...·truncated·by·diffoscope;·len:·332,·SHA:·311c41f9b7418ca4c598b9cb548ef9eac7c930b8256ac7d23d08b7271cc66502·...·]>1515 ·········</span><span·class="p"·data-group-id="0635499277-2">[</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">mod_replace</span><span·class="p"·data-group-id="0635499277-3">(</span><span·class="s">&quot;telephoneNumber&quot;</s[·...·truncated·by·diffoscope;·len:·295,·SHA:·3dcdc11025de0550b8e61e79c7881cd609b1be3ccc8a0a40a3cbbe2386f9a167·...·]>
 1516 »       ··</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">mod_add</span><span·class="p"·data-group-id="0635499277-5">(</span><span·class="s">&quot;description&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0635499277-6">[</span><span·class="s">&quot;LDAP·Hacker&quot;</span><span·class="p"·data-group-id="0635499277-6">]</span><span·class="p"·data-group-id="0635499277-5">)</span><span·class="w">·</span><span·class="p"·data-group-id="0635499277-2">]</span><span·class="p"·data-group-id="0635499277-1">)</span></code></pre>
1517 ··</section>1517 ··</section>
1518 </section>1518 </section>
1519 <section·class="detail"·id="modify_dn/5">1519 <section·class="detail"·id="modify_dn/5">
  
1520 ··<div·class="detail-header">1520 ··<div·class="detail-header">
1521 ····<a·href="#modify_dn/5"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1521 ····<a·href="#modify_dn/5"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1522 ······<i·class="ri-link-m"·aria-hidden="true"></i>1522 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1832, 16 lines modifiedOffset 1832, 16 lines modified
1832 ··········<pre·translate="no"><span·class="attribute">-spec</span>·paged_result_control(PageSize)·->·{control,·ControlOID,·true,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()}1832 ··········<pre·translate="no"><span·class="attribute">-spec</span>·paged_result_control(PageSize)·->·{control,·ControlOID,·true,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()}
1833 ······························when·PageSize·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·ControlOID·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>().</pre>1833 ······························when·PageSize·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·ControlOID·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>().</pre>
  
1834 ······</div>1834 ······</div>
  
1835 <p>paged_result_control(PageSize)·-&gt;·{control,·&quot;1.2.840.113556.1.4.319&quot;,·true,1835 <p>paged_result_control(PageSize)·-&gt;·{control,·&quot;1.2.840.113556.1.4.319&quot;,·true,
1836 binary()}</p><p>Paged·results·is·an·extension·to·the·LDAP·protocol·specified·by·RFC2696</p><p>This·function·creates·a·control·with·the·specified·page·size·for·use·in1836 binary()}</p><p>Paged·results·is·an·extension·to·the·LDAP·protocol·specified·by·RFC2696</p><p>This·function·creates·a·control·with·the·specified·page·size·for·use·in
1837 <code·class="inline">search/3</code>,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Control</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">paged_result_control</span><span·class="p"·data-group-id="8535812597-1">(</span><span·class="mi">50</span><span·class="p"·data-group-id="8535812597-1">)</span><span·class="p">,</span><span·class="w">1837 <code·class="inline">search/3</code>,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Control</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">paged_result_control</span><span·class="p"·data-group-id="2019775091-1">(</span><span·class="mi">50</span><span·class="p"·data-group-id="2019775091-1">)</span><span·class="p">,</span><span·class="w">
1838 </span><span·class="p"·data-group-id="8535812597-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SearchResults</span><span·class="p"·data-group-id="8535812597-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·727,·SHA:·515a1d94df7e47c36975bc1597ee4b777273bba358210f6c60e5253b6cb8fa2a·...·]-3">)</span><span·class="p">,</span></code></pre>1838 </span><span·class="p"·data-group-id="2019775091-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SearchResults</span><span·class="p"·data-group-id="2019775091-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·727,·SHA:·e4df236f215d4a820f353208bec47d13e4ea7fece72a50ae7ae20511bbd86278·...·]-3">)</span><span·class="p">,</span></code></pre>
1839 ··</section>1839 ··</section>
1840 </section>1840 </section>
1841 <section·class="detail"·id="paged_result_control/2">1841 <section·class="detail"·id="paged_result_control/2">
  
1842 ··<div·class="detail-header">1842 ··<div·class="detail-header">
1843 ····<a·href="#paged_result_control/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1843 ····<a·href="#paged_result_control/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1844 ······<i·class="ri-link-m"·aria-hidden="true"></i>1844 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1867, 20 lines modifiedOffset 1867, 20 lines modified
1867 ······························when·PageSize·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·Cookie·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),·ControlOID·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>().</pre>1867 ······························when·PageSize·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·Cookie·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),·ControlOID·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>().</pre>
  
1868 ······</div>1868 ······</div>
  
1869 <p>paged_result_control(PageSize,·Cookie)·-&gt;·{control,·&quot;1.2.840.113556.1.4.319&quot;,1869 <p>paged_result_control(PageSize,·Cookie)·-&gt;·{control,·&quot;1.2.840.113556.1.4.319&quot;,
1870 true,·binary()}</p><p>Paged·results·is·an·extension·to·the·LDAP·protocol·specified·by·RFC2696</p><p>This·function·creates·a·control·with·the·specified·page·size·and·cookie·for·use1870 true,·binary()}</p><p>Paged·results·is·an·extension·to·the·LDAP·protocol·specified·by·RFC2696</p><p>This·function·creates·a·control·with·the·specified·page·size·and·cookie·for·use
1871 in·<code·class="inline">search/3</code>·to·retrieve·the·next·results·page.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">PageSize</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">50</span><span·class="p">,</span><span·class="w">1871 in·<code·class="inline">search/3</code>·to·retrieve·the·next·results·page.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">PageSize</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">50</span><span·class="p">,</span><span·class="w">
1872 </span><span·class="n">Control1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">paged_result_control</span><span·class="p"·data-group-id="8382339820-1">(</span><span·class="n">PageSize</span><span·class="p"·data-group-id="8382339820-1">)</span><span·class="p">,</span><span·class="w">1872 </span><span·class="n">Control1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">paged_result_control</span><span·class="p"·data-group-id="3374799133-1">(</span><span·class="n">PageSize</span><span·class="p"·data-group-id="3374799133-1">)</span><span·class="p">,</span><span·class="w">
1873 </span><span·class="p"·data-group-id="8382339820-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SearchResults1</span><span·class="p"·data-group-id="8382339820-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·729,·SHA:·3f4a126f0e197520daadacc9291863d4a8cbb91a49034185605e92bc710300ab·...·]-3">)</span><span·class="p">,</span><span·class="w">1873 </span><span·class="p"·data-group-id="3374799133-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SearchResults1</span><span·class="p"·data-group-id="3374799133-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·729,·SHA:·2eae6503e5bc116e59a8fa5185c06db9fadfc68895271a1ff06f0acb1237b609·...·]-3">)</span><span·class="p">,</span><span·class="w">
1874 </span><span·class="c1">%%·retrieve·the·returned·cookie·from·the·search·results</span><span·class="w">1874 </span><span·class="c1">%%·retrieve·the·returned·cookie·from·the·search·results</span><span·class="w">
1875 </span><span·class="p"·data-group-id="8382339820-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cookie1</span><span·class="p"·data-group-id="8382339820-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·222,·SHA:·7349adc8250c886c41bc3de26ab152bdeeb363e995519145b1717fa6bfaff334·...·]-8">)</span><span·class="p">,</span><span·class="w">1875 </span><span·class="p"·data-group-id="3374799133-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cookie1</span><span·class="p"·data-group-id="3374799133-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·222,·SHA:·7a52d95afe65c383b692f4ffa6d2ee14b7e7a224f675eb2a23feb61b6daa8650·...·]-8">)</span><span·class="p">,</span><span·class="w">
1876 </span><span·class="n">Control2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">paged_result_control</span><span·class="p"·data-group-id="8382339820-9">(</span><span·class="n">PageSize</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cookie1</span><span·class="p"·data-group-id="8382339820-9">)</span><span·class="p">,</span><span·class="w">1876 </span><span·class="n">Control2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">paged_result_control</span><span·class="p"·data-group-id="3374799133-9">(</span><span·class="n">PageSize</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cookie1</span><span·class="p"·data-group-id="3374799133-9">)</span><span·class="p">,</span><span·class="w">
1877 </span><span·class="p"·data-group-id="8382339820-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SearchResults2</span><span·class="p"·data-group-id="8382339820-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·790,·SHA:·646f86dcf3c54725fd525cdabca9d256a28ced319cc8a57443fe27518e6bee0f·...·]-11">)</span><span·class="p">,</span><span·class="w">1877 </span><span·class="p"·data-group-id="3374799133-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SearchResults2</span><span·class="p"·data-group-id="3374799133-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·790,·SHA:·64f3b9088f92e17bf01855352177f413278158618b6db198d8c741aac7e42c34·...·]-11">)</span><span·class="p">,</span><span·class="w">
1878 </span><span·class="c1">%%·etc</span></code></pre>1878 </span><span·class="c1">%%·etc</span></code></pre>
1879 ··</section>1879 ··</section>
1880 </section>1880 </section>
1881 <section·class="detail"·id="paged_result_cookie/1">1881 <section·class="detail"·id="paged_result_cookie/1">
  
1882 ··<div·class="detail-header">1882 ··<div·class="detail-header">
1883 ····<a·href="#paged_result_cookie/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1883 ····<a·href="#paged_result_cookie/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1992, 16 lines modifiedOffset 1992, 16 lines modified
1992 ····················Refs·::·{referral,·<a·href="#t:referrals/0">referrals</a>()},1992 ····················Refs·::·{referral,·<a·href="#t:referrals/0">referrals</a>()},
1993 ····················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>1993 ····················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
1994 ······</div>1994 ······</div>
  
1995 <p>Search·the·directory·with·the·supplied·the·SearchOptions.</p><p>The·base·and·filter1995 <p>Search·the·directory·with·the·supplied·the·SearchOptions.</p><p>The·base·and·filter
1996 options·must·be·supplied.·Default·values:·scope·is·<a·href="#wholeSubtree/0"><code·class="inline">wholeSubtree/0</code></a>,·deref·is1996 options·must·be·supplied.·Default·values:·scope·is·<a·href="#wholeSubtree/0"><code·class="inline">wholeSubtree/0</code></a>,·deref·is
1997 <a·href="#derefAlways/0"><code·class="inline">derefAlways/0</code></a>,·types_only·is·<code·class="inline">false</code>·and·timeout·is·<code·class="inline">0</code>·(meaning·infinity).</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="n">Filter</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">substrings</span><span·class="p"·data-group-id="8269313181-1">(</span><span·class="s">&quot;cn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8269313181-2">[</span><span·class="p"·data-group-id="8269313181-3">{</span><span·class="ss">any</span><span·class="p">[·...·truncated·by·diffoscope;·len:·191,·SHA:·cb58115358adbcacde50c3fa85b8d3bb9d2877ad5dace952ea7431731fb0da5e·...·]-1">)</span><span·class="p">,</span><span·class="w">1997 <a·href="#derefAlways/0"><code·class="inline">derefAlways/0</code></a>,·types_only·is·<code·class="inline">false</code>·and·timeout·is·<code·class="inline">0</code>·(meaning·infinity).</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="n">Filter</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">eldap</span><span·class="p">:</span><span·class="nf">substrings</span><span·class="p"·data-group-id="6141235636-1">(</span><span·class="s">&quot;cn&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6141235636-2">[</span><span·class="p"·data-group-id="6141235636-3">{</span><span·class="ss">any</span><span·class="p">[·...·truncated·by·diffoscope;·len:·191,·SHA:·0a1537c39ce2309e9a9eba0b36727344c52826204d70f9dbfa9e1be4d1a7aa61·...·]-1">)</span><span·class="p">,</span><span·class="w">
1998 ··</span><span·class="nf">search</span><span·class="p"·data-group-id="8269313181-4">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8269313181-5">[</span><span·class="p"·data-group-id="8269313181-6">{</span><span·class="ss">base</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·865,·SHA:·c87b379c30ee90b4478c33f3d4ff77e6e4c734954119504d8e70bd9a487fe00d·...·]-4">)</span><span·class="p">,</span></code></pre><p>The·<code·class="inline">timeout</code>·option·in·the·<code·class="inline">SearchOptions</code>·is·for·the·ldap·server,·while·the1998 ··</span><span·class="nf">search</span><span·class="p"·data-group-id="6141235636-4">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6141235636-5">[</span><span·class="p"·data-group-id="6141235636-6">{</span><span·class="ss">base</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·865,·SHA:·84da8a679794b020f9f4446685b5ed1403fc72c4cb87861b086d1ad63633c314·...·]-4">)</span><span·class="p">,</span></code></pre><p>The·<code·class="inline">timeout</code>·option·in·the·<code·class="inline">SearchOptions</code>·is·for·the·ldap·server,·while·the
1999 timeout·in·<a·href="#open/2">eldap:open/2</a>·is·used·for·each·individual·request·in·the1999 timeout·in·<a·href="#open/2">eldap:open/2</a>·is·used·for·each·individual·request·in·the
2000 search·operation.</p>2000 search·operation.</p>
2001 ··</section>2001 ··</section>
2002 </section>2002 </section>
2003 <section·class="detail"·id="simple_bind/3">2003 <section·class="detail"·id="simple_bind/3">
  
2004 ··<div·class="detail-header">2004 ··<div·class="detail-header">
Offset 2233, 15 lines modifiedOffset 2233, 15 lines modified
2233 ······<p·class="built-using">2233 ······<p·class="built-using">
2234 ········Built·using2234 ········Built·using
2235 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2235 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2236 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2236 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2237 ······</p>2237 ······</p>
2238 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2238 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2239 ····</footer>2239 ····</footer>
2240 ··</div>2240 ··</div>
2241 </main>2241 </main>
2242 </div>2242 </div>
2243 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2243 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2244 <script>2244 <script>
2245 ··document.addEventListener("DOMContentLoaded",·function·()·{2245 ··document.addEventListener("DOMContentLoaded",·function·()·{
Max diff block lines reached; -1/30643 bytes (-0.00%) of diff not shown.
576 B
html2text {}
Max HTML report size reached
1.38 KB
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/doc/html/notes.html
    
Offset 499, 15 lines modifiedOffset 499, 15 lines modified
499 ······<p·class="built-using">499 ······<p·class="built-using">
500 ········Built·using500 ········Built·using
501 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the501 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
502 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>502 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
503 ······</p>503 ······</p>
504 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>504 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
505 ····</footer>505 ····</footer>
506 ··</div>506 ··</div>
507 </main>507 </main>
508 </div>508 </div>
509 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>509 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
510 <script>510 <script>
511 ··document.addEventListener("DOMContentLoaded",·function·()·{511 ··document.addEventListener("DOMContentLoaded",·function·()·{
575 B
html2text {}
Max HTML report size reached
1.75 KB
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-D30927ED.js"></script>124 <script·src="dist/search_data-1183DD51.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
463 B
html2text {}
Max HTML report size reached
649 B
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/.build
    
Offset 13, 15 lines modifiedOffset 13, 15 lines modified
13 dist/lato-latin-300-normal-YUMVEFOL.woff213 dist/lato-latin-300-normal-YUMVEFOL.woff2
14 dist/lato-latin-400-normal-W7754I4D.woff214 dist/lato-latin-400-normal-W7754I4D.woff2
15 dist/lato-latin-700-normal-2XVSBPG4.woff215 dist/lato-latin-700-normal-2XVSBPG4.woff2
16 dist/lato-latin-ext-300-normal-VPGGJKJL.woff216 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
17 dist/lato-latin-ext-400-normal-N27NCBWW.woff217 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
18 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff218 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
19 dist/remixicon-NKANDIL5.woff219 dist/remixicon-NKANDIL5.woff2
20 dist/search_data-E56B0CB2.js20 dist/search_data-73A3D537.js
21 dist/sidebar_items-8A5CCEF3.js21 dist/sidebar_items-8A5CCEF3.js
22 ei.html22 ei.html
23 ei_connect.html23 ei_connect.html
24 ei_global.html24 ei_global.html
25 ei_users_guide.html25 ei_users_guide.html
26 erl_call_cmd.html26 erl_call_cmd.html
27 index.html27 index.html
1.48 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/404.html
    
Offset 131, 15 lines modifiedOffset 131, 15 lines modified
131 ······<p·class="built-using">131 ······<p·class="built-using">
132 ········Built·using132 ········Built·using
133 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the133 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
134 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>134 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
135 ······</p>135 ······</p>
136 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>136 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
137 ····</footer>137 ····</footer>
138 ··</div>138 ··</div>
139 </main>139 </main>
140 </div>140 </div>
141 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>141 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
142 <script>142 <script>
143 ··document.addEventListener("DOMContentLoaded",·function·()·{143 ··document.addEventListener("DOMContentLoaded",·function·()·{
670 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/ei.html
    
Offset 1023, 15 lines modifiedOffset 1023, 15 lines modified
1023 ······<p·class="built-using">1023 ······<p·class="built-using">
1024 ········Built·using1024 ········Built·using
1025 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1025 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1026 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1026 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1027 ······</p>1027 ······</p>
1028 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1028 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1029 ····</footer>1029 ····</footer>
1030 ··</div>1030 ··</div>
1031 </main>1031 </main>
1032 </div>1032 </div>
1033 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1033 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1034 <script>1034 <script>
1035 ··document.addEventListener("DOMContentLoaded",·function·()·{1035 ··document.addEventListener("DOMContentLoaded",·function·()·{
638 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/ei_connect.html
    
Offset 871, 15 lines modifiedOffset 871, 15 lines modified
871 ······<p·class="built-using">871 ······<p·class="built-using">
872 ········Built·using872 ········Built·using
873 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the873 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
874 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>874 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
875 ······</p>875 ······</p>
876 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>876 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
877 ····</footer>877 ····</footer>
878 ··</div>878 ··</div>
879 </main>879 </main>
880 </div>880 </div>
881 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>881 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
882 <script>882 <script>
883 ··document.addEventListener("DOMContentLoaded",·function·()·{883 ··document.addEventListener("DOMContentLoaded",·function·()·{
688 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/ei_global.html
    
Offset 200, 15 lines modifiedOffset 200, 15 lines modified
200 ······<p·class="built-using">200 ······<p·class="built-using">
201 ········Built·using201 ········Built·using
202 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the202 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
203 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>203 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
204 ······</p>204 ······</p>
205 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>205 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
206 ····</footer>206 ····</footer>
207 ··</div>207 ··</div>
208 </main>208 </main>
209 </div>209 </div>
210 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>210 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
211 <script>211 <script>
212 ··document.addEventListener("DOMContentLoaded",·function·()·{212 ··document.addEventListener("DOMContentLoaded",·function·()·{
685 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/ei_users_guide.html
    
Offset 425, 15 lines modifiedOffset 425, 15 lines modified
425 ······<p·class="built-using">425 ······<p·class="built-using">
426 ········Built·using426 ········Built·using
427 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the427 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
428 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>428 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
429 ······</p>429 ······</p>
430 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>430 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
431 ····</footer>431 ····</footer>
432 ··</div>432 ··</div>
433 </main>433 </main>
434 </div>434 </div>
435 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>435 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
436 <script>436 <script>
437 ··document.addEventListener("DOMContentLoaded",·function·()·{437 ··document.addEventListener("DOMContentLoaded",·function·()·{
693 B
html2text {}
Max HTML report size reached
6.02 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/erl_call_cmd.html
    
Offset 247, 16 lines modifiedOffset 247, 16 lines modified
247 ·{&lt;madonna@chivas.du.etx.ericsson.se,17,0&gt;,247 ·{&lt;madonna@chivas.du.etx.ericsson.se,17,0&gt;,
248 ··················{registered_name,code_server}},248 ··················{registered_name,code_server}},
249 ·{&lt;madonna@chivas.du.etx.ericsson.se,20,0&gt;,249 ·{&lt;madonna@chivas.du.etx.ericsson.se,20,0&gt;,
250 ··················{registered_name,user}},250 ··················{registered_name,user}},
251 ·{&lt;madonna@chivas.du.etx.ericsson.se,38,0&gt;,251 ·{&lt;madonna@chivas.du.etx.ericsson.se,38,0&gt;,
252 ··················[]}]</code></pre><p>To·forward·standard·output·without·printing·the·result·term·(<em>again,·the·input252 ··················[]}]</code></pre><p>To·forward·standard·output·without·printing·the·result·term·(<em>again,·the·input
253 ends·with·EOF·(Control-D)</em>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">erl_call</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">s</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">e</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">sname</span><span·class="w">·</span><span·class="ss">madonna</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">fetch_stdout</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">no_result_term</span><span·class="w">253 ends·with·EOF·(Control-D)</em>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">erl_call</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">s</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">e</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">sname</span><span·class="w">·</span><span·class="ss">madonna</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">fetch_stdout</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">no_result_term</span><span·class="w">
254 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="2165571770-1">(</span><span·class="s">&quot;Number·of·schedulers:·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2165571770-2">[</span><[·...·truncated·by·diffoscope;·len:·322,·SHA:·abb30b87deb93766e91b7e639bbb673baa8b4d570de8c8efeb34f6d61451e7dc·...·]-1">)</span><span·class="p">,</span><span·class="w">254 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6345908093-1">(</span><span·class="s">&quot;Number·of·schedulers:·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6345908093-2">[</span><[·...·truncated·by·diffoscope;·len:·322,·SHA:·69ba0333bdaa582bd914d78ed93fcd20087340f7d2ecead14c6332cf2b6ae07d·...·]-1">)</span><span·class="p">,</span><span·class="w">
255 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="2165571770-4">(</span><span·class="s">&quot;Number·of·logical·cores:·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2165571770-5">[</spa[·...·truncated·by·diffoscope;·len:·343,·SHA:·3d5ebd670b0c609ca7f071a92e602051bd6bdc37b13bbc59d6e1381992fb61bc·...·]-4">)</span><span·class="p">.</span><span·class="w">255 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6345908093-4">(</span><span·class="s">&quot;Number·of·logical·cores:·</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6345908093-5">[</spa[·...·truncated·by·diffoscope;·len:·343,·SHA:·984e1ba4d2d960b4bea7639fa918e7f4c0ec946c791dad8f21d937b0530eeddb·...·]-4">)</span><span·class="p">.</span><span·class="w">
256 </span><span·class="err">^</span><span·class="n">D</span><span·class="w">256 </span><span·class="err">^</span><span·class="n">D</span><span·class="w">
257 </span><span·class="n">Number</span><span·class="w">·</span><span·class="k">of</span><span·class="w">·</span><span·class="nc">schedulers</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">8</span><span·class="w">257 </span><span·class="n">Number</span><span·class="w">·</span><span·class="k">of</span><span·class="w">·</span><span·class="nc">schedulers</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">8</span><span·class="w">
258 </span><span·class="n">Number</span><span·class="w">·</span><span·class="k">of</span><span·class="w">·</span><span·class="ss">logical</span><span·class="w">·</span><span·class="nc">cores</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">8</span></code></pre>258 </span><span·class="n">Number</span><span·class="w">·</span><span·class="k">of</span><span·class="w">·</span><span·class="ss">logical</span><span·class="w">·</span><span·class="nc">cores</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">8</span></code></pre>
259 </div>259 </div>
  
260 <div·class="bottom-actions"·id="bottom-actions">260 <div·class="bottom-actions"·id="bottom-actions">
261 ··<div·class="bottom-actions-item">261 ··<div·class="bottom-actions-item">
Offset 302, 15 lines modifiedOffset 302, 15 lines modified
302 ······<p·class="built-using">302 ······<p·class="built-using">
303 ········Built·using303 ········Built·using
304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
306 ······</p>306 ······</p>
307 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>307 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
308 ····</footer>308 ····</footer>
309 ··</div>309 ··</div>
310 </main>310 </main>
311 </div>311 </div>
312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
313 <script>313 <script>
314 ··document.addEventListener("DOMContentLoaded",·function·()·{314 ··document.addEventListener("DOMContentLoaded",·function·()·{
596 B
html2text {}
Max HTML report size reached
57.5 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/erl_interface.epub
2.53 KB
zipinfo {}
Max HTML report size reached
48.9 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
4.57 KB
OEBPS/erl_call_cmd.xhtml
Max HTML report size reached
1.25 KB
OEBPS/content.opf
1.22 KB
OEBPS/content.opf
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/notes.html
    
Offset 1803, 15 lines modifiedOffset 1803, 15 lines modified
1803 ······<p·class="built-using">1803 ······<p·class="built-using">
1804 ········Built·using1804 ········Built·using
1805 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1805 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1806 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1806 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1807 ······</p>1807 ······</p>
1808 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1808 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1809 ····</footer>1809 ····</footer>
1810 ··</div>1810 ··</div>
1811 </main>1811 </main>
1812 </div>1812 </div>
1813 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1813 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1814 <script>1814 <script>
1815 ··document.addEventListener("DOMContentLoaded",·function·()·{1815 ··document.addEventListener("DOMContentLoaded",·function·()·{
711 B
html2text {}
Max HTML report size reached
1.8 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/search.html
    
Offset 108, 15 lines modifiedOffset 108, 15 lines modified
108 <div·id="search">108 <div·id="search">
109 ··<h1>109 ··<h1>
110 ····<span></span>110 ····<span></span>
111 ··</h1>111 ··</h1>
  
112 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>112 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
113 </div>113 </div>
114 <script·src="dist/search_data-E56B0CB2.js"></script>114 <script·src="dist/search_data-73A3D537.js"></script>
115 ····<footer·class="footer">115 ····<footer·class="footer">
116 ······<p>116 ······<p>
  
117 ········<span·class="line">117 ········<span·class="line">
118 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">118 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
119 ············Search·HexDocs119 ············Search·HexDocs
120 ··········</button>120 ··········</button>
Offset 131, 15 lines modifiedOffset 131, 15 lines modified
131 ······<p·class="built-using">131 ······<p·class="built-using">
132 ········Built·using132 ········Built·using
133 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the133 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
134 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>134 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
135 ······</p>135 ······</p>
136 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>136 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
137 ····</footer>137 ····</footer>
138 ··</div>138 ··</div>
139 </main>139 </main>
140 </div>140 </div>
141 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>141 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
142 <script>142 <script>
143 ··document.addEventListener("DOMContentLoaded",·function·()·{143 ··document.addEventListener("DOMContentLoaded",·function·()·{
496 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/api-reference.html
    
Offset 208, 15 lines modifiedOffset 208, 15 lines modified
208 ······<p·class="built-using">208 ······<p·class="built-using">
209 ········Built·using209 ········Built·using
210 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the210 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
211 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>211 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
212 ······</p>212 ······</p>
213 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>213 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
214 ····</footer>214 ····</footer>
215 ··</div>215 ··</div>
216 </main>216 </main>
217 </div>217 </div>
218 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>218 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
219 <script>219 <script>
220 ··document.addEventListener("DOMContentLoaded",·function·()·{220 ··document.addEventListener("DOMContentLoaded",·function·()·{
667 B
html2text {}
Max HTML report size reached
371 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/et.epub
4.92 KB
zipinfo {}
Max HTML report size reached
91.3 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
57.7 KB
OEBPS/et_tutorial.xhtml
Max HTML report size reached
172 KB
OEBPS/et_examples.xhtml
Max HTML report size reached
44.0 KB
OEBPS/et_desc.xhtml
Max HTML report size reached
1.2 KB
OEBPS/content.opf
1.16 KB
OEBPS/content.opf
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/et.html
    
Offset 549, 15 lines modifiedOffset 549, 15 lines modified
549 ······<p·class="built-using">549 ······<p·class="built-using">
550 ········Built·using550 ········Built·using
551 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the551 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
552 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>552 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
553 ······</p>553 ······</p>
554 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>554 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
555 ····</footer>555 ····</footer>
556 ··</div>556 ··</div>
557 </main>557 </main>
558 </div>558 </div>
559 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>559 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
560 <script>560 <script>
561 ··document.addEventListener("DOMContentLoaded",·function·()·{561 ··document.addEventListener("DOMContentLoaded",·function·()·{
702 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/et_collector.html
    
Offset 1543, 15 lines modifiedOffset 1543, 15 lines modified
1543 ······<p·class="built-using">1543 ······<p·class="built-using">
1544 ········Built·using1544 ········Built·using
1545 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1545 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1546 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1546 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1547 ······</p>1547 ······</p>
1548 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1548 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1549 ····</footer>1549 ····</footer>
1550 ··</div>1550 ··</div>
1551 </main>1551 </main>
1552 </div>1552 </div>
1553 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1553 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1554 <script>1554 <script>
1555 ··document.addEventListener("DOMContentLoaded",·function·()·{1555 ··document.addEventListener("DOMContentLoaded",·function·()·{
597 B
html2text {}
Max HTML report size reached
45.5 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/et_desc.html
    
Offset 134, 41 lines modifiedOffset 134, 41 lines modified
134 <p>The·two·major·components·of·the·<code·class="inline">Event·Tracer·(ET)</code>·tool·is·a·graphical·sequence134 <p>The·two·major·components·of·the·<code·class="inline">Event·Tracer·(ET)</code>·tool·is·a·graphical·sequence
135 chart·viewer·(<code·class="inline">et_viewer</code>)·and·its·backing·storage·(<code·class="inline">et_collector</code>).·One135 chart·viewer·(<code·class="inline">et_viewer</code>)·and·its·backing·storage·(<code·class="inline">et_collector</code>).·One
136 <code·class="inline">Collector</code>·may·be·used·as·backing·storage·for·several·simultaneous·<code·class="inline">Viewers</code>136 <code·class="inline">Collector</code>·may·be·used·as·backing·storage·for·several·simultaneous·<code·class="inline">Viewers</code>
137 where·each·one·may·display·a·different·view·of·the·same·trace·data.</p><p>The·interface·between·the·<code·class="inline">Collector</code>·and·its·<code·class="inline">Viewers</code>·is·public·in·order·to137 where·each·one·may·display·a·different·view·of·the·same·trace·data.</p><p>The·interface·between·the·<code·class="inline">Collector</code>·and·its·<code·class="inline">Viewers</code>·is·public·in·order·to
138 enable·other·types·of·<code·class="inline">Viewers</code>.·However·in·the·following·text·we·will·focus·on138 enable·other·types·of·<code·class="inline">Viewers</code>.·However·in·the·following·text·we·will·focus·on
139 usage·of·the·<code·class="inline">et_viewer</code>.</p><p>The·main·start·function·is·<a·href="et_viewer.html#start/1"><code·class="inline">et_viewer:start/1</code></a>.·By·default·it·will·start·both·an139 usage·of·the·<code·class="inline">et_viewer</code>.</p><p>The·main·start·function·is·<a·href="et_viewer.html#start/1"><code·class="inline">et_viewer:start/1</code></a>.·By·default·it·will·start·both·an
140 <code·class="inline">et_collector</code>·and·an·<code·class="inline">et_viewer</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-pa·et/examples</span><span·class="w">140 <code·class="inline">et_collector</code>·and·an·<code·class="inline">et_viewer</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·erl·-pa·et/examples</span><span·class="w">
141 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R13B03</span><span·class="w">·</span><span·class="p"·data-group-id="9408750359-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.7</span><span·class="p">.</span><span·class="mi">4</span><span·class="p"·data-group-id="9408750359-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1130,·SHA:·6ae124110eee8f00aaf075c3b352ffc5d591467c007a12d2848cca76b7d6fc46·...·]-6">]</span><span·class="w">141 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R13B03</span><span·class="w">·</span><span·class="p"·data-group-id="5747606673-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.7</span><span·class="p">.</span><span·class="mi">4</span><span·class="p"·data-group-id="5747606673-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1130,·SHA:·b0000f7cc73d7b0f4b217b03dd8c13e0ee897bf0293d03d08a9fffc153c10aaf·...·]-6">]</span><span·class="w">
  
142 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">7.4</span><span·class="w">··</span><span·class="p"·data-group-id="9408750359-7">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="9408750359-7">)</span><span·class="gp·unselectable">142 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">7.4</span><span·class="w">··</span><span·class="p"·data-group-id="5747606673-7">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="5747606673-7">)</span><span·class="gp·unselectable">
143 1&gt;·</span><span·class="p"·data-group-id="9408750359-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Viewer</span><span·class="p"·data-group-id="9408750359-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·282,·SHA:·a6b82b47a00f0de4996cce560b63105f83083ee14cbea22127b68e3af3149472·...·]-9">)</span><span·class="p">.</span><span·class="w">143 1&gt;·</span><span·class="p"·data-group-id="5747606673-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Viewer</span><span·class="p"·data-group-id="5747606673-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·282,·SHA:·d4886678f57640f5054b4640bd6fb0e7d9bce9344ed002502a1f224b84170462·...·]-9">)</span><span·class="p">.</span><span·class="w">
144 </span><span·class="p"·data-group-id="9408750359-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.40</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="9408750359-11">}</span></code></pre><p>A·<code·class="inline">Viewer</code>·gets·trace·<code·class="inline">Events</code>·from·its·<code·class="inline">Collector</code>·by·polling·it·regularly·for144 </span><span·class="p"·data-group-id="5747606673-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.40</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="5747606673-11">}</span></code></pre><p>A·<code·class="inline">Viewer</code>·gets·trace·<code·class="inline">Events</code>·from·its·<code·class="inline">Collector</code>·by·polling·it·regularly·for
145 more·<code·class="inline">Events</code>·to·display.·<code·class="inline">Events</code>·are·for·example·reported·to·the·<code·class="inline">Collector</code>145 more·<code·class="inline">Events</code>·to·display.·<code·class="inline">Events</code>·are·for·example·reported·to·the·<code·class="inline">Collector</code>
146 with·<a·href="et_collector.html#report_event/6"><code·class="inline">et_collector:report_event/6</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="n">Collector</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">get_collector_pid</span><span·class="p"·data-group-id="3557103546-1">(</span><span·class="n">Viewer</span><span·class="p"·data-group-id="3557103546-1">)</span><span·class="p">.</span><span·class="w">146 with·<a·href="et_collector.html#report_event/6"><code·class="inline">et_collector:report_event/6</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="n">Collector</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">get_collector_pid</span><span·class="p"·data-group-id="0941146948-1">(</span><span·class="n">Viewer</span><span·class="p"·data-group-id="0941146948-1">)</span><span·class="p">.</span><span·class="w">
147 </span><span·class="o">&lt;</span><span·class="mf">0.39</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">147 </span><span·class="o">&lt;</span><span·class="mf">0.39</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">
148 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="3557103546-2">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">60</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_tm</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_outer</span><span·class="p">,</span><span·class="gp·unselectable">148 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="0941146948-2">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">60</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_tm</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start_outer</span><span·class="p">,</span><span·class="gp·unselectable">
149 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Start·outer·transaction&quot;</span><span·class="p"·data-group-id="3557103546-2">)</span><span·class="p">,</span><span·class="gp·unselectable">149 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Start·outer·transaction&quot;</span><span·class="p"·data-group-id="0941146948-2">)</span><span·class="p">,</span><span·class="gp·unselectable">
150 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="3557103546-3">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">40</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_tm</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">new_tid</span><span·class="p">,</span><span·class="gp·unselectable">150 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="0941146948-3">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">40</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_tm</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">new_tid</span><span·class="p">,</span><span·class="gp·unselectable">
151 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;New·transaction·id·is·4711&quot;</span><span·class="p"·data-group-id="3557103546-3">)</span><span·class="p">,</span><span·class="gp·unselectable">151 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;New·transaction·id·is·4711&quot;</span><span·class="p"·data-group-id="0941146948-3">)</span><span·class="p">,</span><span·class="gp·unselectable">
152 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="3557103546-4">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_locker</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">try_write_lock</span><span·class="p">,</span><span·class="gp·unselectable">152 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="0941146948-4">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_locker</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">try_write_lock</span><span·class="p">,</span><span·class="gp·unselectable">
153 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Acquire·write·lock·for·{my_tab,·key}&quot;</span><span·class="p"·data-group-id="3557103546-4">)</span><span·class="p">,</span><span·class="gp·unselectable">153 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Acquire·write·lock·for·{my_tab,·key}&quot;</span><span·class="p"·data-group-id="0941146948-4">)</span><span·class="p">,</span><span·class="gp·unselectable">
154 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="3557103546-5">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">10</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_locker</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">granted</span><span·class="p">,</span><span·class="gp·unselectable">154 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="0941146948-5">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">10</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_locker</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">granted</span><span·class="p">,</span><span·class="gp·unselectable">
155 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;You·got·the·write·lock·for·{my_tab,·key}&quot;</span><span·class="p"·data-group-id="3557103546-5">)</span><span·class="p">,</span><span·class="gp·unselectable">155 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;You·got·the·write·lock·for·{my_tab,·key}&quot;</span><span·class="p"·data-group-id="0941146948-5">)</span><span·class="p">,</span><span·class="gp·unselectable">
156 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="3557103546-6">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">60</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">do_commit</span><span·class="p">,</span><span·class="gp·unselectable">156 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="0941146948-6">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">60</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">do_commit</span><span·class="p">,</span><span·class="gp·unselectable">
157 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Perform··transaction·commit&quot;</span><span·class="p"·data-group-id="3557103546-6">)</span><span·class="p">,</span><span·class="gp·unselectable">157 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Perform··transaction·commit&quot;</span><span·class="p"·data-group-id="0941146948-6">)</span><span·class="p">,</span><span·class="gp·unselectable">
158 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="3557103546-7">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">40</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_locker</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">release_tid</span><span·class="p">,</span><span·class="gp·unselectable">158 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="0941146948-7">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">40</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_locker</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">release_tid</span><span·class="p">,</span><span·class="gp·unselectable">
159 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Release·all·locks·for·transaction·4711&quot;</span><span·class="p"·data-group-id="3557103546-7">)</span><span·class="p">,</span><span·class="gp·unselectable">159 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Release·all·locks·for·transaction·4711&quot;</span><span·class="p"·data-group-id="0941146948-7">)</span><span·class="p">,</span><span·class="gp·unselectable">
160 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="3557103546-8">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">60</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_tm</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">delete_transaction</span><span·class="p">,</span><span·class="gp·unselectable">160 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="0941146948-8">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">60</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_tm</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">delete_transaction</span><span·class="p">,</span><span·class="gp·unselectable">
161 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;End·of·outer·transaction&quot;</span><span·class="p"·data-group-id="3557103546-8">)</span><span·class="p">,</span><span·class="gp·unselectable">161 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;End·of·outer·transaction&quot;</span><span·class="p"·data-group-id="0941146948-8">)</span><span·class="p">,</span><span·class="gp·unselectable">
162 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="3557103546-9">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">end_outer</span><span·class="p">,</span><span·class="gp·unselectable">162 3&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="0941146948-9">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_shell</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">end_outer</span><span·class="p">,</span><span·class="gp·unselectable">
163 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Transaction·returned·{atomic,·ok}&quot;</span><span·class="p"·data-group-id="3557103546-9">)</span><span·class="p">.</span><span·class="w">163 3&gt;·</span><span·class="w">··························</span><span·class="s">&quot;Transaction·returned·{atomic,·ok}&quot;</span><span·class="p"·data-group-id="0941146948-9">)</span><span·class="p">.</span><span·class="w">
164 </span><span·class="p"·data-group-id="3557103546-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3557103546-11">{</span><span·class="ss">table_handle</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.39</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="mi">16402</span><span·class="p">,</span><span·class="ss">trace_ts</span><span·class="p">,</span><span·class="w">164 </span><span·class="p"·data-group-id="0941146948-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0941146948-11">{</span><span·class="ss">table_handle</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.39</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="mi">16402</span><span·class="p">,</span><span·class="ss">trace_ts</span><span·class="p">,</span><span·class="w">
165 ·····</span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">et_collector</span><span·class="p">.</span><span·class="mf">0.62831470</span><span·class="o">&gt;</span><span·class="p"·data-group-id="3557103546-11">}</span><span·class="p"·data-group-id="3557103546-10">}</span></code></pre><p>This·actually·is·a·simulation·of·the·process·<code·class="inline">Events</code>·caused·by·a·<code·class="inline">Mnesia</code>165 ·····</span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">et_collector</span><span·class="p">.</span><span·class="mf">0.62831470</span><span·class="o">&gt;</span><span·class="p"·data-group-id="0941146948-11">}</span><span·class="p"·data-group-id="0941146948-10">}</span></code></pre><p>This·actually·is·a·simulation·of·the·process·<code·class="inline">Events</code>·caused·by·a·<code·class="inline">Mnesia</code>
166 transaction·that·writes·a·record·in·a·local·table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="3267998762-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3267998762-2">(</span><span·class="p"·data-group-id="3267998762-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</s[·...·truncated·by·diffoscope;·len:·540,·SHA:·a7aaff2b2c30e76676709da17e4400c3bc59cde5e1d1f86408ca9e84f7f2864b·...·]-1">)</span><span·class="p">.</span></code></pre><p>At·this·stage·when·we·have·a·couple·of·<code·class="inline">Events</code>,·it·is·time·to·show·how·it·looks166 transaction·that·writes·a·record·in·a·local·table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="3647434169-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3647434169-2">(</span><span·class="p"·data-group-id="3647434169-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</s[·...·truncated·by·diffoscope;·len:·540,·SHA:·b62eac2b0637bf8f73c8336cf161413db230cdc15829a9e0956668b0d471e135·...·]-1">)</span><span·class="p">.</span></code></pre><p>At·this·stage·when·we·have·a·couple·of·<code·class="inline">Events</code>,·it·is·time·to·show·how·it·looks
167 like·in·the·graphical·interface·of·<code·class="inline">et_viewer</code>:</p><p><img·src="assets/sim_trans.png"·alt="A·simulated·Mnesia·transaction·which·writes·one·record"·title="A·simulated·Mnesia·transaction·which·writes·one·record"/></p><p>In·the·sequence·chart,·the·actors·(which·symbolically·has·performed·the·<code·class="inline">Event</code>)167 like·in·the·graphical·interface·of·<code·class="inline">et_viewer</code>:</p><p><img·src="assets/sim_trans.png"·alt="A·simulated·Mnesia·transaction·which·writes·one·record"·title="A·simulated·Mnesia·transaction·which·writes·one·record"/></p><p>In·the·sequence·chart,·the·actors·(which·symbolically·has·performed·the·<code·class="inline">Event</code>)
168 are·shown·as·named·vertical·bars.·The·order·of·the·actors·may·be·altered·by168 are·shown·as·named·vertical·bars.·The·order·of·the·actors·may·be·altered·by
169 dragging·(hold·mouse·button·1·pressed·during·the·operation)·the·name·tag·of·an169 dragging·(hold·mouse·button·1·pressed·during·the·operation)·the·name·tag·of·an
170 actor·and·drop·it·elsewhere:</p><p><img·src="assets/sim_trans_move_actor.png"·alt="Two·actors·has·switched·places"·title="Two·actors·has·switched·places"/></p><p>An·<code·class="inline">Event</code>·may·be·an·action·performed·by·one·single·actor·(blue·text·label)·or170 actor·and·drop·it·elsewhere:</p><p><img·src="assets/sim_trans_move_actor.png"·alt="Two·actors·has·switched·places"·title="Two·actors·has·switched·places"/></p><p>An·<code·class="inline">Event</code>·may·be·an·action·performed·by·one·single·actor·(blue·text·label)·or
171 it·may·involve·two·actors·and·is·then·depicted·as·an·arrow·directed·from·one171 it·may·involve·two·actors·and·is·then·depicted·as·an·arrow·directed·from·one
172 actor·to·another·(red·text·label).·Details·of·an·<code·class="inline">Event</code>·can·be·shown·by172 actor·to·another·(red·text·label).·Details·of·an·<code·class="inline">Event</code>·can·be·shown·by
173 clicking·(press·and·release·the·mouse·button·1)·on·the·event·label·text·or·on173 clicking·(press·and·release·the·mouse·button·1)·on·the·event·label·text·or·on
Offset 177, 19 lines modifiedOffset 177, 19 lines modified
177 ··<a·href="#filters-and-dictionary"·class="hover-link">177 ··<a·href="#filters-and-dictionary"·class="hover-link">
178 ····<i·class="ri-link-m"·aria-hidden="true"></i>178 ····<i·class="ri-link-m"·aria-hidden="true"></i>
179 ··</a>179 ··</a>
180 ··<span·class="text">Filters·and·dictionary</span>180 ··<span·class="text">Filters·and·dictionary</span>
181 </h2>181 </h2>
182 <p>The·<code·class="inline">Event·Tracer·(ET)</code>·uses·named·filters·in·various·contexts.·An·Event·Trace182 <p>The·<code·class="inline">Event·Tracer·(ET)</code>·uses·named·filters·in·various·contexts.·An·Event·Trace
183 filter·is·an·<code·class="inline">Erlang·fun</code>·that·takes·some·trace·data·as·input·and·returns·a183 filter·is·an·<code·class="inline">Erlang·fun</code>·that·takes·some·trace·data·as·input·and·returns·a
184 possibly·modified·version·of·it:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">filter</span><span·class="p"·data-group-id="6601497124-1">(</span><span·class="n">TraceData</span><span·class="p"·data-group-id="6601497124-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">|</s[·...·truncated·by·diffoscope;·len:·329,·SHA:·df5842b02db1d195702eaf71faef5ffdb0b809163db9615f4419337dfb88db3e·...·]-2">}</span><span·class="w">184 possibly·modified·version·of·it:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">filter</span><span·class="p"·data-group-id="3875049042-1">(</span><span·class="n">TraceData</span><span·class="p"·data-group-id="3875049042-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">|</s[·...·truncated·by·diffoscope;·len:·329,·SHA:·b2d262e46a9e8be1a4b837f427096f044356a26cf396d825ac421a56ad30f922·...·]-2">}</span><span·class="w">
  
185 </span><span·class="n">TraceData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Event</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">erlang_trace_data</span><span·class="p"·data-group-id="6601497124-3">(</span><span·class="p"·data-group-id="6601497124-3">)</span><span·class="w">185 </span><span·class="n">TraceData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Event</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">erlang_trace_data</span><span·class="p"·data-group-id="3875049042-3">(</span><span·class="p"·data-group-id="3875049042-3">)</span><span·class="w">
186 </span><span·class="n">Event</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">event</span><span·class="p"·data-group-id="6601497124-4">{</span><span·class="p"·data-group-id="6601497124-4">}</span><span·class="w">186 </span><span·class="n">Event</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">event</span><span·class="p"·data-group-id="3875049042-4">{</span><span·class="p"·data-group-id="3875049042-4">}</span><span·class="w">
187 </span><span·class="n">NewEvent</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">event</span><span·class="p"·data-group-id="6601497124-5">{</span><span·class="p"·data-group-id="6601497124-5">}</span></code></pre><p>The·interface·of·the·filter·function·is·the·same·as·the·the·filter·functions·for187 </span><span·class="n">NewEvent</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">event</span><span·class="p"·data-group-id="3875049042-5">{</span><span·class="p"·data-group-id="3875049042-5">}</span></code></pre><p>The·interface·of·the·filter·function·is·the·same·as·the·the·filter·functions·for
188 the·good·old·<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html#filtermap/2"><code·class="inline">lists:filtermap/2</code></a>.·If·the·filter·returns·<code·class="inline">false</code>·it·means·that188 the·good·old·<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html#filtermap/2"><code·class="inline">lists:filtermap/2</code></a>.·If·the·filter·returns·<code·class="inline">false</code>·it·means·that
189 the·trace·data·should·silently·be·dropped.·<code·class="inline">true</code>·means·that·the·trace·data·data189 the·trace·data·should·silently·be·dropped.·<code·class="inline">true</code>·means·that·the·trace·data·data
190 already·is·an·<code·class="inline">Event·Record</code>·and·that·it·should·be·kept·as·it·is.·<code·class="inline">true</code>·means190 already·is·an·<code·class="inline">Event·Record</code>·and·that·it·should·be·kept·as·it·is.·<code·class="inline">true</code>·means
191 that·the·<code·class="inline">TraceData</code>·already·is·an·<code·class="inline">Event·Record</code>·and·that·it·should·be·kept·as191 that·the·<code·class="inline">TraceData</code>·already·is·an·<code·class="inline">Event·Record</code>·and·that·it·should·be·kept·as
192 it·is.·<code·class="inline">{true,·NewEvent}</code>·means·that·the·original·trace·data·should·be·replaced192 it·is.·<code·class="inline">{true,·NewEvent}</code>·means·that·the·original·trace·data·should·be·replaced
193 with·<code·class="inline">Event</code>.·This·provides·means·to·get·rid·of·unwanted·<code·class="inline">Events</code>·as·well·as193 with·<code·class="inline">Event</code>.·This·provides·means·to·get·rid·of·unwanted·<code·class="inline">Events</code>·as·well·as
194 enabling·alternate·views·of·an·<code·class="inline">Event</code>.</p><p>The·first·filter·that·the·trace·data·is·exposed·for·is·the·<code·class="inline">Collector·Filter</code>.194 enabling·alternate·views·of·an·<code·class="inline">Event</code>.</p><p>The·first·filter·that·the·trace·data·is·exposed·for·is·the·<code·class="inline">Collector·Filter</code>.
Offset 208, 29 lines modifiedOffset 208, 29 lines modified
208 When·a·<code·class="inline">Viewer</code>·is·started·it·is·registered·as·a·subscriber·of·dictionary208 When·a·<code·class="inline">Viewer</code>·is·started·it·is·registered·as·a·subscriber·of·dictionary
209 updates.</p><p>In·each·<code·class="inline">Viewer</code>·there·is·only·one·filter·that·is·active·and·all·trace·<code·class="inline">Events</code>209 updates.</p><p>In·each·<code·class="inline">Viewer</code>·there·is·only·one·filter·that·is·active·and·all·trace·<code·class="inline">Events</code>
210 that·the·<code·class="inline">Viewer</code>·gets·from·the·<code·class="inline">Collector</code>·will·pass·thru·that·filter.·By210 that·the·<code·class="inline">Viewer</code>·gets·from·the·<code·class="inline">Collector</code>·will·pass·thru·that·filter.·By
211 writing·clever·filters·it·is·possible·to·customize·how·the·<code·class="inline">Events</code>·looks·like211 writing·clever·filters·it·is·possible·to·customize·how·the·<code·class="inline">Events</code>·looks·like
212 in·the·viewer.·The·following·filter·in·<code·class="inline">et/examples/et_demo.erl</code>·replaces·the212 in·the·viewer.·The·following·filter·in·<code·class="inline">et/examples/et_demo.erl</code>·replaces·the
213 actor·names·<code·class="inline">mnesia_tm</code>·and·<code·class="inline">mnesia_locker</code>·and·leaves·everything·else·in·the213 actor·names·<code·class="inline">mnesia_tm</code>·and·<code·class="inline">mnesia_locker</code>·and·leaves·everything·else·in·the
214 record·as·it·was:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">214 record·as·it·was:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">
215 </span><span·class="nf">mgr_actors</span><span·class="p"·data-group-id="3534188342-1">(</span><span·class="n">E</span><span·class="p"·data-group-id="3534188342-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_record</span><span·class="p"·data-group-id="3534188342-2">(</s[·...·truncated·by·diffoscope;·len:·146,·SHA:·2629b7022d77a8c5bfbf8d81a40743eb483b640e922c5b2222c7832a09ace12f·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">215 </span><span·class="nf">mgr_actors</span><span·class="p"·data-group-id="0966871047-1">(</span><span·class="n">E</span><span·class="p"·data-group-id="0966871047-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_record</span><span·class="p"·data-group-id="0966871047-2">(</s[·...·truncated·by·diffoscope;·len:·146,·SHA:·e32f24cd3e8029d6e682e1130126e2ae47f7e73d7ededfc408d06a39d335ab9b·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
216 ····</span><span·class="n">Actor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3534188342-3">(</span><span·class="n">A</span><span·class="p"·data-group-id="3534188342-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">216 ····</span><span·class="n">Actor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="0966871047-3">(</span><span·class="n">A</span><span·class="p"·data-group-id="0966871047-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
217 ···············</span><span·class="k">case</span><span·class="w">·</span><span·class="n">A</span><span·class="w">·</span><span·class="k">of</span><span·class="w">217 ···············</span><span·class="k">case</span><span·class="w">·</span><span·class="n">A</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
218 ···················</span><span·class="ss">mnesia_tm</span><span·class="w">·····</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">trans_mgr</span><span·class="p">;</span><span·class="w">218 ···················</span><span·class="ss">mnesia_tm</span><span·class="w">·····</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">trans_mgr</span><span·class="p">;</span><span·class="w">
219 ···················</span><span·class="ss">mnesia_locker</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">lock_mgr</span><span·class="p">;</span><span·class="w">219 ···················</span><span·class="ss">mnesia_locker</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">lock_mgr</span><span·class="p">;</span><span·class="w">
220 ···················</span><span·class="p">_</span><span·class="w">·············</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">A</span><span·class="w">220 ···················</span><span·class="p">_</span><span·class="w">·············</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">A</span><span·class="w">
221 ···············</span><span·class="k">end</span><span·class="w">221 ···············</span><span·class="k">end</span><span·class="w">
222 ············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">222 ············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
223 ····</span><span·class="p"·data-group-id="3534188342-4">{</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p"·data-group-id="3534188342-5">{</span><span·class="ss">from</span>[·...·truncated·by·diffoscope;·len:·323,·SHA:·329519efecb9f9bfd57913dad58fab2a9a4b2ddf834adaee9bb720ba4d63be9b·...·]-6">)</span><span·class="p">,</span><span·class="w">223 ····</span><span·class="p"·data-group-id="0966871047-4">{</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p"·data-group-id="0966871047-5">{</span><span·class="ss">from</span>[·...·truncated·by·diffoscope;·len:·323,·SHA:·9d8b38aae5c0435113e4ca637d7230786b292724a58ef6eb5dd59b47307c39a9·...·]-6">)</span><span·class="p">,</span><span·class="w">
224 ···················</span><span·class="ss">to</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Actor</span><span·class="p"·data-group-id="3534188342-7">(</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p">.</span><span·class="ss">to</span><span·class="p"·data-group-id="3534188342-7">)</span><span·class="p">,</span><span·class="w">224 ···················</span><span·class="ss">to</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Actor</span><span·class="p"·data-group-id="0966871047-7">(</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p">.</span><span·class="ss">to</span><span·class="p"·data-group-id="0966871047-7">)</span><span·class="p">,</span><span·class="w">
225 ···················</span><span·class="ss">contents</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3534188342-8">[</span><span·class="p"·data-group-id="3534188342-9">{</span><span·class="ss">orig_from</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p">.</span[·...·truncated·by·diffoscope;·len:·70,·SHA:·d6e39d2934761af86a0a5208e217e2b343b37d1a7b52bbc06c114467a67dd21b·...·]-9">}</span><span·class="p">,</span><span·class="w">225 ···················</span><span·class="ss">contents</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0966871047-8">[</span><span·class="p"·data-group-id="0966871047-9">{</span><span·class="ss">orig_from</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p">.</span[·...·truncated·by·diffoscope;·len:·70,·SHA:·f39da35100ad93a7e763bf2354701dbfc2881166acc1ab5c2d856792b7d91852·...·]-9">}</span><span·class="p">,</span><span·class="w">
226 ·······························</span><span·class="p"·data-group-id="3534188342-10">{</span><span·class="ss">orig_to</span><span·class="p">,</span><span·class="w">···</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p">.</span><span·class="ss">to</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·3411fc4b92648d5db4f29d10240aabb23cb91c22132ec33d778389fafa3525b4·...·]-10">}</span><span·class="p">,</span><span·class="w">226 ·······························</span><span·class="p"·data-group-id="0966871047-10">{</span><span·class="ss">orig_to</span><span·class="p">,</span><span·class="w">···</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p">.</span><span·class="ss">to</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·4c5578190b9540a9eb5e3065bfdc2bfe6027902322d3307f0ba1b706e016310d·...·]-10">}</span><span·class="p">,</span><span·class="w">
227 ·······························</span><span·class="p"·data-group-id="3534188342-11">{</span><span·class="ss">orig_contents</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p">.</span><span·class="ss">contents</span><span·class="p"[·...·truncated·by·diffoscope;·len:·949,·SHA:·f913871e697704257fa383321a828b7484666d268abc8b9da514524a2eb3754e·...·]-2">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">227 ·······························</span><span·class="p"·data-group-id="0966871047-11">{</span><span·class="ss">orig_contents</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">event</span><span·class="p">.</span><span·class="ss">contents</span><span·class="p"[·...·truncated·by·diffoscope;·len:·949,·SHA:·e9748cca69840ca28fef0f3d8520f0fa36a6e16b6d9814317f67240bbeae1c92·...·]-2">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
228 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="p">.</span><span·class="mf">6.13229925</span><span·class="o">&gt;</span><span·class="gp·unselectable">228 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="p">.</span><span·class="mf">6.13229925</span><span·class="o">&gt;</span><span·class="gp·unselectable">
229 5&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">dict_insert</span><span·class="p"·data-group-id="8305194643-3">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8305194643-4">{</span><span·class="ss">filter</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mgr_ac[·...·truncated·by·diffoscope;·len:·179,·SHA:·8d5b63c98cde86067fb15fe6f24b39ad53593d8fdc337689c8b4bd7907899507·...·]-3">)</span><span·class="p">.</span><span·class="w">229 5&gt;·</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">dict_insert</span><span·class="p"·data-group-id="7783715418-3">(</span><span·class="n">Collector</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7783715418-4">{</span><span·class="ss">filter</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mgr_ac[·...·truncated·by·diffoscope;·len:·179,·SHA:·8fdc625be0a977b2ab918d7a9668ee2def3c407647f731c1164ed58e5f9edac1·...·]-3">)</span><span·class="p">.</span><span·class="w">
230 </span><span·class="ss">ok</span></code></pre><p>you·will·see·that·the·<code·class="inline">Filter</code>·menu·in·all·viewers·have·got·a·new·entry·called230 </span><span·class="ss">ok</span></code></pre><p>you·will·see·that·the·<code·class="inline">Filter</code>·menu·in·all·viewers·have·got·a·new·entry·called
231 <code·class="inline">mgr_actors</code>.·Select·it,·and·a·new·<code·class="inline">Viewer</code>·window·will·pop·up:</p><p><img·src="assets/sim_trans_mgr_actors.png"·alt="The·same·trace·data·in·a·different·view"·title="The·same·trace·data·in·a·different·view"/></p><p>In·order·to·see·the·nitty·gritty·details·of·an·<code·class="inline">Event</code>·you·may·click·on·the231 <code·class="inline">mgr_actors</code>.·Select·it,·and·a·new·<code·class="inline">Viewer</code>·window·will·pop·up:</p><p><img·src="assets/sim_trans_mgr_actors.png"·alt="The·same·trace·data·in·a·different·view"·title="The·same·trace·data·in·a·different·view"/></p><p>In·order·to·see·the·nitty·gritty·details·of·an·<code·class="inline">Event</code>·you·may·click·on·the
232 <code·class="inline">Event</code>·in·order·to·start·a·<code·class="inline">Contents·Viewer</code>·for·that·<code·class="inline">Event</code>.·In·the232 <code·class="inline">Event</code>·in·order·to·start·a·<code·class="inline">Contents·Viewer</code>·for·that·<code·class="inline">Event</code>.·In·the
233 <code·class="inline">Contents·Viewer</code>·there·also·is·a·filter·menu·that·enables·inspection·of·the233 <code·class="inline">Contents·Viewer</code>·there·also·is·a·filter·menu·that·enables·inspection·of·the
234 <code·class="inline">Event</code>·from·other·views·than·the·one·selected·in·the·viewer.·A·click·on·the234 <code·class="inline">Event</code>·from·other·views·than·the·one·selected·in·the·viewer.·A·click·on·the
235 <code·class="inline">new_tid</code>·<code·class="inline">Event</code>·will·cause·a·<code·class="inline">Contents·Viewer</code>·window·to·pop·up,·showing·the235 <code·class="inline">new_tid</code>·<code·class="inline">Event</code>·will·cause·a·<code·class="inline">Contents·Viewer</code>·window·to·pop·up,·showing·the
236 <code·class="inline">Event</code>·in·the·<code·class="inline">mgr_actors</code>·view:</p><p><img·src="assets/sim_trans_contents_viewer_mgr_actors.png"·alt="The·trace·Event·in·the·mgr_actors·view"·title="The·trace·Event·in·the·mgr_actors·view"/></p><p>Select·the·<code·class="inline">all</code>·entry·in·the·<code·class="inline">Filters</code>·menu·and·a·new·<code·class="inline">Contents·Viewer·window</code>236 <code·class="inline">Event</code>·in·the·<code·class="inline">mgr_actors</code>·view:</p><p><img·src="assets/sim_trans_contents_viewer_mgr_actors.png"·alt="The·trace·Event·in·the·mgr_actors·view"·title="The·trace·Event·in·the·mgr_actors·view"/></p><p>Select·the·<code·class="inline">all</code>·entry·in·the·<code·class="inline">Filters</code>·menu·and·a·new·<code·class="inline">Contents·Viewer·window</code>
Offset 419, 15 lines modifiedOffset 419, 15 lines modified
419 ······<p·class="built-using">419 ······<p·class="built-using">
420 ········Built·using420 ········Built·using
421 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the421 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
422 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>422 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
423 ······</p>423 ······</p>
424 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>424 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
425 ····</footer>425 ····</footer>
426 ··</div>426 ··</div>
427 </main>427 </main>
428 </div>428 </div>
429 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>429 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
430 <script>430 <script>
431 ··document.addEventListener("DOMContentLoaded",·function·()·{431 ··document.addEventListener("DOMContentLoaded",·function·()·{
766 B
html2text {}
Max HTML report size reached
173 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/et_examples.html
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/et_intro.html
    
Offset 211, 15 lines modifiedOffset 211, 15 lines modified
211 ······<p·class="built-using">211 ······<p·class="built-using">
212 ········Built·using212 ········Built·using
213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
215 ······</p>215 ······</p>
216 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>216 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
217 ····</footer>217 ····</footer>
218 ··</div>218 ··</div>
219 </main>219 </main>
220 </div>220 </div>
221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
222 <script>222 <script>
223 ··document.addEventListener("DOMContentLoaded",·function·()·{223 ··document.addEventListener("DOMContentLoaded",·function·()·{
701 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/et_selector.html
    
Offset 425, 15 lines modifiedOffset 425, 15 lines modified
425 ······<p·class="built-using">425 ······<p·class="built-using">
426 ········Built·using426 ········Built·using
427 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the427 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
428 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>428 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
429 ······</p>429 ······</p>
430 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>430 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
431 ····</footer>431 ····</footer>
432 ··</div>432 ··</div>
433 </main>433 </main>
434 </div>434 </div>
435 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>435 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
436 <script>436 <script>
437 ··document.addEventListener("DOMContentLoaded",·function·()·{437 ··document.addEventListener("DOMContentLoaded",·function·()·{
715 B
html2text {}
Max HTML report size reached
59.2 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/et_tutorial.html
    
Offset 129, 49 lines modifiedOffset 129, 49 lines modified
129 ··<a·href="#visualizing-message-sequence-charts"·class="hover-link">129 ··<a·href="#visualizing-message-sequence-charts"·class="hover-link">
130 ····<i·class="ri-link-m"·aria-hidden="true"></i>130 ····<i·class="ri-link-m"·aria-hidden="true"></i>
131 ··</a>131 ··</a>
132 ··<span·class="text">Visualizing·Message·Sequence·Charts</span>132 ··<span·class="text">Visualizing·Message·Sequence·Charts</span>
133 </h2>133 </h2>
134 <p>The·easiest·way·of·using·<code·class="inline">ET</code>,·is·to·just·use·it·as·a·graphical·tool·for134 <p>The·easiest·way·of·using·<code·class="inline">ET</code>,·is·to·just·use·it·as·a·graphical·tool·for
135 displaying·message·sequence·charts.·In·order·to·do·that·you·need·to·first·start135 displaying·message·sequence·charts.·In·order·to·do·that·you·need·to·first·start
136 a·<code·class="inline">Viewer</code>·(which·by·default·starts·a·<code·class="inline">Collector</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="7389860407-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ViewerPid</span><span·class="p"·data-group-id="7389860407-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·489,·SHA:·f1d4e4e37cae7939423889345336476c9c1ba43b8628fedaaf439f8a6a28f8cb·...·]-2">)</span><span·class="p">,</span><span·class="w">136 a·<code·class="inline">Viewer</code>·(which·by·default·starts·a·<code·class="inline">Collector</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="8231053886-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ViewerPid</span><span·class="p"·data-group-id="8231053886-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·489,·SHA:·c648243d10391e356a35fa85cd31878bb98273aac5ddc3dfd591ea532ea38ae8·...·]-2">)</span><span·class="p">,</span><span·class="w">
137 ······</span><span·class="n">CollectorPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">get_collector_pid</span><span·class="p"·data-group-id="7389860407-5">(</span><span·class="n">ViewerPid</span><span·class="p"·data-group-id="7389860407-5">)</span><span·class="p">.</span></code></pre><p><a·href=""·id="report_event"></a></p><p>Then·you·send·events·to·the·<code·class="inline">Collector</code>·with·the·function137 ······</span><span·class="n">CollectorPid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">get_collector_pid</span><span·class="p"·data-group-id="8231053886-5">(</span><span·class="n">ViewerPid</span><span·class="p"·data-group-id="8231053886-5">)</span><span·class="p">.</span></code></pre><p><a·href=""·id="report_event"></a></p><p>Then·you·send·events·to·the·<code·class="inline">Collector</code>·with·the·function
138 <a·href="et_collector.html#report_event/6"><code·class="inline">et_collector:report_event/6</code></a>·like·this:</p><pre><code·class="text">······et_collector:report_event(CollectorPid,85,from,to,message,extra_stuff).</code></pre><p>The·<code·class="inline">Viewer</code>·will·automatically·pull·events·from·the·<code·class="inline">Collector</code>·and·display138 <a·href="et_collector.html#report_event/6"><code·class="inline">et_collector:report_event/6</code></a>·like·this:</p><pre><code·class="text">······et_collector:report_event(CollectorPid,85,from,to,message,extra_stuff).</code></pre><p>The·<code·class="inline">Viewer</code>·will·automatically·pull·events·from·the·<code·class="inline">Collector</code>·and·display
139 them·on·the·screen.</p><p>The·number·(in·this·case·85)·is·an·integer·from·1·to·100·that·specifies·the139 them·on·the·screen.</p><p>The·number·(in·this·case·85)·is·an·integer·from·1·to·100·that·specifies·the
140 &quot;detail·level&quot;·of·the·message.·The·higher·the·number,·the·more·important·it·is.140 &quot;detail·level&quot;·of·the·message.·The·higher·the·number,·the·more·important·it·is.
141 This·provides·a·crude·form·of·priority·filtering.</p><p>The·<code·class="inline">from</code>,·<code·class="inline">to</code>,·and·<code·class="inline">message</code>·parameters·are·exactly·what·they·sound·like.141 This·provides·a·crude·form·of·priority·filtering.</p><p>The·<code·class="inline">from</code>,·<code·class="inline">to</code>,·and·<code·class="inline">message</code>·parameters·are·exactly·what·they·sound·like.
142 <code·class="inline">from</code>·and·<code·class="inline">to</code>·are·visualized·in·the·<code·class="inline">Viewer</code>·as·&quot;lifelines&quot;,·with·the·message142 <code·class="inline">from</code>·and·<code·class="inline">to</code>·are·visualized·in·the·<code·class="inline">Viewer</code>·as·&quot;lifelines&quot;,·with·the·message
143 passing·from·one·to·the·other.·If·<code·class="inline">from</code>·and·<code·class="inline">to</code>·are·the·same·value,·then·it·is143 passing·from·one·to·the·other.·If·<code·class="inline">from</code>·and·<code·class="inline">to</code>·are·the·same·value,·then·it·is
144 displayed·next·to·the·lifeline·as·an·&quot;action&quot;.·The·<code·class="inline">extra_stuff</code>value·is·simply144 displayed·next·to·the·lifeline·as·an·&quot;action&quot;.·The·<code·class="inline">extra_stuff</code>value·is·simply
145 data·that·you·can·attach·that·will·be·displayed·when·someone·actually·clicks·on145 data·that·you·can·attach·that·will·be·displayed·when·someone·actually·clicks·on
146 the·action·or·message·in·the·<code·class="inline">Viewer</code>·window.</p><p>The·module·<code·class="inline">et/examples/et_display_demo.erl</code>·illustrates·how·it·can·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">146 the·action·or·message·in·the·<code·class="inline">Viewer</code>·window.</p><p>The·module·<code·class="inline">et/examples/et_display_demo.erl</code>·illustrates·how·it·can·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">
147 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8799400386-1">(</span><span·class="ss">et_display_demo</span><span·class="p"·data-group-id="8799400386-1">)</span><span·class="p">.</span><span·class="w">147 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7855176448-1">(</span><span·class="ss">et_display_demo</span><span·class="p"·data-group-id="7855176448-1">)</span><span·class="p">.</span><span·class="w">
148 </span><span·class="w">148 </span><span·class="w">
149 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8799400386-2">(</span><span·class="p"·data-group-id="8799400386-3">[</span><span·class="ss">test</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8799400386-3">]</span><span·class="p"·data-group-id="8799400386-2">)</span><span·class="p">.</span><span·class="w">149 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7855176448-2">(</span><span·class="p"·data-group-id="7855176448-3">[</span><span·class="ss">test</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7855176448-3">]</span><span·class="p"·data-group-id="7855176448-2">)</span><span·class="p">.</span><span·class="w">
  
150 </span><span·class="nf">test</span><span·class="p"·data-group-id="8799400386-4">(</span><span·class="p"·data-group-id="8799400386-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">150 </span><span·class="nf">test</span><span·class="p"·data-group-id="7855176448-4">(</span><span·class="p"·data-group-id="7855176448-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
151 ····</span><span·class="p"·data-group-id="8799400386-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Viewer</span><span·class="p"·data-group-id="8799400386-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·724,·SHA:·6fc4c8415cdc2785131afc38916ca144267b484e1b1b2844315e72b991342376·...·]-6">)</span><span·class="p">,</span><span·class="w">151 ····</span><span·class="p"·data-group-id="7855176448-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Viewer</span><span·class="p"·data-group-id="7855176448-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·724,·SHA:·5927c50f25b4cd5dd329da9adc8691608dee5e112444645f74e4eb9f723313e7·...·]-6">)</span><span·class="p">,</span><span·class="w">
152 ····</span><span·class="n">Drink</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8799400386-10">{</span><span·class="ss">drink</span><span·class="p">,</span><span·class="ss">iced_chai_latte</span><span·class="p"·data-group-id="8799400386-10">}</span><span·class="p">,</span><span·class="w">152 ····</span><span·class="n">Drink</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7855176448-10">{</span><span·class="ss">drink</span><span·class="p">,</span><span·class="ss">iced_chai_latte</span><span·class="p"·data-group-id="7855176448-10">}</span><span·class="p">,</span><span·class="w">
153 ····</span><span·class="n">Size</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8799400386-11">{</span><span·class="nb">size</span><span·class="p">,</span><span·class="ss">grande</span><span·class="p"·data-group-id="8799400386-11">}</span><span·class="p">,</span><span·class="w">153 ····</span><span·class="n">Size</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7855176448-11">{</span><span·class="nb">size</span><span·class="p">,</span><span·class="ss">grande</span><span·class="p"·data-group-id="7855176448-11">}</span><span·class="p">,</span><span·class="w">
154 ····</span><span·class="n">Milk</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8799400386-12">{</span><span·class="ss">milk</span><span·class="p">,</span><span·class="ss">whole</span><span·class="p"·data-group-id="8799400386-12">}</span><span·class="p">,</span><span·class="w">154 ····</span><span·class="n">Milk</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7855176448-12">{</span><span·class="ss">milk</span><span·class="p">,</span><span·class="ss">whole</span><span·class="p"·data-group-id="7855176448-12">}</span><span·class="p">,</span><span·class="w">
155 ····</span><span·class="n">Flavor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8799400386-13">{</span><span·class="ss">flavor</span><span·class="p">,</span><span·class="ss">vanilla</span><span·class="p"·data-group-id="8799400386-13">}</span><span·class="p">,</span><span·class="w">155 ····</span><span·class="n">Flavor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7855176448-13">{</span><span·class="ss">flavor</span><span·class="p">,</span><span·class="ss">vanilla</span><span·class="p"·data-group-id="7855176448-13">}</span><span·class="p">,</span><span·class="w">
156 ····</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">get_collector_pid</span><span·class="p"·data-group-id="8799400386-14">(</span><span·class="n">Viewer</span><span·class="p"·data-group-id="8799400386-14">)</span><span·class="p">,</span><span·class="w">156 ····</span><span·class="n">C</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">get_collector_pid</span><span·class="p"·data-group-id="7855176448-14">(</span><span·class="n">Viewer</span><span·class="p"·data-group-id="7855176448-14">)</span><span·class="p">,</span><span·class="w">
157 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-15">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">99</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">place[·...·truncated·by·diffoscope;·len:·369,·SHA:·cb6842652d75e001b1c603458e3b10e9cf2e946ae17f7b651e2d3c5ee343cdf2·...·]-15">)</span><span·class="p">,</span><span·class="w">157 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-15">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">99</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">place[·...·truncated·by·diffoscope;·len:·369,·SHA:·3bbda1fb87f54ae78856d1afbe6d5b493a72514741582a906ce628a819b3d243·...·]-15">)</span><span·class="p">,</span><span·class="w">
158 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-17">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="nb">register</span><span·class="p">,</span><span·class="ss">enter[·...·truncated·by·diffoscope;·len:·318,·SHA:·f3f261a3ac57a5f3df9c4ed4e04f8994f1c0d83ea4b3a334596993b2433cef93·...·]-17">)</span><span·class="p">,</span><span·class="w">158 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-17">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="nb">register</span><span·class="p">,</span><span·class="ss">enter[·...·truncated·by·diffoscope;·len:·318,·SHA:·fd0373885d986fa664a2bfb2740583f01c835bf8965d40ebab7130a93e57d4ad·...·]-17">)</span><span·class="p">,</span><span·class="w">
159 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-19">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="nb">register</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">give_[·...·truncated·by·diffoscope;·len:·114,·SHA:·c255f5bbcfdba1c891ce6cf4ae4bca18d9cd4c26303b0bd901acc6dc9180b2ec·...·]-19">)</span><span·class="p">,</span><span·class="w">159 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-19">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="nb">register</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">give_[·...·truncated·by·diffoscope;·len:·114,·SHA:·38a61fd767eec9e6268b7c13466325a8a736c0cfe3b2eb9be5e55c477bdd8130·...·]-19">)</span><span·class="p">,</span><span·class="w">
160 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-20">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">get_[·...·truncated·by·diffoscope;·len:·262,·SHA:·6ef00846791e8ddf43efd84b19dd1e8a3ffea6d149dd905059c3f578c7c8e4b7·...·]-20">)</span><span·class="p">,</span><span·class="w">160 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-20">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">get_[·...·truncated·by·diffoscope;·len:·262,·SHA:·2aa4e0590f1b3ad70e62843222ab4eb9014b4a02b4cda367e388cce91fcce2b2·...·]-20">)</span><span·class="p">,</span><span·class="w">
161 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-22">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">give[·...·truncated·by·diffoscope;·len:·184,·SHA:·1eefe618306e384c1626c5cace74a6226f7dddcc81b54c6e79f19d5779d66467·...·]-22">)</span><span·class="p">,</span><span·class="w">161 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-22">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">give[·...·truncated·by·diffoscope;·len:·184,·SHA:·6f0874d953eeb0392cf9f2055d3d006e717ea43b53594a4be89558753fad08c3·...·]-22">)</span><span·class="p">,</span><span·class="w">
162 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-24">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">90</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">reque[·...·truncated·by·diffoscope;·len:·117,·SHA:·13f122cd0ac209f000dfa47e744d915e34cb34d553fd3429f1eafc9c82dd2041·...·]-24">)</span><span·class="p">,</span><span·class="w">162 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-24">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">90</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">reque[·...·truncated·by·diffoscope;·len:·117,·SHA:·7c550cc278d37b40ebe078a92a633eca339f84412f00c00e61d6b0ec63113223·...·]-24">)</span><span·class="p">,</span><span·class="w">
163 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-25">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">90</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">pay_m[·...·truncated·by·diffoscope;·len:·113,·SHA:·7438086c300887d1b525868612ac6a76e1acb523ac2da38228ab91b036c56399·...·]-25">)</span><span·class="p">,</span><span·class="w">163 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-25">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">90</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">pay_m[·...·truncated·by·diffoscope;·len:·113,·SHA:·ea2bad5409e765afaede333f74813c5d53d8f04f651046b74fa472d393b5c6b7·...·]-25">)</span><span·class="p">,</span><span·class="w">
164 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-26">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">get_[·...·truncated·by·diffoscope;·len:·188,·SHA:·53c99f451ea2be55a64a3b37588a4441e16f4a9222e05859f8745919aca3be8c·...·]-26">)</span><span·class="p">,</span><span·class="w">164 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-26">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">get_[·...·truncated·by·diffoscope;·len:·188,·SHA:·36e4e7d56e5e4c2e74d914a0e8524310a06d2d07471da0794c01c1060b73b8f3·...·]-26">)</span><span·class="p">,</span><span·class="w">
165 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-28">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_[·...·truncated·by·diffoscope;·len:·215,·SHA:·ad9d7fafbf1e41af91633b0c447e72b4b125a1e8bba104fb3c765852dbad76ed·...·]-28">)</span><span·class="p">,</span><span·class="w">165 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-28">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_[·...·truncated·by·diffoscope;·len:·215,·SHA:·b30c2d4666bda6602e4ea3b7b992bca1b326efe5e5a343b2601f2bcba84c8314·...·]-28">)</span><span·class="p">,</span><span·class="w">
166 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-30">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_[·...·truncated·by·diffoscope;·len:·211,·SHA:·169f203fe3ae5666484c870cd4ce31d624b82315e20af4d14eba14cfc6d21f53·...·]-30">)</span><span·class="p">,</span><span·class="w">166 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-30">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_[·...·truncated·by·diffoscope;·len:·211,·SHA:·6641f672bf1b0569114dd41a8964f23bedea374fb6087730d265c84f4ba47129·...·]-30">)</span><span·class="p">,</span><span·class="w">
167 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-32">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_[·...·truncated·by·diffoscope;·len:·183,·SHA:·36641de308b13b2bccd6d316e91d48c735aadecf240aab3b7cb1e034f10e1be8·...·]-32">)</span><span·class="p">,</span><span·class="w">167 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-32">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_[·...·truncated·by·diffoscope;·len:·183,·SHA:·563ef111070de3f049bf24481e17f230ceac2d882092279d104309d2aef8ade0·...·]-32">)</span><span·class="p">,</span><span·class="w">
168 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-34">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">swir[·...·truncated·by·diffoscope;·len:·181,·SHA:·b6664ae400d57758bcab030482dc910aba16eb7793080577eee2aada009618bb·...·]-34">)</span><span·class="p">,</span><span·class="w">168 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-34">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">swir[·...·truncated·by·diffoscope;·len:·181,·SHA:·14f58bc93fd1203f6613f0b569b653eb71b7493a726634f283dbc2faf24ddcd3·...·]-34">)</span><span·class="p">,</span><span·class="w">
169 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="8799400386-36">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">give_[·...·truncated·by·diffoscope;·len:·273,·SHA:·e5fd3d56f3fe276cc04523f37858ae60a27d157a5a8fb15e5ef1048e4b789d3a·...·]-36">)</span><span·class="p">,</span><span·class="w">169 ····</span><span·class="nc">et_collector</span><span·class="p">:</span><span·class="nf">report_event</span><span·class="p"·data-group-id="7855176448-36">(</span><span·class="n">C</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">give_[·...·truncated·by·diffoscope;·len:·273,·SHA:·c978dc803d222f0fda4b3845254b3422b8b0af8e310778f0de9a6430cd08acbd·...·]-36">)</span><span·class="p">,</span><span·class="w">
170 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>When·you·run·the·<code·class="inline">et_display_demo:test().</code>·function·in·the·example·above,·the170 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>When·you·run·the·<code·class="inline">et_display_demo:test().</code>·function·in·the·example·above,·the
171 <code·class="inline">Viewer</code>·window·will·look·like·this:</p><p><img·src="assets/coffee_order.png"·alt="Screenshot·of·the·Viewer·window"·title="Screenshot·of·the·Viewer·window"/></p><h2·id="four-modules"·class="section-heading">171 <code·class="inline">Viewer</code>·window·will·look·like·this:</p><p><img·src="assets/coffee_order.png"·alt="Screenshot·of·the·Viewer·window"·title="Screenshot·of·the·Viewer·window"/></p><h2·id="four-modules"·class="section-heading">
172 ··<a·href="#four-modules"·class="hover-link">172 ··<a·href="#four-modules"·class="hover-link">
173 ····<i·class="ri-link-m"·aria-hidden="true"></i>173 ····<i·class="ri-link-m"·aria-hidden="true"></i>
174 ··</a>174 ··</a>
175 ··<span·class="text">Four·Modules</span>175 ··<span·class="text">Four·Modules</span>
176 </h2>176 </h2>
Offset 195, 15 lines modifiedOffset 195, 15 lines modified
195 <code·class="inline">Tracer</code>·of·the·<code·class="inline">Raw·Trace·Data</code>.</p><p>Erlang·tracing·is·a·seething·pile·of·pain·that·involves·reasonably·complex195 <code·class="inline">Tracer</code>·of·the·<code·class="inline">Raw·Trace·Data</code>.</p><p>Erlang·tracing·is·a·seething·pile·of·pain·that·involves·reasonably·complex
196 knowledge·of·clever·ports,·tracing·return·formats,·and·specialized·tracing196 knowledge·of·clever·ports,·tracing·return·formats,·and·specialized·tracing
197 <code·class="inline">MatchSpecs</code>·(which·are·really·their·own·special·kind·of·hell).·The·tracing197 <code·class="inline">MatchSpecs</code>·(which·are·really·their·own·special·kind·of·hell).·The·tracing
198 mechanism·is·very·powerful·indeed,·but·it·can·be·hard·to·grasp.</p><p>Luckily·there·is·a·simplified·way·to·start·tracing·of·<a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·function198 mechanism·is·very·powerful·indeed,·but·it·can·be·hard·to·grasp.</p><p>Luckily·there·is·a·simplified·way·to·start·tracing·of·<a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·function
199 calls.·The·idea·is·that·you·should·instrument·your·code·with·calls·to199 calls.·The·idea·is·that·you·should·instrument·your·code·with·calls·to
200 <a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·in·strategic·places·where·you·have·interesting·information200 <a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·in·strategic·places·where·you·have·interesting·information
201 available·in·your·program.·Then·you·just·start·the·<code·class="inline">Collector</code>·with·global201 available·in·your·program.·Then·you·just·start·the·<code·class="inline">Collector</code>·with·global
202 tracing·enabled:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="1010155203-1">(</span><span·class="p"·data-group-id="1010155203-2">[</span><span·class="p"·data-group-id="1010155203-3">{</span><span·class="ss">trace_global</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·553,·SHA:·fba20c8a67e02def1aad5bd8bd1e57e7388296913f2d63f68ce8ea42c68863cf·...·]-1">)</span><span·class="p">.</span></code></pre><p>This·will·start·a·<code·class="inline">Collector</code>,·a·<code·class="inline">Viewer</code>·and·also·start·the·tracing·of202 tracing·enabled:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="3977429737-1">(</span><span·class="p"·data-group-id="3977429737-2">[</span><span·class="p"·data-group-id="3977429737-3">{</span><span·class="ss">trace_global</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·553,·SHA:·bff54b212cbed3d17f2d0c19e2cdf0a5c6c09c2340ae4e3563a37ce67f01418c·...·]-1">)</span><span·class="p">.</span></code></pre><p>This·will·start·a·<code·class="inline">Collector</code>,·a·<code·class="inline">Viewer</code>·and·also·start·the·tracing·of
203 <a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·function·calls.·The·<code·class="inline">Raw·Trace·Data</code>·is·collected·by·the203 <a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·function·calls.·The·<code·class="inline">Raw·Trace·Data</code>·is·collected·by·the
204 <code·class="inline">Collector</code>·and·a·view·of·it·is·displayed·on·the·screen·by·the·<code·class="inline">Viewer</code>.·You·can204 <code·class="inline">Collector</code>·and·a·view·of·it·is·displayed·on·the·screen·by·the·<code·class="inline">Viewer</code>.·You·can
205 define·your·own·&quot;views&quot;·of·the·data·by·implementing·your·own·<code·class="inline">Filter</code>·functions205 define·your·own·&quot;views&quot;·of·the·data·by·implementing·your·own·<code·class="inline">Filter</code>·functions
206 and·register·them·in·the·<code·class="inline">Viewer</code>.</p><h2·id="the-collector-and-viewer"·class="section-heading">206 and·register·them·in·the·<code·class="inline">Viewer</code>.</p><h2·id="the-collector-and-viewer"·class="section-heading">
207 ··<a·href="#the-collector-and-viewer"·class="hover-link">207 ··<a·href="#the-collector-and-viewer"·class="hover-link">
208 ····<i·class="ri-link-m"·aria-hidden="true"></i>208 ····<i·class="ri-link-m"·aria-hidden="true"></i>
209 ··</a>209 ··</a>
Offset 251, 44 lines modifiedOffset 251, 44 lines modified
251 ··</a>251 ··</a>
252 ··<span·class="text">How·To·Put·It·Together</span>252 ··<span·class="text">How·To·Put·It·Together</span>
253 </h2>253 </h2>
254 <p>The·<code·class="inline">Collector</code>·automatically·registers·itself·to·listen·for·trace·<code·class="inline">Events</code>,·so254 <p>The·<code·class="inline">Collector</code>·automatically·registers·itself·to·listen·for·trace·<code·class="inline">Events</code>,·so
255 all·you·have·to·do·is·enable·them.</p><p>For·those·people·who·want·to·do·general·tracing,·consult·the·<code·class="inline">dbg</code>·module·on·how255 all·you·have·to·do·is·enable·them.</p><p>For·those·people·who·want·to·do·general·tracing,·consult·the·<code·class="inline">dbg</code>·module·on·how
256 to·trace·whatever·you're·interested·in·and·let·it·work·its·magic.·If·you·just256 to·trace·whatever·you're·interested·in·and·let·it·work·its·magic.·If·you·just
257 want·<a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·to·work,·do·the·following:</p><ol><li>Create·a·<code·class="inline">Collector</code></li><li>Create·a·<code·class="inline">Viewer</code>·(this·can·do·step·#1·for·you)</li><li>Turn·on·and·pare·down·debugging</li></ol><p>The·module·<code·class="inline">et/examples/et_trace_demo.erl</code>·achieves·this.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">257 want·<a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·to·work,·do·the·following:</p><ol><li>Create·a·<code·class="inline">Collector</code></li><li>Create·a·<code·class="inline">Viewer</code>·(this·can·do·step·#1·for·you)</li><li>Turn·on·and·pare·down·debugging</li></ol><p>The·module·<code·class="inline">et/examples/et_trace_demo.erl</code>·achieves·this.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">
258 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8273361925-1">(</span><span·class="ss">et_trace_demo</span><span·class="p"·data-group-id="8273361925-1">)</span><span·class="p">.</span><span·class="w">258 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1076782922-1">(</span><span·class="ss">et_trace_demo</span><span·class="p"·data-group-id="1076782922-1">)</span><span·class="p">.</span><span·class="w">
259 </span><span·class="w">259 </span><span·class="w">
260 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8273361925-2">(</span><span·class="p"·data-group-id="8273361925-3">[</span><span·class="ss">test</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="8273361925-3">]</span><span·class="p"·data-group-id="8273361925-2">)</span><span·class="p">.</span><span·class="w">260 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1076782922-2">(</span><span·class="p"·data-group-id="1076782922-3">[</span><span·class="ss">test</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1076782922-3">]</span><span·class="p"·data-group-id="1076782922-2">)</span><span·class="p">.</span><span·class="w">
  
261 </span><span·class="nf">test</span><span·class="p"·data-group-id="8273361925-4">(</span><span·class="p"·data-group-id="8273361925-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">261 </span><span·class="nf">test</span><span·class="p"·data-group-id="1076782922-4">(</span><span·class="p"·data-group-id="1076782922-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
262 ····</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8273361925-5">(</span><span·class="p"·data-group-id="8273361925-6">[</span><span·class="w">262 ····</span><span·class="nc">et_viewer</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="1076782922-5">(</span><span·class="p"·data-group-id="1076782922-6">[</span><span·class="w">
263 ········</span><span·class="p"·data-group-id="8273361925-7">{</span><span·class="ss">title</span><span·class="p">,</span><span·class="s">&quot;Coffee·Order&quot;</span><span·class="p"·data-group-id="8273361925-7">}</span><span·class="p">,</span><span·class="w">263 ········</span><span·class="p"·data-group-id="1076782922-7">{</span><span·class="ss">title</span><span·class="p">,</span><span·class="s">&quot;Coffee·Order&quot;</span><span·class="p"·data-group-id="1076782922-7">}</span><span·class="p">,</span><span·class="w">
264 ········</span><span·class="p"·data-group-id="8273361925-8">{</span><span·class="ss">trace_global</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="8273361925-8">}</span><span·class="p">,</span><span·class="w">264 ········</span><span·class="p"·data-group-id="1076782922-8">{</span><span·class="ss">trace_global</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="1076782922-8">}</span><span·class="p">,</span><span·class="w">
265 ········</span><span·class="p"·data-group-id="8273361925-9">{</span><span·class="nb">trace_pattern</span><span·class="p">,</span><span·class="p"·data-group-id="8273361925-10">{</span><span·class="ss">et</span><span·class="p">,</span><span·class="ss">max</span><span·class="p"·data-group-id="8273361925-[·...·truncated·by·diffoscope;·len:·53,·SHA:·e109f13c6c0f15d7fbfad67ad2961274d733d1d6495871c0c2a13983b0ea0a74·...·]-9">}</span><span·class="p">,</span><span·class="w">265 ········</span><span·class="p"·data-group-id="1076782922-9">{</span><span·class="nb">trace_pattern</span><span·class="p">,</span><span·class="p"·data-group-id="1076782922-10">{</span><span·class="ss">et</span><span·class="p">,</span><span·class="ss">max</span><span·class="p"·data-group-id="1076782922-[·...·truncated·by·diffoscope;·len:·53,·SHA:·f2fddcce38f02440c9fb9ac7afc11e4c7a339c80f1796f42360eca9e4532416d·...·]-9">}</span><span·class="p">,</span><span·class="w">
266 ········</span><span·class="p"·data-group-id="8273361925-11">{</span><span·class="ss">max_actors</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="8273361925-11">}</span><span·class="w">266 ········</span><span·class="p"·data-group-id="1076782922-11">{</span><span·class="ss">max_actors</span><span·class="p">,</span><span·class="mi">10</span><span·class="p"·data-group-id="1076782922-11">}</span><span·class="w">
267 ······</span><span·class="p"·data-group-id="8273361925-6">]</span><span·class="p"·data-group-id="8273361925-5">)</span><span·class="p">,</span><span·class="w">267 ······</span><span·class="p"·data-group-id="1076782922-6">]</span><span·class="p"·data-group-id="1076782922-5">)</span><span·class="p">,</span><span·class="w">
268 ······</span><span·class="c1">%%·dbg:p(all,call),</span><span·class="w">268 ······</span><span·class="c1">%%·dbg:p(all,call),</span><span·class="w">
269 ······</span><span·class="c1">%%·dbg:tpl(et,·trace_me,·5,·[]),</span><span·class="w">269 ······</span><span·class="c1">%%·dbg:tpl(et,·trace_me,·5,·[]),</span><span·class="w">
270 ······</span><span·class="n">Drink</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8273361925-12">{</span><span·class="ss">drink</span><span·class="p">,</span><span·class="ss">iced_chai_latte</span><span·class="p"·data-group-id="8273361925-12">}</span><span·class="p">,</span><span·class="w">270 ······</span><span·class="n">Drink</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1076782922-12">{</span><span·class="ss">drink</span><span·class="p">,</span><span·class="ss">iced_chai_latte</span><span·class="p"·data-group-id="1076782922-12">}</span><span·class="p">,</span><span·class="w">
271 ······</span><span·class="n">Size</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8273361925-13">{</span><span·class="nb">size</span><span·class="p">,</span><span·class="ss">grande</span><span·class="p"·data-group-id="8273361925-13">}</span><span·class="p">,</span><span·class="w">271 ······</span><span·class="n">Size</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1076782922-13">{</span><span·class="nb">size</span><span·class="p">,</span><span·class="ss">grande</span><span·class="p"·data-group-id="1076782922-13">}</span><span·class="p">,</span><span·class="w">
272 ······</span><span·class="n">Milk</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8273361925-14">{</span><span·class="ss">milk</span><span·class="p">,</span><span·class="ss">whole</span><span·class="p"·data-group-id="8273361925-14">}</span><span·class="p">,</span><span·class="w">272 ······</span><span·class="n">Milk</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1076782922-14">{</span><span·class="ss">milk</span><span·class="p">,</span><span·class="ss">whole</span><span·class="p"·data-group-id="1076782922-14">}</span><span·class="p">,</span><span·class="w">
273 ······</span><span·class="n">Flavor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8273361925-15">{</span><span·class="ss">flavor</span><span·class="p">,</span><span·class="ss">vanilla</span><span·class="p"·data-group-id="8273361925-15">}</span><span·class="p">,</span><span·class="w">273 ······</span><span·class="n">Flavor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1076782922-15">{</span><span·class="ss">flavor</span><span·class="p">,</span><span·class="ss">vanilla</span><span·class="p"·data-group-id="1076782922-15">}</span><span·class="p">,</span><span·class="w">
274 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-16">(</span><span·class="mi">99</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">place_order</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·321,·SHA:·e394eb72382c31f2ee57826dcdc57fbd1467a734852bd448c79aa4e9a6e7a0d7·...·]-16">)</span><span·class="p">,</span><span·class="w">274 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-16">(</span><span·class="mi">99</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">place_order</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·321,·SHA:·075685d132b68ec591879d95b524946ea9eabe412575d14c1409acd4106a505d·...·]-16">)</span><span·class="p">,</span><span·class="w">
275 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-18">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="nb">register</span><span·class="p">,</span><span·class="ss">enter_order</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·270,·SHA:·c77237addeec76cf3469e0610b830d2b68b05f078cacfafe89a7ace868a7835e·...·]-18">)</span><span·class="p">,</span><span·class="w">275 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-18">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="nb">register</span><span·class="p">,</span><span·class="ss">enter_order</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·270,·SHA:·c65bfee5beb18fc2416405653c5ad23f07a58b2beb0d87f7dcc59dea10d85ae9·...·]-18">)</span><span·class="p">,</span><span·class="w">
276 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-20">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="nb">register</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">give_total</span><span·class="p">,</span><span·class=[·...·truncated·by·diffoscope;·len:·66,·SHA:·9aa8f7d433097072cc192f4aa104d92506422ce48640c2b126936d7394b801fe·...·]-20">)</span><span·class="p">,</span><span·class="w">276 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-20">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="nb">register</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">give_total</span><span·class="p">,</span><span·class=[·...·truncated·by·diffoscope;·len:·66,·SHA:·c84347ca4759397d6dbea94249247b5cca2348d2043ccdd4b40eba2cc89d4c2a·...·]-20">)</span><span·class="p">,</span><span·class="w">
277 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-21">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">get_cup</span><span·class="p">,</span><span·class="p[·...·truncated·by·diffoscope;·len:·214,·SHA:·e5043c81d8f22634a797a2200df98e630c0a1bc5a66b2407624d75bd2be1200a·...·]-21">)</span><span·class="p">,</span><span·class="w">277 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-21">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">get_cup</span><span·class="p">,</span><span·class="p[·...·truncated·by·diffoscope;·len:·214,·SHA:·128be2e0c4bbe2110891e1b936e47d33acddd92eb1ac956cd5e0bcfec505ec4d·...·]-21">)</span><span·class="p">,</span><span·class="w">
278 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-23">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">give_cup</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·136,·SHA:·be1dc3c9e5c3d8101030b11e2a39d488a2fe89ad86cfb83d9f06091cd0d583fe·...·]-23">)</span><span·class="p">,</span><span·class="w">278 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-23">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">give_cup</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·136,·SHA:·eff0732273fde5d3641af5da8efe0736d6020280e1b4f92aafbfdf401c5ec326·...·]-23">)</span><span·class="p">,</span><span·class="w">
279 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-25">(</span><span·class="mi">90</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">request_money</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·69,·SHA:·9e945efe0153241da41e2addd3114b4d67c9edc1aee0fc8a5b8865f1b8d19d6f·...·]-25">)</span><span·class="p">,</span><span·class="w">279 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-25">(</span><span·class="mi">90</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">request_money</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·69,·SHA:·8b55abd081f3d2172dda7c933f50a0f58a7a328d7a7d77397a7929d6ec5c668f·...·]-25">)</span><span·class="p">,</span><span·class="w">
280 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-26">(</span><span·class="mi">90</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">pay_money</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·65,·SHA:·4bbe2010b0b42d4d2a3611d1914b34d0cfba0d9cb312233e37ab27b2a222711e·...·]-26">)</span><span·class="p">,</span><span·class="w">280 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-26">(</span><span·class="mi">90</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">barrista1</span><span·class="p">,</span><span·class="ss">pay_money</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·65,·SHA:·9e482b892e2887cca23f8c9b47be29cb31928dd0d10bf9542d788513674007f1·...·]-26">)</span><span·class="p">,</span><span·class="w">
281 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-27">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">get_chai_mix</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·140,·SHA:·d740bc6b439ac7db09a37601d4d1e7b792524fdb963e09a06885e2323826c8eb·...·]-27">)</span><span·class="p">,</span><span·class="w">281 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-27">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">get_chai_mix</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·140,·SHA:·3788163e8feceabaac9f1bbad491d893fdfde0114b30b5370a6698f2301e0e9d·...·]-27">)</span><span·class="p">,</span><span·class="w">
282 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-29">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_flavor</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·167,·SHA:·ce0e93fcc609c04fb6dc1a74aba7bde9c68ed0cfa643ee8c407a6f9f686dcfa5·...·]-29">)</span><span·class="p">,</span><span·class="w">282 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-29">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_flavor</span><span·class="p">,</span><span·class[·...·truncated·by·diffoscope;·len:·167,·SHA:·e2740c6d4d420e0187d6ec4fe1ff7a4f7a710abe61490e73ec0947f2a2dec02e·...·]-29">)</span><span·class="p">,</span><span·class="w">
283 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-31">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_milk</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·163,·SHA:·5854a4b1cc0f04fb0bdce8015a757222a7558ac569cba8e6b8b275937776449f·...·]-31">)</span><span·class="p">,</span><span·class="w">283 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-31">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_milk</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·163,·SHA:·4d142b4aa579c9d248829005fd94a88877191a31fe6902c7438f3eaef2474af9·...·]-31">)</span><span·class="p">,</span><span·class="w">
284 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-33">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_ice</span><span·class="p">,</span><span·class="p"·data-group-id="8273361925-34">[</span><span·class="p"·data-group-id="8273361925-34">]</span><span·class="p"·data-group-id="8273361925-33">)</span><span·class="p">,</span><span·class="w"> 
285 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-35">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">swirl</span><span·class="p">,</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·136,·SHA:·08781882838dcd0d00a04b8f31288a997631a105d1edaf86e566ef704d315a95·...·]">)</span><span·class="p">,</span><span·class="w">284 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-33">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">add_ice</span><span·class="p">,</span><span·class="p[·...·truncated·by·diffoscope;·len:·138,·SHA:·557ea5050da3130b38aed6211ab3a7517f3d65ce54b03f7737322cb0b1bcb496·...·]">)</span><span·class="p">,</span><span·class="w">
 285 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-35">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">swirl</span><span·class="p">,</span><span·class="p"·data-group-id="1076782922-36">[</span><span·class="p"·data-group-id="1076782922-36">]</span><span·class="p"·data-group-id="1076782922-35">)</span><span·class="p">,</span><span·class="w">
286 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="8273361925-37">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">give_tasty_beverage</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·225,·SHA:·1d040e5285cc59c7f722f4c2b7712944fc2f07c9558b21a79c1de20c18685a35·...·]-37">)</span><span·class="p">,</span><span·class="w">286 ······</span><span·class="nc">et</span><span·class="p">:</span><span·class="nf">trace_me</span><span·class="p"·data-group-id="1076782922-37">(</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">barrista2</span><span·class="p">,</span><span·class="ss">customer</span><span·class="p">,</span><span·class="ss">give_tasty_beverage</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·225,·SHA:·754b259174e09666bc820188997774ea6f5696fe0457a1953cffb8e35a0c1e60·...·]-37">)</span><span·class="p">,</span><span·class="w">
287 ······</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>Running·through·the·above,·the·most·important·points·are:</p><ul><li>Turn·on·global·tracing</li><li>Set·a·<code·class="inline">Trace·Pattern</code></li><li>Tell·<code·class="inline">dbg</code>·to·trace·function·Calls</li><li>Tell·it·specifically·to·trace·the·<a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·function</li></ul><p>When·you·run·the·<code·class="inline">et_trace_demo:test()</code>·function·above,·the·<code·class="inline">Viewer</code>·window·will287 ······</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>Running·through·the·above,·the·most·important·points·are:</p><ul><li>Turn·on·global·tracing</li><li>Set·a·<code·class="inline">Trace·Pattern</code></li><li>Tell·<code·class="inline">dbg</code>·to·trace·function·Calls</li><li>Tell·it·specifically·to·trace·the·<a·href="et.html#trace_me/5"><code·class="inline">et:trace_me/5</code></a>·function</li></ul><p>When·you·run·the·<code·class="inline">et_trace_demo:test()</code>·function·above,·the·<code·class="inline">Viewer</code>·window·will
288 look·like·this·screenshot:</p><p><img·src="assets/coffee_order.png"·alt="Screenshot·of·the·Viewer·window"·title="Screenshot·of·the·Viewer·window"/></p>288 look·like·this·screenshot:</p><p><img·src="assets/coffee_order.png"·alt="Screenshot·of·the·Viewer·window"·title="Screenshot·of·the·Viewer·window"/></p>
289 </div>289 </div>
  
290 <div·class="bottom-actions"·id="bottom-actions">290 <div·class="bottom-actions"·id="bottom-actions">
291 ··<div·class="bottom-actions-item">291 ··<div·class="bottom-actions-item">
  
Offset 333, 15 lines modifiedOffset 333, 15 lines modified
333 ······<p·class="built-using">333 ······<p·class="built-using">
334 ········Built·using334 ········Built·using
335 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the335 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
336 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>336 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
337 ······</p>337 ······</p>
338 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>338 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
339 ····</footer>339 ····</footer>
340 ··</div>340 ··</div>
341 </main>341 </main>
342 </div>342 </div>
343 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>343 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
344 <script>344 <script>
345 ··document.addEventListener("DOMContentLoaded",·function·()·{345 ··document.addEventListener("DOMContentLoaded",·function·()·{
Max diff block lines reached; -1/59775 bytes (-0.00%) of diff not shown.
665 B
html2text {}
Max HTML report size reached
1.38 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/et_viewer.html
    
Offset 566, 15 lines modifiedOffset 566, 15 lines modified
566 ······<p·class="built-using">566 ······<p·class="built-using">
567 ········Built·using567 ········Built·using
568 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the568 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
569 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>569 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
570 ······</p>570 ······</p>
571 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>571 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
572 ····</footer>572 ····</footer>
573 ··</div>573 ··</div>
574 </main>574 </main>
575 </div>575 </div>
576 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>576 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
577 <script>577 <script>
578 ··document.addEventListener("DOMContentLoaded",·function·()·{578 ··document.addEventListener("DOMContentLoaded",·function·()·{
580 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/notes.html
    
Offset 546, 15 lines modifiedOffset 546, 15 lines modified
546 ······<p·class="built-using">546 ······<p·class="built-using">
547 ········Built·using547 ········Built·using
548 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the548 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
549 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>549 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
550 ······</p>550 ······</p>
551 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>551 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
552 ····</footer>552 ····</footer>
553 ··</div>553 ··</div>
554 </main>554 </main>
555 </div>555 </div>
556 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>556 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
557 <script>557 <script>
558 ··document.addEventListener("DOMContentLoaded",·function·()·{558 ··document.addEventListener("DOMContentLoaded",·function·()·{
734 B
html2text {}
Max HTML report size reached
1.26 KB
./usr/share/doc/erlang-doc/html/lib/et-1.7.1/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
459 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/api-reference.html
    
Offset 191, 15 lines modifiedOffset 191, 15 lines modified
191 ······<p·class="built-using">191 ······<p·class="built-using">
192 ········Built·using192 ········Built·using
193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
195 ······</p>195 ······</p>
196 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>196 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
197 ····</footer>197 ····</footer>
198 ··</div>198 ··</div>
199 </main>199 </main>
200 </div>200 </div>
201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
202 <script>202 <script>
203 ··document.addEventListener("DOMContentLoaded",·function·()·{203 ··document.addEventListener("DOMContentLoaded",·function·()·{
702 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/chapter.html
    
Offset 790, 15 lines modifiedOffset 790, 15 lines modified
790 ······<p·class="built-using">790 ······<p·class="built-using">
791 ········Built·using791 ········Built·using
792 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the792 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
793 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>793 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
794 ······</p>794 ······</p>
795 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>795 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
796 ····</footer>796 ····</footer>
797 ··</div>797 ··</div>
798 </main>798 </main>
799 </div>799 </div>
800 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>800 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
801 <script>801 <script>
802 ··document.addEventListener("DOMContentLoaded",·function·()·{802 ··document.addEventListener("DOMContentLoaded",·function·()·{
754 B
html2text {}
Max HTML report size reached
42.5 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/eunit.epub
2.23 KB
zipinfo {}
Max HTML report size reached
39.0 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
1.2 KB
OEBPS/content.opf
1.16 KB
OEBPS/content.opf
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/eunit.html
    
Offset 346, 15 lines modifiedOffset 346, 15 lines modified
346 ······<p·class="built-using">346 ······<p·class="built-using">
347 ········Built·using347 ········Built·using
348 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the348 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
349 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>349 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
350 ······</p>350 ······</p>
351 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>351 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
352 ····</footer>352 ····</footer>
353 ··</div>353 ··</div>
354 </main>354 </main>
355 </div>355 </div>
356 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>356 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
357 <script>357 <script>
358 ··document.addEventListener("DOMContentLoaded",·function·()·{358 ··document.addEventListener("DOMContentLoaded",·function·()·{
700 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/eunit_surefire.html
    
Offset 154, 15 lines modifiedOffset 154, 15 lines modified
154 ······<p·class="built-using">154 ······<p·class="built-using">
155 ········Built·using155 ········Built·using
156 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the156 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
157 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>157 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
158 ······</p>158 ······</p>
159 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>159 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
160 ····</footer>160 ····</footer>
161 ··</div>161 ··</div>
162 </main>162 </main>
163 </div>163 </div>
164 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>164 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
165 <script>165 <script>
166 ··document.addEventListener("DOMContentLoaded",·function·()·{166 ··document.addEventListener("DOMContentLoaded",·function·()·{
645 B
html2text {}
Max HTML report size reached
1.66 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/notes.html
    
Offset 769, 15 lines modifiedOffset 769, 15 lines modified
769 ······<p·class="built-using">769 ······<p·class="built-using">
770 ········Built·using770 ········Built·using
771 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the771 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
772 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>772 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
773 ······</p>773 ······</p>
774 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>774 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
775 ····</footer>775 ····</footer>
776 ··</div>776 ··</div>
777 </main>777 </main>
778 </div>778 </div>
779 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>779 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
780 <script>780 <script>
781 ··document.addEventListener("DOMContentLoaded",·function·()·{781 ··document.addEventListener("DOMContentLoaded",·function·()·{
865 B
html2text {}
Max HTML report size reached
1.27 KB
./usr/share/doc/erlang-doc/html/lib/eunit-2.9.1/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
462 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/api-reference.html
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ······<p·class="built-using">181 ······<p·class="built-using">
182 ········Built·using182 ········Built·using
183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
185 ······</p>185 ······</p>
186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
187 ····</footer>187 ····</footer>
188 ··</div>188 ··</div>
189 </main>189 </main>
190 </div>190 </div>
191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
192 <script>192 <script>
193 ··document.addEventListener("DOMContentLoaded",·function·()·{193 ··document.addEventListener("DOMContentLoaded",·function·()·{
626 B
html2text {}
Max HTML report size reached
39.3 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/ftp.epub
2.11 KB
zipinfo {}
Max HTML report size reached
23.7 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
12.3 KB
OEBPS/ftp_client.xhtml
Max HTML report size reached
1.21 KB
OEBPS/content.opf
1.17 KB
OEBPS/content.opf
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/ftp.html
    
Offset 1799, 15 lines modifiedOffset 1799, 15 lines modified
1799 ······<p·class="built-using">1799 ······<p·class="built-using">
1800 ········Built·using1800 ········Built·using
1801 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1801 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1802 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1802 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1803 ······</p>1803 ······</p>
1804 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1804 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1805 ····</footer>1805 ····</footer>
1806 ··</div>1806 ··</div>
1807 </main>1807 </main>
1808 </div>1808 </div>
1809 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1809 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1810 <script>1810 <script>
1811 ··document.addEventListener("DOMContentLoaded",·function·()·{1811 ··document.addEventListener("DOMContentLoaded",·function·()·{
658 B
html2text {}
Max HTML report size reached
13.7 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/ftp_client.html
    
Offset 133, 33 lines modifiedOffset 133, 33 lines modified
133 </h2>133 </h2>
134 <p>FTP·clients·are·considered·to·be·rather·temporary.·Thus,·they·are·only·started134 <p>FTP·clients·are·considered·to·be·rather·temporary.·Thus,·they·are·only·started
135 and·stopped·during·runtime·and·cannot·be·started·at·application·startup.·The·FTP135 and·stopped·during·runtime·and·cannot·be·started·at·application·startup.·The·FTP
136 client·API·is·designed·to·allow·some·functions·to·return·intermediate·results.136 client·API·is·designed·to·allow·some·functions·to·return·intermediate·results.
137 This·implies·that·only·the·process·that·started·the·FTP·client·can·access·it137 This·implies·that·only·the·process·that·started·the·FTP·client·can·access·it
138 with·preserved·sane·semantics.·If·the·process·that·started·the·FTP·session·dies,138 with·preserved·sane·semantics.·If·the·process·that·started·the·FTP·session·dies,
139 the·FTP·client·process·terminates.</p><p>The·client·supports·IPv6·as·long·as·the·underlying·mechanisms·also·do·so.</p><p>The·following·is·a·simple·example·of·an·FTP·session,·where·the·user·<code·class="inline">guest</code>·with139 the·FTP·client·process·terminates.</p><p>The·client·supports·IPv6·as·long·as·the·underlying·mechanisms·also·do·so.</p><p>The·following·is·a·simple·example·of·an·FTP·session,·where·the·user·<code·class="inline">guest</code>·with
140 password·<code·class="inline">password</code>·logs·on·to·the·remote·host·<code·class="inline">erlang.org</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="6830750492-1">(</span><span·class="p"·data-group-id="6830750492-1">)</span><span·class="p">.</span><span·class="w">140 password·<code·class="inline">password</code>·logs·on·to·the·remote·host·<code·class="inline">erlang.org</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8994532619-1">(</span><span·class="p"·data-group-id="8994532619-1">)</span><span·class="p">.</span><span·class="w">
141 ······</span><span·class="ss">ok</span><span·class="w">141 ······</span><span·class="ss">ok</span><span·class="w">
142 ······</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6830750492-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="6830750492-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·497,·SHA:·95e6660a6ac5a25123dc6a4635942ad75ef574bd29895291c8fb3b33922ebf5e·...·]-3">)</span><span·class="p">.</span><span·class="w">142 ······</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8994532619-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="8994532619-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·497,·SHA:·f035ee3952ad602ebcecc284256a7c874476d9e3b7d20e326c2c892d53746ae8·...·]-3">)</span><span·class="p">.</span><span·class="w">
143 ······</span><span·class="p"·data-group-id="6830750492-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.22</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="6830750492-6">}</span><span·class="w">143 ······</span><span·class="p"·data-group-id="8994532619-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.22</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="8994532619-6">}</span><span·class="w">
144 ······</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">user</span><span·class="p"·data-group-id="6830750492-7">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;guest&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;password&quot;</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·5bd43eb17f2c6d71fab854d07fbf0b78fdb329e0adfc0505a78cdd8fdcc5a453·...·]-7">)</span><span·class="p">.</span><span·class="w">144 ······</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">user</span><span·class="p"·data-group-id="8994532619-7">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;guest&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;password&quot;</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·809a463cc9d11be3a82a7d586f5c33e6812121f747d1f7652c72c9b0011102e6·...·]-7">)</span><span·class="p">.</span><span·class="w">
145 ······</span><span·class="ss">ok</span><span·class="w">145 ······</span><span·class="ss">ok</span><span·class="w">
146 ······</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">pwd</span><span·class="p"·data-group-id="6830750492-8">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="6830750492-8">)</span><span·class="p">.</span><span·class="w">146 ······</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">pwd</span><span·class="p"·data-group-id="8994532619-8">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="8994532619-8">)</span><span·class="p">.</span><span·class="w">
147 ······</span><span·class="p"·data-group-id="6830750492-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/guest&quot;</span><span·class="p"·data-group-id="6830750492-9">}</span><span·class="w">147 ······</span><span·class="p"·data-group-id="8994532619-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/guest&quot;</span><span·class="p"·data-group-id="8994532619-9">}</span><span·class="w">
148 ······</span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">cd</span><span·class="p"·data-group-id="6830750492-10">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;appl/examples&quot;</span><span·class="p"·data-group-id="6830750492-10">)</span><span·class="p">.</span><span·class="w">148 ······</span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">cd</span><span·class="p"·data-group-id="8994532619-10">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;appl/examples&quot;</span><span·class="p"·data-group-id="8994532619-10">)</span><span·class="p">.</span><span·class="w">
149 ······</span><span·class="ss">ok</span><span·class="w">149 ······</span><span·class="ss">ok</span><span·class="w">
150 ······</span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">lpwd</span><span·class="p"·data-group-id="6830750492-11">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="6830750492-11">)</span><span·class="p">.</span><span·class="w">150 ······</span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">lpwd</span><span·class="p"·data-group-id="8994532619-11">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="8994532619-11">)</span><span·class="p">.</span><span·class="w">
151 ······</span><span·class="p"·data-group-id="6830750492-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/fred&quot;</span><span·class="p"·data-group-id="6830750492-12">}</span><span·class="p">.</span><span·class="w">151 ······</span><span·class="p"·data-group-id="8994532619-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/fred&quot;</span><span·class="p"·data-group-id="8994532619-12">}</span><span·class="p">.</span><span·class="w">
152 ······</span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">lcd</span><span·class="p"·data-group-id="6830750492-13">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/eproj/examples&quot;</span><span·class="p"·data-group-id="6830750492-13">)</span><span·class="p">.</span><span·class="w">152 ······</span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">lcd</span><span·class="p"·data-group-id="8994532619-13">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/eproj/examples&quot;</span><span·class="p"·data-group-id="8994532619-13">)</span><span·class="p">.</span><span·class="w">
153 ······</span><span·class="ss">ok</span><span·class="w">153 ······</span><span·class="ss">ok</span><span·class="w">
154 ······</span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="6830750492-14">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;appl.erl&quot;</span><span·class="p"·data-group-id="6830750492-14">)</span><span·class="p">.</span><span·class="w">154 ······</span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="8994532619-14">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;appl.erl&quot;</span><span·class="p"·data-group-id="8994532619-14">)</span><span·class="p">.</span><span·class="w">
155 ······</span><span·class="ss">ok</span><span·class="w">155 ······</span><span·class="ss">ok</span><span·class="w">
156 ······</span><span·class="mi">9</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="6830750492-15">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="6830750492-15">)</span><span·class="p">.</span><span·class="w">156 ······</span><span·class="mi">9</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="8994532619-15">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="8994532619-15">)</span><span·class="p">.</span><span·class="w">
157 ······</span><span·class="ss">ok</span><span·class="w">157 ······</span><span·class="ss">ok</span><span·class="w">
158 ······</span><span·class="mi">10</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="6830750492-16">(</span><span·class="p"·data-group-id="6830750492-16">)</span><span·class="p">.</span><span·class="w">158 ······</span><span·class="mi">10</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ftp</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="8994532619-16">(</span><span·class="p"·data-group-id="8994532619-16">)</span><span·class="p">.</span><span·class="w">
159 ······</span><span·class="ss">ok</span></code></pre><p>The·file·<code·class="inline">appl.erl</code>·is·transferred·from·the·remote·to·the·local·host.·When·the159 ······</span><span·class="ss">ok</span></code></pre><p>The·file·<code·class="inline">appl.erl</code>·is·transferred·from·the·remote·to·the·local·host.·When·the
160 session·is·opened,·the·current·directory·at·the·remote·host·is·<code·class="inline">/home/guest</code>,160 session·is·opened,·the·current·directory·at·the·remote·host·is·<code·class="inline">/home/guest</code>,
161 and·<code·class="inline">/home/fred</code>·at·the·local·host.·Before·transferring·the·file,·the·current161 and·<code·class="inline">/home/fred</code>·at·the·local·host.·Before·transferring·the·file,·the·current
162 local·directory·is·changed·to·<code·class="inline">/home/eproj/examples</code>,·and·the·remote·directory162 local·directory·is·changed·to·<code·class="inline">/home/eproj/examples</code>,·and·the·remote·directory
163 is·set·to·<code·class="inline">/home/guest/appl/examples</code>.</p>163 is·set·to·<code·class="inline">/home/guest/appl/examples</code>.</p>
164 </div>164 </div>
  
Offset 198, 15 lines modifiedOffset 198, 15 lines modified
198 ······<p·class="built-using">198 ······<p·class="built-using">
199 ········Built·using199 ········Built·using
200 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the200 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
201 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>201 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
202 ······</p>202 ······</p>
203 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>203 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
204 ····</footer>204 ····</footer>
205 ··</div>205 ··</div>
206 </main>206 </main>
207 </div>207 </div>
208 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>208 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
209 <script>209 <script>
210 ··document.addEventListener("DOMContentLoaded",·function·()·{210 ··document.addEventListener("DOMContentLoaded",·function·()·{
721 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/introduction.html
    
Offset 185, 15 lines modifiedOffset 185, 15 lines modified
185 ······<p·class="built-using">185 ······<p·class="built-using">
186 ········Built·using186 ········Built·using
187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
189 ······</p>189 ······</p>
190 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
191 ····</footer>191 ····</footer>
192 ··</div>192 ··</div>
193 </main>193 </main>
194 </div>194 </div>
195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
196 <script>196 <script>
197 ··document.addEventListener("DOMContentLoaded",·function·()·{197 ··document.addEventListener("DOMContentLoaded",·function·()·{
725 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/notes.html
    
Offset 428, 15 lines modifiedOffset 428, 15 lines modified
428 ······<p·class="built-using">428 ······<p·class="built-using">
429 ········Built·using429 ········Built·using
430 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the430 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
431 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>431 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
432 ······</p>432 ······</p>
433 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>433 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
434 ····</footer>434 ····</footer>
435 ··</div>435 ··</div>
436 </main>436 </main>
437 </div>437 </div>
438 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>438 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
439 <script>439 <script>
440 ··document.addEventListener("DOMContentLoaded",·function·()·{440 ··document.addEventListener("DOMContentLoaded",·function·()·{
682 B
html2text {}
Max HTML report size reached
1.26 KB
./usr/share/doc/erlang-doc/html/lib/ftp-1.2.2/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
460 B
html2text {}
Max HTML report size reached
633 B
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/.build
    
Offset 14, 15 lines modifiedOffset 14, 15 lines modified
14 dist/lato-latin-300-normal-YUMVEFOL.woff214 dist/lato-latin-300-normal-YUMVEFOL.woff2
15 dist/lato-latin-400-normal-W7754I4D.woff215 dist/lato-latin-400-normal-W7754I4D.woff2
16 dist/lato-latin-700-normal-2XVSBPG4.woff216 dist/lato-latin-700-normal-2XVSBPG4.woff2
17 dist/lato-latin-ext-300-normal-VPGGJKJL.woff217 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
18 dist/lato-latin-ext-400-normal-N27NCBWW.woff218 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
19 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff219 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
20 dist/remixicon-NKANDIL5.woff220 dist/remixicon-NKANDIL5.woff2
21 dist/search_data-6DCD792E.js21 dist/search_data-326436FA.js
22 dist/sidebar_items-FAD0E808.js22 dist/sidebar_items-FAD0E808.js
23 http_client.html23 http_client.html
24 http_server.html24 http_server.html
25 http_uri.html25 http_uri.html
26 httpc.html26 httpc.html
27 httpd.html27 httpd.html
28 httpd_custom_api.html28 httpd_custom_api.html
1.46 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.4 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/api-reference.html
    
Offset 273, 15 lines modifiedOffset 273, 15 lines modified
273 ······<p·class="built-using">273 ······<p·class="built-using">
274 ········Built·using274 ········Built·using
275 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the275 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
276 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>276 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
277 ······</p>277 ······</p>
278 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>278 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
279 ····</footer>279 ····</footer>
280 ··</div>280 ··</div>
281 </main>281 </main>
282 </div>282 </div>
283 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>283 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
284 <script>284 <script>
285 ··document.addEventListener("DOMContentLoaded",·function·()·{285 ··document.addEventListener("DOMContentLoaded",·function·()·{
589 B
html2text {}
Max HTML report size reached
41.4 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/http_client.html
    
Offset 134, 40 lines modifiedOffset 134, 40 lines modified
134 <p>The·HTTP·client·default·profile·is·started·when·the·<code·class="inline">Inets</code>·application·is134 <p>The·HTTP·client·default·profile·is·started·when·the·<code·class="inline">Inets</code>·application·is
135 started·and·is·then·available·to·all·processes·on·that·Erlang·node.·Other135 started·and·is·then·available·to·all·processes·on·that·Erlang·node.·Other
136 profiles·can·also·be·started·at·application·startup,·or·profiles·can·be·started136 profiles·can·also·be·started·at·application·startup,·or·profiles·can·be·started
137 and·stopped·dynamically·in·runtime.·Each·client·profile·spawns·a·new·process·to137 and·stopped·dynamically·in·runtime.·Each·client·profile·spawns·a·new·process·to
138 handle·each·request,·unless·a·persistent·connection·can·be·used·with·or·without138 handle·each·request,·unless·a·persistent·connection·can·be·used·with·or·without
139 pipelining.·The·client·adds·a·<code·class="inline">host</code>·header·and·an·empty·<code·class="inline">te</code>·header·if·there139 pipelining.·The·client·adds·a·<code·class="inline">host</code>·header·and·an·empty·<code·class="inline">te</code>·header·if·there
140 are·no·such·headers·present·in·the·request.</p><p>The·client·supports·IPv6·as·long·as·the·underlying·mechanisms·also·do·so.</p><p>The·following·is·to·be·put·in·the·Erlang·node·application·configuration·file·to140 are·no·such·headers·present·in·the·request.</p><p>The·client·supports·IPv6·as·long·as·the·underlying·mechanisms·also·do·so.</p><p>The·following·is·to·be·put·in·the·Erlang·node·application·configuration·file·to
141 start·a·profile·at·application·startup:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2452508273-1">[</span><span·class="p"·data-group-id="2452508273-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2452508273-3">[</span><span·class="p"·data-group-id="2452508273-4">{</spa[·...·truncated·by·diffoscope;·len:·606,·SHA:·58327fc4326b304ba98c5f908d7a3f2c03b8b93bced5b532aa2e6ef312786315·...·]-1">]</span></code></pre><p>For·valid·properties,·see·<a·href="httpc.html"><code·class="inline">httpc</code></a>.</p><h2·id="getting-started"·class="section-heading">141 start·a·profile·at·application·startup:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3214199388-1">[</span><span·class="p"·data-group-id="3214199388-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3214199388-3">[</span><span·class="p"·data-group-id="3214199388-4">{</spa[·...·truncated·by·diffoscope;·len:·606,·SHA:·1c77ff9b50f74cd4f4a5a8471788f990a176a41a01bacfb19fd1ea2b1dac4831·...·]-1">]</span></code></pre><p>For·valid·properties,·see·<a·href="httpc.html"><code·class="inline">httpc</code></a>.</p><h2·id="getting-started"·class="section-heading">
142 ··<a·href="#getting-started"·class="hover-link">142 ··<a·href="#getting-started"·class="hover-link">
143 ····<i·class="ri-link-m"·aria-hidden="true"></i>143 ····<i·class="ri-link-m"·aria-hidden="true"></i>
144 ··</a>144 ··</a>
145 ··<span·class="text">Getting·Started</span>145 ··<span·class="text">Getting·Started</span>
146 </h2>146 </h2>
147 <p>Start·<code·class="inline">Inets</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7553257292-1">(</span><span·class="p"·data-group-id="7553257292-1">)</span><span·class="p">.</span><span·class="w">147 <p>Start·<code·class="inline">Inets</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="0299313591-1">(</span><span·class="p"·data-group-id="0299313591-1">)</span><span·class="p">.</span><span·class="w">
148 </span><span·class="ss">ok</span></code></pre><p>The·following·calls·use·the·default·client·profile.·Use·the·proxy148 </span><span·class="ss">ok</span></code></pre><p>The·following·calls·use·the·default·client·profile.·Use·the·proxy
149 <code·class="inline">&quot;www-proxy.mycompany.com:8000&quot;</code>,·except·from·requests·to·localhost.·This149 <code·class="inline">&quot;www-proxy.mycompany.com:8000&quot;</code>,·except·from·requests·to·localhost.·This
150 applies·to·all·the·following·requests.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">set_options</span><span·class="p"·data-group-id="0766576621-1">(</span><span·class="p"·data-group-id="0766576621-2">[</span><span·class="p"·data-group-id="0766576621-3">{</span><span·class="ss">proxy</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0766576621-4">{</spa[·...·truncated·by·diffoscope;·len:·230,·SHA:·820563f156aec56f9bf040e047988580e4f1983a1de2bcdc25b8b97668c02d84·...·]-5">}</span><span·class="p">,</span><span·class="w">150 applies·to·all·the·following·requests.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">set_options</span><span·class="p"·data-group-id="5732216105-1">(</span><span·class="p"·data-group-id="5732216105-2">[</span><span·class="p"·data-group-id="5732216105-3">{</span><span·class="ss">proxy</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5732216105-4">{</spa[·...·truncated·by·diffoscope;·len:·230,·SHA:·22b6de08809f270c49283735166045e312072d5b1dd73d3f7c1ced4dc5ceb455·...·]-5">}</span><span·class="p">,</span><span·class="w">
151 </span><span·class="p"·data-group-id="0766576621-6">[</span><span·class="s">&quot;localhost&quot;</span><span·class="p"·data-group-id="0766576621-6">]</span><span·class="p"·data-group-id="0766576621-4">}</span><span·class="p"·data-group-id="0766576621-3">}</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·b5ffaf3b7ef40a36a186e465c7de1e2fbea132092d746d27766fb10a3862750a·...·]-1">)</span><span·class="p">.</span><span·class="w">151 </span><span·class="p"·data-group-id="5732216105-6">[</span><span·class="s">&quot;localhost&quot;</span><span·class="p"·data-group-id="5732216105-6">]</span><span·class="p"·data-group-id="5732216105-4">}</span><span·class="p"·data-group-id="5732216105-3">}</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·7d0baa462c08e955577bb44855ac06f0a819abb467c5176ad7f47658402c3003·...·]-1">)</span><span·class="p">.</span><span·class="w">
152 </span><span·class="ss">ok</span></code></pre><p>The·following·is·an·ordinary·synchronous·request:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="p"·data-group-id="1315442321-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1315442321-2">{</span><span·class="p"·data-group-id="1315442321-3">{</span><span·class="n">Version</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">200</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ReasonPhrase</span><span·class="p"·data-group-id="1315442321-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Headers</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Body</span><span·class="p"·data-group-id="1315442321-2">}</span><span·class="p"·data-group-id="1315442321-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w"> 
153 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="1315442321-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1315442321-5">{</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1315442321-6">[</span><span·class="p"·data-group-id="1315442321-6">]</span><span·class="p"·data-group-id="1315442321-5">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1315442321-7">[</span><span·class="p"·data-group-id="1315442321-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1315442321-8">[</span><span·class="p"·data-group-id="1315442321-8">]</span><span·class="p"·data-group-id="1315442321-4">)</span><span·class="p">.</span></code></pre><p>With·all·the·default·values·presented,·a·get·request·can·also·be·written·as 
154 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="p"·data-group-id="8373625251-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·568,·SHA:·62f9984d114c887b2aa21c6ea230fd4ed5c8f5a945bf3fda423f03be0cc320c1·...·]-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">152 </span><span·class="ss">ok</span></code></pre><p>The·following·is·an·ordinary·synchronous·request:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="p"·data-group-id="8319821966-1">{</span><span·clas[·...·truncated·by·diffoscope;·len:·658,·SHA:·1549dd2ca8758d4e91feac1d8ed5da3266ea0134c6fa469e23ff3b60ccc69388·...·]-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
 153 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="8319821966-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8319821966-5">{</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8319821966-6">[</span><span·class="p"·data-group-id="8319821966-6">]</span><span·class="p"·data-group-id="8319821966-5">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8319821966-7">[</span><span·class="p"·data-group-id="8319821966-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8319821966-8">[</span><span·class="p"·data-group-id="8319821966-8">]</span><span·class="p"·data-group-id="8319821966-4">)</span><span·class="p">.</span></code></pre><p>With·all·the·default·values·presented,·a·get·request·can·also·be·written·as
 154 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="p"·data-group-id="1018240253-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1018240253-2">{</span><span·class="p"·data-group-id="1018240253-3">{</span><span·class="n">Version</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">200</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ReasonPhrase</span><span·class="p"·data-group-id="1018240253-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Headers</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Body</span><span·class="p"·data-group-id="1018240253-2">}</span><span·class="p"·data-group-id="1018240253-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
155 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="8373625251-4">(</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p"·data-group-id="8373625251-4">)</span><span·class="p">.</span></code></pre><p>The·following·is·a·https·request·and·with·verification·of·the·host:</p><pre><code·cla[·...·truncated·by·diffoscope;·len:·798,·SHA:·e3367ab528f31255a92b456979994a9c1efa72a5afd0d49baf4e31533c8532d8·...·]-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">155 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="1018240253-4">(</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p"·data-group-id="1018240253-4">)</span><span·class="p">.</span></code></pre><p>The·following·is·a·https·request·and·with·verification·of·the·host:</p><pre><code·cla[·...·truncated·by·diffoscope;·len:·798,·SHA:·98f0f400d853168602c68ca9b0342fddecf46d8725ef2b7677a3920d482a4607·...·]-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
156 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="7896185875-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7896185875-5">{</span><span·class="s">&quot;https://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7896185875-6">[</span><span·class="p"·data-group-id="7896185875-6">]</span><span·class="p"·data-group-id="7896185875-5">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7896185875-7">[</span><span·class="p"·data-group-id="7896185875-8">{</span><span·class="ss">ssl</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">ssl_verify_host_options</span><span·class="p"·data-group-id="7896185875-9">(</span><span·class="ss">true</span><span·class="p"·data-group-id="7896185875-9">)</span><span·class="p"·data-group-id="7896185875-8">}</span><span·class="p"·data-group-id="7896185875-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7896185875-10">[</span><span·class="p"·data-group-id="7896185875-10">]</span><span·class="p"·data-group-id="7896185875-4">)</span><span·class="p">.</span></code></pre><p>The·following·is·an·ordinary·asynchronous·request:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">6&gt;·</span><span·class="p"·data-group-id="4985102160-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RequestId</span><span·class="p"·data-group-id="4985102160-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w"> 
157 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="4985102160-2">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4985102160-3">{</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·950,·SHA:·ac6db9680807571b2d42673ca3f36eb023212506a6e3d2642946c4f5168344d4·...·]156 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="5135218738-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5135218738-5">{</span><span·class="s">&quot;https://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·1397,·SHA:·13c708efb37ccf23ad4dd3e3bc60795636bda0df2a4a49756ec7233ed6e05918·...·]
 157 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="1267015115-2">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1267015115-3">{</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1267015115-4">[</span><span·class="p"·data-group-id="1267015115-4">]</span><span·class="p"·data-group-id="1267015115-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1267015115-5">[</span><span·class="p"·data-group-id="1267015115-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1267015115-6">[</span><span·class="p"·data-group-id="1267015115-7">{</span><span·class="ss">sync</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="1267015115-7">}</span><span·class="p"·data-group-id="1267015115-6">]</span><span·class="p"·data-group-id="1267015115-2">)</span><span·class="p">.</span></code></pre><p>The·result·is·sent·to·the·calling·process·as·<code·class="inline">{http,·{ReqestId,·Result}}</code>.</p><p>In·this·case,·the·calling·process·is·the·shell,·so·the·following·result·is
158 received:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">7&gt;·</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="2543426069-1">{</span><span·class="ss">http</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2543426069-2">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·112bf250263a1c72dbb71c600fbd879976e240192dfb446d78946bb57463c008·...·]-1">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">500</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">158 received:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">7&gt;·</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="0098061340-1">{</span><span·class="ss">http</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0098061340-2">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·2c1b3204a01ecd58b79b1dfce58eda548a77d2a873964b34b1439bed2583b3dc·...·]-1">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">500</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
159 </span><span·class="ss">ok</span></code></pre><p>This·sends·a·request·with·a·specified·connection·header:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">8&gt;·</span><span·class="p"·data-group-id="0842006325-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0842006325-2">{</span><span·class="p"·data-group-id="0842006325-3">{</span><span·class="n">NewVersion</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">200</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NewReasonPhrase</span><span·class="p"·data-group-id="0842006325-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NewHeaders</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NewBody</span><span·class="p"·data-group-id="0842006325-2">}</span><span·class="p"·data-group-id="0842006325-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w"> 
160 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="0842006325-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0842006325-5">{</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0842006325-6">[</span><span·class="p"·data-group-id="0842006325-7">{</span><span·class="s">&quot;connection&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;close&quot;</span><span·class="p"·data-group-id="0842006325-7">}</span><span·class="p"·data-group-id="0842006325-6">]</span><span·class="p"·data-group-id="0842006325-5">}</span><span·class="p">,</span><span·class="w"> 
161 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="0842006325-8">[</span><span·class="p"·data-group-id="0842006325-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0842006325-9[·...·truncated·by·diffoscope;·len:·1167,·SHA:·9e3c54352bedfd72fc20b8e017e56ab70d015679c51625d36299bf501a9b0ec7·...·]">159 </span><span·class="ss">ok</span></code></pre><p>This·sends·a·request·with·a·specified·connection·header:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">8&gt;·</span><span·class="p"·data-group-id="4168112265-1">{</span><span·class="ss">ok</sp[·...·truncated·by·diffoscope;·len:·731,·SHA:·6a18122665437ed3bdb94cbbd19c8921f969002834184fdf526f2348a6f71c87·...·]">
 160 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="4168112265-4">(</span><span·class="nb">get</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4168112265-5">{</span><span·class="s">&quot;http://www.erlang.org&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4168112265-6">[</span><span·class="p"·data-group-id="4168112265-7">{</span><span·class="s">&quot;connection&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;close&quot;</span><span·class="p"·data-group-id="4168112265-7">}</span><span·class="p"·data-group-id="4168112265-6">]</span><span·class="p"·data-group-id="4168112265-5">}</span><span·class="p">,</span><span·class="w">
 161 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="4168112265-8">[</span><span·class="p"·data-group-id="4168112265-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4168112265-9">[</span><span·class="p"·data-group-id="4168112265-9">]</span><span·class="p"·data-group-id="4168112265-4">)</span><span·class="p">.</span></code></pre><p>This·sends·an·HTTP·request·over·a·unix·domain·socket·(experimental):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">9&gt;·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">set_options</span><span·class="p"·data-group-id="2965055490-1">(</span><span·class="p"·data-group-id="2965055490-2">[</span><span·class="p"·data-group-id="2965055490-3">{</span><span·class="ss">ipfamily</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">local</span><span·class="p"·data-group-id="2965055490-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2965055490-4">{</span><span·class="ss">unix_socket</span><span·class="p">,</span><span·class="s">&quot;/tmp/unix_socket/consul_http.sock&quot;</span><span·class="p"·data-group-id="2965055490-4">}</span><span·class="p"·data-group-id="2965055490-2">]</span><span·class="p"·data-group-id="2965055490-1">)</span><span·class="p">.</span><span·class="gp·unselectable">
162 10&gt;·</span><span·class="p"·data-group-id="8614354055-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8614354055-6">{</span><span·class="p"·data-group-id="8614354055-7">{</span><span·class="n">NewVersion</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·446,·SHA:·c25626a41bb79a1286bcd93b883e828999330db04888547832c55adbfcf4a8ae·...·]-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">162 10&gt;·</span><span·class="p"·data-group-id="2965055490-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2965055490-6">{</span><span·class="p"·data-group-id="2965055490-7">{</span><span·class="n">NewVersion</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·446,·SHA:·261f5c468102bebde5593ea8240936917283234cae54626f67708ac4243c41f5·...·]-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
163 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="8614354055-8">(</span><span·class="nb">put</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8614354055-9">{</span><span·class="s">&quot;http:///v1/kv/foo&quot;</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·1778,·SHA:·edd78c7ef61222d5b5a5a05702810c3e650953e6a5a59ca26eceb21c68852636·...·]-2">)</span><span·class="p">.</span><span·class="w">163 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="nc">httpc</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="2965055490-8">(</span><span·class="nb">put</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2965055490-9">{</span><span·class="s">&quot;http:///v1/kv/foo&quot;</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·1778,·SHA:·1619fec882ebba8fa20638dc16e3dbeb1e2b31e04a94a27cb9aceabe755eac10·...·]-2">)</span><span·class="p">.</span><span·class="w">
164 </span><span·class="p"·data-group-id="9325421617-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.45</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·513,·SHA:·1d62e1e3dceafe19e5902629cd22e710ce54a16ded3b135ba02dd849564eaf32·...·]-1">)</span><span·class="p">.</span><span·class="w">164 </span><span·class="p"·data-group-id="3032154775-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.45</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·513,·SHA:·5dcb4b87b6adbaad646b6c425cf738511be2dda46d2fc1b410011f8dfd3ea0f8·...·]-1">)</span><span·class="p">.</span><span·class="w">
165 </span><span·class="p"·data-group-id="6679483065-2">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">econnrefused</span><span·class="p"·data-group-id="6679483065-2">}</span></code></pre><p>Stop·the·HTTP·client·profile:</p><pre><code·class="m[·...·truncated·by·diffoscope;·len:·352,·SHA:·0d213d2e9f32bfb4d73bb37c4c771e681915c7dc2ff6ce35033a33c6369214f5·...·]-1">)</span><span·class="p">.</span><span·class="w">165 </span><span·class="p"·data-group-id="2214800960-2">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">econnrefused</span><span·class="p"·data-group-id="2214800960-2">}</span></code></pre><p>Stop·the·HTTP·client·profile:</p><pre><code·class="m[·...·truncated·by·diffoscope;·len:·352,·SHA:·87cecaab216105351dca7ce4ddf83b8b9f9e1f73e257d554010a039ca7387bc8·...·]-1">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="ss">ok</span></code></pre><p>Alternative·way·to·stop·the·HTTP·client·profile:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">13&gt;·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="9784120926-1">(</span><span·class="ss">httpc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="9784120926-1">)</span><span·class="p">.</span><span·class="w">166 </span><span·class="ss">ok</span></code></pre><p>Alternative·way·to·stop·the·HTTP·client·profile:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">13&gt;·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="8896873389-1">(</span><span·class="ss">httpc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="8896873389-1">)</span><span·class="p">.</span><span·class="w">
167 </span><span·class="ss">ok</span></code></pre>167 </span><span·class="ss">ok</span></code></pre>
168 </div>168 </div>
  
169 <div·class="bottom-actions"·id="bottom-actions">169 <div·class="bottom-actions"·id="bottom-actions">
170 ··<div·class="bottom-actions-item">170 ··<div·class="bottom-actions-item">
  
171 ······<a·href="inets_services.html"·class="bottom-actions-button"·rel="prev">171 ······<a·href="inets_services.html"·class="bottom-actions-button"·rel="prev">
Offset 211, 15 lines modifiedOffset 211, 15 lines modified
211 ······<p·class="built-using">211 ······<p·class="built-using">
212 ········Built·using212 ········Built·using
213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
215 ······</p>215 ······</p>
216 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>216 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
217 ····</footer>217 ····</footer>
218 ··</div>218 ··</div>
219 </main>219 </main>
220 </div>220 </div>
221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
222 <script>222 <script>
223 ··document.addEventListener("DOMContentLoaded",·function·()·{223 ··document.addEventListener("DOMContentLoaded",·function·()·{
584 B
html2text {}
Max HTML report size reached
54.6 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/http_server.html
    
Offset 137, 54 lines modifiedOffset 137, 54 lines modified
137 underlying·mechanisms·also·do·so.</p><p>The·server·implements·numerous·features,·such·as:</p><ul><li>Secure·Sockets·Layer·(SSL)</li><li>Erlang·Scripting·Interface·(ESI)</li><li>Common·Gateway·Interface·(CGI)</li><li>User·Authentication·(using·Mnesia,·Dets·or·plain·text·database)</li><li>Common·Logfile·Format·(with·or·without·disk_log(3)·support)</li><li>URL·Aliasing</li><li>Action·Mappings</li><li>Directory·Listings</li></ul><p>The·configuration·of·the·server·is·provided·as·an·Erlang·property·list.</p><p>As·of·<code·class="inline">Inets</code>·5.0·the·HTTP·server·is·an·easy·to·start/stop·and·customize·web137 underlying·mechanisms·also·do·so.</p><p>The·server·implements·numerous·features,·such·as:</p><ul><li>Secure·Sockets·Layer·(SSL)</li><li>Erlang·Scripting·Interface·(ESI)</li><li>Common·Gateway·Interface·(CGI)</li><li>User·Authentication·(using·Mnesia,·Dets·or·plain·text·database)</li><li>Common·Logfile·Format·(with·or·without·disk_log(3)·support)</li><li>URL·Aliasing</li><li>Action·Mappings</li><li>Directory·Listings</li></ul><p>The·configuration·of·the·server·is·provided·as·an·Erlang·property·list.</p><p>As·of·<code·class="inline">Inets</code>·5.0·the·HTTP·server·is·an·easy·to·start/stop·and·customize·web
138 server·providing·the·most·basic·web·server·functionality.·Inets·is·designed·for138 server·providing·the·most·basic·web·server·functionality.·Inets·is·designed·for
139 embedded·systems·and·if·you·want·a·full-fledged·web·server·there·are·other139 embedded·systems·and·if·you·want·a·full-fledged·web·server·there·are·other
140 erlang·open·source·alternatives.</p><p>Almost·all·server·functionality·has·been·implemented·using·an·especially·crafted140 erlang·open·source·alternatives.</p><p>Almost·all·server·functionality·has·been·implemented·using·an·especially·crafted
141 server·API,·which·is·described·in·the·Erlang·Web·Server·API.·This·API·can·be141 server·API,·which·is·described·in·the·Erlang·Web·Server·API.·This·API·can·be
142 used·to·enhance·the·core·server·functionality,·for·example·with·custom·logging142 used·to·enhance·the·core·server·functionality,·for·example·with·custom·logging
143 and·authentication.</p><p>The·following·is·to·be·put·in·the·Erlang·node·application·configuration·file·to143 and·authentication.</p><p>The·following·is·to·be·put·in·the·Erlang·node·application·configuration·file·to
144 start·an·HTTP·server·at·application·startup:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6055036682-1">[</span><span·class="p"·data-group-id="6055036682-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6055036682-3">[</span><span·class="p"·data-group-id="6055036682-4">{</span><span·class="ss">services</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6055036682-5">[</span><span·class="p"·data-group-id="6055036682-6">{</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6055036682-7">[</span><span·class="p"·data-group-id="6055036682-8">{</span><span·class="ss">proplist_file</span><span·class="p">,</span><span·class="w"> 
145 ···········</span><span·class="s">&quot;/var/tmp/server_root/conf/8888_props.conf&quot;</span><span·class="p"·data-group-id="6055036682-8">}</span><span·class="p"·data-group-id="6055036682-7">]</span><span·class="p"·data-group-id="6055036682-6">}</span><span·class="p">,</span><span·class="w">144 start·an·HTTP·server·at·application·startup:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5618340038-1">[</span><span·class="p"·data-group-id="5618340038-2">{</span><span·class="ss">inets</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·528,·SHA:·22677eaf01c0ba1d3c7b880859f1fe57edbaab0b4c99d5b5e9eafef5684ebb11·...·]</span><span·class="p">,</span><span·class="w">
 145 ···········</span><span·class="s">&quot;/var/tmp/server_root/conf/8888_props.conf&quot;</span><span·class="p"·data-group-id="5618340038-8">}</span><span·class="p"·data-group-id="5618340038-7">]</span><span·class="p"·data-group-id="5618340038-6">}</span><span·class="p">,</span><span·class="w">
146 ··········</span><span·class="p"·data-group-id="6055036682-9">{</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6055036682-10">[</span><span·class="p"·data-group-id="6055036682-11">{</span><span·class="ss">proplist_file</span><span·class="p">,</span><span·class="w">146 ··········</span><span·class="p"·data-group-id="5618340038-9">{</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5618340038-10">[</span><span·class="p"·data-group-id="5618340038-11">{</span><span·class="ss">proplist_file</span><span·class="p">,</span><span·class="w">
147 ···········</span><span·class="s">&quot;/var/tmp/server_root/conf/8080_props.conf&quot;</span><span·class="p"·data-group-id="6055036682-11">}</span><span·class="p"·data-group-id="6055036682-10">]</span><span·class="p"·data-group-id="6055036682-9">}</span><span·class="p"·data-group-id="6055036682-5">]</span><span·class="p"·data-group-id="6055036682-4">}</span><span·class="p"·data-group-id="6055036682-3">]</span><span·class="p"·data-group-id="6055036682-2">}</span><span·class="p"·data-group-id="6055036682-1">]</span><span·class="p">.</span></code></pre><p>The·server·is·configured·using·an·Erlang·property·list.·For·the·available 
148 properties,·see·<a·href="httpd.html"><code·class="inline">httpd</code></a>.</p><p>The·available·configuration·properties·are·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">httpd_service</span><span·class="p"·data-group-id="9974881480-1">(</span><span·class="p"·data-group-id="9974881480-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9974881480-2">{</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">httpd</span><span·class="p"·data-group-id="9974881480-3">(</span><span·class="p"·data-group-id="9974881480-3">)</span><span·class="p"·data-group-id="9974881480-2">}</span><span·class="w"> 
149 </span><span·class="nf">httpd</span><span·class="p"·data-group-id="9974881480-4">(</span><span·class="p"·data-group-id="9974881480-4">)</span><span·class="w">·········</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9974881480-5">[</span><span·class="nf">httpd_config</span><span·class="p"·data-group-id="9974881480-6">(</span><span·class="p"·data-group-id="9974881480-6">)</span><span·class="p"·data-group-id="9974881480-5">]</span><span·class="w"> 
150 </span><span·class="nf">httpd_config</span><span·class="p"·data-group-id="9974881480-7">(</span><span·class="p"·data-group-id="9974881480-7">)</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·311,·SHA:·556d3c2e0632a8cbfb5f6f2b2f0806c31753a758bd87720f9321c3b1c042c618·...·]147 ···········</span><span·class="s">&quot;/var/tmp/server_root/conf/8080_props.conf&quot;</span><span·class="p"·data-group-id="5618340038-11">}</span><span·class="p"·data-group-id="5618340038-10">]</span><span·class="p"·data-group-id="5618340038-9">}</span><[·...·truncated·by·diffoscope;·len:·377,·SHA:·9f8539b0e1f1383d4f2033bcaaf158208cc4086443bd14e49949f10d6d43f00f·...·]
 148 properties,·see·<a·href="httpd.html"><code·class="inline">httpd</code></a>.</p><p>The·available·configuration·properties·are·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">httpd_service</span><span·class="p"·data-group-id="8325039328-1">(</span><span·class="p"·data-group-id="8325039328-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8325039328-2">{</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">httpd</span><span·class="p"·data-group-id="8325039328-3">(</span><span·class="p"·data-group-id="8325039328-3">)</span><span·class="p"·data-group-id="8325039328-2">}</span><span·class="w">
 149 </span><span·class="nf">httpd</span><span·class="p"·data-group-id="8325039328-4">(</span><span·class="p"·data-group-id="8325039328-4">)</span><span·class="w">·········</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8325039328-5">[</span><span·class="nf">httpd_config</span><span·class="p"·data-group-id="8325039328-6">(</span><span·class="p"·data-group-id="8325039328-6">)</span><span·class="p"·data-group-id="8325039328-5">]</span><span·class="w">
 150 </span><span·class="nf">httpd_config</span><span·class="p"·data-group-id="8325039328-7">(</span><span·class="p"·data-group-id="8325039328-7">)</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8325039328-8">{</span><span·class="ss">proplist_file</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">file</span><span·class="p"·data-group-id="8325039328-9">(</span><span·class="p"·data-group-id="8325039328-9">)</span><span·class="p"·data-group-id="8325039328-8">}</span><span·class="w">
151 ···················</span><span·class="p"·data-group-id="9974881480-10">{</span><span·class="ss">debug</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">debug</span><span·class="p"·data-group-id="9974881480-11">(</span><span·class="p"·data-group-id="9974881480-11">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·efbb6b6d99740d0917e9a5c2f224b4a631eb3e67cb1b8b8855cca133f1469911·...·]-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">151 ···················</span><span·class="p"·data-group-id="8325039328-10">{</span><span·class="ss">debug</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">debug</span><span·class="p"·data-group-id="8325039328-11">(</span><span·class="p"·data-group-id="8325039328-11">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·8a21302ab6af0c8060885c8883abcdc525304dd787501cb996d4c4835d0a015e·...·]-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
152 ···················</span><span·class="p"·data-group-id="9974881480-12">{</span><span·class="ss">accept_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9974881480-13">(</span><span·class="p"·data-group-id="9974881480-13">)</span><span·class="p"·data-group-id="9974881480-12">}</span><span·class="w"> 
153 </span><span·class="nf">debug</span><span·class="p"·data-group-id="9974881480-14">(</span><span·class="p"·data-group-id="9974881480-14">)</span><span·class="w">·········</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">disable</sp[·...·truncated·by·diffoscope;·len:·321,·SHA:·025a585192d40fbd1d42de85ab0b34ce53ee062032c02785bb419f2cb0d26e57·...·]</span><span·class="w">152 ···················</span><span·class="p"·data-group-id="8325039328-12">{</span><span·class="ss">accept_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="8325039328-13">(</span><span[·...·truncated·by·diffoscope;·len:·96,·SHA:·9a10a8c20643fe02115e43b2a72f2c6daeef1742b75c40431c24a754af04bc46·...·]</span><span·class="w">
 153 </span><span·class="nf">debug</span><span·class="p"·data-group-id="8325039328-14">(</span><span·class="p"·data-group-id="8325039328-14">)</span><span·class="w">·········</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">disable</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="8325039328-15">[</span><span·class="nf">debug_options</span><span·class="p"·data-group-id="8325039328-16">(</span><span·class="p"·data-group-id="8325039328-16">)</span><span·class="p"·data-group-id="8325039328-15">]</span><span·class="w">
154 </span><span·class="nf">debug_options</span><span·class="p"·data-group-id="9974881480-17">(</span><span·class="p"·data-group-id="9974881480-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9974881480-18">{</span><span·class="ss">all_functions</span><span·class=[·...·truncated·by·diffoscope;·len:·216,·SHA:·1267b4fd4befc429e895dcc9f865e48f88d5d5e2cfe7e03b9746414fffd92d83·...·]-18">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">154 </span><span·class="nf">debug_options</span><span·class="p"·data-group-id="8325039328-17">(</span><span·class="p"·data-group-id="8325039328-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8325039328-18">{</span><span·class="ss">all_functions</span><span·class=[·...·truncated·by·diffoscope;·len:·216,·SHA:·61923ebafc93adb274d36d436015b49cee29e8f63d09a87e219a71380c759844·...·]-18">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
155 ···················</span><span·class="p"·data-group-id="9974881480-20">{</span><span·class="ss">exported_functions</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">modules</span><span·class="p"·data-group-id="9974881480-21">(</span><span·class="p"·data-group-id="9974881480-21">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·e6ef3857f895036a95eba10ab58d1f37ec1eb2f2eba0304c4f653ae6e8d581ab·...·]-20">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">155 ···················</span><span·class="p"·data-group-id="8325039328-20">{</span><span·class="ss">exported_functions</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">modules</span><span·class="p"·data-group-id="8325039328-21">(</span><span·class="p"·data-group-id="8325039328-21">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·f6c864a9ec263a80f799bf2937e8dee4eb19a90cc6b5cda956359f8b6ddf756c·...·]-20">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
156 ···················</span><span·class="p"·data-group-id="9974881480-22">{</span><span·class="ss">disable</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">modules</span><span·class="p"·data-group-id="9974881480-23">(</span><span·class="p"·data-group-id="9974881480-23">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·90c767b52e8adb1c1ffacb84053fe15ba4975792f6c77817f01096d3544c3482·...·]-22">}</span><span·class="w">156 ···················</span><span·class="p"·data-group-id="8325039328-22">{</span><span·class="ss">disable</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">modules</span><span·class="p"·data-group-id="8325039328-23">(</span><span·class="p"·data-group-id="8325039328-23">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·0e4e4a28c456246faec8f55bff301205d8484373c95df1fa9c8db99ec897a576·...·]-22">}</span><span·class="w">
157 </span><span·class="nf">modules</span><span·class="p"·data-group-id="9974881480-24">(</span><span·class="p"·data-group-id="9974881480-24">)</span><span·class="w">·······</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9974881480-25">[</span><span·class="nf">atom</span><span·class="p"[·...·truncated·by·diffoscope;·len:·134,·SHA:·a238fcc8d19c1bfb22c2a45bd68f936ebf74480150e2c83dbceb548f9b0e1d08·...·]-25">]</span></code></pre><p>Here:</p><ul><li><p><strong><code·class="inline">{proplist_file,·file()}</code></strong>·-·File·containing·an·Erlang·property·list,157 </span><span·class="nf">modules</span><span·class="p"·data-group-id="8325039328-24">(</span><span·class="p"·data-group-id="8325039328-24">)</span><span·class="w">·······</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8325039328-25">[</span><span·class="nf">atom</span><span·class="p"[·...·truncated·by·diffoscope;·len:·134,·SHA:·e503d3854d4b7b2e92848780a6bfae0e53ceb3421d6b2096de9de784184c0f90·...·]-25">]</span></code></pre><p>Here:</p><ul><li><p><strong><code·class="inline">{proplist_file,·file()}</code></strong>·-·File·containing·an·Erlang·property·list,
158 followed·by·a·full·stop,·describing·the·HTTP·server·configuration.</p></li><li><p><strong><code·class="inline">{debug,·debug()}</code></strong>·-·Can·enable·trace·on·all·functions·or·only·exported158 followed·by·a·full·stop,·describing·the·HTTP·server·configuration.</p></li><li><p><strong><code·class="inline">{debug,·debug()}</code></strong>·-·Can·enable·trace·on·all·functions·or·only·exported
159 functions·on·chosen·modules.</p></li><li><p><strong><code·class="inline">{accept_timeout,·integer()}</code></strong>·-·Sets·the·wanted·time-out·value·for·the159 functions·on·chosen·modules.</p></li><li><p><strong><code·class="inline">{accept_timeout,·integer()}</code></strong>·-·Sets·the·wanted·time-out·value·for·the
160 server·to·set·up·a·request·connection.</p></li></ul><h2·id="getting-started"·class="section-heading">160 server·to·set·up·a·request·connection.</p></li></ul><h2·id="getting-started"·class="section-heading">
161 ··<a·href="#getting-started"·class="hover-link">161 ··<a·href="#getting-started"·class="hover-link">
162 ····<i·class="ri-link-m"·aria-hidden="true"></i>162 ····<i·class="ri-link-m"·aria-hidden="true"></i>
163 ··</a>163 ··</a>
164 ··<span·class="text">Getting·Started</span>164 ··<span·class="text">Getting·Started</span>
165 </h2>165 </h2>
166 <p><a·href=""·id="using_http_server_api"></a></p><p>Start·<code·class="inline">Inets</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="2154098819-1">(</span><span·class="p"·data-group-id="2154098819-1">)</span><span·class="p">.</span><span·class="w">166 <p><a·href=""·id="using_http_server_api"></a></p><p>Start·<code·class="inline">Inets</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">inets</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="9008963360-1">(</span><span·class="p"·data-group-id="9008963360-1">)</span><span·class="p">.</span><span·class="w">
167 </span><span·class="ss">ok</span></code></pre><p>Start·an·HTTP·server·with·minimal·required·configuration.·If·you·specify·port167 </span><span·class="ss">ok</span></code></pre><p>Start·an·HTTP·server·with·minimal·required·configuration.·If·you·specify·port
168 <code·class="inline">0</code>,·an·arbitrary·available·port·is·used,·and·you·can·use·function·<code·class="inline">info</code>·to168 <code·class="inline">0</code>,·an·arbitrary·available·port·is·used,·and·you·can·use·function·<code·class="inline">info</code>·to
169 find·which·port·number·that·was·picked:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="p"·data-group-id="0422008926-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="0422008926-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·703,·SHA:·4cbcefc21ac44863740f35beb8a82c60d839da2a99bfce8fa6cbf04c91881256·...·]-5">}</span><span·class="p">,</span><span·class="w">169 find·which·port·number·that·was·picked:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="p"·data-group-id="9460714834-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="9460714834-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·703,·SHA:·72d0a1a9270adedeb64be65763c8a289c34ec84ab8838f452143b034dae1078c·...·]-5">}</span><span·class="p">,</span><span·class="w">
170 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="0422008926-6">{</span><span·class="ss">document_root</span><span·class="p">,</span><span·class="s">&quot;/tmp/htdocs&quot;</span><span·class="p"·data-group-id="0422008926-6">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·302,·SHA:·f8b70d50ef5040eedbdb5adc319ccf6f9eba2a77c28ffd6be427de70501f2846·...·]-2">)</span><span·class="p">.</span><span·class="w">170 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="9460714834-6">{</span><span·class="ss">document_root</span><span·class="p">,</span><span·class="s">&quot;/tmp/htdocs&quot;</span><span·class="p"·data-group-id="9460714834-6">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·302,·SHA:·20ca2024ea914782bffd17eb130687879d2ce19844aaa4d1f7b3046a86690d01·...·]-2">)</span><span·class="p">.</span><span·class="w">
171 </span><span·class="p"·data-group-id="0422008926-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="mf">0.79</span><span·class="p">.</span><span·class="mi">0</span><span·class="p"·data-group-id="0422008926-8">}</span></code></pre><p>Call·<code·cla[·...·truncated·by·diffoscope;·len:·320,·SHA:·64f1b66c044a968a5d4dd16f417106840f1e1e4966cb511cbab0036251eb6146·...·]-1">)</span><span·class="p">.</span><span·class="w">171 </span><span·class="p"·data-group-id="9460714834-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="mf">0.79</span><span·class="p">.</span><span·class="mi">0</span><span·class="p"·data-group-id="9460714834-8">}</span></code></pre><p>Call·<code·cla[·...·truncated·by·diffoscope;·len:·320,·SHA:·9ef8f2b55eb447424945081741b102ef7daa367a81f52c41935cde218163bc3e·...·]-1">)</span><span·class="p">.</span><span·class="w">
172 </span><span·class="p"·data-group-id="7104869201-2">[</span><span·class="p"·data-group-id="7104869201-3">{</span><span·class="ss">mime_types</span><span·class="p">,</span><span·class="p"·data-group-id="7104869201-4">[</span><span·class="p"·data-group-id="7104869201-5">{</span><span·class="s">&[·...·truncated·by·diffoscope;·len:·473,·SHA:·923f6073efdbb1956f9b6f16c36d06f08c1c1fe07d49cda39e7d229a65c7561f·...·]-3">}</span><span·class="p">,</span><span·class="w">172 </span><span·class="p"·data-group-id="5597493740-2">[</span><span·class="p"·data-group-id="5597493740-3">{</span><span·class="ss">mime_types</span><span·class="p">,</span><span·class="p"·data-group-id="5597493740-4">[</span><span·class="p"·data-group-id="5597493740-5">{</span><span·class="s">&[·...·truncated·by·diffoscope;·len:·473,·SHA:·a83f3ca6897aaa1575e6a0d08f6c44f055f591019c20fe71c9fc7ea11bb432ae·...·]-3">}</span><span·class="p">,</span><span·class="w">
173 ·</span><span·class="p"·data-group-id="7104869201-7">{</span><span·class="ss">server_name</span><span·class="p">,</span><span·class="s">&quot;machine.local&quot;</span><span·class="p"·data-group-id="7104869201-7">}</span><span·class="p">,</span><span·class="w">173 ·</span><span·class="p"·data-group-id="5597493740-7">{</span><span·class="ss">server_name</span><span·class="p">,</span><span·class="s">&quot;machine.local&quot;</span><span·class="p"·data-group-id="5597493740-7">}</span><span·class="p">,</span><span·class="w">
174 ·</span><span·class="p"·data-group-id="7104869201-8">{</span><span·class="ss">bind_address</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7104869201-9">{</span><span·class="mi">127</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·171,·SHA:·f7b652ca786bffc241b806247273a934228e3677689d681ca37eebff5a7d112b·...·]-8">}</span><span·class="p">,</span><span·class="w">174 ·</span><span·class="p"·data-group-id="5597493740-8">{</span><span·class="ss">bind_address</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5597493740-9">{</span><span·class="mi">127</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·171,·SHA:·6becee1b30947059dfd47ed679e162fb8dab982a52c62edc4106ecd78505419f·...·]-8">}</span><span·class="p">,</span><span·class="w">
175 ·</span><span·class="p"·data-group-id="7104869201-10">{</span><span·class="ss">server_root</span><span·class="p">,</span><span·class="s">&quot;/tmp&quot;</span><span·class="p"·data-group-id="7104869201-10">}</span><span·class="p">,</span><span·class="w">175 ·</span><span·class="p"·data-group-id="5597493740-10">{</span><span·class="ss">server_root</span><span·class="p">,</span><span·class="s">&quot;/tmp&quot;</span><span·class="p"·data-group-id="5597493740-10">}</span><span·class="p">,</span><span·class="w">
176 ·</span><span·class="p"·data-group-id="7104869201-11">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="mi">59408</span><span·class="p"·data-group-id="7104869201-11">}</span><span·class="p">,</span><span·class="w">176 ·</span><span·class="p"·data-group-id="5597493740-11">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="mi">59408</span><span·class="p"·data-group-id="5597493740-11">}</span><span·class="p">,</span><span·class="w">
177 ·</span><span·class="p"·data-group-id="7104869201-12">{</span><span·class="ss">document_root</span><span·class="p">,</span><span·class="s">&quot;/tmp/htdocs&quot;</span><span·class="p"·data-group-id="7104869201-12">}</span><span·class="p">,</span><span·class="w">177 ·</span><span·class="p"·data-group-id="5597493740-12">{</span><span·class="ss">document_root</span><span·class="p">,</span><span·class="s">&quot;/tmp/htdocs&quot;</span><span·class="p"·data-group-id="5597493740-12">}</span><span·class="p">,</span><span·class="w">
178 ·</span><span·class="p"·data-group-id="7104869201-13">{</span><span·class="ss">ipfamily</span><span·class="p">,</span><span·class="ss">inet</span><span·class="p"·data-group-id="7104869201-13">}</span><span·class="p"·data-group-id="7104869201-2">]</span></code></pre><p>Reload·the·configuration·w[·...·truncated·by·diffoscope;·len:·519,·SHA:·1b3c1c64a63808d06a1c83e764803f4ed7a66584f3996fc61bd02b9eea2f681e·...·]-3">}</span><span·class="p">,</span><span·class="w">178 ·</span><span·class="p"·data-group-id="5597493740-13">{</span><span·class="ss">ipfamily</span><span·class="p">,</span><span·class="ss">inet</span><span·class="p"·data-group-id="5597493740-13">}</span><span·class="p"·data-group-id="5597493740-2">]</span></code></pre><p>Reload·the·configuration·w[·...·truncated·by·diffoscope;·len:·519,·SHA:·6bdc61d2f85444842e71fcae97ea196acdf0d056d45e93e5de1ca0e34d81c757·...·]-3">}</span><span·class="p">,</span><span·class="w">
179 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="2438983894-4">{</span><span·class="ss">server_root</span><span·class="p">,</span><span·class="s">&quot;/tmp/www_test&quot;</span><span·class="p"·data-group-id="2438983894-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·184,·SHA:·4436b6ea561d8565bc317ef4cee3c44ea13e8f5c5bb97a1c31390aea9d558878·...·]-5">}</span><span·class="p">,</span><span·class="w">179 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="3693153625-4">{</span><span·class="ss">server_root</span><span·class="p">,</span><span·class="s">&quot;/tmp/www_test&quot;</span><span·class="p"·data-group-id="3693153625-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·184,·SHA:·31c15d574187e64525e7a52c12c7d1d5f29a749f7b0096b9ce59d10e404e73bd·...·]-5">}</span><span·class="p">,</span><span·class="w">
180 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="2438983894-6">{</span><span·class="ss">bind_address</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;localhost&quot;</span><span·class="p"·data-group-id="2438983894-6">}</span><span·class="p"·data-group-id="2438983894-2">]</span>[·...·truncated·by·diffoscope;·len:·127,·SHA:·f25b2e1262bb932b799730737b432607c427487aa46014e7a7ba3a6be6537252·...·]-1">)</span><span·class="p">.</span><span·class="w">180 </span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="3693153625-6">{</span><span·class="ss">bind_address</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;localhost&quot;</span><span·class="p"·data-group-id="3693153625-6">}</span><span·class="p"·data-group-id="3693153625-2">]</span>[·...·truncated·by·diffoscope;·len:·127,·SHA:·336ee9231b26523e0ebf2d1fa3a68591aec809d402612a57e21f80a194df5bc0·...·]-1">)</span><span·class="p">.</span><span·class="w">
181 </span><span·class="ss">ok</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p><code·class="inline">port</code>·and·<code·class="inline">bind_address</code>·cannot·be·changed.·Clients·trying·to·access·the181 </span><span·class="ss">ok</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p><code·class="inline">port</code>·and·<code·class="inline">bind_address</code>·cannot·be·changed.·Clients·trying·to·access·the
182 server·during·the·reload·get·a·service·temporary·unavailable·answer.</p></blockquote><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">httpd</span><span·class="p">:</span><span·class="nf">info</span><span·class="p"·data-group-id="6450865432-1">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6450865432-2">[</span><span·class="ss">server_root</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">documen[·...·truncated·by·diffoscope;·len:·107,·SHA:·1824f720c6c863666dc9867e2a89305636406c5f3ef8a0852629d9abd9461d34·...·]-1">)</span><span·class="p">.</span><span·class="w">182 server·during·the·reload·get·a·service·temporary·unavailable·answer.</p></blockquote><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">httpd</span><span·class="p">:</span><span·class="nf">info</span><span·class="p"·data-group-id="4684200321-1">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4684200321-2">[</span><span·class="ss">server_root</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">documen[·...·truncated·by·diffoscope;·len:·107,·SHA:·96ed9ec2d89acaa007dfe8f7278482a595b21dfc49cbb183e81c2a5a5c4735a1·...·]-1">)</span><span·class="p">.</span><span·class="w">
183 </span><span·class="p"·data-group-id="6450865432-3">[</span><span·class="p"·data-group-id="6450865432-4">{</span><span·class="ss">server_root</span><span·class="p">,</span><span·class="s">&quot;/tmp/www_test&quot;</span><span·class="p"·data-group-id="6450865432-4">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·1730,·SHA:·d085c081aebaf3e6b4e1d23adc591873fec9fa3096ad2a3621b27ca5d8f885de·...·]-1">)</span><span·class="p">.</span></code></pre><p>Notice·that·<code·class="inline">bind_address</code>·must·be·the·IP·address·reported·by·function·<code·class="inline">info</code>183 </span><span·class="p"·data-group-id="4684200321-3">[</span><span·class="p"·data-group-id="4684200321-4">{</span><span·class="ss">server_root</span><span·class="p">,</span><span·class="s">&quot;/tmp/www_test&quot;</span><span·class="p"·data-group-id="4684200321-4">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·1730,·SHA:·58d36dd3cba17978ddbf481836395590bb27d3761bde8cd6b2e2753bb9c6a8db·...·]-1">)</span><span·class="p">.</span></code></pre><p>Notice·that·<code·class="inline">bind_address</code>·must·be·the·IP·address·reported·by·function·<code·class="inline">info</code>
184 and·cannot·be·the·hostname·that·is·allowed·when·putting·in·<code·class="inline">bind_address</code>.</p><h2·id="dynamic-web-pages"·class="section-heading">184 and·cannot·be·the·hostname·that·is·allowed·when·putting·in·<code·class="inline">bind_address</code>.</p><h2·id="dynamic-web-pages"·class="section-heading">
185 ··<a·href="#dynamic-web-pages"·class="hover-link">185 ··<a·href="#dynamic-web-pages"·class="hover-link">
186 ····<i·class="ri-link-m"·aria-hidden="true"></i>186 ····<i·class="ri-link-m"·aria-hidden="true"></i>
187 ··</a>187 ··</a>
188 ··<span·class="text">Dynamic·Web·Pages</span>188 ··<span·class="text">Dynamic·Web·Pages</span>
189 </h2>189 </h2>
190 <p><a·href=""·id="dynamic_we_pages"></a></p><p><code·class="inline">Inets</code>·HTTP·server·provides·two·ways·of·creating·dynamic·web·pages,·each·with190 <p><a·href=""·id="dynamic_we_pages"></a></p><p><code·class="inline">Inets</code>·HTTP·server·provides·two·ways·of·creating·dynamic·web·pages,·each·with
Offset 301, 36 lines modifiedOffset 301, 36 lines modified
301 files,·Dets·databases·as·well·as·Mnesia·databases.</p><p>Uses·the·following·Erlang·Web·Server·API·interaction·data:</p><ul><li><code·class="inline">real_name</code>·-·from·<a·href="mod_alias.html"><code·class="inline">mod_alias</code></a></li></ul><p>Exports·the·following·Erlang·Web·Server·API·interaction·data:</p><ul><li><strong><code·class="inline">{remote_user,·User}</code></strong>·-·The·username·used·for·authentication.</li></ul><h4>Mnesia·As·Authentication·Database</h4><p>If·Mnesia·is·used·as·storage·method,·Mnesia·must·be·started·before·the·HTTP301 files,·Dets·databases·as·well·as·Mnesia·databases.</p><p>Uses·the·following·Erlang·Web·Server·API·interaction·data:</p><ul><li><code·class="inline">real_name</code>·-·from·<a·href="mod_alias.html"><code·class="inline">mod_alias</code></a></li></ul><p>Exports·the·following·Erlang·Web·Server·API·interaction·data:</p><ul><li><strong><code·class="inline">{remote_user,·User}</code></strong>·-·The·username·used·for·authentication.</li></ul><h4>Mnesia·As·Authentication·Database</h4><p>If·Mnesia·is·used·as·storage·method,·Mnesia·must·be·started·before·the·HTTP
302 server.·The·first·time·Mnesia·is·started,·the·schema·and·the·tables·must·be302 server.·The·first·time·Mnesia·is·started,·the·schema·and·the·tables·must·be
303 created·before·Mnesia·is·started.·A·simple·example·of·a·module·with·two303 created·before·Mnesia·is·started.·A·simple·example·of·a·module·with·two
304 functions·that·creates·and·start·Mnesia·is·provided·here.·Function304 functions·that·creates·and·start·Mnesia·is·provided·here.·Function
305 <code·class="inline">first_start/0</code>·is·to·be·used·the·first·time.·It·creates·the·schema·and·the305 <code·class="inline">first_start/0</code>·is·to·be·used·the·first·time.·It·creates·the·schema·and·the
306 tables.·<code·class="inline">start/0</code>·is·to·be·used·in·consecutive·startups.·<code·class="inline">start/0</code>·starts·Mnesia306 tables.·<code·class="inline">start/0</code>·is·to·be·used·in·consecutive·startups.·<code·class="inline">start/0</code>·starts·Mnesia
307 and·waits·for·the·tables·to·be·initiated.·This·function·must·only·be·used·when307 and·waits·for·the·tables·to·be·initiated.·This·function·must·only·be·used·when
308 the·schema·and·the·tables·are·already·created.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7518687247-1">(</span><span·class="ss">mnesia_test</span><span·class="p"·data-group-id="7518687247-1">)</span><span·class="p">.</span><span·class="w"> 
309 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7518687247-2">(</span><span·class="p"·data-group-id="7518687247-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class[·...·truncated·by·diffoscope;·len:·191,·SHA:·48fd7be2a67a6cd3f05f3e3372070f1c9d17d988e914d0683a718391220b8e33·...·]">)</span><span·class="p">.</span><span·class="w">308 the·schema·and·the·tables·are·already·created.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7409207985-1">(</span><span·class="ss">mnesia_test</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·27,·SHA:·5b4cd6e21ffbf7755aafc307eb77601d1bab70e57642f834c38329d157d5c24d·...·]">)</span><span·class="p">.</span><span·class="w">
 309 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7409207985-2">(</span><span·class="p"·data-group-id="7409207985-3">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="ss">load_data</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="7409207985-3">]</span><span·class="p"·data-group-id="7409207985-2">)</span><span·class="p">.</span><span·class="w">
310 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7518687247-4">(</span><span·class="s">&quot;mod_auth.hrl&quot;</span><span·class="p"·data-group-id="7518687247-4">)</span><span·class="p">.</span><span·class="w">310 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7409207985-4">(</span><span·class="s">&quot;mod_auth.hrl&quot;</span><span·class="p"·data-group-id="7409207985-4">)</span><span·class="p">.</span><span·class="w">
  
311 </span><span·class="nf">first_start</span><span·class="p"·data-group-id="7518687247-5">(</span><span·class="p"·data-group-id="7518687247-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">311 </span><span·class="nf">first_start</span><span·class="p"·data-group-id="7409207985-5">(</span><span·class="p"·data-group-id="7409207985-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
312 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_schema</span><span·class="p"·data-group-id="7518687247-6">(</span><span·class="p"·data-group-id="7518687247-7">[</span><span·class="nf">node</span><span·class="p"·data-group-id="7518687247-8">(</span><span·class="p"·data-group-id="7518687247-8">)</span><span·class="p"·data-group-id="7518687247-7">]</[·...·truncated·by·diffoscope;·len:·46,·SHA:·6641a441212c9cce1fd530a69bfa90ec52195df454bd9643b7fa002423616782·...·]-6">)</span><span·class="p">,</span><span·class="w">312 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_schema</span><span·class="p"·data-group-id="7409207985-6">(</span><span·class="p"·data-group-id="7409207985-7">[</span><span·class="nf">node</span><span·class="p"·data-group-id="7409207985-8">(</span><span·class="p"·data-group-id="7409207985-8">)</span><span·class="p"·data-group-id="7409207985-7">]</[·...·truncated·by·diffoscope;·len:·46,·SHA:·4dea748d3a59cd92c6421d7b40ba7772c438470463826fe78880a4646eb4956f·...·]-6">)</span><span·class="p">,</span><span·class="w">
313 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7518687247-9">(</span><span·class="p"·data-group-id="7518687247-9">)</span><span·class="p">,</span><span·class="w">313 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7409207985-9">(</span><span·class="p"·data-group-id="7409207985-9">)</span><span·class="p">,</span><span·class="w">
314 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="7518687247-10">(</span><span·class="ss">httpd_user</span><span·class="p">,</span><span·class="w">314 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="7409207985-10">(</span><span·class="ss">httpd_user</span><span·class="p">,</span><span·class="w">
315 ························</span><span·class="p"·data-group-id="7518687247-11">[</span><span·class="p"·data-group-id="7518687247-12">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bag</span><span·class="p"·data-group-id="7518687247-12">}</span><span·class="p">,</span><span·class="w">315 ························</span><span·class="p"·data-group-id="7409207985-11">[</span><span·class="p"·data-group-id="7409207985-12">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bag</span><span·class="p"·data-group-id="7409207985-12">}</span><span·class="p">,</span><span·class="w">
316 ·························</span><span·class="p"·data-group-id="7518687247-13">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7518687247-14">[</span><span·class="nf">node</span><span·class="p"·data-group-id="7518687247-15">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·134,·SHA:·ebd191ab6e70dc579949f30c7214c062678466419e893c51fe1bcc7b4f6e4e16·...·]-13">}</span><span·class="p">,</span><span·class="w">316 ·························</span><span·class="p"·data-group-id="7409207985-13">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7409207985-14">[</span><span·class="nf">node</span><span·class="p"·data-group-id="7409207985-15">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·134,·SHA:·c9c3af24eb9ec279885b7df76c8a680f07ff54fecb979fd1ac0abf298c62e67c·...·]-13">}</span><span·class="p">,</span><span·class="w">
317 ·························</span><span·class="p"·data-group-id="7518687247-16">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="7518687247-17">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">317 ·························</span><span·class="p"·data-group-id="7409207985-16">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="7409207985-17">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">
318 ··················································</span><span·class="ss">httpd_user</span><span·class="p"·data-group-id="7518687247-17">)</span><span·class="p"·data-group-id="7518687247-16">}</span><span·class="p"·data-group-id="7518687247-11">]</span><span·class="p"·data-group-id="7518687247-10">)</span><span·class="p">,</span><span·class="w">318 ··················································</span><span·class="ss">httpd_user</span><span·class="p"·data-group-id="7409207985-17">)</span><span·class="p"·data-group-id="7409207985-16">}</span><span·class="p"·data-group-id="7409207985-11">]</span><span·class="p"·data-group-id="7409207985-10">)</span><span·class="p">,</span><span·class="w">
319 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="7518687247-18">(</span><span·class="ss">httpd_group</span><span·class="p">,</span><span·class="w">319 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="7409207985-18">(</span><span·class="ss">httpd_group</span><span·class="p">,</span><span·class="w">
320 ························</span><span·class="p"·data-group-id="7518687247-19">[</span><span·class="p"·data-group-id="7518687247-20">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bag</span><span·class="p"·data-group-id="7518687247-20">}</span><span·class="p">,</span><span·class="w">320 ························</span><span·class="p"·data-group-id="7409207985-19">[</span><span·class="p"·data-group-id="7409207985-20">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bag</span><span·class="p"·data-group-id="7409207985-20">}</span><span·class="p">,</span><span·class="w">
321 ·························</span><span·class="p"·data-group-id="7518687247-21">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7518687247-22">[</span><span·class="nf">node</span><span·class="p"·data-group-id="7518687247-23">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·134,·SHA:·e0685a9d80e152b97d6d737677be0c2c45db2140716d58a890adb25e7fcca2d1·...·]-21">}</span><span·class="p">,</span><span·class="w">321 ·························</span><span·class="p"·data-group-id="7409207985-21">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7409207985-22">[</span><span·class="nf">node</span><span·class="p"·data-group-id="7409207985-23">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·134,·SHA:·f62cd3ce798baaf3c9edaeb9722419f7e7e7eb71bb3c742eaa26bcf8416cea65·...·]-21">}</span><span·class="p">,</span><span·class="w">
322 ·························</span><span·class="p"·data-group-id="7518687247-24">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="7518687247-25">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">322 ·························</span><span·class="p"·data-group-id="7409207985-24">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="7409207985-25">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">
323 ··················································</span><span·class="ss">httpd_group</span><span·class="p"·data-group-id="7518687247-25">)</span><span·class="p"·data-group-id="7518687247-24">}</span><span·class="p"·data-group-id="7518687247-19">]</span><span·class="p"·data-group-id="7518687247-18">)</span><span·class="p">,</span><span·class="w">323 ··················································</span><span·class="ss">httpd_group</span><span·class="p"·data-group-id="7409207985-25">)</span><span·class="p"·data-group-id="7409207985-24">}</span><span·class="p"·data-group-id="7409207985-19">]</span><span·class="p"·data-group-id="7409207985-18">)</span><span·class="p">,</span><span·class="w">
324 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">wait_for_tables</span><span·class="p"·data-group-id="7518687247-26">(</span><span·class="p"·data-group-id="7518687247-27">[</span><span·class="ss">httpd_user</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">httpd_group</span><span·class="p"·data-group-id="7518687247-27">]</span><span·cla[·...·truncated·by·diffoscope;·len:·109,·SHA:·92bd71e0ad6fae0b6841a8179d9578433538fd6c07b5933bb83428d3cd55893e·...·]-26">)</span><span·class="p">.</span><span·class="w">324 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">wait_for_tables</span><span·class="p"·data-group-id="7409207985-26">(</span><span·class="p"·data-group-id="7409207985-27">[</span><span·class="ss">httpd_user</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">httpd_group</span><span·class="p"·data-group-id="7409207985-27">]</span><span·cla[·...·truncated·by·diffoscope;·len:·109,·SHA:·a64eb6c244d8a377d40da4ba6576e32bebfd8b821b1f2de575f622dd6bd34186·...·]-26">)</span><span·class="p">.</span><span·class="w">
  
325 </span><span·class="nf">start</span><span·class="p"·data-group-id="7518687247-28">(</span><span·class="p"·data-group-id="7518687247-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">325 </span><span·class="nf">start</span><span·class="p"·data-group-id="7409207985-28">(</span><span·class="p"·data-group-id="7409207985-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
326 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7518687247-29">(</span><span·class="p"·data-group-id="7518687247-29">)</span><span·class="p">,</span><span·class="w">326 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7409207985-29">(</span><span·class="p"·data-group-id="7409207985-29">)</span><span·class="p">,</span><span·class="w">
327 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">wait_for_tables</span><span·class="p"·data-group-id="7518687247-30">(</span><span·class="p"·data-group-id="7518687247-31">[</span><span·class="ss">httpd_user</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">httpd_group</span><span·class="p"·data-group-id="7518687247-31">]</span><span·cla[·...·truncated·by·diffoscope;·len:·109,·SHA:·92bd71e0ad6fae0b6841a8179d9578433538fd6c07b5933bb83428d3cd55893e·...·]-30">)</span><span·class="p">.</span></code></pre><p>To·create·the·Mnesia·tables,·we·use·two·records·defined·in·<code·class="inline">mod_auth.hrl</code>,·so327 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">wait_for_tables</span><span·class="p"·data-group-id="7409207985-30">(</span><span·class="p"·data-group-id="7409207985-31">[</span><span·class="ss">httpd_user</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">httpd_group</span><span·class="p"·data-group-id="7409207985-31">]</span><span·cla[·...·truncated·by·diffoscope;·len:·109,·SHA:·a64eb6c244d8a377d40da4ba6576e32bebfd8b821b1f2de575f622dd6bd34186·...·]-30">)</span><span·class="p">.</span></code></pre><p>To·create·the·Mnesia·tables,·we·use·two·records·defined·in·<code·class="inline">mod_auth.hrl</code>,·so
328 that·file·must·be·included.·<code·class="inline">first_start/0</code>·creates·a·schema·that·specifies·on328 that·file·must·be·included.·<code·class="inline">first_start/0</code>·creates·a·schema·that·specifies·on
329 which·nodes·the·database·is·to·reside.·Then·it·starts·Mnesia·and·creates·the329 which·nodes·the·database·is·to·reside.·Then·it·starts·Mnesia·and·creates·the
330 tables.·The·first·argument·is·the·name·of·the·tables,·the·second·argument·is·a330 tables.·The·first·argument·is·the·name·of·the·tables,·the·second·argument·is·a
331 list·of·options·of·how·to·create·the·table,·see·<a·href="../../../../lib/mnesia-4.23.2/doc/html/mnesia.html"><code·class="inline">mnesia</code></a>,·documentation·for331 list·of·options·of·how·to·create·the·table,·see·<a·href="../../../../lib/mnesia-4.23.2/doc/html/mnesia.html"><code·class="inline">mnesia</code></a>,·documentation·for
332 more·information.·As·the·implementation·of·the·<code·class="inline">mod_auth_mnesia</code>·saves·one·row332 more·information.·As·the·implementation·of·the·<code·class="inline">mod_auth_mnesia</code>·saves·one·row
333 for·each·user,·the·type·must·be·<code·class="inline">bag</code>.·When·the·schema·and·the·tables·are333 for·each·user,·the·type·must·be·<code·class="inline">bag</code>.·When·the·schema·and·the·tables·are
334 created,·function·<a·href="../../../../lib/mnesia-4.23.2/doc/html/mnesia.html#start/0"><code·class="inline">mnesia:start/0</code></a>·is·used·to·start·Mnesia·and·waits·for·the334 created,·function·<a·href="../../../../lib/mnesia-4.23.2/doc/html/mnesia.html#start/0"><code·class="inline">mnesia:start/0</code></a>·is·used·to·start·Mnesia·and·waits·for·the
Offset 481, 15 lines modifiedOffset 481, 15 lines modified
481 ······<p·class="built-using">481 ······<p·class="built-using">
482 ········Built·using482 ········Built·using
483 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the483 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
484 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>484 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
485 ······</p>485 ······</p>
486 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>486 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
487 ····</footer>487 ····</footer>
488 ··</div>488 ··</div>
489 </main>489 </main>
490 </div>490 </div>
491 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>491 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
492 <script>492 <script>
493 ··document.addEventListener("DOMContentLoaded",·function·()·{493 ··document.addEventListener("DOMContentLoaded",·function·()·{
661 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/http_uri.html
    
Offset 281, 15 lines modifiedOffset 281, 15 lines modified
281 ······<p·class="built-using">281 ······<p·class="built-using">
282 ········Built·using282 ········Built·using
283 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the283 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
284 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>284 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
285 ······</p>285 ······</p>
286 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>286 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
287 ····</footer>287 ····</footer>
288 ··</div>288 ··</div>
289 </main>289 </main>
290 </div>290 </div>
291 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>291 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
292 <script>292 <script>
293 ··document.addEventListener("DOMContentLoaded",·function·()·{293 ··document.addEventListener("DOMContentLoaded",·function·()·{
603 B
html2text {}
Max HTML report size reached
8.76 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/httpc.html
    
Offset 1062, 21 lines modifiedOffset 1062, 21 lines modified
1062 requests·to·the·same·host,·port·combination·will·use·the·same·socket1062 requests·to·the·same·host,·port·combination·will·use·the·same·socket
1063 options.</p></blockquote><p>By·default·the·socket·options·set·by·function1063 options.</p></blockquote><p>By·default·the·socket·options·set·by·function
1064 <a·href="#set_options/1">set_options/1,2</a>·are·used·when·establishing·a·connection.</p></li><li><p><strong><code·class="inline">receiver</code></strong>·-·Defines·how·the·client·delivers·the·result·of·an·asynchronous1064 <a·href="#set_options/1">set_options/1,2</a>·are·used·when·establishing·a·connection.</p></li><li><p><strong><code·class="inline">receiver</code></strong>·-·Defines·how·the·client·delivers·the·result·of·an·asynchronous
1065 request·(<code·class="inline">sync</code>·has·the·value·<code·class="inline">false</code>).</p><ul><li><p><strong><a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:pid/0"><code·class="inline">pid/0</code></a></strong>·-·Messages·are·sent·to·this·process·in·the·format1065 request·(<code·class="inline">sync</code>·has·the·value·<code·class="inline">false</code>).</p><ul><li><p><strong><a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:pid/0"><code·class="inline">pid/0</code></a></strong>·-·Messages·are·sent·to·this·process·in·the·format
1066 <code·class="inline">{http,·ReplyInfo}</code>.</p></li><li><p><strong><code·class="inline">function/1</code></strong>·-·Information·is·delivered·to·the·receiver·through·calls·to1066 <code·class="inline">{http,·ReplyInfo}</code>.</p></li><li><p><strong><code·class="inline">function/1</code></strong>·-·Information·is·delivered·to·the·receiver·through·calls·to
1067 the·provided·fun·<code·class="inline">Receiver(ReplyInfo)</code>.</p></li><li><p><strong><code·class="inline">{Module,·Function,·Args}</code></strong>·-·Information·is·delivered·to·the·receiver1067 the·provided·fun·<code·class="inline">Receiver(ReplyInfo)</code>.</p></li><li><p><strong><code·class="inline">{Module,·Function,·Args}</code></strong>·-·Information·is·delivered·to·the·receiver
1068 through·calls·to·the·callback·function1068 through·calls·to·the·callback·function
1069 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(Module,·Function,·[ReplyInfo·|·Args])</code></a>.</p></li></ul><p>In·all·of·these·cases,·<code·class="inline">ReplyInfo</code>·has·the·following·structure:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p"·data-group-id="2996578225-1">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">saved_to_file</span><span·class="p"·data-group-id="2996578225-1">}</span><span·class="w">1069 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(Module,·Function,·[ReplyInfo·|·Args])</code></a>.</p></li></ul><p>In·all·of·these·cases,·<code·class="inline">ReplyInfo</code>·has·the·following·structure:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p"·data-group-id="3322676762-1">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">saved_to_file</span><span·class="p"·data-group-id="3322676762-1">}</span><span·class="w">
1070 ·</span><span·class="p"·data-group-id="2996578225-2">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2996578225-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</[·...·truncated·by·diffoscope;·len:·99,·SHA:·94ec504d537a6fe960f1f424f015184ac5a9371be95e2dc2e19ad13c2e0ad3bf·...·]-2">}</span><span·class="w">1070 ·</span><span·class="p"·data-group-id="3322676762-2">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3322676762-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</[·...·truncated·by·diffoscope;·len:·99,·SHA:·4cc4f4d90d6c161d5ec9a81740c2b7cb142b066df9380f64d6d32782c77ba2fe·...·]-2">}</span><span·class="w">
1071 ·</span><span·class="p"·data-group-id="2996578225-4">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="2996578225-4">}</span><span·class="w">1071 ·</span><span·class="p"·data-group-id="3322676762-4">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Result</span><span·class="p"·data-group-id="3322676762-4">}</span><span·class="w">
1072 ·</span><span·class="p"·data-group-id="2996578225-5">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stream_start</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Headers</span><span·class="p"·data-group-id="299657822[·...·truncated·by·diffoscope;·len:·1,·SHA:·ef2d127de37b942baad06145e54b0c619a1f22327b2ebbcfbec78f5564afe39d·...·]-5">}</span><span·class="w">1072 ·</span><span·class="p"·data-group-id="3322676762-5">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stream_start</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Headers</span><span·class="p"·data-group-id="332267676[·...·truncated·by·diffoscope;·len:·1,·SHA:·d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da3a666eec13ab35·...·]-5">}</span><span·class="w">
1073 ·</span><span·class="p"·data-group-id="2996578225-6">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stream_start</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Headers</span><span·class="p">,</span><span·class="w">[·...·truncated·by·diffoscope;·len:·82,·SHA:·83e074516c066e33f89145a922382b1458d9713d04c0cfa9279268560f2adcb4·...·]-6">}</span><span·class="w">1073 ·</span><span·class="p"·data-group-id="3322676762-6">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stream_start</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Headers</span><span·class="p">,</span><span·class="w">[·...·truncated·by·diffoscope;·len:·82,·SHA:·003abb33ca761645c2e39f7b1dce8407e99e839cdabc4bab14a74c9eacbfbe78·...·]-6">}</span><span·class="w">
1074 ·</span><span·class="p"·data-group-id="2996578225-7">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stream</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BinBodyPart</span><span·class="p"·data-group-id="2996578225-7">}</span><span·class="w">1074 ·</span><span·class="p"·data-group-id="3322676762-7">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stream</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BinBodyPart</span><span·class="p"·data-group-id="3322676762-7">}</span><span·class="w">
1075 ·</span><span·class="p"·data-group-id="2996578225-8">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stream_end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Headers</span><span·class="p"·data-group-id="2996578225-8">}</span></code></pre><p>Default·is·the·<code·class="inline">pid</code>·of·the·process·calling·the·request·function·(<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>).</p><p><a·href=""·id="ipv6_host_with_brackets"></a></p></li><li><p><strong><code·class="inline">ipv6_host_with_brackets</code></strong>·-·Defines·when·parsing·the·Host-Port·part·of·an1075 ·</span><span·class="p"·data-group-id="3322676762-8">{</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stream_end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Headers</span><span·class="p"·data-group-id="3322676762-8">}</span></code></pre><p>Default·is·the·<code·class="inline">pid</code>·of·the·process·calling·the·request·function·(<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>).</p><p><a·href=""·id="ipv6_host_with_brackets"></a></p></li><li><p><strong><code·class="inline">ipv6_host_with_brackets</code></strong>·-·Defines·when·parsing·the·Host-Port·part·of·an
1076 URI·with·an·IPv6·address·with·brackets,·if·those·brackets·are·to·be·retained1076 URI·with·an·IPv6·address·with·brackets,·if·those·brackets·are·to·be·retained
1077 (<code·class="inline">true</code>)·or·stripped·(<code·class="inline">false</code>).</p><p>Default·is·<code·class="inline">false</code>.</p></li></ul>1077 (<code·class="inline">true</code>)·or·stripped·(<code·class="inline">false</code>).</p><p>Default·is·<code·class="inline">false</code>.</p></li></ul>
1078 ··</section>1078 ··</section>
1079 </section>1079 </section>
1080 <section·class="detail"·id="reset_cookies/0">1080 <section·class="detail"·id="reset_cookies/0">
  
1081 ··<div·class="detail-header">1081 ··<div·class="detail-header">
Offset 1610, 15 lines modifiedOffset 1610, 15 lines modified
1610 ······<p·class="built-using">1610 ······<p·class="built-using">
1611 ········Built·using1611 ········Built·using
1612 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1612 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1613 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1613 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1614 ······</p>1614 ······</p>
1615 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1615 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1616 ····</footer>1616 ····</footer>
1617 ··</div>1617 ··</div>
1618 </main>1618 </main>
1619 </div>1619 </div>
1620 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1620 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1621 <script>1621 <script>
1622 ··document.addEventListener("DOMContentLoaded",·function·()·{1622 ··document.addEventListener("DOMContentLoaded",·function·()·{
753 B
html2text {}
Max HTML report size reached
32.6 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/httpd.html
    
Offset 214, 51 lines modifiedOffset 214, 51 lines modified
214 }</code></pre><p>An·example·of·a·log·entry·with·only·default·settings·of·logger</p><pre><code·class="text">=ERROR·REPORT====·9-Oct-2019::09:33:27.350235·===214 }</code></pre><p>An·example·of·a·log·entry·with·only·default·settings·of·logger</p><pre><code·class="text">=ERROR·REPORT====·9-Oct-2019::09:33:27.350235·===
215 ···Server:·My·Server215 ···Server:·My·Server
216 ·Protocol:·HTTP216 ·Protocol:·HTTP
217 Transport:·TLS217 Transport:·TLS
218 ······URI:·/not_there218 ······URI:·/not_there
219 ·····Host:·127.0.1.1:80219 ·····Host:·127.0.1.1:80
220 ·····Peer:·127.0.0.1:45253220 ·····Peer:·127.0.0.1:45253
221 ···Reason:·[{statuscode,404},{description,&quot;Object·Not·Found&quot;}]</code></pre><p>Using·this·option·makes·mod_log·and·mod_disk_log·error·logs·redundant.</p><p>Add·the·filter</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1572388934-1">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">221 ···Reason:·[{statuscode,404},{description,&quot;Object·Not·Found&quot;}]</code></pre><p>Using·this·option·makes·mod_log·and·mod_disk_log·error·logs·redundant.</p><p>Add·the·filter</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0606121392-1">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">
222 ····</span><span·class="p"·data-group-id="1572388934-2">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="ss">equal</span><span·class="p">,</span><span·class="p"·data-group-id="1572388934-3">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="ss">inets</sp[·...·truncated·by·diffoscope;·len:·330,·SHA:·9826f263ad1fae5bec5985bb5b11b27606dcf24f4d27655ae9e81c12ec8f2c8f·...·]-2">}</span></code></pre><p>to·appropriate·logger·handler·to·handle·the·events.·For·example·to·write·the222 ····</span><span·class="p"·data-group-id="0606121392-2">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="ss">equal</span><span·class="p">,</span><span·class="p"·data-group-id="0606121392-3">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="ss">inets</sp[·...·truncated·by·diffoscope;·len:·330,·SHA:·78bc4a013dc9aff9e55599c1612e616998e72126f4d741e803c201b29589e568·...·]-2">}</span></code></pre><p>to·appropriate·logger·handler·to·handle·the·events.·For·example·to·write·the
223 error·log·from·an·httpd·server·with·a·<code·class="inline">ServerID</code>·of·<code·class="inline">my_server</code>·to·a·file223 error·log·from·an·httpd·server·with·a·<code·class="inline">ServerID</code>·of·<code·class="inline">my_server</code>·to·a·file
224 you·can·use·the·following·sys.config:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0150722817-1">[</span><span·class="p"·data-group-id="0150722817-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">224 you·can·use·the·following·sys.config:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2785541900-1">[</span><span·class="p"·data-group-id="2785541900-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
225 ·</span><span·class="p"·data-group-id="0150722817-3">[</span><span·class="p"·data-group-id="0150722817-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">225 ·</span><span·class="p"·data-group-id="2785541900-3">[</span><span·class="p"·data-group-id="2785541900-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
226 ··</span><span·class="p"·data-group-id="0150722817-5">[</span><span·class="p"·data-group-id="0150722817-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">http_error_test</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">226 ··</span><span·class="p"·data-group-id="2785541900-5">[</span><span·class="p"·data-group-id="2785541900-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">http_error_test</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
227 ····</span><span·class="p"·data-group-id="0150722817-7">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0150722817-8">#{</span><span·class="w">·</span><span·class="ss">file</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·173,·SHA:·6258704362816b7e6d298ec6c5aae4929bc75731613b0672e4cdd0147e2506a2·...·]-8">}</span><span·class="p">,</span><span·class="w">227 ····</span><span·class="p"·data-group-id="2785541900-7">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2785541900-8">#{</span><span·class="w">·</span><span·class="ss">file</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·173,·SHA:·63b978b809f6bf75293750134abf50ea61ab58092b62e503ff179f5b52a31603·...·]-8">}</span><span·class="p">,</span><span·class="w">
228 ······</span><span·class="ss">filters</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0150722817-9">[</span><span·class="p"·data-group-id="0150722817-10">{</span><span·class="ss">inets_httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0150722817-11">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">228 ······</span><span·class="ss">filters</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2785541900-9">[</span><span·class="p"·data-group-id="2785541900-10">{</span><span·class="ss">inets_httpd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2785541900-11">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">
229 ·································</span><span·class="p"·data-group-id="0150722817-12">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">equal</span><span·class="p">,</span><span·class="w">229 ·································</span><span·class="p"·data-group-id="2785541900-12">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">equal</span><span·class="p">,</span><span·class="w">
230 ··································</span><span·class="p"·data-group-id="0150722817-13">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·147,·SHA:·a8174d2aa03d8d1df90978b4b62105d57bab854be252a7a41c32a9233c9375fa·...·]-13">]</span><span·class="w">230 ··································</span><span·class="p"·data-group-id="2785541900-13">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·147,·SHA:·319ebcb8e6efe0524e3d42b4ca574da23747138665069cfad6cd147d6ae5ca65·...·]-13">]</span><span·class="w">
231 ·································</span><span·class="p"·data-group-id="0150722817-12">}</span><span·class="p"·data-group-id="0150722817-11">}</span><span·class="p"·data-group-id="0150722817-10">}</span><span·class="p"·data-group-id="0150722817-9">]</span><span·class="p">,</span><span·class="w">231 ·································</span><span·class="p"·data-group-id="2785541900-12">}</span><span·class="p"·data-group-id="2785541900-11">}</span><span·class="p"·data-group-id="2785541900-10">}</span><span·class="p"·data-group-id="2785541900-9">]</span><span·class="p">,</span><span·class="w">
232 ······</span><span·class="ss">filter_default</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">stop</span><span·class="w">·</span><span·class="p"·data-group-id="0150722817-7">}</span><span·class="p"·data-group-id="0150722817-6">}</span><span·class="p"·data-group-id="0150722817-5">]</span><span·class="p"·data-group-id="0150722817-4">}</span><span·class="p"·data-group-id="0150722817-3">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·371,·SHA:·401e5f586fb60c0ddfdad6b2da08e9c994daff053e43b2f9d78cc90ac0e70c95·...·]-1">(</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">232 ······</span><span·class="ss">filter_default</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">stop</span><span·class="w">·</span><span·class="p"·data-group-id="2785541900-7">}</span><span·class="p"·data-group-id="2785541900-6">}</span><span·class="p"·data-group-id="2785541900-5">]</span><span·class="p"·data-group-id="2785541900-4">}</span><span·class="p"·data-group-id="2785541900-3">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·371,·SHA:·8047dfbf2bf8e7f03cb85edb87f4e5844b17f00edc004130c88190e785e277a2·...·]-1">(</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">
233 ··························</span><span·class="ss">inets_httpd</span><span·class="p">,</span><span·class="w">233 ··························</span><span·class="ss">inets_httpd</span><span·class="p">,</span><span·class="w">
234 ··························</span><span·class="p"·data-group-id="6111242358-2">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">234 ··························</span><span·class="p"·data-group-id="0216751590-2">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">
235 ···························</span><span·class="p"·data-group-id="6111242358-3">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">equal</span><span·class="p">,</span><span·class="w">235 ···························</span><span·class="p"·data-group-id="0216751590-3">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">equal</span><span·class="p">,</span><span·class="w">
236 ····························</span><span·class="p"·data-group-id="6111242358-4">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·305,·SHA:·3b80acf66aa404d2b1a80f37e3ae8cc46235193bfbf67267aeb1db8201f9ef02·...·]-1">)</span><span·class="p">.</span></code></pre></li></ul></li><li><p><strong><a·href=""·id="prop_log_format"></a>·{log_format,·common·|·combined}</strong><br/>Defines·if·access·logs·are·to·be·written·according·to·the·<code·class="inline">common</code>·log·format236 ····························</span><span·class="p"·data-group-id="0216751590-4">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">httpd</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·305,·SHA:·3ac13eedd4543c06b0f8d08faa96cb01b6f68bc194f1862a3937c785992a10c8·...·]-1">)</span><span·class="p">.</span></code></pre></li></ul></li><li><p><strong><a·href=""·id="prop_log_format"></a>·{log_format,·common·|·combined}</strong><br/>Defines·if·access·logs·are·to·be·written·according·to·the·<code·class="inline">common</code>·log·format
237 or·the·extended·common·log·format.·The·<code·class="inline">common</code>·format·is·one·line·looking237 or·the·extended·common·log·format.·The·<code·class="inline">common</code>·format·is·one·line·looking
238 like·this:·<code·class="inline">remotehost·rfc931·authuser·[date]·&quot;request&quot;·status·bytes</code>.</p><p>Here:</p><ul><li><p><strong><code·class="inline">remotehost</code></strong>·-·Remote.</p></li><li><p><strong><code·class="inline">rfc931</code></strong>·-·The·remote·username·of·the·client238 like·this:·<code·class="inline">remotehost·rfc931·authuser·[date]·&quot;request&quot;·status·bytes</code>.</p><p>Here:</p><ul><li><p><strong><code·class="inline">remotehost</code></strong>·-·Remote.</p></li><li><p><strong><code·class="inline">rfc931</code></strong>·-·The·remote·username·of·the·client
239 (<a·href="http://www.ietf.org/rfc/rfc931.txt">RFC·931</a>).</p></li><li><p><strong><code·class="inline">authuser</code></strong>·-·The·username·used·for·authentication.</p></li><li><p><strong><code·class="inline">[date]</code></strong>·-·Date·and·time·of·the·request239 (<a·href="http://www.ietf.org/rfc/rfc931.txt">RFC·931</a>).</p></li><li><p><strong><code·class="inline">authuser</code></strong>·-·The·username·used·for·authentication.</p></li><li><p><strong><code·class="inline">[date]</code></strong>·-·Date·and·time·of·the·request
240 (<a·href="http://www.ietf.org/rfc/rfc1123.txt">RFC·1123</a>).</p></li><li><p><strong><code·class="inline">&quot;request&quot;</code></strong>·-·The·request·line·as·it·came·from·the·client240 (<a·href="http://www.ietf.org/rfc/rfc1123.txt">RFC·1123</a>).</p></li><li><p><strong><code·class="inline">&quot;request&quot;</code></strong>·-·The·request·line·as·it·came·from·the·client
241 (<a·href="http://www.ietf.org/rfc/rfc1945.txt">RFC·1945</a>).</p></li><li><p><strong><code·class="inline">status</code></strong>·-·The·HTTP·status·code·returned·to·the·client241 (<a·href="http://www.ietf.org/rfc/rfc1945.txt">RFC·1945</a>).</p></li><li><p><strong><code·class="inline">status</code></strong>·-·The·HTTP·status·code·returned·to·the·client
242 (<a·href="http://www.ietf.org/rfc/rfc1945.txt">RFC·1945</a>).</p></li><li><p><strong><code·class="inline">bytes</code></strong>·-·The·content-length·of·the·document·transferred.</p></li></ul><p>The·<code·class="inline">combined</code>·format·is·one·line·looking·like·this:242 (<a·href="http://www.ietf.org/rfc/rfc1945.txt">RFC·1945</a>).</p></li><li><p><strong><code·class="inline">bytes</code></strong>·-·The·content-length·of·the·document·transferred.</p></li></ul><p>The·<code·class="inline">combined</code>·format·is·one·line·looking·like·this:
243 <code·class="inline">remotehost·rfc931·authuser·[date]·&quot;request&quot;·status·bytes·&quot;referer&quot;·&quot;user_agent&quot;</code></p><p>In·addition·to·the·earlier:</p><ul><li><p><strong><code·class="inline">&quot;referer&quot;</code></strong>·-·The·URL·the·client·was·on·before·requesting·the·URL·(if·it243 <code·class="inline">remotehost·rfc931·authuser·[date]·&quot;request&quot;·status·bytes·&quot;referer&quot;·&quot;user_agent&quot;</code></p><p>In·addition·to·the·earlier:</p><ul><li><p><strong><code·class="inline">&quot;referer&quot;</code></strong>·-·The·URL·the·client·was·on·before·requesting·the·URL·(if·it
244 could·not·be·determined,·a·minus·sign·is·placed·in·this·field).</p></li><li><p><strong><code·class="inline">&quot;user_agent&quot;</code></strong>·-·The·software·the·client·claims·to·be·using·(if·it·could244 could·not·be·determined,·a·minus·sign·is·placed·in·this·field).</p></li><li><p><strong><code·class="inline">&quot;user_agent&quot;</code></strong>·-·The·software·the·client·claims·to·be·using·(if·it·could
245 not·be·determined,·a·minus·sign·is·placed·in·this·field).</p></li></ul><p>This·affects·the·access·logs·written·by·<code·class="inline">mod_log</code>·and·<code·class="inline">mod_disk_log</code>.</p></li><li><p><strong><a·href=""·id="prop_elog_format"></a>·{error_log_format,·pretty·|·compact}</strong><br/>Default·is·<code·class="inline">pretty</code>.·If·the·error·log·is·meant·to·be·read·directly·by·a·human,245 not·be·determined,·a·minus·sign·is·placed·in·this·field).</p></li></ul><p>This·affects·the·access·logs·written·by·<code·class="inline">mod_log</code>·and·<code·class="inline">mod_disk_log</code>.</p></li><li><p><strong><a·href=""·id="prop_elog_format"></a>·{error_log_format,·pretty·|·compact}</strong><br/>Default·is·<code·class="inline">pretty</code>.·If·the·error·log·is·meant·to·be·read·directly·by·a·human,
246 <code·class="inline">pretty</code>·is·the·best·option.</p><p><code·class="inline">pretty</code>·has·a·format·corresponding·to:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9817357136-1">(</span><span·class="s">&quot;[</span><span·class="si">~s</span><span·class="s">]·</span><span·class="si">~s</span><span·class="s">,·reason:·</span><span·class="si">~n</span><span·class="s">·</span><span·class="si">~p</span><span·class="s">·<[·...·truncated·by·diffoscope;·len:·1380,·SHA:·dbf31ee159409be8dd4980123a4b2af67f8166fb87e951590f53e7993d4d1a4b·...·]5-1">)</span><span·class="p">.</span></code></pre><p>This·affects·the·error·logs·written·by·<code·class="inline">mod_log</code>·and·<code·class="inline">mod_disk_log</code>.</p></li></ul><p><a·href=""·id="props_alias"></a></p><p><em>URL·Aliasing·Properties·-·Requires·mod_alias</em></p><ul><li><p><strong><a·href=""·id="prop_alias"></a>·{alias,·{Alias,·RealName}}</strong><br/><code·class="inline">Alias·=·string()</code>·and·<code·class="inline">RealName·=·string()</code>.·<code·class="inline">alias</code>·allows·documents·to·be246 <code·class="inline">pretty</code>·is·the·best·option.</p><p><code·class="inline">pretty</code>·has·a·format·corresponding·to:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0727673984-1">(</span><span·class="s">&quot;[</span><span·class="si">~s</span><span·class="s">]·</span><span·class="si">~s</span><span·class="s">,·reason:·</span><span·class="si">~n</span><span·class="s">·</span><span·class="si">~p</span><span·class="s">·<[·...·truncated·by·diffoscope;·len:·1380,·SHA:·54165670e39a108145e0244a25c15dc5ee66a03f286377dba72c1313709ab4e2·...·]5-1">)</span><span·class="p">.</span></code></pre><p>This·affects·the·error·logs·written·by·<code·class="inline">mod_log</code>·and·<code·class="inline">mod_disk_log</code>.</p></li></ul><p><a·href=""·id="props_alias"></a></p><p><em>URL·Aliasing·Properties·-·Requires·mod_alias</em></p><ul><li><p><strong><a·href=""·id="prop_alias"></a>·{alias,·{Alias,·RealName}}</strong><br/><code·class="inline">Alias·=·string()</code>·and·<code·class="inline">RealName·=·string()</code>.·<code·class="inline">alias</code>·allows·documents·to·be
247 stored·in·the·local·file·system·instead·of·the·<code·class="inline">document_root</code>·location.·URLs247 stored·in·the·local·file·system·instead·of·the·<code·class="inline">document_root</code>·location.·URLs
248 with·a·path·beginning·with·url-path·is·mapped·to·local·files·beginning·with248 with·a·path·beginning·with·url-path·is·mapped·to·local·files·beginning·with
249 directory-filename,·for·example:</p><pre><code·class="text">{alias,·{&quot;/image&quot;,·&quot;/ftp/pub/image&quot;}}</code></pre><p>Access·to·<a·href="http://your.server.org/image/foo.gif">http://your.server.org/image/foo.gif</a>·would·refer·to·the·file249 directory-filename,·for·example:</p><pre><code·class="text">{alias,·{&quot;/image&quot;,·&quot;/ftp/pub/image&quot;}}</code></pre><p>Access·to·<a·href="http://your.server.org/image/foo.gif">http://your.server.org/image/foo.gif</a>·would·refer·to·the·file
250 /ftp/pub/image/foo.gif.</p></li><li><p><strong><a·href=""·id="prop_re_write"></a>·{re_write,·{Re,·Replacement}}</strong><br/><code·class="inline">Re·=·string()</code>·and·<code·class="inline">Replacement·=·string()</code>.·<code·class="inline">re_write</code>·allows·documents·to250 /ftp/pub/image/foo.gif.</p></li><li><p><strong><a·href=""·id="prop_re_write"></a>·{re_write,·{Re,·Replacement}}</strong><br/><code·class="inline">Re·=·string()</code>·and·<code·class="inline">Replacement·=·string()</code>.·<code·class="inline">re_write</code>·allows·documents·to
251 be·stored·in·the·local·file·system·instead·of·the·<code·class="inline">document_root</code>·location.251 be·stored·in·the·local·file·system·instead·of·the·<code·class="inline">document_root</code>·location.
252 URLs·are·rewritten·by·<a·href="../../../../lib/stdlib-6.0.1/doc/html/re.html#replace/3"><code·class="inline">re:replace/3</code></a>·to·produce·a·path·in·the·local252 URLs·are·rewritten·by·<a·href="../../../../lib/stdlib-6.0.1/doc/html/re.html#replace/3"><code·class="inline">re:replace/3</code></a>·to·produce·a·path·in·the·local
253 file-system,·for·example:</p><pre><code·class="text">{re_write,·{&quot;^/[~]([^/]+)(.*)$&quot;,·&quot;/home/\\1/public\\2&quot;}}</code></pre><p>Access·to·<a·href="http://your.server.org/~bob/foo.gif">http://your.server.org/~bob/foo.gif</a>·would·refer·to·the·file253 file-system,·for·example:</p><pre><code·class="text">{re_write,·{&quot;^/[~]([^/]+)(.*)$&quot;,·&quot;/home/\\1/public\\2&quot;}}</code></pre><p>Access·to·<a·href="http://your.server.org/~bob/foo.gif">http://your.server.org/~bob/foo.gif</a>·would·refer·to·the·file
254 /home/bob/public/foo.gif.</p></li><li><p><strong><a·href=""·id="prop_dir_idx"></a>·{directory_index,·[string()]}</strong><br/><code·class="inline">directory_index</code>·specifies·a·list·of·resources·to·look·for·if·a·client254 /home/bob/public/foo.gif.</p></li><li><p><strong><a·href=""·id="prop_dir_idx"></a>·{directory_index,·[string()]}</strong><br/><code·class="inline">directory_index</code>·specifies·a·list·of·resources·to·look·for·if·a·client
255 requests·a·directory·using·a·<code·class="inline">/</code>·at·the·end·of·the·directory·name.·<code·class="inline">file</code>255 requests·a·directory·using·a·<code·class="inline">/</code>·at·the·end·of·the·directory·name.·<code·class="inline">file</code>
256 depicts·the·name·of·a·file·in·the·directory.·Several·files·can·be·given,·in256 depicts·the·name·of·a·file·in·the·directory.·Several·files·can·be·given,·in
257 which·case·the·server·returns·the·first·it·finds,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1114543918-1">{</span><span·class="ss">directory_index</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1114543918-2">[</span><span·class="s">&quot;index.html&quot;</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·140,·SHA:·27a0f3b2a09188f7d192e4f5f49ed9079fe35e3667f74c3475c69cd413cabfec·...·]-1">}</span></code></pre><p>Access·to·<a·href="http://your.server.org/docs/">http://your.server.org/docs/</a>·would·return257 which·case·the·server·returns·the·first·it·finds,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0164613335-1">{</span><span·class="ss">directory_index</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0164613335-2">[</span><span·class="s">&quot;index.html&quot;</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·140,·SHA:·c2a7e645c184293dca22b47611b739bacbda0c850dcef3a93fe6e2305df683ca·...·]-1">}</span></code></pre><p>Access·to·<a·href="http://your.server.org/docs/">http://your.server.org/docs/</a>·would·return
258 <a·href="http://your.server.org/docs/index.html">http://your.server.org/docs/index.html</a>·or258 <a·href="http://your.server.org/docs/index.html">http://your.server.org/docs/index.html</a>·or
259 <a·href="http://your.server.org/docs/welcome.html">http://your.server.org/docs/welcome.html</a>·if·index.html·does·not·exist.</p></li></ul><p><a·href=""·id="props_cgi"></a></p><p><em>CGI·Properties·-·Requires·mod_cgi</em></p><ul><li><p><strong><a·href=""·id="prop_script_alias"></a>·{script_alias,·{Alias,·RealName}}</strong><br/><code·class="inline">Alias·=·string()</code>·and·<code·class="inline">RealName·=·string()</code>.·Have·the·same·behavior·as259 <a·href="http://your.server.org/docs/welcome.html">http://your.server.org/docs/welcome.html</a>·if·index.html·does·not·exist.</p></li></ul><p><a·href=""·id="props_cgi"></a></p><p><em>CGI·Properties·-·Requires·mod_cgi</em></p><ul><li><p><strong><a·href=""·id="prop_script_alias"></a>·{script_alias,·{Alias,·RealName}}</strong><br/><code·class="inline">Alias·=·string()</code>·and·<code·class="inline">RealName·=·string()</code>.·Have·the·same·behavior·as
260 property·<code·class="inline">alias</code>,·except·that·they·also·mark·the·target·directory·as260 property·<code·class="inline">alias</code>,·except·that·they·also·mark·the·target·directory·as
261 containing·CGI·scripts.·URLs·with·a·path·beginning·with·url-path·are·mapped·to261 containing·CGI·scripts.·URLs·with·a·path·beginning·with·url-path·are·mapped·to
262 scripts·beginning·with·directory-filename,·for·example:</p><pre><code·class="text">{script_alias,·{&quot;/cgi-bin/&quot;,·&quot;/web/cgi-bin/&quot;}}</code></pre><p>Access·to·<a·href="http://your.server.org/cgi-bin/foo">http://your.server.org/cgi-bin/foo</a>·would·cause·the·server·to·run·the262 scripts·beginning·with·directory-filename,·for·example:</p><pre><code·class="text">{script_alias,·{&quot;/cgi-bin/&quot;,·&quot;/web/cgi-bin/&quot;}}</code></pre><p>Access·to·<a·href="http://your.server.org/cgi-bin/foo">http://your.server.org/cgi-bin/foo</a>·would·cause·the·server·to·run·the
263 script·/web/cgi-bin/foo.</p></li><li><p><strong><a·href=""·id="prop_script_re_write"></a>·{script_re_write,·{Re,·Replacement}}</strong><br/><code·class="inline">Re·=·string()</code>·and·<code·class="inline">Replacement·=·string()</code>.·Have·the·same·behavior·as263 script·/web/cgi-bin/foo.</p></li><li><p><strong><a·href=""·id="prop_script_re_write"></a>·{script_re_write,·{Re,·Replacement}}</strong><br/><code·class="inline">Re·=·string()</code>·and·<code·class="inline">Replacement·=·string()</code>.·Have·the·same·behavior·as
264 property·<code·class="inline">re_write</code>,·except·that·they·also·mark·the·target·directory·as264 property·<code·class="inline">re_write</code>,·except·that·they·also·mark·the·target·directory·as
Offset 358, 30 lines modifiedOffset 358, 30 lines modified
358 remembered.·After·this·time·has·passed,·the·authentication·is·no·longer358 remembered.·After·this·time·has·passed,·the·authentication·is·no·longer
359 reported.·Default·is·<code·class="inline">30</code>.</p></li></ul><h2·id="module-web-server-api-data-types"·class="section-heading">359 reported.·Default·is·<code·class="inline">30</code>.</p></li></ul><h2·id="module-web-server-api-data-types"·class="section-heading">
360 ··<a·href="#module-web-server-api-data-types"·class="hover-link">360 ··<a·href="#module-web-server-api-data-types"·class="hover-link">
361 ····<i·class="ri-link-m"·aria-hidden="true"></i>361 ····<i·class="ri-link-m"·aria-hidden="true"></i>
362 ··</a>362 ··</a>
363 ··<span·class="text">Web·server·API·data·types</span>363 ··<span·class="text">Web·server·API·data·types</span>
364 </h2>364 </h2>
365 <p>The·Erlang·web·server·API·data·types·are·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="n">ModData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">mod</span><span·class="p"·data-group-id="8652878073-1">{</span><span·class="p"·data-group-id="8652878073-1">}</span><span·class="w">365 <p>The·Erlang·web·server·API·data·types·are·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="n">ModData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">mod</span><span·class="p"·data-group-id="4351975471-1">{</span><span·class="p"·data-group-id="4351975471-1">}</span><span·class="w">
366 </span><span·class="w">366 </span><span·class="w">
367 ······</span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="8652878073-2">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8652878073-3">{</span><span·class="w">367 ······</span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4351975471-2">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4351975471-3">{</span><span·class="w">
368 »       »       </span><span·class="ss">data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8652878073-4">[</span><span·class="p"·data-group-id="8652878073-4">]</span><span·class="p">,</span><span·class="w">368 »       »       </span><span·class="ss">data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4351975471-4">[</span><span·class="p"·data-group-id="4351975471-4">]</span><span·class="p">,</span><span·class="w">
369 »       »       </span><span·class="ss">socket_type</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">ip_comm</span><span·class="p">,</span><span·class="w">369 »       »       </span><span·class="ss">socket_type</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">ip_comm</span><span·class="p">,</span><span·class="w">
370 »       »       </span><span·class="ss">socket</span><span·class="p">,</span><span·class="w">370 »       »       </span><span·class="ss">socket</span><span·class="p">,</span><span·class="w">
371 »       »       </span><span·class="ss">config_db</span><span·class="p">,</span><span·class="w">371 »       »       </span><span·class="ss">config_db</span><span·class="p">,</span><span·class="w">
372 »       »       </span><span·class="ss">method</span><span·class="p">,</span><span·class="w">372 »       »       </span><span·class="ss">method</span><span·class="p">,</span><span·class="w">
373 »       »       </span><span·class="ss">absolute_uri</span><span·class="p">,</span><span·class="w">373 »       »       </span><span·class="ss">absolute_uri</span><span·class="p">,</span><span·class="w">
374 »       »       </span><span·class="ss">request_uri</span><span·class="p">,</span><span·class="w">374 »       »       </span><span·class="ss">request_uri</span><span·class="p">,</span><span·class="w">
375 »       »       </span><span·class="ss">http_version</span><span·class="p">,</span><span·class="w">375 »       »       </span><span·class="ss">http_version</span><span·class="p">,</span><span·class="w">
376 »       »       </span><span·class="ss">request_line</span><span·class="p">,</span><span·class="w">376 »       »       </span><span·class="ss">request_line</span><span·class="p">,</span><span·class="w">
377 »       »       </span><span·class="ss">parsed_header</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8652878073-5">[</span><span·class="p"·data-group-id="8652878073-5">]</span><span·class="p">,</span><span·class="w">377 »       »       </span><span·class="ss">parsed_header</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4351975471-5">[</span><span·class="p"·data-group-id="4351975471-5">]</span><span·class="p">,</span><span·class="w">
378 »       »       </span><span·class="ss">entity_body</span><span·class="p">,</span><span·class="w">378 »       »       </span><span·class="ss">entity_body</span><span·class="p">,</span><span·class="w">
379 »       »       </span><span·class="ss">connection</span><span·class="w">379 »       »       </span><span·class="ss">connection</span><span·class="w">
380 »       </span><span·class="p"·data-group-id="8652878073-3">}</span><span·class="p"·data-group-id="8652878073-2">)</span><span·class="p">.</span></code></pre><p>To·access·the·record·in·your·callback-module·use:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p">[·...·truncated·by·diffoscope;·len:·195,·SHA:·e05f5aa73c1442fb8e5dfc2ad89c9bd55db12f421cf59573b36241cf7debfb19·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·fields·of·record·<code·class="inline">mod</code>·have·the·following·meaning:</p><ul><li><p><strong><code·class="inline">data</code></strong>·-·Type·<code·class="inline">[{InteractionKey,InteractionValue}]</code>·is·used·to·propagate380 »       </span><span·class="p"·data-group-id="4351975471-3">}</span><span·class="p"·data-group-id="4351975471-2">)</span><span·class="p">.</span></code></pre><p>To·access·the·record·in·your·callback-module·use:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p">[·...·truncated·by·diffoscope;·len:·195,·SHA:·ab8e28149ede91458db4560fd04c0a820cf41b9ca445c6614c1142a9e79e7987·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·fields·of·record·<code·class="inline">mod</code>·have·the·following·meaning:</p><ul><li><p><strong><code·class="inline">data</code></strong>·-·Type·<code·class="inline">[{InteractionKey,InteractionValue}]</code>·is·used·to·propagate
381 data·between·modules.·Depicted·<code·class="inline">interaction_data()</code>·in·function·type381 data·between·modules.·Depicted·<code·class="inline">interaction_data()</code>·in·function·type
382 declarations.</p></li><li><p><strong><code·class="inline">socket_type</code></strong>·-·<code·class="inline">socket_type()</code>·indicates·whether·it·is·an·IP·socket·or·an382 declarations.</p></li><li><p><strong><code·class="inline">socket_type</code></strong>·-·<code·class="inline">socket_type()</code>·indicates·whether·it·is·an·IP·socket·or·an
383 <code·class="inline">ssl</code>·socket.</p></li><li><p><strong><code·class="inline">socket</code></strong>·-·The·socket,·in·format·<code·class="inline">ip_comm</code>·or·<code·class="inline">ssl</code>,·depending·on383 <code·class="inline">ssl</code>·socket.</p></li><li><p><strong><code·class="inline">socket</code></strong>·-·The·socket,·in·format·<code·class="inline">ip_comm</code>·or·<code·class="inline">ssl</code>,·depending·on
384 <code·class="inline">socket_type</code>.</p></li><li><p><strong><code·class="inline">config_db</code></strong>·-·The·config·file·directives·stored·as·key-value·tuples·in·an384 <code·class="inline">socket_type</code>.</p></li><li><p><strong><code·class="inline">config_db</code></strong>·-·The·config·file·directives·stored·as·key-value·tuples·in·an
385 ETS·table.·Depicted·<code·class="inline">config_db()</code>·in·function·type·declarations.</p></li><li><p><strong><code·class="inline">method</code></strong>·-·Type·<code·class="inline">&quot;GET&quot;·|·&quot;POST&quot;·|·&quot;HEAD&quot;·|·&quot;TRACE&quot;</code>,·that·is,·the·HTTP385 ETS·table.·Depicted·<code·class="inline">config_db()</code>·in·function·type·declarations.</p></li><li><p><strong><code·class="inline">method</code></strong>·-·Type·<code·class="inline">&quot;GET&quot;·|·&quot;POST&quot;·|·&quot;HEAD&quot;·|·&quot;TRACE&quot;</code>,·that·is,·the·HTTP
386 method.</p></li><li><p><strong><code·class="inline">absolute_uri</code></strong>·-·If·the·request·is·an·HTTP/1.1·request,·the·URI·can·be·in386 method.</p></li><li><p><strong><code·class="inline">absolute_uri</code></strong>·-·If·the·request·is·an·HTTP/1.1·request,·the·URI·can·be·in
387 the·absolute·URI·format.·In·that·case,·<code·class="inline">httpd</code>·saves·the·absolute·URI·in·this387 the·absolute·URI·format.·In·that·case,·<code·class="inline">httpd</code>·saves·the·absolute·URI·in·this
Offset 1342, 15 lines modifiedOffset 1342, 15 lines modified
1342 ······<p·class="built-using">1342 ······<p·class="built-using">
1343 ········Built·using1343 ········Built·using
1344 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1344 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1345 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1345 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1346 ······</p>1346 ······</p>
1347 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1347 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1348 ····</footer>1348 ····</footer>
1349 ··</div>1349 ··</div>
1350 </main>1350 </main>
1351 </div>1351 </div>
1352 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1352 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1353 <script>1353 <script>
1354 ··document.addEventListener("DOMContentLoaded",·function·()·{1354 ··document.addEventListener("DOMContentLoaded",·function·()·{
696 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/httpd_custom_api.html
    
Offset 315, 15 lines modifiedOffset 315, 15 lines modified
315 ······<p·class="built-using">315 ······<p·class="built-using">
316 ········Built·using316 ········Built·using
317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
319 ······</p>319 ······</p>
320 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
321 ····</footer>321 ····</footer>
322 ··</div>322 ··</div>
323 </main>323 </main>
324 </div>324 </div>
325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
326 <script>326 <script>
327 ··document.addEventListener("DOMContentLoaded",·function·()·{327 ··document.addEventListener("DOMContentLoaded",·function·()·{
683 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/httpd_socket.html
    
Offset 317, 15 lines modifiedOffset 317, 15 lines modified
317 ······<p·class="built-using">317 ······<p·class="built-using">
318 ········Built·using318 ········Built·using
319 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the319 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
320 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>320 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
321 ······</p>321 ······</p>
322 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>322 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
323 ····</footer>323 ····</footer>
324 ··</div>324 ··</div>
325 </main>325 </main>
326 </div>326 </div>
327 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>327 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
328 <script>328 <script>
329 ··document.addEventListener("DOMContentLoaded",·function·()·{329 ··document.addEventListener("DOMContentLoaded",·function·()·{
701 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/httpd_util.html
    
Offset 985, 15 lines modifiedOffset 985, 15 lines modified
985 ······<p·class="built-using">985 ······<p·class="built-using">
986 ········Built·using986 ········Built·using
987 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the987 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
988 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>988 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
989 ······</p>989 ······</p>
990 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>990 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
991 ····</footer>991 ····</footer>
992 ··</div>992 ··</div>
993 </main>993 </main>
994 </div>994 </div>
995 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>995 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
996 <script>996 <script>
997 ··document.addEventListener("DOMContentLoaded",·function·()·{997 ··document.addEventListener("DOMContentLoaded",·function·()·{
748 B
html2text {}
Max HTML report size reached
223 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/inets.epub
4.03 KB
zipinfo {}
Max HTML report size reached
83.3 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
2.43 KB
OEBPS/inets_services.xhtml
Max HTML report size reached
31.1 KB
OEBPS/httpd.xhtml
Max HTML report size reached
7.24 KB
OEBPS/httpc.xhtml
Max HTML report size reached
53.2 KB
OEBPS/http_server.xhtml
Max HTML report size reached
39.9 KB
OEBPS/http_client.xhtml
Max HTML report size reached
1.22 KB
OEBPS/content.opf
1.19 KB
OEBPS/content.opf
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/inets.html
    
Offset 675, 15 lines modifiedOffset 675, 15 lines modified
675 ······<p·class="built-using">675 ······<p·class="built-using">
676 ········Built·using676 ········Built·using
677 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the677 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
678 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>678 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
679 ······</p>679 ······</p>
680 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>680 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
681 ····</footer>681 ····</footer>
682 ··</div>682 ··</div>
683 </main>683 </main>
684 </div>684 </div>
685 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>685 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
686 <script>686 <script>
687 ··document.addEventListener("DOMContentLoaded",·function·()·{687 ··document.addEventListener("DOMContentLoaded",·function·()·{
659 B
html2text {}
Max HTML report size reached
4.04 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/inets_services.html
    
Offset 137, 15 lines modifiedOffset 137, 15 lines modified
137 takeover,·configure·the·services·to·be·started·at·application·startup.·When137 takeover,·configure·the·services·to·be·started·at·application·startup.·When
138 starting·the·<code·class="inline">Inets</code>·application,·the·<code·class="inline">Inets</code>·top·supervisor·starts·a·number·of138 starting·the·<code·class="inline">Inets</code>·application,·the·<code·class="inline">Inets</code>·top·supervisor·starts·a·number·of
139 subsupervisors·and·worker·processes·for·handling·the·provided·services.·When139 subsupervisors·and·worker·processes·for·handling·the·provided·services.·When
140 starting·services·dynamically,·new·children·are·added·to·the·supervision·tree,140 starting·services·dynamically,·new·children·are·added·to·the·supervision·tree,
141 unless·the·service·is·started·with·the·standalone·option.·In·this·case·the141 unless·the·service·is·started·with·the·standalone·option.·In·this·case·the
142 service·is·linked·to·the·calling·process·and·all·OTP·application·features,·such142 service·is·linked·to·the·calling·process·and·all·OTP·application·features,·such
143 as·soft·upgrade,·are·lost.</p><p>Services·to·be·configured·for·startup·at·application·startup·are·to·be·put·into143 as·soft·upgrade,·are·lost.</p><p>Services·to·be·configured·for·startup·at·application·startup·are·to·be·put·into
144 the·Erlang·node·configuration·file·on·the·following·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6920516677-1">[</span><span·class="p"·data-group-id="6920516677-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6920516677-3">[</span><span·class="p"·data-group-id="6920516677-4">{</spa[·...·truncated·by·diffoscope;·len:·329,·SHA:·e5fddb8d04f9ba9afbf331234d06a087458f079cc50b43a5f4de790d660e9f6f·...·]-1">]</span><span·class="p">.</span></code></pre><p>For·details·of·what·to·put·in·the·list·of·configured·services,·see·the144 the·Erlang·node·configuration·file·on·the·following·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7987345145-1">[</span><span·class="p"·data-group-id="7987345145-2">{</span><span·class="ss">inets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7987345145-3">[</span><span·class="p"·data-group-id="7987345145-4">{</spa[·...·truncated·by·diffoscope;·len:·329,·SHA:·15ddcc3161ee83487d344f53d9d5168372830fb4d5facf4b4f1eac568cae0b04·...·]-1">]</span><span·class="p">.</span></code></pre><p>For·details·of·what·to·put·in·the·list·of·configured·services,·see·the
145 documentation·for·the·services·to·be·configured.</p>145 documentation·for·the·services·to·be·configured.</p>
146 </div>146 </div>
  
147 <div·class="bottom-actions"·id="bottom-actions">147 <div·class="bottom-actions"·id="bottom-actions">
148 ··<div·class="bottom-actions-item">148 ··<div·class="bottom-actions-item">
  
149 ······<a·href="introduction.html"·class="bottom-actions-button"·rel="prev">149 ······<a·href="introduction.html"·class="bottom-actions-button"·rel="prev">
Offset 189, 15 lines modifiedOffset 189, 15 lines modified
189 ······<p·class="built-using">189 ······<p·class="built-using">
190 ········Built·using190 ········Built·using
191 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the191 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
192 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>192 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
193 ······</p>193 ······</p>
194 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>194 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
195 ····</footer>195 ····</footer>
196 ··</div>196 ··</div>
197 </main>197 </main>
198 </div>198 </div>
199 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>199 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
200 <script>200 <script>
201 ··document.addEventListener("DOMContentLoaded",·function·()·{201 ··document.addEventListener("DOMContentLoaded",·function·()·{
696 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/introduction.html
    
Offset 186, 15 lines modifiedOffset 186, 15 lines modified
186 ······<p·class="built-using">186 ······<p·class="built-using">
187 ········Built·using187 ········Built·using
188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
190 ······</p>190 ······</p>
191 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
192 ····</footer>192 ····</footer>
193 ··</div>193 ··</div>
194 </main>194 </main>
195 </div>195 </div>
196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
197 <script>197 <script>
198 ··document.addEventListener("DOMContentLoaded",·function·()·{198 ··document.addEventListener("DOMContentLoaded",·function·()·{
717 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/mod_alias.html
    
Offset 409, 15 lines modifiedOffset 409, 15 lines modified
409 ······<p·class="built-using">409 ······<p·class="built-using">
410 ········Built·using410 ········Built·using
411 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the411 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
412 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>412 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
413 ······</p>413 ······</p>
414 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>414 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
415 ····</footer>415 ····</footer>
416 ··</div>416 ··</div>
417 </main>417 </main>
418 </div>418 </div>
419 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>419 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
420 <script>420 <script>
421 ··document.addEventListener("DOMContentLoaded",·function·()·{421 ··document.addEventListener("DOMContentLoaded",·function·()·{
811 B
html2text {}
Max HTML report size reached
1.6 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/mod_auth.html
    
Offset 1687, 15 lines modifiedOffset 1687, 15 lines modified
1687 ······<p·class="built-using">1687 ······<p·class="built-using">
1688 ········Built·using1688 ········Built·using
1689 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1689 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1690 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1690 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1691 ······</p>1691 ······</p>
1692 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1692 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1693 ····</footer>1693 ····</footer>
1694 ··</div>1694 ··</div>
1695 </main>1695 </main>
1696 </div>1696 </div>
1697 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1697 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1698 <script>1698 <script>
1699 ··document.addEventListener("DOMContentLoaded",·function·()·{1699 ··document.addEventListener("DOMContentLoaded",·function·()·{
795 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/mod_esi.html
    
Offset 399, 15 lines modifiedOffset 399, 15 lines modified
399 ······<p·class="built-using">399 ······<p·class="built-using">
400 ········Built·using400 ········Built·using
401 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the401 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
402 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>402 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
403 ······</p>403 ······</p>
404 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>404 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
405 ····</footer>405 ····</footer>
406 ··</div>406 ··</div>
407 </main>407 </main>
408 </div>408 </div>
409 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>409 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
410 <script>410 <script>
411 ··document.addEventListener("DOMContentLoaded",·function·()·{411 ··document.addEventListener("DOMContentLoaded",·function·()·{
727 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/mod_security.html
    
Offset 793, 15 lines modifiedOffset 793, 15 lines modified
793 ······<p·class="built-using">793 ······<p·class="built-using">
794 ········Built·using794 ········Built·using
795 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the795 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
796 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>796 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
797 ······</p>797 ······</p>
798 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>798 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
799 ····</footer>799 ····</footer>
800 ··</div>800 ··</div>
801 </main>801 </main>
802 </div>802 </div>
803 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>803 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
804 <script>804 <script>
805 ··document.addEventListener("DOMContentLoaded",·function·()·{805 ··document.addEventListener("DOMContentLoaded",·function·()·{
726 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/notes.html
    
Offset 2401, 15 lines modifiedOffset 2401, 15 lines modified
2401 ······<p·class="built-using">2401 ······<p·class="built-using">
2402 ········Built·using2402 ········Built·using
2403 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2403 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2404 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2404 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2405 ······</p>2405 ······</p>
2406 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2406 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2407 ····</footer>2407 ····</footer>
2408 ··</div>2408 ··</div>
2409 </main>2409 </main>
2410 </div>2410 </div>
2411 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2411 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2412 <script>2412 <script>
2413 ··document.addEventListener("DOMContentLoaded",·function·()·{2413 ··document.addEventListener("DOMContentLoaded",·function·()·{
656 B
html2text {}
Max HTML report size reached
1.74 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-6DCD792E.js"></script>124 <script·src="dist/search_data-326436FA.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
460 B
html2text {}
Max HTML report size reached
637 B
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/.build.gz
493 B
.build
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/404.html
    
Offset 127, 15 lines modifiedOffset 127, 15 lines modified
127 ······<p·class="built-using">127 ······<p·class="built-using">
128 ········Built·using128 ········Built·using
129 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the129 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
130 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>130 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
131 ······</p>131 ······</p>
132 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>132 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
133 ····</footer>133 ····</footer>
134 ··</div>134 ··</div>
135 </main>135 </main>
136 </div>136 </div>
137 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>137 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
138 <script>138 <script>
139 ··document.addEventListener("DOMContentLoaded",·function·()·{139 ··document.addEventListener("DOMContentLoaded",·function·()·{
603 B
html2text {}
Max HTML report size reached
1.16 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/allclasses-index.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>All·Classes·and·Interfaces·(Java-Erlang·Interface·Library)</title>5 <title>All·Classes·and·Interfaces·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="class·index">9 <meta·name="description"·content="class·index">
10 <meta·name="generator"·content="javadoc/AllClassesIndexWriter">10 <meta·name="generator"·content="javadoc/AllClassesIndexWriter">
11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="script.js"></script>13 <script·type="text/javascript"·src="script.js"></script>
14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>
1.16 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/allpackages-index.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>All·Packages·(Java-Erlang·Interface·Library)</title>5 <title>All·Packages·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="package·index">9 <meta·name="description"·content="package·index">
10 <meta·name="generator"·content="javadoc/AllPackagesIndexWriter">10 <meta·name="generator"·content="javadoc/AllPackagesIndexWriter">
11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="script.js"></script>13 <script·type="text/javascript"·src="script.js"></script>
14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>
1.32 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/AbstractConnection.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>AbstractConnection·(Java-Erlang·Interface·Library)</title>5 <title>AbstractConnection·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·AbstractConnection">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·AbstractConnection">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/AbstractNode.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>AbstractNode·(Java-Erlang·Interface·Library)</title>5 <title>AbstractNode·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·AbstractNode">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·AbstractNode">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/GenericQueue.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>GenericQueue·(Java-Erlang·Interface·Library)</title>5 <title>GenericQueue·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·GenericQueue">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·GenericQueue">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.31 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpAuthException.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpAuthException·(Java-Erlang·Interface·Library)</title>5 <title>OtpAuthException·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpAuthException">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpAuthException">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpConnection.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpConnection·(Java-Erlang·Interface·Library)</title>5 <title>OtpConnection·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpConnection">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpConnection">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.32 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpCookedConnection.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpCookedConnection·(Java-Erlang·Interface·Library)</title>5 <title>OtpCookedConnection·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpCookedConnection">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpCookedConnection">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.28 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpEpmd.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpEpmd·(Java-Erlang·Interface·Library)</title>5 <title>OtpEpmd·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpEpmd">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpEpmd">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangAtom.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangAtom·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangAtom·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangAtom">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangAtom">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.31 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangBinary.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangBinary·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangBinary·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangBinary">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangBinary">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.31 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangBitstr.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangBitstr·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangBitstr·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangBitstr">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangBitstr">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.31 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangBoolean.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangBoolean·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangBoolean·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangBoolean">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangBoolean">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangByte.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangByte·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangByte·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangByte">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangByte">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangChar.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangChar·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangChar·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangChar">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangChar">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.34 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangDecodeException.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangDecodeException·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangDecodeException·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangDecodeException">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangDecodeException">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.31 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangDouble.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangDouble·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangDouble·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangDouble">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangDouble">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.32 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangException.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangException·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangException·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangException">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangException">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangExit.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangExit·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangExit·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangExit">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangExit">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.33 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangExternalFun.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangExternalFun·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangExternalFun·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangExternalFun">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangExternalFun">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangFloat.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangFloat·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangFloat·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangFloat">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangFloat">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangFun.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangFun·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangFun·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangFun">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangFun">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangInt.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangInt·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangInt·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangInt">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangInt">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.34 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangList.SubList.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangList.SubList·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangList.SubList·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangList,·class:·SubList">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangList,·class:·SubList">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangList.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangList·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangList·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangList">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangList">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangLong.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangLong·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangLong·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangLong">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangLong">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangMap.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangMap·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangMap·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangMap">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangMap">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.33 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangObject.Hash.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangObject.Hash·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangObject.Hash·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangObject,·class:·Hash">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangObject,·class:·Hash">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.31 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangObject.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangObject·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangObject·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangObject">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangObject">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangPid.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangPid·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangPid·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangPid">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangPid">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangPort.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangPort·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangPort·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangPort">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangPort">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.34 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangRangeException.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangRangeException·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangRangeException·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangRangeException">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangRangeException">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangRef.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangRef·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangRef·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangRef">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangRef">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangShort.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangShort·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangShort·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangShort">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangShort">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.31 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangString.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangString·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangString·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangString">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangString">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangTuple.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangTuple·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangTuple·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangTuple">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangTuple">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangUInt.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangUInt·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangUInt·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangUInt">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangUInt">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.31 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpErlangUShort.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpErlangUShort·(Java-Erlang·Interface·Library)</title>5 <title>OtpErlangUShort·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangUShort">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpErlangUShort">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpException.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpException·(Java-Erlang·Interface·Library)</title>5 <title>OtpException·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpException">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpException">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.29 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpExternal.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpExternal·(Java-Erlang·Interface·Library)</title>5 <title>OtpExternal·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpExternal">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpExternal">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.35 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpGenericTransportFactory.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpGenericTransportFactory·(Java-Erlang·Interface·Library)</title>5 <title>OtpGenericTransportFactory·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpGenericTransportFactory">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpGenericTransportFactory">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpInputStream.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpInputStream·(Java-Erlang·Interface·Library)</title>5 <title>OtpInputStream·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpInputStream">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpInputStream">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpLocalNode.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpLocalNode·(Java-Erlang·Interface·Library)</title>5 <title>OtpLocalNode·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpLocalNode">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpLocalNode">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.28 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpMbox.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpMbox·(Java-Erlang·Interface·Library)</title>5 <title>OtpMbox·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpMbox">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpMbox">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.27 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpMsg.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpMsg·(Java-Erlang·Interface·Library)</title>5 <title>OtpMsg·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpMsg">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpMsg">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.32 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpNode.Acceptor.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpNode.Acceptor·(Java-Erlang·Interface·Library)</title>5 <title>OtpNode.Acceptor·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpNode,·class:·Acceptor">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpNode,·class:·Acceptor">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.32 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpNode.Mailboxes.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpNode.Mailboxes·(Java-Erlang·Interface·Library)</title>5 <title>OtpNode.Mailboxes·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpNode,·class:·Mailboxes">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpNode,·class:·Mailboxes">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.28 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpNode.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpNode·(Java-Erlang·Interface·Library)</title>5 <title>OtpNode·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpNode">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpNode">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpNodeStatus.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpNodeStatus·(Java-Erlang·Interface·Library)</title>5 <title>OtpNodeStatus·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpNodeStatus">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpNodeStatus">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.31 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpOutputStream.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpOutputStream·(Java-Erlang·Interface·Library)</title>5 <title>OtpOutputStream·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpOutputStream">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpOutputStream">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.28 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpPeer.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpPeer·(Java-Erlang·Interface·Library)</title>5 <title>OtpPeer·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpPeer">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpPeer">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.28 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpSelf.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpSelf·(Java-Erlang·Interface·Library)</title>5 <title>OtpSelf·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpSelf">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpSelf">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.28 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpServer.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpServer·(Java-Erlang·Interface·Library)</title>5 <title>OtpServer·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpServer">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpServer">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.34 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpServerSocketTransport.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpServerSocketTransport·(Java-Erlang·Interface·Library)</title>5 <title>OtpServerSocketTransport·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpServerSocketTransport">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpServerSocketTransport">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.32 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpServerTransport.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpServerTransport·(Java-Erlang·Interface·Library)</title>5 <title>OtpServerTransport·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·interface:·OtpServerTransport">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·interface:·OtpServerTransport">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.32 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpSocketTransport.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpSocketTransport·(Java-Erlang·Interface·Library)</title>5 <title>OtpSocketTransport·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpSocketTransport">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpSocketTransport">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.35 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpSocketTransportFactory.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpSocketTransportFactory·(Java-Erlang·Interface·Library)</title>5 <title>OtpSocketTransportFactory·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpSocketTransportFactory">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·class:·OtpSocketTransportFactory">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpTransport.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpTransport·(Java-Erlang·Interface·Library)</title>5 <title>OtpTransport·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·interface:·OtpTransport">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·interface:·OtpTransport">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.33 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/OtpTransportFactory.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>OtpTransportFactory·(Java-Erlang·Interface·Library)</title>5 <title>OtpTransportFactory·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·interface:·OtpTransportFactory">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang,·interface:·OtpTransportFactory">
10 <meta·name="generator"·content="javadoc/ClassWriterImpl">10 <meta·name="generator"·content="javadoc/ClassWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.29 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/package-summary.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>com.ericsson.otp.erlang·(Java-Erlang·Interface·Library)</title>5 <title>com.ericsson.otp.erlang·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang">9 <meta·name="description"·content="declaration:·package:·com.ericsson.otp.erlang">
10 <meta·name="generator"·content="javadoc/PackageWriterImpl">10 <meta·name="generator"·content="javadoc/PackageWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.3 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/com/ericsson/otp/erlang/package-tree.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>com.ericsson.otp.erlang·Class·Hierarchy·(Java-Erlang·Interface·Library)</title>5 <title>com.ericsson.otp.erlang·Class·Hierarchy·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="tree:·package:·com.ericsson.otp.erlang">9 <meta·name="description"·content="tree:·package:·com.ericsson.otp.erlang">
10 <meta·name="generator"·content="javadoc/PackageTreeWriter">10 <meta·name="generator"·content="javadoc/PackageTreeWriter">
11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="../../../../stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="../../../../script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="../../../../script.js"></script>13 <script·type="text/javascript"·src="../../../../script.js"></script>
14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="../../../../script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="../../../../script-dir/jquery-ui.min.js"></script>
1.17 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/constant-values.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>Constant·Field·Values·(Java-Erlang·Interface·Library)</title>5 <title>Constant·Field·Values·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="summary·of·constants">9 <meta·name="description"·content="summary·of·constants">
10 <meta·name="generator"·content="javadoc/ConstantsSummaryWriterImpl">10 <meta·name="generator"·content="javadoc/ConstantsSummaryWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="script.js"></script>13 <script·type="text/javascript"·src="script.js"></script>
14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>
1.16 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/deprecated-list.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>Deprecated·List·(Java-Erlang·Interface·Library)</title>5 <title>Deprecated·List·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="deprecated·elements">9 <meta·name="description"·content="deprecated·elements">
10 <meta·name="generator"·content="javadoc/DeprecatedListWriter">10 <meta·name="generator"·content="javadoc/DeprecatedListWriter">
11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="script.js"></script>13 <script·type="text/javascript"·src="script.js"></script>
14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>
1.11 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/help-doc.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>API·Help·(Java-Erlang·Interface·Library)</title>5 <title>API·Help·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="help">9 <meta·name="description"·content="help">
10 <meta·name="generator"·content="javadoc/HelpWriter">10 <meta·name="generator"·content="javadoc/HelpWriter">
11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="script.js"></script>13 <script·type="text/javascript"·src="script.js"></script>
14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>
1.11 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/index-all.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>Index·(Java-Erlang·Interface·Library)</title>5 <title>Index·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="index">9 <meta·name="description"·content="index">
10 <meta·name="generator"·content="javadoc/IndexWriter">10 <meta·name="generator"·content="javadoc/IndexWriter">
11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="script.js"></script>13 <script·type="text/javascript"·src="script.js"></script>
14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>
1.1 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/index.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>Java-Erlang·Interface·Library</title>5 <title>Java-Erlang·Interface·Library</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="index·redirect">9 <meta·name="description"·content="index·redirect">
10 <meta·name="generator"·content="javadoc/IndexRedirectWriter">10 <meta·name="generator"·content="javadoc/IndexRedirectWriter">
11 <link·rel="canonical"·href="com/ericsson/otp/erlang/package-summary.html">11 <link·rel="canonical"·href="com/ericsson/otp/erlang/package-summary.html">
12 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
13 <script·type="text/javascript">window.location.replace('com/ericsson/otp/erlang/package-summary.html')</script>13 <script·type="text/javascript">window.location.replace('com/ericsson/otp/erlang/package-summary.html')</script>
14 <noscript>14 <noscript>
15 <meta·http-equiv="Refresh"·content="0;com/ericsson/otp/erlang/package-summary.html">15 <meta·http-equiv="Refresh"·content="0;com/ericsson/otp/erlang/package-summary.html">
1.14 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/overview-tree.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>Class·Hierarchy·(Java-Erlang·Interface·Library)</title>5 <title>Class·Hierarchy·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="class·tree">9 <meta·name="description"·content="class·tree">
10 <meta·name="generator"·content="javadoc/TreeWriter">10 <meta·name="generator"·content="javadoc/TreeWriter">
11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="script.js"></script>13 <script·type="text/javascript"·src="script.js"></script>
14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>
1.11 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/search.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>Search·(Java-Erlang·Interface·Library)</title>5 <title>Search·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="search">9 <meta·name="description"·content="search">
10 <meta·name="generator"·content="javadoc/SearchWriter">10 <meta·name="generator"·content="javadoc/SearchWriter">
11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="script.js"></script>13 <script·type="text/javascript"·src="script.js"></script>
14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>
1.16 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/assets/java/serialized-form.html
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 <!DOCTYPE·HTML>1 <!DOCTYPE·HTML>
2 <html·lang="en">2 <html·lang="en">
3 <head>3 <head>
4 <!--·Generated·by·javadoc·(21)·on·Thu·Oct·17·11:03:52·GMT·2024·-->4 <!--·Generated·by·javadoc·(21)·on·Wed·Nov·19·17:39:48·GMT·2025·-->
5 <title>Serialized·Form·(Java-Erlang·Interface·Library)</title>5 <title>Serialized·Form·(Java-Erlang·Interface·Library)</title>
6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">6 <meta·name="viewport"·content="width=device-width,·initial-scale=1">
7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">7 <meta·http-equiv="Content-Type"·content="text/html;·charset=UTF-8">
8 <meta·name="dc.created"·content="2024-10-17">8 <meta·name="dc.created"·content="2025-11-19">
9 <meta·name="description"·content="serialized·forms">9 <meta·name="description"·content="serialized·forms">
10 <meta·name="generator"·content="javadoc/SerializedFormWriterImpl">10 <meta·name="generator"·content="javadoc/SerializedFormWriterImpl">
11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">11 <link·rel="stylesheet"·type="text/css"·href="stylesheet.css"·title="Style">
12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">12 <link·rel="stylesheet"·type="text/css"·href="script-dir/jquery-ui.min.css"·title="Style">
13 <script·type="text/javascript"·src="script.js"></script>13 <script·type="text/javascript"·src="script.js"></script>
14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>14 <script·type="text/javascript"·src="script-dir/jquery-3.7.1.min.js"></script>
15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>15 <script·type="text/javascript"·src="script-dir/jquery-ui.min.js"></script>
1.49 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/jinterface_users_guide.html
    
Offset 418, 15 lines modifiedOffset 418, 15 lines modified
418 ······<p·class="built-using">418 ······<p·class="built-using">
419 ········Built·using419 ········Built·using
420 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the420 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
421 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>421 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
422 ······</p>422 ······</p>
423 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>423 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
424 ····</footer>424 ····</footer>
425 ··</div>425 ··</div>
426 </main>426 </main>
427 </div>427 </div>
428 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>428 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
429 <script>429 <script>
430 ··document.addEventListener("DOMContentLoaded",·function·()·{430 ··document.addEventListener("DOMContentLoaded",·function·()·{
643 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/notes.html
    
Offset 830, 15 lines modifiedOffset 830, 15 lines modified
830 ······<p·class="built-using">830 ······<p·class="built-using">
831 ········Built·using831 ········Built·using
832 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the832 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
833 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>833 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
834 ······</p>834 ······</p>
835 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>835 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
836 ····</footer>836 ····</footer>
837 ··</div>837 ··</div>
838 </main>838 </main>
839 </div>839 </div>
840 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>840 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
841 <script>841 <script>
842 ··document.addEventListener("DOMContentLoaded",·function·()·{842 ··document.addEventListener("DOMContentLoaded",·function·()·{
650 B
html2text {}
Max HTML report size reached
1.72 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/search.html
    
Offset 108, 15 lines modifiedOffset 108, 15 lines modified
108 <div·id="search">108 <div·id="search">
109 ··<h1>109 ··<h1>
110 ····<span></span>110 ····<span></span>
111 ··</h1>111 ··</h1>
  
112 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>112 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
113 </div>113 </div>
114 <script·src="dist/search_data-62425A17.js"></script>114 <script·src="dist/search_data-074FBB44.js"></script>
115 ····<footer·class="footer">115 ····<footer·class="footer">
116 ······<p>116 ······<p>
  
117 ········<span·class="line">117 ········<span·class="line">
118 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">118 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
119 ············Search·HexDocs119 ············Search·HexDocs
120 ··········</button>120 ··········</button>
Offset 127, 15 lines modifiedOffset 127, 15 lines modified
127 ······<p·class="built-using">127 ······<p·class="built-using">
128 ········Built·using128 ········Built·using
129 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the129 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
130 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>130 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
131 ······</p>131 ······</p>
132 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>132 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
133 ····</footer>133 ····</footer>
134 ··</div>134 ··</div>
135 </main>135 </main>
136 </div>136 </div>
137 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>137 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
138 <script>138 <script>
139 ··document.addEventListener("DOMContentLoaded",·function·()·{139 ··document.addEventListener("DOMContentLoaded",·function·()·{
421 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/api-reference.html
    
Offset 490, 15 lines modifiedOffset 490, 15 lines modified
490 ······<p·class="built-using">490 ······<p·class="built-using">
491 ········Built·using491 ········Built·using
492 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the492 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
493 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>493 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
494 ······</p>494 ······</p>
495 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>495 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
496 ····</footer>496 ····</footer>
497 ··</div>497 ··</div>
498 </main>498 </main>
499 </div>499 </div>
500 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>500 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
501 <script>501 <script>
502 ··document.addEventListener("DOMContentLoaded",·function·()·{502 ··document.addEventListener("DOMContentLoaded",·function·()·{
606 B
html2text {}
Max HTML report size reached
27.6 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/app.html
    
Offset 140, 49 lines modifiedOffset 140, 49 lines modified
140 ····<i·class="ri-link-m"·aria-hidden="true"></i>140 ····<i·class="ri-link-m"·aria-hidden="true"></i>
141 ··</a>141 ··</a>
142 ··<span·class="text">File·Syntax</span>142 ··<span·class="text">File·Syntax</span>
143 </h2>143 </h2>
144 <p>The·application·resource·file·is·to·be·called·<code·class="inline">Application.app</code>,·where144 <p>The·application·resource·file·is·to·be·called·<code·class="inline">Application.app</code>,·where
145 <code·class="inline">Application</code>·is·the·application·name.·The·file·is·to·be·located·in·directory145 <code·class="inline">Application</code>·is·the·application·name.·The·file·is·to·be·located·in·directory
146 <code·class="inline">ebin</code>·for·the·application.</p><p>The·file·must·contain·a·single·Erlang·term,·which·is·called·an·<em>application146 <code·class="inline">ebin</code>·for·the·application.</p><p>The·file·must·contain·a·single·Erlang·term,·which·is·called·an·<em>application
147 specification</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5634075431-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">147 specification</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1625895388-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">
148 ··</span><span·class="p"·data-group-id="5634075431-2">[</span><span·class="p"·data-group-id="5634075431-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">··</span><span·class="n">Description</span><span·class="p"·data-group-id="5634075431-3">}</span><span·class="p">,</span><span·class="w">148 ··</span><span·class="p"·data-group-id="1625895388-2">[</span><span·class="p"·data-group-id="1625895388-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">··</span><span·class="n">Description</span><span·class="p"·data-group-id="1625895388-3">}</span><span·class="p">,</span><span·class="w">
149 ···</span><span·class="p"·data-group-id="5634075431-4">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="w">···········</span><span·class="n">Id</span><span·class="p"·data-group-id="5634075431-4">}</span><span·class="p">,</span><span·class="w">149 ···</span><span·class="p"·data-group-id="1625895388-4">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="w">···········</span><span·class="n">Id</span><span·class="p"·data-group-id="1625895388-4">}</span><span·class="p">,</span><span·class="w">
150 ···</span><span·class="p"·data-group-id="5634075431-5">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">··········</span><span·class="n">Vsn</span><span·class="p"·data-group-id="5634075431-5">}</span><span·class="p">,</span><span·class="w">150 ···</span><span·class="p"·data-group-id="1625895388-5">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">··········</span><span·class="n">Vsn</span><span·class="p"·data-group-id="1625895388-5">}</span><span·class="p">,</span><span·class="w">
151 ···</span><span·class="p"·data-group-id="5634075431-6">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">······</span><span·class="n">Modules</span><span·class="p"·data-group-id="5634075431-6">}</span><span·class="p">,</span><span·class="w">151 ···</span><span·class="p"·data-group-id="1625895388-6">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">······</span><span·class="n">Modules</span><span·class="p"·data-group-id="1625895388-6">}</span><span·class="p">,</span><span·class="w">
152 ···</span><span·class="p"·data-group-id="5634075431-7">{</span><span·class="ss">maxP</span><span·class="p">,</span><span·class="w">·········</span><span·class="n">MaxP</span><span·class="p"·data-group-id="5634075431-7">}</span><span·class="p">,</span><span·class="w">152 ···</span><span·class="p"·data-group-id="1625895388-7">{</span><span·class="ss">maxP</span><span·class="p">,</span><span·class="w">·········</span><span·class="n">MaxP</span><span·class="p"·data-group-id="1625895388-7">}</span><span·class="p">,</span><span·class="w">
153 ···</span><span·class="p"·data-group-id="5634075431-8">{</span><span·class="ss">maxT</span><span·class="p">,</span><span·class="w">·········</span><span·class="n">MaxT</span><span·class="p"·data-group-id="5634075431-8">}</span><span·class="p">,</span><span·class="w">153 ···</span><span·class="p"·data-group-id="1625895388-8">{</span><span·class="ss">maxT</span><span·class="p">,</span><span·class="w">·········</span><span·class="n">MaxT</span><span·class="p"·data-group-id="1625895388-8">}</span><span·class="p">,</span><span·class="w">
154 ···</span><span·class="p"·data-group-id="5634075431-9">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">···</span><span·class="n">Names</span><span·class="p"·data-group-id="5634075431-9">}</span><span·class="p">,</span><span·class="w">154 ···</span><span·class="p"·data-group-id="1625895388-9">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">···</span><span·class="n">Names</span><span·class="p"·data-group-id="1625895388-9">}</span><span·class="p">,</span><span·class="w">
155 ···</span><span·class="p"·data-group-id="5634075431-10">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Apps</span><span·class="p"·data-group-id="5634075431-10">}</span><span·class="p">,</span><span·class="w">155 ···</span><span·class="p"·data-group-id="1625895388-10">{</span><span·class="ss">included_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Apps</span><span·class="p"·data-group-id="1625895388-10">}</span><span·class="p">,</span><span·class="w">
156 ···</span><span·class="p"·data-group-id="5634075431-11">{</span><span·class="ss">optional_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Apps</span><span·class="p"·data-group-id="5634075431-11">}</span><span·class="p">,</span><span·class="w">156 ···</span><span·class="p"·data-group-id="1625895388-11">{</span><span·class="ss">optional_applications</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Apps</span><span·class="p"·data-group-id="1625895388-11">}</span><span·class="p">,</span><span·class="w">
157 ···</span><span·class="p"·data-group-id="5634075431-12">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Apps</span><span·class="p"·data-group-id="5634075431-12">}</span><span·class="p">,</span><span·class="w">157 ···</span><span·class="p"·data-group-id="1625895388-12">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Apps</span><span·class="p"·data-group-id="1625895388-12">}</span><span·class="p">,</span><span·class="w">
158 ···</span><span·class="p"·data-group-id="5634075431-13">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">··········</span><span·class="n">Env</span><span·class="p"·data-group-id="5634075431-13">}</span><span·class="p">,</span><span·class="w">158 ···</span><span·class="p"·data-group-id="1625895388-13">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">··········</span><span·class="n">Env</span><span·class="p"·data-group-id="1625895388-13">}</span><span·class="p">,</span><span·class="w">
159 ···</span><span·class="p"·data-group-id="5634075431-14">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">··········</span><span·class="n">Start</span><span·class="p"·data-group-id="5634075431-14">}</span><span·class="p">,</span><span·class="w">159 ···</span><span·class="p"·data-group-id="1625895388-14">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">··········</span><span·class="n">Start</span><span·class="p"·data-group-id="1625895388-14">}</span><span·class="p">,</span><span·class="w">
160 ···</span><span·class="p"·data-group-id="5634075431-15">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Phases</span><span·class="p"·data-group-id="5634075431-15">}</span><span·class="p">,</span><span·class="w">160 ···</span><span·class="p"·data-group-id="1625895388-15">{</span><span·class="ss">start_phases</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Phases</span><span·class="p"·data-group-id="1625895388-15">}</span><span·class="p">,</span><span·class="w">
161 ···</span><span·class="p"·data-group-id="5634075431-16">{</span><span·class="ss">runtime_dependencies</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RTDeps</span><span·class="p"·data-group-id="5634075431-16">}</span><span·class="p"·data-group-id="5634075431-2">]</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·d57cd0467fda1f9d1e442c0ccf29287ebe66cf9b29827b747f8219350640487d·...·]-1">}</span><span·class="p">.</span><span·class="w">161 ···</span><span·class="p"·data-group-id="1625895388-16">{</span><span·class="ss">runtime_dependencies</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RTDeps</span><span·class="p"·data-group-id="1625895388-16">}</span><span·class="p"·data-group-id="1625895388-2">]</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·ad3253897c964b045459c7f08438524bbd7f46350bd0c16523a900dbd71a08b3·...·]-1">}</span><span·class="p">.</span><span·class="w">
  
162 ·············</span><span·class="n">Value</span><span·class="w">················</span><span·class="n">Default</span><span·class="w">162 ·············</span><span·class="n">Value</span><span·class="w">················</span><span·class="n">Default</span><span·class="w">
163 ·············</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">················</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">163 ·············</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">················</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">
164 </span><span·class="n">Application</span><span·class="w">··</span><span·class="nf">atom</span><span·class="p"·data-group-id="5634075431-17">(</span><span·class="p"·data-group-id="5634075431-17">)</span><span·class="w">···············</span><span·class="o">-</span><span·class="w">164 </span><span·class="n">Application</span><span·class="w">··</span><span·class="nf">atom</span><span·class="p"·data-group-id="1625895388-17">(</span><span·class="p"·data-group-id="1625895388-17">)</span><span·class="w">···············</span><span·class="o">-</span><span·class="w">
165 </span><span·class="n">Description</span><span·class="w">··</span><span·class="nf">string</span><span·class="p"·data-group-id="5634075431-18">(</span><span·class="p"·data-group-id="5634075431-18">)</span><span·class="w">·············</span><span·class="s">&quot;&quot;</span><span·class="w">165 </span><span·class="n">Description</span><span·class="w">··</span><span·class="nf">string</span><span·class="p"·data-group-id="1625895388-18">(</span><span·class="p"·data-group-id="1625895388-18">)</span><span·class="w">·············</span><span·class="s">&quot;&quot;</span><span·class="w">
166 </span><span·class="n">Id</span><span·class="w">···········</span><span·class="nf">string</span><span·class="p"·data-group-id="5634075431-19">(</span><span·class="p"·data-group-id="5634075431-19">)</span><span·class="w">·············</span><span·class="s">&quot;&quot;</span><span·class="w">166 </span><span·class="n">Id</span><span·class="w">···········</span><span·class="nf">string</span><span·class="p"·data-group-id="1625895388-19">(</span><span·class="p"·data-group-id="1625895388-19">)</span><span·class="w">·············</span><span·class="s">&quot;&quot;</span><span·class="w">
167 </span><span·class="n">Vsn</span><span·class="w">··········</span><span·class="nf">string</span><span·class="p"·data-group-id="5634075431-20">(</span><span·class="p"·data-group-id="5634075431-20">)</span><span·class="w">·············</span><span·class="s">&quot;&quot;</span><span·class="w">167 </span><span·class="n">Vsn</span><span·class="w">··········</span><span·class="nf">string</span><span·class="p"·data-group-id="1625895388-20">(</span><span·class="p"·data-group-id="1625895388-20">)</span><span·class="w">·············</span><span·class="s">&quot;&quot;</span><span·class="w">
168 </span><span·class="n">Modules</span><span·class="w">······</span><span·class="p"·data-group-id="5634075431-21">[</span><span·class="n">Module</span><span·class="p"·data-group-id="5634075431-21">]</span><span·class="w">·············</span><span·class="p"·data-group-id="5634075431-22">[</span><span·class="p"·data-group-id="5634075431-22">]</span><span·class="w">168 </span><span·class="n">Modules</span><span·class="w">······</span><span·class="p"·data-group-id="1625895388-21">[</span><span·class="n">Module</span><span·class="p"·data-group-id="1625895388-21">]</span><span·class="w">·············</span><span·class="p"·data-group-id="1625895388-22">[</span><span·class="p"·data-group-id="1625895388-22">]</span><span·class="w">
169 </span><span·class="n">MaxP</span><span·class="w">·········</span><span·class="nf">int</span><span·class="p"·data-group-id="5634075431-23">(</span><span·class="p"·data-group-id="5634075431-23">)</span><span·class="w">················</span><span·class="ss">infinity</span><span·class="w">169 </span><span·class="n">MaxP</span><span·class="w">·········</span><span·class="nf">int</span><span·class="p"·data-group-id="1625895388-23">(</span><span·class="p"·data-group-id="1625895388-23">)</span><span·class="w">················</span><span·class="ss">infinity</span><span·class="w">
170 </span><span·class="n">MaxT</span><span·class="w">·········</span><span·class="nf">int</span><span·class="p"·data-group-id="5634075431-24">(</span><span·class="p"·data-group-id="5634075431-24">)</span><span·class="w">················</span><span·class="ss">infinity</span><span·class="w">170 </span><span·class="n">MaxT</span><span·class="w">·········</span><span·class="nf">int</span><span·class="p"·data-group-id="1625895388-24">(</span><span·class="p"·data-group-id="1625895388-24">)</span><span·class="w">················</span><span·class="ss">infinity</span><span·class="w">
171 </span><span·class="n">Names</span><span·class="w">········</span><span·class="p"·data-group-id="5634075431-25">[</span><span·class="n">Name</span><span·class="p"·data-group-id="5634075431-25">]</span><span·class="w">···············</span><span·class="p"·data-group-id="5634075431-26">[</span><span·class="p"·data-group-id="5634075431-26">]</span><span·class="w">171 </span><span·class="n">Names</span><span·class="w">········</span><span·class="p"·data-group-id="1625895388-25">[</span><span·class="n">Name</span><span·class="p"·data-group-id="1625895388-25">]</span><span·class="w">···············</span><span·class="p"·data-group-id="1625895388-26">[</span><span·class="p"·data-group-id="1625895388-26">]</span><span·class="w">
172 </span><span·class="n">Apps</span><span·class="w">·········</span><span·class="p"·data-group-id="5634075431-27">[</span><span·class="n">App</span><span·class="p"·data-group-id="5634075431-27">]</span><span·class="w">················</span><span·class="p"·data-group-id="5634075431-28">[</span><span·class="p"·data-group-id="5634075431-28">]</span><span·class="w">172 </span><span·class="n">Apps</span><span·class="w">·········</span><span·class="p"·data-group-id="1625895388-27">[</span><span·class="n">App</span><span·class="p"·data-group-id="1625895388-27">]</span><span·class="w">················</span><span·class="p"·data-group-id="1625895388-28">[</span><span·class="p"·data-group-id="1625895388-28">]</span><span·class="w">
173 </span><span·class="n">Env</span><span·class="w">··········</span><span·class="p"·data-group-id="5634075431-29">[</span><span·class="p"·data-group-id="5634075431-30">{</span><span·class="n">Par</span><span·class="p">,</span><span·class="n">Val</span><span·class="p"·data-group-id="5634075431-30">}</span><span·class="p"·data-group-id="5634075431-29">]</[·...·truncated·by·diffoscope;·len:·133,·SHA:·b0a97e4c9670aff75a598d99ab7df5d4a8393fe88cf9d2ec2406464d6b04f068·...·]-31">]</span><span·class="w">173 </span><span·class="n">Env</span><span·class="w">··········</span><span·class="p"·data-group-id="1625895388-29">[</span><span·class="p"·data-group-id="1625895388-30">{</span><span·class="n">Par</span><span·class="p">,</span><span·class="n">Val</span><span·class="p"·data-group-id="1625895388-30">}</span><span·class="p"·data-group-id="1625895388-29">]</[·...·truncated·by·diffoscope;·len:·133,·SHA:·4bcf2bb63123faf7a0ba73c815cc312c3ddf5e82c7288bbb45a28d7bca0de53c·...·]-31">]</span><span·class="w">
174 </span><span·class="n">Start</span><span·class="w">········</span><span·class="p"·data-group-id="5634075431-32">{</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">StartArgs</span><span·class="p"·data-group-id="5634075431-32">}</span><span·class="w">···</span><span·class="p"·data-group-id="5634075431-33">[</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·372b3afcec61b399eb60b06f04f4feb1be5fbe5ff3cca91826f75c6ca932e351·...·]-33">]</span><span·class="w">174 </span><span·class="n">Start</span><span·class="w">········</span><span·class="p"·data-group-id="1625895388-32">{</span><span·class="n">Module</span><span·class="p">,</span><span·class="n">StartArgs</span><span·class="p"·data-group-id="1625895388-32">}</span><span·class="w">···</span><span·class="p"·data-group-id="1625895388-33">[</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·e484c0ece8c2196ad3410a4b63ec6aa5bb9d8931cb63358a75b0f724bab972ac·...·]-33">]</span><span·class="w">
175 </span><span·class="n">Phases</span><span·class="w">·······</span><span·class="p"·data-group-id="5634075431-34">[</span><span·class="p"·data-group-id="5634075431-35">{</span><span·class="n">Phase</span><span·class="p">,</span><span·class="n">PhaseArgs</span><span·class="p"·data-group-id="5634075431-35">}</span><span·class="p"·data-group-id="5634075431-34">]</span><span·class="w">··</span><span·class="ss">undefined</span><span·class="w">175 </span><span·class="n">Phases</span><span·class="w">·······</span><span·class="p"·data-group-id="1625895388-34">[</span><span·class="p"·data-group-id="1625895388-35">{</span><span·class="n">Phase</span><span·class="p">,</span><span·class="n">PhaseArgs</span><span·class="p"·data-group-id="1625895388-35">}</span><span·class="p"·data-group-id="1625895388-34">]</span><span·class="w">··</span><span·class="ss">undefined</span><span·class="w">
176 </span><span·class="n">RTDeps</span><span·class="w">·······</span><span·class="p"·data-group-id="5634075431-36">[</span><span·class="n">ApplicationVersion</span><span·class="p"·data-group-id="5634075431-36">]</span><span·class="w">·</span><span·class="p"·data-group-id="5634075431-37">[</span><span·class="p"·data-group-id="5634075431-37">]</span><span·class="w">176 </span><span·class="n">RTDeps</span><span·class="w">·······</span><span·class="p"·data-group-id="1625895388-36">[</span><span·class="n">ApplicationVersion</span><span·class="p"·data-group-id="1625895388-36">]</span><span·class="w">·</span><span·class="p"·data-group-id="1625895388-37">[</span><span·class="p"·data-group-id="1625895388-37">]</span><span·class="w">
  
177 </span><span·class="n">Module</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">App</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Par</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Phase</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="5634075431-38">(</span><span·class="p"·data-group-id="5634075431-38">)</span><span·class="w">177 </span><span·class="n">Module</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">App</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Par</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Phase</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="1625895388-38">(</span><span·class="p"·data-group-id="1625895388-38">)</span><span·class="w">
178 </span><span·class="n">Val</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">StartArgs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">PhaseArgs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="5634075431-39">(</span><span·class="p"·data-group-id="5634075431-39">)</span><span·class="w">178 </span><span·class="n">Val</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">StartArgs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">PhaseArgs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1625895388-39">(</span><span·class="p"·data-group-id="1625895388-39">)</span><span·class="w">
179 </span><span·class="n">ApplicationVersion</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="5634075431-40">(</span><span·class="p"·data-group-id="5634075431-40">)</span></code></pre><ul><li><strong><code·class="inline">Application</code></strong>·-·Application·name.</li></ul><p>For·the·application·controller,·all·keys·are·optional.·The·respective·default179 </span><span·class="n">ApplicationVersion</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="1625895388-40">(</span><span·class="p"·data-group-id="1625895388-40">)</span></code></pre><ul><li><strong><code·class="inline">Application</code></strong>·-·Application·name.</li></ul><p>For·the·application·controller,·all·keys·are·optional.·The·respective·default
180 values·are·used·for·any·omitted·keys.</p><p>The·functions·in·<code·class="inline">systools</code>·require·more·information.·If·they·are·used,·the180 values·are·used·for·any·omitted·keys.</p><p>The·functions·in·<code·class="inline">systools</code>·require·more·information.·If·they·are·used,·the
181 following·keys·are·mandatory:</p><ul><li><code·class="inline">description</code></li><li><code·class="inline">vsn</code></li><li><code·class="inline">modules</code></li><li><code·class="inline">registered</code></li><li><code·class="inline">applications</code></li></ul><p>The·other·keys·are·ignored·by·<code·class="inline">systools</code>.</p><ul><li><p><strong><code·class="inline">description</code></strong>·-·A·one-line·description·of·the·application.</p></li><li><p><strong><code·class="inline">id</code></strong>·-·Product·identification,·or·similar.</p></li><li><p><strong><code·class="inline">vsn</code></strong>·-·Version·of·the·application.</p></li><li><p><strong><code·class="inline">modules</code></strong>·-·All·modules·introduced·by·this·application.·<code·class="inline">systools</code>·uses181 following·keys·are·mandatory:</p><ul><li><code·class="inline">description</code></li><li><code·class="inline">vsn</code></li><li><code·class="inline">modules</code></li><li><code·class="inline">registered</code></li><li><code·class="inline">applications</code></li></ul><p>The·other·keys·are·ignored·by·<code·class="inline">systools</code>.</p><ul><li><p><strong><code·class="inline">description</code></strong>·-·A·one-line·description·of·the·application.</p></li><li><p><strong><code·class="inline">id</code></strong>·-·Product·identification,·or·similar.</p></li><li><p><strong><code·class="inline">vsn</code></strong>·-·Version·of·the·application.</p></li><li><p><strong><code·class="inline">modules</code></strong>·-·All·modules·introduced·by·this·application.·<code·class="inline">systools</code>·uses
182 this·list·when·generating·start·scripts·and·tar·files.·A·module·can·only·be182 this·list·when·generating·start·scripts·and·tar·files.·A·module·can·only·be
183 defined·in·one·application.</p></li><li><p><strong><code·class="inline">maxP</code></strong>·-·<em>Deprecated·-·is·ignored</em></p><p>Maximum·number·of·processes·allowed·in·the·application.</p></li><li><p><strong><code·class="inline">maxT</code></strong>·-·Maximum·time,·in·milliseconds,·that·the·application·is·allowed·to183 defined·in·one·application.</p></li><li><p><strong><code·class="inline">maxP</code></strong>·-·<em>Deprecated·-·is·ignored</em></p><p>Maximum·number·of·processes·allowed·in·the·application.</p></li><li><p><strong><code·class="inline">maxT</code></strong>·-·Maximum·time,·in·milliseconds,·that·the·application·is·allowed·to
184 run.·After·the·specified·time,·the·application·terminates·automatically.</p></li><li><p><strong><code·class="inline">registered</code></strong>·-·All·names·of·registered·processes·started·in·this184 run.·After·the·specified·time,·the·application·terminates·automatically.</p></li><li><p><strong><code·class="inline">registered</code></strong>·-·All·names·of·registered·processes·started·in·this
185 application.·<code·class="inline">systools</code>·uses·this·list·to·detect·name·clashes·between185 application.·<code·class="inline">systools</code>·uses·this·list·to·detect·name·clashes·between
186 different·applications.</p></li><li><p><strong><code·class="inline">included_applications</code></strong>·-·All·applications·included·by·this·application.186 different·applications.</p></li><li><p><strong><code·class="inline">included_applications</code></strong>·-·All·applications·included·by·this·application.
Offset 207, 15 lines modifiedOffset 207, 15 lines modified
207 be·omitted·for·applications·without·processes,·typically·code·libraries,·for207 be·omitted·for·applications·without·processes,·typically·code·libraries,·for
208 example,·STDLIB.</p></li><li><p><strong><code·class="inline">start_phases</code></strong>·-·A·list·of·start·phases·and·corresponding·start·arguments208 example,·STDLIB.</p></li><li><p><strong><code·class="inline">start_phases</code></strong>·-·A·list·of·start·phases·and·corresponding·start·arguments
209 for·the·application.·If·this·key·is·present,·the·application·master,·in209 for·the·application.·If·this·key·is·present,·the·application·master,·in
210 addition·to·the·usual·call·to·<code·class="inline">Module:start/2</code>,·also·calls210 addition·to·the·usual·call·to·<code·class="inline">Module:start/2</code>,·also·calls
211 <code·class="inline">Module:start_phase(Phase,Type,PhaseArgs)</code>·for·each·start·phase·defined·by·key211 <code·class="inline">Module:start_phase(Phase,Type,PhaseArgs)</code>·for·each·start·phase·defined·by·key
212 <code·class="inline">start_phases</code>.·Only·after·this·extended·start·procedure,212 <code·class="inline">start_phases</code>.·Only·after·this·extended·start·procedure,
213 <code·class="inline">application:start(Application)</code>·returns.</p><p>Start·phases·can·be·used·to·synchronize·startup·of·an·application·and·its213 <code·class="inline">application:start(Application)</code>·returns.</p><p>Start·phases·can·be·used·to·synchronize·startup·of·an·application·and·its
214 included·applications.·In·this·case,·key·<code·class="inline">mod</code>·must·be·specified·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3560810120-1">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3560810120-2">{</span><span·class="ss">application_starter</span><span·class="p">,</span><span·class="p"·data-group-id="35608101[·...·truncated·by·diffoscope;·len:·246,·SHA:·bd0f41530b4c05ef5dc18bca7cd8fe043bf48ce7d0eb9afb026cf7c3fecf6478·...·]-1">}</span></code></pre><p>The·application·master·then·calls·<code·class="inline">Module:start/2</code>·for·the·primary214 included·applications.·In·this·case,·key·<code·class="inline">mod</code>·must·be·specified·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2617900278-1">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2617900278-2">{</span><span·class="ss">application_starter</span><span·class="p">,</span><span·class="p"·data-group-id="26179002[·...·truncated·by·diffoscope;·len:·246,·SHA:·51afb7ecf507532749f45124d68663802b49edf4336bf70f8af2d9130fa53e32·...·]-1">}</span></code></pre><p>The·application·master·then·calls·<code·class="inline">Module:start/2</code>·for·the·primary
215 application,·followed·by·calls·to·<code·class="inline">Module:start_phase/3</code>·for·each·start·phase215 application,·followed·by·calls·to·<code·class="inline">Module:start_phase/3</code>·for·each·start·phase
216 (as·defined·for·the·primary·application),·both·for·the·primary·application·and216 (as·defined·for·the·primary·application),·both·for·the·primary·application·and
217 for·each·of·its·included·applications,·for·which·the·start·phase·is·defined.</p><p>This·implies·that·for·an·included·application,·the·set·of·start·phases·must·be217 for·each·of·its·included·applications,·for·which·the·start·phase·is·defined.</p><p>This·implies·that·for·an·included·application,·the·set·of·start·phases·must·be
218 a·subset·of·the·set·of·phases·defined·for·the·primary·application.·For·more218 a·subset·of·the·set·of·phases·defined·for·the·primary·application.·For·more
219 information,·see·<a·href="../../../../doc/system/applications.html">OTP·Design·Principles</a>.</p></li><li><p><strong><code·class="inline"·id="runtime_dependencies">runtime_dependencies</code></strong>·-·A·list·of·application219 information,·see·<a·href="../../../../doc/system/applications.html">OTP·Design·Principles</a>.</p></li><li><p><strong><code·class="inline"·id="runtime_dependencies">runtime_dependencies</code></strong>·-·A·list·of·application
220 versions·that·the·application·depends·on.·An·example·of·such·an·application220 versions·that·the·application·depends·on.·An·example·of·such·an·application
221 version·is·<code·class="inline">&quot;kernel-3.0&quot;</code>.·Application·versions·specified·as·runtime221 version·is·<code·class="inline">&quot;kernel-3.0&quot;</code>.·Application·versions·specified·as·runtime
Offset 280, 15 lines modifiedOffset 280, 15 lines modified
280 ······<p·class="built-using">280 ······<p·class="built-using">
281 ········Built·using281 ········Built·using
282 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the282 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
283 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>283 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
284 ······</p>284 ······</p>
285 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>285 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
286 ····</footer>286 ····</footer>
287 ··</div>287 ··</div>
288 </main>288 </main>
289 </div>289 </div>
290 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>290 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
291 <script>291 <script>
292 ··document.addEventListener("DOMContentLoaded",·function·()·{292 ··document.addEventListener("DOMContentLoaded",·function·()·{
755 B
html2text {}
Max HTML report size reached
4.08 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/application.html
    
Offset 1649, 15 lines modifiedOffset 1649, 15 lines modified
1649 distributed.·The·argument·overrides·the·value·for·the·application·in·the·Kernel1649 distributed.·The·argument·overrides·the·value·for·the·application·in·the·Kernel
1650 configuration·parameter·<code·class="inline">distributed</code>.·<code·class="inline">Application</code>·must·be·the·application1650 configuration·parameter·<code·class="inline">distributed</code>.·<code·class="inline">Application</code>·must·be·the·application
1651 name·(same·as·in·the·first·argument).·If·a·node·crashes·and·<code·class="inline">Time</code>·is·specified,1651 name·(same·as·in·the·first·argument).·If·a·node·crashes·and·<code·class="inline">Time</code>·is·specified,
1652 the·application·controller·waits·for·<code·class="inline">Time</code>·milliseconds·before·attempting·to1652 the·application·controller·waits·for·<code·class="inline">Time</code>·milliseconds·before·attempting·to
1653 restart·the·application·on·another·node.·If·<code·class="inline">Time</code>·is·not·specified,·it·defaults1653 restart·the·application·on·another·node.·If·<code·class="inline">Time</code>·is·not·specified,·it·defaults
1654 to·<code·class="inline">0</code>·and·the·application·is·restarted·immediately.</p><p><code·class="inline">Nodes</code>·is·a·list·of·node·names·where·the·application·can·run,·in·priority·from1654 to·<code·class="inline">0</code>·and·the·application·is·restarted·immediately.</p><p><code·class="inline">Nodes</code>·is·a·list·of·node·names·where·the·application·can·run,·in·priority·from
1655 left·to·right.·Node·names·can·be·grouped·using·tuples·to·indicate·that·they·have1655 left·to·right.·Node·names·can·be·grouped·using·tuples·to·indicate·that·they·have
1656 the·same·priority.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Nodes</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5981718514-1">[</span><span·class="ss">cp1@cave</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5981718514-2">{</span><span·class="ss">cp2@cave</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cp3@[·...·truncated·by·diffoscope;·len:·105,·SHA:·3468ddf460a0dc911b0fe6205b2a851c7fbc8f987d59f6d4e8cabd676486968a·...·]-1">]</span></code></pre><p>This·means·that·the·application·is·preferably·to·be·started·at·<code·class="inline">cp1@cave</code>.·If1656 the·same·priority.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Nodes</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2771636396-1">[</span><span·class="ss">cp1@cave</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2771636396-2">{</span><span·class="ss">cp2@cave</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cp3@[·...·truncated·by·diffoscope;·len:·105,·SHA:·1c48d2dee7b8ff547c5a3dea80f082024f4a4df3d5548fd32d2cbec1455ef5f3·...·]-1">]</span></code></pre><p>This·means·that·the·application·is·preferably·to·be·started·at·<code·class="inline">cp1@cave</code>.·If
1657 <code·class="inline">cp1@cave</code>·is·down,·the·application·is·to·be·started·at·<code·class="inline">cp2@cave</code>·or1657 <code·class="inline">cp1@cave</code>·is·down,·the·application·is·to·be·started·at·<code·class="inline">cp2@cave</code>·or
1658 <code·class="inline">cp3@cave</code>.</p><p>If·<code·class="inline">Distributed·==·default</code>,·the·value·for·the·application·in·the·Kernel1658 <code·class="inline">cp3@cave</code>.</p><p>If·<code·class="inline">Distributed·==·default</code>,·the·value·for·the·application·in·the·Kernel
1659 configuration·parameter·<code·class="inline">distributed</code>·is·used.</p>1659 configuration·parameter·<code·class="inline">distributed</code>·is·used.</p>
1660 ··</section>1660 ··</section>
1661 </section>1661 </section>
1662 <section·class="detail"·id="loaded_applications/0">1662 <section·class="detail"·id="loaded_applications/0">
  
Offset 2267, 15 lines modifiedOffset 2267, 15 lines modified
2267 ······<p·class="built-using">2267 ······<p·class="built-using">
2268 ········Built·using2268 ········Built·using
2269 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2269 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2270 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2270 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2271 ······</p>2271 ······</p>
2272 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2272 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2273 ····</footer>2273 ····</footer>
2274 ··</div>2274 ··</div>
2275 </main>2275 </main>
2276 </div>2276 </div>
2277 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2277 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2278 <script>2278 <script>
2279 ··document.addEventListener("DOMContentLoaded",·function·()·{2279 ··document.addEventListener("DOMContentLoaded",·function·()·{
630 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/auth.html
    
Offset 469, 15 lines modifiedOffset 469, 15 lines modified
469 ······<p·class="built-using">469 ······<p·class="built-using">
470 ········Built·using470 ········Built·using
471 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the471 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
472 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>472 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
473 ······</p>473 ······</p>
474 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>474 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
475 ····</footer>475 ····</footer>
476 ··</div>476 ··</div>
477 </main>477 </main>
478 </div>478 </div>
479 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>479 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
480 <script>480 <script>
481 ··document.addEventListener("DOMContentLoaded",·function·()·{481 ··document.addEventListener("DOMContentLoaded",·function·()·{
664 B
html2text {}
Max HTML report size reached
22.3 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/code.html
    
Offset 189, 19 lines modifiedOffset 189, 19 lines modified
189 <a·href="#lib_dir/2"><code·class="inline">code:lib_dir/2</code></a>·and·<a·href="../../../../erts-15.0.1/doc/html/erl_prim_loader.html"><code·class="inline">erl_prim_loader</code></a>.</p></blockquote><p>The·Erlang·archives·are·<code·class="inline">ZIP</code>·files·with·extension·<code·class="inline">.ez</code>.·Erlang·archives·can189 <a·href="#lib_dir/2"><code·class="inline">code:lib_dir/2</code></a>·and·<a·href="../../../../erts-15.0.1/doc/html/erl_prim_loader.html"><code·class="inline">erl_prim_loader</code></a>.</p></blockquote><p>The·Erlang·archives·are·<code·class="inline">ZIP</code>·files·with·extension·<code·class="inline">.ez</code>.·Erlang·archives·can
190 also·be·<a·href="../../../../lib/stdlib-6.0.1/doc/html/escript.html">enclosed·in·<code·class="inline">escript</code></a>·files·whose·file·extension·is·arbitrary.</p><p>Erlang·archive·files·can·contain·entire·Erlang·applications·or·parts·of190 also·be·<a·href="../../../../lib/stdlib-6.0.1/doc/html/escript.html">enclosed·in·<code·class="inline">escript</code></a>·files·whose·file·extension·is·arbitrary.</p><p>Erlang·archive·files·can·contain·entire·Erlang·applications·or·parts·of
191 applications.·The·structure·in·an·archive·file·is·the·same·as·the·directory191 applications.·The·structure·in·an·archive·file·is·the·same·as·the·directory
192 structure·for·an·application.·If·you,·for·example,·create·an·archive·of192 structure·for·an·application.·If·you,·for·example,·create·an·archive·of
193 <code·class="inline">mnesia-4.4.7</code>,·the·archive·file·must·be·named·<code·class="inline">mnesia-4.4.7.ez</code>·and·it·must193 <code·class="inline">mnesia-4.4.7</code>,·the·archive·file·must·be·named·<code·class="inline">mnesia-4.4.7.ez</code>·and·it·must
194 contain·a·top·directory·named·<code·class="inline">mnesia-4.4.7</code>.·If·the·version·part·of·the·name·is194 contain·a·top·directory·named·<code·class="inline">mnesia-4.4.7</code>.·If·the·version·part·of·the·name·is
195 omitted,·it·must·also·be·omitted·in·the·archive.·That·is,·a·<code·class="inline">mnesia.ez</code>·archive195 omitted,·it·must·also·be·omitted·in·the·archive.·That·is,·a·<code·class="inline">mnesia.ez</code>·archive
196 must·contain·a·<code·class="inline">mnesia</code>·top·directory.</p><p>An·archive·file·for·an·application·can,·for·example,·be·created·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">zip</span><span·class="p">:</span><span·class="nf">create</span><span·class="p"·data-group-id="8256080809-1">(</span><span·class="s">&quot;mnesia-4.4.7.ez&quot;</span><span·class="p">,</span><span·class="w">196 must·contain·a·<code·class="inline">mnesia</code>·top·directory.</p><p>An·archive·file·for·an·application·can,·for·example,·be·created·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">zip</span><span·class="p">:</span><span·class="nf">create</span><span·class="p"·data-group-id="3062984881-1">(</span><span·class="s">&quot;mnesia-4.4.7.ez&quot;</span><span·class="p">,</span><span·class="w">
197 »       </span><span·class="p"·data-group-id="8256080809-2">[</span><span·class="s">&quot;mnesia-4.4.7&quot;</span><span·class="p"·data-group-id="8256080809-2">]</span><span·class="p">,</span><span·class="w">197 »       </span><span·class="p"·data-group-id="3062984881-2">[</span><span·class="s">&quot;mnesia-4.4.7&quot;</span><span·class="p"·data-group-id="3062984881-2">]</span><span·class="p">,</span><span·class="w">
198 »       </span><span·class="p"·data-group-id="8256080809-3">[</span><span·class="p"·data-group-id="8256080809-4">{</span><span·class="ss">cwd</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·124,·SHA:·5fccb70ee39ddb88ad1935dce9167470bbfd0978539cfae4693738b311f874cb·...·]-4">}</span><span·class="p">,</span><span·class="w">198 »       </span><span·class="p"·data-group-id="3062984881-3">[</span><span·class="p"·data-group-id="3062984881-4">{</span><span·class="ss">cwd</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·124,·SHA:·51eb73ce990cdec457c0f49dd7b494a24d0e8273edda6d12658f8f6b0e7c3da9·...·]-4">}</span><span·class="p">,</span><span·class="w">
199 »       ·</span><span·class="p"·data-group-id="8256080809-6">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">all</span><span·class="p"·data-group-id="8256080809-6">}</span><span·class="p">,</span><span·class="w">199 »       ·</span><span·class="p"·data-group-id="3062984881-6">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">all</span><span·class="p"·data-group-id="3062984881-6">}</span><span·class="p">,</span><span·class="w">
200 »       ·</span><span·class="p"·data-group-id="8256080809-7">{</span><span·class="ss">uncompress</span><span·class="p">,</span><span·class="p"·data-group-id="8256080809-8">[</span><span·class="s">&quot;.beam&quot;</span><span·class="p">,</span><span·class="s">&quot;.app&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·180,·SHA:·f9b9b682ea70a3c6fe697131af21bc46cd4463da9a63f037dbf62c1069423fbd·...·]-1">)</span><span·class="p">.</span></code></pre><p>Any·file·in·the·archive·can·be·compressed,·but·to·speed·up·the·access·of200 »       ·</span><span·class="p"·data-group-id="3062984881-7">{</span><span·class="ss">uncompress</span><span·class="p">,</span><span·class="p"·data-group-id="3062984881-8">[</span><span·class="s">&quot;.beam&quot;</span><span·class="p">,</span><span·class="s">&quot;.app&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·180,·SHA:·252f7e4075e861f1027ca5dc637ca284a26e0f524515b342aa66ecef74645c9a·...·]-1">)</span><span·class="p">.</span></code></pre><p>Any·file·in·the·archive·can·be·compressed,·but·to·speed·up·the·access·of
201 frequently·read·files,·it·can·be·a·good·idea·to·store·<code·class="inline">beam</code>·and·<code·class="inline">app</code>·files201 frequently·read·files,·it·can·be·a·good·idea·to·store·<code·class="inline">beam</code>·and·<code·class="inline">app</code>·files
202 uncompressed·in·the·archive.</p><p>Normally·the·top·directory·of·an·application·is·located·in·library·directory202 uncompressed·in·the·archive.</p><p>Normally·the·top·directory·of·an·application·is·located·in·library·directory
203 <code·class="inline">$OTPROOT/lib</code>·or·in·a·directory·referred·to·by·environment·variable·<code·class="inline">ERL_LIBS</code>.203 <code·class="inline">$OTPROOT/lib</code>·or·in·a·directory·referred·to·by·environment·variable·<code·class="inline">ERL_LIBS</code>.
204 At·startup,·when·the·initial·code·path·is·computed,·the·code·server·also·looks204 At·startup,·when·the·initial·code·path·is·computed,·the·code·server·also·looks
205 for·archive·files·in·these·directories·and·possibly·adds·<code·class="inline">ebin</code>·directories·in205 for·archive·files·in·these·directories·and·possibly·adds·<code·class="inline">ebin</code>·directories·in
206 archives·to·the·code·path.·The·code·path·then·contains·paths·to·directories·that206 archives·to·the·code·path.·The·code·path·then·contains·paths·to·directories·that
207 look·like·<code·class="inline">$OTPROOT/lib/mnesia.ez/mnesia/ebin</code>·or207 look·like·<code·class="inline">$OTPROOT/lib/mnesia.ez/mnesia/ebin</code>·or
Offset 1871, 18 lines modifiedOffset 1871, 18 lines modified
1871 none·of·the·modules·are·loaded·if·there·is·a·problem·with·any·of·the1871 none·of·the·modules·are·loaded·if·there·is·a·problem·with·any·of·the
1872 modules.</p><p>Loading·can·fail·for·one·the·following·reasons:</p><ul><li><p><strong><code·class="inline">badfile</code></strong>·-·The·object·code·has·an·incorrect·format·or·the·module·name·in1872 modules.</p><p>Loading·can·fail·for·one·the·following·reasons:</p><ul><li><p><strong><code·class="inline">badfile</code></strong>·-·The·object·code·has·an·incorrect·format·or·the·module·name·in
1873 the·object·code·is·not·the·expected·module·name.</p></li><li><p><strong><code·class="inline">nofile</code></strong>·-·No·file·with·object·code·exists.</p></li><li><p><strong><code·class="inline">on_load_not_allowed</code></strong>·-·A·module·contains·an1873 the·object·code·is·not·the·expected·module·name.</p></li><li><p><strong><code·class="inline">nofile</code></strong>·-·No·file·with·object·code·exists.</p></li><li><p><strong><code·class="inline">on_load_not_allowed</code></strong>·-·A·module·contains·an
1874 <a·href="../../../../doc/system/code_loading.html#on_load">-on_load·function</a>.</p></li><li><p><strong><code·class="inline">duplicated</code></strong>·-·A·module·is·included·more·than·once·in·<code·class="inline">Modules</code>.</p></li><li><p><strong><code·class="inline">not_purged</code></strong>·-·The·object·code·cannot·be·loaded·because·an·old·version·of1874 <a·href="../../../../doc/system/code_loading.html#on_load">-on_load·function</a>.</p></li><li><p><strong><code·class="inline">duplicated</code></strong>·-·A·module·is·included·more·than·once·in·<code·class="inline">Modules</code>.</p></li><li><p><strong><code·class="inline">not_purged</code></strong>·-·The·object·code·cannot·be·loaded·because·an·old·version·of
1875 the·code·already·exists.</p></li><li><p><strong><code·class="inline">sticky_directory</code></strong>·-·The·object·code·resides·in·a·sticky·directory.</p></li><li><p><strong><code·class="inline">pending_on_load</code></strong>·-·A·previously·loaded·module·contains·an·<code·class="inline">-on_load</code>1875 the·code·already·exists.</p></li><li><p><strong><code·class="inline">sticky_directory</code></strong>·-·The·object·code·resides·in·a·sticky·directory.</p></li><li><p><strong><code·class="inline">pending_on_load</code></strong>·-·A·previously·loaded·module·contains·an·<code·class="inline">-on_load</code>
1876 function·that·never·finished.</p></li></ul><p>If·it·is·important·to·minimize·the·time·that·an·application·is·inactive·while1876 function·that·never·finished.</p></li></ul><p>If·it·is·important·to·minimize·the·time·that·an·application·is·inactive·while
1877 changing·code,·use·<a·href="#prepare_loading/1"><code·class="inline">prepare_loading/1</code></a>·and·<a·href="#finish_loading/1"><code·class="inline">finish_loading/1</code></a>·instead·of1877 changing·code,·use·<a·href="#prepare_loading/1"><code·class="inline">prepare_loading/1</code></a>·and·<a·href="#finish_loading/1"><code·class="inline">finish_loading/1</code></a>·instead·of
1878 <a·href="#atomic_load/1"><code·class="inline">atomic_load/1</code></a>.·Here·is·an·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3872580014-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Prepared</span><span·class="p"·data-group-id="3872580014-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span>[·...·truncated·by·diffoscope;·len:·187,·SHA:·13295dc09e9e93cc09308350b7eedf1946afa7e7eb12f37b5cefbf8b3d4679c0·...·]-2">)</span><span·class="p">,</span><span·class="w">1878 <a·href="#atomic_load/1"><code·class="inline">atomic_load/1</code></a>.·Here·is·an·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4848023058-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Prepared</span><span·class="p"·data-group-id="4848023058-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span>[·...·truncated·by·diffoscope;·len:·187,·SHA:·75e5dffe35bcdcf97fdc5bcfc1619ff52cdc98e103d391f5b2aa975cb9e43d26·...·]-2">)</span><span·class="p">,</span><span·class="w">
1879 </span><span·class="c1">%%·Put·the·application·into·an·inactive·state·or·do·any</span><span·class="w">1879 </span><span·class="c1">%%·Put·the·application·into·an·inactive·state·or·do·any</span><span·class="w">
1880 </span><span·class="c1">%%·other·preparation·needed·before·changing·the·code.</span><span·class="w">1880 </span><span·class="c1">%%·other·preparation·needed·before·changing·the·code.</span><span·class="w">
1881 </span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">finish_loading</span><span·class="p"·data-group-id="3872580014-3">(</span><span·class="n">Prepared</span><span·class="p"·data-group-id="3872580014-3">)</span><span·class="p">,</span><span·class="w">1881 </span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">finish_loading</span><span·class="p"·data-group-id="4848023058-3">(</span><span·class="n">Prepared</span><span·class="p"·data-group-id="4848023058-3">)</span><span·class="p">,</span><span·class="w">
1882 </span><span·class="c1">%%·Resume·the·application.</span></code></pre>1882 </span><span·class="c1">%%·Resume·the·application.</span></code></pre>
1883 ··</section>1883 ··</section>
1884 </section>1884 </section>
1885 <section·class="detail"·id="clash/0">1885 <section·class="detail"·id="clash/0">
  
1886 ··<div·class="detail-header">1886 ··<div·class="detail-header">
1887 ····<a·href="#clash/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1887 ····<a·href="#clash/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 2427, 16 lines modifiedOffset 2427, 16 lines modified
2427 ······</div>2427 ······</div>
  
2428 <p>Returns·the·object·code·for·module·<code·class="inline">Module</code>·if·found·in·the·code·path.</p><p>Returns·<code·class="inline">{Module,·Binary,·Filename}</code>·if·successful,·otherwise2428 <p>Returns·the·object·code·for·module·<code·class="inline">Module</code>·if·found·in·the·code·path.</p><p>Returns·<code·class="inline">{Module,·Binary,·Filename}</code>·if·successful,·otherwise
2429 <code·class="inline">error</code>.·<code·class="inline">Binary</code>·is·a·binary·data·object,·which·contains·the·object2429 <code·class="inline">error</code>.·<code·class="inline">Binary</code>·is·a·binary·data·object,·which·contains·the·object
2430 code·for·the·module.·This·is·useful·if·code·is·to·be·loaded·on·a2430 code·for·the·module.·This·is·useful·if·code·is·to·be·loaded·on·a
2431 remote·node·in·a·distributed·system.·For·example,·loading·module2431 remote·node·in·a·distributed·system.·For·example,·loading·module
2432 <code·class="inline">Module</code>·on·a·node·<code·class="inline">Node</code>·is·done·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">2432 <code·class="inline">Module</code>·on·a·node·<code·class="inline">Node</code>·is·done·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
2433 </span><span·class="p"·data-group-id="4724932401-1">{</span><span·class="p">_</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Binary</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filename</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·314,·SHA:·8ea9662ffee9750966a13e9d3ed5c91115ebf670d68e29bdd40338735a65e5f8·...·]-2">)</span><span·class="p">,</span><span·class="w">2433 </span><span·class="p"·data-group-id="6023559439-1">{</span><span·class="p">_</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Binary</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filename</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·314,·SHA:·07388dde25ca8ff1a3ea1c814ce3a6651166edf988e56816e3f91550bb610f0a·...·]-2">)</span><span·class="p">,</span><span·class="w">
2434 </span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="4724932401-3">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">code</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">load_binary</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·332,·SHA:·028f5125b18002be8406d99177f8ebc7483859c3ad276551d1a030bee4d75c9f·...·]-3">)</span><span·class="p">,</span><span·class="w">2434 </span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="6023559439-3">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">code</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">load_binary</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·332,·SHA:·1b6a9e7bfaefd88ec0266b0559153ea6ca86d1a9e914e9c4903cdfa605c39bda·...·]-3">)</span><span·class="p">,</span><span·class="w">
2435 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>2435 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>
2436 ··</section>2436 ··</section>
2437 </section>2437 </section>
2438 <section·class="detail"·id="get_path/0">2438 <section·class="detail"·id="get_path/0">
  
2439 ··<div·class="detail-header">2439 ··<div·class="detail-header">
2440 ····<a·href="#get_path/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2440 ····<a·href="#get_path/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 2547, 15 lines modifiedOffset 2547, 15 lines modified
2547 ······<div·class="specs">2547 ······<div·class="specs">
  
2548 ··········<pre·translate="no"><span·class="attribute">-spec</span>·lib_dir()·->·<a·href="file.html#t:filename/0">file:filename</a>().</pre>2548 ··········<pre·translate="no"><span·class="attribute">-spec</span>·lib_dir()·->·<a·href="file.html#t:filename/0">file:filename</a>().</pre>
  
2549 ······</div>2549 ······</div>
  
2550 <p>Returns·the·library·directory,·<code·class="inline">$OTPROOT/lib</code>,·where·<code·class="inline">$OTPROOT</code>·is·the·root2550 <p>Returns·the·library·directory,·<code·class="inline">$OTPROOT/lib</code>,·where·<code·class="inline">$OTPROOT</code>·is·the·root
2551 directory·of·Erlang/OTP.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="3205759904-1">(</span><span·class="p"·data-group-id="3205759904-1">)</span><span·class="p">.</span><span·class="w">2551 directory·of·Erlang/OTP.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="1579543093-1">(</span><span·class="p"·data-group-id="1579543093-1">)</span><span·class="p">.</span><span·class="w">
2552 </span><span·class="s">&quot;/usr/local/otp/lib&quot;</span></code></pre>2552 </span><span·class="s">&quot;/usr/local/otp/lib&quot;</span></code></pre>
2553 ··</section>2553 ··</section>
2554 </section>2554 </section>
2555 <section·class="detail"·id="lib_dir/1">2555 <section·class="detail"·id="lib_dir/1">
  
2556 ··<div·class="detail-header">2556 ··<div·class="detail-header">
2557 ····<a·href="#lib_dir/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2557 ····<a·href="#lib_dir/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 2586, 15 lines modifiedOffset 2586, 15 lines modified
2586 an·<code·class="inline">ebin</code>·subdirectory,·the·path·to·this·directory·is·returned·(not·the·<code·class="inline">ebin</code>2586 an·<code·class="inline">ebin</code>·subdirectory,·the·path·to·this·directory·is·returned·(not·the·<code·class="inline">ebin</code>
2587 directory).</p><p>If·the·directory·refers·to·a·directory·in·an·archive,·the·archive·name·is2587 directory).</p><p>If·the·directory·refers·to·a·directory·in·an·archive,·the·archive·name·is
2588 stripped·away·before·the·path·is·returned.·For·example,·if·directory2588 stripped·away·before·the·path·is·returned.·For·example,·if·directory
2589 <code·class="inline">/usr/local/otp/lib/mnesia-4.2.2.ez/mnesia-4.2.2/ebin</code>·is·in·the·path,2589 <code·class="inline">/usr/local/otp/lib/mnesia-4.2.2.ez/mnesia-4.2.2/ebin</code>·is·in·the·path,
2590 <code·class="inline">/usr/local/otp/lib/mnesia-4.2.2/ebin</code>·is·returned.·This·means·that·the·library2590 <code·class="inline">/usr/local/otp/lib/mnesia-4.2.2/ebin</code>·is·returned.·This·means·that·the·library
2591 directory·for·an·application·is·the·same,·regardless·if·the·application·resides2591 directory·for·an·application·is·the·same,·regardless·if·the·application·resides
2592 in·an·archive·or·not.</p><blockquote><h4·class="info">Warning</h4><p>Archives·are·experimental.·In·a·future·release,·they·can·be·removed·or2592 in·an·archive·or·not.</p><blockquote><h4·class="info">Warning</h4><p>Archives·are·experimental.·In·a·future·release,·they·can·be·removed·or
2593 their·behavior·can·change.</p></blockquote><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="6957313833-1">(</span><span·class="ss">mnesia</span><span·class="p"·data-group-id="6957313833-1">)</span><span·class="p">.</span><span·class="w">2593 their·behavior·can·change.</p></blockquote><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="5662641846-1">(</span><span·class="ss">mnesia</span><span·class="p"·data-group-id="5662641846-1">)</span><span·class="p">.</span><span·class="w">
2594 </span><span·class="s">&quot;/usr/local/otp/lib/mnesia-4.23&quot;</span></code></pre><p>Returns·<code·class="inline">{error,·bad_name}</code>·if·<code·class="inline">Name</code>·is·not·the·name·of·an·application·under2594 </span><span·class="s">&quot;/usr/local/otp/lib/mnesia-4.23&quot;</span></code></pre><p>Returns·<code·class="inline">{error,·bad_name}</code>·if·<code·class="inline">Name</code>·is·not·the·name·of·an·application·under
2595 <code·class="inline">$OTPROOT/lib</code>·or·on·a·directory·referred·to·through·environment·variable2595 <code·class="inline">$OTPROOT/lib</code>·or·on·a·directory·referred·to·through·environment·variable
2596 <code·class="inline">ERL_LIBS</code>.·Fails·with·an·exception·if·<code·class="inline">Name</code>·has·the·wrong·type.</p><blockquote><h4·class="warning">Warning</h4><p>For·backward·compatibility,·<code·class="inline">Name</code>·is·also·allowed·to·be·a·string.·That·will2596 <code·class="inline">ERL_LIBS</code>.·Fails·with·an·exception·if·<code·class="inline">Name</code>·has·the·wrong·type.</p><blockquote><h4·class="warning">Warning</h4><p>For·backward·compatibility,·<code·class="inline">Name</code>·is·also·allowed·to·be·a·string.·That·will
2597 probably·change·in·a·future·release.</p></blockquote>2597 probably·change·in·a·future·release.</p></blockquote>
2598 ··</section>2598 ··</section>
2599 </section>2599 </section>
2600 <section·class="detail"·id="lib_dir/2">2600 <section·class="detail"·id="lib_dir/2">
Offset 2629, 15 lines modifiedOffset 2629, 15 lines modified
2629 <p>Returns·the·path·to·a·subdirectory·directly·under·the·top·directory·of·an2629 <p>Returns·the·path·to·a·subdirectory·directly·under·the·top·directory·of·an
2630 application.</p><blockquote><h4·class="info">Change</h4><p>This·function·is·part·of·the·archive·support,·which·is·an·experimental2630 application.</p><blockquote><h4·class="info">Change</h4><p>This·function·is·part·of·the·archive·support,·which·is·an·experimental
2631 feature·that·will·be·changed·or·removed·in·a·future·release.</p></blockquote><p>Normally·the·subdirectories·reside·under·the·top·directory·for·the2631 feature·that·will·be·changed·or·removed·in·a·future·release.</p></blockquote><p>Normally·the·subdirectories·reside·under·the·top·directory·for·the
2632 application,·but·when·applications·at·least·partly·reside·in·an·archive,·the2632 application,·but·when·applications·at·least·partly·reside·in·an·archive,·the
2633 situation·is·different.·Some·of·the·subdirectories·can·reside·as·regular2633 situation·is·different.·Some·of·the·subdirectories·can·reside·as·regular
2634 directories·while·others·reside·in·an·archive·file.·It·is·not·checked·whether2634 directories·while·others·reside·in·an·archive·file.·It·is·not·checked·whether
2635 this·directory·exists.</p><p>Instead·of·using·this·function,·use·<a·href="#lib_dir/1"><code·class="inline">code:lib_dir/1</code></a>2635 this·directory·exists.</p><p>Instead·of·using·this·function,·use·<a·href="#lib_dir/1"><code·class="inline">code:lib_dir/1</code></a>
2636 and·<a·href="../../../../lib/stdlib-6.0.1/doc/html/filename.html#join/2"><code·class="inline">filename:join/2</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="2864220310-1">(</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="2864220310-2">(</span><span·class="ss">megaco</span><span·class="p"·data-group-id="2864220310-2">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·113,·SHA:·a7918273776795833b1331f37fb9b08115ccb29774980d3cf2fc51fe35a833f6·...·]-1">)</span><span·class="p">.</span><span·class="w">2636 and·<a·href="../../../../lib/stdlib-6.0.1/doc/html/filename.html#join/2"><code·class="inline">filename:join/2</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="8632105271-1">(</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="8632105271-2">(</span><span·class="ss">megaco</span><span·class="p"·data-group-id="8632105271-2">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·113,·SHA:·ce53e05952aa5c96d5ae10da0a647781ce49a8c0e9f000baac9886584107f503·...·]-1">)</span><span·class="p">.</span><span·class="w">
2637 </span><span·class="s">&quot;/usr/local/otp/lib/megaco-3.9.1.1/priv&quot;</span></code></pre><p>Fails·with·an·exception·if·<code·class="inline">Name</code>·or·<code·class="inline">SubDir</code>·has·the·wrong·type.</p>2637 </span><span·class="s">&quot;/usr/local/otp/lib/megaco-3.9.1.1/priv&quot;</span></code></pre><p>Fails·with·an·exception·if·<code·class="inline">Name</code>·or·<code·class="inline">SubDir</code>·has·the·wrong·type.</p>
2638 ··</section>2638 ··</section>
2639 </section>2639 </section>
2640 <section·class="detail"·id="load_abs/1">2640 <section·class="detail"·id="load_abs/1">
  
2641 ··<div·class="detail-header">2641 ··<div·class="detail-header">
2642 ····<a·href="#load_abs/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2642 ····<a·href="#load_abs/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 3088, 15 lines modifiedOffset 3088, 15 lines modified
3088 ······<div·class="specs">3088 ······<div·class="specs">
  
3089 ··········<pre·translate="no"><span·class="attribute">-spec</span>·root_dir()·->·<a·href="file.html#t:filename/0">file:filename</a>().</pre>3089 ··········<pre·translate="no"><span·class="attribute">-spec</span>·root_dir()·->·<a·href="file.html#t:filename/0">file:filename</a>().</pre>
  
3090 ······</div>3090 ······</div>
  
3091 <p>Returns·the·root·directory·of·Erlang/OTP,·which·is·the·directory·where·it·is3091 <p>Returns·the·root·directory·of·Erlang/OTP,·which·is·the·directory·where·it·is
3092 installed.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">root_dir</span><span·class="p"·data-group-id="1444170305-1">(</span><span·class="p"·data-group-id="1444170305-1">)</span><span·class="p">.</span><span·class="w">3092 installed.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">root_dir</span><span·class="p"·data-group-id="3943166416-1">(</span><span·class="p"·data-group-id="3943166416-1">)</span><span·class="p">.</span><span·class="w">
3093 </span><span·class="s">&quot;/usr/local/otp&quot;</span></code></pre>3093 </span><span·class="s">&quot;/usr/local/otp&quot;</span></code></pre>
3094 ··</section>3094 ··</section>
3095 </section>3095 </section>
3096 <section·class="detail"·id="set_coverage_mode/1">3096 <section·class="detail"·id="set_coverage_mode/1">
  
3097 ··<div·class="detail-header">3097 ··<div·class="detail-header">
3098 ····<a·href="#set_coverage_mode/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">3098 ····<a·href="#set_coverage_mode/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 3380, 15 lines modifiedOffset 3380, 15 lines modified
3380 ······<p·class="built-using">3380 ······<p·class="built-using">
3381 ········Built·using3381 ········Built·using
3382 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3382 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3383 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3383 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3384 ······</p>3384 ······</p>
Max diff block lines reached; 167/22069 bytes (0.76%) of diff not shown.
665 B
html2text {}
Max HTML report size reached
6.47 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/config.html
    
Offset 148, 17 lines modifiedOffset 148, 17 lines modified
148 (see·<a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html"><code·class="inline">erts:erl(1)</code></a>).</p><p>The·value·of·a·configuration·parameter·is·retrieved·by·calling148 (see·<a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html"><code·class="inline">erts:erl(1)</code></a>).</p><p>The·value·of·a·configuration·parameter·is·retrieved·by·calling
149 <code·class="inline">application:get_env/1,2</code>.</p><h2·id="file-syntax"·class="section-heading">149 <code·class="inline">application:get_env/1,2</code>.</p><h2·id="file-syntax"·class="section-heading">
150 ··<a·href="#file-syntax"·class="hover-link">150 ··<a·href="#file-syntax"·class="hover-link">
151 ····<i·class="ri-link-m"·aria-hidden="true"></i>151 ····<i·class="ri-link-m"·aria-hidden="true"></i>
152 ··</a>152 ··</a>
153 ··<span·class="text">File·Syntax</span>153 ··<span·class="text">File·Syntax</span>
154 </h2>154 </h2>
155 <p>The·configuration·file·is·to·be·called·<code·class="inline">Name.config</code>,·where·<code·class="inline">Name</code>·is·any·name.</p><p>File·<code·class="inline">.config</code>·contains·a·single·Erlang·term·and·has·the·following·syntax:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3206516711-1">[</span><span·class="p"·data-group-id="3206516711-2">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3206516711-3">[</span><span·class="p"·data-group-id="3206516711-4">[·...·truncated·by·diffoscope;·len:·379,·SHA:·2cbc6e391f493a9aba5f72eb9c7e1eafd5e9828d76023ee9a617118360a2c54a·...·]-2">}</span><span·class="p">,</span><span·class="w">155 <p>The·configuration·file·is·to·be·called·<code·class="inline">Name.config</code>,·where·<code·class="inline">Name</code>·is·any·name.</p><p>File·<code·class="inline">.config</code>·contains·a·single·Erlang·term·and·has·the·following·syntax:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8271477597-1">[</span><span·class="p"·data-group-id="8271477597-2">{</span><span·class="n">Application1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8271477597-3">[</span><span·class="p"·data-group-id="8271477597-4">[·...·truncated·by·diffoscope;·len:·379,·SHA:·f356dd6f887480405124d0f80f346f6e15e5f1c9b1b50b1b58dfb63dd2996e9f·...·]-2">}</span><span·class="p">,</span><span·class="w">
156 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">156 ·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
157 ·</span><span·class="p"·data-group-id="3206516711-5">{</span><span·class="n">ApplicationN</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3206516711-6">[</span><span·class="p"·data-group-id="3206516711-7">{</span><span·class="n">ParN1</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·379,·SHA:·aefed161fc9af642f7c3740ac92b084a88184b794fccdf6dd48a9f57325a5725·...·]-1">]</span><span·class="p">.</span></code></pre><ul><li><p><strong><code·class="inline">Application·=·atom()</code></strong>·-·Application·name.</p></li><li><p><strong><code·class="inline">Par·=·atom()</code></strong>·-·Name·of·a·configuration·parameter.</p></li><li><p><strong><code·class="inline">Val·=·term()</code></strong>·-·Value·of·a·configuration·parameter.</p></li></ul><h2·id="sys-config"·class="section-heading">157 ·</span><span·class="p"·data-group-id="8271477597-5">{</span><span·class="n">ApplicationN</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8271477597-6">[</span><span·class="p"·data-group-id="8271477597-7">{</span><span·class="n">ParN1</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·379,·SHA:·10bae9e21cdfde60f59d7cdd203f293b697dfb754e59cb11880d02ad6e4e16a8·...·]-1">]</span><span·class="p">.</span></code></pre><ul><li><p><strong><code·class="inline">Application·=·atom()</code></strong>·-·Application·name.</p></li><li><p><strong><code·class="inline">Par·=·atom()</code></strong>·-·Name·of·a·configuration·parameter.</p></li><li><p><strong><code·class="inline">Val·=·term()</code></strong>·-·Value·of·a·configuration·parameter.</p></li></ul><h2·id="sys-config"·class="section-heading">
158 ··<a·href="#sys-config"·class="hover-link">158 ··<a·href="#sys-config"·class="hover-link">
159 ····<i·class="ri-link-m"·aria-hidden="true"></i>159 ····<i·class="ri-link-m"·aria-hidden="true"></i>
160 ··</a>160 ··</a>
161 ··<span·class="text">sys.config</span>161 ··<span·class="text">sys.config</span>
162 </h2>162 </h2>
163 <p>When·starting·Erlang·in·embedded·mode,·it·is·assumed·that·exactly·one·system163 <p>When·starting·Erlang·in·embedded·mode,·it·is·assumed·that·exactly·one·system
164 configuration·file·is·used,·named·<code·class="inline">sys.config</code>.·This·file·is·to·be·located·in164 configuration·file·is·used,·named·<code·class="inline">sys.config</code>.·This·file·is·to·be·located·in
Offset 253, 15 lines modifiedOffset 253, 15 lines modified
253 ······<p·class="built-using">253 ······<p·class="built-using">
254 ········Built·using254 ········Built·using
255 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the255 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
256 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>256 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
257 ······</p>257 ······</p>
258 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>258 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
259 ····</footer>259 ····</footer>
260 ··</div>260 ··</div>
261 </main>261 </main>
262 </div>262 </div>
263 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>263 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
264 <script>264 <script>
265 ··document.addEventListener("DOMContentLoaded",·function·()·{265 ··document.addEventListener("DOMContentLoaded",·function·()·{
669 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/disk_log.html
    
Offset 3076, 15 lines modifiedOffset 3076, 15 lines modified
3076 ······<p·class="built-using">3076 ······<p·class="built-using">
3077 ········Built·using3077 ········Built·using
3078 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3078 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3079 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3079 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3080 ······</p>3080 ······</p>
3081 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3081 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3082 ····</footer>3082 ····</footer>
3083 ··</div>3083 ··</div>
3084 </main>3084 </main>
3085 </div>3085 </div>
3086 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3086 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3087 <script>3087 <script>
3088 ··document.addEventListener("DOMContentLoaded",·function·()·{3088 ··document.addEventListener("DOMContentLoaded",·function·()·{
731 B
html2text {}
Max HTML report size reached
14.2 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/eep48_chapter.html
    
Offset 150, 28 lines modifiedOffset 150, 28 lines modified
150 ····<i·class="ri-link-m"·aria-hidden="true"></i>150 ····<i·class="ri-link-m"·aria-hidden="true"></i>
151 ··</a>151 ··</a>
152 ··<span·class="text">The·&quot;Docs&quot;·format</span>152 ··<span·class="text">The·&quot;Docs&quot;·format</span>
153 </h2>153 </h2>
154 <p>In·both·storages,·the·documentation·is·written·in·the·exactly·same·format:·an154 <p>In·both·storages,·the·documentation·is·written·in·the·exactly·same·format:·an
155 Erlang·term·serialized·to·binary·via155 Erlang·term·serialized·to·binary·via
156 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#term_to_binary/1"><code·class="inline">term_to_binary/1</code></a>.·The·term·can·be·optionally156 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#term_to_binary/1"><code·class="inline">term_to_binary/1</code></a>.·The·term·can·be·optionally
157 compressed·when·serialized.·It·must·follow·the·type·specification·below:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5827829568-1">{</span><span·class="ss">docs_v1</span><span·class="p">,</span><span·class="w">157 compressed·when·serialized.·It·must·follow·the·type·specification·below:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0632768143-1">{</span><span·class="ss">docs_v1</span><span·class="p">,</span><span·class="w">
158 ·</span><span·class="n">Anno</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nc">erl_anno</span><span·class="p">:</span><span·class="nf">anno</span><span·class="p"·data-group-id="5827829568-2">(</span><span·class="p"·data-group-id="5827829568-2">)</span><span·class="p">,</span><span·class="w">158 ·</span><span·class="n">Anno</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nc">erl_anno</span><span·class="p">:</span><span·class="nf">anno</span><span·class="p"·data-group-id="0632768143-2">(</span><span·class="p"·data-group-id="0632768143-2">)</span><span·class="p">,</span><span·class="w">
159 ·</span><span·class="n">BeamLanguage</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="5827829568-3">(</span><span·class="p"·data-group-id="5827829568-3">)</span><span·class="p">,</span><span·class="w">159 ·</span><span·class="n">BeamLanguage</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="0632768143-3">(</span><span·class="p"·data-group-id="0632768143-3">)</span><span·class="p">,</span><span·class="w">
160 ·</span><span·class="n">Format</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="5827829568-4">(</span><span·class="p"·data-group-id="5827829568-4">)</span><span·class="p">,</span><span·class="w">160 ·</span><span·class="n">Format</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="0632768143-4">(</span><span·class="p"·data-group-id="0632768143-4">)</span><span·class="p">,</span><span·class="w">
161 ·</span><span·class="n">ModuleDoc</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="5827829568-5">#{</span><span·class="n">DocLanguage</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">DocValue</span><span·class="p"·data-group-id="5827829568-5">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">none</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">hidden</span><span·class="p">,</span><span·class="w">161 ·</span><span·class="n">ModuleDoc</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0632768143-5">#{</span><span·class="n">DocLanguage</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">DocValue</span><span·class="p"·data-group-id="0632768143-5">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">none</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">hidden</span><span·class="p">,</span><span·class="w">
162 ·</span><span·class="n">Metadata</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">map</span><span·class="p"·data-group-id="5827829568-6">(</span><span·class="p"·data-group-id="5827829568-6">)</span><span·class="p">,</span><span·class="w">162 ·</span><span·class="n">Metadata</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">map</span><span·class="p"·data-group-id="0632768143-6">(</span><span·class="p"·data-group-id="0632768143-6">)</span><span·class="p">,</span><span·class="w">
163 ·</span><span·class="n">Docs</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">163 ·</span><span·class="n">Docs</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">
164 ···</span><span·class="p"·data-group-id="5827829568-7">[</span><span·class="p"·data-group-id="5827829568-8">{</span><span·class="p"·data-group-id="5827829568-9">{</span><span·class="n">Kind</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·91,·SHA:·e040427f35d08f0c51295a330c59e6ca025b244ab8731cd73a423a7e22ee6312·...·]-9">}</span><span·class="p">,</span><span·class="w">164 ···</span><span·class="p"·data-group-id="0632768143-7">[</span><span·class="p"·data-group-id="0632768143-8">{</span><span·class="p"·data-group-id="0632768143-9">{</span><span·class="n">Kind</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·91,·SHA:·e76f8f82e980544fa5f4ff176f90c16ab4b16fac5c096803653632707d957f29·...·]-9">}</span><span·class="p">,</span><span·class="w">
165 ·····</span><span·class="n">Anno</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nc">erl_anno</span><span·class="p">:</span><span·class="nf">anno</span><span·class="p"·data-group-id="5827829568-10">(</span><span·class="p"·data-group-id="5827829568-10">)</span><span·class="p">,</span><span·class="w">165 ·····</span><span·class="n">Anno</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nc">erl_anno</span><span·class="p">:</span><span·class="nf">anno</span><span·class="p"·data-group-id="0632768143-10">(</span><span·class="p"·data-group-id="0632768143-10">)</span><span·class="p">,</span><span·class="w">
166 ·····</span><span·class="n">Signature</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="5827829568-11">[</span><span·class="nf">binary</span><span·class="p"·data-group-id="5827829568-12">(</span><span·class="p"·data-group-id="5827829568-12">)</span><span·class="p"·data-group-id="5827829568-11">]</span><span·class="p">,</span><span·class="w">166 ·····</span><span·class="n">Signature</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0632768143-11">[</span><span·class="nf">binary</span><span·class="p"·data-group-id="0632768143-12">(</span><span·class="p"·data-group-id="0632768143-12">)</span><span·class="p"·data-group-id="0632768143-11">]</span><span·class="p">,</span><span·class="w">
167 ·····</span><span·class="n">Doc</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="5827829568-13">#{</span><span·class="n">DocLanguage</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">DocValue</span><span·class="p"·data-group-id="5827829568-13">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">none</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">hidden</span><span·class="p">,</span><span·class="w">167 ·····</span><span·class="n">Doc</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0632768143-13">#{</span><span·class="n">DocLanguage</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">DocValue</span><span·class="p"·data-group-id="0632768143-13">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">none</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">hidden</span><span·class="p">,</span><span·class="w">
168 ·····</span><span·class="n">Metadata</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">map</span><span·class="p"·data-group-id="5827829568-14">(</span><span·class="p"·data-group-id="5827829568-14">)</span><span·class="w">168 ·····</span><span·class="n">Metadata</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">map</span><span·class="p"·data-group-id="0632768143-14">(</span><span·class="p"·data-group-id="0632768143-14">)</span><span·class="w">
169 ····</span><span·class="p"·data-group-id="5827829568-8">}</span><span·class="p"·data-group-id="5827829568-7">]</span><span·class="p"·data-group-id="5827829568-1">}</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">DocLanguage</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·202,·SHA:·e3cca6f7f293d6ae418d8eb9c1ed269df829de6445c378c210f4a4dc139fb5e4·...·]-15">)</span><span·class="p">,</span><span·class="w">169 ····</span><span·class="p"·data-group-id="0632768143-8">}</span><span·class="p"·data-group-id="0632768143-7">]</span><span·class="p"·data-group-id="0632768143-1">}</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">DocLanguage</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·202,·SHA:·a0ecbeaae8b1353698b761ce4ca171f0bc551e13c34b62960c0616acb2598ac0·...·]-15">)</span><span·class="p">,</span><span·class="w">
170 ·············</span><span·class="n">DocValue</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="5827829568-16">(</span><span·class="p"·data-group-id="5827829568-16">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="5827829568-17">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·c69425cc040eaa89793e539cf84685b87dcbedd0ea7685197391eb440414a487·...·]-17">)</span></code></pre><p>where·in·the·root·tuple·we·have:</p><ul><li><p><strong><code·class="inline">Anno</code></strong>·-·annotation·(line,·column,·file)·of·the·definition·itself·(see170 ·············</span><span·class="n">DocValue</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="0632768143-16">(</span><span·class="p"·data-group-id="0632768143-16">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="0632768143-17">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·05881fcc550e2166ca2a383a152c54dc6a767e23c89d66956d103826235f4382·...·]-17">)</span></code></pre><p>where·in·the·root·tuple·we·have:</p><ul><li><p><strong><code·class="inline">Anno</code></strong>·-·annotation·(line,·column,·file)·of·the·definition·itself·(see
171 <a·href="../../../../lib/stdlib-6.0.1/doc/html/erl_anno.html"><code·class="inline">erl_anno</code></a>)</p></li><li><p><strong><code·class="inline">BeamLanguage</code></strong>·-·an·atom·representing·the·language,·for·example:·<code·class="inline">erlang</code>,171 <a·href="../../../../lib/stdlib-6.0.1/doc/html/erl_anno.html"><code·class="inline">erl_anno</code></a>)</p></li><li><p><strong><code·class="inline">BeamLanguage</code></strong>·-·an·atom·representing·the·language,·for·example:·<code·class="inline">erlang</code>,
172 <code·class="inline">elixir</code>,·<code·class="inline">lfe</code>,·<code·class="inline">alpaca</code>,·and·so·on</p></li><li><p><strong><code·class="inline">Format</code></strong>·-·the·mime·type·of·the·documentation,·such·as·<code·class="inline">&lt;&lt;&quot;text/markdown&quot;&gt;&gt;</code>172 <code·class="inline">elixir</code>,·<code·class="inline">lfe</code>,·<code·class="inline">alpaca</code>,·and·so·on</p></li><li><p><strong><code·class="inline">Format</code></strong>·-·the·mime·type·of·the·documentation,·such·as·<code·class="inline">&lt;&lt;&quot;text/markdown&quot;&gt;&gt;</code>
173 or·<code·class="inline">&lt;&lt;&quot;application/erlang+html&quot;&gt;&gt;</code>.·For·details·of·the·format·used·by·Erlang173 or·<code·class="inline">&lt;&lt;&quot;application/erlang+html&quot;&gt;&gt;</code>.·For·details·of·the·format·used·by·Erlang
174 see·the·<a·href="../../../../lib/edoc-1.3.1/doc/html/doc_storage.html"><code·class="inline">EEP-48·Chapter</code></a>·in·EDoc's·User's174 see·the·<a·href="../../../../lib/edoc-1.3.1/doc/html/doc_storage.html"><code·class="inline">EEP-48·Chapter</code></a>·in·EDoc's·User's
175 Guide.</p></li><li><p><strong><code·class="inline">ModuleDoc</code></strong>·-·a·map·with·the·documentation·language·as·key,·such·as175 Guide.</p></li><li><p><strong><code·class="inline">ModuleDoc</code></strong>·-·a·map·with·the·documentation·language·as·key,·such·as
176 <code·class="inline">&lt;&lt;&quot;en&quot;&gt;&gt;</code>·or·<code·class="inline">&lt;&lt;&quot;pt_BR&quot;&gt;&gt;</code>,·and·the·documentation·as·a·binary·value.·It·can176 <code·class="inline">&lt;&lt;&quot;en&quot;&gt;&gt;</code>·or·<code·class="inline">&lt;&lt;&quot;pt_BR&quot;&gt;&gt;</code>,·and·the·documentation·as·a·binary·value.·It·can
177 be·atom·<code·class="inline">none</code>·if·no·documentation·exists·or·the·atom·<code·class="inline">hidden</code>·if177 be·atom·<code·class="inline">none</code>·if·no·documentation·exists·or·the·atom·<code·class="inline">hidden</code>·if
Offset 258, 15 lines modifiedOffset 258, 15 lines modified
258 ······<p·class="built-using">258 ······<p·class="built-using">
259 ········Built·using259 ········Built·using
260 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the260 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
261 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>261 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
262 ······</p>262 ······</p>
263 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>263 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
264 ····</footer>264 ····</footer>
265 ··</div>265 ··</div>
266 </main>266 </main>
267 </div>267 </div>
268 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>268 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
269 <script>269 <script>
270 ··document.addEventListener("DOMContentLoaded",·function·()·{270 ··document.addEventListener("DOMContentLoaded",·function·()·{
806 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/erl_boot_server.html
    
Offset 409, 15 lines modifiedOffset 409, 15 lines modified
409 ······<p·class="built-using">409 ······<p·class="built-using">
410 ········Built·using410 ········Built·using
411 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the411 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
412 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>412 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
413 ······</p>413 ······</p>
414 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>414 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
415 ····</footer>415 ····</footer>
416 ··</div>416 ··</div>
417 </main>417 </main>
418 </div>418 </div>
419 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>419 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
420 <script>420 <script>
421 ··document.addEventListener("DOMContentLoaded",·function·()·{421 ··document.addEventListener("DOMContentLoaded",·function·()·{
648 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/erl_ddll.html
    
Offset 1345, 15 lines modifiedOffset 1345, 15 lines modified
1345 ······<p·class="built-using">1345 ······<p·class="built-using">
1346 ········Built·using1346 ········Built·using
1347 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1347 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1348 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1348 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1349 ······</p>1349 ······</p>
1350 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1350 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1351 ····</footer>1351 ····</footer>
1352 ··</div>1352 ··</div>
1353 </main>1353 </main>
1354 </div>1354 </div>
1355 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1355 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1356 <script>1356 <script>
1357 ··document.addEventListener("DOMContentLoaded",·function·()·{1357 ··document.addEventListener("DOMContentLoaded",·function·()·{
682 B
html2text {}
Max HTML report size reached
3.9 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/erl_epmd.html
    
Offset 357, 16 lines modifiedOffset 357, 16 lines modified
357 ···················Reason·::·address·|·<a·href="file.html#t:posix/0">file:posix</a>().</pre>357 ···················Reason·::·address·|·<a·href="file.html#t:posix/0">file:posix</a>().</pre>
  
358 ······</div>358 ······</div>
  
359 <p>Called·by·<a·href="net_adm.html"><code·class="inline">net_adm:names/0</code></a>.·<code·class="inline">Host</code>·defaults·to·the·localhost.359 <p>Called·by·<a·href="net_adm.html"><code·class="inline">net_adm:names/0</code></a>.·<code·class="inline">Host</code>·defaults·to·the·localhost.
360 Returns·the·names·and·associated·port·numbers·of·the·Erlang·nodes·that·<code·class="inline">epmd</code>360 Returns·the·names·and·associated·port·numbers·of·the·Erlang·nodes·that·<code·class="inline">epmd</code>
361 registered·at·the·specified·host.·Returns·<code·class="inline">{error,·address}</code>·if·<code·class="inline">epmd</code>·is·not361 registered·at·the·specified·host.·Returns·<code·class="inline">{error,·address}</code>·if·<code·class="inline">epmd</code>·is·not
362 operational.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(arne@dunn)1&gt;·</span><span·class="nc">erl_epmd</span><span·class="p">:</span><span·class="nf">names</span><span·class="p"·data-group-id="2810143944-1">(</span><span·class="ss">localhost</span><span·class="p"·data-group-id="2810143944-1">)</span><span·class="p">.</span><span·class="w">362 operational.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(arne@dunn)1&gt;·</span><span·class="nc">erl_epmd</span><span·class="p">:</span><span·class="nf">names</span><span·class="p"·data-group-id="6342503196-1">(</span><span·class="ss">localhost</span><span·class="p"·data-group-id="6342503196-1">)</span><span·class="p">.</span><span·class="w">
363 </span><span·class="p"·data-group-id="2810143944-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2810143944-3">[</span><span·class="p"·data-group-id="2810143944-4">{</span><span·class="s">&quot;arne&quot;</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·161,·SHA:·38af72ecc63bc5496fc6dfe3a5484e128416f7b8cc9c42c0bbde70216aedd741·...·]-2">}</span></code></pre>363 </span><span·class="p"·data-group-id="6342503196-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6342503196-3">[</span><span·class="p"·data-group-id="6342503196-4">{</span><span·class="s">&quot;arne&quot;</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·161,·SHA:·364629d46ac645ba36db5bb85bd10f04eb90eb80380704fc287088ba2f3fa708·...·]-2">}</span></code></pre>
364 ··</section>364 ··</section>
365 </section>365 </section>
366 <section·class="detail"·id="port_please/2">366 <section·class="detail"·id="port_please/2">
  
367 ··<div·class="detail-header">367 ··<div·class="detail-header">
368 ····<a·href="#port_please/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">368 ····<a·href="#port_please/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
369 ······<i·class="ri-link-m"·aria-hidden="true"></i>369 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 566, 15 lines modifiedOffset 566, 15 lines modified
566 ······<p·class="built-using">566 ······<p·class="built-using">
567 ········Built·using567 ········Built·using
568 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the568 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
569 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>569 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
570 ······</p>570 ······</p>
571 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>571 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
572 ····</footer>572 ····</footer>
573 ··</div>573 ··</div>
574 </main>574 </main>
575 </div>575 </div>
576 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>576 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
577 <script>577 <script>
578 ··document.addEventListener("DOMContentLoaded",·function·()·{578 ··document.addEventListener("DOMContentLoaded",·function·()·{
595 B
html2text {}
Max HTML report size reached
19.5 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/erpc.html
    
Offset 1217, 28 lines modifiedOffset 1217, 28 lines modified
1217 at·the·client·side.</li></ul><p>The·call·<code·class="inline">erpc:multicall(Nodes,·Module,·Function,·Args)</code>·is·equivalent·to·the1217 at·the·client·side.</li></ul><p>The·call·<code·class="inline">erpc:multicall(Nodes,·Module,·Function,·Args)</code>·is·equivalent·to·the
1218 call·<code·class="inline">erpc:multicall(Nodes,·Module,·Function,·Args,·infinity)</code>.·These·calls·are1218 call·<code·class="inline">erpc:multicall(Nodes,·Module,·Function,·Args,·infinity)</code>.·These·calls·are
1219 also·equivalent·to·calling·<code·class="inline">my_multicall(Nodes,·Module,·Function,·Args)</code>·below1219 also·equivalent·to·calling·<code·class="inline">my_multicall(Nodes,·Module,·Function,·Args)</code>·below
1220 if·one·disregard·performance·and·failure·behavior.·<code·class="inline">multicall()</code>·can·utilize·a1220 if·one·disregard·performance·and·failure·behavior.·<code·class="inline">multicall()</code>·can·utilize·a
1221 selective·receive·optimization·which·removes·the·need·to·scan·the·message·queue1221 selective·receive·optimization·which·removes·the·need·to·scan·the·message·queue
1222 from·the·beginning·in·order·to·find·a·matching·message.·The1222 from·the·beginning·in·order·to·find·a·matching·message.·The
1223 <code·class="inline">send_request()/receive_response()</code>·combination·can,·however,·not·utilize·this1223 <code·class="inline">send_request()/receive_response()</code>·combination·can,·however,·not·utilize·this
1224 optimization.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_multicall</span><span·class="p"·data-group-id="5088542263-1">(</span><span·class="n">Nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·66,·SHA:·ae6c4f68e812c9a6d3a013bc6930256b97be008700b5615aa45490e952b1471b·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1224 optimization.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_multicall</span><span·class="p"·data-group-id="1285619415-1">(</span><span·class="n">Nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·66,·SHA:·1f8faba1c6bb2975ebb947d3972646c3a6a841b9385561fec9aee6b437819b56·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1225 ··</span><span·class="n">ReqIds</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="5088542263-2">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="5088542263-3">(</span><span·class="n">Node</span><span·class="p"·data-group-id="5088542263-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1225 ··</span><span·class="n">ReqIds</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="1285619415-2">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="1285619415-3">(</span><span·class="n">Node</span><span·class="p"·data-group-id="1285619415-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1226 ·······················</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">send_request</span><span·class="p"·data-group-id="5088542263-4">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·65,·SHA:·b0c51fd4f79ed029752a110d67bcd54f406ba9d1f589b4e0ff532253c72eb840·...·]-4">)</span><span·class="w">1226 ·······················</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">send_request</span><span·class="p"·data-group-id="1285619415-4">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·65,·SHA:·9866c6c0dfd8d52489fa6d94c99133b78dbd5d67277fa19896353eb2faecc06e·...·]-4">)</span><span·class="w">
1227 ·····················</span><span·class="k">end</span><span·class="p">,</span><span·class="w">1227 ·····················</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
1228 ·····················</span><span·class="n">Nodes</span><span·class="p"·data-group-id="5088542263-2">)</span><span·class="p">,</span><span·class="w">1228 ·····················</span><span·class="n">Nodes</span><span·class="p"·data-group-id="1285619415-2">)</span><span·class="p">,</span><span·class="w">
1229 ··</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="5088542263-5">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="5088542263-6">(</span><span·class="n">ReqId</span><span·class="p"·data-group-id="5088542263-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1229 ··</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="1285619415-5">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="1285619415-6">(</span><span·class="n">ReqId</span><span·class="p"·data-group-id="1285619415-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1230 ··············</span><span·class="k">try</span><span·class="w">1230 ··············</span><span·class="k">try</span><span·class="w">
1231 ················</span><span·class="p"·data-group-id="5088542263-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">receive_response</span><span·class="p"·data-group-id="5088542263-8">(</span><span·class="n"[·...·truncated·by·diffoscope;·len:·187,·SHA:·97849f6d4ce0bb9d1a14972ce3ebc62990fdeb1049810518ca06a68d9bd0dc43·...·]-7">}</span><span·class="w">1231 ················</span><span·class="p"·data-group-id="1285619415-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">receive_response</span><span·class="p"·data-group-id="1285619415-8">(</span><span·class="n"[·...·truncated·by·diffoscope;·len:·187,·SHA:·f64336450c94083b223e4b77d0ae07cab917e4c57bb2a8e238bb503f49f58026·...·]-7">}</span><span·class="w">
1232 ··············</span><span·class="k">catch</span><span·class="w">1232 ··············</span><span·class="k">catch</span><span·class="w">
1233 ················</span><span·class="n">Class</span><span·class="p">:</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1233 ················</span><span·class="n">Class</span><span·class="p">:</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1234 ··················</span><span·class="p"·data-group-id="5088542263-9">{</span><span·class="n">Class</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="5088542263-9">}</span><span·class="w">1234 ··················</span><span·class="p"·data-group-id="1285619415-9">{</span><span·class="n">Class</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="1285619415-9">}</span><span·class="w">
1235 ··············</span><span·class="k">end</span><span·class="w">1235 ··············</span><span·class="k">end</span><span·class="w">
1236 ············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">1236 ············</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
1237 ············</span><span·class="n">ReqIds</span><span·class="p"·data-group-id="5088542263-5">)</span><span·class="p">.</span></code></pre><p>If·an·<code·class="inline">erpc</code>·operation·fails,·but·it·is·unknown·if·the·function·is/will·be1237 ············</span><span·class="n">ReqIds</span><span·class="p"·data-group-id="1285619415-5">)</span><span·class="p">.</span></code></pre><p>If·an·<code·class="inline">erpc</code>·operation·fails,·but·it·is·unknown·if·the·function·is/will·be
1238 applied·(that·is,·a·timeout,·connection·loss,·or·an·improper·<code·class="inline">Nodes</code>·list),·the1238 applied·(that·is,·a·timeout,·connection·loss,·or·an·improper·<code·class="inline">Nodes</code>·list),·the
1239 caller·will·not·receive·any·further·information·about·the·result·if/when·the1239 caller·will·not·receive·any·further·information·about·the·result·if/when·the
1240 applied·function·completes.·If·the·applied·function·communicates·with·the1240 applied·function·completes.·If·the·applied·function·communicates·with·the
1241 calling·process,·such·communication·may,·of·course,·reach·the·calling·process.</p><blockquote><h4·class="info">Note</h4><p>You·cannot·make·<em>any</em>·assumptions·about·the·process·that·will·perform·the1241 calling·process,·such·communication·may,·of·course,·reach·the·calling·process.</p><blockquote><h4·class="info">Note</h4><p>You·cannot·make·<em>any</em>·assumptions·about·the·process·that·will·perform·the
1242 <code·class="inline">apply()</code>.·It·may·be·the·calling·process·itself,·a·server,·or·a·freshly1242 <code·class="inline">apply()</code>.·It·may·be·the·calling·process·itself,·a·server,·or·a·freshly
1243 spawned·process.</p></blockquote>1243 spawned·process.</p></blockquote>
1244 ··</section>1244 ··</section>
Offset 1388, 17 lines modifiedOffset 1388, 17 lines modified
1388 exception·if/when·an·invalid·<code·class="inline">RequestId</code>·is·detected·or·if·an·invalid·<code·class="inline">Timeout</code>1388 exception·if/when·an·invalid·<code·class="inline">RequestId</code>·is·detected·or·if·an·invalid·<code·class="inline">Timeout</code>
1389 is·passed.</p><p>A·call·to·the·function·<code·class="inline">my_call(Node,·Module,·Function,·Args,·Timeout)</code>·below·is1389 is·passed.</p><p>A·call·to·the·function·<code·class="inline">my_call(Node,·Module,·Function,·Args,·Timeout)</code>·below·is
1390 equivalent·to·the·call1390 equivalent·to·the·call
1391 <a·href="#call/5"><code·class="inline">erpc:call(Node,·Module,·Function,·Args,·Timeout)</code></a>·if·one·disregards1391 <a·href="#call/5"><code·class="inline">erpc:call(Node,·Module,·Function,·Args,·Timeout)</code></a>·if·one·disregards
1392 performance.·<code·class="inline">call()</code>·can·utilize·a·selective·receive·optimization·which·removes1392 performance.·<code·class="inline">call()</code>·can·utilize·a·selective·receive·optimization·which·removes
1393 the·need·to·scan·the·message·queue·from·the·beginning·in·order·to·find·a1393 the·need·to·scan·the·message·queue·from·the·beginning·in·order·to·find·a
1394 matching·message.·The·<code·class="inline">send_request()/receive_response()</code>·combination·can,1394 matching·message.·The·<code·class="inline">send_request()/receive_response()</code>·combination·can,
1395 however,·not·utilize·this·optimization.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_call</span><span·class="p"·data-group-id="3364845999-1">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·143,·SHA:·a80ee41cda43934c9a3190a15356f3f1c8b3a2ddb2b07ee38fcb5796650de31d·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1395 however,·not·utilize·this·optimization.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_call</span><span·class="p"·data-group-id="7479320854-1">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·143,·SHA:·381afd374b064b13c07372d7c392f2042140051f8be9f07173099443dc260fd3·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1396 ··</span><span·class="n">RequestId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">send_request</span><span·class="p"·data-group-id="3364845999-2">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·65,·SHA:·58c5fa76da5bec67bf14894959f3e91b4d2fdc832046f85ae4970625682a34e7·...·]-2">)</span><span·class="p">,</span><span·class="w">1396 ··</span><span·class="n">RequestId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">send_request</span><span·class="p"·data-group-id="7479320854-2">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·65,·SHA:·3c89e56e56b2123ddb929d392440b6ac5896f5e0af9d85f16f2b1b8e78879c65·...·]-2">)</span><span·class="p">,</span><span·class="w">
1397 ··</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">receive_response</span><span·class="p"·data-group-id="3364845999-3">(</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Timeout</span><span·class="p"·data-group-id="3364845999-3">)</span><span·class="p">.</span></code></pre><p>If·the·<code·class="inline">erpc</code>·operation·fails,·but·it·is·unknown·if·the·function·is/will·be1397 ··</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">receive_response</span><span·class="p"·data-group-id="7479320854-3">(</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Timeout</span><span·class="p"·data-group-id="7479320854-3">)</span><span·class="p">.</span></code></pre><p>If·the·<code·class="inline">erpc</code>·operation·fails,·but·it·is·unknown·if·the·function·is/will·be
1398 applied·(that·is,·a·timeout,·or·a·connection·loss),·the·caller·will·not·receive1398 applied·(that·is,·a·timeout,·or·a·connection·loss),·the·caller·will·not·receive
1399 any·further·information·about·the·result·if/when·the·applied·function·completes.1399 any·further·information·about·the·result·if/when·the·applied·function·completes.
1400 If·the·applied·function·explicitly·communicates·with·the·calling·process,·such1400 If·the·applied·function·explicitly·communicates·with·the·calling·process,·such
1401 communication·may,·of·course,·reach·the·calling·process.</p>1401 communication·may,·of·course,·reach·the·calling·process.</p>
1402 ··</section>1402 ··</section>
1403 </section>1403 </section>
1404 <section·class="detail"·id="receive_response/3">1404 <section·class="detail"·id="receive_response/3">
Offset 1693, 17 lines modifiedOffset 1693, 17 lines modified
1693 about·to·save·the·request·identifier·in·a·request·identifier·collection,·you·may1693 about·to·save·the·request·identifier·in·a·request·identifier·collection,·you·may
1694 want·to·consider·using·<a·href="#send_request/6"><code·class="inline">send_request/6</code></a>·instead.</p><p>A·call·to·the·function·<code·class="inline">my_call(Node,·Module,·Function,·Args,·Timeout)</code>·below·is1694 want·to·consider·using·<a·href="#send_request/6"><code·class="inline">send_request/6</code></a>·instead.</p><p>A·call·to·the·function·<code·class="inline">my_call(Node,·Module,·Function,·Args,·Timeout)</code>·below·is
1695 equivalent·to·the·call1695 equivalent·to·the·call
1696 <a·href="#call/5"><code·class="inline">erpc:call(Node,·Module,·Function,·Args,·Timeout)</code></a>·if·one·disregards1696 <a·href="#call/5"><code·class="inline">erpc:call(Node,·Module,·Function,·Args,·Timeout)</code></a>·if·one·disregards
1697 performance.·<code·class="inline">call()</code>·can·utilize·a·selective·receive·optimization·which·removes1697 performance.·<code·class="inline">call()</code>·can·utilize·a·selective·receive·optimization·which·removes
1698 the·need·to·scan·the·message·queue·from·the·beginning·in·order·to·find·a1698 the·need·to·scan·the·message·queue·from·the·beginning·in·order·to·find·a
1699 matching·message.·The·<code·class="inline">send_request()/receive_response()</code>·combination·can,1699 matching·message.·The·<code·class="inline">send_request()/receive_response()</code>·combination·can,
1700 however,·not·utilize·this·optimization.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_call</span><span·class="p"·data-group-id="3788555019-1">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·143,·SHA:·a54867747345d7b7f9610873762e4a4935f2ec40d4ea0d14a9566d644f151c07·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1700 however,·not·utilize·this·optimization.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_call</span><span·class="p"·data-group-id="8881692548-1">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·143,·SHA:·1500b42ef9d00f38e77fd0335043e5333c86c6f56d2822eccba10cbaeed4340f·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1701 ··</span><span·class="n">RequestId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">send_request</span><span·class="p"·data-group-id="3788555019-2">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·65,·SHA:·33e0f4c935747eea2caa4a754692ad03d1cecd1c5e7de47e47bf3f75e585bded·...·]-2">)</span><span·class="p">,</span><span·class="w">1701 ··</span><span·class="n">RequestId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">send_request</span><span·class="p"·data-group-id="8881692548-2">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·65,·SHA:·3ead5132c38a62bea6d1d5d9b5de80696e5b0448fe428b9be60128d7253e3661·...·]-2">)</span><span·class="p">,</span><span·class="w">
1702 ··</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">receive_response</span><span·class="p"·data-group-id="3788555019-3">(</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Timeout</span><span·class="p"·data-group-id="3788555019-3">)</span><span·class="p">.</span></code></pre><p>Fails·with·an·<code·class="inline">{erpc,·badarg}</code>·<code·class="inline">error</code>·exception·if:</p><ul><li><code·class="inline">Node</code>·is·not·an·atom.</li><li><code·class="inline">Module</code>·is·not·an·atom.</li><li><code·class="inline">Function</code>·is·not·an·atom.</li><li><code·class="inline">Args</code>·is·not·a·list.·Note·that·the·list·is·not·verified·to·be·a·proper·list1702 ··</span><span·class="nc">erpc</span><span·class="p">:</span><span·class="nf">receive_response</span><span·class="p"·data-group-id="8881692548-3">(</span><span·class="n">RequestId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Timeout</span><span·class="p"·data-group-id="8881692548-3">)</span><span·class="p">.</span></code></pre><p>Fails·with·an·<code·class="inline">{erpc,·badarg}</code>·<code·class="inline">error</code>·exception·if:</p><ul><li><code·class="inline">Node</code>·is·not·an·atom.</li><li><code·class="inline">Module</code>·is·not·an·atom.</li><li><code·class="inline">Function</code>·is·not·an·atom.</li><li><code·class="inline">Args</code>·is·not·a·list.·Note·that·the·list·is·not·verified·to·be·a·proper·list
1703 at·the·client·side.</li></ul><blockquote><h4·class="info">Note</h4><p>You·cannot·make·<em>any</em>·assumptions·about·the·process·that·will·perform·the1703 at·the·client·side.</li></ul><blockquote><h4·class="info">Note</h4><p>You·cannot·make·<em>any</em>·assumptions·about·the·process·that·will·perform·the
1704 <code·class="inline">apply()</code>.·It·may·be·a·server,·or·a·freshly·spawned·process.</p></blockquote><p>Equivalent·to1704 <code·class="inline">apply()</code>.·It·may·be·a·server,·or·a·freshly·spawned·process.</p></blockquote><p>Equivalent·to
1705 <a·href="#send_request/6"><code·class="inline">erpc:send_request(Node,·erlang,·apply,·[Fun,[]]),·Label,·RequestIdCollection)</code></a>.</p><p>Fails·with·an·<code·class="inline">{erpc,·badarg}</code>·<code·class="inline">error</code>·exception·if:</p><ul><li><code·class="inline">Node</code>·is·not·an·atom.</li><li><code·class="inline">Fun</code>·is·not·a·fun·of·zero·arity.</li><li><code·class="inline">RequestIdCollection</code>·is·detected·not·to·be·request·identifier·collection.</li></ul><blockquote><h4·class="info">Note</h4><p>You·cannot·make·<em>any</em>·assumptions·about·the·process·that·will·perform·the1705 <a·href="#send_request/6"><code·class="inline">erpc:send_request(Node,·erlang,·apply,·[Fun,[]]),·Label,·RequestIdCollection)</code></a>.</p><p>Fails·with·an·<code·class="inline">{erpc,·badarg}</code>·<code·class="inline">error</code>·exception·if:</p><ul><li><code·class="inline">Node</code>·is·not·an·atom.</li><li><code·class="inline">Fun</code>·is·not·a·fun·of·zero·arity.</li><li><code·class="inline">RequestIdCollection</code>·is·detected·not·to·be·request·identifier·collection.</li></ul><blockquote><h4·class="info">Note</h4><p>You·cannot·make·<em>any</em>·assumptions·about·the·process·that·will·perform·the
1706 <code·class="inline">apply()</code>.·It·may·be·a·server,·or·a·freshly·spawned·process.</p></blockquote>1706 <code·class="inline">apply()</code>.·It·may·be·a·server,·or·a·freshly·spawned·process.</p></blockquote>
1707 ··</section>1707 ··</section>
1708 </section>1708 </section>
1709 <section·class="detail"·id="send_request/6">1709 <section·class="detail"·id="send_request/6">
Offset 1933, 15 lines modifiedOffset 1933, 15 lines modified
1933 ······<p·class="built-using">1933 ······<p·class="built-using">
1934 ········Built·using1934 ········Built·using
1935 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1935 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1936 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1936 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1937 ······</p>1937 ······</p>
1938 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1938 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1939 ····</footer>1939 ····</footer>
1940 ··</div>1940 ··</div>
1941 </main>1941 </main>
1942 </div>1942 </div>
1943 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1943 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1944 <script>1944 <script>
1945 ··document.addEventListener("DOMContentLoaded",·function·()·{1945 ··document.addEventListener("DOMContentLoaded",·function·()·{
730 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/error_handler.html
    
Offset 331, 15 lines modifiedOffset 331, 15 lines modified
331 ······<p·class="built-using">331 ······<p·class="built-using">
332 ········Built·using332 ········Built·using
333 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the333 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
334 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>334 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
335 ······</p>335 ······</p>
336 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>336 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
337 ····</footer>337 ····</footer>
338 ··</div>338 ··</div>
339 </main>339 </main>
340 </div>340 </div>
341 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>341 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
342 <script>342 <script>
343 ··document.addEventListener("DOMContentLoaded",·function·()·{343 ··document.addEventListener("DOMContentLoaded",·function·()·{
707 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/error_logger.html
    
Offset 1248, 15 lines modifiedOffset 1248, 15 lines modified
1248 ······<p·class="built-using">1248 ······<p·class="built-using">
1249 ········Built·using1249 ········Built·using
1250 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1250 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1251 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1251 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1252 ······</p>1252 ······</p>
1253 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1253 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1254 ····</footer>1254 ····</footer>
1255 ··</div>1255 ··</div>
1256 </main>1256 </main>
1257 </div>1257 </div>
1258 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1258 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1259 <script>1259 <script>
1260 ··document.addEventListener("DOMContentLoaded",·function·()·{1260 ··document.addEventListener("DOMContentLoaded",·function·()·{
788 B
html2text {}
Max HTML report size reached
31.2 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/file.html
    
Offset 176, 39 lines modifiedOffset 176, 39 lines modified
176 running·its·file·server·as·slave·to·the·file·server·of·another·node,·and·the176 running·its·file·server·as·slave·to·the·file·server·of·another·node,·and·the
177 other·node·runs·on·some·other·host·machine,·they·can·have·different·file177 other·node·runs·on·some·other·host·machine,·they·can·have·different·file
178 systems.·However,·this·is·seldom·a·problem.</p></blockquote><p><a·href="#open/2"><code·class="inline">open/2</code></a>·can·be·given·the·options·<code·class="inline">delayed_write</code>·and·<code·class="inline">read_ahead</code>·to·turn·on178 systems.·However,·this·is·seldom·a·problem.</p></blockquote><p><a·href="#open/2"><code·class="inline">open/2</code></a>·can·be·given·the·options·<code·class="inline">delayed_write</code>·and·<code·class="inline">read_ahead</code>·to·turn·on
179 caching,·which·will·reduce·the·number·of·operating·system·calls·and·greatly179 caching,·which·will·reduce·the·number·of·operating·system·calls·and·greatly
180 improve·performance·for·small·reads·and·writes.·However,·the·overhead·won't180 improve·performance·for·small·reads·and·writes.·However,·the·overhead·won't
181 disappear·completely·and·it's·best·to·keep·the·number·of·file·operations·to·a181 disappear·completely·and·it's·best·to·keep·the·number·of·file·operations·to·a
182 minimum.·As·a·contrived·example,·the·following·function·writes·4MB·in·2.5182 minimum.·As·a·contrived·example,·the·following·function·writes·4MB·in·2.5
183 seconds·when·tested:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="8574373251-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="8574373251-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">183 seconds·when·tested:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="0459550608-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="0459550608-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
184 ····</span><span·class="p"·data-group-id="8574373251-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="8574373251-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·612,·SHA:·60ebb6e293b9c3282353a40a358dca4e34404a4cca705ce1264616b15a90d1ee·...·]-3">)</span><span·class="p">,</span><span·class="w">184 ····</span><span·class="p"·data-group-id="0459550608-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="0459550608-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·612,·SHA:·553e50f8df43372e1a1450d430471af80aea340dbd2ec873fc01d9a941bb0f6f·...·]-3">)</span><span·class="p">,</span><span·class="w">
185 ····</span><span·class="nf">create_file_slow_1</span><span·class="p"·data-group-id="8574373251-5">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="w">·</span><span·class="ow">bsl</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="8574[·...·truncated·by·diffoscope;·len:·6,·SHA:·2977dc41f452f4490af026adc0ceec55fecff4a92b0fb7f675483beab55e0ff2·...·]-5">)</span><span·class="p">,</span><span·class="w">185 ····</span><span·class="nf">create_file_slow_1</span><span·class="p"·data-group-id="0459550608-5">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="w">·</span><span·class="ow">bsl</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="0459[·...·truncated·by·diffoscope;·len:·6,·SHA:·997409ff502146e10f88f61427ee622616ae624d45c83f8a7519abdc69428d93·...·]-5">)</span><span·class="p">,</span><span·class="w">
186 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="8574373251-6">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="8574373251-6">)</span><span·class="p">.</span><span·class="w">186 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="0459550608-6">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="0459550608-6">)</span><span·class="p">.</span><span·class="w">
  
187 </span><span·class="nf">create_file_slow_1</span><span·class="p"·data-group-id="8574373251-7">(</span><span·class="p">_</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="8574373251-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">187 </span><span·class="nf">create_file_slow_1</span><span·class="p"·data-group-id="0459550608-7">(</span><span·class="p">_</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="0459550608-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
188 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">188 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
189 </span><span·class="nf">create_file_slow_1</span><span·class="p"·data-group-id="8574373251-8">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p"·data-group-id="8574373251-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">189 </span><span·class="nf">create_file_slow_1</span><span·class="p"·data-group-id="0459550608-8">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p"·data-group-id="0459550608-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
190 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8574373251-9">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8574373251-9">)</span><span·class="p">,</span><span·class="w">190 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="0459550608-9">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0459550608-9">)</span><span·class="p">,</span><span·class="w">
191 ····</span><span·class="nf">create_file_slow_1</span><span·class="p"·data-group-id="8574373251-10">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="85743732[·...·truncated·by·diffoscope;·len:·2,·SHA:·031b4af5197ec30a926f48cf40e11a7dbc470048a21e4003b7a3c07c5dab1baa·...·]-10">)</span><span·class="p">.</span></code></pre><p>The·following·functionally·equivalent·code·writes·128·bytes·per·call·to191 ····</span><span·class="nf">create_file_slow_1</span><span·class="p"·data-group-id="0459550608-10">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="04595506[·...·truncated·by·diffoscope;·len:·2,·SHA:·323783be9a53a31e158ec9600626a4703e99f4e183bc1acb8772cbdf5c3a1ece·...·]-10">)</span><span·class="p">.</span></code></pre><p>The·following·functionally·equivalent·code·writes·128·bytes·per·call·to
192 <a·href="#write/2"><code·class="inline">write/2</code></a>·and·so·does·the·same·work·in·0.08·seconds,·which·is·roughly·30·times192 <a·href="#write/2"><code·class="inline">write/2</code></a>·and·so·does·the·same·work·in·0.08·seconds,·which·is·roughly·30·times
193 faster:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">create_file</span><span·class="p"·data-group-id="9922779538-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="9922779538-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 faster:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">create_file</span><span·class="p"·data-group-id="6165362512-1">(</span><span·class="n">Name</span><span·class="p"·data-group-id="6165362512-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 ····</span><span·class="p"·data-group-id="9922779538-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="9922779538-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·612,·SHA:·ff72bac7f0548cc128c674a85d6ba4c2f4ad5878689abb30d41b30a33295fa16·...·]-3">)</span><span·class="p">,</span><span·class="w">194 ····</span><span·class="p"·data-group-id="6165362512-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="6165362512-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·612,·SHA:·00b1bad654e112ee13dc64b12ea73e9eabfa137ed3f16faf39f43bb9f5517446·...·]-3">)</span><span·class="p">,</span><span·class="w">
195 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="9922779538-5">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="w">·</span><span·class="ow">bsl</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="9922[·...·truncated·by·diffoscope;·len:·6,·SHA:·24f77d33f0ed48eb84297062239de13aadf450c3276c6979d9031d111d1361af·...·]-5">)</span><span·class="p">,</span><span·class="w">195 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="6165362512-5">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="w">·</span><span·class="ow">bsl</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="6165[·...·truncated·by·diffoscope;·len:·6,·SHA:·af6a0a77f5d6a0a71902f0472a3887437f644d5d11cffff931517f16f788651d·...·]-5">)</span><span·class="p">,</span><span·class="w">
196 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="9922779538-6">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="9922779538-6">)</span><span·class="p">,</span><span·class="w">196 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="6165362512-6">(</span><span·class="n">Fd</span><span·class="p"·data-group-id="6165362512-6">)</span><span·class="p">,</span><span·class="w">
197 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">197 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
198 </span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="9922779538-7">(</span><span·class="p">_</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="9922779538-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">198 </span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="6165362512-7">(</span><span·class="p">_</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="6165362512-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
199 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">199 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
200 </span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="9922779538-8">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p"·data-group-id="9922779538-8">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">128</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">200 </span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="6165362512-8">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p"·data-group-id="6165362512-8">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">128</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
201 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="9922779538-9">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="p"·data-group-id="9922779538-10">(</span><span·class="mi">128</span>[·...·truncated·by·diffoscope;·len:·227,·SHA:·509716a7465682d0d19bcc55f7cc607f5e2db309479c39d29231e42bfa887226·...·]-9">)</span><span·class="p">,</span><span·class="w">201 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="6165362512-9">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="p"·data-group-id="6165362512-10">(</span><span·class="mi">128</span>[·...·truncated·by·diffoscope;·len:·227,·SHA:·e19b5efb56055b6fc965f2854454ca5ebbd8a34842e9349ef2ea8853d5c82221·...·]-9">)</span><span·class="p">,</span><span·class="w">
202 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="9922779538-11">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">128</span><span·class="p"·data-group-id="992277[·...·truncated·by·diffoscope;·len:·4,·SHA:·b5d3d9cfe207daa5ee360723db61688df6c395d52da564132fff885538f00eae·...·]-11">)</span><span·class="p">;</span><span·class="w">202 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="6165362512-11">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">128</span><span·class="p"·data-group-id="616536[·...·truncated·by·diffoscope;·len:·4,·SHA:·25f9b3ab7e7d3634a79eab88d59a0b4592d42384900dfc10ecc481af5b8dfd3d·...·]-11">)</span><span·class="p">;</span><span·class="w">
203 </span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="9922779538-12">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p"·data-group-id="9922779538-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">203 </span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="6165362512-12">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p"·data-group-id="6165362512-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
204 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="9922779538-13">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="p"·data-group-id="9922779538-14">(</span><span·class="n">M</span><s[·...·truncated·by·diffoscope;·len:·225,·SHA:·375aa05165e79860ed32787b26e4d507641131fa168371f934ed55bba9712b64·...·]-13">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="6165362512-13">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="mi">0</span><span·class="p">:</span><span·class="p"·data-group-id="6165362512-14">(</span><span·class="n">M</span><s[·...·truncated·by·diffoscope;·len:·225,·SHA:·cd2156c1b85d2cdb76b76cf07303b045d387c74f7ab3510bde2ab5da86421163·...·]-13">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="9922779538-15">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="99227795[·...·truncated·by·diffoscope;·len:·2,·SHA:·aea92132c4cbeb263e6ac2bf6c183b5d81737f179f21efdc5863739672f0f470·...·]-15">)</span><span·class="p">.</span></code></pre><p>When·writing·data·it's·generally·more·efficient·to·write·a·list·of·binaries205 ····</span><span·class="nf">create_file_1</span><span·class="p"·data-group-id="6165362512-15">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="61653625[·...·truncated·by·diffoscope;·len:·2,·SHA:·6b51d431df5d7f141cbececcf79edf3dd861c3b4069f0b11661a3eefacbba918·...·]-15">)</span><span·class="p">.</span></code></pre><p>When·writing·data·it's·generally·more·efficient·to·write·a·list·of·binaries
206 rather·than·a·list·of·integers.·It·is·not·needed·to·flatten·a·deep·list·before206 rather·than·a·list·of·integers.·It·is·not·needed·to·flatten·a·deep·list·before
207 writing.·On·Unix·hosts,·scatter·output,·which·writes·a·set·of·buffers·in·one207 writing.·On·Unix·hosts,·scatter·output,·which·writes·a·set·of·buffers·in·one
208 operation,·is·used·when·possible.·In·this·way208 operation,·is·used·when·possible.·In·this·way
209 <a·href="#write/2"><code·class="inline">write(FD,·[Bin1,·Bin2·|·Bin3])</code></a>·writes·the·contents·of·the209 <a·href="#write/2"><code·class="inline">write(FD,·[Bin1,·Bin2·|·Bin3])</code></a>·writes·the·contents·of·the
210 binaries·without·copying·the·data·at·all,·except·for·perhaps·deep·down·in·the210 binaries·without·copying·the·data·at·all,·except·for·perhaps·deep·down·in·the
211 operating·system·kernel.</p><blockquote><h4·class="warning">Warning</h4><p>If·an·error·occurs·when·accessing·an·open·file·with·module·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html"><code·class="inline">io</code></a>,·the·process211 operating·system·kernel.</p><blockquote><h4·class="warning">Warning</h4><p>If·an·error·occurs·when·accessing·an·open·file·with·module·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html"><code·class="inline">io</code></a>,·the·process
212 handling·the·file·exits.·The·dead·file·process·can·hang·if·a·process·tries·to212 handling·the·file·exits.·The·dead·file·process·can·hang·if·a·process·tries·to
Offset 1974, 16 lines modifiedOffset 1974, 16 lines modified
1974 ······</div>1974 ······</div>
  
1975 <p>Reads·Erlang·terms,·separated·by·<code·class="inline">.</code>,·from·<code·class="inline">Filename</code>.·Returns·one·of·the1975 <p>Reads·Erlang·terms,·separated·by·<code·class="inline">.</code>,·from·<code·class="inline">Filename</code>.·Returns·one·of·the
1976 following:</p><ul><li><p><strong><code·class="inline">{ok,·Terms}</code></strong>·-·The·file·was·successfully·read.</p></li><li><p><strong><code·class="inline">{error,·atom()}</code></strong>·-·An·error·occurred·when·opening·the·file·or·reading·it.1976 following:</p><ul><li><p><strong><code·class="inline">{ok,·Terms}</code></strong>·-·The·file·was·successfully·read.</p></li><li><p><strong><code·class="inline">{error,·atom()}</code></strong>·-·An·error·occurred·when·opening·the·file·or·reading·it.
1977 For·a·list·of·typical·error·codes,·see·<a·href="#open/2"><code·class="inline">open/2</code></a>.</p></li><li><p><strong><code·class="inline">{error,·{Line,·Mod,·Term}}</code></strong>·-·An·error·occurred·when·interpreting·the1977 For·a·list·of·typical·error·codes,·see·<a·href="#open/2"><code·class="inline">open/2</code></a>.</p></li><li><p><strong><code·class="inline">{error,·{Line,·Mod,·Term}}</code></strong>·-·An·error·occurred·when·interpreting·the
1978 Erlang·terms·in·the·file.·To·convert·the·three-element·tuple·to·an·English1978 Erlang·terms·in·the·file.·To·convert·the·three-element·tuple·to·an·English
1979 description·of·the·error,·use·<a·href="#format_error/1"><code·class="inline">format_error/1</code></a>.</p></li></ul><p><em>Example:</em></p><pre><code·class="text">f.txt:··{person,·&quot;kalle&quot;,·25}.1979 description·of·the·error,·use·<a·href="#format_error/1"><code·class="inline">format_error/1</code></a>.</p></li></ul><p><em>Example:</em></p><pre><code·class="text">f.txt:··{person,·&quot;kalle&quot;,·25}.
1980 ········{person,·&quot;pelle&quot;,·30}.</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">consult</span><span·class="p"·data-group-id="7357156172-1">(</span><span·class="s">&quot;f.txt&quot;</span><span·class="p"·data-group-id="7357156172-1">)</span><span·class="p">.</span><span·class="w">1980 ········{person,·&quot;pelle&quot;,·30}.</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">consult</span><span·class="p"·data-group-id="6668204593-1">(</span><span·class="s">&quot;f.txt&quot;</span><span·class="p"·data-group-id="6668204593-1">)</span><span·class="p">.</span><span·class="w">
1981 </span><span·class="p"·data-group-id="7357156172-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7357156172-3">[</span><span·class="p"·data-group-id="7357156172-4">{</span><span·class="ss">person</span><span·class="p">,</span><span·class="s">&quot;ka[·...·truncated·by·diffoscope;·len:·487,·SHA:·f5f13c03d1c07bc29f06fbccd8f04c6ec4050f0793f0279c6ef11a985623da95·...·]-2">}</span></code></pre><p>The·encoding·of·<code·class="inline">Filename</code>·can·be·set·by·a·comment,·as·described·in1981 </span><span·class="p"·data-group-id="6668204593-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6668204593-3">[</span><span·class="p"·data-group-id="6668204593-4">{</span><span·class="ss">person</span><span·class="p">,</span><span·class="s">&quot;ka[·...·truncated·by·diffoscope;·len:·487,·SHA:·c5f52b4f953af9991f1887fe3807aceea2c19e92c85d2afc67d3868a20cf4324·...·]-2">}</span></code></pre><p>The·encoding·of·<code·class="inline">Filename</code>·can·be·set·by·a·comment,·as·described·in
1982 <a·href="../../../../lib/stdlib-6.0.1/doc/html/epp.html#encoding"><code·class="inline">epp</code></a>.</p>1982 <a·href="../../../../lib/stdlib-6.0.1/doc/html/epp.html#encoding"><code·class="inline">epp</code></a>.</p>
1983 ··</section>1983 ··</section>
1984 </section>1984 </section>
1985 <section·class="detail"·id="copy/2">1985 <section·class="detail"·id="copy/2">
  
1986 ··<div·class="detail-header">1986 ··<div·class="detail-header">
1987 ····<a·href="#copy/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1987 ····<a·href="#copy/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 3332, 15 lines modifiedOffset 3332, 15 lines modified
3332 ····························FileInfo·::·<a·href="#t:file_info/0">file_info</a>(),3332 ····························FileInfo·::·<a·href="#t:file_info/0">file_info</a>(),
3333 ····························Reason·::·<a·href="#t:posix/0">posix</a>()·|·badarg.</pre>3333 ····························Reason·::·<a·href="#t:posix/0">posix</a>()·|·badarg.</pre>
  
3334 ······</div>3334 ······</div>
  
3335 <p>Retrieves·information·about·a·file.·Returns·<code·class="inline">{ok,·FileInfo}</code>·if·successful,3335 <p>Retrieves·information·about·a·file.·Returns·<code·class="inline">{ok,·FileInfo}</code>·if·successful,
3336 otherwise·<code·class="inline">{error,·Reason}</code>.</p><p><code·class="inline">FileInfo</code>·is·a·record·<code·class="inline">file_info</code>,·defined·in·the·Kernel·include·file·<code·class="inline">file.hrl</code>.3336 otherwise·<code·class="inline">{error,·Reason}</code>.</p><p><code·class="inline">FileInfo</code>·is·a·record·<code·class="inline">file_info</code>,·defined·in·the·Kernel·include·file·<code·class="inline">file.hrl</code>.
3337 Include·the·following·directive·in·the·module·from·which·the·function·is·called:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7953757421-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="7953757421-1">)</span><span·class="p">.</span></code></pre><p>The·time·type·returned·in·<code·class="inline">atime</code>,·<code·class="inline">mtime</code>,·and·<code·class="inline">ctime</code>·is·dependent·on·the·time3337 Include·the·following·directive·in·the·module·from·which·the·function·is·called:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="9186543499-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="9186543499-1">)</span><span·class="p">.</span></code></pre><p>The·time·type·returned·in·<code·class="inline">atime</code>,·<code·class="inline">mtime</code>,·and·<code·class="inline">ctime</code>·is·dependent·on·the·time
3338 type·set·in·<code·class="inline">Opts·::·{time,·Type}</code>·as·follows:</p><ul><li><p><strong><code·class="inline">local</code></strong>·-·Returns·local·time.</p></li><li><p><strong><code·class="inline">universal</code></strong>·-·Returns·universal·time.</p></li><li><p><strong><code·class="inline">posix</code></strong>·-·Returns·seconds·since·or·before·Unix·time·epoch,·which·is3338 type·set·in·<code·class="inline">Opts·::·{time,·Type}</code>·as·follows:</p><ul><li><p><strong><code·class="inline">local</code></strong>·-·Returns·local·time.</p></li><li><p><strong><code·class="inline">universal</code></strong>·-·Returns·universal·time.</p></li><li><p><strong><code·class="inline">posix</code></strong>·-·Returns·seconds·since·or·before·Unix·time·epoch,·which·is
3339 1970-01-01·00:00·UTC.</p></li></ul><p>Default·is·<code·class="inline">{time,·local}</code>.</p><p>If·the·option·<code·class="inline">raw</code>·is·set,·the·file·server·is·not·called·and·only·information3339 1970-01-01·00:00·UTC.</p></li></ul><p>Default·is·<code·class="inline">{time,·local}</code>.</p><p>If·the·option·<code·class="inline">raw</code>·is·set,·the·file·server·is·not·called·and·only·information
3340 about·local·files·is·returned.·Note·that·this·will·break·this·module's·atomicity3340 about·local·files·is·returned.·Note·that·this·will·break·this·module's·atomicity
3341 guarantees·as·it·can·race·with·a·concurrent·call·to3341 guarantees·as·it·can·race·with·a·concurrent·call·to
3342 <a·href="#write_file_info/2"><code·class="inline">write_file_info/1,2</code>·</a>.</p><p>This·option·has·no·effect·when·the·function·is·given·an·I/O·device·instead·of·a3342 <a·href="#write_file_info/2"><code·class="inline">write_file_info/1,2</code>·</a>.</p><p>This·option·has·no·effect·when·the·function·is·given·an·I/O·device·instead·of·a
3343 file·name.·Use·<a·href="#open/2"><code·class="inline">open/2</code></a>·with·the·<code·class="inline">raw</code>·mode·to·obtain·a·file·descriptor·first.</p><blockquote><h4·class="info">Note</h4><p>As·file·times·are·stored·in·POSIX·time·on·most·OS,·it·is·faster·to·query·file3343 file·name.·Use·<a·href="#open/2"><code·class="inline">open/2</code></a>·with·the·<code·class="inline">raw</code>·mode·to·obtain·a·file·descriptor·first.</p><blockquote><h4·class="info">Note</h4><p>As·file·times·are·stored·in·POSIX·time·on·most·OS,·it·is·faster·to·query·file
3344 information·with·option·<code·class="inline">posix</code>.</p></blockquote><p>The·record·<code·class="inline">file_info</code>·contains·the·following·fields:</p><ul><li><p><strong><code·class="inline">size·=</code>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></strong>·-·Size·of·file·in·bytes.</p></li><li><p><strong><code·class="inline">type·=·device·|·directory·|·other·|·regular</code></strong>·-·The·type·of·the·file.·Can3344 information·with·option·<code·class="inline">posix</code>.</p></blockquote><p>The·record·<code·class="inline">file_info</code>·contains·the·following·fields:</p><ul><li><p><strong><code·class="inline">size·=</code>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></strong>·-·Size·of·file·in·bytes.</p></li><li><p><strong><code·class="inline">type·=·device·|·directory·|·other·|·regular</code></strong>·-·The·type·of·the·file.·Can
Offset 4022, 15 lines modifiedOffset 4022, 15 lines modified
4022 ·····························Reason·::·<a·href="#t:posix/0">posix</a>()·|·badarg.</pre>4022 ·····························Reason·::·<a·href="#t:posix/0">posix</a>()·|·badarg.</pre>
  
4023 ······</div>4023 ······</div>
  
4024 <p>Changes·file·information.·Returns·<code·class="inline">ok</code>·if·successful,·otherwise4024 <p>Changes·file·information.·Returns·<code·class="inline">ok</code>·if·successful,·otherwise
4025 <code·class="inline">{error,·Reason}</code>.</p><p><code·class="inline">FileInfo</code>·is·a·record·<code·class="inline">file_info</code>,·defined·in·the·Kernel4025 <code·class="inline">{error,·Reason}</code>.</p><p><code·class="inline">FileInfo</code>·is·a·record·<code·class="inline">file_info</code>,·defined·in·the·Kernel
4026 include·file·<code·class="inline">file.hrl</code>.·Include·the·following·directive·in·the·module·from4026 include·file·<code·class="inline">file.hrl</code>.·Include·the·following·directive·in·the·module·from
4027 which·the·function·is·called:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="6386940280-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="6386940280-1">)</span><span·class="p">.</span></code></pre><p>The·time·type·set·in·<code·class="inline">atime</code>,·<code·class="inline">mtime</code>,·and·<code·class="inline">ctime</code>·depends·on·the·time·type·set4027 which·the·function·is·called:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="9504124037-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="9504124037-1">)</span><span·class="p">.</span></code></pre><p>The·time·type·set·in·<code·class="inline">atime</code>,·<code·class="inline">mtime</code>,·and·<code·class="inline">ctime</code>·depends·on·the·time·type·set
4028 in·<code·class="inline">Opts·::·{time,·Type}</code>·as·follows:</p><ul><li><p><strong><code·class="inline">local</code></strong>·-·Interprets·the·time·set·as·local.</p></li><li><p><strong><code·class="inline">universal</code></strong>·-·Interprets·it·as·universal·time.</p></li><li><p><strong><code·class="inline">posix</code></strong>·-·Must·be·seconds·since·or·before·Unix·time·epoch,·which·is4028 in·<code·class="inline">Opts·::·{time,·Type}</code>·as·follows:</p><ul><li><p><strong><code·class="inline">local</code></strong>·-·Interprets·the·time·set·as·local.</p></li><li><p><strong><code·class="inline">universal</code></strong>·-·Interprets·it·as·universal·time.</p></li><li><p><strong><code·class="inline">posix</code></strong>·-·Must·be·seconds·since·or·before·Unix·time·epoch,·which·is
4029 1970-01-01·00:00·UTC.</p></li></ul><p>Default·is·<code·class="inline">{time,·local}</code>.</p><p>If·the·option·<code·class="inline">raw</code>·is·set,·the·file·server·is·not·called·and·only·information4029 1970-01-01·00:00·UTC.</p></li></ul><p>Default·is·<code·class="inline">{time,·local}</code>.</p><p>If·the·option·<code·class="inline">raw</code>·is·set,·the·file·server·is·not·called·and·only·information
4030 about·local·files·is·returned.</p><p>The·following·fields·are·used·from·the·record,·if·they·are·specified:</p><ul><li><p><strong><code·class="inline">atime·=</code>·<a·href="#t:date_time/0"><code·class="inline">date_time/0</code></a>·<code·class="inline">|</code>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></strong>·-·The·last·time·the·file·was4030 about·local·files·is·returned.</p><p>The·following·fields·are·used·from·the·record,·if·they·are·specified:</p><ul><li><p><strong><code·class="inline">atime·=</code>·<a·href="#t:date_time/0"><code·class="inline">date_time/0</code></a>·<code·class="inline">|</code>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></strong>·-·The·last·time·the·file·was
4031 read.</p></li><li><p><strong><code·class="inline">mtime·=</code>·<a·href="#t:date_time/0"><code·class="inline">date_time/0</code></a>·<code·class="inline">|</code>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></strong>·-·The·last·time·the·file·was4031 read.</p></li><li><p><strong><code·class="inline">mtime·=</code>·<a·href="#t:date_time/0"><code·class="inline">date_time/0</code></a>·<code·class="inline">|</code>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></strong>·-·The·last·time·the·file·was
4032 written.</p></li><li><p><strong><code·class="inline">ctime·=</code>·<a·href="#t:date_time/0"><code·class="inline">date_time/0</code></a>·<code·class="inline">|</code>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></strong>·-·On·Unix,·any·value4032 written.</p></li><li><p><strong><code·class="inline">ctime·=</code>·<a·href="#t:date_time/0"><code·class="inline">date_time/0</code></a>·<code·class="inline">|</code>·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0"><code·class="inline">non_neg_integer/0</code></a></strong>·-·On·Unix,·any·value
4033 specified·for·this·field·is·ignored·(the·&quot;ctime&quot;·for·the·file·is·set·to·the4033 specified·for·this·field·is·ignored·(the·&quot;ctime&quot;·for·the·file·is·set·to·the
4034 current·time).·On·Windows,·this·field·is·the·new·creation·time·to·set·for·the4034 current·time).·On·Windows,·this·field·is·the·new·creation·time·to·set·for·the
Offset 4064, 15 lines modifiedOffset 4064, 15 lines modified
4064 ······<p·class="built-using">4064 ······<p·class="built-using">
4065 ········Built·using4065 ········Built·using
4066 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the4066 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
4067 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>4067 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
4068 ······</p>4068 ······</p>
4069 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4069 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
4070 ····</footer>4070 ····</footer>
4071 ··</div>4071 ··</div>
4072 </main>4072 </main>
4073 </div>4073 </div>
4074 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>4074 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
4075 <script>4075 <script>
4076 ··document.addEventListener("DOMContentLoaded",·function·()·{4076 ··document.addEventListener("DOMContentLoaded",·function·()·{
663 B
html2text {}
Max HTML report size reached
170 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/gen_sctp.html
Max HTML report size reached
60.9 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/gen_tcp.html
    
Offset 126, 35 lines modifiedOffset 126, 35 lines modified
  
126 ··</h1>126 ··</h1>
  
  
127 ····<section·id="moduledoc">127 ····<section·id="moduledoc">
128 <p>Interface·to·TCP/IP·sockets.</p><p>This·module·provides·functions·for·communicating·over·TCP/IP128 <p>Interface·to·TCP/IP·sockets.</p><p>This·module·provides·functions·for·communicating·over·TCP/IP
129 protocol·sockets.</p><p>The·following·code·fragment·is·a·simple·example·of·a·client·connecting·to·a129 protocol·sockets.</p><p>The·following·code·fragment·is·a·simple·example·of·a·client·connecting·to·a
130 server·at·port·5678,·transferring·a·binary,·and·closing·the·connection:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">client</span><span·class="p"·data-group-id="4299017594-1">(</span><span·class="p"·data-group-id="4299017594-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">130 server·at·port·5678,·transferring·a·binary,·and·closing·the·connection:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">client</span><span·class="p"·data-group-id="5497041801-1">(</span><span·class="p"·data-group-id="5497041801-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
131 ····</span><span·class="n">SomeHostInNet</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;localhost&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·to·make·it·runnable·on·one·machine</span><span·class="w">131 ····</span><span·class="n">SomeHostInNet</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;localhost&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·to·make·it·runnable·on·one·machine</span><span·class="w">
132 ····</span><span·class="p"·data-group-id="4299017594-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="4299017594-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·119,·SHA:·2c7a4abc3479f8408b5d85608ab0e62546d00a8ad12ac24a430397e9bf9ed8fe·...·]-3">(</span><span·class="n">SomeHostInNet</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5678</span><span·class="p">,</span><span·class="w">132 ····</span><span·class="p"·data-group-id="5497041801-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="5497041801-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·119,·SHA:·92de58541127fa408a221525de0a92fc73c1774317b60f55c117a2943996a168·...·]-3">(</span><span·class="n">SomeHostInNet</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5678</span><span·class="p">,</span><span·class="w">
133 ·································</span><span·class="p"·data-group-id="4299017594-4">[</span><span·class="ss">binary</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4299017594-5">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span>[·...·truncated·by·diffoscope;·len:·147,·SHA:·f5ea796f9ae26e593ae780e63c79a0538463890836f040930d98bad0a063476c·...·]-3">)</span><span·class="p">,</span><span·class="w">133 ·································</span><span·class="p"·data-group-id="5497041801-4">[</span><span·class="ss">binary</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5497041801-5">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span>[·...·truncated·by·diffoscope;·len:·147,·SHA:·1d67b1f0b701f309b07ddaad78e62da11aa0a837a70c5804efcd33e50d4df316·...·]-3">)</span><span·class="p">,</span><span·class="w">
134 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="4299017594-6">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Some·Data&quot;</span><span·class="p"·data-group-id="4299017594-6">)</span><span·class="p">,</span><span·class="w">134 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="5497041801-6">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Some·Data&quot;</span><span·class="p"·data-group-id="5497041801-6">)</span><span·class="p">,</span><span·class="w">
135 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="4299017594-7">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="4299017594-7">)</span><span·class="p">.</span></code></pre><p>At·the·other·end,·a·server·is·listening·on·port·5678,·accepts·the·connection,135 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="5497041801-7">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="5497041801-7">)</span><span·class="p">.</span></code></pre><p>At·the·other·end,·a·server·is·listening·on·port·5678,·accepts·the·connection,
136 and·receives·the·binary:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">server</span><span·class="p"·data-group-id="6138384069-1">(</span><span·class="p"·data-group-id="6138384069-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">136 and·receives·the·binary:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">server</span><span·class="p"·data-group-id="9733453553-1">(</span><span·class="p"·data-group-id="9733453553-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
137 ····</span><span·class="p"·data-group-id="6138384069-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LSock</span><span·class="p"·data-group-id="6138384069-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·535,·SHA:·759df3becd1f9dd16ea4fce3abd4ebf0f13413668f3552a91806f2ac9f2c3b76·...·]-5">}</span><span·class="p">,</span><span·class="w">137 ····</span><span·class="p"·data-group-id="9733453553-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LSock</span><span·class="p"·data-group-id="9733453553-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·535,·SHA:·5eaa37833182f3630e2199ff7fed158d681e0cbc7247222db808fc5b652b6d3e·...·]-5">}</span><span·class="p">,</span><span·class="w">
138 ········································</span><span·class="p"·data-group-id="6138384069-6">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="6138384069-6">}</span><span·class="p"·data-group-id="6138384069-4">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·26eafe2b368a9b91c267da7a02e9d42b402615e762f8a68f947a81d2f7d203c7·...·]-3">)</span><span·class="p">,</span><span·class="w">138 ········································</span><span·class="p"·data-group-id="9733453553-6">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="9733453553-6">}</span><span·class="p"·data-group-id="9733453553-4">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·b1d1832d6fe01bf39abc2a6959ce84ff8c6c685a74601364265fb2ca124a92ea·...·]-3">)</span><span·class="p">,</span><span·class="w">
139 ····</span><span·class="p"·data-group-id="6138384069-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="6138384069-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·199,·SHA:·2ddcee0e6558f92ab14ccb12df4ef0b15b3633dcadcb8938a71022611f39b4a5·...·]-8">)</span><span·class="p">,</span><span·class="w">139 ····</span><span·class="p"·data-group-id="9733453553-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="9733453553-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·199,·SHA:·da08deabc1553347b059b82800299de33358f337e550c1b0588f4fbf859c4381·...·]-8">)</span><span·class="p">,</span><span·class="w">
140 ····</span><span·class="p"·data-group-id="6138384069-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p"·data-group-id="6138384069-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·300,·SHA:·3717f1b5a2427acafeaf7a30b43167bf440aa8483756be6dfce388853ade8cfe·...·]-10">)</span><span·class="p">,</span><span·class="w">140 ····</span><span·class="p"·data-group-id="9733453553-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p"·data-group-id="9733453553-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·300,·SHA:·3980b41e2dc43b933414cb77ce730846f896bc4c4daf011e58baf3ae72cadcef·...·]-10">)</span><span·class="p">,</span><span·class="w">
141 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="6138384069-12">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="6138384069-12">)</span><span·class="p">,</span><span·class="w">141 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="9733453553-12">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="9733453553-12">)</span><span·class="p">,</span><span·class="w">
142 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="6138384069-13">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="6138384069-13">)</span><span·class="p">,</span><span·class="w">142 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="9733453553-13">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="9733453553-13">)</span><span·class="p">,</span><span·class="w">
143 ····</span><span·class="n">Bin</span><span·class="p">.</span><span·class="w">143 ····</span><span·class="n">Bin</span><span·class="p">.</span><span·class="w">
  
144 </span><span·class="nf">do_recv</span><span·class="p"·data-group-id="6138384069-14">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bs</span><span·class="p"·data-group-id="6138384069-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">144 </span><span·class="nf">do_recv</span><span·class="p"·data-group-id="9733453553-14">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bs</span><span·class="p"·data-group-id="9733453553-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
145 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="6138384069-15">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="6138384069-15">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">145 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="9733453553-15">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="9733453553-15">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
146 ········</span><span·class="p"·data-group-id="6138384069-16">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="p"·data-group-id="6138384069-16">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">146 ········</span><span·class="p"·data-group-id="9733453553-16">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="p"·data-group-id="9733453553-16">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
147 ············</span><span·class="nf">do_recv</span><span·class="p"·data-group-id="6138384069-17">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6138384069-18">[</span><span·class="n">Bs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·c[·...·truncated·by·diffoscope;·len:·88,·SHA:·1c70c8a9e7341024d51cc8f344c6f67a4f7a5c567f52823fac9ec651cdaced12·...·]-17">)</span><span·class="p">;</span><span·class="w">147 ············</span><span·class="nf">do_recv</span><span·class="p"·data-group-id="9733453553-17">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9733453553-18">[</span><span·class="n">Bs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·c[·...·truncated·by·diffoscope;·len:·88,·SHA:·e626944021a2f6022e5fbf9d90e032286103fa95166662cc3bc8d776cb1ebd10·...·]-17">)</span><span·class="p">;</span><span·class="w">
148 ········</span><span·class="p"·data-group-id="6138384069-19">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="6138384069-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">148 ········</span><span·class="p"·data-group-id="9733453553-19">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">closed</span><span·class="p"·data-group-id="9733453553-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
149 ············</span><span·class="p"·data-group-id="6138384069-20">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="6138384069-21">(</span><span·class="n">Bs</span><span·class="p"·data-group-id="6138384069-[·...·truncated·by·diffoscope;·len:·53,·SHA:·4ecf065a234ab15cf30fb2849d0fb892b7820555ff6dfd9c4ff63c994c319207·...·]-20">}</span><span·class="w">149 ············</span><span·class="p"·data-group-id="9733453553-20">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="9733453553-21">(</span><span·class="n">Bs</span><span·class="p"·data-group-id="9733453553-[·...·truncated·by·diffoscope;·len:·53,·SHA:·8e75f126bbd77e97bd6ff9d2513f8198f4b29cec11bf24e1633d846821d8ab06·...·]-20">}</span><span·class="w">
150 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>For·more·examples,·see·section·<a·href="#module-examples">Examples</a>.</p><blockquote><h4·class="info">Note</h4><p>Functions·that·create·sockets·can·take·an·optional·option;150 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>For·more·examples,·see·section·<a·href="#module-examples">Examples</a>.</p><blockquote><h4·class="info">Note</h4><p>Functions·that·create·sockets·can·take·an·optional·option;
151 <code·class="inline">{inet_backend, Backend}</code>·that,·if·specified,·has·to·be·the·first·option.·This151 <code·class="inline">{inet_backend, Backend}</code>·that,·if·specified,·has·to·be·the·first·option.·This
152 selects·the·implementation·backend·towards·the·platform's·socket·API.</p><p>This·is·a·<em>temporary</em>·option·that·will·be·ignored·in·a·future·release.</p><p>The·default·is·<code·class="inline">Backend = inet</code>·that·selects·the·traditional·<code·class="inline">inet_drv.c</code>152 selects·the·implementation·backend·towards·the·platform's·socket·API.</p><p>This·is·a·<em>temporary</em>·option·that·will·be·ignored·in·a·future·release.</p><p>The·default·is·<code·class="inline">Backend = inet</code>·that·selects·the·traditional·<code·class="inline">inet_drv.c</code>
153 driver.·The·other·choice·is·<code·class="inline">Backend = socket</code>·that·selects·the·new·<a·href="socket.html"><code·class="inline">socket</code></a>153 driver.·The·other·choice·is·<code·class="inline">Backend = socket</code>·that·selects·the·new·<a·href="socket.html"><code·class="inline">socket</code></a>
154 module·and·its·NIF·implementation.</p><p>The·system·default·can·be·changed·when·the·node·is·started·with·the154 module·and·its·NIF·implementation.</p><p>The·system·default·can·be·changed·when·the·node·is·started·with·the
155 application·<code·class="inline">kernel</code>'s·configuration·variable·<code·class="inline">inet_backend</code>.</p><p>For·<code·class="inline">gen_tcp</code>·with·<code·class="inline">inet_backend·=·socket</code>·we·have·tried·to·be·as·&quot;compatible&quot;155 application·<code·class="inline">kernel</code>'s·configuration·variable·<code·class="inline">inet_backend</code>.</p><p>For·<code·class="inline">gen_tcp</code>·with·<code·class="inline">inet_backend·=·socket</code>·we·have·tried·to·be·as·&quot;compatible&quot;
156 as·possible·which·has·sometimes·been·impossible.·Here·is·a·list·of·cases·when156 as·possible·which·has·sometimes·been·impossible.·Here·is·a·list·of·cases·when
Offset 185, 91 lines modifiedOffset 185, 91 lines modified
185 ··<span·class="text">Examples</span>185 ··<span·class="text">Examples</span>
186 </h2>186 </h2>
187 <p>The·following·example·illustrates·use·of·option·<code·class="inline">{active,once}</code>·and·multiple187 <p>The·following·example·illustrates·use·of·option·<code·class="inline">{active,once}</code>·and·multiple
188 accepts·by·implementing·a·server·as·a·number·of·worker·processes·doing·accept·on188 accepts·by·implementing·a·server·as·a·number·of·worker·processes·doing·accept·on
189 a·single·listening·socket.·Function·<code·class="inline">start/2</code>·takes·the·number·of·worker189 a·single·listening·socket.·Function·<code·class="inline">start/2</code>·takes·the·number·of·worker
190 processes·and·the·port·number·on·which·to·listen·for·incoming·connections.·If190 processes·and·the·port·number·on·which·to·listen·for·incoming·connections.·If
191 <code·class="inline">LPort</code>·is·specified·as·<code·class="inline">0</code>,·an·ephemeral·port·number·is·used,·which·is·why·the191 <code·class="inline">LPort</code>·is·specified·as·<code·class="inline">0</code>,·an·ephemeral·port·number·is·used,·which·is·why·the
192 start·function·returns·the·actual·port·number·allocated:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start</span><span·class="p"·data-group-id="1019422470-1">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">LPort</span><span·class="p"·data-group-id="1019422470-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">192 start·function·returns·the·actual·port·number·allocated:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start</span><span·class="p"·data-group-id="5908700933-1">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">LPort</span><span·class="p"·data-group-id="5908700933-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
193 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">listen</span><span·class="p"·data-group-id="1019422470-2">(</span><span·class="n">LPort</span><span·class="p">,</span><span·class="p"·data-group-id="1019422470-3">[</span><span·class="p"·data-group-id="1019422470-4">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·72ef4a029fff1c376a33e96110b527eb5fd7249a7f124367749ef0e354a9d3ec·...·]-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">193 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">listen</span><span·class="p"·data-group-id="5908700933-2">(</span><span·class="n">LPort</span><span·class="p">,</span><span·class="p"·data-group-id="5908700933-3">[</span><span·class="p"·data-group-id="5908700933-4">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·42f56d55e91a6766d61becac063a67851e7d70fe278c00eb6c7d64c56dd18932·...·]-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
194 ········</span><span·class="p"·data-group-id="1019422470-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ListenSock</span><span·class="p"·data-group-id="1019422470-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">194 ········</span><span·class="p"·data-group-id="5908700933-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ListenSock</span><span·class="p"·data-group-id="5908700933-6">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
195 ············</span><span·class="nf">start_servers</span><span·class="p"·data-group-id="1019422470-7">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">ListenSock</span><span·class="p"·data-group-id="1019422470-7">)</span><span·class="p">,</span><span·class="w">195 ············</span><span·class="nf">start_servers</span><span·class="p"·data-group-id="5908700933-7">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">ListenSock</span><span·class="p"·data-group-id="5908700933-7">)</span><span·class="p">,</span><span·class="w">
196 ············</span><span·class="p"·data-group-id="1019422470-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="1019422470-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·199,·SHA:·9ecb00d049632c2449e794555b61a081e46c9d0d78e583f607ff2535000affb8·...·]-9">)</span><span·class="p">,</span><span·class="w">196 ············</span><span·class="p"·data-group-id="5908700933-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="5908700933-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·199,·SHA:·1adbc77beae279da6654c1cbbeab36bb8d8cecd74d95f91e3d94169029fc5881·...·]-9">)</span><span·class="p">,</span><span·class="w">
197 ············</span><span·class="n">Port</span><span·class="p">;</span><span·class="w">197 ············</span><span·class="n">Port</span><span·class="p">;</span><span·class="w">
198 ········</span><span·class="p"·data-group-id="1019422470-10">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Reason</span><span·class="p"·data-group-id="1019422470-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">198 ········</span><span·class="p"·data-group-id="5908700933-10">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Reason</span><span·class="p"·data-group-id="5908700933-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
199 ············</span><span·class="p"·data-group-id="1019422470-11">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Reason</span><span·class="p"·data-group-id="1019422470-11">}</span><span·class="w">199 ············</span><span·class="p"·data-group-id="5908700933-11">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Reason</span><span·class="p"·data-group-id="5908700933-11">}</span><span·class="w">
200 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">200 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
201 </span><span·class="nf">start_servers</span><span·class="p"·data-group-id="1019422470-12">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="1019422470-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">201 </span><span·class="nf">start_servers</span><span·class="p"·data-group-id="5908700933-12">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="5908700933-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
202 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">202 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
203 </span><span·class="nf">start_servers</span><span·class="p"·data-group-id="1019422470-13">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">LS</span><span·class="p"·data-group-id="1019422470-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">203 </span><span·class="nf">start_servers</span><span·class="p"·data-group-id="5908700933-13">(</span><span·class="n">Num</span><span·class="p">,</span><span·class="n">LS</span><span·class="p"·data-group-id="5908700933-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
204 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1019422470-14">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="ss">server</span><span·class="p">,</span><span·class="p"·data-group-id="1019422470-15">[</span><span·class="n">LS</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·72,·SHA:·94421c3fe1e176cb138a233df578c606506ec97312086ce16469e94965c36f06·...·]-14">)</span><span·class="p">,</span><span·class="w">204 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="5908700933-14">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="ss">server</span><span·class="p">,</span><span·class="p"·data-group-id="5908700933-15">[</span><span·class="n">LS</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·72,·SHA:·df8b47c5e556fe70523aaa637440c70ffb9eb0b0c848d509ab79b9528fe33343·...·]-14">)</span><span·class="p">,</span><span·class="w">
205 ····</span><span·class="nf">start_servers</span><span·class="p"·data-group-id="1019422470-16">(</span><span·class="n">Num</span><span·class="o">-</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">LS</span><span·class="p"·data-group-id="1019422470-16">)</span><span·class="p">.</span><span·class="w">205 ····</span><span·class="nf">start_servers</span><span·class="p"·data-group-id="5908700933-16">(</span><span·class="n">Num</span><span·class="o">-</span><span·class="mi">1</span><span·class="p">,</span><span·class="n">LS</span><span·class="p"·data-group-id="5908700933-16">)</span><span·class="p">.</span><span·class="w">
  
206 </span><span·class="nf">server</span><span·class="p"·data-group-id="1019422470-17">(</span><span·class="n">LS</span><span·class="p"·data-group-id="1019422470-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">206 </span><span·class="nf">server</span><span·class="p"·data-group-id="5908700933-17">(</span><span·class="n">LS</span><span·class="p"·data-group-id="5908700933-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
207 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">accept</span><span·class="p"·data-group-id="1019422470-18">(</span><span·class="n">LS</span><span·class="p"·data-group-id="1019422470-18">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">207 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">accept</span><span·class="p"·data-group-id="5908700933-18">(</span><span·class="n">LS</span><span·class="p"·data-group-id="5908700933-18">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
208 ········</span><span·class="p"·data-group-id="1019422470-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="1019422470-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 ········</span><span·class="p"·data-group-id="5908700933-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="5908700933-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
209 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="1019422470-20">(</span><span·class="n">S</span><span·class="p"·data-group-id="1019422470-20">)</span><span·class="p">,</span><span·class="w">209 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="5908700933-20">(</span><span·class="n">S</span><span·class="p"·data-group-id="5908700933-20">)</span><span·class="p">,</span><span·class="w">
210 ············</span><span·class="nf">server</span><span·class="p"·data-group-id="1019422470-21">(</span><span·class="n">LS</span><span·class="p"·data-group-id="1019422470-21">)</span><span·class="p">;</span><span·class="w">210 ············</span><span·class="nf">server</span><span·class="p"·data-group-id="5908700933-21">(</span><span·class="n">LS</span><span·class="p"·data-group-id="5908700933-21">)</span><span·class="p">;</span><span·class="w">
211 ········</span><span·class="n">Other</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">211 ········</span><span·class="n">Other</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
212 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1019422470-22">(</span><span·class="s">&quot;accept·returned·</span><span·class="si">~w</span><span·class="s">·-·goodbye!</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1019422470-23">[</[·...·truncated·by·diffoscope;·len:·128,·SHA:·e7094c84d409140d3b229072da0f26b7435adfef9523508238a1269260413d04·...·]-22">)</span><span·class="p">,</span><span·class="w">212 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5908700933-22">(</span><span·class="s">&quot;accept·returned·</span><span·class="si">~w</span><span·class="s">·-·goodbye!</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="5908700933-23">[</[·...·truncated·by·diffoscope;·len:·128,·SHA:·e09341e8578e8ffefd44edde7e5da46edccff0d007386e19589e0223480d0a5f·...·]-22">)</span><span·class="p">,</span><span·class="w">
213 ············</span><span·class="ss">ok</span><span·class="w">213 ············</span><span·class="ss">ok</span><span·class="w">
214 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">214 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
215 </span><span·class="nf">loop</span><span·class="p"·data-group-id="1019422470-24">(</span><span·class="n">S</span><span·class="p"·data-group-id="1019422470-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">215 </span><span·class="nf">loop</span><span·class="p"·data-group-id="5908700933-24">(</span><span·class="n">S</span><span·class="p"·data-group-id="5908700933-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
216 ····</span><span·class="nc">inet</span><span·class="p">:</span><span·class="nf">setopts</span><span·class="p"·data-group-id="1019422470-25">(</span><span·class="n">S</span><span·class="p">,</span><span·class="p"·data-group-id="1019422470-26">[</span><span·class="p"·data-group-id="1019422470-27">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="ss">once</[·...·truncated·by·diffoscope;·len:·154,·SHA:·8afe5a5d1f3c50b21e13a81cf465476c515601d4243879d3fae2b457104f471f·...·]-25">)</span><span·class="p">,</span><span·class="w">216 ····</span><span·class="nc">inet</span><span·class="p">:</span><span·class="nf">setopts</span><span·class="p"·data-group-id="5908700933-25">(</span><span·class="n">S</span><span·class="p">,</span><span·class="p"·data-group-id="5908700933-26">[</span><span·class="p"·data-group-id="5908700933-27">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="ss">once</[·...·truncated·by·diffoscope;·len:·154,·SHA:·bdd2eb547898ee72ee8b9cf73fd1fc98f9d051aef12bae7856470f1bce4d3696·...·]-25">)</span><span·class="p">,</span><span·class="w">
217 ····</span><span·class="k">receive</span><span·class="w">217 ····</span><span·class="k">receive</span><span·class="w">
218 ········</span><span·class="p"·data-group-id="1019422470-28">{</span><span·class="ss">tcp</span><span·class="p">,</span><span·class="n">S</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="1019422470-28">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">218 ········</span><span·class="p"·data-group-id="5908700933-28">{</span><span·class="ss">tcp</span><span·class="p">,</span><span·class="n">S</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="5908700933-28">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
219 ············</span><span·class="n">Answer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">process</span><span·class="p"·data-group-id="1019422470-29">(</span><span·class="n">Data</span><span·class="p"·data-group-id="1019422470-29">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Not·implemented·in·this·example</span><span·class="w">219 ············</span><span·class="n">Answer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">process</span><span·class="p"·data-group-id="5908700933-29">(</span><span·class="n">Data</span><span·class="p"·data-group-id="5908700933-29">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Not·implemented·in·this·example</span><span·class="w">
220 ············</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="1019422470-30">(</span><span·class="n">S</span><span·class="p">,</span><span·class="n">Answer</span><span·class="p"·data-group-id="1019422470-30">)</span><span·class="p">,</span><span·class="w">220 ············</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="5908700933-30">(</span><span·class="n">S</span><span·class="p">,</span><span·class="n">Answer</span><span·class="p"·data-group-id="5908700933-30">)</span><span·class="p">,</span><span·class="w">
221 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="1019422470-31">(</span><span·class="n">S</span><span·class="p"·data-group-id="1019422470-31">)</span><span·class="p">;</span><span·class="w">221 ············</span><span·class="nf">loop</span><span·class="p"·data-group-id="5908700933-31">(</span><span·class="n">S</span><span·class="p"·data-group-id="5908700933-31">)</span><span·class="p">;</span><span·class="w">
222 ········</span><span·class="p"·data-group-id="1019422470-32">{</span><span·class="ss">tcp_closed</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="1019422470-32">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">222 ········</span><span·class="p"·data-group-id="5908700933-32">{</span><span·class="ss">tcp_closed</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="5908700933-32">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
223 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1019422470-33">(</span><span·class="s">&quot;Socket·</span><span·class="si">~w</span><span·class="s">·closed·[</span><span·class="si">~w</span><span·class="s">]</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·323,·SHA:·f875330e3fa42441081f84fff6b95d0f3c303b7311cf3995810f55c58edc3430·...·]-33">)</span><span·class="p">,</span><span·class="w">223 ············</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5908700933-33">(</span><span·class="s">&quot;Socket·</span><span·class="si">~w</span><span·class="s">·closed·[</span><span·class="si">~w</span><span·class="s">]</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·323,·SHA:·f1f904696453ab5c3969844814ef73f04441a6c04156f40555eb437e555f8f29·...·]-33">)</span><span·class="p">,</span><span·class="w">
224 ············</span><span·class="ss">ok</span><span·class="w">224 ············</span><span·class="ss">ok</span><span·class="w">
225 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Example·of·a·simple·client:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">client</span><span·class="p"·data-group-id="2532592510-1">(</span><span·class="n">PortNo</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="2532592510-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">225 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Example·of·a·simple·client:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">client</span><span·class="p"·data-group-id="0592136490-1">(</span><span·class="n">PortNo</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="0592136490-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
226 ····</span><span·class="p"·data-group-id="2532592510-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Sock</span><span·class="p"·data-group-id="2532592510-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><[·...·truncated·by·diffoscope;·len:·457,·SHA:·7ad05f9be780889b7358c1b9483a4cb848a7bf08947d355c8cfbb2c6fd7bae46·...·]0-5">}</span><span·class="p">,</span><span·class="w">226 ····</span><span·class="p"·data-group-id="0592136490-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Sock</span><span·class="p"·data-group-id="0592136490-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><[·...·truncated·by·diffoscope;·len:·457,·SHA:·e32148dfab72bbed6f9344c9d2268de3f4ae1d975766b881c4924efee6915150·...·]0-5">}</span><span·class="p">,</span><span·class="w">
227 ····················································</span><span·class="p"·data-group-id="2532592510-6">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="2532592510-6">}</span><span·class="p"·data-group-id="2532592510-4">]</span><span·class="p"·data-group-id="2532592510-3">)</span><span·class="p">,</span><span·class="w">227 ····················································</span><span·class="p"·data-group-id="0592136490-6">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0592136490-6">}</span><span·class="p"·data-group-id="0592136490-4">]</span><span·class="p"·data-group-id="0592136490-3">)</span><span·class="p">,</span><span·class="w">
228 ····</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="2532592510-7">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="2532592510-7">)</span><span·class="p">,</span><span·class="w">228 ····</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="0592136490-7">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="0592136490-7">)</span><span·class="p">,</span><span·class="w">
229 ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="2532592510-8">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="2532592510-8">)</span><span·class="p">,</span><span·class="w">229 ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="0592136490-8">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="0592136490-8">)</span><span·class="p">,</span><span·class="w">
230 ····</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="2532592510-9">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="2532592510-9">)</span><span·class="p">,</span><span·class="w">230 ····</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="0592136490-9">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0592136490-9">)</span><span·class="p">,</span><span·class="w">
231 ····</span><span·class="n">A</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">send</code>·call·does·not·accept·a·time-out·option·because·time-outs·on·send·is231 ····</span><span·class="n">A</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">send</code>·call·does·not·accept·a·time-out·option·because·time-outs·on·send·is
232 handled·through·socket·option·<code·class="inline">send_timeout</code>.·The·behavior·of·a·send·operation232 handled·through·socket·option·<code·class="inline">send_timeout</code>.·The·behavior·of·a·send·operation
233 with·no·receiver·is·mainly·defined·by·the·underlying·TCP·stack·and·the·network233 with·no·receiver·is·mainly·defined·by·the·underlying·TCP·stack·and·the·network
234 infrastructure.·To·write·code·that·handles·a·hanging·receiver·that·can234 infrastructure.·To·write·code·that·handles·a·hanging·receiver·that·can
235 eventually·cause·the·sender·to·hang·on·a·<code·class="inline">send</code>·do·like·the·following.</p><p>Consider·a·process·that·receives·data·from·a·client·process·to·be·forwarded·to·a235 eventually·cause·the·sender·to·hang·on·a·<code·class="inline">send</code>·do·like·the·following.</p><p>Consider·a·process·that·receives·data·from·a·client·process·to·be·forwarded·to·a
236 server·on·the·network.·The·process·is·connected·to·the·server·through·TCP/IP·and236 server·on·the·network.·The·process·is·connected·to·the·server·through·TCP/IP·and
237 does·not·get·any·acknowledge·for·each·message·it·sends,·but·has·to·rely·on·the237 does·not·get·any·acknowledge·for·each·message·it·sends,·but·has·to·rely·on·the
238 send·time-out·option·to·detect·that·the·other·end·is·unresponsive.·Option238 send·time-out·option·to·detect·that·the·other·end·is·unresponsive.·Option
239 <code·class="inline">send_timeout</code>·can·be·used·when·connecting:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">239 <code·class="inline">send_timeout</code>·can·be·used·when·connecting:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
240 </span><span·class="p"·data-group-id="8220403481-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Sock</span><span·class="p"·data-group-id="8220403481-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><[·...·truncated·by·diffoscope;·len:·95,·SHA:·9a0bc844382b3da84dd6cefbf08644b0ca5e587d196acffaa0e1d7c8a32e0236·...·]-2">(</span><span·class="n">HostAddress</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">240 </span><span·class="p"·data-group-id="6902180875-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Sock</span><span·class="p"·data-group-id="6902180875-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">gen_tcp</span><[·...·truncated·by·diffoscope;·len:·95,·SHA:·d2bf68d417601526f296c8d24f6b1c9cc9bcf593e23370c17794ada01254522a·...·]-2">(</span><span·class="n">HostAddress</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">
241 ····························</span><span·class="p"·data-group-id="8220403481-3">[</span><span·class="p"·data-group-id="8220403481-4">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="8220403481-4">}</span><span·class="p">,</span><span·class="w">241 ····························</span><span·class="p"·data-group-id="6902180875-3">[</span><span·class="p"·data-group-id="6902180875-4">{</span><span·class="ss">active</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="6902180875-4">}</span><span·class="p">,</span><span·class="w">
242 ·····························</span><span·class="p"·data-group-id="8220403481-5">{</span><span·class="ss">send_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5000</span><span·class="p"·data-group-id="8220403481-5">}</span><span·class="p">,</span><span·class="w">242 ·····························</span><span·class="p"·data-group-id="6902180875-5">{</span><span·class="ss">send_timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5000</span><span·class="p"·data-group-id="6902180875-5">}</span><span·class="p">,</span><span·class="w">
243 ·····························</span><span·class="p"·data-group-id="8220403481-6">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="8220403481-6">}</span><span·class="p"·data-group-id="8220403481-3">]</span><span·class="p"·data-group-id="8220403481-2">)</span><span·class="p">,</span><span·class="w">243 ·····························</span><span·class="p"·data-group-id="6902180875-6">{</span><span·class="ss">packet</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="6902180875-6">}</span><span·class="p"·data-group-id="6902180875-3">]</span><span·class="p"·data-group-id="6902180875-2">)</span><span·class="p">,</span><span·class="w">
244 ················</span><span·class="nf">loop</span><span·class="p"·data-group-id="8220403481-7">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="8220403481-7">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·See·below</span><span·class="w">244 ················</span><span·class="nf">loop</span><span·class="p"·data-group-id="6902180875-7">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="6902180875-7">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·See·below</span><span·class="w">
245 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>In·the·loop·where·requests·are·handled,·send·time-outs·can·now·be·detected:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="3502125720-1">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="3502125720-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">245 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>In·the·loop·where·requests·are·handled,·send·time-outs·can·now·be·detected:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">loop</span><span·class="p"·data-group-id="1751466134-1">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="1751466134-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
246 ····</span><span·class="k">receive</span><span·class="w">246 ····</span><span·class="k">receive</span><span·class="w">
247 ········</span><span·class="p"·data-group-id="3502125720-2">{</span><span·class="n">Client</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">send_data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Binary</span><span·class="p"·data-group-id="3502125720-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">247 ········</span><span·class="p"·data-group-id="1751466134-2">{</span><span·class="n">Client</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">send_data</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Binary</span><span·class="p"·data-group-id="1751466134-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
248 ············</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="3502125720-3">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="p"·data-group-id="3502125720-4">[</span><span·class="n">Binary</span><span·class="p"·data-group-id="3502125720-4">]</span><span·class="p"·data-group-id="3502125720-3">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">248 ············</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="1751466134-3">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="p"·data-group-id="1751466134-4">[</span><span·class="n">Binary</span><span·class="p"·data-group-id="1751466134-4">]</span><span·class="p"·data-group-id="1751466134-3">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
249 ················</span><span·class="p"·data-group-id="3502125720-5">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="p"·data-group-id="3502125720-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">249 ················</span><span·class="p"·data-group-id="1751466134-5">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="p"·data-group-id="1751466134-5">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
250 ····················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3502125720-6">(</span><span·class="s">&quot;Send·timeout,·closing!</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">250 ····················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1751466134-6">(</span><span·class="s">&quot;Send·timeout,·closing!</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">
251 ······························</span><span·class="p"·data-group-id="3502125720-7">[</span><span·class="p"·data-group-id="3502125720-7">]</span><span·class="p"·data-group-id="3502125720-6">)</span><span·class="p">,</span><span·class="w">251 ······························</span><span·class="p"·data-group-id="1751466134-7">[</span><span·class="p"·data-group-id="1751466134-7">]</span><span·class="p"·data-group-id="1751466134-6">)</span><span·class="p">,</span><span·class="w">
252 ····················</span><span·class="nf">handle_send_timeout</span><span·class="p"·data-group-id="3502125720-8">(</span><span·class="p"·data-group-id="3502125720-8">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Not·implemented·here</span><span·class="w">252 ····················</span><span·class="nf">handle_send_timeout</span><span·class="p"·data-group-id="1751466134-8">(</span><span·class="p"·data-group-id="1751466134-8">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Not·implemented·here</span><span·class="w">
253 ····················</span><span·class="n">Client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="3502125720-9">{</span><span·class="nf">self</span><span·class="p"·data-group-id="3502125720-10">(</span><span·class="p"·data-group-id="3502125720-10">)</span><span·class="p">,</span><span·class="p"·data-group-id="3502125720-11">{</span><span·class="ss">err[·...·truncated·by·diffoscope;·len:·191,·SHA:·ad4b1c6dc3a8e97f5eaec32edc6c20272d992c812ec8ea5678f58c2e51d25f66·...·]-9">}</span><span·class="p">,</span><span·class="w">253 ····················</span><span·class="n">Client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1751466134-9">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1751466134-10">(</span><span·class="p"·data-group-id="1751466134-10">)</span><span·class="p">,</span><span·class="p"·data-group-id="1751466134-11">{</span><span·class="ss">err[·...·truncated·by·diffoscope;·len:·191,·SHA:·50bd6dc1ea0b7dce561599b582b29976f7b123723e063dc0da441f80fec34126·...·]-9">}</span><span·class="p">,</span><span·class="w">
254 ····················</span><span·class="c1">%%·Usually,·it&#39;s·a·good·idea·to·give·up·in·case·of·a</span><span·class="w">254 ····················</span><span·class="c1">%%·Usually,·it&#39;s·a·good·idea·to·give·up·in·case·of·a</span><span·class="w">
255 ····················</span><span·class="c1">%%·send·timeout,·as·you·never·know·how·much·actually</span><span·class="w">255 ····················</span><span·class="c1">%%·send·timeout,·as·you·never·know·how·much·actually</span><span·class="w">
256 ····················</span><span·class="c1">%%·reached·the·server,·maybe·only·a·packet·header?!</span><span·class="w">256 ····················</span><span·class="c1">%%·reached·the·server,·maybe·only·a·packet·header?!</span><span·class="w">
257 ····················</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="3502125720-12">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="3502125720-12">)</span><span·class="p">;</span><span·class="w">257 ····················</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="1751466134-12">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="1751466134-12">)</span><span·class="p">;</span><span·class="w">
258 ················</span><span·class="p"·data-group-id="3502125720-13">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OtherSendError</span><span·class="p"·data-group-id="3502125720-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">258 ················</span><span·class="p"·data-group-id="1751466134-13">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OtherSendError</span><span·class="p"·data-group-id="1751466134-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
259 ····················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3502125720-14">(</span><span·class="s">&quot;Some·other·error·on·socket·(</span><span·class="si">~p</span><span·class="s">),·closing&quot;</span><span·class="p">,</span><span·class="w">259 ····················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1751466134-14">(</span><span·class="s">&quot;Some·other·error·on·socket·(</span><span·class="si">~p</span><span·class="s">),·closing&quot;</span><span·class="p">,</span><span·class="w">
260 ······························</span><span·class="p"·data-group-id="3502125720-15">[</span><span·class="n">OtherSendError</span><span·class="p"·data-group-id="3502125720-15">]</span><span·class="p"·data-group-id="3502125720-14">)</span><span·class="p">,</span><span·class="w"> 
261 ····················</span><span·class="n">Client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="3502125720-16">{</span><span·class="nf">self</span><span·class="p"·data-group-id="3502125720-17">(</span><span·class=[·...·truncated·by·diffoscope;·len:·343,·SHA:·0a042e3691dba668203604cc02dcb42d9e390cabd59cb9ae9d57c4a56b978db5·...·]</span><span·class="p">,</span><span·class="w">260 ······························</span><span·class="p"·data-group-id="1751466134-15">[</span><span·class="n">OtherSendError</span><span·class="p"·data-group-id="1751466134-15">]</span><span·class="p"·data-group-id="1751466134-14">)</span><span·class="p">,</span><span·class="w">
 261 ····················</span><span·class="n">Client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1751466134-16">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1751466134-17">(</span><span·class="p"·data-group-id="1751466134-17">)</span><span·class="p">,</span><span·class="p"·data-group-id="1751466134-18">{</span><span·class="ss">error_sending</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OtherSendError</span><span·class="p"·data-group-id="1751466134-18">}</span><span·class="p"·data-group-id="1751466134-16">}</span><span·class="p">,</span><span·class="w">
262 ····················</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="3502125720-19">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="3502125720-19">)</span><span·class="p">;</span><span·class="w">262 ····················</span><span·class="nc">gen_tcp</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="1751466134-19">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="1751466134-19">)</span><span·class="p">;</span><span·class="w">
263 ················</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">263 ················</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
264 ····················</span><span·class="n">Client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="3502125720-20">{</span><span·class="nf">self</span><span·class="p"·data-group-id="3502125720-21">(</span><span·class="p"·data-group-id="3502125720-21">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">data_sent</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·13b993e81684190dbfb1bac3ca80f8b44665eec9da5fd7ad16a3f8d63f44dd70·...·]-20">}</span><span·class="p">,</span><span·class="w">264 ····················</span><span·class="n">Client</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1751466134-20">{</span><span·class="nf">self</span><span·class="p"·data-group-id="1751466134-21">(</span><span·class="p"·data-group-id="1751466134-21">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">data_sent</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·13e8dd0c2afee31c73927a93b5f35da87246f2ab1f6a23ad0262e10ab202ab84·...·]-20">}</span><span·class="p">,</span><span·class="w">
265 ····················</span><span·class="nf">loop</span><span·class="p"·data-group-id="3502125720-22">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="3502125720-22">)</span><span·class="w">265 ····················</span><span·class="nf">loop</span><span·class="p"·data-group-id="1751466134-22">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="1751466134-22">)</span><span·class="w">
266 ············</span><span·class="k">end</span><span·class="w">266 ············</span><span·class="k">end</span><span·class="w">
267 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Usually·it·suffices·to·detect·time-outs·on·receive,·as·most·protocols·include267 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>Usually·it·suffices·to·detect·time-outs·on·receive,·as·most·protocols·include
268 some·sort·of·acknowledgment·from·the·server,·but·if·the·protocol·is·strictly·one268 some·sort·of·acknowledgment·from·the·server,·but·if·the·protocol·is·strictly·one
269 way,·option·<code·class="inline">send_timeout</code>·comes·in·handy.</p>269 way,·option·<code·class="inline">send_timeout</code>·comes·in·handy.</p>
270 ····</section>270 ····</section>
  
Max diff block lines reached; 704/61539 bytes (1.14%) of diff not shown.
708 B
html2text {}
Max HTML report size reached
8.92 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/gen_udp.html
    
Offset 956, 25 lines modifiedOffset 956, 25 lines modified
956 time-to-live·(TTL)·for·outgoing·multicast·datagrams·to·control·the·scope·of956 time-to-live·(TTL)·for·outgoing·multicast·datagrams·to·control·the·scope·of
957 the·multicasts.</p><p>Datagrams·with·a·TTL·of·1·are·not·forwarded·beyond·the·local·network.957 the·multicasts.</p><p>Datagrams·with·a·TTL·of·1·are·not·forwarded·beyond·the·local·network.
958 Defaults·to·<code·class="inline">1</code>.</p></li><li><p><strong><code·class="inline">{add_membership, {MultiAddress, InterfaceAddress}}</code></strong>·-958 Defaults·to·<code·class="inline">1</code>.</p></li><li><p><strong><code·class="inline">{add_membership, {MultiAddress, InterfaceAddress}}</code></strong>·-
959 Joins·a·multicast·group.</p></li><li><p><strong><code·class="inline">{drop_membership, {MultiAddress, InterfaceAddress}}</code></strong>·-959 Joins·a·multicast·group.</p></li><li><p><strong><code·class="inline">{drop_membership, {MultiAddress, InterfaceAddress}}</code></strong>·-
960 Leaves·a·multicast·group.</p></li><li><p><strong><a·href="#t:option/0"><code·class="inline">option/0</code></a></strong>·-·See·<a·href="inet.html#setopts/2"><code·class="inline">inet:setopts/2</code></a>.</p></li></ul><p>UDP·packets·are·sent·with·this·socket·using·<a·href="#send/3"><code·class="inline">send(Socket, ...)</code></a>.960 Leaves·a·multicast·group.</p></li><li><p><strong><a·href="#t:option/0"><code·class="inline">option/0</code></a></strong>·-·See·<a·href="inet.html#setopts/2"><code·class="inline">inet:setopts/2</code></a>.</p></li></ul><p>UDP·packets·are·sent·with·this·socket·using·<a·href="#send/3"><code·class="inline">send(Socket, ...)</code></a>.
961 When·UDP·packets·arrive·to·the·<code·class="inline">Socket</code>'s·UDP·port,·and·the·socket·is·in961 When·UDP·packets·arrive·to·the·<code·class="inline">Socket</code>'s·UDP·port,·and·the·socket·is·in
962 an·<em>active·mode</em>,·the·packets·are·delivered·as·messages·to·the962 an·<em>active·mode</em>,·the·packets·are·delivered·as·messages·to·the
963 controlling·process·(socket·owner):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7631792910-1">{</span><span·class="ss">udp</span><span·class="p">,</span><span·class="err"> </span><span·class="n">Socket</span><span·class="p">,</span><span·class="err"> </span><span·class="n">PeerIP</span><span·class="p">,</span><span·class="err"> </span[·...·truncated·by·diffoscope;·len:·152,·SHA:·c5a3ac4bf697c868adb81b037a53c8d255e63ecfa1a4d88130b5510233e0ebd4·...·]-1">}</span><span·class="w">·</span><span·class="c1">%·Without·ancillary·data</span><span·class="w">963 controlling·process·(socket·owner):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6879309777-1">{</span><span·class="ss">udp</span><span·class="p">,</span><span·class="err"> </span><span·class="n">Socket</span><span·class="p">,</span><span·class="err"> </span><span·class="n">PeerIP</span><span·class="p">,</span><span·class="err"> </span[·...·truncated·by·diffoscope;·len:·152,·SHA:·27eb681733bda17d205134132a6fb1e8518b15d32e7d3e94b36fd619cd5ae4d5·...·]-1">}</span><span·class="w">·</span><span·class="c1">%·Without·ancillary·data</span><span·class="w">
964 </span><span·class="p"·data-group-id="7631792910-2">{</span><span·class="ss">udp</span><span·class="p">,</span><span·class="err"> </span><span·class="n">Socket</span><span·class="p">,</span><span·class="err"> </span><span·class="n">PeerIP</span><span·class="p">,</span><span·class="err"> </span[·...·truncated·by·diffoscope;·len:·232,·SHA:·9bc9da737d9af100696a413b4c3575050db1f5f5fe110404933cc5508682571c·...·]-2">}</span><span·class="w">·</span><span·class="c1">%·With·ancillary·data</span></code></pre><p><code·class="inline">PeerIP</code>·and·<code·class="inline">PeerPort</code>·are·the·address·from·which·<code·class="inline">Packet</code>·was·sent.964 </span><span·class="p"·data-group-id="6879309777-2">{</span><span·class="ss">udp</span><span·class="p">,</span><span·class="err"> </span><span·class="n">Socket</span><span·class="p">,</span><span·class="err"> </span><span·class="n">PeerIP</span><span·class="p">,</span><span·class="err"> </span[·...·truncated·by·diffoscope;·len:·232,·SHA:·ba1840b5c487364a424c6099716dce467190f93ccc25487d797e7cde3091b399·...·]-2">}</span><span·class="w">·</span><span·class="c1">%·With·ancillary·data</span></code></pre><p><code·class="inline">PeerIP</code>·and·<code·class="inline">PeerPort</code>·are·the·address·from·which·<code·class="inline">Packet</code>·was·sent.
965 <code·class="inline">Packet</code>·is·a·list·of·bytes·(<code·class="inline">[</code><a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:byte/0"><code·class="inline">byte/0</code></a><code·class="inline">]</code>·if·option·<code·class="inline">list</code>965 <code·class="inline">Packet</code>·is·a·list·of·bytes·(<code·class="inline">[</code><a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:byte/0"><code·class="inline">byte/0</code></a><code·class="inline">]</code>·if·option·<code·class="inline">list</code>
966 is·active·and·a·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0"><code·class="inline">binary/0</code></a>·if·option·<code·class="inline">binary</code>is·active966 is·active·and·a·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0"><code·class="inline">binary/0</code></a>·if·option·<code·class="inline">binary</code>is·active
967 (they·are·mutually·exclusive).</p><p>The·message·contains·an·<code·class="inline">AncData</code>·field·only·if·any·of·the·socket967 (they·are·mutually·exclusive).</p><p>The·message·contains·an·<code·class="inline">AncData</code>·field·only·if·any·of·the·socket
968 <a·href="#t:option/0">options</a>·<a·href="inet.html#option-recvtos"><code·class="inline">recvtos</code></a>,968 <a·href="#t:option/0">options</a>·<a·href="inet.html#option-recvtos"><code·class="inline">recvtos</code></a>,
969 <a·href="inet.html#option-recvtclass"><code·class="inline">recvtclass</code></a>·or969 <a·href="inet.html#option-recvtclass"><code·class="inline">recvtclass</code></a>·or
970 <a·href="inet.html#option-recvttl"><code·class="inline">recvttl</code></a>·are·active.</p><p>When·a·socket·in·<code·class="inline">{active, N}</code>·mode·(see·<a·href="inet.html#setopts/2"><code·class="inline">inet:setopts/2</code></a>·for·details),970 <a·href="inet.html#option-recvttl"><code·class="inline">recvttl</code></a>·are·active.</p><p>When·a·socket·in·<code·class="inline">{active, N}</code>·mode·(see·<a·href="inet.html#setopts/2"><code·class="inline">inet:setopts/2</code></a>·for·details),
971 transitions·to·passive·(<code·class="inline">{active, false}</code>)·mode·(<code·class="inline">N</code>·counts·down·to·<code·class="inline">0</code>),971 transitions·to·passive·(<code·class="inline">{active, false}</code>)·mode·(<code·class="inline">N</code>·counts·down·to·<code·class="inline">0</code>),
972 the·controlling·process·is·notified·by·a·message·on·this·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2471356011-1">{</span><span·class="ss">udp_passive</span><span·class="p">,</span><span·class="err"> </span><span·class="n">Socket</span><span·class="p"·data-group-id="2471356011-1">}</span></code></pre><p>If·the·OS·protocol·stack·reports·an·error·for·the·socket,·the·following 
973 message·is·sent·to·the·controlling·process:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5001057948-1">{</span><span·class="ss">udp_error</span><span·class="p">,</span><span·class="err"> </span><span·class="n">Socket</s[·...·truncated·by·diffoscope;·len:·354,·SHA:·82d4fbf2cd5f21e0d6a591e80b5aa1fde3a3ebd27bda20766f89a6b91b99346e·...·]972 the·controlling·process·is·notified·by·a·message·on·this·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8726494476-1">{</span><span·class="ss">udp_passive</span><span·class="p">,</span><span·class="err"> </span><spa[·...·truncated·by·diffoscope;·len:·165,·SHA:·073a1a4c06a097df88cc4128b04cf45c799997ecfae200d79b10badabeca6845·...·]
 973 message·is·sent·to·the·controlling·process:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3115169154-1">{</span><span·class="ss">udp_error</span><span·class="p">,</span><span·class="err"> </span><span·class="n">Socket</span><span·class="p">,</span><span·class="err"> </span><span·class="n">Reason</span><span·class="p"·data-group-id="3115169154-1">}</span></code></pre><p><code·class="inline">Reason</code>·is·mostly·a·<a·href="inet.html#posix-error-codes">POSIX·Error·Code</a>.</p><p>If·the·socket·is·in·<em>passive·mode</em>·(not·in·an·<em>active·mode</em>),·received·data
974 can·be·retrieved·with·the<code·class="inline">recv/2,3</code>](<a·href="#recv/2"><code·class="inline">recv/2</code></a>)·calls.·Note·that·incoming974 can·be·retrieved·with·the<code·class="inline">recv/2,3</code>](<a·href="#recv/2"><code·class="inline">recv/2</code></a>)·calls.·Note·that·incoming
975 UDP·packets·that·are·longer·than·the·receive·buffer·option·specifies975 UDP·packets·that·are·longer·than·the·receive·buffer·option·specifies
976 can·be·truncated·without·warning.</p><p>The·default·value·for·the·receive·buffer·option·is·<code·class="inline">{recbuf, 8192}</code>.</p>976 can·be·truncated·without·warning.</p><p>The·default·value·for·the·receive·buffer·option·is·<code·class="inline">{recbuf, 8192}</code>.</p>
977 ··</section>977 ··</section>
978 </section>978 </section>
979 <section·class="detail"·id="recv/2">979 <section·class="detail"·id="recv/2">
  
Offset 1269, 15 lines modifiedOffset 1269, 15 lines modified
1269 ······<p·class="built-using">1269 ······<p·class="built-using">
1270 ········Built·using1270 ········Built·using
1271 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1271 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1272 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1272 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1273 ······</p>1273 ······</p>
1274 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1274 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1275 ····</footer>1275 ····</footer>
1276 ··</div>1276 ··</div>
1277 </main>1277 </main>
1278 </div>1278 </div>
1279 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1279 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1280 <script>1280 <script>
1281 ··document.addEventListener("DOMContentLoaded",·function·()·{1281 ··document.addEventListener("DOMContentLoaded",·function·()·{
834 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/global.html
    
Offset 1294, 15 lines modifiedOffset 1294, 15 lines modified
1294 ······<p·class="built-using">1294 ······<p·class="built-using">
1295 ········Built·using1295 ········Built·using
1296 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1296 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1297 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1297 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1298 ······</p>1298 ······</p>
1299 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1299 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1300 ····</footer>1300 ····</footer>
1301 ··</div>1301 ··</div>
1302 </main>1302 </main>
1303 </div>1303 </div>
1304 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1304 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1305 <script>1305 <script>
1306 ··document.addEventListener("DOMContentLoaded",·function·()·{1306 ··document.addEventListener("DOMContentLoaded",·function·()·{
694 B
html2text {}
Max HTML report size reached
4.27 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/global_group.html
    
Offset 128, 15 lines modifiedOffset 128, 15 lines modified
  
  
128 ····<section·id="moduledoc">128 ····<section·id="moduledoc">
129 <p>Grouping·nodes·to·global·name·registration·groups.</p><p>This·module·makes·it·possible·to·partition·the·nodes·of·a·system·into·<em>global129 <p>Grouping·nodes·to·global·name·registration·groups.</p><p>This·module·makes·it·possible·to·partition·the·nodes·of·a·system·into·<em>global
130 groups</em>.·Each·global·group·has·its·own·global·namespace,·see·<a·href="global.html"><code·class="inline">global</code></a>.</p><p>The·main·advantage·of·dividing·systems·into·global·groups·is·that·the·background130 groups</em>.·Each·global·group·has·its·own·global·namespace,·see·<a·href="global.html"><code·class="inline">global</code></a>.</p><p>The·main·advantage·of·dividing·systems·into·global·groups·is·that·the·background
131 load·decreases·while·the·number·of·nodes·to·be·updated·is·reduced·when131 load·decreases·while·the·number·of·nodes·to·be·updated·is·reduced·when
132 manipulating·globally·registered·names.</p><p>The·Kernel·configuration·parameter·<a·href="kernel_app.html#global_groups"><code·class="inline">global_groups</code></a>132 manipulating·globally·registered·names.</p><p>The·Kernel·configuration·parameter·<a·href="kernel_app.html#global_groups"><code·class="inline">global_groups</code></a>
133 defines·the·global·groups:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3160278281-1">{</span><span·class="ss">global_groups</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3160278281-2">[</span><span·class="n">GroupTuple</span><span·class="w">·</span><span·class="p">:</span><span·class="p"[·...·truncated·by·diffoscope;·len:·268,·SHA:·f00bf1f1e127bf105a5ed9512dc9ccb698542ea57d64e717ab8d9a852d3097df·...·]-1">}</span></code></pre><p>For·the·processes·and·nodes·to·run·smoothly·using·the·global·group133 defines·the·global·groups:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5533923180-1">{</span><span·class="ss">global_groups</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5533923180-2">[</span><span·class="n">GroupTuple</span><span·class="w">·</span><span·class="p">:</span><span·class="p"[·...·truncated·by·diffoscope;·len:·268,·SHA:·055918bd031a8fb78093c7ca31c82edf411722166c09c135edd71ec74f5ec16d·...·]-1">}</span></code></pre><p>For·the·processes·and·nodes·to·run·smoothly·using·the·global·group
134 functionality,·the·following·criteria·must·be·met:</p><ul><li>An·instance·of·the·global·group·server,·<code·class="inline">global_group</code>,·must·be·running·on134 functionality,·the·following·criteria·must·be·met:</p><ul><li>An·instance·of·the·global·group·server,·<code·class="inline">global_group</code>,·must·be·running·on
135 each·node.·The·processes·are·automatically·started·and·synchronized·when·a135 each·node.·The·processes·are·automatically·started·and·synchronized·when·a
136 node·is·started.</li><li>All·involved·nodes·must·agree·on·the·global·group·definition,·otherwise·the136 node·is·started.</li><li>All·involved·nodes·must·agree·on·the·global·group·definition,·otherwise·the
137 behavior·of·the·system·is·undefined.</li><li><em>All</em>·nodes·in·the·system·must·belong·to·exactly·one·global·group.</li></ul><p>In·the·following·descriptions,·a·<em>group·node</em>·is·a·node·belonging·to·the·same137 behavior·of·the·system·is·undefined.</li><li><em>All</em>·nodes·in·the·system·must·belong·to·exactly·one·global·group.</li></ul><p>In·the·following·descriptions,·a·<em>group·node</em>·is·a·node·belonging·to·the·same
138 global·group·as·the·local·node.</p><h2·id="module-notes"·class="section-heading">138 global·group·as·the·local·node.</p><h2·id="module-notes"·class="section-heading">
139 ··<a·href="#module-notes"·class="hover-link">139 ··<a·href="#module-notes"·class="hover-link">
140 ····<i·class="ri-link-m"·aria-hidden="true"></i>140 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 935, 15 lines modifiedOffset 935, 15 lines modified
935 ······<p·class="built-using">935 ······<p·class="built-using">
936 ········Built·using936 ········Built·using
937 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the937 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
938 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>938 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
939 ······</p>939 ······</p>
940 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>940 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
941 ····</footer>941 ····</footer>
942 ··</div>942 ··</div>
943 </main>943 </main>
944 </div>944 </div>
945 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>945 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
946 <script>946 <script>
947 ··document.addEventListener("DOMContentLoaded",·function·()·{947 ··document.addEventListener("DOMContentLoaded",·function·()·{
672 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/heart.html
    
Offset 607, 15 lines modifiedOffset 607, 15 lines modified
607 ······<p·class="built-using">607 ······<p·class="built-using">
608 ········Built·using608 ········Built·using
609 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the609 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
610 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>610 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
611 ······</p>611 ······</p>
612 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>612 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
613 ····</footer>613 ····</footer>
614 ··</div>614 ··</div>
615 </main>615 </main>
616 </div>616 </div>
617 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>617 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
618 <script>618 <script>
619 ··document.addEventListener("DOMContentLoaded",·function·()·{619 ··document.addEventListener("DOMContentLoaded",·function·()·{
676 B
html2text {}
Max HTML report size reached
35.7 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/inet.html
    
Offset 147, 27 lines modifiedOffset 147, 27 lines modified
147 inet_default_listen_options·'[{delay_send,true}]'</code></pre><p><strong>Please·note</strong>·that·the·default·option·<code·class="inline">{active,·true}</code>·cannot·be·changed,147 inet_default_listen_options·'[{delay_send,true}]'</code></pre><p><strong>Please·note</strong>·that·the·default·option·<code·class="inline">{active,·true}</code>·cannot·be·changed,
148 for·internal·implementation·reasons.</p><p>Addresses·as·inputs·to·functions·can·be·either·a·string·or·a·tuple.148 for·internal·implementation·reasons.</p><p>Addresses·as·inputs·to·functions·can·be·either·a·string·or·a·tuple.
149 For·example,·the·IP·address·150.236.20.73·can·be·passed·to149 For·example,·the·IP·address·150.236.20.73·can·be·passed·to
150 <a·href="#gethostbyaddr/1"><code·class="inline">gethostbyaddr/1</code></a>,·either·as·a·string·<code·class="inline">&quot;150.236.20.73&quot;</code>150 <a·href="#gethostbyaddr/1"><code·class="inline">gethostbyaddr/1</code></a>,·either·as·a·string·<code·class="inline">&quot;150.236.20.73&quot;</code>
151 or·as·a·tuple·<code·class="inline">{150, 236, 20, 73}</code>.</p><p><em>IPv4·address·examples:</em></p><pre><code·class="text">Address··········ip_address()151 or·as·a·tuple·<code·class="inline">{150, 236, 20, 73}</code>.</p><p><em>IPv4·address·examples:</em></p><pre><code·class="text">Address··········ip_address()
152 -------··········------------152 -------··········------------
153 127.0.0.1········{127,0,0,1}153 127.0.0.1········{127,0,0,1}
154 192.168.42.2·····{192,168,42,2}</code></pre><p><em>IPv6·address·examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Address</span><span·class="w">··········</span><span·class="nf">ip_address</span><span·class="p"·data-group-id="7789178790-1">(</span><span·class="p"·data-group-id="7789178790-1">)</span><span·class="w">154 192.168.42.2·····{192,168,42,2}</code></pre><p><em>IPv6·address·examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Address</span><span·class="w">··········</span><span·class="nf">ip_address</span><span·class="p"·data-group-id="0844426142-1">(</span><span·class="p"·data-group-id="0844426142-1">)</span><span·class="w">
155 </span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">··········</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="w">155 </span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">-</span><span·class="w">··········</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="o">--</span><span·class="w">
156 </span><span·class="p">:</span><span·class="p">:</span><span·class="mi">1</span><span·class="w">·············</span><span·class="p"·data-group-id="7789178790-2">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·175,·SHA:·ad7f3d0449a606a0ea9041697c6f5cbe846d1681ba024e41d05d423830ad23b9·...·]-2">}</span><span·class="w">156 </span><span·class="p">:</span><span·class="p">:</span><span·class="mi">1</span><span·class="w">·············</span><span·class="p"·data-group-id="0844426142-2">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·175,·SHA:·ffafc4f02e354f54e5b53ea9992c0d384370ff47e98d3f4eefafe714532d1a95·...·]-2">}</span><span·class="w">
157 </span><span·class="p">:</span><span·class="p">:</span><span·class="mf">192.168</span><span·class="p">.</span><span·class="mf">42.2</span><span·class="w">··</span><span·class="p"·data-group-id="7789178790-3">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·792,·SHA:·f7b13b55df7540ce639b999ca949cc72218359d43b21df721b9316743cce3433·...·]-3">}</span><span·class="w">157 </span><span·class="p">:</span><span·class="p">:</span><span·class="mf">192.168</span><span·class="p">.</span><span·class="mf">42.2</span><span·class="w">··</span><span·class="p"·data-group-id="0844426142-3">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·792,·SHA:·369b7c7a97b02f6276bb6e18ec867ec60c17236945fce33cfa1a698b4b567282·...·]-3">}</span><span·class="w">
158 </span><span·class="p">:</span><span·class="p">:</span><span·class="n">FFFF</span><span·class="p">:</span><span·class="mf">192.168</span><span·class="p">.</span><span·class="mf">42.2</span><span·class="w">158 </span><span·class="p">:</span><span·class="p">:</span><span·class="n">FFFF</span><span·class="p">:</span><span·class="mf">192.168</span><span·class="p">.</span><span·class="mf">42.2</span><span·class="w">
159 ················</span><span·class="p"·data-group-id="7789178790-6">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·798,·SHA:·dd374eac738edac8c75f2aa74bdf807e6ad43532ba04c667a55873c3e468da06·...·]-6">}</span><span·class="w">159 ················</span><span·class="p"·data-group-id="0844426142-6">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·798,·SHA:·c204ef79ae10f7da6491e839ec45f7f9441214e2144c2d6a26fc4e9c369d5dd4·...·]-6">}</span><span·class="w">
160 </span><span·class="mi">3</span><span·class="nc">ffe</span><span·class="p">:</span><span·class="nc">b80</span><span·class="p">:</span><span·class="mi">1</span><span·class="nc">f8d</span><span·class="p">:</span><span·class="mi">2</span><span·class="p">:</span><span·class="mi">204</span><span·class="p">:</span><span·class="nc">acff</span><span·class="p">:</span><span·class="nc">fe17</span><span·class="p">:</span><span·class="ss">bf38</span><span·class="w">160 </span><span·class="mi">3</span><span·class="nc">ffe</span><span·class="p">:</span><span·class="nc">b80</span><span·class="p">:</span><span·class="mi">1</span><span·class="nc">f8d</span><span·class="p">:</span><span·class="mi">2</span><span·class="p">:</span><span·class="mi">204</span><span·class="p">:</span><span·class="nc">acff</span><span·class="p">:</span><span·class="nc">fe17</span><span·class="p">:</span><span·class="ss">bf38</span><span·class="w">
161 ················</span><span·class="p"·data-group-id="7789178790-9">{</span><span·class="mi">16#3ffe</span><span·class="p">,</span><span·class="mi">16#b80</span><span·class="p">,</span><span·class="mi">16#1f8d</span><span·class="p">,</span><span·class="mi">16#2</span><span·class="p">,</span><span·class="mi">1[·...·truncated·by·diffoscope;·len:·218,·SHA:·6308029251bfb7024e2c94b7ae3b810b564017896fc1921f6fcc804da8256fd1·...·]-9">}</span><span·class="w">161 ················</span><span·class="p"·data-group-id="0844426142-9">{</span><span·class="mi">16#3ffe</span><span·class="p">,</span><span·class="mi">16#b80</span><span·class="p">,</span><span·class="mi">16#1f8d</span><span·class="p">,</span><span·class="mi">16#2</span><span·class="p">,</span><span·class="mi">1[·...·truncated·by·diffoscope;·len:·218,·SHA:·8fd6f3bcc9dc9a3b5fb65777a0c0b7f9af1b11852268b722888801c2a240f813·...·]-9">}</span><span·class="w">
162 </span><span·class="nc">fe80</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">204</span><span·class="p">:</span><span·class="nc">acff</span><span·class="p">:</span><span·class="nc">fe17</span><span·class="p">:</span><span·class="ss">bf38</span><span·class="w">162 </span><span·class="nc">fe80</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">204</span><span·class="p">:</span><span·class="nc">acff</span><span·class="p">:</span><span·class="nc">fe17</span><span·class="p">:</span><span·class="ss">bf38</span><span·class="w">
163 ················</span><span·class="p"·data-group-id="7789178790-10">{</span><span·class="mi">16#fe80</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">16#204</span><[·...·truncated·by·diffoscope;·len:·656,·SHA:·ea634dba8ac93fcbfd36197335a2a50f81c278a3f03753cb342c0c3fb14b053a·...·]2-1">)</span><span·class="p">.</span><span·class="w">163 ················</span><span·class="p"·data-group-id="0844426142-10">{</span><span·class="mi">16#fe80</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">16#204</span><[·...·truncated·by·diffoscope;·len:·656,·SHA:·58880834cc79d03548b3117ea94dac1bb319579e59beca8b7a2d8376e1dd5c25·...·]2-1">)</span><span·class="p">.</span><span·class="w">
164 </span><span·class="p"·data-group-id="1679127182-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1679127182-3">{</span><span·class="mi">192</span><span·class="p">,</span><span·class="mi">168</span><span·class="p">,</span><span·class="mi">42</span><sp[·...·truncated·by·diffoscope;·len:·139,·SHA:·06e6c4bd0a0cf4f997b5ae994951897fe0c6b85545b477446e4acdc862c065b1·...·]2-2">}</span><span·class="gp·unselectable">164 </span><span·class="p"·data-group-id="7491971742-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7491971742-3">{</span><span·class="mi">192</span><span·class="p">,</span><span·class="mi">168</span><span·class="p">,</span><span·class="mi">42</span><sp[·...·truncated·by·diffoscope;·len:·139,·SHA:·d630b5c4793027f10b6310356eb8a763a554f04e677786d0c2dacdc0e615752b·...·]2-2">}</span><span·class="gp·unselectable">
165 2&gt;·</span><span·class="nc">inet</span><span·class="p">:</span><span·class="nf">parse_address</span><span·class="p"·data-group-id="1679127182-4">(</span><span·class="s">&quot;::FFFF:192.168.42.2&quot;</span><span·class="p"·data-group-id="1679127182-4">)</span><span·class="p">.</span><span·class="w">165 2&gt;·</span><span·class="nc">inet</span><span·class="p">:</span><span·class="nf">parse_address</span><span·class="p"·data-group-id="7491971742-4">(</span><span·class="s">&quot;::FFFF:192.168.42.2&quot;</span><span·class="p"·data-group-id="7491971742-4">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="p"·data-group-id="1679127182-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1679127182-6">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·cl[·...·truncated·by·diffoscope;·len:·342,·SHA:·49218756d6cce48bd8cc3fca4095be419098e781af12f7b2fee345722793c66f·...·]2-5">}</span></code></pre><h2·id="module-posix-error-codes"·class="section-heading">166 </span><span·class="p"·data-group-id="7491971742-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7491971742-6">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·cl[·...·truncated·by·diffoscope;·len:·342,·SHA:·db51e9baaa45a28dbf986cfd3eb5dddd5f59b692c0c25bddf5c8eecc243fab3a·...·]2-5">}</span></code></pre><h2·id="module-posix-error-codes"·class="section-heading">
167 ··<a·href="#module-posix-error-codes"·class="hover-link">167 ··<a·href="#module-posix-error-codes"·class="hover-link">
168 ····<i·class="ri-link-m"·aria-hidden="true"></i>168 ····<i·class="ri-link-m"·aria-hidden="true"></i>
169 ··</a>169 ··</a>
170 ··<span·class="text"><a·href=""·id="posix-error-codes"></a>·POSIX·Error·Codes</span>170 ··<span·class="text"><a·href=""·id="posix-error-codes"></a>·POSIX·Error·Codes</span>
171 </h2>171 </h2>
172 <ul><li><code·class="inline">e2big</code>·-·Too·long·argument·list</li><li><code·class="inline">eacces</code>·-·Permission·denied</li><li><code·class="inline">eaddrinuse</code>·-·Address·already·in·use</li><li><code·class="inline">eaddrnotavail</code>·-·Cannot·assign·requested·address</li><li><code·class="inline">eadv</code>·-·Advertise·error</li><li><code·class="inline">eafnosupport</code>·-·Address·family·not·supported·by·protocol·family</li><li><code·class="inline">eagain</code>·-·Resource·temporarily·unavailable</li><li><code·class="inline">ealign</code>·-·EALIGN</li><li><code·class="inline">ealready</code>·-·Operation·already·in·progress</li><li><code·class="inline">ebade</code>·-·Bad·exchange·descriptor</li><li><code·class="inline">ebadf</code>·-·Bad·file·number</li><li><code·class="inline">ebadfd</code>·-·File·descriptor·in·bad·state</li><li><code·class="inline">ebadmsg</code>·-·Not·a·data·message</li><li><code·class="inline">ebadr</code>·-·Bad·request·descriptor</li><li><code·class="inline">ebadrpc</code>·-·Bad·RPC·structure</li><li><code·class="inline">ebadrqc</code>·-·Bad·request·code</li><li><code·class="inline">ebadslt</code>·-·Invalid·slot</li><li><code·class="inline">ebfont</code>·-·Bad·font·file·format</li><li><code·class="inline">ebusy</code>·-·File·busy</li><li><code·class="inline">echild</code>·-·No·children</li><li><code·class="inline">echrng</code>·-·Channel·number·out·of·range</li><li><code·class="inline">ecomm</code>·-·Communication·error·on·send</li><li><code·class="inline">econnaborted</code>·-·Software·caused·connection·abort</li><li><code·class="inline">econnrefused</code>·-·Connection·refused</li><li><code·class="inline">econnreset</code>·-·Connection·reset·by·peer</li><li><code·class="inline">edeadlk</code>·-·Resource·deadlock·avoided</li><li><code·class="inline">edeadlock</code>·-·Resource·deadlock·avoided</li><li><code·class="inline">edestaddrreq</code>·-·Destination·address·required</li><li><code·class="inline">edirty</code>·-·Mounting·a·dirty·fs·without·force</li><li><code·class="inline">edom</code>·-·Math·argument·out·of·range</li><li><code·class="inline">edotdot</code>·-·Cross·mount·point</li><li><code·class="inline">edquot</code>·-·Disk·quota·exceeded</li><li><code·class="inline">eduppkg</code>·-·Duplicate·package·name</li><li><code·class="inline">eexist</code>·-·File·already·exists</li><li><code·class="inline">efault</code>·-·Bad·address·in·system·call·argument</li><li><code·class="inline">efbig</code>·-·File·too·large</li><li><code·class="inline">ehostdown</code>·-·Host·is·down</li><li><code·class="inline">ehostunreach</code>·-·Host·is·unreachable</li><li><code·class="inline">eidrm</code>·-·Identifier·removed</li><li><code·class="inline">einit</code>·-·Initialization·error</li><li><code·class="inline">einprogress</code>·-·Operation·now·in·progress</li><li><code·class="inline">eintr</code>·-·Interrupted·system·call</li><li><code·class="inline">einval</code>·-·Invalid·argument</li><li><code·class="inline">eio</code>·-·I/O·error</li><li><code·class="inline">eisconn</code>·-·Socket·is·already·connected</li><li><code·class="inline">eisdir</code>·-·Illegal·operation·on·a·directory</li><li><code·class="inline">eisnam</code>·-·Is·a·named·file</li><li><code·class="inline">el2hlt</code>·-·Level·2·halted</li><li><code·class="inline">el2nsync</code>·-·Level·2·not·synchronized</li><li><code·class="inline">el3hlt</code>·-·Level·3·halted</li><li><code·class="inline">el3rst</code>·-·Level·3·reset</li><li><code·class="inline">elbin</code>·-·ELBIN</li><li><code·class="inline">elibacc</code>·-·Cannot·access·a·needed·shared·library</li><li><code·class="inline">elibbad</code>·-·Accessing·a·corrupted·shared·library</li><li><code·class="inline">elibexec</code>·-·Cannot·exec·a·shared·library·directly</li><li><code·class="inline">elibmax</code>·-·Attempting·to·link·in·more·shared·libraries·than·system·limit</li><li><code·class="inline">elibscn</code>·-·<code·class="inline">.lib</code>·section·in·<code·class="inline">a.out</code>·corrupted</li><li><code·class="inline">elnrng</code>·-·Link·number·out·of·range</li><li><code·class="inline">eloop</code>·-·Too·many·levels·of·symbolic·links</li><li><code·class="inline">emfile</code>·-·Too·many·open·files</li><li><code·class="inline">emlink</code>·-·Too·many·links</li><li><code·class="inline">emsgsize</code>·-·Message·too·long</li><li><code·class="inline">emultihop</code>·-·Multihop·attempted</li><li><code·class="inline">enametoolong</code>·-·Filename·too·long</li><li><code·class="inline">enavail</code>·-·Unavailable</li><li><code·class="inline">enet</code>·-·ENET</li><li><code·class="inline">enetdown</code>·-·Network·is·down</li><li><code·class="inline">enetreset</code>·-·Network·dropped·connection·on·reset</li><li><code·class="inline">enetunreach</code>·-·Network·is·unreachable</li><li><code·class="inline">enfile</code>·-·File·table·overflow</li><li><code·class="inline">enoano</code>·-·Anode·table·overflow</li><li><code·class="inline">enobufs</code>·-·No·buffer·space·available</li><li><code·class="inline">enocsi</code>·-·No·CSI·structure·available</li><li><code·class="inline">enodata</code>·-·No·data·available</li><li><code·class="inline">enodev</code>·-·No·such·device</li><li><code·class="inline">enoent</code>·-·No·such·file·or·directory</li><li><code·class="inline">enoexec</code>·-·Exec·format·error</li><li><code·class="inline">enolck</code>·-·No·locks·available</li><li><code·class="inline">enolink</code>·-·Link·has·been·severed</li><li><code·class="inline">enomem</code>·-·Not·enough·memory</li><li><code·class="inline">enomsg</code>·-·No·message·of·desired·type</li><li><code·class="inline">enonet</code>·-·Machine·is·not·on·the·network</li><li><code·class="inline">enopkg</code>·-·Package·not·installed</li><li><code·class="inline">enoprotoopt</code>·-·Bad·protocol·option</li><li><code·class="inline">enospc</code>·-·No·space·left·on·device</li><li><code·class="inline">enosr</code>·-·Out·of·stream·resources·or·not·a·stream·device</li><li><code·class="inline">enosym</code>·-·Unresolved·symbol·name</li><li><code·class="inline">enosys</code>·-·Function·not·implemented</li><li><code·class="inline">enotblk</code>·-·Block·device·required</li><li><code·class="inline">enotconn</code>·-·Socket·is·not·connected</li><li><code·class="inline">enotdir</code>·-·Not·a·directory</li><li><code·class="inline">enotempty</code>·-·Directory·not·empty</li><li><code·class="inline">enotnam</code>·-·Not·a·named·file</li><li><code·class="inline">enotsock</code>·-·Socket·operation·on·non-socket</li><li><code·class="inline">enotsup</code>·-·Operation·not·supported</li><li><code·class="inline">enotty</code>·-·Inappropriate·device·for·<code·class="inline">ioctl</code></li><li><code·class="inline">enotuniq</code>·-·Name·not·unique·on·network</li><li><code·class="inline">enxio</code>·-·No·such·device·or·address</li><li><code·class="inline">eopnotsupp</code>·-·Operation·not·supported·on·socket</li><li><code·class="inline">eperm</code>·-·Not·owner</li><li><code·class="inline">epfnosupport</code>·-·Protocol·family·not·supported</li><li><code·class="inline">epipe</code>·-·Broken·pipe</li><li><code·class="inline">eproclim</code>·-·Too·many·processes</li><li><code·class="inline">eprocunavail</code>·-·Bad·procedure·for·program</li><li><code·class="inline">eprogmismatch</code>·-·Wrong·program·version</li><li><code·class="inline">eprogunavail</code>·-·RPC·program·unavailable</li><li><code·class="inline">eproto</code>·-·Protocol·error</li><li><code·class="inline">eprotonosupport</code>·-·Protocol·not·supported</li><li><code·class="inline">eprototype</code>·-·Wrong·protocol·type·for·socket</li><li><code·class="inline">erange</code>·-·Math·result·unrepresentable</li><li><code·class="inline">erefused</code>·-·EREFUSED</li><li><code·class="inline">eremchg</code>·-·Remote·address·changed</li><li><code·class="inline">eremdev</code>·-·Remote·device</li><li><code·class="inline">eremote</code>·-·Pathname·hit·remote·filesystem</li><li><code·class="inline">eremoteio</code>·-·Remote·I/O·error</li><li><code·class="inline">eremoterelease</code>·-·EREMOTERELEASE</li><li><code·class="inline">erofs</code>·-·Read-only·filesystem</li><li><code·class="inline">erpcmismatch</code>·-·Wrong·RPC·version</li><li><code·class="inline">erremote</code>·-·Object·is·remote</li><li><code·class="inline">eshutdown</code>·-·Cannot·send·after·socket·shutdown</li><li><code·class="inline">esocktnosupport</code>·-·Socket·type·not·supported</li><li><code·class="inline">espipe</code>·-·Invalid·seek</li><li><code·class="inline">esrch</code>·-·No·such·process</li><li><code·class="inline">esrmnt</code>·-·Srmount·error</li><li><code·class="inline">estale</code>·-·Stale·remote·file·handle</li><li><code·class="inline">esuccess</code>·-·Error·0</li><li><code·class="inline">etime</code>·-·Timer·expired</li><li><code·class="inline">etimedout</code>·-·Connection·timed·out</li><li><code·class="inline">etoomanyrefs</code>·-·Too·many·references</li><li><code·class="inline">etxtbsy</code>·-·Text·file·or·pseudo-device·busy</li><li><code·class="inline">euclean</code>·-·Structure·needs·cleaning</li><li><code·class="inline">eunatch</code>·-·Protocol·driver·not·attached</li><li><code·class="inline">eusers</code>·-·Too·many·users</li><li><code·class="inline">eversion</code>·-·Version·mismatch</li><li><code·class="inline">ewouldblock</code>·-·Operation·would·block</li><li><code·class="inline">exdev</code>·-·Cross-device·link</li><li><code·class="inline">exfull</code>·-·Message·tables·full</li><li><code·class="inline">nxdomain</code>·-·Hostname·or·domain·name·cannot·be·found</li></ul>172 <ul><li><code·class="inline">e2big</code>·-·Too·long·argument·list</li><li><code·class="inline">eacces</code>·-·Permission·denied</li><li><code·class="inline">eaddrinuse</code>·-·Address·already·in·use</li><li><code·class="inline">eaddrnotavail</code>·-·Cannot·assign·requested·address</li><li><code·class="inline">eadv</code>·-·Advertise·error</li><li><code·class="inline">eafnosupport</code>·-·Address·family·not·supported·by·protocol·family</li><li><code·class="inline">eagain</code>·-·Resource·temporarily·unavailable</li><li><code·class="inline">ealign</code>·-·EALIGN</li><li><code·class="inline">ealready</code>·-·Operation·already·in·progress</li><li><code·class="inline">ebade</code>·-·Bad·exchange·descriptor</li><li><code·class="inline">ebadf</code>·-·Bad·file·number</li><li><code·class="inline">ebadfd</code>·-·File·descriptor·in·bad·state</li><li><code·class="inline">ebadmsg</code>·-·Not·a·data·message</li><li><code·class="inline">ebadr</code>·-·Bad·request·descriptor</li><li><code·class="inline">ebadrpc</code>·-·Bad·RPC·structure</li><li><code·class="inline">ebadrqc</code>·-·Bad·request·code</li><li><code·class="inline">ebadslt</code>·-·Invalid·slot</li><li><code·class="inline">ebfont</code>·-·Bad·font·file·format</li><li><code·class="inline">ebusy</code>·-·File·busy</li><li><code·class="inline">echild</code>·-·No·children</li><li><code·class="inline">echrng</code>·-·Channel·number·out·of·range</li><li><code·class="inline">ecomm</code>·-·Communication·error·on·send</li><li><code·class="inline">econnaborted</code>·-·Software·caused·connection·abort</li><li><code·class="inline">econnrefused</code>·-·Connection·refused</li><li><code·class="inline">econnreset</code>·-·Connection·reset·by·peer</li><li><code·class="inline">edeadlk</code>·-·Resource·deadlock·avoided</li><li><code·class="inline">edeadlock</code>·-·Resource·deadlock·avoided</li><li><code·class="inline">edestaddrreq</code>·-·Destination·address·required</li><li><code·class="inline">edirty</code>·-·Mounting·a·dirty·fs·without·force</li><li><code·class="inline">edom</code>·-·Math·argument·out·of·range</li><li><code·class="inline">edotdot</code>·-·Cross·mount·point</li><li><code·class="inline">edquot</code>·-·Disk·quota·exceeded</li><li><code·class="inline">eduppkg</code>·-·Duplicate·package·name</li><li><code·class="inline">eexist</code>·-·File·already·exists</li><li><code·class="inline">efault</code>·-·Bad·address·in·system·call·argument</li><li><code·class="inline">efbig</code>·-·File·too·large</li><li><code·class="inline">ehostdown</code>·-·Host·is·down</li><li><code·class="inline">ehostunreach</code>·-·Host·is·unreachable</li><li><code·class="inline">eidrm</code>·-·Identifier·removed</li><li><code·class="inline">einit</code>·-·Initialization·error</li><li><code·class="inline">einprogress</code>·-·Operation·now·in·progress</li><li><code·class="inline">eintr</code>·-·Interrupted·system·call</li><li><code·class="inline">einval</code>·-·Invalid·argument</li><li><code·class="inline">eio</code>·-·I/O·error</li><li><code·class="inline">eisconn</code>·-·Socket·is·already·connected</li><li><code·class="inline">eisdir</code>·-·Illegal·operation·on·a·directory</li><li><code·class="inline">eisnam</code>·-·Is·a·named·file</li><li><code·class="inline">el2hlt</code>·-·Level·2·halted</li><li><code·class="inline">el2nsync</code>·-·Level·2·not·synchronized</li><li><code·class="inline">el3hlt</code>·-·Level·3·halted</li><li><code·class="inline">el3rst</code>·-·Level·3·reset</li><li><code·class="inline">elbin</code>·-·ELBIN</li><li><code·class="inline">elibacc</code>·-·Cannot·access·a·needed·shared·library</li><li><code·class="inline">elibbad</code>·-·Accessing·a·corrupted·shared·library</li><li><code·class="inline">elibexec</code>·-·Cannot·exec·a·shared·library·directly</li><li><code·class="inline">elibmax</code>·-·Attempting·to·link·in·more·shared·libraries·than·system·limit</li><li><code·class="inline">elibscn</code>·-·<code·class="inline">.lib</code>·section·in·<code·class="inline">a.out</code>·corrupted</li><li><code·class="inline">elnrng</code>·-·Link·number·out·of·range</li><li><code·class="inline">eloop</code>·-·Too·many·levels·of·symbolic·links</li><li><code·class="inline">emfile</code>·-·Too·many·open·files</li><li><code·class="inline">emlink</code>·-·Too·many·links</li><li><code·class="inline">emsgsize</code>·-·Message·too·long</li><li><code·class="inline">emultihop</code>·-·Multihop·attempted</li><li><code·class="inline">enametoolong</code>·-·Filename·too·long</li><li><code·class="inline">enavail</code>·-·Unavailable</li><li><code·class="inline">enet</code>·-·ENET</li><li><code·class="inline">enetdown</code>·-·Network·is·down</li><li><code·class="inline">enetreset</code>·-·Network·dropped·connection·on·reset</li><li><code·class="inline">enetunreach</code>·-·Network·is·unreachable</li><li><code·class="inline">enfile</code>·-·File·table·overflow</li><li><code·class="inline">enoano</code>·-·Anode·table·overflow</li><li><code·class="inline">enobufs</code>·-·No·buffer·space·available</li><li><code·class="inline">enocsi</code>·-·No·CSI·structure·available</li><li><code·class="inline">enodata</code>·-·No·data·available</li><li><code·class="inline">enodev</code>·-·No·such·device</li><li><code·class="inline">enoent</code>·-·No·such·file·or·directory</li><li><code·class="inline">enoexec</code>·-·Exec·format·error</li><li><code·class="inline">enolck</code>·-·No·locks·available</li><li><code·class="inline">enolink</code>·-·Link·has·been·severed</li><li><code·class="inline">enomem</code>·-·Not·enough·memory</li><li><code·class="inline">enomsg</code>·-·No·message·of·desired·type</li><li><code·class="inline">enonet</code>·-·Machine·is·not·on·the·network</li><li><code·class="inline">enopkg</code>·-·Package·not·installed</li><li><code·class="inline">enoprotoopt</code>·-·Bad·protocol·option</li><li><code·class="inline">enospc</code>·-·No·space·left·on·device</li><li><code·class="inline">enosr</code>·-·Out·of·stream·resources·or·not·a·stream·device</li><li><code·class="inline">enosym</code>·-·Unresolved·symbol·name</li><li><code·class="inline">enosys</code>·-·Function·not·implemented</li><li><code·class="inline">enotblk</code>·-·Block·device·required</li><li><code·class="inline">enotconn</code>·-·Socket·is·not·connected</li><li><code·class="inline">enotdir</code>·-·Not·a·directory</li><li><code·class="inline">enotempty</code>·-·Directory·not·empty</li><li><code·class="inline">enotnam</code>·-·Not·a·named·file</li><li><code·class="inline">enotsock</code>·-·Socket·operation·on·non-socket</li><li><code·class="inline">enotsup</code>·-·Operation·not·supported</li><li><code·class="inline">enotty</code>·-·Inappropriate·device·for·<code·class="inline">ioctl</code></li><li><code·class="inline">enotuniq</code>·-·Name·not·unique·on·network</li><li><code·class="inline">enxio</code>·-·No·such·device·or·address</li><li><code·class="inline">eopnotsupp</code>·-·Operation·not·supported·on·socket</li><li><code·class="inline">eperm</code>·-·Not·owner</li><li><code·class="inline">epfnosupport</code>·-·Protocol·family·not·supported</li><li><code·class="inline">epipe</code>·-·Broken·pipe</li><li><code·class="inline">eproclim</code>·-·Too·many·processes</li><li><code·class="inline">eprocunavail</code>·-·Bad·procedure·for·program</li><li><code·class="inline">eprogmismatch</code>·-·Wrong·program·version</li><li><code·class="inline">eprogunavail</code>·-·RPC·program·unavailable</li><li><code·class="inline">eproto</code>·-·Protocol·error</li><li><code·class="inline">eprotonosupport</code>·-·Protocol·not·supported</li><li><code·class="inline">eprototype</code>·-·Wrong·protocol·type·for·socket</li><li><code·class="inline">erange</code>·-·Math·result·unrepresentable</li><li><code·class="inline">erefused</code>·-·EREFUSED</li><li><code·class="inline">eremchg</code>·-·Remote·address·changed</li><li><code·class="inline">eremdev</code>·-·Remote·device</li><li><code·class="inline">eremote</code>·-·Pathname·hit·remote·filesystem</li><li><code·class="inline">eremoteio</code>·-·Remote·I/O·error</li><li><code·class="inline">eremoterelease</code>·-·EREMOTERELEASE</li><li><code·class="inline">erofs</code>·-·Read-only·filesystem</li><li><code·class="inline">erpcmismatch</code>·-·Wrong·RPC·version</li><li><code·class="inline">erremote</code>·-·Object·is·remote</li><li><code·class="inline">eshutdown</code>·-·Cannot·send·after·socket·shutdown</li><li><code·class="inline">esocktnosupport</code>·-·Socket·type·not·supported</li><li><code·class="inline">espipe</code>·-·Invalid·seek</li><li><code·class="inline">esrch</code>·-·No·such·process</li><li><code·class="inline">esrmnt</code>·-·Srmount·error</li><li><code·class="inline">estale</code>·-·Stale·remote·file·handle</li><li><code·class="inline">esuccess</code>·-·Error·0</li><li><code·class="inline">etime</code>·-·Timer·expired</li><li><code·class="inline">etimedout</code>·-·Connection·timed·out</li><li><code·class="inline">etoomanyrefs</code>·-·Too·many·references</li><li><code·class="inline">etxtbsy</code>·-·Text·file·or·pseudo-device·busy</li><li><code·class="inline">euclean</code>·-·Structure·needs·cleaning</li><li><code·class="inline">eunatch</code>·-·Protocol·driver·not·attached</li><li><code·class="inline">eusers</code>·-·Too·many·users</li><li><code·class="inline">eversion</code>·-·Version·mismatch</li><li><code·class="inline">ewouldblock</code>·-·Operation·would·block</li><li><code·class="inline">exdev</code>·-·Cross-device·link</li><li><code·class="inline">exfull</code>·-·Message·tables·full</li><li><code·class="inline">nxdomain</code>·-·Hostname·or·domain·name·cannot·be·found</li></ul>
173 ····</section>173 ····</section>
Offset 961, 15 lines modifiedOffset 961, 15 lines modified
961 ···················h_addrtype·::·inet·|·inet6,961 ···················h_addrtype·::·inet·|·inet6,
962 ···················h_length·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),962 ···················h_length·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),
963 ···················h_addr_list·::·[<a·href="inet.html#t:ip_address/0">inet:ip_address</a>()]}.</pre>963 ···················h_addr_list·::·[<a·href="inet.html#t:ip_address/0">inet:ip_address</a>()]}.</pre>
  
964 ······</div>964 ······</div>
  
965 <p>A·record·describing·a·host;·name·and·address.</p><p>Corresponds·to·the·<code·class="inline">C</code>:·<code·class="inline">struct hostent</code>·as·returned·by·for·example965 <p>A·record·describing·a·host;·name·and·address.</p><p>Corresponds·to·the·<code·class="inline">C</code>:·<code·class="inline">struct hostent</code>·as·returned·by·for·example
966 <code·class="inline">gethostbyname(3)</code>.</p><p>The·record·is·defined·in·the·Kernel·include·file·<code·class="inline">&quot;inet.hrl&quot;</code>.</p><p>Add·the·following·directive·to·the·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="9247759043-1">(</span><span·class="s">&quot;kernel/include/inet.hrl&quot;</span><span·class="p"·data-group-id="9247759043-1">)</span><span·class="p">.</span></code></pre>966 <code·class="inline">gethostbyname(3)</code>.</p><p>The·record·is·defined·in·the·Kernel·include·file·<code·class="inline">&quot;inet.hrl&quot;</code>.</p><p>Add·the·following·directive·to·the·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="8280621884-1">(</span><span·class="s">&quot;kernel/include/inet.hrl&quot;</span><span·class="p"·data-group-id="8280621884-1">)</span><span·class="p">.</span></code></pre>
967 ··</section>967 ··</section>
968 </section>968 </section>
969 <section·class="detail"·id="t:hostname/0">969 <section·class="detail"·id="t:hostname/0">
  
970 ··<div·class="detail-header">970 ··<div·class="detail-header">
971 ····<a·href="#t:hostname/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">971 ····<a·href="#t:hostname/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">
972 ······<i·class="ri-link-m"·aria-hidden="true"></i>972 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 2124, 16 lines modifiedOffset 2124, 16 lines modified
2124 coded·in·native·endianness.</p><p>Asking·for·and·inspecting·raw·socket·options·require·low-level·information·about2124 coded·in·native·endianness.</p><p>Asking·for·and·inspecting·raw·socket·options·require·low-level·information·about
2125 the·current·operating·system·and·TCP·stack.</p><p><em>Example:</em></p><p>Consider·a·Linux·machine·where·option·<code·class="inline">TCP_INFO</code>·can·be·used·to·collect·TCP2125 the·current·operating·system·and·TCP·stack.</p><p><em>Example:</em></p><p>Consider·a·Linux·machine·where·option·<code·class="inline">TCP_INFO</code>·can·be·used·to·collect·TCP
2126 statistics·for·a·socket.·Assume·you·are·interested·in·field·<code·class="inline">tcpi_sacked</code>·of2126 statistics·for·a·socket.·Assume·you·are·interested·in·field·<code·class="inline">tcpi_sacked</code>·of
2127 <code·class="inline">struct·tcp_info</code>·filled·in·when·asking·for·<code·class="inline">TCP_INFO</code>.·To·be·able·to·access2127 <code·class="inline">struct·tcp_info</code>·filled·in·when·asking·for·<code·class="inline">TCP_INFO</code>.·To·be·able·to·access
2128 this·information,·you·need·to·know·the·following:</p><ul><li>The·numeric·value·of·protocol·level·<code·class="inline">IPPROTO_TCP</code></li><li>The·numeric·value·of·option·<code·class="inline">TCP_INFO</code></li><li>The·size·of·<code·class="inline">struct·tcp_info</code></li><li>The·size·and·offset·of·the·specific·field</li></ul><p>By·inspecting·the·headers·or·writing·a·small·C·program,·it·is·found·that2128 this·information,·you·need·to·know·the·following:</p><ul><li>The·numeric·value·of·protocol·level·<code·class="inline">IPPROTO_TCP</code></li><li>The·numeric·value·of·option·<code·class="inline">TCP_INFO</code></li><li>The·size·of·<code·class="inline">struct·tcp_info</code></li><li>The·size·and·offset·of·the·specific·field</li></ul><p>By·inspecting·the·headers·or·writing·a·small·C·program,·it·is·found·that
2129 <code·class="inline">IPPROTO_TCP</code>·is·6,·<code·class="inline">TCP_INFO</code>·is·11,·the·structure·size·is·92·(bytes),·the2129 <code·class="inline">IPPROTO_TCP</code>·is·6,·<code·class="inline">TCP_INFO</code>·is·11,·the·structure·size·is·92·(bytes),·the
2130 offset·of·<code·class="inline">tcpi_sacked</code>·is·28·bytes,·and·the·value·is·a·32-bit·integer.·The2130 offset·of·<code·class="inline">tcpi_sacked</code>·is·28·bytes,·and·the·value·is·a·32-bit·integer.·The
2131 following·code·can·be·used·to·retrieve·the·value:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">get_tcpi_sacked</span><span·class="p"·data-group-id="0833523114-1">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0833523114-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
2132 ····</span><span·class="p"·data-group-id="0833523114-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0833523114-3">[</span><span·class="p"·data-group-id="0833523114-4">{</span><span·class="ss">raw</span><span·cla[·...·truncated·by·diffoscope;·len:·1014,·SHA:·cd024953d7ee978a61c4035d37eb0ea065ed06fb072e006a9e4835d06e1eef16·...·]</span><span·class="w">2131 following·code·can·be·used·to·retrieve·the·value:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">get_tcpi_sacked</span><span·class="p"·data-group-id="4307593069-1">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="43075[·...·truncated·by·diffoscope;·len:·62,·SHA:·9eef6a15bd284b7a0fc201a08f0f6c1047a815e541d946d4d4fb0df1d90b0da5·...·]</span><span·class="w">
 2132 ····</span><span·class="p"·data-group-id="4307593069-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4307593069-3">[</span><span·class="p"·data-group-id="4307593069-4">{</span><span·class="ss">raw</span><span·class="p">,</span><span·class="p">_</span><span·class="p">,</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Info</span><span·class="p"·data-group-id="4307593069-4">}</span><span·class="p"·data-group-id="4307593069-3">]</span><span·class="p"·data-group-id="4307593069-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">inet</span><span·class="p">:</span><span·class="nf">getopts</span><span·class="p"·data-group-id="4307593069-5">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="p"·data-group-id="4307593069-6">[</span><span·class="p"·data-group-id="4307593069-7">{</span><span·class="ss">raw</span><span·class="p">,</span><span·class="mi">6</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">92</span><span·class="p"·data-group-id="4307593069-7">}</span><span·class="p"·data-group-id="4307593069-6">]</span><span·class="p"·data-group-id="4307593069-5">)</span><span·class="p">,</span><span·class="w">
2133 ····</span><span·class="p">&lt;&lt;</span><span·class="p">_</span><span·class="p">:</span><span·class="mi">28</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">TcpiSacked</span><span·class="p">:</span><span·class="mi">32</span><span·class="o">/</span><span·class="ss">native</span><span·class="p">,</span><span·class="p">_</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">2133 ····</span><span·class="p">&lt;&lt;</span><span·class="p">_</span><span·class="p">:</span><span·class="mi">28</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="n">TcpiSacked</span><span·class="p">:</span><span·class="mi">32</span><span·class="o">/</span><span·class="ss">native</span><span·class="p">,</span><span·class="p">_</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">
2134 ····</span><span·class="n">TcpiSacked</span><span·class="p">.</span></code></pre><p>Preferably,·you·would·check·the·machine·type,·the·operating·system,·and·the2134 ····</span><span·class="n">TcpiSacked</span><span·class="p">.</span></code></pre><p>Preferably,·you·would·check·the·machine·type,·the·operating·system,·and·the
2135 Kernel·version·before·executing·anything·similar·to·this·code.</p>2135 Kernel·version·before·executing·anything·similar·to·this·code.</p>
2136 ··</section>2136 ··</section>
2137 </section>2137 </section>
2138 <section·class="detail"·id="getstat/1">2138 <section·class="detail"·id="getstat/1">
  
Offset 2477, 15 lines modifiedOffset 2477, 15 lines modified
2477 ······<div·class="specs">2477 ······<div·class="specs">
  
2478 ··········<pre·translate="no"><span·class="attribute">-spec</span>·monitor(Socket)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0">reference</a>()·when·Socket·::·<a·href="#t:socket/0">socket</a>().</pre>2478 ··········<pre·translate="no"><span·class="attribute">-spec</span>·monitor(Socket)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0">reference</a>()·when·Socket·::·<a·href="#t:socket/0">socket</a>().</pre>
  
2479 ······</div>2479 ······</div>
  
2480 <p>Start·a·socket·monitor.</p><p>If·the·<code·class="inline">Socket</code>·to·monitor·doesn't·exist·or·when·the·monitor·is·triggered,2480 <p>Start·a·socket·monitor.</p><p>If·the·<code·class="inline">Socket</code>·to·monitor·doesn't·exist·or·when·the·monitor·is·triggered,
2481 a·<code·class="inline">'DOWN'</code>·message·is·sent·that·has·the·following·pattern:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»     ····</span><span·class="p"·data-group-id="4110400317-1">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MonitorRef</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·152,·SHA:·4da02411007a1fc4aa0162b68db67fed103f14a5371c9d2613808ea29793d110·...·]-1">}</span></code></pre><ul><li><p><strong><code·class="inline">MonitorRef</code></strong>·-·The·return·value·from·this·function.</p></li><li><p><strong><code·class="inline">Type</code></strong>·-·The·type·of·socket,·can·be·one·of·the·following2481 a·<code·class="inline">'DOWN'</code>·message·is·sent·that·has·the·following·pattern:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»     ····</span><span·class="p"·data-group-id="4329525750-1">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MonitorRef</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·152,·SHA:·fe9bb4527823939501f07b003c83bedcbd361ca47c05bc9d9ca5bc718949036b·...·]-1">}</span></code></pre><ul><li><p><strong><code·class="inline">MonitorRef</code></strong>·-·The·return·value·from·this·function.</p></li><li><p><strong><code·class="inline">Type</code></strong>·-·The·type·of·socket,·can·be·one·of·the·following
2482 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0"><code·class="inline">atom/0</code></a>s:·<code·class="inline">port</code>·or·<code·class="inline">socket</code>.</p></li><li><p><strong><code·class="inline">Object</code></strong>·-·The·monitored·entity,·the·socket,·which·triggered·the·event.</p></li><li><p><strong><code·class="inline">Info</code></strong>·-·Either·the·termination·reason·of·the·socket·or·<code·class="inline">nosock</code>2482 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0"><code·class="inline">atom/0</code></a>s:·<code·class="inline">port</code>·or·<code·class="inline">socket</code>.</p></li><li><p><strong><code·class="inline">Object</code></strong>·-·The·monitored·entity,·the·socket,·which·triggered·the·event.</p></li><li><p><strong><code·class="inline">Info</code></strong>·-·Either·the·termination·reason·of·the·socket·or·<code·class="inline">nosock</code>
2483 (the·<code·class="inline">Socket</code>·did·not·exist·when·this·function·was·called).</p></li></ul><p>Making·several·calls·to·<a·href="#monitor/1"><code·class="inline">inet:monitor/1</code></a>·for·the·same·<code·class="inline">Socket</code>2483 (the·<code·class="inline">Socket</code>·did·not·exist·when·this·function·was·called).</p></li></ul><p>Making·several·calls·to·<a·href="#monitor/1"><code·class="inline">inet:monitor/1</code></a>·for·the·same·<code·class="inline">Socket</code>
2484 is·not·an·error;·one·monitor·is·created·per·call.</p><p>The·monitor·is·triggered·when·the·socket·is·closed·in·any·way·such·as2484 is·not·an·error;·one·monitor·is·created·per·call.</p><p>The·monitor·is·triggered·when·the·socket·is·closed·in·any·way·such·as
2485 an·API·call,·remote·end·close,·closed·by·signal·when·owner·exits,·...</p>2485 an·API·call,·remote·end·close,·closed·by·signal·when·owner·exits,·...</p>
2486 ··</section>2486 ··</section>
2487 </section>2487 </section>
2488 <section·class="detail"·id="ntoa/1">2488 <section·class="detail"·id="ntoa/1">
Offset 3333, 15 lines modifiedOffset 3333, 15 lines modified
3333 ······<p·class="built-using">3333 ······<p·class="built-using">
3334 ········Built·using3334 ········Built·using
3335 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3335 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3336 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3336 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3337 ······</p>3337 ······</p>
3338 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3338 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3339 ····</footer>3339 ····</footer>
3340 ··</div>3340 ··</div>
3341 </main>3341 </main>
3342 </div>3342 </div>
3343 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3343 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3344 <script>3344 <script>
3345 ··document.addEventListener("DOMContentLoaded",·function·()·{3345 ··document.addEventListener("DOMContentLoaded",·function·()·{
755 B
html2text {}
Max HTML report size reached
50.9 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/inet_res.html
    
Offset 175, 23 lines modifiedOffset 175, 23 lines modified
175 <p>The·following·data·types·concern·the·DNS·client:</p><h2·id="module-example"·class="section-heading">175 <p>The·following·data·types·concern·the·DNS·client:</p><h2·id="module-example"·class="section-heading">
176 ··<a·href="#module-example"·class="hover-link">176 ··<a·href="#module-example"·class="hover-link">
177 ····<i·class="ri-link-m"·aria-hidden="true"></i>177 ····<i·class="ri-link-m"·aria-hidden="true"></i>
178 ··</a>178 ··</a>
179 ··<span·class="text">Example</span>179 ··<span·class="text">Example</span>
180 </h2>180 </h2>
181 <p>This·access·functions·example·shows·how·<a·href="#lookup/3"><code·class="inline">lookup/3</code></a>·can·be·implemented·using181 <p>This·access·functions·example·shows·how·<a·href="#lookup/3"><code·class="inline">lookup/3</code></a>·can·be·implemented·using
182 <a·href="#resolve/3"><code·class="inline">resolve/3</code></a>·from·outside·the·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">example_lookup</span><span·class="p"·data-group-id="2029287228-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Class</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p"·data-group-id="2029287228-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">182 <a·href="#resolve/3"><code·class="inline">resolve/3</code></a>·from·outside·the·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">example_lookup</span><span·class="p"·data-group-id="5462007253-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Class</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p"·data-group-id="5462007253-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
183 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">inet_res</span><span·class="p">:</span><span·class="nf">resolve</span><span·class="p"·data-group-id="2029287228-2">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Class</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p"·data-group-id="2029287228-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">183 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">inet_res</span><span·class="p">:</span><span·class="nf">resolve</span><span·class="p"·data-group-id="5462007253-2">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Class</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p"·data-group-id="5462007253-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
184 ········</span><span·class="p"·data-group-id="2029287228-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Msg</span><span·class="p"·data-group-id="2029287228-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">184 ········</span><span·class="p"·data-group-id="5462007253-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Msg</span><span·class="p"·data-group-id="5462007253-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
185 ············</span><span·class="p"·data-group-id="2029287228-4">[</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="2029287228-5">(</span><span·class="n">RR</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">data</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·c119848f7a9e54c4a201a52b6d213900b750dcc6f5eec9b02595234edbf08f0c·...·]-5">)</span><span·class="w">185 ············</span><span·class="p"·data-group-id="5462007253-4">[</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="5462007253-5">(</span><span·class="n">RR</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">data</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·8fa882903be62c9c452d27e0f4dba280cd8345ead8c87e423cbcb3242aa6772e·...·]-5">)</span><span·class="w">
186 ·············</span><span·class="p">||</span><span·class="w">·</span><span·class="n">RR</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">msg</span><span·class="p"·data-group-id="2029287228-6">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">anlist</span><span·class="p"·data-group-id="2029287228-6">)</span><span·class="p">,</span><span·class="w">186 ·············</span><span·class="p">||</span><span·class="w">·</span><span·class="n">RR</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">msg</span><span·class="p"·data-group-id="5462007253-6">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">anlist</span><span·class="p"·data-group-id="5462007253-6">)</span><span·class="p">,</span><span·class="w">
187 ·················</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="2029287228-7">(</span><span·class="n">RR</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">type</span><span·class="p"·data-group-id="2029287228-7">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">187 ·················</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="5462007253-7">(</span><span·class="n">RR</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">type</span><span·class="p"·data-group-id="5462007253-7">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">
188 ·················</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="2029287228-8">(</span><span·class="n">RR</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">class</span><span·class="p"·data-group-id="2029287228-8">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·64,·SHA:·69a669cfb4f481bab6f67d3c2042bda30aa1144e8aa13c0a9c34b22bd67c4c7b·...·]-4">]</span><span·class="p">;</span><span·class="w">188 ·················</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="5462007253-8">(</span><span·class="n">RR</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">class</span><span·class="p"·data-group-id="5462007253-8">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·64,·SHA:·d2ec223323190557dbbc96c96b04e2fa47329cd459dc36dafd6dc40746fc3068·...·]-4">]</span><span·class="p">;</span><span·class="w">
189 ········</span><span·class="p"·data-group-id="2029287228-9">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="2029287228-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">189 ········</span><span·class="p"·data-group-id="5462007253-9">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="5462007253-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
190 ············</span><span·class="p"·data-group-id="2029287228-10">[</span><span·class="p"·data-group-id="2029287228-10">]</span><span·class="w">190 ············</span><span·class="p"·data-group-id="5462007253-10">[</span><span·class="p"·data-group-id="5462007253-10">]</span><span·class="w">
191 ·····</span><span·class="k">end</span><span·class="p">.</span></code></pre>191 ·····</span><span·class="k">end</span><span·class="p">.</span></code></pre>
192 ····</section>192 ····</section>
  
193 </div>193 </div>
  
194 ··<section·id="summary"·class="details-list">194 ··<section·id="summary"·class="details-list">
195 ····<h1·class="section-heading">195 ····<h1·class="section-heading">
Offset 590, 65 lines modifiedOffset 590, 65 lines modified
590 ··········<pre·translate="no"><span·class="attribute">-type</span>·dns_msg()·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>590 ··········<pre·translate="no"><span·class="attribute">-type</span>·dns_msg()·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
591 ······</div>591 ······</div>
  
592 <p>A·DNS·message.</p><p>This·is·the·start·of·a·hierarchy·of·opaque·data·structures·that·can·be592 <p>A·DNS·message.</p><p>This·is·the·start·of·a·hierarchy·of·opaque·data·structures·that·can·be
593 examined·with·access·functions·in·<code·class="inline">inet_dns</code>,·which·return·lists·of593 examined·with·access·functions·in·<code·class="inline">inet_dns</code>,·which·return·lists·of
594 <code·class="inline">{Field,Value}</code>·tuples.·The·arity·2·functions·return·the·value594 <code·class="inline">{Field,Value}</code>·tuples.·The·arity·2·functions·return·the·value
595 for·a·specified·field.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">dns_msg</span><span·class="p"·data-group-id="9236286656-1">(</span><span·class="p"·data-group-id="9236286656-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">DnsMsg</span><span·class="w">595 for·a·specified·field.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">dns_msg</span><span·class="p"·data-group-id="1989088809-1">(</span><span·class="p"·data-group-id="1989088809-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">DnsMsg</span><span·class="w">
596 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">msg</span><span·class="p"·data-group-id="9236286656-2">(</span><span·class="n">DnsMsg</span><span·class="p"·data-group-id="9236286656-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">596 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">msg</span><span·class="p"·data-group-id="1989088809-2">(</span><span·class="n">DnsMsg</span><span·class="p"·data-group-id="1989088809-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
597 ········</span><span·class="p"·data-group-id="9236286656-3">[</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-4">{</span><span·class="ss">header</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_header</span><span·class="p"·data-group-id="9236286656-5">[·...·truncated·by·diffoscope;·len:·102,·SHA:·f07ea3362a835ed72e951ba5fa85810ce42210fcf1d99c5ca8bdfdf94c46dd89·...·]-4">}</span><span·class="w">597 ········</span><span·class="p"·data-group-id="1989088809-3">[</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-4">{</span><span·class="ss">header</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_header</span><span·class="p"·data-group-id="1989088809-5">[·...·truncated·by·diffoscope;·len:·102,·SHA:·7f52c7744fad2b1d8d1dd3a8d28ab0ad4917feda55e6e538d8bcc353044c4e4d·...·]-4">}</span><span·class="w">
598 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-6">{</span><span·class="ss">qdlist</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="9236286656-7">(</span><span·class="p"·data-group-id="9236286656-7">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·4a6871aa4903d8202964d199ee7ea60654dd6009757bbf59e49a98c6093183c0·...·]-6">}</span><span·class="w">598 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-6">{</span><span·class="ss">qdlist</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="1989088809-7">(</span><span·class="p"·data-group-id="1989088809-7">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·7a7a2a689826898f705f161b3a21604a744e7a6d9f559dab6d5176f23d8080f1·...·]-6">}</span><span·class="w">
599 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-8">{</span><span·class="ss">anlist</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="9236286656-9">(</span><span·class="p"·data-group-id="9236286656-9">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·473fae7453060f44418e566537b9db320d0693f03e5e85a32b14ad2da050f68b·...·]-8">}</span><span·class="w">599 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-8">{</span><span·class="ss">anlist</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="1989088809-9">(</span><span·class="p"·data-group-id="1989088809-9">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·86df2a9006fb63aa05d47f41e2d8cd70e0ceda9d3147e73e3a838c9498a94c66·...·]-8">}</span><span·class="w">
600 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-10">{</span><span·class="ss">nslist</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="9236286656-11">(</span><span·class="p"·data-group-id="9236286656-11">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·4a6871aa4903d8202964d199ee7ea60654dd6009757bbf59e49a98c6093183c0·...·]-10">}</span><span·class="w">600 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-10">{</span><span·class="ss">nslist</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="1989088809-11">(</span><span·class="p"·data-group-id="1989088809-11">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·7a7a2a689826898f705f161b3a21604a744e7a6d9f559dab6d5176f23d8080f1·...·]-10">}</span><span·class="w">
601 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-12">{</span><span·class="ss">arlist</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="9236286656-13">(</span><span·class="p"·data-group-id="9236286656-13">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·2784b5ebdc985335f55f06c61805818aeb6e7ac72697a4789b0ec151772deaca·...·]-3">]</span><span·class="w">601 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-12">{</span><span·class="ss">arlist</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="1989088809-13">(</span><span·class="p"·data-group-id="1989088809-13">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·27ead2bf39031aa0fd675507ca4f03fcfe873936f12f646e162af64d9fe3d6c0·...·]-3">]</span><span·class="w">
602 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">msg</span><span·class="p"·data-group-id="9236286656-14">(</span><span·class="n">DnsMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">header</span><span·class="p"·data-group-id="9236286656-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·133,·SHA:·09ed5710803e1ec20811d09dd8f6bc8c77676e10751834c5739ede90b3b945f6·...·]-15">)</span><span·class="w">·</span><span·class="c1">%·for·example</span><span·class="w">602 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">msg</span><span·class="p"·data-group-id="1989088809-14">(</span><span·class="n">DnsMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">header</span><span·class="p"·data-group-id="1989088809-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·133,·SHA:·52ed7a55b717c3a9051652fbe9f801375677a4fe1a975ef5a33e988a961d2b7b·...·]-15">)</span><span·class="w">·</span><span·class="c1">%·for·example</span><span·class="w">
603 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">msg</span><span·class="p"·data-group-id="9236286656-16">(</span><span·class="n">DnsMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Field</span><span·class="p"·data-group-id="9236286656-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Value</span><span·class="w">603 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">msg</span><span·class="p"·data-group-id="1989088809-16">(</span><span·class="n">DnsMsg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Field</span><span·class="p"·data-group-id="1989088809-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Value</span><span·class="w">
  
604 </span><span·class="nf">dns_header</span><span·class="p"·data-group-id="9236286656-17">(</span><span·class="p"·data-group-id="9236286656-17">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">DnsHeader</span><span·class="w">604 </span><span·class="nf">dns_header</span><span·class="p"·data-group-id="1989088809-17">(</span><span·class="p"·data-group-id="1989088809-17">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">DnsHeader</span><span·class="w">
605 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">header</span><span·class="p"·data-group-id="9236286656-18">(</span><span·class="n">DnsHeader</span><span·class="p"·data-group-id="9236286656-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">605 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">header</span><span·class="p"·data-group-id="1989088809-18">(</span><span·class="n">DnsHeader</span><span·class="p"·data-group-id="1989088809-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
606 ········</span><span·class="p"·data-group-id="9236286656-19">[</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-20">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9236286656-21">(</s[·...·truncated·by·diffoscope;·len:·99,·SHA:·bd33b3cc01d194cefc536b1365648ecf18dff816bd1715b7199db2f9e0780f60·...·]-20">}</span><span·class="w">606 ········</span><span·class="p"·data-group-id="1989088809-19">[</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-20">{</span><span·class="ss">id</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1989088809-21">(</s[·...·truncated·by·diffoscope;·len:·99,·SHA:·076929ccdb81278f0fe1ade694a3f40b17a55769781f6b7bc184291cabf30e2b·...·]-20">}</span><span·class="w">
607 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-22">{</span><span·class="ss">qr</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="9236286656-23">(</span><span·class="p"·data-group-id="9236286656-23">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·473fae7453060f44418e566537b9db320d0693f03e5e85a32b14ad2da050f68b·...·]-22">}</span><span·class="w">607 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-22">{</span><span·class="ss">qr</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="1989088809-23">(</span><span·class="p"·data-group-id="1989088809-23">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·86df2a9006fb63aa05d47f41e2d8cd70e0ceda9d3147e73e3a838c9498a94c66·...·]-22">}</span><span·class="w">
608 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-24">{</span><span·class="ss">opcode</span><span·class="p">,</span><span·class="w">·</span><span·class="k">query</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">iquery</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·329,·SHA:·68cad9277f9fdffda0ab0fe4d0c4f27fba7caa85bf7e9ce92cc709c65053959e·...·]-24">}</span><span·class="w">608 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-24">{</span><span·class="ss">opcode</span><span·class="p">,</span><span·class="w">·</span><span·class="k">query</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">iquery</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·329,·SHA:·7fdd92e31fbbb3a0041dd3dc808acf5f9566ad573d191f29aed6cc62c264d792·...·]-24">}</span><span·class="w">
609 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-26">{</span><span·class="ss">aa</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="9236286656-27">(</span><span·class="p"·data-group-id="9236286656-27">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·473fae7453060f44418e566537b9db320d0693f03e5e85a32b14ad2da050f68b·...·]-26">}</span><span·class="w">609 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-26">{</span><span·class="ss">aa</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="1989088809-27">(</span><span·class="p"·data-group-id="1989088809-27">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·86df2a9006fb63aa05d47f41e2d8cd70e0ceda9d3147e73e3a838c9498a94c66·...·]-26">}</span><span·class="w">
610 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-28">{</span><span·class="ss">tc</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="9236286656-29">(</span><span·class="p"·data-group-id="9236286656-29">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·473fae7453060f44418e566537b9db320d0693f03e5e85a32b14ad2da050f68b·...·]-28">}</span><span·class="w">610 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-28">{</span><span·class="ss">tc</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="1989088809-29">(</span><span·class="p"·data-group-id="1989088809-29">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·86df2a9006fb63aa05d47f41e2d8cd70e0ceda9d3147e73e3a838c9498a94c66·...·]-28">}</span><span·class="w">
611 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-30">{</span><span·class="ss">rd</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="9236286656-31">(</span><span·class="p"·data-group-id="9236286656-31">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·473fae7453060f44418e566537b9db320d0693f03e5e85a32b14ad2da050f68b·...·]-30">}</span><span·class="w">611 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-30">{</span><span·class="ss">rd</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="1989088809-31">(</span><span·class="p"·data-group-id="1989088809-31">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·86df2a9006fb63aa05d47f41e2d8cd70e0ceda9d3147e73e3a838c9498a94c66·...·]-30">}</span><span·class="w">
612 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-32">{</span><span·class="ss">ra</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="9236286656-33">(</span><span·class="p"·data-group-id="9236286656-33">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·473fae7453060f44418e566537b9db320d0693f03e5e85a32b14ad2da050f68b·...·]-32">}</span><span·class="w">612 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-32">{</span><span·class="ss">ra</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="1989088809-33">(</span><span·class="p"·data-group-id="1989088809-33">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·86df2a9006fb63aa05d47f41e2d8cd70e0ceda9d3147e73e3a838c9498a94c66·...·]-32">}</span><span·class="w">
613 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-34">{</span><span·class="ss">pr</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="9236286656-35">(</span><span·class="p"·data-group-id="9236286656-35">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·473fae7453060f44418e566537b9db320d0693f03e5e85a32b14ad2da050f68b·...·]-34">}</span><span·class="w">613 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-34">{</span><span·class="ss">pr</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">boolean</span><span·class="p"·data-group-id="1989088809-35">(</span><span·class="p"·data-group-id="1989088809-35">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·86df2a9006fb63aa05d47f41e2d8cd70e0ceda9d3147e73e3a838c9498a94c66·...·]-34">}</span><span·class="w">
614 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-36">{</span><span·class="ss">rcode</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9236286656-37">(</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</spa[·...·truncated·by·diffoscope;·len:·201,·SHA:·ee9a567579da27ca1d4f546e436291bbcfbda220908bf808379ca19962d348b6·...·]-19">]</span><span·class="w">614 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-36">{</span><span·class="ss">rcode</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1989088809-37">(</span><span·class="mi">0</span><span·class="p">.</span><span·class="p">.</spa[·...·truncated·by·diffoscope;·len:·201,·SHA:·6b6e90f639a49c144a1c787726651c8a76d2bfa2d758b9ab18b0297f83a68b87·...·]-19">]</span><span·class="w">
615 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">header</span><span·class="p"·data-group-id="9236286656-38">(</span><span·class="n">DnsHeader</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Field</span><span·class="p"·data-group-id="9236286656-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Value</span><span·class="w">615 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">header</span><span·class="p"·data-group-id="1989088809-38">(</span><span·class="n">DnsHeader</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Field</span><span·class="p"·data-group-id="1989088809-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Value</span><span·class="w">
  
616 </span><span·class="nf">query_type</span><span·class="p"·data-group-id="9236286656-39">(</span><span·class="p"·data-group-id="9236286656-39">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">axfr</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·424,·SHA:·916bf68a961a366c3f391eb87d70e7957c83c6580878d8827129cfc0c0311866·...·]-40">)</span><span·class="w">616 </span><span·class="nf">query_type</span><span·class="p"·data-group-id="1989088809-39">(</span><span·class="p"·data-group-id="1989088809-39">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">axfr</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·424,·SHA:·0f87c5183a013aa7a43a1cad143e5ad6bf04983a1a8c23e8ebec9a4c42e42280·...·]-40">)</span><span·class="w">
  
617 </span><span·class="nf">dns_query</span><span·class="p"·data-group-id="9236286656-41">(</span><span·class="p"·data-group-id="9236286656-41">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">DnsQuery</span><span·class="w">617 </span><span·class="nf">dns_query</span><span·class="p"·data-group-id="1989088809-41">(</span><span·class="p"·data-group-id="1989088809-41">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">DnsQuery</span><span·class="w">
618 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="9236286656-42">(</span><span·class="n">DnsQuery</span><span·class="p"·data-group-id="9236286656-42">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">618 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="1989088809-42">(</span><span·class="n">DnsQuery</span><span·class="p"·data-group-id="1989088809-42">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
619 ········</span><span·class="p"·data-group-id="9236286656-43">[</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-44">{</span><span·class="ss">domain</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_name</span><span·class="p"·data-group-id="9236286656-45"[·...·truncated·by·diffoscope;·len:·104,·SHA:·135923a3d62f4cd60dafe0acad0fc372c17e93ed8341425a251630f14996315f·...·]-44">}</span><span·class="w">619 ········</span><span·class="p"·data-group-id="1989088809-43">[</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-44">{</span><span·class="ss">domain</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_name</span><span·class="p"·data-group-id="1989088809-45"[·...·truncated·by·diffoscope;·len:·104,·SHA:·d07569a01a04a3b9f058d8da0f813a47e2e050dbce1c6a3b6a38009b1d7ab688·...·]-44">}</span><span·class="w">
620 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-46">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">query_type</span><span·class="p"·data-group-id="9236286656-47">(</span><span·class="p"·data-group-id="9236286656-47">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·76c998bf3d609c5c98ec2b5083e9895efb513022a9c0c946f0780ba8385a4941·...·]-46">}</span><span·class="w">620 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-46">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">query_type</span><span·class="p"·data-group-id="1989088809-47">(</span><span·class="p"·data-group-id="1989088809-47">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·6ddba070933f4ce641068cc38fd653a0bb796aff62fe99a54489dee9d31de5df·...·]-46">}</span><span·class="w">
621 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-48">{</span><span·class="ss">class</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_class</span><span·class="p"·data-group-id="9236286656-49">(</span><span·class="p"·data-group-id="9236286656-49">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·104,·SHA:·ffaf93522c269c2c60e3ed3c90945e722cd474be4d3ecd6e0f7eb7f96bda2a5b·...·]-43">]</span><span·class="w">621 ········</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-48">{</span><span·class="ss">class</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_class</span><span·class="p"·data-group-id="1989088809-49">(</span><span·class="p"·data-group-id="1989088809-49">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·104,·SHA:·3a439c95c45b0ffb125d2d65e42874dbce5d54bb75a0f7854c7d37ce87930396·...·]-43">]</span><span·class="w">
622 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="9236286656-50">(</span><span·class="n">DnsQuery</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Field</span><span·class="p"·data-group-id="9236286656-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Value</span><span·class="w">622 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="1989088809-50">(</span><span·class="n">DnsQuery</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Field</span><span·class="p"·data-group-id="1989088809-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Value</span><span·class="w">
  
623 </span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="9236286656-51">(</span><span·class="p"·data-group-id="9236286656-51">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">DnsRr</span><span·class="w">623 </span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="1989088809-51">(</span><span·class="p"·data-group-id="1989088809-51">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">DnsRr</span><span·class="w">
624 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="9236286656-52">(</span><span·class="n">DnsRr</span><span·class="p"·data-group-id="9236286656-52">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">DnsRrFields</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">DnsRrOptFields</span><span·class="w">624 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="1989088809-52">(</span><span·class="n">DnsRr</span><span·class="p"·data-group-id="1989088809-52">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">DnsRrFields</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">DnsRrOptFields</span><span·class="w">
625 ····</span><span·class="n">DnsRrFields</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-53">[</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-54">{</span><span·class="ss">domain</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_name</span><span·class="p"·data-group-id="9236286656-55"[·...·truncated·by·diffoscope;·len:·104,·SHA:·82af057dfc7fabf1aea2813ec3f46237e3d1183e68cf8bcc3ecebc044881a61f·...·]-54">}</span><span·class="w">625 ····</span><span·class="n">DnsRrFields</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-53">[</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-54">{</span><span·class="ss">domain</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_name</span><span·class="p"·data-group-id="1989088809-55"[·...·truncated·by·diffoscope;·len:·104,·SHA:·dbaa13170ad90c13850004c95bcf3d2819b9f6232549ced50d2b350c6946a225·...·]-54">}</span><span·class="w">
626 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-56">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_rr_type</span><span·class="p"·data-group-id="9236286656-57">(</span><span·class="p"·data-group-id="9236286656-57">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·4dd4dd4d774a112e3f34f572b7452b4b29d919c8e32ef11810bdf40b896ec74e·...·]-56">}</span><span·class="w">626 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-56">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_rr_type</span><span·class="p"·data-group-id="1989088809-57">(</span><span·class="p"·data-group-id="1989088809-57">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·4aa65ac6bf5fe184e5797bc75edf7af33b29772d2c4d30e609e6849189c7d1f5·...·]-56">}</span><span·class="w">
627 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-58">{</span><span·class="ss">class</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_class</span><span·class="p"·data-group-id="9236286656-59">(</span><span·class="p"·data-group-id="9236286656-59">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·76c998bf3d609c5c98ec2b5083e9895efb513022a9c0c946f0780ba8385a4941·...·]-58">}</span><span·class="w">627 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-58">{</span><span·class="ss">class</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_class</span><span·class="p"·data-group-id="1989088809-59">(</span><span·class="p"·data-group-id="1989088809-59">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·6ddba070933f4ce641068cc38fd653a0bb796aff62fe99a54489dee9d31de5df·...·]-58">}</span><span·class="w">
628 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-60">{</span><span·class="ss">ttl</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9236286656-61">(</span><span·class="p"·data-group-id="9236286656-61">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·b1253a0068b8404c7bd0dd7916417821e3ed6d0e47d8cd5e513e9535f07232d9·...·]-60">}</span><span·class="w">628 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-60">{</span><span·class="ss">ttl</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1989088809-61">(</span><span·class="p"·data-group-id="1989088809-61">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·93db353a9d4a6f49823cbf049f0d43ba342453839b205e358c0632f80a186775·...·]-60">}</span><span·class="w">
629 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-62">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_data</span><span·class="p"·data-group-id="9236286656-63">(</span><span·class="p"·data-group-id="9236286656-63">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·c04ba00efd460dc698d4ab125d3814fe4953479c31dbfe6733b8965c90ffba44·...·]-53">]</span><span·class="w">629 ··················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-62">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_data</span><span·class="p"·data-group-id="1989088809-63">(</span><span·class="p"·data-group-id="1989088809-63">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·8d350cb8f526911cc8374ab870eb01b634a30358401ebb9a2a41cef8ec4b57de·...·]-53">]</span><span·class="w">
630 ····</span><span·class="n">DnsRrOptFields</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-64">[</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-65">{</span><span·class="ss">domain</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_name</span><span·class="p"·data-group-id="9236286656-66"[·...·truncated·by·diffoscope;·len:·104,·SHA:·1d05bd4e811d22267cdcac9402c08979035a184e134d6c2e5a1b2a3359298806·...·]-65">}</span><span·class="w">630 ····</span><span·class="n">DnsRrOptFields</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-64">[</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-65">{</span><span·class="ss">domain</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_name</span><span·class="p"·data-group-id="1989088809-66"[·...·truncated·by·diffoscope;·len:·104,·SHA:·d9534c108fe67142132d4d813801798cf01a2a4dc84c1b357cd835cc5e4cb07d·...·]-65">}</span><span·class="w">
631 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-67">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">opt</span><span·class="p"·data-group-id="9236286656-67">}</span><span·class="w">631 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-67">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">opt</span><span·class="p"·data-group-id="1989088809-67">}</span><span·class="w">
632 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-68">{</span><span·class="ss">udp_payload_size</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9236286656-69">(</span><span·class="p"·data-group-id="9236286656-69">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·57548ed754e29c3003e4b6bc663405e4cab966a64c239ad0ce2149798ce9c22a·...·]-68">}</span><span·class="w">632 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-68">{</span><span·class="ss">udp_payload_size</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1989088809-69">(</span><span·class="p"·data-group-id="1989088809-69">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·a83be15d0b31b2c13d519bec3080d8c68894a1533cc797a6e33805ccfbb8ca2a·...·]-68">}</span><span·class="w">
633 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-70">{</span><span·class="ss">ext_rcode</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9236286656-71">(</span><span·class="p"·data-group-id="9236286656-71">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·27f597ffb2d942d59642ae10a40a27f5c142704ca2f86f87c9e85b858c8ae88f·...·]-70">}</span><span·class="w">633 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-70">{</span><span·class="ss">ext_rcode</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1989088809-71">(</span><span·class="p"·data-group-id="1989088809-71">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·454e5bb2505cee1d322e547418bf4a470b71cf5b2a646b51045a600a3a6eb75a·...·]-70">}</span><span·class="w">
634 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-72">{</span><span·class="ss">version</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9236286656-73">(</span><span·class="p"·data-group-id="9236286656-73">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·76c998bf3d609c5c98ec2b5083e9895efb513022a9c0c946f0780ba8385a4941·...·]-72">}</span><span·class="w">634 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-72">{</span><span·class="ss">version</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1989088809-73">(</span><span·class="p"·data-group-id="1989088809-73">)</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·6ddba070933f4ce641068cc38fd653a0bb796aff62fe99a54489dee9d31de5df·...·]-72">}</span><span·class="w">
635 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-74">{</span><span·class="ss">z</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="9236286656-75">(</span><span·class="p"·data-group-id="9236286656-75">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·d98425a336a7dbedfd681e1f113664aee150273301fa94a77d01ba2cab5c3bfa·...·]-74">}</span><span·class="w">635 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-74">{</span><span·class="ss">z</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1989088809-75">(</span><span·class="p"·data-group-id="1989088809-75">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·dfd3e48ebf4728c6f3d4312d5d12f762f7fe3502540e2d9cbd15b78f8d987d91·...·]-74">}</span><span·class="w">
636 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="9236286656-76">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_data</span><span·class="p"·data-group-id="9236286656-77">(</span><span·class="p"·data-group-id="9236286656-77">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·7b3eb858684ef0e39d332c08607d392989ca6cd6e9d8685bbe244320aa98cc9d·...·]-64">]</span><span·class="w">636 ·····················</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="1989088809-76">{</span><span·class="ss">data</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">dns_data</span><span·class="p"·data-group-id="1989088809-77">(</span><span·class="p"·data-group-id="1989088809-77">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·102,·SHA:·3545bb529800a096303f3b2530bffbf829b40559a5192b66d1f3baaa7660a1c1·...·]-64">]</span><span·class="w">
637 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="9236286656-78">(</span><span·class="n">DnsRr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Field</span><span·class="p"·data-group-id="9236286656-78">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·472,·SHA:·c32a9fe54accb3db2ced3f9d2bd85d7399e87df68d587d425e11d5c2955c39c1·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">msg</span><span·class="p">;</span><span·class="w">637 ····</span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">rr</span><span·class="p"·data-group-id="1989088809-78">(</span><span·class="n">DnsRr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Field</span><span·class="p"·data-group-id="1989088809-78">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·472,·SHA:·60031857689f63067cbcbe1bb998c44f805c6a29d9da393e06452cddab05eea1·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">msg</span><span·class="p">;</span><span·class="w">
638 </span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">record_type</span><span·class="p"·data-group-id="9596326864-3">(</span><span·class="nf">dns_header</span><span·class="p"·data-group-id="9596326864-4">(</span><span·class="p"·data-group-id="9596326864-4">)</span><span·class="p"·data-group-id="9596326864-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">header</span><span·class="p">;</span><span·class="w">638 </span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">record_type</span><span·class="p"·data-group-id="2584691002-3">(</span><span·class="nf">dns_header</span><span·class="p"·data-group-id="2584691002-4">(</span><span·class="p"·data-group-id="2584691002-4">)</span><span·class="p"·data-group-id="2584691002-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">header</span><span·class="p">;</span><span·class="w">
639 </span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">record_type</span><span·class="p"·data-group-id="9596326864-5">(</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="9596326864-6">(</span><span·class="p"·data-group-id="9596326864-6">)</span><span·class="p"·data-group-id="9596326864-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">dns_query</span><span·class="p">;</span><span·class="w">639 </span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">record_type</span><span·class="p"·data-group-id="2584691002-5">(</span><span·class="nf">dns_query</span><span·class="p"·data-group-id="2584691002-6">(</span><span·class="p"·data-group-id="2584691002-6">)</span><span·class="p"·data-group-id="2584691002-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">dns_query</span><span·class="p">;</span><span·class="w">
640 </span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">record_type</span><span·class="p"·data-group-id="9596326864-7">(</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="9596326864-8">(</span><span·class="p"·data-group-id="9596326864-8">)</span><span·class="p"·data-group-id="9596326864-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">rr</span><span·class="p">;</span><span·class="w">640 </span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">record_type</span><span·class="p"·data-group-id="2584691002-7">(</span><span·class="nf">dns_rr</span><span·class="p"·data-group-id="2584691002-8">(</span><span·class="p"·data-group-id="2584691002-8">)</span><span·class="p"·data-group-id="2584691002-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">rr</span><span·class="p">;</span><span·class="w">
641 </span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">record_type</span><span·class="p"·data-group-id="9596326864-9">(</span><span·class="p">_</span><span·class="p"·data-group-id="9596326864-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">.</span></code></pre><p>So,·<code·class="inline">inet_dns:(inet_dns:record_type(X))(X)</code>·converts·any·of·these·data641 </span><span·class="nc">inet_dns</span><span·class="p">:</span><span·class="nf">record_type</span><span·class="p"·data-group-id="2584691002-9">(</span><span·class="p">_</span><span·class="p"·data-group-id="2584691002-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">.</span></code></pre><p>So,·<code·class="inline">inet_dns:(inet_dns:record_type(X))(X)</code>·converts·any·of·these·data
642 structures·into·a·<code·class="inline">{Field,Value}</code>·list.</p>642 structures·into·a·<code·class="inline">{Field,Value}</code>·list.</p>
643 ··</section>643 ··</section>
644 </section>644 </section>
645 <section·class="detail"·id="t:dns_name/0">645 <section·class="detail"·id="t:dns_name/0">
  
646 ··<div·class="detail-header">646 ··<div·class="detail-header">
647 ····<a·href="#t:dns_name/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">647 ····<a·href="#t:dns_name/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">
Offset 1508, 15 lines modifiedOffset 1508, 15 lines modified
1508 ······<p·class="built-using">1508 ······<p·class="built-using">
1509 ········Built·using1509 ········Built·using
1510 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1510 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1511 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1511 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1512 ······</p>1512 ······</p>
1513 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1513 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1514 ····</footer>1514 ····</footer>
1515 ··</div>1515 ··</div>
1516 </main>1516 </main>
1517 </div>1517 </div>
1518 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1518 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1519 <script>1519 <script>
1520 ··document.addEventListener("DOMContentLoaded",·function·()·{1520 ··document.addEventListener("DOMContentLoaded",·function·()·{
692 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/introduction_chapter.html
    
Offset 187, 15 lines modifiedOffset 187, 15 lines modified
187 ······<p·class="built-using">187 ······<p·class="built-using">
188 ········Built·using188 ········Built·using
189 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the189 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
190 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>190 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
191 ······</p>191 ······</p>
192 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>192 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
193 ····</footer>193 ····</footer>
194 ··</div>194 ··</div>
195 </main>195 </main>
196 </div>196 </div>
197 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>197 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
198 <script>198 <script>
199 ··document.addEventListener("DOMContentLoaded",·function·()·{199 ··document.addEventListener("DOMContentLoaded",·function·()·{
705 B
html2text {}
Max HTML report size reached
1.21 MB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/kernel.epub
8.16 KB
zipinfo {}
Max HTML report size reached
177 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
40.7 KB
OEBPS/trace.xhtml
Max HTML report size reached
141 KB
OEBPS/socket_usage.xhtml
Max HTML report size reached
32.4 KB
OEBPS/socket.xhtml
Max HTML report size reached
50.0 KB
OEBPS/seq_trace.xhtml
Max HTML report size reached
4.92 KB
OEBPS/rpc.xhtml
Max HTML report size reached
3.17 KB
OEBPS/pg.xhtml
Max HTML report size reached
22.8 KB
OEBPS/os.xhtml
Max HTML report size reached
7.29 KB
OEBPS/notes.xhtml
Max HTML report size reached
26.0 KB
OEBPS/net_kernel.xhtml
Max HTML report size reached
2.99 KB
OEBPS/net_adm.xhtml
Max HTML report size reached
4.8 KB
OEBPS/net.xhtml
Max HTML report size reached
4.42 KB
OEBPS/logger_std_h.xhtml
Max HTML report size reached
15.5 KB
OEBPS/logger_filters.xhtml
Max HTML report size reached
4.69 KB
OEBPS/logger_disk_log_h.xhtml
Max HTML report size reached
93.9 KB
OEBPS/logger_cookbook.xhtml
Max HTML report size reached
101 KB
OEBPS/logger_chapter.xhtml
Max HTML report size reached
52.8 KB
OEBPS/logger.xhtml
Max HTML report size reached
49.5 KB
OEBPS/inet_res.xhtml
Max HTML report size reached
34.2 KB
OEBPS/inet.xhtml
Max HTML report size reached
2.85 KB
OEBPS/global_group.xhtml
Max HTML report size reached
7.33 KB
OEBPS/gen_udp.xhtml
Max HTML report size reached
59.5 KB
OEBPS/gen_tcp.xhtml
Max HTML report size reached
168 KB
OEBPS/gen_sctp.xhtml
Max HTML report size reached
29.8 KB
OEBPS/file.xhtml
Max HTML report size reached
18.0 KB
OEBPS/erpc.xhtml
Max HTML report size reached
2.53 KB
OEBPS/erl_epmd.xhtml
Max HTML report size reached
12.6 KB
OEBPS/eep48_chapter.xhtml
Max HTML report size reached
1.24 KB
OEBPS/content.opf
1.2 KB
OEBPS/content.opf
Max HTML report size reached
5.03 KB
OEBPS/config.xhtml
Max HTML report size reached
20.9 KB
OEBPS/code.xhtml
Max HTML report size reached
2.68 KB
OEBPS/application.xhtml
Max HTML report size reached
26.1 KB
OEBPS/app.xhtml
Max HTML report size reached
1.64 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/kernel_app.html
    
Offset 422, 15 lines modifiedOffset 422, 15 lines modified
422 ······<p·class="built-using">422 ······<p·class="built-using">
423 ········Built·using423 ········Built·using
424 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the424 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
425 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>425 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
426 ······</p>426 ······</p>
427 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>427 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
428 ····</footer>428 ····</footer>
429 ··</div>429 ··</div>
430 </main>430 </main>
431 </div>431 </div>
432 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>432 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
433 <script>433 <script>
434 ··document.addEventListener("DOMContentLoaded",·function·()·{434 ··document.addEventListener("DOMContentLoaded",·function·()·{
827 B
html2text {}
Max HTML report size reached
54.4 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/logger.html
    
Offset 126, 34 lines modifiedOffset 126, 34 lines modified
  
126 ··</h1>126 ··</h1>
  
  
127 ····<section·id="moduledoc">127 ····<section·id="moduledoc">
128 <p>API·module·for·Logger,·the·standard·logging·facility·in·Erlang/OTP.</p><p>This·module·implements·the·main·API·for·logging·in·Erlang/OTP.·To·create·a·log128 <p>API·module·for·Logger,·the·standard·logging·facility·in·Erlang/OTP.</p><p>This·module·implements·the·main·API·for·logging·in·Erlang/OTP.·To·create·a·log
129 event,·use·the·<a·href="#logging-api-functions">API·functions</a>·or·the·log129 event,·use·the·<a·href="#logging-api-functions">API·functions</a>·or·the·log
130 <a·href="#module-macros">macros</a>,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">?</span><span·class="n">LOG_ERROR</span><span·class="p"·data-group-id="1660488680-1">(</span><span·class="s">&quot;error·happened·because:·</span><span·class="si">~p</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1660488680-2">[</span><span·class="n">Reason</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·64a1159daabe8b1c0470b393580f83f8649c3ce611724dab0cf5d84650b8740e·...·]-1">)</span><span·class="p">.</span><span·class="w">···</span><span·class="c1">%·With·macro</span><span·class="w">130 <a·href="#module-macros">macros</a>,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">?</span><span·class="n">LOG_ERROR</span><span·class="p"·data-group-id="6834577354-1">(</span><span·class="s">&quot;error·happened·because:·</span><span·class="si">~p</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6834577354-2">[</span><span·class="n">Reason</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·dd9a98ac3d57e6aefe65a6e5c95c3efeb10c832b3c8893a3c5ba13bb60008e69·...·]-1">)</span><span·class="p">.</span><span·class="w">···</span><span·class="c1">%·With·macro</span><span·class="w">
131 </span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="1660488680-3">(</span><span·class="s">&quot;error·happened·because:·</span><span·class="si">~p</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1660488680-4">[</span><span·class="n">Reason</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·4b888a27e6adcf5e9269c63edc79985637cd6f1bb82607043661a190b2353e38·...·]-3">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·Without·macro</span></code></pre><p>To·configure·the·Logger·backend,·use131 </span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="6834577354-3">(</span><span·class="s">&quot;error·happened·because:·</span><span·class="si">~p</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6834577354-4">[</span><span·class="n">Reason</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·9a649b35f18d82d74d8a71ce0fac3920d9852412eed820f780473978e30168bd·...·]-3">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·Without·macro</span></code></pre><p>To·configure·the·Logger·backend,·use
132 <a·href="kernel_app.html#logger">Kernel·configuration·parameters</a>·or132 <a·href="kernel_app.html#logger">Kernel·configuration·parameters</a>·or
133 <a·href="#configuration-api-functions">configuration·functions</a>·in·the·Logger·API.</p><p>By·default,·the·Kernel·application·installs·one·log·handler·at·system·start.133 <a·href="#configuration-api-functions">configuration·functions</a>·in·the·Logger·API.</p><p>By·default,·the·Kernel·application·installs·one·log·handler·at·system·start.
134 This·handler·is·named·<code·class="inline">default</code>.·It·receives·and·processes·standard·log·events134 This·handler·is·named·<code·class="inline">default</code>.·It·receives·and·processes·standard·log·events
135 produced·by·the·Erlang·runtime·system,·standard·behaviours·and·different135 produced·by·the·Erlang·runtime·system,·standard·behaviours·and·different
136 Erlang/OTP·applications.·The·log·events·are·by·default·printed·to·the·terminal.</p><p>If·you·want·your·systems·logs·to·be·printed·to·a·file·instead,·you·must136 Erlang/OTP·applications.·The·log·events·are·by·default·printed·to·the·terminal.</p><p>If·you·want·your·systems·logs·to·be·printed·to·a·file·instead,·you·must
137 configure·the·default·handler·to·do·so.·The·simplest·way·is·to·include·the137 configure·the·default·handler·to·do·so.·The·simplest·way·is·to·include·the
138 following·in·your·<a·href="config.html"><code·class="inline">sys.config</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5700834635-1">[</span><span·class="p"·data-group-id="5700834635-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">138 following·in·your·<a·href="config.html"><code·class="inline">sys.config</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5979227155-1">[</span><span·class="p"·data-group-id="5979227155-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
139 ··</span><span·class="p"·data-group-id="5700834635-3">[</span><span·class="p"·data-group-id="5700834635-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">139 ··</span><span·class="p"·data-group-id="5979227155-3">[</span><span·class="p"·data-group-id="5979227155-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
140 ····</span><span·class="p"·data-group-id="5700834635-5">[</span><span·class="p"·data-group-id="5700834635-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">140 ····</span><span·class="p"·data-group-id="5979227155-5">[</span><span·class="p"·data-group-id="5979227155-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
141 ······</span><span·class="p"·data-group-id="5700834635-7">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5700834635-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;<[·...·truncated·by·diffoscope;·len:·492,·SHA:·ff95185eca64fbaa6ab8f4ae5d626ceea51b0879f6f59d1f7c96c7e9f77ca67b·...·]5-1">]</span><span·class="p">.</span></code></pre><p>For·more·information·about:</p><ul><li>the·Logger·facility·in·general,·see·the·<a·href="logger_chapter.html">User's·Guide</a>.</li><li>how·to·configure·Logger,·see·the141 ······</span><span·class="p"·data-group-id="5979227155-7">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5979227155-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;<[·...·truncated·by·diffoscope;·len:·492,·SHA:·03d0ea57fb10502a576c69165e06f034c6e2aac47b1ed0e0e04b61c5c1db6426·...·]5-1">]</span><span·class="p">.</span></code></pre><p>For·more·information·about:</p><ul><li>the·Logger·facility·in·general,·see·the·<a·href="logger_chapter.html">User's·Guide</a>.</li><li>how·to·configure·Logger,·see·the
142 <a·href="logger_chapter.html#configuration">Configuration</a>·section·in·the·User's·Guide.</li><li>the·built-in·handlers,·see·<a·href="logger_std_h.html"><code·class="inline">logger_std_h</code></a>·and·<a·href="logger_disk_log_h.html"><code·class="inline">logger_disk_log_h</code></a>.</li><li>the·built-in·formatter,·see·<a·href="logger_formatter.html"><code·class="inline">logger_formatter</code></a>.</li><li>built-in·filters,·see·<a·href="logger_filters.html"><code·class="inline">logger_filters</code></a>.</li></ul><h2·id="module-macros"·class="section-heading">142 <a·href="logger_chapter.html#configuration">Configuration</a>·section·in·the·User's·Guide.</li><li>the·built-in·handlers,·see·<a·href="logger_std_h.html"><code·class="inline">logger_std_h</code></a>·and·<a·href="logger_disk_log_h.html"><code·class="inline">logger_disk_log_h</code></a>.</li><li>the·built-in·formatter,·see·<a·href="logger_formatter.html"><code·class="inline">logger_formatter</code></a>.</li><li>built-in·filters,·see·<a·href="logger_filters.html"><code·class="inline">logger_filters</code></a>.</li></ul><h2·id="module-macros"·class="section-heading">
143 ··<a·href="#module-macros"·class="hover-link">143 ··<a·href="#module-macros"·class="hover-link">
144 ····<i·class="ri-link-m"·aria-hidden="true"></i>144 ····<i·class="ri-link-m"·aria-hidden="true"></i>
145 ··</a>145 ··</a>
146 ··<span·class="text">Macros</span>146 ··<span·class="text">Macros</span>
147 </h2>147 </h2>
148 <p>The·following·macros·are·defined·in·<code·class="inline">logger.hrl</code>,·which·is·included·in·a·module148 <p>The·following·macros·are·defined·in·<code·class="inline">logger.hrl</code>,·which·is·included·in·a·module
149 with·the·directive</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="3189153831-1">(</span><span·class="s">&quot;kernel/include/logger.hrl&quot;</span><span·class="p"·data-group-id="3189153831-1">)</span><span·class="p">.</span></code></pre><ul><li><code·class="inline">?LOG_EMERGENCY(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_EMERGENCY(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_ALERT(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_ALERT(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_CRITICAL(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_CRITICAL(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_ERROR(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_ERROR(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_WARNING(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_WARNING(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_NOTICE(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_NOTICE(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_INFO(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_INFO(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_DEBUG(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_DEBUG(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG(Level,StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG(Level,FunOrFormat,Args[,Metadata])</code></li></ul><p>All·macros·expand·to·a·call·to·Logger,·where·<code·class="inline">Level</code>·is·taken·from·the·macro149 with·the·directive</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="3931919940-1">(</span><span·class="s">&quot;kernel/include/logger.hrl&quot;</span><span·class="p"·data-group-id="3931919940-1">)</span><span·class="p">.</span></code></pre><ul><li><code·class="inline">?LOG_EMERGENCY(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_EMERGENCY(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_ALERT(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_ALERT(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_CRITICAL(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_CRITICAL(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_ERROR(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_ERROR(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_WARNING(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_WARNING(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_NOTICE(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_NOTICE(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_INFO(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_INFO(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG_DEBUG(StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG_DEBUG(FunOrFormat,Args[,Metadata])</code></li><li><code·class="inline">?LOG(Level,StringOrReport[,Metadata])</code></li><li><code·class="inline">?LOG(Level,FunOrFormat,Args[,Metadata])</code></li></ul><p>All·macros·expand·to·a·call·to·Logger,·where·<code·class="inline">Level</code>·is·taken·from·the·macro
150 name,·or·from·the·first·argument·in·the·case·of·the·<code·class="inline">?LOG</code>·macro.·Location·data150 name,·or·from·the·first·argument·in·the·case·of·the·<code·class="inline">?LOG</code>·macro.·Location·data
151 is·added·to·the·metadata·as·described·under·the·<a·href="#t:metadata/0"><code·class="inline">metadata/0</code></a>·type·definition.</p><p>The·call·is·wrapped·in·a·case·statement·and·will·be·evaluated·only·if·<code·class="inline">Level</code>·is151 is·added·to·the·metadata·as·described·under·the·<a·href="#t:metadata/0"><code·class="inline">metadata/0</code></a>·type·definition.</p><p>The·call·is·wrapped·in·a·case·statement·and·will·be·evaluated·only·if·<code·class="inline">Level</code>·is
152 equal·to·or·below·the·configured·log·level.</p><h2·id="module-see-also"·class="section-heading">152 equal·to·or·below·the·configured·log·level.</p><h2·id="module-see-also"·class="section-heading">
153 ··<a·href="#module-see-also"·class="hover-link">153 ··<a·href="#module-see-also"·class="hover-link">
154 ····<i·class="ri-link-m"·aria-hidden="true"></i>154 ····<i·class="ri-link-m"·aria-hidden="true"></i>
155 ··</a>155 ··</a>
156 ··<span·class="text">See·Also</span>156 ··<span·class="text">See·Also</span>
Offset 2382, 21 lines modifiedOffset 2382, 21 lines modified
2382 ·········(Level·::·<a·href="#t:level/0">level</a>(),·Fun·::·<a·href="#t:msg_fun/0">msg_fun</a>(),·FunArgs·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->·ok.</pre>2382 ·········(Level·::·<a·href="#t:level/0">level</a>(),·Fun·::·<a·href="#t:msg_fun/0">msg_fun</a>(),·FunArgs·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->·ok.</pre>
  
2383 ······</div>2383 ······</div>
  
2384 <p>Create·a·log·event·at·the·given·<a·href="logger_chapter.html#log-level">log·level</a>,·with2384 <p>Create·a·log·event·at·the·given·<a·href="logger_chapter.html#log-level">log·level</a>,·with
2385 the·given·<a·href="logger_chapter.html#log-message">message</a>·to·be·logged·and2385 the·given·<a·href="logger_chapter.html#log-message">message</a>·to·be·logged·and
2386 <a·href="logger_chapter.html#metadata"><em>metadata</em></a>.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·A·plain·string</span><span·class="gp·unselectable">2386 <a·href="logger_chapter.html#metadata"><em>metadata</em></a>.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·A·plain·string</span><span·class="gp·unselectable">
2387 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="3089897648-1">(</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Hello·World&quot;</span><span·class="p"·data-group-id="3089897648-1">)</span><span·class="p">.</span><span·class="w">2387 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="9726399419-1">(</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Hello·World&quot;</span><span·class="p"·data-group-id="9726399419-1">)</span><span·class="p">.</span><span·class="w">
2388 </span><span·class="c1">%%·A·plain·string·with·metadata</span><span·class="gp·unselectable">2388 </span><span·class="c1">%%·A·plain·string·with·metadata</span><span·class="gp·unselectable">
2389 2&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="3089897648-2">(</span><span·class="ss">debug</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Hello·World&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3089897648-3">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·265,·SHA:·f143d7ebee93e60d1f5ee41f8d6e355e2f5242edc4a03ef9f20d7899dcc84256·...·]-2">)</span><span·class="p">.</span><span·class="w">2389 2&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="9726399419-2">(</span><span·class="ss">debug</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Hello·World&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726399419-3">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·265,·SHA:·db6d8f8d910dfd2e8ce6df14ce21bc713a2a12ac20b1c83e85a2555508cf5b95·...·]-2">)</span><span·class="p">.</span><span·class="w">
2390 </span><span·class="c1">%%·A·format·string·with·arguments</span><span·class="gp·unselectable">2390 </span><span·class="c1">%%·A·format·string·with·arguments</span><span·class="gp·unselectable">
2391 3&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="3089897648-4">(</span><span·class="ss">warning</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;The·roof·is·on·~ts&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="3089897648-5">[</span><span·class="n">Cause</sp[·...·truncated·by·diffoscope;·len:·97,·SHA:·260a5896abadb8839bc045b954b7a9c6d5339a510d8bec7d55654031795e0611·...·]-4">)</span><span·class="p">.</span><span·class="w">2391 3&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="9726399419-4">(</span><span·class="ss">warning</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;The·roof·is·on·~ts&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="9726399419-5">[</span><span·class="n">Cause</sp[·...·truncated·by·diffoscope;·len:·97,·SHA:·d093de722928a3284d6b09b75e4e8384ec24a56b886143c85d806eed6a054a31·...·]-4">)</span><span·class="p">.</span><span·class="w">
2392 </span><span·class="c1">%%·A·report</span><span·class="gp·unselectable">2392 </span><span·class="c1">%%·A·report</span><span·class="gp·unselectable">
2393 4&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="3089897648-6">(</span><span·class="ss">warning</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3089897648-7">#{</span><span·class="w">·</span><span·class="ss">what</span><span·class="w">·</span><span·class="p">=&gt;</sp[·...·truncated·by·diffoscope;·len:·354,·SHA:·9883c63aeddaf0e86de9e00d64798907ecfed0c7d3709059bae47ca95091d6d5·...·]-6">)</span><span·class="p">.</span></code></pre><p>Equivalent·to·<a·href="#log/4"><code·class="inline">log(Level,·FormatOrFun,·Args,·#{})</code></a>·if·called·as2393 4&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="9726399419-6">(</span><span·class="ss">warning</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726399419-7">#{</span><span·class="w">·</span><span·class="ss">what</span><span·class="w">·</span><span·class="p">=&gt;</sp[·...·truncated·by·diffoscope;·len:·354,·SHA:·c20d14491975ac3237a50d0c0843748a730baa80ca6d98b3275263fd082def7a·...·]-6">)</span><span·class="p">.</span></code></pre><p>Equivalent·to·<a·href="#log/4"><code·class="inline">log(Level,·FormatOrFun,·Args,·#{})</code></a>·if·called·as
2394 <code·class="inline">log(Level,·FormatOrFun,·Args)</code>.</p>2394 <code·class="inline">log(Level,·FormatOrFun,·Args)</code>.</p>
2395 ··</section>2395 ··</section>
2396 </section>2396 </section>
2397 <section·class="detail"·id="log/4">2397 <section·class="detail"·id="log/4">
  
2398 ··<div·class="detail-header">2398 ··<div·class="detail-header">
2399 ····<a·href="#log/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2399 ····<a·href="#log/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 2427, 20 lines modifiedOffset 2427, 20 lines modified
2427 <p>Create·a·log·event·at·the·given·<a·href="logger_chapter.html#log-level">log·level</a>,·with2427 <p>Create·a·log·event·at·the·given·<a·href="logger_chapter.html#log-level">log·level</a>,·with
2428 the·given·<a·href="logger_chapter.html#log-message">message</a>·to·be·logged·and2428 the·given·<a·href="logger_chapter.html#log-message">message</a>·to·be·logged·and
2429 <a·href="logger_chapter.html#metadata"><em>metadata</em></a>.</p><p>The·message·and·metadata·can·either·be·given·directly·in·the·arguments,·or2429 <a·href="logger_chapter.html#metadata"><em>metadata</em></a>.</p><p>The·message·and·metadata·can·either·be·given·directly·in·the·arguments,·or
2430 returned·from·a·fun.·Passing·a·fun·instead·of·the·message/metadata·directly·is2430 returned·from·a·fun.·Passing·a·fun·instead·of·the·message/metadata·directly·is
2431 useful·in·scenarios·when·the·message/metadata·is·very·expensive·to·compute.·This2431 useful·in·scenarios·when·the·message/metadata·is·very·expensive·to·compute.·This
2432 is·because·the·fun·is·only·evaluated·when·the·message/metadata·is·actually2432 is·because·the·fun·is·only·evaluated·when·the·message/metadata·is·actually
2433 needed,·which·may·be·not·at·all·if·the·log·event·is·not·to·be·logged.·Examples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·A·plain·string·with·expensive·metadata</span><span·class="gp·unselectable">2433 needed,·which·may·be·not·at·all·if·the·log·event·is·not·to·be·logged.·Examples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·A·plain·string·with·expensive·metadata</span><span·class="gp·unselectable">
2434 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">info</span><span·class="p"·data-group-id="2376230398-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2376230398-2">(</span><span·class="p"·data-group-id="2376230398-3">[</span><span·class="p"·data-group-id="2376230398-3">]</span><span·class="p"·data-group-id="2376230398-2">)</[·...·truncated·by·diffoscope;·len:·900,·SHA:·edf4f01421bfa4b4c978f144e07e67de1d768e5895c1b8315a5ee5ccae78ea43·...·]-1">)</span><span·class="p">.</span><span·class="w">2434 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">info</span><span·class="p"·data-group-id="0069855736-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0069855736-2">(</span><span·class="p"·data-group-id="0069855736-3">[</span><span·class="p"·data-group-id="0069855736-3">]</span><span·class="p"·data-group-id="0069855736-2">)</[·...·truncated·by·diffoscope;·len:·900,·SHA:·ef7576f73b42f80961dd94eddfa69d45d24f298a611972f72e19238997ca8aa8·...·]-1">)</span><span·class="p">.</span><span·class="w">
2435 </span><span·class="c1">%%·An·expensive·report</span><span·class="gp·unselectable">2435 </span><span·class="c1">%%·An·expensive·report</span><span·class="gp·unselectable">
2436 2&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">debug</span><span·class="p"·data-group-id="2376230398-8">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2376230398-9">(</span><span·class="n">What</span><span·class="p"·data-group-id="2376230398-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·727,·SHA:·29aced84fc0ccaf9c8892fedc843c4bb8c8b406d26595083b6a89c7514de9dc7·...·]-8">)</span><span·class="p">.</span><span·class="w">2436 2&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">debug</span><span·class="p"·data-group-id="0069855736-8">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0069855736-9">(</span><span·class="n">What</span><span·class="p"·data-group-id="0069855736-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·727,·SHA:·9737fdeee014bc646fd1c19495d7aa18fb9894b1bb303a819a63bb7bfc29e90f·...·]-8">)</span><span·class="p">.</span><span·class="w">
2437 </span><span·class="c1">%%·A·plain·string·with·expensive·metadata·and·normal·metadata</span><span·class="gp·unselectable">2437 </span><span·class="c1">%%·A·plain·string·with·expensive·metadata·and·normal·metadata</span><span·class="gp·unselectable">
2438 3&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">debug</span><span·class="p"·data-group-id="2376230398-12">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2376230398-13">(</span><span·class="p"·data-group-id="2376230398-14">[</span><span·class="p"·data-group-id="2376230398-14">]</span><span·class="p"·data-group-id="2376230398-13[·...·truncated·by·diffoscope;·len:·859,·SHA:·984ce13df1a8faaedff2c257aaddc30bfcbca067a52092108963a4cb70e6a55d·...·]-18">]</span><span·class="p">,</span><span·class="w">2438 3&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">debug</span><span·class="p"·data-group-id="0069855736-12">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="0069855736-13">(</span><span·class="p"·data-group-id="0069855736-14">[</span><span·class="p"·data-group-id="0069855736-14">]</span><span·class="p"·data-group-id="0069855736-13[·...·truncated·by·diffoscope;·len:·859,·SHA:·563233807c9cfd05639b16f82e79d22ff424a2604bfec710c51e53a197701747·...·]-18">]</span><span·class="p">,</span><span·class="w">
2439 ···············</span><span·class="p"·data-group-id="2376230398-19">#{</span><span·class="w">·</span><span·class="ss">meta</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">data</span><span·class="w">·</span><span·class="p"·data-group-id="2376230398-19">}</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·caaa7ae8294aa88ffd07eadccdbd70ce09fb15064501390dae39066d60e5b3e7·...·]-12">)</span><span·class="p">.</span></code></pre><p>When·metadata·is·given·both·as·an·argument·and·returned·from·the·fun·they·are2439 ···············</span><span·class="p"·data-group-id="0069855736-19">#{</span><span·class="w">·</span><span·class="ss">meta</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">data</span><span·class="w">·</span><span·class="p"·data-group-id="0069855736-19">}</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·a020a4f0fb88857a3b4fb256bd53a149d1e847d2dbfdb59138cd1f7a5cd775be·...·]-12">)</span><span·class="p">.</span></code></pre><p>When·metadata·is·given·both·as·an·argument·and·returned·from·the·fun·they·are
2440 merged.·If·equal·keys·exists·the·values·are·taken·from·the·metadata·returned·by2440 merged.·If·equal·keys·exists·the·values·are·taken·from·the·metadata·returned·by
2441 the·fun.</p>2441 the·fun.</p>
2442 ··</section>2442 ··</section>
2443 </section>2443 </section>
2444 <section·class="detail"·id="notice/1">2444 <section·class="detail"·id="notice/1">
  
2445 ··<div·class="detail-header">2445 ··<div·class="detail-header">
Offset 2755, 34 lines modifiedOffset 2755, 34 lines modified
2755 ······</div>2755 ······</div>
  
2756 <p>Reads·the·application·configuration·parameter·<code·class="inline">logger</code>·and·calls2756 <p>Reads·the·application·configuration·parameter·<code·class="inline">logger</code>·and·calls
2757 <a·href="#add_handlers/1"><code·class="inline">add_handlers/1</code></a>·with·its·contents.</p><p>This·function·should·be·used·by·custom·Logger·handlers·to·make·configuration2757 <a·href="#add_handlers/1"><code·class="inline">add_handlers/1</code></a>·with·its·contents.</p><p>This·function·should·be·used·by·custom·Logger·handlers·to·make·configuration
2758 consistent·no·matter·which·handler·the·system·uses.·Normal·usage·is·to·add·a2758 consistent·no·matter·which·handler·the·system·uses.·Normal·usage·is·to·add·a
2759 call·to·<a·href="#add_handlers/1"><code·class="inline">logger:add_handlers/1</code></a>·just·after·the·processes·that·the·handler·needs2759 call·to·<a·href="#add_handlers/1"><code·class="inline">logger:add_handlers/1</code></a>·just·after·the·processes·that·the·handler·needs
2760 are·started,·and·pass·the·application's·<code·class="inline">logger</code>·configuration·as·the·argument.2760 are·started,·and·pass·the·application's·<code·class="inline">logger</code>·configuration·as·the·argument.
2761 For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="2208501277-1">(</span><span·class="ss">application</span><span·class="p"·data-group-id="2208501277-1">)</span><span·class="p">.</span><span·class="w">2761 For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="1138587413-1">(</span><span·class="ss">application</span><span·class="p"·data-group-id="1138587413-1">)</span><span·class="p">.</span><span·class="w">
2762 </span><span·class="nf">start</span><span·class="p"·data-group-id="2208501277-2">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2208501277-3">[</span><span·class="p"·data-group-id="2208501277-3">]</span><span·class="p"·data-group-id="2208501277-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">2762 </span><span·class="nf">start</span><span·class="p"·data-group-id="1138587413-2">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1138587413-3">[</span><span·class="p"·data-group-id="1138587413-3">]</span><span·class="p"·data-group-id="1138587413-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
2763 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="2208501277-4">(</span><span·class="p"·data-group-id="2208501277-5">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_sup</span><span·class="p"·data-group-id="2208501277-5">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·252,·SHA:·499ce9dd03f00b7e1de0c6c93f7d79b3511f2313e87cb8e5f29dbacd4184f78b·...·]-4">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">2763 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">supervisor</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="1138587413-4">(</span><span·class="p"·data-group-id="1138587413-5">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_sup</span><span·class="p"·data-group-id="1138587413-5">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·252,·SHA:·43a98c1e6a1c241cd308189990c2a1c67cdba453a36a7f7ed55161a5f86c4f2f·...·]-4">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
2764 ········</span><span·class="p"·data-group-id="2208501277-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="2208501277-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">2764 ········</span><span·class="p"·data-group-id="1138587413-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="1138587413-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
2765 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handlers</span><span·class="p"·data-group-id="2208501277-8">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="2208501277-8">)</span><span·class="p">,</span><span·class="w">2765 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handlers</span><span·class="p"·data-group-id="1138587413-8">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="1138587413-8">)</span><span·class="p">,</span><span·class="w">
2766 ············</span><span·class="p"·data-group-id="2208501277-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2208501277-10">[</span><span·class="p"·data-group-id="2[·...·truncated·by·diffoscope;·len:·63,·SHA:·6b22ed335ec428aeef44ddd558de1080e71c7f9ea2ee15f2f030c02a4de1575a·...·]-9">}</span><span·class="p">;</span><span·class="w">2766 ············</span><span·class="p"·data-group-id="1138587413-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1138587413-10">[</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·63,·SHA:·335d09343a93602d6cc4061566358cb703344708fe3c2bff53123f26425e306c·...·]-9">}</span><span·class="p">;</span><span·class="w">
2767 ········</span><span·class="n">Error</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Error</span><span·class="w">2767 ········</span><span·class="n">Error</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Error</span><span·class="w">
2768 ·····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>This·reads·the·<code·class="inline">logger</code>·configuration·parameter·from·the·<code·class="inline">my_app</code>·application2768 ·····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>This·reads·the·<code·class="inline">logger</code>·configuration·parameter·from·the·<code·class="inline">my_app</code>·application
2769 and·starts·the·configured·handlers.·The·contents·of·the·configuration·use·the2769 and·starts·the·configured·handlers.·The·contents·of·the·configuration·use·the
2770 same·rules·as·the2770 same·rules·as·the
2771 <a·href="logger_chapter.html#handler-configuration">logger·handler·configuration</a>.</p><p>If·the·handler·is·meant·to·replace·the·default·handler,·the·Kernel's·default2771 <a·href="logger_chapter.html#handler-configuration">logger·handler·configuration</a>.</p><p>If·the·handler·is·meant·to·replace·the·default·handler,·the·Kernel's·default
2772 handler·have·to·be·disabled·before·the·new·handler·is·added.·A·<code·class="inline">sys.config</code>·file2772 handler·have·to·be·disabled·before·the·new·handler·is·added.·A·<code·class="inline">sys.config</code>·file
2773 that·disables·the·Kernel·handler·and·adds·a·custom·handler·could·look·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6984793681-1">[</span><span·class="p"·data-group-id="6984793681-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">2773 that·disables·the·Kernel·handler·and·adds·a·custom·handler·could·look·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5043610922-1">[</span><span·class="p"·data-group-id="5043610922-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
2774 ··</span><span·class="p"·data-group-id="6984793681-3">[</span><span·class="p"·data-group-id="6984793681-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">2774 ··</span><span·class="p"·data-group-id="5043610922-3">[</span><span·class="p"·data-group-id="5043610922-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
2775 ····</span><span·class="c1">%%·Disable·the·default·Kernel·handler</span><span·class="w">2775 ····</span><span·class="c1">%%·Disable·the·default·Kernel·handler</span><span·class="w">
2776 ····</span><span·class="p"·data-group-id="6984793681-5">[</span><span·class="p"·data-group-id="6984793681-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">undefi[·...·truncated·by·diffoscope;·len:·263,·SHA:·583d172bb124fc35160ff15651639017e2a72015f65304463272c35ae8b6e59c·...·]-2">}</span><span·class="p">,</span><span·class="w">2776 ····</span><span·class="p"·data-group-id="5043610922-5">[</span><span·class="p"·data-group-id="5043610922-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">undefi[·...·truncated·by·diffoscope;·len:·263,·SHA:·c938d1798cf009a59e7418214f35ee68bc584606ae7d12d6e716c330afb6f02e·...·]-2">}</span><span·class="p">,</span><span·class="w">
2777 ·</span><span·class="p"·data-group-id="6984793681-7">{</span><span·class="ss">my_app</span><span·class="p">,</span><span·class="w">2777 ·</span><span·class="p"·data-group-id="5043610922-7">{</span><span·class="ss">my_app</span><span·class="p">,</span><span·class="w">
2778 ··</span><span·class="p"·data-group-id="6984793681-8">[</span><span·class="p"·data-group-id="6984793681-9">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">2778 ··</span><span·class="p"·data-group-id="5043610922-8">[</span><span·class="p"·data-group-id="5043610922-9">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
2779 ····</span><span·class="c1">%%·Enable·this·handler·as·the·default</span><span·class="w">2779 ····</span><span·class="c1">%%·Enable·this·handler·as·the·default</span><span·class="w">
2780 ····</span><span·class="p"·data-group-id="6984793681-10">[</span><span·class="p"·data-group-id="6984793681-11">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_h[·...·truncated·by·diffoscope;·len:·478,·SHA:·b5660c556c19d1688700586e98d530527950bbcb734695d4da165aea722e518a·...·]-1">]</span><span·class="p">.</span></code></pre>2780 ····</span><span·class="p"·data-group-id="5043610922-10">[</span><span·class="p"·data-group-id="5043610922-11">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_h[·...·truncated·by·diffoscope;·len:·478,·SHA:·930624c54c471d945f9d5aeb6a5c71a5f5ac1eae643c3155dd6a48fb9bef16ba·...·]-1">]</span><span·class="p">.</span></code></pre>
2781 ··</section>2781 ··</section>
2782 </section>2782 </section>
2783 <section·class="detail"·id="add_primary_filter/2">2783 <section·class="detail"·id="add_primary_filter/2">
  
2784 ··<div·class="detail-header">2784 ··<div·class="detail-header">
2785 ····<a·href="#add_primary_filter/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2785 ····<a·href="#add_primary_filter/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
2786 ······<i·class="ri-link-m"·aria-hidden="true"></i>2786 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 3729, 16 lines modifiedOffset 3729, 16 lines modified
3729 ··········<pre·translate="no"><span·class="attribute">-spec</span>·update_formatter_config(HandlerId,·FormatterConfig)·->·ok·|·{error,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()}3729 ··········<pre·translate="no"><span·class="attribute">-spec</span>·update_formatter_config(HandlerId,·FormatterConfig)·->·ok·|·{error,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()}
3730 ·································when3730 ·································when
3731 ·····································HandlerId·::·<a·href="logger_handler.html#t:id/0">logger_handler:id</a>(),3731 ·····································HandlerId·::·<a·href="logger_handler.html#t:id/0">logger_handler:id</a>(),
3732 ·····································FormatterConfig·::·<a·href="#t:formatter_config/0">formatter_config</a>().</pre>3732 ·····································FormatterConfig·::·<a·href="#t:formatter_config/0">formatter_config</a>().</pre>
  
3733 ······</div>3733 ······</div>
  
3734 <p>Update·the·formatter·configuration·for·the·specified·handler.</p><p>The·new·configuration·is·merged·with·the·existing·formatter·configuration.</p><p>To·overwrite·the·existing·configuration·without·any·merge,·use</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">set_handler_config</span><span·class="p"·data-group-id="4020698519-1">(</span><span·class="n">HandlerId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">formatter</span><span·class="p">,</span><span·class="w">3734 <p>Update·the·formatter·configuration·for·the·specified·handler.</p><p>The·new·configuration·is·merged·with·the·existing·formatter·configuration.</p><p>To·overwrite·the·existing·configuration·without·any·merge,·use</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">set_handler_config</span><span·class="p"·data-group-id="1771589428-1">(</span><span·class="n">HandlerId</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">formatter</span><span·class="p">,</span><span·class="w">
3735 »       ······</span><span·class="p"·data-group-id="4020698519-2">{</span><span·class="n">FormatterModule</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FormatterConfig</span><span·class="p"·data-group-id="4020698519-2">}</span><span·class="p"·data-group-id="4020698519-1">)</span><span·class="p">.</span></code></pre>3735 »       ······</span><span·class="p"·data-group-id="1771589428-2">{</span><span·class="n">FormatterModule</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FormatterConfig</span><span·class="p"·data-group-id="1771589428-2">}</span><span·class="p"·data-group-id="1771589428-1">)</span><span·class="p">.</span></code></pre>
3736 ··</section>3736 ··</section>
3737 </section>3737 </section>
3738 <section·class="detail"·id="update_formatter_config/3">3738 <section·class="detail"·id="update_formatter_config/3">
  
3739 ··<div·class="detail-header">3739 ··<div·class="detail-header">
Max diff block lines reached; 12498/54720 bytes (22.84%) of diff not shown.
806 B
html2text {}
Max HTML report size reached
103 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/logger_chapter.html
    
Offset 186, 15 lines modifiedOffset 186, 15 lines modified
186 ····<i·class="ri-link-m"·aria-hidden="true"></i>186 ····<i·class="ri-link-m"·aria-hidden="true"></i>
187 ··</a>187 ··</a>
188 ··<span·class="text">Logger·API</span>188 ··<span·class="text">Logger·API</span>
189 </h2>189 </h2>
190 <p>The·API·for·logging·consists·of·a·set·of·<a·href="logger.html#module-macros">macros</a>,·and·a·set190 <p>The·API·for·logging·consists·of·a·set·of·<a·href="logger.html#module-macros">macros</a>,·and·a·set
191 of·functions·on·the·form·<code·class="inline">logger:Level/1,2,3</code>,·which·are·all·shortcuts·for191 of·functions·on·the·form·<code·class="inline">logger:Level/1,2,3</code>,·which·are·all·shortcuts·for
192 <a·href="logger.html#log/2"><code·class="inline">logger:log(Level,Arg1[,Arg2[,Arg3]])</code></a>.</p><p>The·macros·are·defined·in·<code·class="inline">logger.hrl</code>,·which·is·included·in·a·module·with·the192 <a·href="logger.html#log/2"><code·class="inline">logger:log(Level,Arg1[,Arg2[,Arg3]])</code></a>.</p><p>The·macros·are·defined·in·<code·class="inline">logger.hrl</code>,·which·is·included·in·a·module·with·the
193 directive</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7825157770-1">(</span><span·class="s">&quot;kernel/include/logger.hrl&quot;</span><span·class="p"·data-group-id="7825157770-1">)</span><span·class="p">.</span></code></pre><p>The·difference·between·using·the·macros·and·the·exported·functions·is·that193 directive</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="4316008905-1">(</span><span·class="s">&quot;kernel/include/logger.hrl&quot;</span><span·class="p"·data-group-id="4316008905-1">)</span><span·class="p">.</span></code></pre><p>The·difference·between·using·the·macros·and·the·exported·functions·is·that
194 macros·add·location·(originator)·information·to·the·metadata,·and·performs·lazy194 macros·add·location·(originator)·information·to·the·metadata,·and·performs·lazy
195 evaluation·by·wrapping·the·logger·call·in·a·case·statement,·so·it·is·only195 evaluation·by·wrapping·the·logger·call·in·a·case·statement,·so·it·is·only
196 evaluated·if·the·log·level·of·the·event·passes·the·primary·log·level·check.</p><h3·id="log-level"·class="section-heading">196 evaluated·if·the·log·level·of·the·event·passes·the·primary·log·level·check.</p><h3·id="log-level"·class="section-heading">
197 ··<a·href="#log-level"·class="hover-link">197 ··<a·href="#log-level"·class="hover-link">
198 ····<i·class="ri-link-m"·aria-hidden="true"></i>198 ····<i·class="ri-link-m"·aria-hidden="true"></i>
199 ··</a>199 ··</a>
200 ··<span·class="text">Log·Level</span>200 ··<span·class="text">Log·Level</span>
Offset 208, 31 lines modifiedOffset 208, 31 lines modified
208 ··<a·href="#log-message"·class="hover-link">208 ··<a·href="#log-message"·class="hover-link">
209 ····<i·class="ri-link-m"·aria-hidden="true"></i>209 ····<i·class="ri-link-m"·aria-hidden="true"></i>
210 ··</a>210 ··</a>
211 ··<span·class="text">Log·Message</span>211 ··<span·class="text">Log·Message</span>
212 </h3>212 </h3>
213 <p>The·log·message·contains·the·information·to·be·logged.·The·message·can·consist213 <p>The·log·message·contains·the·information·to·be·logged.·The·message·can·consist
214 of·a·format·string·and·arguments·(given·as·two·separate·parameters·in·the·Logger214 of·a·format·string·and·arguments·(given·as·two·separate·parameters·in·the·Logger
215 API),·a·string·or·a·report.</p><p>Example,·format·string·and·arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="4576758002-1">(</span><span·class="s">&quot;The·file·does·not·exist:·~ts&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="4576758002-2">[</span><span·class="n">Filename</span><span·class="p"·data-group-id="4576758002-2">]</span><span·clas[·...·truncated·by·diffoscope;·len:·367,·SHA:·ef320e5318543a98af3b3f7a709419beeec74c81a5ecf6c513d7e124abfd234f·...·]-1">)</span></code></pre><p>A·report,·which·is·either·a·map·or·a·key-value·list,·is·the·preferred·way·to·log215 API),·a·string·or·a·report.</p><p>Example,·format·string·and·arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="3159669549-1">(</span><span·class="s">&quot;The·file·does·not·exist:·~ts&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="3159669549-2">[</span><span·class="n">Filename</span><span·class="p"·data-group-id="3159669549-2">]</span><span·clas[·...·truncated·by·diffoscope;·len:·367,·SHA:·f195a4ae80aa1883b288c385a8a56683dd3c230743de9dd2ca90d036bc4d340e·...·]-1">)</span></code></pre><p>A·report,·which·is·either·a·map·or·a·key-value·list,·is·the·preferred·way·to·log
216 using·Logger·as·it·makes·it·possible·for·different·backends·to·filter·and·format216 using·Logger·as·it·makes·it·possible·for·different·backends·to·filter·and·format
217 the·log·event·as·it·needs·to.</p><p>Example,·report:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">?</span><span·class="n">LOG_ERROR</span><span·class="p"·data-group-id="9410495115-1">(</span><span·class="p"·data-group-id="9410495115-2">#{</span><span·class="w">·</span><span·class="ss">user</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">joe</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·464,·SHA:·e5706aa41ef1c50a0c0a3d4ea7d4cd6420faa6cefcbba7c4e88120d221e317a0·...·]-1">)</span></code></pre><p>Reports·can·be·accompanied·by·a·<em>report·callback</em>·specified·in·the·log·event's217 the·log·event·as·it·needs·to.</p><p>Example,·report:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">?</span><span·class="n">LOG_ERROR</span><span·class="p"·data-group-id="0923793237-1">(</span><span·class="p"·data-group-id="0923793237-2">#{</span><span·class="w">·</span><span·class="ss">user</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">joe</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·464,·SHA:·9f49cd5652161e635b27186d7329939a5033963d2281f769258f00cef27f260e·...·]-1">)</span></code></pre><p>Reports·can·be·accompanied·by·a·<em>report·callback</em>·specified·in·the·log·event's
218 <a·href="#metadata">metadata</a>.·The·report·callback·is·a·convenience218 <a·href="#metadata">metadata</a>.·The·report·callback·is·a·convenience
219 function·that·the·<a·href="#formatters">formatter</a>·can·use·to·convert219 function·that·the·<a·href="#formatters">formatter</a>·can·use·to·convert
220 the·report·to·a·format·string·and·arguments,·or·directly·to·a·string.·The220 the·report·to·a·format·string·and·arguments,·or·directly·to·a·string.·The
221 formatter·can·also·use·its·own·conversion·function,·if·no·callback·is·provided,221 formatter·can·also·use·its·own·conversion·function,·if·no·callback·is·provided,
222 or·if·a·customized·formatting·is·desired.</p><p>The·report·callback·must·be·a·fun·with·one·or·two·arguments.·If·it·takes·one222 or·if·a·customized·formatting·is·desired.</p><p>The·report·callback·must·be·a·fun·with·one·or·two·arguments.·If·it·takes·one
223 argument,·this·is·the·report·itself,·and·the·fun·returns·a·format·string·and223 argument,·this·is·the·report·itself,·and·the·fun·returns·a·format·string·and
224 arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="2109712924-1">(</span><span·class="p"·data-group-id="2109712924-2">(</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">report</span><span·class="p"·data-group-id="2109712924-3">(</span><span·class="p"·data-group-id="2109712924-3">)</span><span·class="p"·data-group-id="2109712924-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2109712924-4">{</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="2109712924-5">(</span><span·class="p"·data-group-id="2109712924-5">)</span><span·class="p">,</span><span·class="p"·data-group-id="2109712924-6">[</span><span·class="nf">term</span><span·class="p"·data-group-id="2109712924-7">(</span><span·class="p"·data-group-id="2109712924-7">)</span><span·class="p"·data-group-id="2109712924-6">]</span><span·class="p"·data-group-id="2109712924-4">}</span><span·class="p"·data-group-id="2109712924-1">)</span></code></pre><p>If·it·takes·two·arguments,·the·first·is·the·report,·and·the·second·is·a·map 
225 containing·extra·data·that·allows·direct·conversion·to·a·string:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="2718347602-1">(</span><span·class="p"·data-group-id="2718347602-2">(</span><span·c[·...·truncated·by·diffoscope;·len:·924,·SHA:·60634fa651c658398b660525943a59f28b909a8194cba2a82ba53df535e84fd3·...·]224 arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="7215825616-1">(</span><span·class="p"·data-group-id="7215825616-2">(</span><span·class="nc">logger</span><span·class="p">:</span><span·c[·...·truncated·by·diffoscope;·len:·958,·SHA:·2ed530aa68ff416a8b35693c34a01de5fdd1f518b394248bac00b25dcb48092a·...·]
 225 containing·extra·data·that·allows·direct·conversion·to·a·string:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="1312170087-1">(</span><span·class="p"·data-group-id="1312170087-2">(</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">report</span><span·class="p"·data-group-id="1312170087-3">(</span><span·class="p"·data-group-id="1312170087-3">)</span><span·class="p">,</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">report_cb_config</span><span·class="p"·data-group-id="1312170087-4">(</span><span·class="p"·data-group-id="1312170087-4">)</span><span·class="p"·data-group-id="1312170087-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">chardata</span><span·class="p"·data-group-id="1312170087-5">(</span><span·class="p"·data-group-id="1312170087-5">)</span><span·class="p"·data-group-id="1312170087-1">)</span></code></pre><p>The·fun·must·obey·the·<code·class="inline">depth</code>·and·<code·class="inline">chars_limit</code>·parameters·provided·in·the
226 second·argument,·as·the·formatter·cannot·do·anything·useful·of·these·parameters226 second·argument,·as·the·formatter·cannot·do·anything·useful·of·these·parameters
227 with·the·returned·string.·The·extra·data·also·contains·a·field·named227 with·the·returned·string.·The·extra·data·also·contains·a·field·named
228 <code·class="inline">single_line</code>,·indicating·if·the·printed·log·message·may·contain·line·breaks·or228 <code·class="inline">single_line</code>,·indicating·if·the·printed·log·message·may·contain·line·breaks·or
229 not.·This·variant·is·used·when·the·formatting·of·the·report·depends·on·the·size229 not.·This·variant·is·used·when·the·formatting·of·the·report·depends·on·the·size
230 or·single·line·parameters.</p><p>Example,·report,·and·metadata·with·report·callback:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">debug</span><span·class="p"·data-group-id="1697960686-1">(</span><span·class="p"·data-group-id="1697960686-2">#{</span><span·class="ss">got</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">connection_request</span><span·class="p">,</span><span·class=[·...·truncated·by·diffoscope;·len:·361,·SHA:·d4cbc71357180361e15b12498e618eee14088810bc59c4dbf8ad26975d7aedf1·...·]-2">}</span><span·class="p">,</span><span·class="w">230 or·single·line·parameters.</p><p>Example,·report,·and·metadata·with·report·callback:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">debug</span><span·class="p"·data-group-id="1034806727-1">(</span><span·class="p"·data-group-id="1034806727-2">#{</span><span·class="ss">got</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">connection_request</span><span·class="p">,</span><span·class=[·...·truncated·by·diffoscope;·len:·361,·SHA:·7899cc5903666f19c72efdda9c705a8cb9c8933afca89b2eb787bfa7b9270cc4·...·]-2">}</span><span·class="p">,</span><span·class="w">
231 ·············</span><span·class="p"·data-group-id="1697960686-3">#{</span><span·class="ss">report_cb</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="1697960686-4">(</span><span·class="n">R</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·596,·SHA:·ff98a94b339dba3114ec6143fe00276adf9307445e78e59a41a71e841effe153·...·]-1">)</span></code></pre><p>The·log·message·can·also·be·provided·through·a·fun·for·lazy·evaluation.·The·fun231 ·············</span><span·class="p"·data-group-id="1034806727-3">#{</span><span·class="ss">report_cb</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="1034806727-4">(</span><span·class="n">R</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·596,·SHA:·83e8a9cae798fcb00a7b173295646f2e8a81d627b16e1287a012607bceef3d91·...·]-1">)</span></code></pre><p>The·log·message·can·also·be·provided·through·a·fun·for·lazy·evaluation.·The·fun
232 is·only·evaluated·if·the·primary·log·level·check·passes,·and·is·therefore232 is·only·evaluated·if·the·primary·log·level·check·passes,·and·is·therefore
233 recommended·if·it·is·expensive·to·generate·the·message.·The·lazy·fun·must·return233 recommended·if·it·is·expensive·to·generate·the·message.·The·lazy·fun·must·return
234 a·string,·a·report,·or·a·tuple·with·format·string·and·arguments.</p><h3·id="metadata"·class="section-heading">234 a·string,·a·report,·or·a·tuple·with·format·string·and·arguments.</p><h3·id="metadata"·class="section-heading">
235 ··<a·href="#metadata"·class="hover-link">235 ··<a·href="#metadata"·class="hover-link">
236 ····<i·class="ri-link-m"·aria-hidden="true"></i>236 ····<i·class="ri-link-m"·aria-hidden="true"></i>
237 ··</a>237 ··</a>
238 ··<span·class="text">Metadata</span>238 ··<span·class="text">Metadata</span>
Offset 412, 22 lines modifiedOffset 412, 22 lines modified
412 with·<a·href="../../../../lib/sasl-4.2.2/doc/html/error_logging.html">SASL·Error·Logging</a>,·which·is·specified·with412 with·<a·href="../../../../lib/sasl-4.2.2/doc/html/error_logging.html">SASL·Error·Logging</a>,·which·is·specified·with
413 <a·href="#logger_sasl_compatible"><code·class="inline">logger_sasl_compatible</code></a>.</p><p>With·this·parameter,·you·can·modify·or·disable·the·default·handler,·add·custom413 <a·href="#logger_sasl_compatible"><code·class="inline">logger_sasl_compatible</code></a>.</p><p>With·this·parameter,·you·can·modify·or·disable·the·default·handler,·add·custom
414 handlers·and·primary·logger·filters,·set·log·levels·per·module,·and·modify·the414 handlers·and·primary·logger·filters,·set·log·levels·per·module,·and·modify·the
415 <a·href="#logger-proxy">proxy</a>·configuration.</p><p><code·class="inline">Config</code>·is·any·(zero·or·more)·of·the·following:</p><ul><li><p><strong><code·class="inline">{handler,·default,·undefined}</code></strong>·-·Disables·the·default·handler.·This415 <a·href="#logger-proxy">proxy</a>·configuration.</p><p><code·class="inline">Config</code>·is·any·(zero·or·more)·of·the·following:</p><ul><li><p><strong><code·class="inline">{handler,·default,·undefined}</code></strong>·-·Disables·the·default·handler.·This
416 allows·another·application·to·add·its·own·default·handler.</p><p>Only·one·entry·of·this·type·is·allowed.</p></li><li><p><strong><code·class="inline">{handler,·HandlerId,·Module,·HandlerConfig}</code></strong>·-·If·<code·class="inline">HandlerId</code>·is416 allows·another·application·to·add·its·own·default·handler.</p><p>Only·one·entry·of·this·type·is·allowed.</p></li><li><p><strong><code·class="inline">{handler,·HandlerId,·Module,·HandlerConfig}</code></strong>·-·If·<code·class="inline">HandlerId</code>·is
417 <code·class="inline">default</code>,·then·this·entry·modifies·the·default·handler,·equivalent·to417 <code·class="inline">default</code>,·then·this·entry·modifies·the·default·handler,·equivalent·to
418 calling</p><pre><code·class="text">········logger:remove_handler(default)418 calling</p><pre><code·class="text">········logger:remove_handler(default)
419 </code></pre><p>followed·by</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="3683302582-1">(</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HandlerConfig</span><span·class="p"·data-group-id="3683302582-1">)</span><span·class="w">419 </code></pre><p>followed·by</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="7368910671-1">(</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HandlerConfig</span><span·class="p"·data-group-id="7368910671-1">)</span><span·class="w">
420 </span></code></pre><p>For·all·other·values·of·<code·class="inline">HandlerId</code>,·this·entry·adds·a·new·handler,420 </span></code></pre><p>For·all·other·values·of·<code·class="inline">HandlerId</code>,·this·entry·adds·a·new·handler,
421 equivalent·to·calling</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="2392970233-1">(</span><span·class="n">HandlerId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HandlerConfig</span><span·class="p"·data-group-id="2392970233-1">)</span><span·class="w">421 equivalent·to·calling</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="5759281348-1">(</span><span·class="n">HandlerId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HandlerConfig</span><span·class="p"·data-group-id="5759281348-1">)</span><span·class="w">
422 </span></code></pre><p>Multiple·entries·of·this·type·are·allowed.</p></li><li><p><strong><code·class="inline">{filters,·FilterDefault,·[Filter]}</code></strong>·-·Adds·the·specified·primary422 </span></code></pre><p>Multiple·entries·of·this·type·are·allowed.</p></li><li><p><strong><code·class="inline">{filters,·FilterDefault,·[Filter]}</code></strong>·-·Adds·the·specified·primary
423 filters.</p><ul><li><p><code·class="inline">FilterDefault·=·log·|·stop</code></p></li><li><code·class="inline">Filter·=·{FilterId,·{FilterFun,·FilterConfig}}</code></li></ul><p>Equivalent·to·calling</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_primary_filter</span><span·class="p"·data-group-id="3395511740-1">(</span><span·class="n">FilterId</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3395511740-2">{</span><span·class="n">FilterFun</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filter[·...·truncated·by·diffoscope;·len:·107,·SHA:·ae1ddefbc3fd08fcf11df2f8376ab949073c02e62c239a509b4c533ce2343527·...·]-1">)</span><span·class="w">423 filters.</p><ul><li><p><code·class="inline">FilterDefault·=·log·|·stop</code></p></li><li><code·class="inline">Filter·=·{FilterId,·{FilterFun,·FilterConfig}}</code></li></ul><p>Equivalent·to·calling</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_primary_filter</span><span·class="p"·data-group-id="9791327453-1">(</span><span·class="n">FilterId</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9791327453-2">{</span><span·class="n">FilterFun</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filter[·...·truncated·by·diffoscope;·len:·107,·SHA:·fd1ac18479efedbd52c29f90776095b0b2965625a6cd10886ce735927fd86ff8·...·]-1">)</span><span·class="w">
424 </span></code></pre><p>for·each·<code·class="inline">Filter</code>.</p><p><code·class="inline">FilterDefault</code>·specifies·the·behaviour·if·all·primary·filters·return424 </span></code></pre><p>for·each·<code·class="inline">Filter</code>.</p><p><code·class="inline">FilterDefault</code>·specifies·the·behaviour·if·all·primary·filters·return
425 <code·class="inline">ignore</code>,·see·section·<a·href="#filters">Filters</a>.</p><p>Only·one·entry·of·this·type·is·allowed.</p></li><li><p><strong><code·class="inline">{module_level,·Level,·[Module]}</code></strong>·-·Sets·module·log·level·for·the·given425 <code·class="inline">ignore</code>,·see·section·<a·href="#filters">Filters</a>.</p><p>Only·one·entry·of·this·type·is·allowed.</p></li><li><p><strong><code·class="inline">{module_level,·Level,·[Module]}</code></strong>·-·Sets·module·log·level·for·the·given
426 modules.·Equivalent·to·calling</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">set_module_level</span><span·class="p"·data-group-id="0505658147-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Level</span><span·class="p"·data-group-id="0505658147-1">)</span></code></pre><p>for·each·<code·class="inline">Module</code>.</p><p>Multiple·entries·of·this·type·are·allowed.</p></li><li><p><strong><code·class="inline">{proxy,·ProxyConfig}</code></strong>·-·Sets·the·proxy·configuration,·equivalent·to426 modules.·Equivalent·to·calling</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">set_module_level</span><span·class="p"·data-group-id="1734725280-1">(</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Level</span><span·class="p"·data-group-id="1734725280-1">)</span></code></pre><p>for·each·<code·class="inline">Module</code>.</p><p>Multiple·entries·of·this·type·are·allowed.</p></li><li><p><strong><code·class="inline">{proxy,·ProxyConfig}</code></strong>·-·Sets·the·proxy·configuration,·equivalent·to
427 calling</p><pre><code·class="text">········logger:set_proxy_config(ProxyConfig)427 calling</p><pre><code·class="text">········logger:set_proxy_config(ProxyConfig)
428 </code></pre><p>Only·one·entry·of·this·type·is·allowed.</p></li></ul><p>See·section·<a·href="#configuration-examples">Configuration·Examples</a>·for428 </code></pre><p>Only·one·entry·of·this·type·is·allowed.</p></li></ul><p>See·section·<a·href="#configuration-examples">Configuration·Examples</a>·for
429 examples·using·the·<code·class="inline">logger</code>·parameter·for·system·configuration.</p></li><li><p><strong><code·class="inline"·id="logger_metadata">logger_metadata·=·map()</code></strong>·-·Specifies·the·primary429 examples·using·the·<code·class="inline">logger</code>·parameter·for·system·configuration.</p></li><li><p><strong><code·class="inline"·id="logger_metadata">logger_metadata·=·map()</code></strong>·-·Specifies·the·primary
430 metadata.·See·the·<a·href="kernel_app.html#logger_metadata"><code·class="inline">kernel(6)</code></a>·manual·page·for430 metadata.·See·the·<a·href="kernel_app.html#logger_metadata"><code·class="inline">kernel(6)</code></a>·manual·page·for
431 more·information·about·this·parameter.</p></li><li><p><strong><code·class="inline"·id="logger_level">logger_level·=·Level</code></strong>·-·Specifies·the·primary·log431 more·information·about·this·parameter.</p></li><li><p><strong><code·class="inline"·id="logger_level">logger_level·=·Level</code></strong>·-·Specifies·the·primary·log
432 level.·See·the·<a·href="kernel_app.html#logger_level"><code·class="inline">kernel(6)</code></a>·manual·page·for·more432 level.·See·the·<a·href="kernel_app.html#logger_level"><code·class="inline">kernel(6)</code></a>·manual·page·for·more
433 information·about·this·parameter.</p></li><li><p><strong><code·class="inline"·id="logger_sasl_compatible">logger_sasl_compatible·=·true·|·false</code></strong>·-433 information·about·this·parameter.</p></li><li><p><strong><code·class="inline"·id="logger_sasl_compatible">logger_sasl_compatible·=·true·|·false</code></strong>·-
Offset 442, 39 lines modifiedOffset 442, 39 lines modified
442 </h3>442 </h3>
443 <p>The·value·of·the·Kernel·configuration·parameter·<code·class="inline">logger</code>·is·a·list·of·tuples.·It443 <p>The·value·of·the·Kernel·configuration·parameter·<code·class="inline">logger</code>·is·a·list·of·tuples.·It
444 is·possible·to·write·the·term·on·the·command·line·when·starting·an·erlang·node,444 is·possible·to·write·the·term·on·the·command·line·when·starting·an·erlang·node,
445 but·as·the·term·grows,·a·better·approach·is·to·use·the·system·configuration445 but·as·the·term·grows,·a·better·approach·is·to·use·the·system·configuration
446 file.·See·the·<a·href="config.html"><code·class="inline">config(4)</code></a>·manual·page·for·more·information·about446 file.·See·the·<a·href="config.html"><code·class="inline">config(4)</code></a>·manual·page·for·more·information·about
447 this·file.</p><p>Each·of·the·following·examples·shows·a·simple·system·configuration·file·that447 this·file.</p><p>Each·of·the·following·examples·shows·a·simple·system·configuration·file·that
448 configures·Logger·according·to·the·description.</p><p>Modify·the·default·handler·to·print·to·a·file·instead·of448 configures·Logger·according·to·the·description.</p><p>Modify·the·default·handler·to·print·to·a·file·instead·of
449 <a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#t:standard_io/0"><code·class="inline">standard_io</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4198904016-1">[</span><span·class="p"·data-group-id="4198904016-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">449 <a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#t:standard_io/0"><code·class="inline">standard_io</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6536615265-1">[</span><span·class="p"·data-group-id="6536615265-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
450 ··</span><span·class="p"·data-group-id="4198904016-3">[</span><span·class="p"·data-group-id="4198904016-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">450 ··</span><span·class="p"·data-group-id="6536615265-3">[</span><span·class="p"·data-group-id="6536615265-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
451 ····</span><span·class="p"·data-group-id="4198904016-5">[</span><span·class="p"·data-group-id="4198904016-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·{handler,·HandlerId,·Module,</span><span·class="w">451 ····</span><span·class="p"·data-group-id="6536615265-5">[</span><span·class="p"·data-group-id="6536615265-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·{handler,·HandlerId,·Module,</span><span·class="w">
452 ······</span><span·class="p"·data-group-id="4198904016-7">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4198904016-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;[·...·truncated·by·diffoscope;·len:·227,·SHA:·87828c59e4770f0df8d46cf69ebe62e2420721dac47a78999c2a58c09aaf3317·...·]-6">}</span><span·class="w">··</span><span·class="c1">%·Config}</span><span·class="w">452 ······</span><span·class="p"·data-group-id="6536615265-7">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6536615265-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;[·...·truncated·by·diffoscope;·len:·227,·SHA:·45757a748e604fa189bd3e5a1a9e39ea333074cf0b5598567ddb003f6f2d90a0·...·]-6">}</span><span·class="w">··</span><span·class="c1">%·Config}</span><span·class="w">
 453 ····</span><span·class="p"·data-group-id="6536615265-5">]</span><span·class="p"·data-group-id="6536615265-4">}</span><span·class="p"·data-group-id="6536615265-3">]</span><span·class="p"·data-group-id="6536615265-2">}</span><span·class="p"·data-group-id="6536615265-1">]</span><span·class="p">.</span></code></pre><p>Modify·the·default·handler·to·print·each·log·event·as·a·single·line:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3239141628-1">[</span><span·class="p"·data-group-id="3239141628-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
453 ····</span><span·class="p"·data-group-id="4198904016-5">]</span><span·class="p"·data-group-id="4198904016-4">}</span><span·class="p"·data-group-id="4198904016-3">]</span><span·class="p"·data-group-id="4198904016-2">}</span><span·class="p"·data-group-id="4198904016-1">]</span><span·class="p">.</span></code></pre><p>Modify·the·default·handler·to·print·each·log·event·as·a·single·line:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7194649399-1">[</span><span·class="p"·data-group-id="7194649399-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w"> 
454 ··</span><span·class="p"·data-group-id="7194649399-3">[</span><span·class="p"·data-group-id="7194649399-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w"> 
455 ····</span><span·class="p"·data-group-id="7194649399-5">[</span><span·class="p"·data-group-id="7194649399-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w"> 
456 ······</span><span·class="p"·data-group-id="7194649399-7">#{</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7194649399-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7194649399-9">#{</span><span·class="ss">single_line</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="7194649399-9">}</span><span·class="p"·data-group-id="7194649399-8">}</span><span·class="p"·data-group-id="7194649399-7">}</span><span·class="p"·data-group-id="7194649399-6">}</span><span·class="w"> 
457 ····</span><span·class="p"·data-group-id="7194649399-5">]</span><span·class="p"·data-group-id="7194649399-4">}</span><span·class="p"·data-group-id="7194649399-3">]</span><span·class="p"·data-group-id="7194649399-2">}</span><span·class="p"·data-group-id="7194649399-1">]</span><span·class="p">.</span></code></pre><p>Modify·the·default·handler·to·print·the·pid·of·the·logging·process·for·each·log 
458 event:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7927784394-1">[</span><span·class="p"·data-group-id="7927784394-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w"> 
459 ··</span><span·class="p"·data-group-id="7927784394-3">[</span><span·class="p"·data-group-id="7927784394-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">454 ··</span><span·class="p"·data-group-id="3239141628-3">[</span><span·class="p"·data-group-id="3239141628-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
460 ····</span><span·class="p"·data-group-id="7927784394-5">[</span><span·class="p"·data-group-id="7927784394-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">455 ····</span><span·class="p"·data-group-id="3239141628-5">[</span><span·class="p"·data-group-id="3239141628-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
 456 ······</span><span·class="p"·data-group-id="3239141628-7">#{</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3239141628-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3239141628-9">#{</span><span·class="ss">single_line</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="3239141628-9">}</span><span·class="p"·data-group-id="3239141628-8">}</span><span·class="p"·data-group-id="3239141628-7">}</span><span·class="p"·data-group-id="3239141628-6">}</span><span·class="w">
 457 ····</span><span·class="p"·data-group-id="3239141628-5">]</span><span·class="p"·data-group-id="3239141628-4">}</span><span·class="p"·data-group-id="3239141628-3">]</span><span·class="p"·data-group-id="3239141628-2">}</span><span·class="p"·data-group-id="3239141628-1">]</span><span·class="p">.</span></code></pre><p>Modify·the·default·handler·to·print·the·pid·of·the·logging·process·for·each·log
 458 event:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8853113862-1">[</span><span·class="p"·data-group-id="8853113862-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
 459 ··</span><span·class="p"·data-group-id="8853113862-3">[</span><span·class="p"·data-group-id="8853113862-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
 460 ····</span><span·class="p"·data-group-id="8853113862-5">[</span><span·class="p"·data-group-id="8853113862-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
461 ······</span><span·class="p"·data-group-id="7927784394-7">#{</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7927784394-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">461 ······</span><span·class="p"·data-group-id="8853113862-7">#{</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8853113862-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">
462 ························</span><span·class="p"·data-group-id="7927784394-9">#{</span><span·class="ss">template</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7927784394-10">[</span><span·class="ss">time</span><span·class="p">,</span><span·class="s">&qu[·...·truncated·by·diffoscope;·len:·494,·SHA:·50f755e4cd80524b32193ea3b05ff2280464fae404af3403a47977c336417bd9·...·]-6">}</span><span·class="w">462 ························</span><span·class="p"·data-group-id="8853113862-9">#{</span><span·class="ss">template</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8853113862-10">[</span><span·class="ss">time</span><span·class="p">,</span><span·class="s">&qu[·...·truncated·by·diffoscope;·len:·494,·SHA:·7d99717adc37094d0bd5c8f2b4fcd6cbc60357365b80e33a3d6c6410fb6717ea·...·]-6">}</span><span·class="w">
463 ····</span><span·class="p"·data-group-id="7927784394-5">]</span><span·class="p"·data-group-id="7927784394-4">}</span><span·class="p"·data-group-id="7927784394-3">]</span><span·class="p"·data-group-id="7927784394-2">}</span><span·class="p"·data-group-id="7927784394-1">]</span><span·class="p">.</span></code></pre><p>Modify·the·default·handler·to·only·print·errors·and·more·severe·log·events·to463 ····</span><span·class="p"·data-group-id="8853113862-5">]</span><span·class="p"·data-group-id="8853113862-4">}</span><span·class="p"·data-group-id="8853113862-3">]</span><span·class="p"·data-group-id="8853113862-2">}</span><span·class="p"·data-group-id="8853113862-1">]</span><span·class="p">.</span></code></pre><p>Modify·the·default·handler·to·only·print·errors·and·more·severe·log·events·to
464 &quot;log/erlang.log&quot;,·and·add·another·handler·to·print·all·log·events·to464 &quot;log/erlang.log&quot;,·and·add·another·handler·to·print·all·log·events·to
465 &quot;log/debug.log&quot;.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3188406825-1">[</span><span·class="p"·data-group-id="3188406825-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">465 &quot;log/debug.log&quot;.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4677303685-1">[</span><span·class="p"·data-group-id="4677303685-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
466 ··</span><span·class="p"·data-group-id="3188406825-3">[</span><span·class="p"·data-group-id="3188406825-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">466 ··</span><span·class="p"·data-group-id="4677303685-3">[</span><span·class="p"·data-group-id="4677303685-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
467 ····</span><span·class="p"·data-group-id="3188406825-5">[</span><span·class="p"·data-group-id="3188406825-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">467 ····</span><span·class="p"·data-group-id="4677303685-5">[</span><span·class="p"·data-group-id="4677303685-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
468 ······</span><span·class="p"·data-group-id="3188406825-7">#{</span><span·class="ss">level</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">468 ······</span><span·class="p"·data-group-id="4677303685-7">#{</span><span·class="ss">level</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">
469 ········</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3188406825-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;log/erlang.log&quot;</span><span·class="p"·data-group-id="3188406825-8">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·66,·SHA:·9fe7d9e01101afd69f6ec77003bf19be864cdbf77487044476335ead500b3b59·...·]5-6">}</span><span·class="p">,</span><span·class="w">469 ········</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4677303685-8">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;log/erlang.log&quot;</span><span·class="p"·data-group-id="4677303685-8">}</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·66,·SHA:·cd1b77a703f93eec96937a26b59a13f53d8aba3a02d8a105f752674920e9d9e4·...·]5-6">}</span><span·class="p">,</span><span·class="w">
470 ·····</span><span·class="p"·data-group-id="3188406825-9">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">470 ·····</span><span·class="p"·data-group-id="4677303685-9">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
471 ······</span><span·class="p"·data-group-id="3188406825-10">#{</span><span·class="ss">level</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">debug</span><span·class="p">,</span><span·class="w">471 ······</span><span·class="p"·data-group-id="4677303685-10">#{</span><span·class="ss">level</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">debug</span><span·class="p">,</span><span·class="w">
472 ········</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3188406825-11">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;log/debug.log&quot;</span><span·class="p"·data-group-id="3188406825-11">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·e184b8a1b853e6fd4eecd6955dbf2e9a4bd864297ca2d4e1a538d472bc299200·...·]5-9">}</span><span·class="w">472 ········</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4677303685-11">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;log/debug.log&quot;</span><span·class="p"·data-group-id="4677303685-11">}</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·0696624e3e8df7839afba8acba9a176a16aeced5cfd94028013754bfca042afc·...·]5-9">}</span><span·class="w">
473 ····</span><span·class="p"·data-group-id="3188406825-5">]</span><span·class="p"·data-group-id="3188406825-4">}</span><span·class="p"·data-group-id="3188406825-3">]</span><span·class="p"·data-group-id="3188406825-2">}</span><span·class="p"·data-group-id="3188406825-1">]</span><span·class="p">.</span></code></pre><h2·id="backwards-compatibility-with-error_logger"·class="section-heading">473 ····</span><span·class="p"·data-group-id="4677303685-5">]</span><span·class="p"·data-group-id="4677303685-4">}</span><span·class="p"·data-group-id="4677303685-3">]</span><span·class="p"·data-group-id="4677303685-2">}</span><span·class="p"·data-group-id="4677303685-1">]</span><span·class="p">.</span></code></pre><h2·id="backwards-compatibility-with-error_logger"·class="section-heading">
474 ··<a·href="#backwards-compatibility-with-error_logger"·class="hover-link">474 ··<a·href="#backwards-compatibility-with-error_logger"·class="hover-link">
475 ····<i·class="ri-link-m"·aria-hidden="true"></i>475 ····<i·class="ri-link-m"·aria-hidden="true"></i>
476 ··</a>476 ··</a>
477 ··<span·class="text">Backwards·Compatibility·with·error_logger</span>477 ··<span·class="text">Backwards·Compatibility·with·error_logger</span>
478 </h2>478 </h2>
479 <p>Logger·provides·backwards·compatibility·with·<code·class="inline">error_logger</code>·in·the·following479 <p>Logger·provides·backwards·compatibility·with·<code·class="inline">error_logger</code>·in·the·following
480 ways:</p><ul><li><p><strong>API·for·Logging</strong>·-·The·<code·class="inline">error_logger</code>·API·still·exists,·but·should·only·be480 ways:</p><ul><li><p><strong>API·for·Logging</strong>·-·The·<code·class="inline">error_logger</code>·API·still·exists,·but·should·only·be
Offset 507, 17 lines modifiedOffset 507, 17 lines modified
507 <code·class="inline">true</code>.·The507 <code·class="inline">true</code>.·The
508 <a·href="../../../../lib/sasl-4.2.2/doc/html/sasl_app.html#deprecated_error_logger_config">SASL·configuration·parameters</a>508 <a·href="../../../../lib/sasl-4.2.2/doc/html/sasl_app.html#deprecated_error_logger_config">SASL·configuration·parameters</a>
509 can·then·be·used·as·before,·and·the·SASL·reports·will·only·be·printed·if·the509 can·then·be·used·as·before,·and·the·SASL·reports·will·only·be·printed·if·the
510 SASL·application·is·running,·through·a·second·log·handler·named·<code·class="inline">sasl</code>.</p><p>All·SASL·reports·have·a·metadata·field·<code·class="inline">domain</code>·which·is·set·to·<code·class="inline">[otp,sasl]</code>.510 SASL·application·is·running,·through·a·second·log·handler·named·<code·class="inline">sasl</code>.</p><p>All·SASL·reports·have·a·metadata·field·<code·class="inline">domain</code>·which·is·set·to·<code·class="inline">[otp,sasl]</code>.
511 This·field·can·be·used·by·filters·to·stop·or·allow·the·log·events.</p><p>See·section·<a·href="../../../../lib/sasl-4.2.2/doc/html/error_logging.html">SASL·User's·Guide</a>·for·more511 This·field·can·be·used·by·filters·to·stop·or·allow·the·log·events.</p><p>See·section·<a·href="../../../../lib/sasl-4.2.2/doc/html/error_logging.html">SASL·User's·Guide</a>·for·more
512 information·about·the·old·SASL·error·logging·functionality.</p></li><li><p><strong><a·href=""·id="legacy_event_handlers"></a>·Legacy·Event·Handlers</strong><br/>To·use·event·handlers·written·for·<code·class="inline">error_logger</code>,·just·add·your·event·handler512 information·about·the·old·SASL·error·logging·functionality.</p></li><li><p><strong><a·href=""·id="legacy_event_handlers"></a>·Legacy·Event·Handlers</strong><br/>To·use·event·handlers·written·for·<code·class="inline">error_logger</code>,·just·add·your·event·handler
513 with</p><pre><code·class="text">error_logger:add_report_handler/1,2.</code></pre><p>This·automatically·starts·the·error·logger·event·manager,·and·adds513 with</p><pre><code·class="text">error_logger:add_report_handler/1,2.</code></pre><p>This·automatically·starts·the·error·logger·event·manager,·and·adds
514 <code·class="inline">error_logger</code>·as·a·handler·to·Logger,·with·the·following·configuration:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3053239942-1">#{</span><span·class="ss">level</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">514 <code·class="inline">error_logger</code>·as·a·handler·to·Logger,·with·the·following·configuration:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0547844468-1">#{</span><span·class="ss">level</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">
515 ··</span><span·class="ss">filter_default</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">log</span><span·class="p">,</span><span·class="w">515 ··</span><span·class="ss">filter_default</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">log</span><span·class="p">,</span><span·class="w">
Max diff block lines reached; 57610/104108 bytes (55.34%) of diff not shown.
876 B
html2text {}
Max HTML report size reached
95.7 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/logger_cookbook.html
    
Offset 140, 27 lines modifiedOffset 140, 27 lines modified
140 </h2>140 </h2>
141 <h3·id="print-the-primary-logger-configurations"·class="section-heading">141 <h3·id="print-the-primary-logger-configurations"·class="section-heading">
142 ··<a·href="#print-the-primary-logger-configurations"·class="hover-link">142 ··<a·href="#print-the-primary-logger-configurations"·class="hover-link">
143 ····<i·class="ri-link-m"·aria-hidden="true"></i>143 ····<i·class="ri-link-m"·aria-hidden="true"></i>
144 ··</a>144 ··</a>
145 ··<span·class="text">Print·the·primary·Logger·configurations.</span>145 ··<span·class="text">Print·the·primary·Logger·configurations.</span>
146 </h3>146 </h3>
147 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">i</span><span·class="p"·data-group-id="4851510994-1">(</span><span·class="ss">primary</span><span·class="p"·data-group-id="4851510994-1">)</span><span·class="p">.</span><span·class="w">147 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">i</span><span·class="p"·data-group-id="6894652376-1">(</span><span·class="ss">primary</span><span·class="p"·data-group-id="6894652376-1">)</span><span·class="p">.</span><span·class="w">
148 </span><span·class="n">Primary</span><span·class="w">·</span><span·class="nc">configuration</span><span·class="p">:</span><span·class="w">148 </span><span·class="n">Primary</span><span·class="w">·</span><span·class="nc">configuration</span><span·class="p">:</span><span·class="w">
149 ····</span><span·class="n">Level</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">notice</span><span·class="w">149 ····</span><span·class="n">Level</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">notice</span><span·class="w">
150 ····</span><span·class="n">Filter</span><span·class="w">·</span><span·class="n">Default</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">log</span><span·class="w">150 ····</span><span·class="n">Filter</span><span·class="w">·</span><span·class="n">Default</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">log</span><span·class="w">
151 ····</span><span·class="n">Filters</span><span·class="p">:</span><span·class="w">151 ····</span><span·class="n">Filters</span><span·class="p">:</span><span·class="w">
152 ········</span><span·class="p"·data-group-id="4851510994-2">(</span><span·class="ss">none</span><span·class="p"·data-group-id="4851510994-2">)</span></code></pre><p>It·is·also·possible·to·fetch·the·configuration·using152 ········</span><span·class="p"·data-group-id="6894652376-2">(</span><span·class="ss">none</span><span·class="p"·data-group-id="6894652376-2">)</span></code></pre><p>It·is·also·possible·to·fetch·the·configuration·using
153 <a·href="logger.html#get_primary_config/0"><code·class="inline">logger:get_primary_config()</code></a>.</p><h4>See·also</h4><ul><li><a·href="logger.html#i/0">logger:i()</a></li><li><a·href="logger_chapter.html#configuration">Configuration</a>·in·the·Logging·User's·Guide</li></ul><h3·id="print-the-configuration-of-all-handlers"·class="section-heading">153 <a·href="logger.html#get_primary_config/0"><code·class="inline">logger:get_primary_config()</code></a>.</p><h4>See·also</h4><ul><li><a·href="logger.html#i/0">logger:i()</a></li><li><a·href="logger_chapter.html#configuration">Configuration</a>·in·the·Logging·User's·Guide</li></ul><h3·id="print-the-configuration-of-all-handlers"·class="section-heading">
154 ··<a·href="#print-the-configuration-of-all-handlers"·class="hover-link">154 ··<a·href="#print-the-configuration-of-all-handlers"·class="hover-link">
155 ····<i·class="ri-link-m"·aria-hidden="true"></i>155 ····<i·class="ri-link-m"·aria-hidden="true"></i>
156 ··</a>156 ··</a>
157 ··<span·class="text">Print·the·configuration·of·all·handlers.</span>157 ··<span·class="text">Print·the·configuration·of·all·handlers.</span>
158 </h3>158 </h3>
159 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">i</span><span·class="p"·data-group-id="0000623529-1">(</span><span·class="ss">handlers</span><span·class="p"·data-group-id="0000623529-1">)</span><span·class="p">.</span><span·class="w">159 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">i</span><span·class="p"·data-group-id="3274335787-1">(</span><span·class="ss">handlers</span><span·class="p"·data-group-id="3274335787-1">)</span><span·class="p">.</span><span·class="w">
160 </span><span·class="n">Handler</span><span·class="w">·</span><span·class="nc">configuration</span><span·class="p">:</span><span·class="w">160 </span><span·class="n">Handler</span><span·class="w">·</span><span·class="nc">configuration</span><span·class="p">:</span><span·class="w">
161 ····</span><span·class="n">Id</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">default</span><span·class="w">161 ····</span><span·class="n">Id</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">default</span><span·class="w">
162 ········</span><span·class="n">Module</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="w">162 ········</span><span·class="n">Module</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="w">
163 ········</span><span·class="n">Level</span><span·class="p">:</span><span·class="w">··</span><span·class="ss">all</span><span·class="w">163 ········</span><span·class="n">Level</span><span·class="p">:</span><span·class="w">··</span><span·class="ss">all</span><span·class="w">
164 ········</span><span·class="n">Formatter</span><span·class="p">:</span><span·class="w">164 ········</span><span·class="n">Formatter</span><span·class="p">:</span><span·class="w">
165 ············</span><span·class="n">Module</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">logger_formatter</span><span·class="w">165 ············</span><span·class="n">Module</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">logger_formatter</span><span·class="w">
166 ············</span><span·class="n">Config</span><span·class="p">:</span><span·class="w">166 ············</span><span·class="n">Config</span><span·class="p">:</span><span·class="w">
Offset 169, 18 lines modifiedOffset 169, 18 lines modified
169 ········</span><span·class="n">Filter</span><span·class="w">·</span><span·class="n">Default</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">stop</span><span·class="w">169 ········</span><span·class="n">Filter</span><span·class="w">·</span><span·class="n">Default</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">stop</span><span·class="w">
170 ········</span><span·class="n">Filters</span><span·class="p">:</span><span·class="w">170 ········</span><span·class="n">Filters</span><span·class="p">:</span><span·class="w">
171 ············</span><span·class="n">Id</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">remote_gl</span><span·class="w">171 ············</span><span·class="n">Id</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">remote_gl</span><span·class="w">
172 ················</span><span·class="n">Fun</span><span·class="p">:</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">remote_gl</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">172 ················</span><span·class="n">Fun</span><span·class="p">:</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">remote_gl</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">
173 ················</span><span·class="n">Arg</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">stop</span><span·class="w">173 ················</span><span·class="n">Arg</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">stop</span><span·class="w">
174 ············</span><span·class="n">Id</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">domain</span><span·class="w">174 ············</span><span·class="n">Id</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">domain</span><span·class="w">
175 ················</span><span·class="n">Fun</span><span·class="p">:</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">175 ················</span><span·class="n">Fun</span><span·class="p">:</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">
176 ················</span><span·class="n">Arg</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0000623529-2">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="ss">super</span><span·class="p">,</span><span·class="p"·data-group-id="0000623529-3">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="ss">sasl</spa[·...·truncated·by·diffoscope;·len:·96,·SHA:·229b164fc48b4de136fbb0b2ecf57e957065f5318a6a02161313016a1e4fd6f5·...·]-2">}</span><span·class="w">176 ················</span><span·class="n">Arg</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="3274335787-2">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="ss">super</span><span·class="p">,</span><span·class="p"·data-group-id="3274335787-3">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="ss">sasl</spa[·...·truncated·by·diffoscope;·len:·96,·SHA:·0045a00ccf0bcbb8806d1f24f045c4dd18ae54cb2c725edcaa6f16afcc837245·...·]-2">}</span><span·class="w">
177 ············</span><span·class="n">Id</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">no_domain</span><span·class="w">177 ············</span><span·class="n">Id</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">no_domain</span><span·class="w">
178 ················</span><span·class="n">Fun</span><span·class="p">:</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">178 ················</span><span·class="n">Fun</span><span·class="p">:</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">
179 ················</span><span·class="n">Arg</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0000623529-4">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="p"·data-group-id="0000623529-5">[</span><span·class="p"·data-group-id="0000623529-5">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·dc10af718a0e62592c599192fefc0b30bc9849d37f4ff5d4196d183f9d50f8fe·...·]-4">}</span><span·class="w">179 ················</span><span·class="n">Arg</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="3274335787-4">{</span><span·class="ss">log</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="p"·data-group-id="3274335787-5">[</span><span·class="p"·data-group-id="3274335787-5">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·961533a5a48926a3ec5fce291c362bd9c8d58742509f66ac5fd463ed3f48db1a·...·]-4">}</span><span·class="w">
180 ········</span><span·class="n">Handler</span><span·class="w">·</span><span·class="n">Config</span><span·class="p">:</span><span·class="w">180 ········</span><span·class="n">Handler</span><span·class="w">·</span><span·class="n">Config</span><span·class="p">:</span><span·class="w">
181 ············</span><span·class="nc">burst_limit_enable</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">true</span><span·class="w">181 ············</span><span·class="nc">burst_limit_enable</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">true</span><span·class="w">
182 ············</span><span·class="nc">burst_limit_max_count</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">500</span><span·class="w">182 ············</span><span·class="nc">burst_limit_max_count</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">500</span><span·class="w">
183 ············</span><span·class="nc">burst_limit_window_time</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">1000</span><span·class="w">183 ············</span><span·class="nc">burst_limit_window_time</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">1000</span><span·class="w">
184 ············</span><span·class="nc">drop_mode_qlen</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">200</span><span·class="w">184 ············</span><span·class="nc">drop_mode_qlen</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">200</span><span·class="w">
185 ············</span><span·class="nc">filesync_repeat_interval</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">no_repeat</span><span·class="w">185 ············</span><span·class="nc">filesync_repeat_interval</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">no_repeat</span><span·class="w">
186 ············</span><span·class="nc">flush_qlen</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">1000</span><span·class="w">186 ············</span><span·class="nc">flush_qlen</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">1000</span><span·class="w">
Offset 211, 15 lines modifiedOffset 211, 15 lines modified
211 level·to·<code·class="inline">info</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">kernel</span><span·class="w">·</span><span·class="ss">logger_level</span><span·class="w">·</span><span·class="ss">info</span><span·class="w">211 level·to·<code·class="inline">info</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">kernel</span><span·class="w">·</span><span·class="ss">logger_level</span><span·class="w">·</span><span·class="ss">info</span><span·class="w">
212 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">4</span><span·class="o">-</span><span·class="n">Nov</span><span·class="o">-</span><span·class="mi">2019</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">33</span><span·class="p">:</span><span·class="mf">11.742069</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">212 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">4</span><span·class="o">-</span><span·class="n">Nov</span><span·class="o">-</span><span·class="mi">2019</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">33</span><span·class="p">:</span><span·class="mf">11.742069</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">
213 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">kernel</span><span·class="w">213 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">kernel</span><span·class="w">
214 ····</span><span·class="nc">started_at</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nonode@nohost</span><span·class="w">214 ····</span><span·class="nc">started_at</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nonode@nohost</span><span·class="w">
215 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">4</span><span·class="o">-</span><span·class="n">Nov</span><span·class="o">-</span><span·class="mi">2019</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">33</span><span·class="p">:</span><span·class="mf">11.746546</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">215 </span><span·class="o">=</span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="o">==</span><span·class="o">==</span><span·class="w">·</span><span·class="mi">4</span><span·class="o">-</span><span·class="n">Nov</span><span·class="o">-</span><span·class="mi">2019</span><span·class="p">:</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">33</span><span·class="p">:</span><span·class="mf">11.746546</span><span·class="w">·</span><span·class="o">==</span><span·class="o">=</span><span·class="w">
216 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">stdlib</span><span·class="w">216 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">stdlib</span><span·class="w">
217 ····</span><span·class="nc">started_at</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nonode@nohost</span><span·class="w">217 ····</span><span·class="nc">started_at</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">nonode@nohost</span><span·class="w">
218 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mf">5.3</span><span·class="w">··</span><span·class="p"·data-group-id="0966947738-1">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="0966947738-1">)</span><span·class="w">218 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mf">5.3</span><span·class="w">··</span><span·class="p"·data-group-id="5003077067-1">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="5003077067-1">)</span><span·class="w">
219 </span><span·class="mi">1</span><span·class="o">&gt;</span></code></pre><h2·id="configure-logger-formatter"·class="section-heading">219 </span><span·class="mi">1</span><span·class="o">&gt;</span></code></pre><h2·id="configure-logger-formatter"·class="section-heading">
220 ··<a·href="#configure-logger-formatter"·class="hover-link">220 ··<a·href="#configure-logger-formatter"·class="hover-link">
221 ····<i·class="ri-link-m"·aria-hidden="true"></i>221 ····<i·class="ri-link-m"·aria-hidden="true"></i>
222 ··</a>222 ··</a>
223 ··<span·class="text">Configure·Logger·formatter</span>223 ··<span·class="text">Configure·Logger·formatter</span>
224 </h2>224 </h2>
225 <p>In·order·to·fit·better·into·your·existing·logging·infrastructure·Logger·can225 <p>In·order·to·fit·better·into·your·existing·logging·infrastructure·Logger·can
Offset 229, 40 lines modifiedOffset 229, 40 lines modified
229 ····<i·class="ri-link-m"·aria-hidden="true"></i>229 ····<i·class="ri-link-m"·aria-hidden="true"></i>
230 ··</a>230 ··</a>
231 ··<span·class="text">Single·line·configuration</span>231 ··<span·class="text">Single·line·configuration</span>
232 </h3>232 </h3>
233 <p>Since·single·line·logging·is·the·default·of·the·built-in·formatter·you·only·have233 <p>Since·single·line·logging·is·the·default·of·the·built-in·formatter·you·only·have
234 to·provide·the·empty·map·as·the·configuration.·The·example·below·uses·the234 to·provide·the·empty·map·as·the·configuration.·The·example·below·uses·the
235 <code·class="inline">sys.config</code>·to·change·the·formatter·configuration.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">cat</span><span·class="w">·</span><span·class="ss">sys</span><span·class="p">.</span><span·class="ss">config</span><span·class="w">235 <code·class="inline">sys.config</code>·to·change·the·formatter·configuration.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">cat</span><span·class="w">·</span><span·class="ss">sys</span><span·class="p">.</span><span·class="ss">config</span><span·class="w">
236 </span><span·class="p"·data-group-id="5129977691-1">[</span><span·class="p"·data-group-id="5129977691-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">236 </span><span·class="p"·data-group-id="4046812955-1">[</span><span·class="p"·data-group-id="4046812955-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
237 ··</span><span·class="p"·data-group-id="5129977691-3">[</span><span·class="p"·data-group-id="5129977691-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">237 ··</span><span·class="p"·data-group-id="4046812955-3">[</span><span·class="p"·data-group-id="4046812955-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
238 ····</span><span·class="p"·data-group-id="5129977691-5">[</span><span·class="p"·data-group-id="5129977691-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">238 ····</span><span·class="p"·data-group-id="4046812955-5">[</span><span·class="p"·data-group-id="4046812955-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
239 ······</span><span·class="p"·data-group-id="5129977691-7">#{</span><span·class="w">·</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5129977691-8">{</span><span·class="ss">logger_formatter</span><span·c[·...·truncated·by·diffoscope;·len:·584,·SHA:·acb22863857ca8c150ecb8a4822058c5f8d7a2f7baaeff1d21a8381028e9a657·...·]-1">]</span><span·class="p">.</span><span·class="w">239 ······</span><span·class="p"·data-group-id="4046812955-7">#{</span><span·class="w">·</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4046812955-8">{</span><span·class="ss">logger_formatter</span><span·c[·...·truncated·by·diffoscope;·len:·584,·SHA:·81c6db0eb6494c0d5de41b5c209de88672a444c09a0460eaa1173ae812ac2531·...·]-1">]</span><span·class="p">.</span><span·class="w">
240 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">config</span><span·class="w">·</span><span·class="ss">sys</span><span·class="w">240 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">config</span><span·class="w">·</span><span·class="ss">sys</span><span·class="w">
241 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mf">5.1</span><span·class="w">··</span><span·class="p"·data-group-id="5129977691-10">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="5129977691-10">)</span><span·class="gp·unselectable">241 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mf">5.1</span><span·class="w">··</span><span·class="p"·data-group-id="4046812955-10">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="4046812955-10">)</span><span·class="gp·unselectable">
242 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="5129977691-11">(</span><span·class="s">&quot;Oh·noes,·an·error&quot;</span><span·class="p"·data-group-id="5129977691-11">)</span><span·class="p">.</span><span·class="w">242 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="4046812955-11">(</span><span·class="s">&quot;Oh·noes,·an·error&quot;</span><span·class="p"·data-group-id="4046812955-11">)</span><span·class="p">.</span><span·class="w">
243 </span><span·class="mi">1962</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">03</span><span·class="n">T11</span><span·class="p">:</span><span·class="mi">07</span><span·class="p">:</span><span·class="mf">47.466763</span><span·class="o">-</span><span·class="mi">04</span><span·class="p">:</span><span·class="mi">00</span><span·class="w">·</span><span·class="nc">error</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Oh</span><span·class="w">·</span><span·class="ss">noes</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">an</span><span·class="w">·</span><span·class="ss">error</span></code></pre><p>However,·if·you·just·want·to·change·it·for·the·current·session·you·can·also·do243 </span><span·class="mi">1962</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">03</span><span·class="n">T11</span><span·class="p">:</span><span·class="mi">07</span><span·class="p">:</span><span·class="mf">47.466763</span><span·class="o">-</span><span·class="mi">04</span><span·class="p">:</span><span·class="mi">00</span><span·class="w">·</span><span·class="nc">error</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Oh</span><span·class="w">·</span><span·class="ss">noes</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">an</span><span·class="w">·</span><span·class="ss">error</span></code></pre><p>However,·if·you·just·want·to·change·it·for·the·current·session·you·can·also·do
244 that.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">set_handler_config</span><span·class="p"·data-group-id="7039213004-1">(</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7039213004-2">{</span><span·class="ss">logg[·...·truncated·by·diffoscope;·len:·268,·SHA:·062da6a9511953946eaf2d90c93e09a23836d0c45ee761278cbe0547f811ac35·...·]-1">)</span><span·class="p">.</span><span·class="w">244 that.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">set_handler_config</span><span·class="p"·data-group-id="4751774833-1">(</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4751774833-2">{</span><span·class="ss">logg[·...·truncated·by·diffoscope;·len:·268,·SHA:·35553b828c95e08379bc812aa19fc239873bde425cbe8086e089d088e4ea890c·...·]-1">)</span><span·class="p">.</span><span·class="w">
245 </span><span·class="ss">ok</span><span·class="gp·unselectable">245 </span><span·class="ss">ok</span><span·class="gp·unselectable">
246 2&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="7039213004-4">(</span><span·class="s">&quot;Oh·noes,·another·error&quot;</span><span·class="p"·data-group-id="7039213004-4">)</span><span·class="p">.</span><span·class="w">246 2&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="4751774833-4">(</span><span·class="s">&quot;Oh·noes,·another·error&quot;</span><span·class="p"·data-group-id="4751774833-4">)</span><span·class="p">.</span><span·class="w">
247 </span><span·class="mi">1962</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">04</span><span·class="n">T15</span><span·class="p">:</span><span·class="mi">34</span><span·class="p">:</span><span·class="mf">02.648713</span><span·class="o">-</span><span·class="mi">04</span><span·class="p">:</span><span·class="mi">00</span><span·class="w">·</span><span·class="nc">error</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Oh</span><span·class="w">·</span><span·class="ss">noes</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">another</span><span·class="w">·</span><span·class="ss">error</span></code></pre><h4>See·also</h4><ul><li><a·href="logger_formatter.html#t:config/0">logger_formatter's·Configuration</a></li><li><a·href="logger_chapter.html#formatters">Formatters</a>·in·the·Logging·User's·Guide</li><li><a·href="logger.html#set_handler_config/3"><code·class="inline">logger:set_handler_config/3</code></a></li></ul><h3·id="add-file-and-line-number-to-log-entries"·class="section-heading">247 </span><span·class="mi">1962</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">04</span><span·class="n">T15</span><span·class="p">:</span><span·class="mi">34</span><span·class="p">:</span><span·class="mf">02.648713</span><span·class="o">-</span><span·class="mi">04</span><span·class="p">:</span><span·class="mi">00</span><span·class="w">·</span><span·class="nc">error</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Oh</span><span·class="w">·</span><span·class="ss">noes</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">another</span><span·class="w">·</span><span·class="ss">error</span></code></pre><h4>See·also</h4><ul><li><a·href="logger_formatter.html#t:config/0">logger_formatter's·Configuration</a></li><li><a·href="logger_chapter.html#formatters">Formatters</a>·in·the·Logging·User's·Guide</li><li><a·href="logger.html#set_handler_config/3"><code·class="inline">logger:set_handler_config/3</code></a></li></ul><h3·id="add-file-and-line-number-to-log-entries"·class="section-heading">
248 ··<a·href="#add-file-and-line-number-to-log-entries"·class="hover-link">248 ··<a·href="#add-file-and-line-number-to-log-entries"·class="hover-link">
249 ····<i·class="ri-link-m"·aria-hidden="true"></i>249 ····<i·class="ri-link-m"·aria-hidden="true"></i>
250 ··</a>250 ··</a>
251 ··<span·class="text">Add·file·and·line·number·to·log·entries</span>251 ··<span·class="text">Add·file·and·line·number·to·log·entries</span>
252 </h3>252 </h3>
253 <p>You·can·change·what·is·printed·to·the·log·by·using·the·formatter·template:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">cat</span><span·class="w">·</span><span·class="ss">sys</span><span·class="p">.</span><span·class="ss">config</span><span·class="w">253 <p>You·can·change·what·is·printed·to·the·log·by·using·the·formatter·template:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">cat</span><span·class="w">·</span><span·class="ss">sys</span><span·class="p">.</span><span·class="ss">config</span><span·class="w">
254 </span><span·class="p"·data-group-id="1208580599-1">[</span><span·class="p"·data-group-id="1208580599-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">254 </span><span·class="p"·data-group-id="0329819465-1">[</span><span·class="p"·data-group-id="0329819465-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
255 ··</span><span·class="p"·data-group-id="1208580599-3">[</span><span·class="p"·data-group-id="1208580599-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">255 ··</span><span·class="p"·data-group-id="0329819465-3">[</span><span·class="p"·data-group-id="0329819465-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
256 ····</span><span·class="p"·data-group-id="1208580599-5">[</span><span·class="p"·data-group-id="1208580599-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">256 ····</span><span·class="p"·data-group-id="0329819465-5">[</span><span·class="p"·data-group-id="0329819465-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
257 ······</span><span·class="p"·data-group-id="1208580599-7">#{</span><span·class="w">·</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1208580599-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">257 ······</span><span·class="p"·data-group-id="0329819465-7">#{</span><span·class="w">·</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0329819465-8">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">
258 ········</span><span·class="p"·data-group-id="1208580599-9">#{</span><span·class="w">·</span><span·class="ss">template</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1208580599-10">[</span><span·class="ss">time</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·1058,·SHA:·c96d3caecc10855ef3375c2cdc404c2048562c443d938fa1d8a69c5bd604a46e·...·]-1">]</span><span·class="p">.</span><span·class="w">258 ········</span><span·class="p"·data-group-id="0329819465-9">#{</span><span·class="w">·</span><span·class="ss">template</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0329819465-10">[</span><span·class="ss">time</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·1058,·SHA:·46de60af6af4600f8622cf8bff7a6996d5d2c4b45ddad3453794c4e99d54982e·...·]-1">]</span><span·class="p">.</span><span·class="w">
259 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">config</span><span·class="w">·</span><span·class="ss">sys</span><span·class="w">259 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">config</span><span·class="w">·</span><span·class="ss">sys</span><span·class="w">
260 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mf">5.1</span><span·class="w">··</span><span·class="p"·data-group-id="1208580599-11">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="1208580599-11">)</span><span·class="gp·unselectable">260 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mf">5.1</span><span·class="w">··</span><span·class="p"·data-group-id="0329819465-11">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="0329819465-11">)</span><span·class="gp·unselectable">
261 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="1208580599-12">(</span><span·class="s">&quot;Oh·noes,·more·errors&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1208580599-13">#{</span><span·class="w">·</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</[·...·truncated·by·diffoscope;·len:·369,·SHA:·22d7423d97be801c7fab884158c73f2a6e5aeccf89e570f2a298e63555651bfa·...·]-12">)</span><span·class="p">.</span><span·class="w">261 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="0329819465-12">(</span><span·class="s">&quot;Oh·noes,·more·errors&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="0329819465-13">#{</span><span·class="w">·</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</[·...·truncated·by·diffoscope;·len:·369,·SHA:·29310d77aee640ae70106831e6cb5120a320541aa3f65ddf905de8e09cdf9d21·...·]-12">)</span><span·class="p">.</span><span·class="w">
262 </span><span·class="mi">1962</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">05</span><span·class="n">T07</span><span·class="p">:</span><span·class="mi">37</span><span·class="p">:</span><span·class="mf">44.104241</span><span·class="o">+</span><span·class="mi">02</span><span·class="p">:</span><span·class="mi">00</span><span·class="w">·</span><span·class="ss">shell</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">1</span><span·class="w">·</span><span·class="nc">error</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Oh</span><span·class="w">·</span><span·class="ss">noes</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">more</span><span·class="w">·</span><span·class="ss">errors</span></code></pre><p>Note·that·file·and·line·have·to·be·added·in·the·metadata·by·the·caller·of262 </span><span·class="mi">1962</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">05</span><span·class="n">T07</span><span·class="p">:</span><span·class="mi">37</span><span·class="p">:</span><span·class="mf">44.104241</span><span·class="o">+</span><span·class="mi">02</span><span·class="p">:</span><span·class="mi">00</span><span·class="w">·</span><span·class="ss">shell</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">1</span><span·class="w">·</span><span·class="nc">error</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Oh</span><span·class="w">·</span><span·class="ss">noes</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">more</span><span·class="w">·</span><span·class="ss">errors</span></code></pre><p>Note·that·file·and·line·have·to·be·added·in·the·metadata·by·the·caller·of
263 <a·href="logger.html#log/3"><code·class="inline">logger:log/3</code></a>·as·otherwise·Logger·will·not·know·from·where·it·was·called.·The263 <a·href="logger.html#log/3"><code·class="inline">logger:log/3</code></a>·as·otherwise·Logger·will·not·know·from·where·it·was·called.·The
264 file·and·line·number·are·automatically·added·if·you·use·the·<code·class="inline">?LOG_ERROR</code>·macros264 file·and·line·number·are·automatically·added·if·you·use·the·<code·class="inline">?LOG_ERROR</code>·macros
265 in·<code·class="inline">kernel/include/logger.hrl</code>.</p><h4>See·also</h4><ul><li><a·href="logger_formatter.html#t:config/0">logger_formatter's·Configuration</a></li><li><a·href="logger_formatter.html#t:template/0">logger_formatter's·Template</a></li><li><a·href="logger.html#module-macros">Logger·Macros</a></li><li><a·href="logger_chapter.html#metadata">Metadata</a>·in·the·Logging·User's·Guide</li></ul><h2·id="configuring-handlers"·class="section-heading">265 in·<code·class="inline">kernel/include/logger.hrl</code>.</p><h4>See·also</h4><ul><li><a·href="logger_formatter.html#t:config/0">logger_formatter's·Configuration</a></li><li><a·href="logger_formatter.html#t:template/0">logger_formatter's·Template</a></li><li><a·href="logger.html#module-macros">Logger·Macros</a></li><li><a·href="logger_chapter.html#metadata">Metadata</a>·in·the·Logging·User's·Guide</li></ul><h2·id="configuring-handlers"·class="section-heading">
266 ··<a·href="#configuring-handlers"·class="hover-link">266 ··<a·href="#configuring-handlers"·class="hover-link">
267 ····<i·class="ri-link-m"·aria-hidden="true"></i>267 ····<i·class="ri-link-m"·aria-hidden="true"></i>
268 ··</a>268 ··</a>
Offset 271, 67 lines modifiedOffset 271, 67 lines modified
271 <h3·id="print-logs-to-a-file"·class="section-heading">271 <h3·id="print-logs-to-a-file"·class="section-heading">
272 ··<a·href="#print-logs-to-a-file"·class="hover-link">272 ··<a·href="#print-logs-to-a-file"·class="hover-link">
273 ····<i·class="ri-link-m"·aria-hidden="true"></i>273 ····<i·class="ri-link-m"·aria-hidden="true"></i>
274 ··</a>274 ··</a>
275 ··<span·class="text">Print·logs·to·a·file</span>275 ··<span·class="text">Print·logs·to·a·file</span>
276 </h3>276 </h3>
277 <p>Instead·of·printing·the·logs·to·stdout·we·print·them·to·a·rotating·file·log.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">cat</span><span·class="w">·</span><span·class="ss">sys</span><span·class="p">.</span><span·class="ss">config</span><span·class="w">277 <p>Instead·of·printing·the·logs·to·stdout·we·print·them·to·a·rotating·file·log.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">cat</span><span·class="w">·</span><span·class="ss">sys</span><span·class="p">.</span><span·class="ss">config</span><span·class="w">
278 </span><span·class="p"·data-group-id="2836378316-1">[</span><span·class="p"·data-group-id="2836378316-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">278 </span><span·class="p"·data-group-id="4387170453-1">[</span><span·class="p"·data-group-id="4387170453-2">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">
279 ··</span><span·class="p"·data-group-id="2836378316-3">[</span><span·class="p"·data-group-id="2836378316-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">279 ··</span><span·class="p"·data-group-id="4387170453-3">[</span><span·class="p"·data-group-id="4387170453-4">{</span><span·class="ss">logger</span><span·class="p">,</span><span·class="w">
280 ····</span><span·class="p"·data-group-id="2836378316-5">[</span><span·class="p"·data-group-id="2836378316-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">280 ····</span><span·class="p"·data-group-id="4387170453-5">[</span><span·class="p"·data-group-id="4387170453-6">{</span><span·class="ss">handler</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
281 ······</span><span·class="p"·data-group-id="2836378316-7">#{</span><span·class="w">·</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2836378316-8">#{</span><span·class="w">·</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;log/erlang.log&quot;</span><span·class="p">,</span><span·class="w">281 ······</span><span·class="p"·data-group-id="4387170453-7">#{</span><span·class="w">·</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4387170453-8">#{</span><span·class="w">·</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;log/erlang.log&quot;</span><span·class="p">,</span><span·class="w">
282 ······················</span><span·class="ss">max_no_bytes</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">4096</span><span·class="p">,</span><span·class="w">282 ······················</span><span·class="ss">max_no_bytes</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">4096</span><span·class="p">,</span><span·class="w">
283 ······················</span><span·class="ss">max_no_files</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">5</span><span·class="p"·data-group-id="2836378316-8">}</span><span·class="p">,</span><span·class="w">283 ······················</span><span·class="ss">max_no_files</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">5</span><span·class="p"·data-group-id="4387170453-8">}</span><span·class="p">,</span><span·class="w">
284 ·········</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2836378316-9">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2836378316-10">#{</span><span·class="p"·data-group-id="2836378316-10">}</span><span·class="p"·data-group-id="283637[·...·truncated·by·diffoscope;·len:·375,·SHA:·b40637eeb30c6a18c2d59463fc730e2b50ddd9bf91c05899759e54e29ab4cfa9·...·]-1">]</span><span·class="p">.</span><span·class="w">284 ·········</span><span·class="ss">formatter</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4387170453-9">{</span><span·class="ss">logger_formatter</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4387170453-10">#{</span><span·class="p"·data-group-id="4387170453-10">}</span><span·class="p"·data-group-id="438717[·...·truncated·by·diffoscope;·len:·375,·SHA:·bf2cbf8680e76365ed493cd3fa0b060f51971bd1fcb498010f6508dbec13f1bb·...·]-1">]</span><span·class="p">.</span><span·class="w">
285 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">config</span><span·class="w">·</span><span·class="ss">sys</span><span·class="w">285 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">config</span><span·class="w">·</span><span·class="ss">sys</span><span·class="w">
286 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mf">5.1</span><span·class="w">··</span><span·class="p"·data-group-id="2836378316-11">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="2836378316-11">)</span><span·class="gp·unselectable">286 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V10</span><span·class="p">.</span><span·class="mf">5.1</span><span·class="w">··</span><span·class="p"·data-group-id="4387170453-11">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="4387170453-11">)</span><span·class="gp·unselectable">
287 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="2836378316-12">(</span><span·class="s">&quot;Oh·noes,·even·more·errors&quot;</span><span·class="p"·data-group-id="2836378316-12">)</span><span·class="p">.</span><span·class="w">287 1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="4387170453-12">(</span><span·class="s">&quot;Oh·noes,·even·more·errors&quot;</span><span·class="p"·data-group-id="4387170453-12">)</span><span·class="p">.</span><span·class="w">
288 </span><span·class="ss">ok</span><span·class="gp·unselectable">288 </span><span·class="ss">ok</span><span·class="gp·unselectable">
289 2&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">halt</span><span·class="p"·data-group-id="2836378316-13">(</span><span·class="p"·data-group-id="2836378316-13">)</span><span·class="p">.</span><span·class="w">289 2&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">halt</span><span·class="p"·data-group-id="4387170453-13">(</span><span·class="p"·data-group-id="4387170453-13">)</span><span·class="p">.</span><span·class="w">
290 </span><span·class="sc">$·</span><span·class="ss">cat</span><span·class="w">·</span><span·class="ss">log</span><span·class="o">/</span><span·class="ss">erlang</span><span·class="p">.</span><span·class="ss">log</span><span·class="w">290 </span><span·class="sc">$·</span><span·class="ss">cat</span><span·class="w">·</span><span·class="ss">log</span><span·class="o">/</span><span·class="ss">erlang</span><span·class="p">.</span><span·class="ss">log</span><span·class="w">
291 </span><span·class="mi">2019</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">07</span><span·class="n">T11</span><span·class="p">:</span><span·class="mi">47</span><span·class="p">:</span><span·class="mf">16.837958</span><span·class="o">+</span><span·class="mi">02</span><span·class="p">:</span><span·class="mi">00</span><span·class="w">·</span><span·class="nc">error</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Oh</span><span·class="w">·</span><span·class="ss">noes</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">even</span><span·class="w">·</span><span·class="ss">more</span><span·class="w">·</span><span·class="ss">errors</span></code></pre><h4>See·also</h4><ul><li><a·href="logger_std_h.html"><code·class="inline">logger_std_h</code></a></li><li><a·href="logger_chapter.html#handlers">Handlers</a>·in·the·Logging·User's·Guide</li></ul><h3·id="debug-only-handler"·class="section-heading">291 </span><span·class="mi">2019</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">07</span><span·class="n">T11</span><span·class="p">:</span><span·class="mi">47</span><span·class="p">:</span><span·class="mf">16.837958</span><span·class="o">+</span><span·class="mi">02</span><span·class="p">:</span><span·class="mi">00</span><span·class="w">·</span><span·class="nc">error</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Oh</span><span·class="w">·</span><span·class="ss">noes</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">even</span><span·class="w">·</span><span·class="ss">more</span><span·class="w">·</span><span·class="ss">errors</span></code></pre><h4>See·also</h4><ul><li><a·href="logger_std_h.html"><code·class="inline">logger_std_h</code></a></li><li><a·href="logger_chapter.html#handlers">Handlers</a>·in·the·Logging·User's·Guide</li></ul><h3·id="debug-only-handler"·class="section-heading">
292 ··<a·href="#debug-only-handler"·class="hover-link">292 ··<a·href="#debug-only-handler"·class="hover-link">
293 ····<i·class="ri-link-m"·aria-hidden="true"></i>293 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Max diff block lines reached; 55954/96969 bytes (57.70%) of diff not shown.
819 B
html2text {}
Max HTML report size reached
6.02 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/logger_disk_log_h.html
    
Offset 160, 20 lines modifiedOffset 160, 20 lines modified
160 sync·if·something·has·actually·been·logged.</p><p>Defaults·to·<code·class="inline">5000</code>·milliseconds.</p><p>If·<code·class="inline">no_repeat</code>·is·set·as·value,·the·repeated·sync·operation·is·disabled.·The160 sync·if·something·has·actually·been·logged.</p><p>Defaults·to·<code·class="inline">5000</code>·milliseconds.</p><p>If·<code·class="inline">no_repeat</code>·is·set·as·value,·the·repeated·sync·operation·is·disabled.·The
161 user·can·also·call·the·<a·href="#filesync/1"><code·class="inline">filesync/1</code></a>·function·to·perform·a161 user·can·also·call·the·<a·href="#filesync/1"><code·class="inline">filesync/1</code></a>·function·to·perform·a
162 disk_log·sync.</p></li></ul><p>Other·configuration·parameters·exist,·to·be·used·for·customizing·the·overload162 disk_log·sync.</p></li></ul><p>Other·configuration·parameters·exist,·to·be·used·for·customizing·the·overload
163 protection·behaviour.·The·same·parameters·are·used·both·in·the·standard·handler163 protection·behaviour.·The·same·parameters·are·used·both·in·the·standard·handler
164 and·the·disk_log·handler,·and·are·documented·in·the164 and·the·disk_log·handler,·and·are·documented·in·the
165 <a·href="logger_chapter.html#overload_protection"><code·class="inline">User's·Guide</code></a>.</p><p>Notice·that·when·changing·the·configuration·of·the·handler·in·runtime,·the165 <a·href="logger_chapter.html#overload_protection"><code·class="inline">User's·Guide</code></a>.</p><p>Notice·that·when·changing·the·configuration·of·the·handler·in·runtime,·the
166 disk_log·options·(<code·class="inline">file</code>,·<code·class="inline">type</code>,·<code·class="inline">max_no_files</code>,·<code·class="inline">max_no_bytes</code>)·must·not·be166 disk_log·options·(<code·class="inline">file</code>,·<code·class="inline">type</code>,·<code·class="inline">max_no_files</code>,·<code·class="inline">max_no_bytes</code>)·must·not·be
167 modified.</p><p>Example·of·adding·a·disk_log·handler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="3906142709-1">(</span><span·class="ss">my_disk_log_h</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_disk_log_h</span><span·class="p">,</span><span·class="w">167 modified.</p><p>Example·of·adding·a·disk_log·handler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="6706152420-1">(</span><span·class="ss">my_disk_log_h</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_disk_log_h</span><span·class="p">,</span><span·class="w">
168 ···················</span><span·class="p"·data-group-id="3906142709-2">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3906142709-3">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;./my_disk_log&quot;</span><span·class="p">,</span><span·class="w">168 ···················</span><span·class="p"·data-group-id="6706152420-2">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6706152420-3">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;./my_disk_log&quot;</span><span·class="p">,</span><span·class="w">
169 ·································</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">wrap</span><span·class="p">,</span><span·class="w">169 ·································</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">wrap</span><span·class="p">,</span><span·class="w">
170 ·································</span><span·class="ss">max_no_files</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">170 ·································</span><span·class="ss">max_no_files</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">
171 ·································</span><span·class="ss">max_no_bytes</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">10000</span><span·class="p">,</span><span·class="w">171 ·································</span><span·class="ss">max_no_bytes</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">10000</span><span·class="p">,</span><span·class="w">
172 ·································</span><span·class="ss">filesync_repeat_interval</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1000</span><span·class="p"·data-group-id="3906142709-3">}</span><span·class="p"·data-group-id="3906142709-2">}</span><span·class="p"·data-group-id="3906142709-1">)</span><span·class="p">.</span></code></pre><p>To·use·the·disk_log·handler·instead·of·the·default·standard·handler·when172 ·································</span><span·class="ss">filesync_repeat_interval</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1000</span><span·class="p"·data-group-id="6706152420-3">}</span><span·class="p"·data-group-id="6706152420-2">}</span><span·class="p"·data-group-id="6706152420-1">)</span><span·class="p">.</span></code></pre><p>To·use·the·disk_log·handler·instead·of·the·default·standard·handler·when
173 starting·an·Erlang·node,·change·the·Kernel·default·logger·to·use173 starting·an·Erlang·node,·change·the·Kernel·default·logger·to·use
174 <code·class="inline">logger_disk_log_h</code>.·Example:</p><pre><code·class="text">erl·-kernel·logger·'[{handler,default,logger_disk_log_h,174 <code·class="inline">logger_disk_log_h</code>.·Example:</p><pre><code·class="text">erl·-kernel·logger·'[{handler,default,logger_disk_log_h,
175 ······················#{config·=&gt;·#{file·=&gt;·&quot;./system_disk_log&quot;}}}]'</code></pre><h2·id="module-see-also"·class="section-heading">175 ······················#{config·=&gt;·#{file·=&gt;·&quot;./system_disk_log&quot;}}}]'</code></pre><h2·id="module-see-also"·class="section-heading">
176 ··<a·href="#module-see-also"·class="hover-link">176 ··<a·href="#module-see-also"·class="hover-link">
177 ····<i·class="ri-link-m"·aria-hidden="true"></i>177 ····<i·class="ri-link-m"·aria-hidden="true"></i>
178 ··</a>178 ··</a>
179 ··<span·class="text">See·Also</span>179 ··<span·class="text">See·Also</span>
Offset 271, 15 lines modifiedOffset 271, 15 lines modified
271 ······<p·class="built-using">271 ······<p·class="built-using">
272 ········Built·using272 ········Built·using
273 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the273 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
274 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>274 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
275 ······</p>275 ······</p>
276 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>276 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
277 ····</footer>277 ····</footer>
278 ··</div>278 ··</div>
279 </main>279 </main>
280 </div>280 </div>
281 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>281 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
282 <script>282 <script>
283 ··document.addEventListener("DOMContentLoaded",·function·()·{283 ··document.addEventListener("DOMContentLoaded",·function·()·{
560 B
html2text {}
Max HTML report size reached
16.9 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/logger_filters.html
    
Offset 247, 35 lines modifiedOffset 247, 35 lines modified
247 ······</div>247 ······</div>
  
248 <p>This·filter·provides·a·way·of·filtering·log·events·based·on·a·<code·class="inline">domain</code>·field·in248 <p>This·filter·provides·a·way·of·filtering·log·events·based·on·a·<code·class="inline">domain</code>·field·in
249 <code·class="inline">Metadata</code>.·This·field·is·optional,·and·the·purpose·of·using·it·is·to·group·log249 <code·class="inline">Metadata</code>.·This·field·is·optional,·and·the·purpose·of·using·it·is·to·group·log
250 events·from,·for·example,·a·specific·functional·area.·This·allows·filtering·or250 events·from,·for·example,·a·specific·functional·area.·This·allows·filtering·or
251 other·specialized·treatment·in·a·Logger·handler.</p><p>A·domain·field·must·be·a·list·of·atoms,·creating·smaller·and·more·specialized251 other·specialized·treatment·in·a·Logger·handler.</p><p>A·domain·field·must·be·a·list·of·atoms,·creating·smaller·and·more·specialized
252 domains·as·the·list·grows·longer.·The·greatest·domain·is·<code·class="inline">[]</code>,·which·comprises252 domains·as·the·list·grows·longer.·The·greatest·domain·is·<code·class="inline">[]</code>,·which·comprises
253 all·possible·domains.</p><p>For·example,·consider·the·following·domains:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">D1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4048919361-1">[</span><span·class="ss">otp</span><span·class="p"·data-group-id="4048919361-1">]</span><span·class="w">253 all·possible·domains.</p><p>For·example,·consider·the·following·domains:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">D1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6786725120-1">[</span><span·class="ss">otp</span><span·class="p"·data-group-id="6786725120-1">]</span><span·class="w">
254 </span><span·class="n">D2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4048919361-2">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sasl</span><span·class="p"·data-group-id="4048919361-2">]</span></code></pre><p><code·class="inline">D1</code>·is·the·greatest·of·the·two,·and·is·said·to·be·a·super-domain·of·<code·class="inline">D2</code>.·<code·class="inline">D2</code>254 </span><span·class="n">D2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6786725120-2">[</span><span·class="ss">otp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sasl</span><span·class="p"·data-group-id="6786725120-2">]</span></code></pre><p><code·class="inline">D1</code>·is·the·greatest·of·the·two,·and·is·said·to·be·a·super-domain·of·<code·class="inline">D2</code>.·<code·class="inline">D2</code>
255 is·a·sub-domain·<code·class="inline">D1</code>.·Both·<code·class="inline">D1</code>·and·<code·class="inline">D2</code>·are·sub-domains·of·<code·class="inline">[]</code>.</p><p>The·above·domains·are·used·for·logs·originating·from·Erlang/OTP.·D1·specifies255 is·a·sub-domain·<code·class="inline">D1</code>.·Both·<code·class="inline">D1</code>·and·<code·class="inline">D2</code>·are·sub-domains·of·<code·class="inline">[]</code>.</p><p>The·above·domains·are·used·for·logs·originating·from·Erlang/OTP.·D1·specifies
256 that·the·log·event·comes·from·Erlang/OTP·in·general,·and·D2·indicates·that·the256 that·the·log·event·comes·from·Erlang/OTP·in·general,·and·D2·indicates·that·the
257 log·event·is·a·so·called·<a·href="logger_chapter.html#sasl_reports">SASL·report</a>.</p><p>The·<code·class="inline">Extra</code>·parameter·to·the·<a·href="#domain/2"><code·class="inline">domain/2</code></a>·function·is·specified·when257 log·event·is·a·so·called·<a·href="logger_chapter.html#sasl_reports">SASL·report</a>.</p><p>The·<code·class="inline">Extra</code>·parameter·to·the·<a·href="#domain/2"><code·class="inline">domain/2</code></a>·function·is·specified·when
258 adding·the·filter·via·<a·href="logger.html#add_primary_filter/2"><code·class="inline">logger:add_primary_filter/2</code></a>·or258 adding·the·filter·via·<a·href="logger.html#add_primary_filter/2"><code·class="inline">logger:add_primary_filter/2</code></a>·or
259 <a·href="logger.html#add_handler_filter/3"><code·class="inline">logger:add_handler_filter/3</code></a>.</p><p>The·filter·compares·the·value·of·the·<code·class="inline">domain</code>·field·in·the·log·event's·metadata259 <a·href="logger.html#add_handler_filter/3"><code·class="inline">logger:add_handler_filter/3</code></a>.</p><p>The·filter·compares·the·value·of·the·<code·class="inline">domain</code>·field·in·the·log·event's·metadata
260 (<code·class="inline">Domain</code>)·against·<code·class="inline">MatchDomain</code>.·The·filter·matches·if·the·value·of·<code·class="inline">Compare</code>260 (<code·class="inline">Domain</code>)·against·<code·class="inline">MatchDomain</code>.·The·filter·matches·if·the·value·of·<code·class="inline">Compare</code>
261 is:</p><ul><li><p><strong><code·class="inline">sub</code></strong>·-·and·<code·class="inline">Domain</code>·is·equal·to·or·a·sub-domain·of·<code·class="inline">MatchDomain</code>,·that261 is:</p><ul><li><p><strong><code·class="inline">sub</code></strong>·-·and·<code·class="inline">Domain</code>·is·equal·to·or·a·sub-domain·of·<code·class="inline">MatchDomain</code>,·that
262 is,·if·<code·class="inline">MatchDomain</code>·is·a·prefix·of·<code·class="inline">Domain</code>.</p></li><li><p><strong><code·class="inline">super</code></strong>·-·and·<code·class="inline">Domain</code>·is·equal·to·or·a·super-domain·of·<code·class="inline">MatchDomain</code>,262 is,·if·<code·class="inline">MatchDomain</code>·is·a·prefix·of·<code·class="inline">Domain</code>.</p></li><li><p><strong><code·class="inline">super</code></strong>·-·and·<code·class="inline">Domain</code>·is·equal·to·or·a·super-domain·of·<code·class="inline">MatchDomain</code>,
263 that·is,·if·<code·class="inline">Domain</code>·is·a·prefix·of·<code·class="inline">MatchDomain</code>.</p></li><li><p><strong><code·class="inline">equal</code></strong>·-·and·<code·class="inline">Domain</code>·is·equal·to·<code·class="inline">MatchDomain</code>.</p></li><li><p><strong><code·class="inline">not_equal</code></strong>·-·and·<code·class="inline">Domain</code>·differs·from·<code·class="inline">MatchDomain</code>,·or·if·there·is·no263 that·is,·if·<code·class="inline">Domain</code>·is·a·prefix·of·<code·class="inline">MatchDomain</code>.</p></li><li><p><strong><code·class="inline">equal</code></strong>·-·and·<code·class="inline">Domain</code>·is·equal·to·<code·class="inline">MatchDomain</code>.</p></li><li><p><strong><code·class="inline">not_equal</code></strong>·-·and·<code·class="inline">Domain</code>·differs·from·<code·class="inline">MatchDomain</code>,·or·if·there·is·no
264 domain·field·in·metadata.</p></li><li><p><strong><code·class="inline">undefined</code></strong>·-·and·there·is·no·domain·field·in·metadata.·In·this·case264 domain·field·in·metadata.</p></li><li><p><strong><code·class="inline">undefined</code></strong>·-·and·there·is·no·domain·field·in·metadata.·In·this·case
265 <code·class="inline">MatchDomain</code>·must·be·set·to·<code·class="inline">[]</code>.</p></li></ul><p>If·the·filter·matches·and·<code·class="inline">Action</code>·is·<code·class="inline">log</code>,·the·log·event·is·allowed.·If·the265 <code·class="inline">MatchDomain</code>·must·be·set·to·<code·class="inline">[]</code>.</p></li></ul><p>If·the·filter·matches·and·<code·class="inline">Action</code>·is·<code·class="inline">log</code>,·the·log·event·is·allowed.·If·the
266 filter·matches·and·<code·class="inline">Action</code>·is·<code·class="inline">stop</code>,·the·log·event·is·stopped.</p><p>If·the·filter·does·not·match,·it·returns·<code·class="inline">ignore</code>,·meaning·that·other·filters,266 filter·matches·and·<code·class="inline">Action</code>·is·<code·class="inline">stop</code>,·the·log·event·is·stopped.</p><p>If·the·filter·does·not·match,·it·returns·<code·class="inline">ignore</code>,·meaning·that·other·filters,
267 or·the·value·of·the·configuration·parameter·<code·class="inline">filter_default</code>,·decide·if·the267 or·the·value·of·the·configuration·parameter·<code·class="inline">filter_default</code>,·decide·if·the
268 event·is·allowed·or·not.</p><p>Log·events·that·do·not·contain·any·domain·field,·match·only·when·<code·class="inline">Compare</code>·is268 event·is·allowed·or·not.</p><p>Log·events·that·do·not·contain·any·domain·field,·match·only·when·<code·class="inline">Compare</code>·is
269 equal·to·<code·class="inline">undefined</code>·or·<code·class="inline">not_equal</code>.</p><p>Example:·stop·all·events·with·domain·<code·class="inline">[otp,·sasl·|·_]</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">set_handler_config</span><span·class="p"·data-group-id="5862734888-1">(</span><span·class="ss">h1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">filter_default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">log</span><span·class="p"·data-group-id="5862734888-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·this·is·the·default</span><span·class="w">269 equal·to·<code·class="inline">undefined</code>·or·<code·class="inline">not_equal</code>.</p><p>Example:·stop·all·events·with·domain·<code·class="inline">[otp,·sasl·|·_]</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">set_handler_config</span><span·class="p"·data-group-id="4562247335-1">(</span><span·class="ss">h1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">filter_default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">log</span><span·class="p"·data-group-id="4562247335-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·this·is·the·default</span><span·class="w">
270 </span><span·class="ss">ok</span><span·class="gp·unselectable">270 </span><span·class="ss">ok</span><span·class="gp·unselectable">
271 2&gt;·</span><span·class="n">Filter</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5862734888-2">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·512,·SHA:·840a6bf7bea8c0fa73fa7ded6b8cd0124f239c6b96e91aec35c47525791c82f1·...·]-2">}</span><span·class="p">.</span><span·class="w">271 2&gt;·</span><span·class="n">Filter</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4562247335-2">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">domain</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·512,·SHA:·c1ef3b2bdf20f17f721fe3cd59d43290de251d64c4ffdea11c0ccb3fd9d5472f·...·]-2">}</span><span·class="p">.</span><span·class="w">
272 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">272 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">
273 3&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler_filter</span><span·class="p"·data-group-id="5862734888-5">(</span><span·class="ss">h1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">no_sasl</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filter</span><span·class="p"·data-group-id="5862734888-5">)</span><span·class="p">.</span><span·class="w">273 3&gt;·</span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler_filter</span><span·class="p"·data-group-id="4562247335-5">(</span><span·class="ss">h1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">no_sasl</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filter</span><span·class="p"·data-group-id="4562247335-5">)</span><span·class="p">.</span><span·class="w">
274 </span><span·class="ss">ok</span></code></pre>274 </span><span·class="ss">ok</span></code></pre>
275 ··</section>275 ··</section>
276 </section>276 </section>
277 <section·class="detail"·id="level/2">277 <section·class="detail"·id="level/2">
  
278 ··<div·class="detail-header">278 ··<div·class="detail-header">
279 ····<a·href="#level/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">279 ····<a·href="#level/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 312, 17 lines modifiedOffset 312, 17 lines modified
312 matches·log·events·by·comparing·the·log·level·with·a·specified·<code·class="inline">MatchLevel</code></p><p>The·<code·class="inline">Extra</code>·parameter·is·specified·when·adding·the·filter·via312 matches·log·events·by·comparing·the·log·level·with·a·specified·<code·class="inline">MatchLevel</code></p><p>The·<code·class="inline">Extra</code>·parameter·is·specified·when·adding·the·filter·via
313 <a·href="logger.html#add_primary_filter/2"><code·class="inline">logger:add_primary_filter/2</code></a>·or·<a·href="logger.html#add_handler_filter/3"><code·class="inline">logger:add_handler_filter/3</code></a>.</p><p>The·filter·compares·the·value·of·the·event's·log·level·(<code·class="inline">Level</code>)·to·<code·class="inline">MatchLevel</code>313 <a·href="logger.html#add_primary_filter/2"><code·class="inline">logger:add_primary_filter/2</code></a>·or·<a·href="logger.html#add_handler_filter/3"><code·class="inline">logger:add_handler_filter/3</code></a>.</p><p>The·filter·compares·the·value·of·the·event's·log·level·(<code·class="inline">Level</code>)·to·<code·class="inline">MatchLevel</code>
314 by·calling314 by·calling
315 <a·href="logger.html#compare_levels/2"><code·class="inline">logger:compare_levels(Level,·MatchLevel)</code></a>.·The315 <a·href="logger.html#compare_levels/2"><code·class="inline">logger:compare_levels(Level,·MatchLevel)</code></a>.·The
316 filter·matches·if·the·value·of·<code·class="inline">Operator</code>·is:</p><ul><li><p><strong><code·class="inline">neq</code></strong>·-·and·the·compare·function·returns·<code·class="inline">lt</code>·or·<code·class="inline">gt</code>.</p></li><li><p><strong><code·class="inline">eq</code></strong>·-·and·the·compare·function·returns·<code·class="inline">eq</code>.</p></li><li><p><strong><code·class="inline">lt</code></strong>·-·and·the·compare·function·returns·<code·class="inline">lt</code>.</p></li><li><p><strong><code·class="inline">gt</code></strong>·-·and·the·compare·function·returns·<code·class="inline">gt</code>.</p></li><li><p><strong><code·class="inline">lteq</code></strong>·-·and·the·compare·function·returns·<code·class="inline">lt</code>·or·<code·class="inline">eq</code>.</p></li><li><p><strong><code·class="inline">gteq</code></strong>·-·and·the·compare·function·returns·<code·class="inline">gt</code>·or·<code·class="inline">eq</code>.</p></li></ul><p>If·the·filter·matches·and·<code·class="inline">Action</code>·is·<code·class="inline">log</code>,·the·log·event·is·allowed.·If·the316 filter·matches·if·the·value·of·<code·class="inline">Operator</code>·is:</p><ul><li><p><strong><code·class="inline">neq</code></strong>·-·and·the·compare·function·returns·<code·class="inline">lt</code>·or·<code·class="inline">gt</code>.</p></li><li><p><strong><code·class="inline">eq</code></strong>·-·and·the·compare·function·returns·<code·class="inline">eq</code>.</p></li><li><p><strong><code·class="inline">lt</code></strong>·-·and·the·compare·function·returns·<code·class="inline">lt</code>.</p></li><li><p><strong><code·class="inline">gt</code></strong>·-·and·the·compare·function·returns·<code·class="inline">gt</code>.</p></li><li><p><strong><code·class="inline">lteq</code></strong>·-·and·the·compare·function·returns·<code·class="inline">lt</code>·or·<code·class="inline">eq</code>.</p></li><li><p><strong><code·class="inline">gteq</code></strong>·-·and·the·compare·function·returns·<code·class="inline">gt</code>·or·<code·class="inline">eq</code>.</p></li></ul><p>If·the·filter·matches·and·<code·class="inline">Action</code>·is·<code·class="inline">log</code>,·the·log·event·is·allowed.·If·the
317 filter·matches·and·<code·class="inline">Action</code>·is·<code·class="inline">stop</code>,·the·log·event·is·stopped.</p><p>If·the·filter·does·not·match,·it·returns·<code·class="inline">ignore</code>,·meaning·that·other·filters,317 filter·matches·and·<code·class="inline">Action</code>·is·<code·class="inline">stop</code>,·the·log·event·is·stopped.</p><p>If·the·filter·does·not·match,·it·returns·<code·class="inline">ignore</code>,·meaning·that·other·filters,
318 or·the·value·of·the·configuration·parameter·<code·class="inline">filter_default</code>,·will·decide·if·the318 or·the·value·of·the·configuration·parameter·<code·class="inline">filter_default</code>,·will·decide·if·the
319 event·is·allowed·or·not.</p><p>Example:·only·allow·debug·level·log·events</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">set_handler_config</span><span·class="p"·data-group-id="3978951383-1">(</span><span·class="ss">h1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">filter_default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p"·data-group-id="3978951383-1">)</span><span·class="p">.</span><span·class="w">319 event·is·allowed·or·not.</p><p>Example:·only·allow·debug·level·log·events</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">set_handler_config</span><span·class="p"·data-group-id="5501485109-1">(</span><span·class="ss">h1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">filter_default</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p"·data-group-id="5501485109-1">)</span><span·class="p">.</span><span·class="w">
320 </span><span·class="n">Filter</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3978951383-2">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">level</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·329,·SHA:·1ff6b29b543f3336be159bf3365a6708e522b62d6c19e8385fd00fc09a43d091·...·]-2">}</span><span·class="p">.</span><span·class="w">320 </span><span·class="n">Filter</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5501485109-2">{</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">logger_filters</span><span·class="p">:</span><span·class="ss">level</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·329,·SHA:·26b6fb3dbddeef7302401bd768cbe00329af873f1856864d5eac867cb6cadd0e·...·]-2">}</span><span·class="p">.</span><span·class="w">
321 </span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler_filter</span><span·class="p"·data-group-id="3978951383-4">(</span><span·class="ss">h1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">debug_only</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filter</span><span·class="p"·data-group-id="3978951383-4">)</span><span·class="p">.</span><span·class="w">321 </span><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler_filter</span><span·class="p"·data-group-id="5501485109-4">(</span><span·class="ss">h1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">debug_only</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filter</span><span·class="p"·data-group-id="5501485109-4">)</span><span·class="p">.</span><span·class="w">
322 </span><span·class="ss">ok</span></code></pre>322 </span><span·class="ss">ok</span></code></pre>
323 ··</section>323 ··</section>
324 </section>324 </section>
325 <section·class="detail"·id="progress/2">325 <section·class="detail"·id="progress/2">
  
326 ··<div·class="detail-header">326 ··<div·class="detail-header">
327 ····<a·href="#progress/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">327 ····<a·href="#progress/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 410, 15 lines modifiedOffset 410, 15 lines modified
410 ······<p·class="built-using">410 ······<p·class="built-using">
411 ········Built·using411 ········Built·using
412 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the412 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
413 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>413 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
414 ······</p>414 ······</p>
415 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>415 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
416 ····</footer>416 ····</footer>
417 ··</div>417 ··</div>
418 </main>418 </main>
419 </div>419 </div>
420 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>420 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
421 <script>421 <script>
422 ··document.addEventListener("DOMContentLoaded",·function·()·{422 ··document.addEventListener("DOMContentLoaded",·function·()·{
627 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/logger_formatter.html
    
Offset 621, 15 lines modifiedOffset 621, 15 lines modified
621 ······<p·class="built-using">621 ······<p·class="built-using">
622 ········Built·using622 ········Built·using
623 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the623 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
624 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>624 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
625 ······</p>625 ······</p>
626 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>626 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
627 ····</footer>627 ····</footer>
628 ··</div>628 ··</div>
629 </main>629 </main>
630 </div>630 </div>
631 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>631 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
632 <script>632 <script>
633 ··document.addEventListener("DOMContentLoaded",·function·()·{633 ··document.addEventListener("DOMContentLoaded",·function·()·{
736 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/logger_handler.html
    
Offset 596, 15 lines modifiedOffset 596, 15 lines modified
596 ······<p·class="built-using">596 ······<p·class="built-using">
597 ········Built·using597 ········Built·using
598 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the598 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
599 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>599 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
600 ······</p>600 ······</p>
601 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>601 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
602 ····</footer>602 ····</footer>
603 ··</div>603 ··</div>
604 </main>604 </main>
605 </div>605 </div>
606 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>606 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
607 <script>607 <script>
608 ··document.addEventListener("DOMContentLoaded",·function·()·{608 ··document.addEventListener("DOMContentLoaded",·function·()·{
697 B
html2text {}
Max HTML report size reached
5.77 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/logger_std_h.html
    
Offset 181, 17 lines modifiedOffset 181, 17 lines modified
181 but·only·performs·a·new·sync·if·something·has·actually·been·logged.</p><p>If·<code·class="inline">no_repeat</code>·is·set·as·value,·the·repeated·file·sync·operation·is·disabled,181 but·only·performs·a·new·sync·if·something·has·actually·been·logged.</p><p>If·<code·class="inline">no_repeat</code>·is·set·as·value,·the·repeated·file·sync·operation·is·disabled,
182 and·it·is·the·operating·system·settings·that·determine·how·quickly·or·slowly182 and·it·is·the·operating·system·settings·that·determine·how·quickly·or·slowly
183 data·is·written·to·disk.·The·user·can·also·call·the·<a·href="#filesync/1"><code·class="inline">filesync/1</code></a>·function·to183 data·is·written·to·disk.·The·user·can·also·call·the·<a·href="#filesync/1"><code·class="inline">filesync/1</code></a>·function·to
184 perform·a·file·sync.</p><p>Defaults·to·<code·class="inline">5000</code>·milliseconds.</p></li></ul><p>Other·configuration·parameters·exist,·to·be·used·for·customizing·the·overload184 perform·a·file·sync.</p><p>Defaults·to·<code·class="inline">5000</code>·milliseconds.</p></li></ul><p>Other·configuration·parameters·exist,·to·be·used·for·customizing·the·overload
185 protection·behaviour.·The·same·parameters·are·used·both·in·the·standard·handler185 protection·behaviour.·The·same·parameters·are·used·both·in·the·standard·handler
186 and·the·disk_log·handler,·and·are·documented·in·the186 and·the·disk_log·handler,·and·are·documented·in·the
187 <a·href="logger_chapter.html#overload_protection"><code·class="inline">User's·Guide</code></a>.</p><p>Notice·that·if·changing·the·configuration·of·the·handler·in·runtime,·the·<code·class="inline">type</code>,187 <a·href="logger_chapter.html#overload_protection"><code·class="inline">User's·Guide</code></a>.</p><p>Notice·that·if·changing·the·configuration·of·the·handler·in·runtime,·the·<code·class="inline">type</code>,
188 <code·class="inline">file</code>,·or·<code·class="inline">modes</code>·parameters·must·not·be·modified.</p><p>Example·of·adding·a·standard·handler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="3869584578-1">(</span><span·class="ss">my_standard_h</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">188 <code·class="inline">file</code>,·or·<code·class="inline">modes</code>·parameters·must·not·be·modified.</p><p>Example·of·adding·a·standard·handler:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">logger</span><span·class="p">:</span><span·class="nf">add_handler</span><span·class="p"·data-group-id="4391545360-1">(</span><span·class="ss">my_standard_h</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">logger_std_h</span><span·class="p">,</span><span·class="w">
189 ···················</span><span·class="p"·data-group-id="3869584578-2">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3869584578-3">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;./system_info.log&quot;</span><span·class="p">,</span><span·class="w">189 ···················</span><span·class="p"·data-group-id="4391545360-2">#{</span><span·class="ss">config</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="4391545360-3">#{</span><span·class="ss">file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;./system_info.log&quot;</span><span·class="p">,</span><span·class="w">
190 ·································</span><span·class="ss">filesync_repeat_interval</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1000</span><span·class="p"·data-group-id="3869584578-3">}</span><span·class="p"·data-group-id="3869584578-2">}</span><span·class="p"·data-group-id="3869584578-1">)</span><span·class="p">.</span></code></pre><p>To·set·the·default·handler,·that·starts·initially·with·the·Kernel·application,190 ·································</span><span·class="ss">filesync_repeat_interval</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1000</span><span·class="p"·data-group-id="4391545360-3">}</span><span·class="p"·data-group-id="4391545360-2">}</span><span·class="p"·data-group-id="4391545360-1">)</span><span·class="p">.</span></code></pre><p>To·set·the·default·handler,·that·starts·initially·with·the·Kernel·application,
191 to·log·to·file·instead·of·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#t:standard_io/0"><code·class="inline">standard_io</code></a>,·change·the191 to·log·to·file·instead·of·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#t:standard_io/0"><code·class="inline">standard_io</code></a>,·change·the
192 Kernel·default·logger·configuration.·Example:</p><pre><code·class="text">erl·-kernel·logger·'[{handler,default,logger_std_h,192 Kernel·default·logger·configuration.·Example:</p><pre><code·class="text">erl·-kernel·logger·'[{handler,default,logger_std_h,
193 ······················#{config·=&gt;·#{file·=&gt;·&quot;./log.log&quot;}}}]'</code></pre><p>An·example·of·how·to·replace·the·standard·handler·with·a·disk_log·handler·at193 ······················#{config·=&gt;·#{file·=&gt;·&quot;./log.log&quot;}}}]'</code></pre><p>An·example·of·how·to·replace·the·standard·handler·with·a·disk_log·handler·at
194 startup·is·found·in·the·<a·href="logger_disk_log_h.html"><code·class="inline">logger_disk_log_h</code></a>·manual.</p><h2·id="module-see-also"·class="section-heading">194 startup·is·found·in·the·<a·href="logger_disk_log_h.html"><code·class="inline">logger_disk_log_h</code></a>·manual.</p><h2·id="module-see-also"·class="section-heading">
195 ··<a·href="#module-see-also"·class="hover-link">195 ··<a·href="#module-see-also"·class="hover-link">
196 ····<i·class="ri-link-m"·aria-hidden="true"></i>196 ····<i·class="ri-link-m"·aria-hidden="true"></i>
197 ··</a>197 ··</a>
Offset 290, 15 lines modifiedOffset 290, 15 lines modified
290 ······<p·class="built-using">290 ······<p·class="built-using">
291 ········Built·using291 ········Built·using
292 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the292 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
293 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>293 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
294 ······</p>294 ······</p>
295 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>295 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
296 ····</footer>296 ····</footer>
297 ··</div>297 ··</div>
298 </main>298 </main>
299 </div>299 </div>
300 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>300 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
301 <script>301 <script>
302 ··document.addEventListener("DOMContentLoaded",·function·()·{302 ··document.addEventListener("DOMContentLoaded",·function·()·{
562 B
html2text {}
Max HTML report size reached
6.28 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/net.html
    
Offset 519, 21 lines modifiedOffset 519, 21 lines modified
  
519 ··········<pre·translate="no"><span·class="attribute">-type</span>·ifaddrs_filter_fun()·::·fun((<a·href="#t:ifaddrs/0">ifaddrs</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()).</pre>519 ··········<pre·translate="no"><span·class="attribute">-type</span>·ifaddrs_filter_fun()·::·fun((<a·href="#t:ifaddrs/0">ifaddrs</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()).</pre>
  
520 ······</div>520 ······</div>
  
521 <p>Interface·address·filtering·selector·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:function/0"><code·class="inline">function/0</code></a>.</p><p>For·each·<code·class="inline">ifaddrs</code>·entry,·return·either·<code·class="inline">true</code>·to·keep·the·entry521 <p>Interface·address·filtering·selector·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:function/0"><code·class="inline">function/0</code></a>.</p><p>For·each·<code·class="inline">ifaddrs</code>·entry,·return·either·<code·class="inline">true</code>·to·keep·the·entry
522 or·<code·class="inline">false</code>·to·discard·the·entry.</p><p>For·example,·to·get·an·interface·list·which·only·contains522 or·<code·class="inline">false</code>·to·discard·the·entry.</p><p>For·example,·to·get·an·interface·list·which·only·contains
523 non-<code·class="inline">loopback</code>·<code·class="inline">inet</code>·interfaces:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">net</span><span·class="p">:</span><span·class="nf">getifaddrs</span><span·class="p"·data-group-id="1371160639-1">(</span><span·class="w">523 non-<code·class="inline">loopback</code>·<code·class="inline">inet</code>·interfaces:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">net</span><span·class="p">:</span><span·class="nf">getifaddrs</span><span·class="p"·data-group-id="0379279005-1">(</span><span·class="w">
524 ····</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="1371160639-2">(</span><span·class="p"·data-group-id="1371160639-3">#{</span><span·class="w">·</span><span·class="ss">addr</span><span·class="w">··</span><span·class="p">:=</span><span·class="w">·</span><span·class="p"·data-group-id="1371160639-4">#{</span>[·...·truncated·by·diffoscope;·len:·172,·SHA:·beb9f245e72d9917d3e6a4db3ec7b9d03b08dc7402b94deb16034b1907fae9df·...·]-4">}</span><span·class="p">,</span><span·class="w">524 ····</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="0379279005-2">(</span><span·class="p"·data-group-id="0379279005-3">#{</span><span·class="w">·</span><span·class="ss">addr</span><span·class="w">··</span><span·class="p">:=</span><span·class="w">·</span><span·class="p"·data-group-id="0379279005-4">#{</span>[·...·truncated·by·diffoscope;·len:·172,·SHA:·6bb2582e281047aaa56495ccd35fb36eff4bad45157c7b37f41b479be012c947·...·]-4">}</span><span·class="p">,</span><span·class="w">
525 ············</span><span·class="ss">flags</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Flags</span><span·class="p"·data-group-id="1371160639-3">}</span><span·class="p"·data-group-id="1371160639-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">525 ············</span><span·class="ss">flags</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Flags</span><span·class="p"·data-group-id="0379279005-3">}</span><span·class="p"·data-group-id="0379279005-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
526 ··········</span><span·class="ow">not</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="1371160639-5">(</span><span·class="ss">loopback</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Flags</span><span·class="p"·data-group-id="1371160639-5">)</span><span·class="p">;</span><span·class="w">526 ··········</span><span·class="ow">not</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="0379279005-5">(</span><span·class="ss">loopback</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Flags</span><span·class="p"·data-group-id="0379279005-5">)</span><span·class="p">;</span><span·class="w">
527 ········</span><span·class="p"·data-group-id="1371160639-6">(</span><span·class="p">_</span><span·class="p"·data-group-id="1371160639-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">527 ········</span><span·class="p"·data-group-id="0379279005-6">(</span><span·class="p">_</span><span·class="p"·data-group-id="0379279005-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
528 ··········</span><span·class="ss">false</span><span·class="w">528 ··········</span><span·class="ss">false</span><span·class="w">
529 ····</span><span·class="k">end</span><span·class="p"·data-group-id="1371160639-1">)</span><span·class="p">.</span></code></pre>529 ····</span><span·class="k">end</span><span·class="p"·data-group-id="0379279005-1">)</span><span·class="p">.</span></code></pre>
530 ··</section>530 ··</section>
531 </section>531 </section>
532 <section·class="detail"·id="t:ifaddrs_filter_map/0">532 <section·class="detail"·id="t:ifaddrs_filter_map/0">
  
533 ··<div·class="detail-header">533 ··<div·class="detail-header">
534 ····<a·href="#t:ifaddrs_filter_map/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">534 ····<a·href="#t:ifaddrs_filter_map/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">
535 ······<i·class="ri-link-m"·aria-hidden="true"></i>535 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1217, 15 lines modifiedOffset 1217, 15 lines modified
1217 ······<p·class="built-using">1217 ······<p·class="built-using">
1218 ········Built·using1218 ········Built·using
1219 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1219 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1220 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1220 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1221 ······</p>1221 ······</p>
1222 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1222 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1223 ····</footer>1223 ····</footer>
1224 ··</div>1224 ··</div>
1225 </main>1225 </main>
1226 </div>1226 </div>
1227 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1227 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1228 <script>1228 <script>
1229 ··document.addEventListener("DOMContentLoaded",·function·()·{1229 ··document.addEventListener("DOMContentLoaded",·function·()·{
705 B
html2text {}
Max HTML report size reached
4.41 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/net_adm.html
    
Offset 487, 16 lines modifiedOffset 487, 16 lines modified
487 ···················Name·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),487 ···················Name·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),
488 ···················Port·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),488 ···················Port·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),
489 ···················Reason·::·address·|·<a·href="file.html#t:posix/0">file:posix</a>().</pre>489 ···················Reason·::·address·|·<a·href="file.html#t:posix/0">file:posix</a>().</pre>
  
490 ······</div>490 ······</div>
  
491 <p>Returns·the·names·and·associated·port·numbers·of·the·Erlang·nodes·that·<code·class="inline">epmd</code>491 <p>Returns·the·names·and·associated·port·numbers·of·the·Erlang·nodes·that·<code·class="inline">epmd</code>
492 registered·at·the·specified·host.</p><p>Similar·to·<code·class="inline">epmd·-names</code>,·see·<a·href="../../../../erts-15.0.1/doc/html/epmd_cmd.html"><code·class="inline">erts:epmd</code></a>.</p><p>Returns·<code·class="inline">{error,·address}</code>·if·<code·class="inline">epmd</code>·is·not·operational.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(arne@dunn)1&gt;·</span><span·class="nc">net_adm</span><span·class="p">:</span><span·class="nf">names</span><span·class="p"·data-group-id="2026941792-1">(</span><span·class="p"·data-group-id="2026941792-1">)</span><span·class="p">.</span><span·class="w">492 registered·at·the·specified·host.</p><p>Similar·to·<code·class="inline">epmd·-names</code>,·see·<a·href="../../../../erts-15.0.1/doc/html/epmd_cmd.html"><code·class="inline">erts:epmd</code></a>.</p><p>Returns·<code·class="inline">{error,·address}</code>·if·<code·class="inline">epmd</code>·is·not·operational.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(arne@dunn)1&gt;·</span><span·class="nc">net_adm</span><span·class="p">:</span><span·class="nf">names</span><span·class="p"·data-group-id="8574821649-1">(</span><span·class="p"·data-group-id="8574821649-1">)</span><span·class="p">.</span><span·class="w">
493 </span><span·class="p"·data-group-id="2026941792-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2026941792-3">[</span><span·class="p"·data-group-id="2026941792-4">{</span><span·class="s">&quot;arne&quot;</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·161,·SHA:·38a37d5afbdd322dad2e6595f2e78d1fbdbbcfae06aed7cfee70127d7a0bc9ae·...·]-2">}</span></code></pre>493 </span><span·class="p"·data-group-id="8574821649-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8574821649-3">[</span><span·class="p"·data-group-id="8574821649-4">{</span><span·class="s">&quot;arne&quot;</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·161,·SHA:·1e6c962bee045791b4398defe3a2c4247a30754d8f0dd5879ea11fb2e66d6b47·...·]-2">}</span></code></pre>
494 ··</section>494 ··</section>
495 </section>495 </section>
496 <section·class="detail"·id="ping/1">496 <section·class="detail"·id="ping/1">
  
497 ··<div·class="detail-header">497 ··<div·class="detail-header">
498 ····<a·href="#ping/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">498 ····<a·href="#ping/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
499 ······<i·class="ri-link-m"·aria-hidden="true"></i>499 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 664, 15 lines modifiedOffset 664, 15 lines modified
664 ······<p·class="built-using">664 ······<p·class="built-using">
665 ········Built·using665 ········Built·using
666 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the666 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
667 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>667 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
668 ······</p>668 ······</p>
669 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>669 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
670 ····</footer>670 ····</footer>
671 ··</div>671 ··</div>
672 </main>672 </main>
673 </div>673 </div>
674 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>674 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
675 <script>675 <script>
676 ··document.addEventListener("DOMContentLoaded",·function·()·{676 ··document.addEventListener("DOMContentLoaded",·function·()·{
644 B
html2text {}
Max HTML report size reached
27.4 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/net_kernel.html
    
Offset 128, 17 lines modifiedOffset 128, 17 lines modified
  
  
128 ····<section·id="moduledoc">128 ····<section·id="moduledoc">
129 <p>Erlang·networking·kernel.</p><p>The·net·kernel·is·a·system·process,·registered·as·<code·class="inline">net_kernel</code>,·which·must·be129 <p>Erlang·networking·kernel.</p><p>The·net·kernel·is·a·system·process,·registered·as·<code·class="inline">net_kernel</code>,·which·must·be
130 operational·for·distributed·Erlang·to·work.·The·purpose·of·this·process·is·to130 operational·for·distributed·Erlang·to·work.·The·purpose·of·this·process·is·to
131 implement·parts·of·the·BIFs·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#spawn/4"><code·class="inline">spawn/4</code></a>·and131 implement·parts·of·the·BIFs·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#spawn/4"><code·class="inline">spawn/4</code></a>·and
132 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#spawn_link/4"><code·class="inline">spawn_link/4</code></a>,·and·to·provide·monitoring·of·the·network.</p><p>An·Erlang·node·is·started·using·command-line·flag·<code·class="inline">-name</code>·or·<code·class="inline">-sname</code>:</p><pre><code·class="text">$·erl·-sname·foobar</code></pre><p>It·is·also·possible·to·call·<a·href="#start/2"><code·class="inline">net_kernel:start(foobar,·#{})</code></a>132 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#spawn_link/4"><code·class="inline">spawn_link/4</code></a>,·and·to·provide·monitoring·of·the·network.</p><p>An·Erlang·node·is·started·using·command-line·flag·<code·class="inline">-name</code>·or·<code·class="inline">-sname</code>:</p><pre><code·class="text">$·erl·-sname·foobar</code></pre><p>It·is·also·possible·to·call·<a·href="#start/2"><code·class="inline">net_kernel:start(foobar,·#{})</code></a>
133 directly·from·the·normal·Erlang·shell·prompt:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">net_kernel</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="3496275010-1">(</span><span·class="ss">foobar</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3496275010-2">#{</span><span·class="ss">name_domain</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w"[·...·truncated·by·diffoscope;·len:·135,·SHA:·08e956158c94c5009eebd4614bb6c91b9d71c0424939ae46e931bbde10c2a9bd·...·]10-1">)</span><span·class="p">.</span><span·class="w">133 directly·from·the·normal·Erlang·shell·prompt:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">net_kernel</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7133012410-1">(</span><span·class="ss">foobar</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7133012410-2">#{</span><span·class="ss">name_domain</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w"[·...·truncated·by·diffoscope;·len:·135,·SHA:·66eac8e07ec1588ce038c49d010f1907af668d0c78d5f0641230423c550ddae9·...·]10-1">)</span><span·class="p">.</span><span·class="w">
134 </span><span·class="p"·data-group-id="3496275010-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.64</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="3496275010-3">}</span><span·class="w">134 </span><span·class="p"·data-group-id="7133012410-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.64</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="7133012410-3">}</span><span·class="w">
135 </span><span·class="p"·data-group-id="3496275010-4">(</span><span·class="ss">foobar@gringotts</span><span·class="p"·data-group-id="3496275010-4">)</span><span·class="mi">2</span><span·class="o">&gt;</span></code></pre><p>If·the·node·is·started·with·command-line·flag·<code·class="inline">-sname</code>,·the·node·name·is135 </span><span·class="p"·data-group-id="7133012410-4">(</span><span·class="ss">foobar@gringotts</span><span·class="p"·data-group-id="7133012410-4">)</span><span·class="mi">2</span><span·class="o">&gt;</span></code></pre><p>If·the·node·is·started·with·command-line·flag·<code·class="inline">-sname</code>,·the·node·name·is
136 <code·class="inline">foobar@Host</code>,·where·<code·class="inline">Host</code>·is·the·short·name·of·the·host·(not·the·fully136 <code·class="inline">foobar@Host</code>,·where·<code·class="inline">Host</code>·is·the·short·name·of·the·host·(not·the·fully
137 qualified·domain·name).·If·started·with·flag·<code·class="inline">-name</code>,·the·node·name·is137 qualified·domain·name).·If·started·with·flag·<code·class="inline">-name</code>,·the·node·name·is
138 <code·class="inline">foobar@Host</code>,·where·<code·class="inline">Host</code>·is·the·fully·qualified·domain·name.·For·more138 <code·class="inline">foobar@Host</code>,·where·<code·class="inline">Host</code>·is·the·fully·qualified·domain·name.·For·more
139 information,·see·<a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html"><code·class="inline">erl</code></a>.</p><p>Normally,·connections·are·established·automatically·when·another·node·is139 information,·see·<a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html"><code·class="inline">erl</code></a>.</p><p>Normally,·connections·are·established·automatically·when·another·node·is
140 referenced.·This·functionality·can·be·disabled·by·setting·Kernel·configuration140 referenced.·This·functionality·can·be·disabled·by·setting·Kernel·configuration
141 parameter·<code·class="inline">dist_auto_connect</code>·to·<code·class="inline">never</code>,·see·<a·href="kernel_app.html"><code·class="inline">kernel(6)</code></a>.·In141 parameter·<code·class="inline">dist_auto_connect</code>·to·<code·class="inline">never</code>,·see·<a·href="kernel_app.html"><code·class="inline">kernel(6)</code></a>.·In
142 this·case,·connections·must·be·established·explicitly·by·calling142 this·case,·connections·must·be·established·explicitly·by·calling
Offset 664, 21 lines modifiedOffset 664, 21 lines modified
664 node·through·the·newly·established·connection.</li><li><code·class="inline">nodedown</code>·messages·are·delivered·after·all·the·signals·from·the·remote·node664 node·through·the·newly·established·connection.</li><li><code·class="inline">nodedown</code>·messages·are·delivered·after·all·the·signals·from·the·remote·node
665 over·the·connection·have·been·delivered.</li><li><code·class="inline">nodeup</code>·messages·are·delivered·after·the·corresponding·node·appears·in665 over·the·connection·have·been·delivered.</li><li><code·class="inline">nodeup</code>·messages·are·delivered·after·the·corresponding·node·appears·in
666 results·from·<code·class="inline">erlang:nodes()</code>.</li><li><code·class="inline">nodedown</code>·messages·are·delivered·after·the·corresponding·node·has·disappeared666 results·from·<code·class="inline">erlang:nodes()</code>.</li><li><code·class="inline">nodedown</code>·messages·are·delivered·after·the·corresponding·node·has·disappeared
667 in·results·from·<code·class="inline">erlang:nodes()</code>.</li><li>As·of·OTP·23.0,·a·<code·class="inline">nodedown</code>·message·for·a·connection·being·taken·down·will·be667 in·results·from·<code·class="inline">erlang:nodes()</code>.</li><li>As·of·OTP·23.0,·a·<code·class="inline">nodedown</code>·message·for·a·connection·being·taken·down·will·be
668 delivered·before·a·<code·class="inline">nodeup</code>·message·due·to·a·new·connection·to·the·same·node.668 delivered·before·a·<code·class="inline">nodeup</code>·message·due·to·a·new·connection·to·the·same·node.
669 Prior·to·OTP·23.0,·this·was·not·guaranteed·to·be·the·case.</li></ul><p>The·format·of·the·node·status·change·messages·depends·on·<code·class="inline">Options</code>.·If·<code·class="inline">Options</code>669 Prior·to·OTP·23.0,·this·was·not·guaranteed·to·be·the·case.</li></ul><p>The·format·of·the·node·status·change·messages·depends·on·<code·class="inline">Options</code>.·If·<code·class="inline">Options</code>
670 is·the·empty·list·or·if·<a·href="#monitor_nodes/1"><code·class="inline">net_kernel:monitor_nodes/1</code></a>·is·called,·the·format·is·as670 is·the·empty·list·or·if·<a·href="#monitor_nodes/1"><code·class="inline">net_kernel:monitor_nodes/1</code></a>·is·called,·the·format·is·as
671 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4290657515-1">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="4290657515-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·196,·SHA:·f45470202463d7cbe7e5c9d626220a9d81345a774d4160b7dfb59258ce0e563c·...·]-2">}</span><span·class="w">671 follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4660938312-1">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="4660938312-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·196,·SHA:·8fffb388d8d39f694c3e740d87d4250a062e52670bbb9d441ad39c7a76b51bb1·...·]-2">}</span><span·class="w">
672 ··</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">node</span><span·class="p"·data-group-id="4290657515-3">(</span><span·class="p"·data-group-id="4290657515-3">)</span></code></pre><p>When·<code·class="inline">Options</code>·is·the·empty·map·or·empty·list,·the·caller·will·only·subscribe672 ··</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">node</span><span·class="p"·data-group-id="4660938312-3">(</span><span·class="p"·data-group-id="4660938312-3">)</span></code></pre><p>When·<code·class="inline">Options</code>·is·the·empty·map·or·empty·list,·the·caller·will·only·subscribe
673 for·status·change·messages·for·visible·nodes.·That·is,·only·nodes·that·appear·in673 for·status·change·messages·for·visible·nodes.·That·is,·only·nodes·that·appear·in
674 the·result·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#nodes/0"><code·class="inline">erlang:nodes/0</code></a>.</p><p>If·<code·class="inline">Options</code>·equals·anything·other·than·the·empty·list,·the·format·of·the·status674 the·result·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#nodes/0"><code·class="inline">erlang:nodes/0</code></a>.</p><p>If·<code·class="inline">Options</code>·equals·anything·other·than·the·empty·list,·the·format·of·the·status
675 change·messages·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4537940167-1">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p"·data-group-id="4537940167-1">}</span><[·...·truncated·by·diffoscope;·len:·347,·SHA:·2a0c45ac36dd9f4d3b75399403e2343b52017cad5045044d2c27629b54f52231·...·]-2">}</span><span·class="w">675 change·messages·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8365739922-1">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p"·data-group-id="8365739922-1">}</span><[·...·truncated·by·diffoscope;·len:·347,·SHA:·2dad09f7c722a66ec55cb21bbf641f285ef41d850ba38af1c3b912c5b911bf80·...·]-2">}</span><span·class="w">
676 ··</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">node</span><span·class="p"·data-group-id="4537940167-3">(</span><span·class="p"·data-group-id="4537940167-3">)</span><span·class="w">676 ··</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">node</span><span·class="p"·data-group-id="8365739922-3">(</span><span·class="p"·data-group-id="8365739922-3">)</span><span·class="w">
677 ··</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4537940167-4">#{</span><span·class="n">Tag</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Val</span><span·class="p"·data-group-id="4537940167-4">}</span><span·class="w">·</span><span·class="p">|</span><spa[·...·truncated·by·diffoscope;·len:·320,·SHA:·cb1741d8e8b39abd2e727d63ec77728a7259921b2d31de10074f509feed10ee1·...·]-5">]</span></code></pre><p><code·class="inline">Info</code>·is·either·a·map·or·a·list·of·2-tuples.·Its·content·depends·on·<code·class="inline">Options</code>.677 ··</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8365739922-4">#{</span><span·class="n">Tag</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Val</span><span·class="p"·data-group-id="8365739922-4">}</span><span·class="w">·</span><span·class="p">|</span><spa[·...·truncated·by·diffoscope;·len:·320,·SHA:·5d3c8bb9accc3a4b9fad975f063a99f6b3e91e6fc3885bd916414d2afcffef7a·...·]-5">]</span></code></pre><p><code·class="inline">Info</code>·is·either·a·map·or·a·list·of·2-tuples.·Its·content·depends·on·<code·class="inline">Options</code>.
678 If·<code·class="inline">Options</code>·is·a·map,·<code·class="inline">Info</code>·will·also·be·a·map.·If·<code·class="inline">Options</code>·is·a·list,·<code·class="inline">Info</code>678 If·<code·class="inline">Options</code>·is·a·map,·<code·class="inline">Info</code>·will·also·be·a·map.·If·<code·class="inline">Options</code>·is·a·list,·<code·class="inline">Info</code>
679 will·also·be·a·list.</p><p>When·<code·class="inline">Options</code>·is·a·map,·currently·the·following·associations·are·allowed:</p><ul><li><p><strong><code·class="inline">connection_id·=&gt;·boolean()</code></strong>·-·If·the·value·of·the·association·equals679 will·also·be·a·list.</p><p>When·<code·class="inline">Options</code>·is·a·map,·currently·the·following·associations·are·allowed:</p><ul><li><p><strong><code·class="inline">connection_id·=&gt;·boolean()</code></strong>·-·If·the·value·of·the·association·equals
680 <code·class="inline">true</code>,·a·<code·class="inline">connection_id·=&gt;·ConnectionId</code>·association·will·be·included·in·the680 <code·class="inline">true</code>,·a·<code·class="inline">connection_id·=&gt;·ConnectionId</code>·association·will·be·included·in·the
681 <code·class="inline">Info</code>·map·where·<code·class="inline">ConnectionId</code>·is·the·connection·identifier·of·the·connection681 <code·class="inline">Info</code>·map·where·<code·class="inline">ConnectionId</code>·is·the·connection·identifier·of·the·connection
682 coming·up·or·going·down.·For·more·info·about·this·connection·identifier·see682 coming·up·or·going·down.·For·more·info·about·this·connection·identifier·see
683 the·documentation·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#connection_id">erlang:nodes/2</a>.</p></li><li><p><strong><code·class="inline">node_type·=&gt;·NodeType</code></strong>·-·Valid·values·for·<code·class="inline">NodeType</code>:</p><ul><li><p><strong><code·class="inline">visible</code></strong>·-·Subscribe·to·node·status·change·messages·for·visible·nodes683 the·documentation·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#connection_id">erlang:nodes/2</a>.</p></li><li><p><strong><code·class="inline">node_type·=&gt;·NodeType</code></strong>·-·Valid·values·for·<code·class="inline">NodeType</code>:</p><ul><li><p><strong><code·class="inline">visible</code></strong>·-·Subscribe·to·node·status·change·messages·for·visible·nodes
684 only.·The·association·<code·class="inline">node_type·=&gt;·visible</code>·will·be·included·in·the·<code·class="inline">Info</code>684 only.·The·association·<code·class="inline">node_type·=&gt;·visible</code>·will·be·included·in·the·<code·class="inline">Info</code>
Offset 704, 31 lines modifiedOffset 704, 31 lines modified
704 only.·The·tuple·<code·class="inline">{node_type,·hidden}</code>·will·be·included·in·the·<code·class="inline">Info</code>·list.</p></li><li><p><strong><code·class="inline">all</code></strong>·-·Subscribe·to·node·status·change·messages·for·both·visible·and704 only.·The·tuple·<code·class="inline">{node_type,·hidden}</code>·will·be·included·in·the·<code·class="inline">Info</code>·list.</p></li><li><p><strong><code·class="inline">all</code></strong>·-·Subscribe·to·node·status·change·messages·for·both·visible·and
705 hidden·nodes.·The·tuple·<code·class="inline">{node_type,·visible·|·hidden}</code>·will·be·included·in705 hidden·nodes.·The·tuple·<code·class="inline">{node_type,·visible·|·hidden}</code>·will·be·included·in
706 the·<code·class="inline">Info</code>·list.</p></li></ul><p>If·no·<code·class="inline">{node_type,·NodeType}</code>·option·has·been·given.·The·caller·will·subscribe706 the·<code·class="inline">Info</code>·list.</p></li></ul><p>If·no·<code·class="inline">{node_type,·NodeType}</code>·option·has·been·given.·The·caller·will·subscribe
707 for·status·change·messages·for·visible·nodes·only,·but·<em>no</em>707 for·status·change·messages·for·visible·nodes·only,·but·<em>no</em>
708 <code·class="inline">{node_type,·visible}</code>·tuple·will·be·included·in·the·<code·class="inline">Info</code>·list.</p></li><li><p><strong><code·class="inline">nodedown_reason</code></strong>·-·The·tuple·<code·class="inline">{nodedown_reason,·Reason}</code>·will·be·included708 <code·class="inline">{node_type,·visible}</code>·tuple·will·be·included·in·the·<code·class="inline">Info</code>·list.</p></li><li><p><strong><code·class="inline">nodedown_reason</code></strong>·-·The·tuple·<code·class="inline">{nodedown_reason,·Reason}</code>·will·be·included
709 in·the·<code·class="inline">Info</code>·list·for·<code·class="inline">nodedown</code>·messages.</p><p>See·the·documentation·of·the709 in·the·<code·class="inline">Info</code>·list·for·<code·class="inline">nodedown</code>·messages.</p><p>See·the·documentation·of·the
710 <a·href="net_kernel.html#nodedown_reasons"><code·class="inline">nodedown_reason·=&gt;·boolean()</code></a>·association710 <a·href="net_kernel.html#nodedown_reasons"><code·class="inline">nodedown_reason·=&gt;·boolean()</code></a>·association
711 above·for·information·about·possible·<code·class="inline">Reason</code>·values.</p></li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(a@localhost)1&gt;·</span><span·class="nc">net_kernel</span><span·class="p">:</span><span·class="nf">monitor_nodes</span><span·class="p"·data-group-id="9001334744-1">(</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9001334744-2">#{</span><span·class="ss">connection_id</span><span·class="p">=&gt;</span><span·class="ss">true</span><span·class[·...·truncated·by·diffoscope;·len:·362,·SHA:·27204cd915c5db45c68a86102c6d0b69b673873223a90d353f4f3fedf8066018·...·]-1">)</span><span·class="p">.</span><span·class="w">711 above·for·information·about·possible·<code·class="inline">Reason</code>·values.</p></li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(a@localhost)1&gt;·</span><span·class="nc">net_kernel</span><span·class="p">:</span><span·class="nf">monitor_nodes</span><span·class="p"·data-group-id="8998007146-1">(</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8998007146-2">#{</span><span·class="ss">connection_id</span><span·class="p">=&gt;</span><span·class="ss">true</span><span·class[·...·truncated·by·diffoscope;·len:·362,·SHA:·95650199ae9cb6328e5f07628acf9411d53538551bf4a9755fe0ed4d094a6293·...·]-1">)</span><span·class="p">.</span><span·class="w">
712 </span><span·class="nf">ok</span><span·class="w">712 </span><span·class="nf">ok</span><span·class="w">
713 </span><span·class="p"·data-group-id="9001334744-3">(</span><span·class="ss">a@localhost</span><span·class="p"·data-group-id="9001334744-3">)</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">flush</span><span·class="p"·data-group-id="9001334744[·...·truncated·by·diffoscope;·len:·53,·SHA:·f5103fa64a591e2173bcf406bb6579580dbb981ec811457d4f37a533fb6f4e5b·...·]-4">)</span><span·class="p">.</span><span·class="w">713 </span><span·class="p"·data-group-id="8998007146-3">(</span><span·class="ss">a@localhost</span><span·class="p"·data-group-id="8998007146-3">)</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">flush</span><span·class="p"·data-group-id="8998007146[·...·truncated·by·diffoscope;·len:·53,·SHA:·64c16a1996542ce07d56020193692b4b6d4a840cb433f42a199dfd61e9827e41·...·]-4">)</span><span·class="p">.</span><span·class="w">
714 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="9001334744-5">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="ss">b@localhost</span><span·class="p">,</span><span·class="w">714 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="8998007146-5">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="ss">b@localhost</span><span·class="p">,</span><span·class="w">
715 ··················</span><span·class="p"·data-group-id="9001334744-6">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">3067552</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·169,·SHA:·ee0d2a1e1a889699ae16f1bbd1e1bfa74745f7841d12955ac8841d83ea48f5ae·...·]-5">}</span><span·class="w">715 ··················</span><span·class="p"·data-group-id="8998007146-6">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">3067552</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·169,·SHA:·4d0e35955ad182fc36f80974fb7ec4d8e5770cf75dfc0c3d22e67ce80f851a62·...·]-5">}</span><span·class="w">
716 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="9001334744-7">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="ss">c@localhost</span><span·class="p">,</span><span·class="w">716 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="8998007146-7">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="ss">c@localhost</span><span·class="p">,</span><span·class="w">
717 ··················</span><span·class="p"·data-group-id="9001334744-8">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">13892107</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·169,·SHA:·4fe70b7557b0f1e8de2c12f74e08b6e5aeb6891e9be90c1fc821c0645663ed4e·...·]-7">}</span><span·class="w">717 ··················</span><span·class="p"·data-group-id="8998007146-8">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">13892107</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·169,·SHA:·e913fd15ea04d02af8f270406d8abb2fe78a7bfc94c0e86dcc9b8fe534aaed8f·...·]-7">}</span><span·class="w">
718 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="9001334744-9">{</span><span·class="ss">nodedown</span><span·class="p">,</span><span·class="ss">b@localhost</span><span·class="p">,</span><span·class="w">718 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="8998007146-9">{</span><span·class="ss">nodedown</span><span·class="p">,</span><span·class="ss">b@localhost</span><span·class="p">,</span><span·class="w">
719 ····················</span><span·class="p"·data-group-id="9001334744-10">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">3067552</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">visible</span><span·class="p">,</span><span·class="w">719 ····················</span><span·class="p"·data-group-id="8998007146-10">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">3067552</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">visible</span><span·class="p">,</span><span·class="w">
720 ······················</span><span·class="ss">nodedown_reason</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">connection_closed</span><span·class="p"·data-group-id="9001334744-10">}</span><span·class="p"·data-group-id="9001334744-9">}</span><span·class="w">720 ······················</span><span·class="ss">nodedown_reason</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">connection_closed</span><span·class="p"·data-group-id="8998007146-10">}</span><span·class="p"·data-group-id="8998007146-9">}</span><span·class="w">
721 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="9001334744-11">{</span><span·class="ss">nodedown</span><span·class="p">,</span><span·class="ss">c@localhost</span><span·class="p">,</span><span·class="w">721 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="8998007146-11">{</span><span·class="ss">nodedown</span><span·class="p">,</span><span·class="ss">c@localhost</span><span·class="p">,</span><span·class="w">
722 ····················</span><span·class="p"·data-group-id="9001334744-12">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">13892107</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">hidden</span><span·class="p">,</span><span·class="w">722 ····················</span><span·class="p"·data-group-id="8998007146-12">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">13892107</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">hidden</span><span·class="p">,</span><span·class="w">
723 ······················</span><span·class="ss">nodedown_reason</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">net_tick_timeout</span><span·class="p"·data-group-id="9001334744-12">}</span><span·class="p"·data-group-id="9001334744-11">}</span><span·class="w">723 ······················</span><span·class="ss">nodedown_reason</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">net_tick_timeout</span><span·class="p"·data-group-id="8998007146-12">}</span><span·class="p"·data-group-id="8998007146-11">}</span><span·class="w">
724 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="9001334744-13">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="ss">b@localhost</span><span·class="p">,</span><span·class="w">724 </span><span·class="n">Shell</span><span·class="w">·</span><span·class="ss">got</span><span·class="w">·</span><span·class="p"·data-group-id="8998007146-13">{</span><span·class="ss">nodeup</span><span·class="p">,</span><span·class="ss">b@localhost</span><span·class="p">,</span><span·class="w">
725 ··················</span><span·class="p"·data-group-id="9001334744-14">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">3067553</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·171,·SHA:·3899a3d9855e54c1ce262605d7dee7163229294c3090ad6e114984f5b1294660·...·]-13">}</span><span·class="w">725 ··················</span><span·class="p"·data-group-id="8998007146-14">#{</span><span·class="ss">connection_id</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">3067553</span><span·class="p">,</span><span·class="ss">node_type</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·171,·SHA:·7eb0160837f185d0d8fa2411ae9a01c31f04a8760f7a181933ce3e7337231aca·...·]-13">}</span><span·class="w">
726 </span><span·class="nf">ok</span><span·class="w">726 </span><span·class="nf">ok</span><span·class="w">
727 </span><span·class="p"·data-group-id="9001334744-15">(</span><span·class="ss">a@localhost</span><span·class="p"·data-group-id="9001334744-15">)</span><span·class="mi">3</span><span·class="o">&gt;</span></code></pre>727 </span><span·class="p"·data-group-id="8998007146-15">(</span><span·class="ss">a@localhost</span><span·class="p"·data-group-id="8998007146-15">)</span><span·class="mi">3</span><span·class="o">&gt;</span></code></pre>
728 ··</section>728 ··</section>
729 </section>729 </section>
730 <section·class="detail"·id="set_net_ticktime/1">730 <section·class="detail"·id="set_net_ticktime/1">
  
731 ··<div·class="detail-header">731 ··<div·class="detail-header">
732 ····<a·href="#set_net_ticktime/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">732 ····<a·href="#set_net_ticktime/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
733 ······<i·class="ri-link-m"·aria-hidden="true"></i>733 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1010, 15 lines modifiedOffset 1010, 15 lines modified
1010 ······<p·class="built-using">1010 ······<p·class="built-using">
1011 ········Built·using1011 ········Built·using
1012 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1012 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1013 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1013 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1014 ······</p>1014 ······</p>
1015 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1015 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1016 ····</footer>1016 ····</footer>
1017 ··</div>1017 ··</div>
1018 </main>1018 </main>
1019 </div>1019 </div>
1020 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1020 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1021 <script>1021 <script>
1022 ··document.addEventListener("DOMContentLoaded",·function·()·{1022 ··document.addEventListener("DOMContentLoaded",·function·()·{
677 B
html2text {}
Max HTML report size reached
7.27 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/notes.html
    
Offset 3891, 20 lines modifiedOffset 3891, 20 lines modified
3891 will·make·repeated·attempts·to·open·the·disk·log·fail·every·time.</p><p>Own·Id:·OTP-5558·Aux·Id:·seq9823</p></li><li><p>Previously·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#unlink/1"><code·class="inline">unlink/1</code></a>·and·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#demonitor/2"><code·class="inline">erlang:demonitor/2</code></a>·behaved3891 will·make·repeated·attempts·to·open·the·disk·log·fail·every·time.</p><p>Own·Id:·OTP-5558·Aux·Id:·seq9823</p></li><li><p>Previously·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#unlink/1"><code·class="inline">unlink/1</code></a>·and·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#demonitor/2"><code·class="inline">erlang:demonitor/2</code></a>·behaved
3892 completely·asynchronous.·This·had·one·undesirable·effect,·though.·You·could3892 completely·asynchronous.·This·had·one·undesirable·effect,·though.·You·could
3893 never·know·when·you·were·guaranteed·<em>not</em>·to·be·affected·by·a·link·that·you3893 never·know·when·you·were·guaranteed·<em>not</em>·to·be·affected·by·a·link·that·you
3894 had·unlinked·or·a·monitor·that·you·had·demonitored.</p><p>The·new·behavior·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#unlink/1"><code·class="inline">unlink/1</code></a>·and·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#demonitor/2"><code·class="inline">erlang:demonitor/2</code></a>·can·be3894 had·unlinked·or·a·monitor·that·you·had·demonitored.</p><p>The·new·behavior·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#unlink/1"><code·class="inline">unlink/1</code></a>·and·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#demonitor/2"><code·class="inline">erlang:demonitor/2</code></a>·can·be
3895 viewed·as·two·operations·performed·atomically.·Asynchronously·send·an·unlink3895 viewed·as·two·operations·performed·atomically.·Asynchronously·send·an·unlink
3896 signal·or·a·demonitor·signal,·and·ignore·any·future·results·of·the·link·or3896 signal·or·a·demonitor·signal,·and·ignore·any·future·results·of·the·link·or
3897 monitor.</p><p><em>NOTE</em>:·This·change·can·cause·some·obscure·code·to·fail·which·previously·did3897 monitor.</p><p><em>NOTE</em>:·This·change·can·cause·some·obscure·code·to·fail·which·previously·did
3898 not.·For·example,·the·following·code·might·hang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">············</span><span·class="n">Mon</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monitor</span><span·class="p"·data-group-id="5920085337-1">(</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="5920085337-1">)</span><span·class="p">,</span><span·class="w">3898 not.·For·example,·the·following·code·might·hang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">············</span><span·class="n">Mon</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monitor</span><span·class="p"·data-group-id="9634641278-1">(</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="9634641278-1">)</span><span·class="p">,</span><span·class="w">
3899 ············</span><span·class="c1">%%·...</span><span·class="w">3899 ············</span><span·class="c1">%%·...</span><span·class="w">
3900 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="5920085337-2">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bang</span><span·class="p"·data-group-id="5920085337-2">)</span><span·class="p">,</span><span·class="w">3900 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="9634641278-2">(</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bang</span><span·class="p"·data-group-id="9634641278-2">)</span><span·class="p">,</span><span·class="w">
3901 ············</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="5920085337-3">(</span><span·class="n">Mon</span><span·class="p"·data-group-id="5920085337-3">)</span><span·class="p">,</span><span·class="w">3901 ············</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="9634641278-3">(</span><span·class="n">Mon</span><span·class="p"·data-group-id="9634641278-3">)</span><span·class="p">,</span><span·class="w">
3902 ············</span><span·class="k">receive</span><span·class="w">3902 ············</span><span·class="k">receive</span><span·class="w">
3903 ················</span><span·class="p"·data-group-id="5920085337-4">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mon</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·144,·SHA:·eea7617b2e2833ed3cb487cde9ff8310f8de423364c17d41706229be093527d3·...·]-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">3903 ················</span><span·class="p"·data-group-id="9634641278-4">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mon</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·144,·SHA:·fa1bc2a57763dbbbdc8d2f1bd7da36e2e488285079ff96d762d33f2a1e276b29·...·]-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">
3904 ············</span><span·class="c1">%%·We·were·previously·guaranteed·to·get·a·down·message</span><span·class="w">3904 ············</span><span·class="c1">%%·We·were·previously·guaranteed·to·get·a·down·message</span><span·class="w">
3905 ············</span><span·class="c1">%%·(since·we·exited·the·process·ourself),·so·we·could</span><span·class="w">3905 ············</span><span·class="c1">%%·(since·we·exited·the·process·ourself),·so·we·could</span><span·class="w">
3906 ············</span><span·class="c1">%%·in·this·case·leave·out:</span><span·class="w">3906 ············</span><span·class="c1">%%·in·this·case·leave·out:</span><span·class="w">
3907 ············</span><span·class="c1">%%·after·0·-&gt;·ok</span><span·class="w">3907 ············</span><span·class="c1">%%·after·0·-&gt;·ok</span><span·class="w">
3908 ············</span><span·class="k">end</span><span·class="p">,</span></code></pre><p>*<strong>·POTENTIAL·INCOMPATIBILITY·*</strong></p><p>Own·Id:·OTP-5772</p></li><li><p>The·behavior·when·an·application·fails·to·start·and·possibly·causes·the3908 ············</span><span·class="k">end</span><span·class="p">,</span></code></pre><p>*<strong>·POTENTIAL·INCOMPATIBILITY·*</strong></p><p>Own·Id:·OTP-5772</p></li><li><p>The·behavior·when·an·application·fails·to·start·and·possibly·causes·the
3909 runtime·system·to·halt·has·been·cleaned·up,·including·fixing·some·minor·bugs.</p><p><code·class="inline">application_controller</code>·should·now·always·terminate·with·a·non-nested·string,3909 runtime·system·to·halt·has·been·cleaned·up,·including·fixing·some·minor·bugs.</p><p><code·class="inline">application_controller</code>·should·now·always·terminate·with·a·non-nested·string,
3910 meaning·the·slogan·in·an·<code·class="inline">erl_crash.dump</code>·should·always·be·easy·to·read.</p><p><code·class="inline">init</code>·now·makes·sure·that·the·slogan·passed·to·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#halt/1"><code·class="inline">erlang:halt/1</code></a>·does·not3910 meaning·the·slogan·in·an·<code·class="inline">erl_crash.dump</code>·should·always·be·easy·to·read.</p><p><code·class="inline">init</code>·now·makes·sure·that·the·slogan·passed·to·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#halt/1"><code·class="inline">erlang:halt/1</code></a>·does·not
Offset 4323, 15 lines modifiedOffset 4323, 15 lines modified
4323 ······<p·class="built-using">4323 ······<p·class="built-using">
4324 ········Built·using4324 ········Built·using
4325 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the4325 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
4326 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>4326 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
4327 ······</p>4327 ······</p>
4328 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4328 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
4329 ····</footer>4329 ····</footer>
4330 ··</div>4330 ··</div>
4331 </main>4331 </main>
4332 </div>4332 </div>
4333 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>4333 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
4334 <script>4334 <script>
4335 ··document.addEventListener("DOMContentLoaded",·function·()·{4335 ··document.addEventListener("DOMContentLoaded",·function·()·{
753 B
html2text {}
Max HTML report size reached
24.2 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/os.html
    
Offset 652, 21 lines modifiedOffset 652, 21 lines modified
652 ······<div·class="specs">652 ······<div·class="specs">
  
653 ··········<pre·translate="no"><span·class="attribute">-spec</span>·cmd(Command,·Options)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·when·Command·::·<a·href="#t:os_command/0">os_command</a>(),·Options·::·<a·href="#t:os_command_opts/0">os_command_opts</a>().</pre>653 ··········<pre·translate="no"><span·class="attribute">-spec</span>·cmd(Command,·Options)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·when·Command·::·<a·href="#t:os_command/0">os_command</a>(),·Options·::·<a·href="#t:os_command_opts/0">os_command_opts</a>().</pre>
  
654 ······</div>654 ······</div>
  
655 <p>Executes·<code·class="inline">Command</code>·in·a·command·shell·of·the·target·OS,·captures·the·standard655 <p>Executes·<code·class="inline">Command</code>·in·a·command·shell·of·the·target·OS,·captures·the·standard
656 output·and·standard·error·of·the·command,·and·returns·this·result·as·a·string.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">LsOut</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="5198902030-1">(</span><span·class="s">&quot;ls&quot;</span><span·class="p"·data-group-id="5198902030-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·on·unix·platform</span><span·class="w">656 output·and·standard·error·of·the·command,·and·returns·this·result·as·a·string.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">LsOut</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="8985354209-1">(</span><span·class="s">&quot;ls&quot;</span><span·class="p"·data-group-id="8985354209-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·on·unix·platform</span><span·class="w">
657 </span><span·class="n">DirOut</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="5198902030-2">(</span><span·class="s">&quot;dir&quot;</span><span·class="p"·data-group-id="5198902030-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·on·Win32·platform</span></code></pre><p>Notice·that·in·some·cases,·standard·output·of·a·command·when·called·from·another657 </span><span·class="n">DirOut</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="8985354209-2">(</span><span·class="s">&quot;dir&quot;</span><span·class="p"·data-group-id="8985354209-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·on·Win32·platform</span></code></pre><p>Notice·that·in·some·cases,·standard·output·of·a·command·when·called·from·another
658 program·can·differ,·compared·with·the·standard·output·of·the·command·when·called658 program·can·differ,·compared·with·the·standard·output·of·the·command·when·called
659 directly·from·an·OS·command·shell.</p><p>The·possible·options·are:</p><ul><li><p><strong><code·class="inline">max_size</code></strong>·-·The·maximum·size·of·the·data·returned·by·the·<code·class="inline">os:cmd</code>·call.659 directly·from·an·OS·command·shell.</p><p>The·possible·options·are:</p><ul><li><p><strong><code·class="inline">max_size</code></strong>·-·The·maximum·size·of·the·data·returned·by·the·<code·class="inline">os:cmd</code>·call.
660 This·option·is·a·safety·feature·that·should·be·used·when·the·command·executed660 This·option·is·a·safety·feature·that·should·be·used·when·the·command·executed
661 can·return·a·very·large,·possibly·infinite,·result.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="1130777309-1">(</span><span·class="s">&quot;cat·/dev/zero&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1130777309-2">#{</span><span·class="w">·</span><span·class="ss">max_size</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·191,·SHA:·3ae20aa8d8b3bff9c56a079329c0fb4f3d119120237f9580e2978f0c3c90fc3f·...·]9-1">)</span><span·class="p">.</span><span·class="w">661 can·return·a·very·large,·possibly·infinite,·result.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="4804261559-1">(</span><span·class="s">&quot;cat·/dev/zero&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4804261559-2">#{</span><span·class="w">·</span><span·class="ss">max_size</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·191,·SHA:·05c0ab55c5a5129ff80cbbf77feed4173bc9bad5d5155f0d8a1238042a3f6738·...·]9-1">)</span><span·class="p">.</span><span·class="w">
662 </span><span·class="p"·data-group-id="1130777309-3">[</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·762,·SHA:·9e0bf0d5390328fbbff292d04864138fd736fde2a561789a3f7722a851c52ffd·...·]9-3">]</span></code></pre></li></ul>662 </span><span·class="p"·data-group-id="4804261559-3">[</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·762,·SHA:·ed5b7c5a8bc78d317c612b202463c52b3bb280078781cd4c9d5ef39a690d1e4f·...·]9-3">]</span></code></pre></li></ul>
663 ··</section>663 ··</section>
664 </section>664 </section>
665 <section·class="detail"·id="env/0">665 <section·class="detail"·id="env/0">
  
666 ··<div·class="detail-header">666 ··<div·class="detail-header">
667 ····<a·href="#env/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">667 ····<a·href="#env/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
668 ······<i·class="ri-link-m"·aria-hidden="true"></i>668 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 948, 15 lines modifiedOffset 948, 15 lines modified
  
948 ······</div>948 ······</div>
  
949 <p>Returns·a·performance·counter·that·can·be·used·as·a·very·fast·and·high949 <p>Returns·a·performance·counter·that·can·be·used·as·a·very·fast·and·high
950 resolution·timestamp.</p><p>This·counter·is·read·directly·from·the·hardware·or·operating·system·with·the950 resolution·timestamp.</p><p>This·counter·is·read·directly·from·the·hardware·or·operating·system·with·the
951 same·guarantees.·This·means·that·two·consecutive·calls·to·the·function·are·not951 same·guarantees.·This·means·that·two·consecutive·calls·to·the·function·are·not
952 guaranteed·to·be·monotonic,·though·it·most·likely·will·be.·The·performance952 guaranteed·to·be·monotonic,·though·it·most·likely·will·be.·The·performance
953 counter·will·be·converted·to·the·resolution·passed·as·an·argument.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">T1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">perf_counter</span><span·class="p"·data-group-id="4128271362-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="4128271362-1">)</span><span·class="p">,</span><span·class="k">receive</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">10000<[·...·truncated·by·diffoscope;·len:·486,·SHA:·c74ebfb3b4c58d6d365d9f2ce5b85db5f49c49b5700f8b315d0a46be82df1ce7·...·]2-2">)</span><span·class="p">.</span><span·class="w">953 counter·will·be·converted·to·the·resolution·passed·as·an·argument.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">T1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">perf_counter</span><span·class="p"·data-group-id="2695927842-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="2695927842-1">)</span><span·class="p">,</span><span·class="k">receive</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">10000<[·...·truncated·by·diffoscope;·len:·486,·SHA:·7affc251faeb4fa8fe029cf9e9df540964688e21b91c1c7a2d0fc49893bfcc80·...·]2-2">)</span><span·class="p">.</span><span·class="w">
954 </span><span·class="mi">176525861</span><span·class="gp·unselectable">954 </span><span·class="mi">176525861</span><span·class="gp·unselectable">
955 2&gt;·</span><span·class="n">T2</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="n">T1</span><span·class="p">.</span><span·class="w">955 2&gt;·</span><span·class="n">T2</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="n">T1</span><span·class="p">.</span><span·class="w">
956 </span><span·class="mi">10004</span></code></pre>956 </span><span·class="mi">10004</span></code></pre>
957 ··</section>957 ··</section>
958 </section>958 </section>
959 <section·class="detail"·id="putenv/2">959 <section·class="detail"·id="putenv/2">
  
Offset 1119, 24 lines modifiedOffset 1119, 24 lines modified
1119 <p>Returns·the·current·<a·href="../../../../erts-15.0.1/doc/html/time_correction.html#os-system-time">OS·system·time</a>1119 <p>Returns·the·current·<a·href="../../../../erts-15.0.1/doc/html/time_correction.html#os-system-time">OS·system·time</a>
1120 in·the·same·format·as·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#timestamp/0"><code·class="inline">erlang:timestamp/0</code></a>.</p><p>The·tuple·can·be·used·together·with·function·<a·href="../../../../lib/stdlib-6.0.1/doc/html/calendar.html#now_to_universal_time/1"><code·class="inline">calendar:now_to_universal_time/1</code></a>1120 in·the·same·format·as·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#timestamp/0"><code·class="inline">erlang:timestamp/0</code></a>.</p><p>The·tuple·can·be·used·together·with·function·<a·href="../../../../lib/stdlib-6.0.1/doc/html/calendar.html#now_to_universal_time/1"><code·class="inline">calendar:now_to_universal_time/1</code></a>
1121 or·<a·href="../../../../lib/stdlib-6.0.1/doc/html/calendar.html#now_to_local_time/1"><code·class="inline">calendar:now_to_local_time/1</code></a>·to·get·calendar·time.·Using·the·calendar·time,1121 or·<a·href="../../../../lib/stdlib-6.0.1/doc/html/calendar.html#now_to_local_time/1"><code·class="inline">calendar:now_to_local_time/1</code></a>·to·get·calendar·time.·Using·the·calendar·time,
1122 together·with·the·<code·class="inline">MicroSecs</code>·part·of·the·return·tuple·from·this·function,1122 together·with·the·<code·class="inline">MicroSecs</code>·part·of·the·return·tuple·from·this·function,
1123 allows·you·to·log·time·stamps·in·high·resolution·and·consistent·with·the·time·in1123 allows·you·to·log·time·stamps·in·high·resolution·and·consistent·with·the·time·in
1124 ·the·rest·of·the·OS.</p><p>Example·of·code·formatting·a·string·in·format·&quot;DD·Mon·YYYY·HH:MM:SS.mmmmmm&quot;,1124 ·the·rest·of·the·OS.</p><p>Example·of·code·formatting·a·string·in·format·&quot;DD·Mon·YYYY·HH:MM:SS.mmmmmm&quot;,
1125 where·DD·is·the·day·of·month,·Mon·is·the·textual·month·name,·YYYY·is·the·year,1125 where·DD·is·the·day·of·month,·Mon·is·the·textual·month·name,·YYYY·is·the·year,
1126 HH:MM:SS·is·the·time,·and·mmmmmm·is·the·microseconds·in·six·positions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6763793254-1">(</span><span·class="ss">print_time</span><span·class="p"·data-group-id="6763793254-1">)</span><span·class="p">.</span><span·class="w"> 
1127 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6763793254-2">(</span><span·class="p"·data-group-id="6763793254-3">[</span><span·class="ss">format_utc_timestamp</span><span·class="p">/</span><span·class="mi">0</s[·...·truncated·by·diffoscope;·len:·100,·SHA:·ed941b308842439fe47174e4d3ff22f8e993bae7e552fcdbcad87c47690ad303·...·]">)</span><span·class="p">.</span><span·class="w">1126 HH:MM:SS·is·the·time,·and·mmmmmm·is·the·microseconds·in·six·positions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4233369677-1">(</span><span·class="ss">print_time[·...·truncated·by·diffoscope;·len:·50,·SHA:·5b889c9fc568b819f6f8ed1013225447c5fbc079a2f169b83a36202479458d58·...·]">)</span><span·class="p">.</span><span·class="w">
 1127 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4233369677-2">(</span><span·class="p"·data-group-id="4233369677-3">[</span><span·class="ss">format_utc_timestamp</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4233369677-3">]</span><span·class="p"·data-group-id="4233369677-2">)</span><span·class="p">.</span><span·class="w">
1128 </span><span·class="nf">format_utc_timestamp</span><span·class="p"·data-group-id="6763793254-4">(</span><span·class="p"·data-group-id="6763793254-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1128 </span><span·class="nf">format_utc_timestamp</span><span·class="p"·data-group-id="4233369677-4">(</span><span·class="p"·data-group-id="4233369677-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1129 ····</span><span·class="n">TS</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6763793254-5">{</span><span·class="p">_</span><span·class="p">,</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Micro</span><span·class="p"·data-group-id="6763793254-5">}</span><span·class="w">·</span><span·class="o">=</span><span·cla[·...·truncated·by·diffoscope;·len:·192,·SHA:·e9418f7a33051068a6d92a77c787f313f41006fd8c1e19357b6a77e8f6c3cfa1·...·]-6">)</span><span·class="p">,</span><span·class="w">1129 ····</span><span·class="n">TS</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4233369677-5">{</span><span·class="p">_</span><span·class="p">,</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Micro</span><span·class="p"·data-group-id="4233369677-5">}</span><span·class="w">·</span><span·class="o">=</span><span·cla[·...·truncated·by·diffoscope;·len:·192,·SHA:·a880f274190d92f53ff095b4b16d43c1bb78a9a147897bdaae83921e535514fc·...·]-6">)</span><span·class="p">,</span><span·class="w">
1130 ····</span><span·class="p"·data-group-id="6763793254-7">{</span><span·class="p"·data-group-id="6763793254-8">{</span><span·class="n">Year</span><span·class="p">,</span><span·class="n">Month</span><span·class="p">,</span><span·class="n">Day</span><span·class="p"·data-group-id="6763793254-8">}</span[·...·truncated·by·diffoscope;·len:·305,·SHA:·d049d8cf8d073f5ada3a37a9e08d59b9f424e8110f10e87812993c32423538d1·...·]-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">1130 ····</span><span·class="p"·data-group-id="4233369677-7">{</span><span·class="p"·data-group-id="4233369677-8">{</span><span·class="n">Year</span><span·class="p">,</span><span·class="n">Month</span><span·class="p">,</span><span·class="n">Day</span><span·class="p"·data-group-id="4233369677-8">}</span[·...·truncated·by·diffoscope;·len:·305,·SHA:·1b7593da43183f2bf6a21b690e328e7b0cf54ed54d2b7630cf4d1f5c5420a167·...·]-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
1131 </span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">now_to_universal_time</span><span·class="p"·data-group-id="6763793254-10">(</span><span·class="n">TS</span><span·class="p"·data-group-id="6763793254-10">)</span><span·class="p">,</span><span·class="w">1131 </span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">now_to_universal_time</span><span·class="p"·data-group-id="4233369677-10">(</span><span·class="n">TS</span><span·class="p"·data-group-id="4233369677-10">)</span><span·class="p">,</span><span·class="w">
1132 ····</span><span·class="n">Mstr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="6763793254-11">(</span><span·class="n">Month</span><span·class="p">,</span><span·class="p"·data-group-id="6763793254-12">{</span><span·class="s">&quot;Jan&quot;</span><span·class="p">,</span><span·class="s">&quot;Feb&quot;</span><span·class="p">,</span><span·class="s">&quot;Mar&quot;</span><span·class="p">,</span><span·class="s">&quot;Apr&quot;</span><span·class="p">,</span><span·class="s">&quot;May&quot;</span><span·class="p">,</span><span·class="s">&quot;Jun&quot;</span><span·class="p">,</span><span·class="s">&quot;Jul&quot;</span><span·class="p">,</span><span·class="w">1132 ····</span><span·class="n">Mstr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="4233369677-11">(</span><span·class="n">Month</span><span·class="p">,</span><span·class="p"·data-group-id="4233369677-12">{</span><span·class="s">&quot;Jan&quot;</span><span·class="p">,</span><span·class="s">&quot;Feb&quot;</span><span·class="p">,</span><span·class="s">&quot;Mar&quot;</span><span·class="p">,</span><span·class="s">&quot;Apr&quot;</span><span·class="p">,</span><span·class="s">&quot;May&quot;</span><span·class="p">,</span><span·class="s">&quot;Jun&quot;</span><span·class="p">,</span><span·class="s">&quot;Jul&quot;</span><span·class="p">,</span><span·class="w">
1133 ····</span><span·class="s">&quot;Aug&quot;</span><span·class="p">,</span><span·class="s">&quot;Sep&quot;</span><span·class="p">,</span><span·class="s">&quot;Oct&quot;</span><span·class="p">,</span><span·class="s">&quot;Nov&quot;</span><span·class="p">,</span><span·class="s">&quot;Dec&quot;</span><span·class="p"·data-group-id="6763793254-12">}</span><span·class="p"·data-group-id="6763793254-11">)</span><span·class="p">,</span><span·class="w">1133 ····</span><span·class="s">&quot;Aug&quot;</span><span·class="p">,</span><span·class="s">&quot;Sep&quot;</span><span·class="p">,</span><span·class="s">&quot;Oct&quot;</span><span·class="p">,</span><span·class="s">&quot;Nov&quot;</span><span·class="p">,</span><span·class="s">&quot;Dec&quot;</span><span·class="p"·data-group-id="4233369677-12">}</span><span·class="p"·data-group-id="4233369677-11">)</span><span·class="p">,</span><span·class="w">
1134 ····</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6763793254-13">(</span><span·class="s">&quot;</span><span·class="si">~2w</span><span·class="s">·</span><span·class="si">~s</span><span·class="s">·</span><span·class="si">~4w</span><span·class="s">·</span><span·class="si">~2w</span><span·class="s">:</span><span·class="si">~2..0w</span><span·class="s">:</span><span·class="si">~2..0w</span><span·class="s">.</span><span·class="si">~6..0w</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">1134 ····</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="4233369677-13">(</span><span·class="s">&quot;</span><span·class="si">~2w</span><span·class="s">·</span><span·class="si">~s</span><span·class="s">·</span><span·class="si">~4w</span><span·class="s">·</span><span·class="si">~2w</span><span·class="s">:</span><span·class="si">~2..0w</span><span·class="s">:</span><span·class="si">~2..0w</span><span·class="s">.</span><span·class="si">~6..0w</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">
1135 ····</span><span·class="p"·data-group-id="6763793254-14">[</span><span·class="n">Day</span><span·class="p">,</span><span·class="n">Mstr</span><span·class="p">,</span><span·class="n">Year</span><span·class="p">,</span><span·class="n">Hour</span><span·class="p">,</span><span·class="n">Minute</span><[·...·truncated·by·diffoscope;·len:·1004,·SHA:·1b8dc966a8ec5ceb7816b398b644bd6a7b0b698f27ebfb7ec65626a89643b92e·...·]-1">)</span><span·class="p">.</span><span·class="w">1135 ····</span><span·class="p"·data-group-id="4233369677-14">[</span><span·class="n">Day</span><span·class="p">,</span><span·class="n">Mstr</span><span·class="p">,</span><span·class="n">Year</span><span·class="p">,</span><span·class="n">Hour</span><span·class="p">,</span><span·class="n">Minute</span><[·...·truncated·by·diffoscope;·len:·1004,·SHA:·dd848f1ec534df9ce81ceb5c556226805af04c058dda97facea3b7324ef04bac·...·]-1">)</span><span·class="p">.</span><span·class="w">
1136 </span><span·class="mi">29</span><span·class="w">·</span><span·class="n">Apr</span><span·class="w">·</span><span·class="mi">2009</span><span·class="w">··</span><span·class="mi">9</span><span·class="p">:</span><span·class="mi">55</span><span·class="p">:</span><span·class="mf">30.051711</span></code></pre><p>OS·system·time·can·also·be·retrieved·by·<a·href="#system_time/0"><code·class="inline">system_time/0</code></a>·and·<a·href="#system_time/1"><code·class="inline">system_time/1</code></a>.</p>1136 </span><span·class="mi">29</span><span·class="w">·</span><span·class="n">Apr</span><span·class="w">·</span><span·class="mi">2009</span><span·class="w">··</span><span·class="mi">9</span><span·class="p">:</span><span·class="mi">55</span><span·class="p">:</span><span·class="mf">30.051711</span></code></pre><p>OS·system·time·can·also·be·retrieved·by·<a·href="#system_time/0"><code·class="inline">system_time/0</code></a>·and·<a·href="#system_time/1"><code·class="inline">system_time/1</code></a>.</p>
1137 ··</section>1137 ··</section>
1138 </section>1138 </section>
1139 <section·class="detail"·id="type/0">1139 <section·class="detail"·id="type/0">
  
1140 ··<div·class="detail-header">1140 ··<div·class="detail-header">
1141 ····<a·href="#type/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1141 ····<a·href="#type/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1256, 15 lines modifiedOffset 1256, 15 lines modified
1256 ······<p·class="built-using">1256 ······<p·class="built-using">
1257 ········Built·using1257 ········Built·using
1258 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1258 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1259 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1259 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1260 ······</p>1260 ······</p>
1261 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1261 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1262 ····</footer>1262 ····</footer>
1263 ··</div>1263 ··</div>
1264 </main>1264 </main>
1265 </div>1265 </div>
1266 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1266 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1267 <script>1267 <script>
1268 ··document.addEventListener("DOMContentLoaded",·function·()·{1268 ··document.addEventListener("DOMContentLoaded",·function·()·{
615 B
html2text {}
Max HTML report size reached
4.57 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/pg.html
    
Offset 866, 15 lines modifiedOffset 866, 15 lines modified
  
866 ··········<pre·translate="no"><span·class="attribute">-spec</span>·monitor_scope(Scope·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>())·->·{<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0">reference</a>(),·#{<a·href="#t:group/0">group</a>()·=>·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:pid/0">pid</a>()]}}.</pre>866 ··········<pre·translate="no"><span·class="attribute">-spec</span>·monitor_scope(Scope·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>())·->·{<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0">reference</a>(),·#{<a·href="#t:group/0">group</a>()·=>·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:pid/0">pid</a>()]}}.</pre>
  
867 ······</div>867 ······</div>
  
868 <p>Subscribes·the·caller·to·updates·from·the·specified·scope.</p><p>Returns·content·of·the·entire·scope·and·a·reference·to·match·the·upcoming868 <p>Subscribes·the·caller·to·updates·from·the·specified·scope.</p><p>Returns·content·of·the·entire·scope·and·a·reference·to·match·the·upcoming
869 notifications.</p><p>Whenever·any·group·membership·changes,·an·update·message·is·sent·to·the869 notifications.</p><p>Whenever·any·group·membership·changes,·an·update·message·is·sent·to·the
870 subscriber:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3015703050-1">{</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">join</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Group</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·781,·SHA:·cecb8133df6a6afbe22635a4f2806994904669cc0bc1ae359369f0cb98d2f7cb·...·]-1">}</span></code></pre>870 subscriber:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6226562930-1">{</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">join</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Group</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·781,·SHA:·4303dd97172bdc7242792774cbe02ea1094b2766710342d194815c956beccd62·...·]-1">}</span></code></pre>
871 ··</section>871 ··</section>
872 </section>872 </section>
873 <section·class="detail"·id="start/1">873 <section·class="detail"·id="start/1">
  
874 ··<div·class="detail-header">874 ··<div·class="detail-header">
875 ····<a·href="#start/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">875 ····<a·href="#start/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
876 ······<i·class="ri-link-m"·aria-hidden="true"></i>876 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1047, 15 lines modifiedOffset 1047, 15 lines modified
1047 ······<p·class="built-using">1047 ······<p·class="built-using">
1048 ········Built·using1048 ········Built·using
1049 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1049 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1050 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1050 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1051 ······</p>1051 ······</p>
1052 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1052 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1053 ····</footer>1053 ····</footer>
1054 ··</div>1054 ··</div>
1055 </main>1055 </main>
1056 </div>1056 </div>
1057 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1057 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1058 <script>1058 <script>
1059 ··document.addEventListener("DOMContentLoaded",·function·()·{1059 ··document.addEventListener("DOMContentLoaded",·function·()·{
632 B
html2text {}
Max HTML report size reached
6.37 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/rpc.html
    
Offset 1075, 18 lines modifiedOffset 1075, 18 lines modified
1075 all·the·nodes,·but·the·multicall·is·faster,·as·all·the·requests·are·sent·at·the1075 all·the·nodes,·but·the·multicall·is·faster,·as·all·the·requests·are·sent·at·the
1076 same·time·and·are·collected·one·by·one·as·they·come·back.</p><p>The·function·evaluates·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(Module,·Function,·Args)</code></a>·on·the1076 same·time·and·are·collected·one·by·one·as·they·come·back.</p><p>The·function·evaluates·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(Module,·Function,·Args)</code></a>·on·the
1077 specified·nodes·and·collects·the·answers.·It·returns·<code·class="inline">{ResL,·BadNodes}</code>,·where1077 specified·nodes·and·collects·the·answers.·It·returns·<code·class="inline">{ResL,·BadNodes}</code>,·where
1078 <code·class="inline">BadNodes</code>·is·a·list·of·the·nodes·that·do·not·exist,·and·<code·class="inline">ResL</code>·is·a·list·of·the1078 <code·class="inline">BadNodes</code>·is·a·list·of·the·nodes·that·do·not·exist,·and·<code·class="inline">ResL</code>·is·a·list·of·the
1079 return·values,·or·<code·class="inline">{badrpc,·Reason}</code>·for·failing·calls.·<code·class="inline">Timeout</code>·is·a·time1079 return·values,·or·<code·class="inline">{badrpc,·Reason}</code>·for·failing·calls.·<code·class="inline">Timeout</code>·is·a·time
1080 (integer)·in·milliseconds,·or·<code·class="inline">infinity</code>.</p><p>The·following·example·is·useful·when·new·object·code·is·to·be·loaded·on·all1080 (integer)·in·milliseconds,·or·<code·class="inline">infinity</code>.</p><p>The·following·example·is·useful·when·new·object·code·is·to·be·loaded·on·all
1081 nodes·in·the·network,·and·indicates·some·side·effects·that·RPCs·can·produce:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Find·object·code·for·module·Mod</span><span·class="w">1081 nodes·in·the·network,·and·indicates·some·side·effects·that·RPCs·can·produce:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Find·object·code·for·module·Mod</span><span·class="w">
1082 </span><span·class="p"·data-group-id="6986888511-1">{</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="6986888511-1">}</span><span·[·...·truncated·by·diffoscope;·len:·277,·SHA:·fa9f779383bdfc9e9f07736ee793fa6d71bf3a5a65c49334c9000e0d244eea24·...·]-2">)</span><span·class="p">,</span><span·class="w">1082 </span><span·class="p"·data-group-id="9548574543-1">{</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="9548574543-1">}</span><span·[·...·truncated·by·diffoscope;·len:·277,·SHA:·dd17a86e303065585c92ff15bfa469b4630102c2e2f9df32e2cfc813f5400289·...·]-2">)</span><span·class="p">,</span><span·class="w">
  
1083 </span><span·class="c1">%%·and·load·it·on·all·nodes·including·this·one</span><span·class="w">1083 </span><span·class="c1">%%·and·load·it·on·all·nodes·including·this·one</span><span·class="w">
1084 </span><span·class="p"·data-group-id="6986888511-3">{</span><span·class="n">ResL</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="6986888511-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·608,·SHA:·c2bbf41bec13247b1f12821efd6bf180d1494494d6b01d44a160789a8a8c16cb·...·]-4">)</span><span·class="p">,</span><span·class="w">1084 </span><span·class="p"·data-group-id="9548574543-3">{</span><span·class="n">ResL</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="9548574543-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·608,·SHA:·0c17e4f0d51764a8ddb7392b1559afd901facfd6d9ec9c4e89771a0764e82ef1·...·]-4">)</span><span·class="p">,</span><span·class="w">
  
1085 </span><span·class="c1">%%·and·then·maybe·check·the·ResL·list.</span></code></pre><blockquote><h4·class="info">Note</h4><p>If·you·want·the·ability·to·distinguish·between·results,·you·may·want·to1085 </span><span·class="c1">%%·and·then·maybe·check·the·ResL·list.</span></code></pre><blockquote><h4·class="info">Note</h4><p>If·you·want·the·ability·to·distinguish·between·results,·you·may·want·to
1086 consider·using·the·<a·href="erpc.html#multicall/4"><code·class="inline">erpc:multicall()</code></a>·function·from·the1086 consider·using·the·<a·href="erpc.html#multicall/4"><code·class="inline">erpc:multicall()</code></a>·function·from·the
1087 <code·class="inline">erpc</code>·module·instead.</p></blockquote><blockquote><h4·class="info">Note</h4><p>You·cannot·make·<em>any</em>·assumptions·about·the·process·that·will·perform·the1087 <code·class="inline">erpc</code>·module·instead.</p></blockquote><blockquote><h4·class="info">Note</h4><p>You·cannot·make·<em>any</em>·assumptions·about·the·process·that·will·perform·the
1088 <code·class="inline">apply()</code>.·It·may·be·the·calling·process·itself,·an·<code·class="inline">rpc</code>·server,·another1088 <code·class="inline">apply()</code>.·It·may·be·the·calling·process·itself,·an·<code·class="inline">rpc</code>·server,·another
1089 server,·or·a·freshly·spawned·process.</p></blockquote>1089 server,·or·a·freshly·spawned·process.</p></blockquote>
1090 ··</section>1090 ··</section>
Offset 1448, 15 lines modifiedOffset 1448, 15 lines modified
1448 ······<p·class="built-using">1448 ······<p·class="built-using">
1449 ········Built·using1449 ········Built·using
1450 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1450 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1451 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1451 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1452 ······</p>1452 ······</p>
1453 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1453 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1454 ····</footer>1454 ····</footer>
1455 ··</div>1455 ··</div>
1456 </main>1456 </main>
1457 </div>1457 </div>
1458 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1458 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1459 <script>1459 <script>
1460 ··document.addEventListener("DOMContentLoaded",·function·()·{1460 ··document.addEventListener("DOMContentLoaded",·function·()·{
677 B
html2text {}
Max HTML report size reached
1.28 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
464 B
html2text {}
Max HTML report size reached
51.4 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/seq_trace.html
    
Offset 137, 17 lines modifiedOffset 137, 17 lines modified
137 of·the·trace·output.</p><h2·id="module-trace-messages-sent-to-the-system-tracer"·class="section-heading">137 of·the·trace·output.</p><h2·id="module-trace-messages-sent-to-the-system-tracer"·class="section-heading">
138 ··<a·href="#module-trace-messages-sent-to-the-system-tracer"·class="hover-link">138 ··<a·href="#module-trace-messages-sent-to-the-system-tracer"·class="hover-link">
139 ····<i·class="ri-link-m"·aria-hidden="true"></i>139 ····<i·class="ri-link-m"·aria-hidden="true"></i>
140 ··</a>140 ··</a>
141 ··<span·class="text">Trace·Messages·Sent·to·the·System·Tracer</span>141 ··<span·class="text">Trace·Messages·Sent·to·the·System·Tracer</span>
142 </h2>142 </h2>
143 <p>The·format·of·the·messages·is·one·of·the·following,·depending·on·if·flag143 <p>The·format·of·the·messages·is·one·of·the·following,·depending·on·if·flag
144 <code·class="inline">timestamp</code>·of·the·trace·token·is·set·to·<code·class="inline">true</code>·or·<code·class="inline">false</code>:</p><pre><code·class="text">{seq_trace,·Label,·SeqTraceInfo,·TimeStamp}</code></pre><p>or</p><pre><code·class="text">{seq_trace,·Label,·SeqTraceInfo}</code></pre><p>Where:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Label</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="6559412210-1">(</span><span·class="p"·data-group-id="6559412210-1">)</span><span·class="w">144 <code·class="inline">timestamp</code>·of·the·trace·token·is·set·to·<code·class="inline">true</code>·or·<code·class="inline">false</code>:</p><pre><code·class="text">{seq_trace,·Label,·SeqTraceInfo,·TimeStamp}</code></pre><p>or</p><pre><code·class="text">{seq_trace,·Label,·SeqTraceInfo}</code></pre><p>Where:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Label</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="2508898266-1">(</span><span·class="p"·data-group-id="2508898266-1">)</span><span·class="w">
145 </span><span·class="n">TimeStamp</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6559412210-2">{</span><span·class="n">Seconds</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Milliseconds</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Microseconds</span><span·class="p"·data-group-id="6559412[·...·truncated·by·diffoscope;·len:·3,·SHA:·d29d53701d3c859e29e1b90028eec1ca8e2f29439198b6e036c60951fb458aa1·...·]-2">}</span><span·class="w">145 </span><span·class="n">TimeStamp</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2508898266-2">{</span><span·class="n">Seconds</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Milliseconds</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Microseconds</span><span·class="p"·data-group-id="2508898[·...·truncated·by·diffoscope;·len:·3,·SHA:·ea5b27556fbb134def2c2fbf944d9cdda3dbdb6b10473a1aec59f6f170c4ca3a·...·]-2">}</span><span·class="w">
146 ··</span><span·class="n">Seconds</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Milliseconds</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Microseconds</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="6559412210-3">(</span><span·class="p"·data-group-id="6559412210-3">)</span></code></pre><p><code·class="inline">SeqTraceInfo</code>·can·have·the·following·formats:</p><ul><li><p><strong><code·class="inline">{send,·Serial,·From,·To,·Message}</code></strong>·-·Used·when·a·process·<code·class="inline">From</code>·with·its146 ··</span><span·class="n">Seconds</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Milliseconds</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Microseconds</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="2508898266-3">(</span><span·class="p"·data-group-id="2508898266-3">)</span></code></pre><p><code·class="inline">SeqTraceInfo</code>·can·have·the·following·formats:</p><ul><li><p><strong><code·class="inline">{send,·Serial,·From,·To,·Message}</code></strong>·-·Used·when·a·process·<code·class="inline">From</code>·with·its
147 trace·token·flag·<code·class="inline">send</code>·set·to·<code·class="inline">true</code>·has·sent·information.·<code·class="inline">To</code>·may·be·a147 trace·token·flag·<code·class="inline">send</code>·set·to·<code·class="inline">true</code>·has·sent·information.·<code·class="inline">To</code>·may·be·a
148 process·identifier,·a·registered·name·on·a·node·represented·as148 process·identifier,·a·registered·name·on·a·node·represented·as
149 <code·class="inline">{NameAtom,·NodeAtom}</code>,·or·a·node·name·represented·as·an·atom.·<code·class="inline">From</code>·may·be·a149 <code·class="inline">{NameAtom,·NodeAtom}</code>,·or·a·node·name·represented·as·an·atom.·<code·class="inline">From</code>·may·be·a
150 process·identifier·or·a·node·name·represented·as·an·atom.·<code·class="inline">Message</code>·contains150 process·identifier·or·a·node·name·represented·as·an·atom.·<code·class="inline">Message</code>·contains
151 the·information·passed·along·in·this·information·transfer.·If·the·transfer·is151 the·information·passed·along·in·this·information·transfer.·If·the·transfer·is
152 done·via·message·passing,·it·is·the·actual·message.</p></li><li><p><strong><code·class="inline">{'receive',·Serial,·From,·To,·Message}</code></strong>·-·Used·when·a·process·<code·class="inline">To</code>152 done·via·message·passing,·it·is·the·actual·message.</p></li><li><p><strong><code·class="inline">{'receive',·Serial,·From,·To,·Message}</code></strong>·-·Used·when·a·process·<code·class="inline">To</code>
153 receives·information·with·a·trace·token·that·has·flag·<code·class="inline">'receive'</code>·set·to153 receives·information·with·a·trace·token·that·has·flag·<code·class="inline">'receive'</code>·set·to
Offset 283, 76 lines modifiedOffset 283, 76 lines modified
283 from·the·sequential·tracing·point·of·view.</p><h2·id="module-example-of-use"·class="section-heading">283 from·the·sequential·tracing·point·of·view.</p><h2·id="module-example-of-use"·class="section-heading">
284 ··<a·href="#module-example-of-use"·class="hover-link">284 ··<a·href="#module-example-of-use"·class="hover-link">
285 ····<i·class="ri-link-m"·aria-hidden="true"></i>285 ····<i·class="ri-link-m"·aria-hidden="true"></i>
286 ··</a>286 ··</a>
287 ··<span·class="text">Example·of·Use</span>287 ··<span·class="text">Example·of·Use</span>
288 </h2>288 </h2>
289 <p>This·example·gives·a·rough·idea·of·how·the·new·primitives·can·be·used·and·what289 <p>This·example·gives·a·rough·idea·of·how·the·new·primitives·can·be·used·and·what
290 kind·of·output·it·produces.</p><p>Assume·that·you·have·an·initiating·process·with·<code·class="inline">Pid·==·&lt;0.30.0&gt;</code>·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8904907652-1">(</span><span·class="ss">seqex</span><span·class="p"·data-group-id="8904907652-1">)</span><span·class="p">.</span><span·class="w">290 kind·of·output·it·produces.</p><p>Assume·that·you·have·an·initiating·process·with·<code·class="inline">Pid·==·&lt;0.30.0&gt;</code>·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8005247744-1">(</span><span·class="ss">seqex</span><span·class="p"·data-group-id="8005247744-1">)</span><span·class="p">.</span><span·class="w">
291 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="8904907652-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="8904907652-2">)</span><span·class="p">.</span><span·class="w">291 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="8005247744-2">(</span><span·class="ss">export_all</span><span·class="p"·data-group-id="8005247744-2">)</span><span·class="p">.</span><span·class="w">
  
292 </span><span·class="nf">loop</span><span·class="p"·data-group-id="8904907652-3">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8904907652-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">292 </span><span·class="nf">loop</span><span·class="p"·data-group-id="8005247744-3">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8005247744-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
293 ····</span><span·class="k">receive</span><span·class="w">293 ····</span><span·class="k">receive</span><span·class="w">
294 ········</span><span·class="p"·data-group-id="8904907652-4">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="8904907652-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">294 ········</span><span·class="p"·data-group-id="8005247744-4">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="8005247744-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
295 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="8904907652-5">(</span><span·class="ss">label</span><span·class="p">,</span><span·class="mi">17</span><span·class="p"·data-group-id="8904907652-5">)</span><span·class="p">,</span><span·class="w">295 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="8005247744-5">(</span><span·class="ss">label</span><span·class="p">,</span><span·class="mi">17</span><span·class="p"·data-group-id="8005247744-5">)</span><span·class="p">,</span><span·class="w">
296 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="8904907652-6">(</span><span·class="ss">&#39;receive&#39;</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="8904907652-6">)</span><span·class="p">,</span><span·class="w">296 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="8005247744-6">(</span><span·class="ss">&#39;receive&#39;</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="8005247744-6">)</span><span·class="p">,</span><span·class="w">
297 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="8904907652-7">(</span><span·class="ss">print</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="8904907652-7">)</span><span·class="p">,</span><span·class="w">297 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="8005247744-7">(</span><span·class="ss">print</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="8005247744-7">)</span><span·class="p">,</span><span·class="w">
298 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">print</span><span·class="p"·data-group-id="8904907652-8">(</span><span·class="mi">17</span><span·class="p">,</span><span·class="s">&quot;****·Trace·Started·****&quot;</span><span·class="p"·data-group-id="8904907652-8">)</span><span·class="p">,</span><span·class="w">298 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">print</span><span·class="p"·data-group-id="8005247744-8">(</span><span·class="mi">17</span><span·class="p">,</span><span·class="s">&quot;****·Trace·Started·****&quot;</span><span·class="p"·data-group-id="8005247744-8">)</span><span·class="p">,</span><span·class="w">
299 ············</span><span·class="ss">call_server</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8904907652-9">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8904907652-10">(</span><span·class="p"·data-group-id="8904907652-10">)</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="890490765[·...·truncated·by·diffoscope;·len:·1,·SHA:·d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da3a666eec13ab35·...·]-9">}</span><span·class="p">;</span><span·class="w">299 ············</span><span·class="ss">call_server</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8005247744-9">{</span><span·class="nf">self</span><span·class="p"·data-group-id="8005247744-10">(</span><span·class="p"·data-group-id="8005247744-10">)</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="800524774[·...·truncated·by·diffoscope;·len:·1,·SHA:·4b227777d4dd1fc61c6f884f48641d02b4d121d3fd328cb08b5531fcacdabf8a·...·]-9">}</span><span·class="p">;</span><span·class="w">
300 ········</span><span·class="p"·data-group-id="8904907652-11">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="n">Ack</span><span·class="p"·data-group-id="8904907652-11">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">300 ········</span><span·class="p"·data-group-id="8005247744-11">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="n">Ack</span><span·class="p"·data-group-id="8005247744-11">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
301 ············</span><span·class="ss">ok</span><span·class="w">301 ············</span><span·class="ss">ok</span><span·class="w">
302 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">302 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
303 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8904907652-12">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8904907652-12">)</span><span·class="p">.</span></code></pre><p>And·a·registered·process·<code·class="inline">call_server</code>·with·<code·class="inline">Pid·==·&lt;0.31.0&gt;<[·...·truncated·by·diffoscope;·len:·191,·SHA:·215e63785e9c1e3fc9cdfe9ea93047699040db6835142c5751280d26d977945d·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">303 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8005247744-12">(</span><span·class="n">Port</span><span·class="p"·data-group-id="8005247744-12">)</span><span·class="p">.</span></code></pre><p>And·a·registered·process·<code·class="inline">call_server</code>·with·<code·class="inline">Pid·==·&lt;0.31.0&gt;<[·...·truncated·by·diffoscope;·len:·191,·SHA:·762a7c5dac28079ae17f453c86e36f243b60dab5757019d5e1b980e83e2080a7·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
304 ····</span><span·class="k">receive</span><span·class="w">304 ····</span><span·class="k">receive</span><span·class="w">
305 ········</span><span·class="p"·data-group-id="3140490298-2">{</span><span·class="n">PortController</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="3140490298-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">305 ········</span><span·class="p"·data-group-id="8509754683-2">{</span><span·class="n">PortController</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="8509754683-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
306 ············</span><span·class="n">Ack</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3140490298-3">{</span><span·class="ss">received</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="3140490298-3">}</span><span·class="p">,</span><span·class="w">306 ············</span><span·class="n">Ack</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8509754683-3">{</span><span·class="ss">received</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Message</span><span·class="p"·data-group-id="8509754683-3">}</span><span·class="p">,</span><span·class="w">
307 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">print</span><span·class="p"·data-group-id="3140490298-4">(</span><span·class="mi">17</span><span·class="p">,</span><span·class="s">&quot;We·are·here·now&quot;</span><span·class="p"·data-group-id="3140490298-4">)</span><span·class="p">,</span><span·class="w">307 ············</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">print</span><span·class="p"·data-group-id="8509754683-4">(</span><span·class="mi">17</span><span·class="p">,</span><span·class="s">&quot;We·are·here·now&quot;</span><span·class="p"·data-group-id="8509754683-4">)</span><span·class="p">,</span><span·class="w">
308 ············</span><span·class="n">PortController</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="3140490298-5">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="n">Ack</span><span·class="p"·data-group-id="3140490298-5">}</span><span·class="w">308 ············</span><span·class="n">PortController</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8509754683-5">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="n">Ack</span><span·class="p"·data-group-id="8509754683-5">}</span><span·class="w">
309 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">309 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
310 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="3140490298-6">(</span><span·class="p"·data-group-id="3140490298-6">)</span><span·class="p">.</span></code></pre><p>A·possible·output·from·the·system's·<code·class="inline">sequential_tracer</code>·can·be·like·this:</p><pre><code·class="makeup·erlang"·trans[·...·truncated·by·diffoscope;·len:·434,·SHA:·1ab91be228995c5a3d14ab882e7c3e51d1c808288e0f91d518c232fb55527b59·...·]-1">}</span><span·class="w">·</span><span·class="n">WITH</span><span·class="w">310 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="8509754683-6">(</span><span·class="p"·data-group-id="8509754683-6">)</span><span·class="p">.</span></code></pre><p>A·possible·output·from·the·system's·<code·class="inline">sequential_tracer</code>·can·be·like·this:</p><pre><code·class="makeup·erlang"·trans[·...·truncated·by·diffoscope;·len:·434,·SHA:·d5c84eb71df74882b8a6960b43d9f20ad911b7cec20839cc62aab276346bea8e·...·]-1">}</span><span·class="w">·</span><span·class="n">WITH</span><span·class="w">
311 </span><span·class="s">&quot;****·Trace·Started·****&quot;</span><span·class="w">311 </span><span·class="s">&quot;****·Trace·Started·****&quot;</span><span·class="w">
312 </span><span·class="mi">17</span><span·class="p">:</span><span·class="o">&lt;</span><span·class="mf">0.31</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Received</span><span·class="w">·</span><span·class="p"·data-group-id="3274225408-2">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3274225408-2">}</span><span·class="w">·</span><span·class="n">FROM</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.30</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">WITH</span><span·class="w">312 </span><span·class="mi">17</span><span·class="p">:</span><span·class="o">&lt;</span><span·class="mf">0.31</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Received</span><span·class="w">·</span><span·class="p"·data-group-id="9218354600-2">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="9218354600-2">}</span><span·class="w">·</span><span·class="n">FROM</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.30</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">WITH</span><span·class="w">
313 </span><span·class="p"·data-group-id="3274225408-3">{</span><span·class="o">&lt;</span><span·class="mf">0.30</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="3274225408-3">}</span><span·class="w">313 </span><span·class="p"·data-group-id="9218354600-3">{</span><span·class="o">&lt;</span><span·class="mf">0.30</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="9218354600-3">}</span><span·class="w">
314 </span><span·class="mi">17</span><span·class="p">:</span><span·class="o">&lt;</span><span·class="mf">0.31</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Info</span><span·class="w">·</span><span·class="p"·data-group-id="3274225408-4">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="3274225408-4">}</span><span·class="w">·</span><span·class="n">WITH</span><span·class="w">314 </span><span·class="mi">17</span><span·class="p">:</span><span·class="o">&lt;</span><span·class="mf">0.31</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Info</span><span·class="w">·</span><span·class="p"·data-group-id="9218354600-4">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="9218354600-4">}</span><span·class="w">·</span><span·class="n">WITH</span><span·class="w">
315 </span><span·class="s">&quot;We·are·here·now&quot;</span><span·class="w">315 </span><span·class="s">&quot;We·are·here·now&quot;</span><span·class="w">
316 </span><span·class="mi">17</span><span·class="p">:</span><span·class="o">&lt;</span><span·class="mf">0.30</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Received</span><span·class="w">·</span><span·class="p"·data-group-id="3274225408-5">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="3274225408-5">}</span><span·class="w">·</span><span·class="n">FROM</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.31</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">WITH</span><span·class="w">316 </span><span·class="mi">17</span><span·class="p">:</span><span·class="o">&lt;</span><span·class="mf">0.30</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">Received</span><span·class="w">·</span><span·class="p"·data-group-id="9218354600-5">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="9218354600-5">}</span><span·class="w">·</span><span·class="n">FROM</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.31</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">WITH</span><span·class="w">
317 </span><span·class="p"·data-group-id="3274225408-6">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="p"·data-group-id="3274225408-7">{</span><span·class="ss">received</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="32742254[·...·truncated·by·diffoscope;·len:·55,·SHA:·c693127ef222a14ae1ca935a7f4333df6ce7dfc1241f8a3fe3161b3fb8cb8702·...·]-6">}</span></code></pre><p>The·implementation·of·a·system·tracer·process·that·produces·this·printout·can317 </span><span·class="p"·data-group-id="9218354600-6">{</span><span·class="ss">ack</span><span·class="p">,</span><span·class="p"·data-group-id="9218354600-7">{</span><span·class="ss">received</span><span·class="p">,</span><span·class="ss">the_message</span><span·class="p"·data-group-id="92183546[·...·truncated·by·diffoscope;·len:·55,·SHA:·f1312d8a07d663e99ac05269e07170b4b4519d841fdcacb09772c93493ddd81e·...·]-6">}</span></code></pre><p>The·implementation·of·a·system·tracer·process·that·produces·this·printout·can
318 look·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">tracer</span><span·class="p"·data-group-id="3185154710-1">(</span><span·class="p"·data-group-id="3185154710-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">318 look·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">tracer</span><span·class="p"·data-group-id="5776242242-1">(</span><span·class="p"·data-group-id="5776242242-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
319 ····</span><span·class="k">receive</span><span·class="w">319 ····</span><span·class="k">receive</span><span·class="w">
320 ········</span><span·class="p"·data-group-id="3185154710-2">{</span><span·class="ss">seq_trace</span><span·class="p">,</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="3185154710-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">320 ········</span><span·class="p"·data-group-id="5776242242-2">{</span><span·class="ss">seq_trace</span><span·class="p">,</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="5776242242-2">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
321 ···········</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="3185154710-3">(</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="3185154710-3">)</span><span·class="p">;</span><span·class="w">321 ···········</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="5776242242-3">(</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="5776242242-3">)</span><span·class="p">;</span><span·class="w">
322 ········</span><span·class="p"·data-group-id="3185154710-4">{</span><span·class="ss">seq_trace</span><span·class="p">,</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="n">Ts</span><span·class="p"·data-group-id="3185154710-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">322 ········</span><span·class="p"·data-group-id="5776242242-4">{</span><span·class="ss">seq_trace</span><span·class="p">,</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="n">Ts</span><span·class="p"·data-group-id="5776242242-4">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
323 ···········</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="3185154710-5">(</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="n">Ts</span><span·class="p"·data-group-id="3185154710-5">)</span><span·class="p">;</span><span·class="w">323 ···········</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="5776242242-5">(</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="n">Ts</span><span·class="p"·data-group-id="5776242242-5">)</span><span·class="p">;</span><span·class="w">
324 ········</span><span·class="p">_</span><span·class="n">Other</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ignore</span><span·class="w">324 ········</span><span·class="p">_</span><span·class="n">Other</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ignore</span><span·class="w">
325 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">325 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
326 ····</span><span·class="nf">tracer</span><span·class="p"·data-group-id="3185154710-6">(</span><span·class="p"·data-group-id="3185154710-6">)</span><span·class="p">.</span><span·class="w">326 ····</span><span·class="nf">tracer</span><span·class="p"·data-group-id="5776242242-6">(</span><span·class="p"·data-group-id="5776242242-6">)</span><span·class="p">.</span><span·class="w">
  
327 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="3185154710-7">(</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="3185154710-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">327 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="5776242242-7">(</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="5776242242-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
328 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3185154710-8">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">:&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="3185154710-9">[</span><span·class="n">Label</span><span·class="p"·data-group-id="3185154710-9"[·...·truncated·by·diffoscope;·len:·50,·SHA:·bdb150a3c590346263696f3d0522f4125a1804db10528bb0a7a955f1ad9b70ae·...·]-8">)</span><span·class="p">,</span><span·class="w">328 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5776242242-8">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">:&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="5776242242-9">[</span><span·class="n">Label</span><span·class="p"·data-group-id="5776242242-9"[·...·truncated·by·diffoscope;·len:·50,·SHA:·8268fa419620a3f82184ab5798db6d2a826ea459c8b63094d7636f783a68b22f·...·]-8">)</span><span·class="p">,</span><span·class="w">
329 ····</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="3185154710-10">(</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="3185154710-10">)</span><span·class="p">;</span><span·class="w">329 ····</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="5776242242-10">(</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="5776242242-10">)</span><span·class="p">;</span><span·class="w">
330 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="3185154710-11">(</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="n">Ts</span><span·class="p"·data-group-id="3185154710-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">330 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="5776242242-11">(</span><span·class="n">Label</span><span·class="p">,</span><span·class="n">TraceInfo</span><span·class="p">,</span><span·class="n">Ts</span><span·class="p"·data-group-id="5776242242-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
331 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3185154710-12">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·</span><span·class="si">~p</span><span·class="s">:&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="3185154710-13">[</span><span·class="n">Labe[·...·truncated·by·diffoscope;·len:·152,·SHA:·cdb1402205e9ab6b03dd21063509ba3cb63887bcf65b95c8fc93496db26e7e42·...·]-12">)</span><span·class="p">,</span><span·class="w">331 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5776242242-12">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·</span><span·class="si">~p</span><span·class="s">:&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="5776242242-13">[</span><span·class="n">Labe[·...·truncated·by·diffoscope;·len:·152,·SHA:·3e97d2fe934027155571693281c5e4109974dd062ae0c177fdec673baf215c36·...·]-12">)</span><span·class="p">,</span><span·class="w">
332 ····</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="3185154710-14">(</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="3185154710-14">)</span><span·class="p">.</span><span·class="w">332 ····</span><span·class="nf">print_trace</span><span·class="p"·data-group-id="5776242242-14">(</span><span·class="n">TraceInfo</span><span·class="p"·data-group-id="5776242242-14">)</span><span·class="p">.</span><span·class="w">
  
333 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="3185154710-15">(</span><span·class="p"·data-group-id="3185154710-16">{</span><span·class="ss">print</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">From</span><span·class="p">,</span><span·class="p">_</spa[·...·truncated·by·diffoscope;·len:·148,·SHA:·e3d13709e59d123f12ca4efb7fd25f06fa5da6211fb6317bc0d84f2dd953e712·...·]-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">333 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="5776242242-15">(</span><span·class="p"·data-group-id="5776242242-16">{</span><span·class="ss">print</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">From</span><span·class="p">,</span><span·class="p">_</spa[·...·truncated·by·diffoscope;·len:·148,·SHA:·d492a4e90756465ab403dbc2ffdd37ff51e0a778d4da9cb75d42e8cc6d0e804e·...·]-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
334 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3185154710-17">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·Info·</span><span·class="si">~p</span><span·class="s">·WITH</span><span·class="si">~n</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&[·...·truncated·by·diffoscope;·len:·340,·SHA:·8f06b673fc67f91e6a309f798191487bb796487f492a09d60a54514ded14ebf3·...·]-17">)</span><span·class="p">;</span><span·class="w">334 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5776242242-17">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·Info·</span><span·class="si">~p</span><span·class="s">·WITH</span><span·class="si">~n</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&[·...·truncated·by·diffoscope;·len:·340,·SHA:·fc76942e0d3fd07bc44d0f1dab84fd5f4e9614a13e122e730f61202211c08286·...·]-17">)</span><span·class="p">;</span><span·class="w">
335 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="3185154710-19">(</span><span·class="p"·data-group-id="3185154710-20">{</span><span·class="ss">&#39;receive&#39;</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">From</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·164,·SHA:·3f5696e8c4e37b4f06f72258cf4cecb6e1944b266d486c0727bc5dbef2caedd6·...·]-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">335 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="5776242242-19">(</span><span·class="p"·data-group-id="5776242242-20">{</span><span·class="ss">&#39;receive&#39;</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">From</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·164,·SHA:·348dc38364f730a0fafbebf9c42b3836107fc2fb7c9e0911362df0cf54682870·...·]-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
336 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3185154710-21">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·Received·</span><span·class="si">~p</span><span·class="s">·FROM·</span><span·class="si">~p</span><span·class="s">·WITH</span><span·class="si">~n</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">336 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5776242242-21">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·Received·</span><span·class="si">~p</span><span·class="s">·FROM·</span><span·class="si">~p</span><span·class="s">·WITH</span><span·class="si">~n</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">
337 ··············</span><span·class="p"·data-group-id="3185154710-22">[</span><span·class="n">To</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">From</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="3185154710-22">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·6886878a901ceb3ca6d331f26d94f67a1d14203fb8c5fcbcd03cf0d153720ec6·...·]-21">)</span><span·class="p">;</span><span·class="w">337 ··············</span><span·class="p"·data-group-id="5776242242-22">[</span><span·class="n">To</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">From</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="5776242242-22">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·c8563a175ba91c5dc642603e5a7a017cd82d254090b5fc59c20f66fcdd60b77b·...·]-21">)</span><span·class="p">;</span><span·class="w">
338 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="3185154710-23">(</span><span·class="p"·data-group-id="3185154710-24">{</span><span·class="nb">send</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">From</span><span·class="p">,</span><span·class="n">To</spa[·...·truncated·by·diffoscope;·len:·151,·SHA:·943f02730e9bb9f76a13c15b9d4c8a09b1b0cac74ae332ff3a4715b7c7afb3d9·...·]-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">338 </span><span·class="nf">print_trace</span><span·class="p"·data-group-id="5776242242-23">(</span><span·class="p"·data-group-id="5776242242-24">{</span><span·class="nb">send</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">From</span><span·class="p">,</span><span·class="n">To</spa[·...·truncated·by·diffoscope;·len:·151,·SHA:·2b0d19f50fb89c500e57c2df16cd4ea025f7ae8e8bbf1fea7ba8ac18f95d97a8·...·]-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
339 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3185154710-25">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·Sent·</span><span·class="si">~p</span><span·class="s">·TO·</span><span·class="si">~p</span><span·class="s">·WITH</span><span·class="si">~n</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">339 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5776242242-25">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">·Sent·</span><span·class="si">~p</span><span·class="s">·TO·</span><span·class="si">~p</span><span·class="s">·WITH</span><span·class="si">~n</span><span·class="si">~p</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">
340 ··············</span><span·class="p"·data-group-id="3185154710-26">[</span><span·class="n">From</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">To</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="3185154710-26">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·6886878a901ceb3ca6d331f26d94f67a1d14203fb8c5fcbcd03cf0d153720ec6·...·]-25">)</span><span·class="p">.</span></code></pre><p>The·code·that·creates·a·process·that·runs·this·tracer·function·and·sets·that340 ··············</span><span·class="p"·data-group-id="5776242242-26">[</span><span·class="n">From</span><span·class="p">,</span><span·class="n">Serial</span><span·class="p">,</span><span·class="n">To</span><span·class="p">,</span><span·class="n">Message</span><span·class="p"·data-group-id="5776242242-26">]</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·c8563a175ba91c5dc642603e5a7a017cd82d254090b5fc59c20f66fcdd60b77b·...·]-25">)</span><span·class="p">.</span></code></pre><p>The·code·that·creates·a·process·that·runs·this·tracer·function·and·sets·that
341 process·as·the·system·tracer·can·look·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start</span><span·class="p"·data-group-id="2076363488-1">(</span><span·class="p"·data-group-id="2076363488-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">341 process·as·the·system·tracer·can·look·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">start</span><span·class="p"·data-group-id="1148966546-1">(</span><span·class="p"·data-group-id="1148966546-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
342 ····</span><span·class="n">Pid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="2076363488-2">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="ss">tracer</span><span·class="p">,</span><span·class="p"·data-group-id="2076363488-3">[</span><span·class="p"·data-group-id="2076363488-3">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·228229a287ca6de48a0789485b7b4c1bd0c64489d29a4e9d647eb3090eb49b01·...·]-2">)</span><span·class="p">,</span><span·class="w">342 ····</span><span·class="n">Pid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="1148966546-2">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="ss">tracer</span><span·class="p">,</span><span·class="p"·data-group-id="1148966546-3">[</span><span·class="p"·data-group-id="1148966546-3">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·bda1f914d7b2c8f86d7cbdb280dfa19a86f3a5e35c192aaa6c7e3bdbc422dc42·...·]-2">)</span><span·class="p">,</span><span·class="w">
343 ····</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_system_tracer</span><span·class="p"·data-group-id="2076363488-4">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="2076363488-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·set·Pid·as·the·system·tracer</span><span·class="w">343 ····</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_system_tracer</span><span·class="p"·data-group-id="1148966546-4">(</span><span·class="n">Pid</span><span·class="p"·data-group-id="1148966546-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·set·Pid·as·the·system·tracer</span><span·class="w">
344 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>With·a·function·like·<code·class="inline">test/0</code>,·the·whole·example·can·be·started:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">test</span><span·class="p"·data-group-id="6739862495-1">(</span><span·class="p"·data-group-id="6739862495-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">344 ····</span><span·class="ss">ok</span><span·class="p">.</span></code></pre><p>With·a·function·like·<code·class="inline">test/0</code>,·the·whole·example·can·be·started:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">test</span><span·class="p"·data-group-id="3417673610-1">(</span><span·class="p"·data-group-id="3417673610-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
345 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="6739862495-2">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">loop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6739862495-3">[</span><spa[·...·truncated·by·diffoscope;·len:·118,·SHA:·e1addabda1e9f62a8354a091841a52c56ff1c8f579e302be40186daee5f8981c·...·]-2">)</span><span·class="p">,</span><span·class="w">345 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3417673610-2">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">loop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3417673610-3">[</span><spa[·...·truncated·by·diffoscope;·len:·118,·SHA:·dde2ef046d5ae4479ec0038e0df09c547fc7833cc3e6f38671a703434260e7f1·...·]-2">)</span><span·class="p">,</span><span·class="w">
346 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="6739862495-4">(</span><span·class="ss">call_server</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="6739862495-5">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">[·...·truncated·by·diffoscope;·len:·308,·SHA:·d6b68eeaa5ae8c8064f0d3c3853a3859a739d9e98d8dce683fee46f4e5144842·...·]-4">)</span><span·class="p">,</span><span·class="w">346 ····</span><span·class="nf">register</span><span·class="p"·data-group-id="3417673610-4">(</span><span·class="ss">call_server</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3417673610-5">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">[·...·truncated·by·diffoscope;·len:·308,·SHA:·529646d20637ac37e0bca1e84ac887855d689c1dfe9e6a4d6217a4cc65cbdc8a·...·]-4">)</span><span·class="p">,</span><span·class="w">
347 ····</span><span·class="nf">start</span><span·class="p"·data-group-id="6739862495-7">(</span><span·class="p"·data-group-id="6739862495-7">)</span><span·class="p">,</span><span·class="w">347 ····</span><span·class="nf">start</span><span·class="p"·data-group-id="3417673610-7">(</span><span·class="p"·data-group-id="3417673610-7">)</span><span·class="p">,</span><span·class="w">
348 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="6739862495-8">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="ss">message</span><span·class="p"·data-group-id="6739862495-8">}</span><span·class="p">.</span></code></pre>348 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="3417673610-8">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="ss">message</span><span·class="p"·data-group-id="3417673610-8">}</span><span·class="p">.</span></code></pre>
349 ····</section>349 ····</section>
  
350 </div>350 </div>
  
351 ··<section·id="summary"·class="details-list">351 ··<section·id="summary"·class="details-list">
352 ····<h1·class="section-heading">352 ····<h1·class="section-heading">
353 ······<a·class="hover-link"·href="#summary">353 ······<a·class="hover-link"·href="#summary">
Offset 933, 19 lines modifiedOffset 933, 19 lines modified
  
933 ······</div>933 ······</div>
  
934 <p>Sets·the·trace·token·for·the·calling·process·to·<code·class="inline">Token</code>.·If·<code·class="inline">Token·==·[]</code>·then934 <p>Sets·the·trace·token·for·the·calling·process·to·<code·class="inline">Token</code>.·If·<code·class="inline">Token·==·[]</code>·then
935 tracing·is·disabled,·otherwise·<code·class="inline">Token</code>·should·be·an·Erlang·term·returned·from935 tracing·is·disabled,·otherwise·<code·class="inline">Token</code>·should·be·an·Erlang·term·returned·from
936 <a·href="#get_token/0"><code·class="inline">get_token/0</code></a>·or·<a·href="#set_token/1"><code·class="inline">set_token/1</code></a>.·<a·href="#set_token/1"><code·class="inline">set_token/1</code></a>936 <a·href="#get_token/0"><code·class="inline">get_token/0</code></a>·or·<a·href="#set_token/1"><code·class="inline">set_token/1</code></a>.·<a·href="#set_token/1"><code·class="inline">set_token/1</code></a>
937 can·be·used·to·temporarily·exclude·message·passing·from·the·trace·by·setting·the937 can·be·used·to·temporarily·exclude·message·passing·from·the·trace·by·setting·the
938 trace·token·to·empty·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">OldToken</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="2503260720-1">(</span><span·class="p"·data-group-id="2503260720-2">[</span><span·class="p"·data-group-id="2503260720-2">]</span><span·class="p"·data-group-id="2503260720-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·set·to·empty·and·save</span><span·class="w">938 trace·token·to·empty·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">OldToken</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="8335999566-1">(</span><span·class="p"·data-group-id="8335999566-2">[</span><span·class="p"·data-group-id="8335999566-2">]</span><span·class="p"·data-group-id="8335999566-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·set·to·empty·and·save</span><span·class="w">
939 ····································</span><span·class="c1">%·old·value</span><span·class="w">939 ····································</span><span·class="c1">%·old·value</span><span·class="w">
940 </span><span·class="c1">%·do·something·that·should·not·be·part·of·the·trace</span><span·class="w">940 </span><span·class="c1">%·do·something·that·should·not·be·part·of·the·trace</span><span·class="w">
941 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="2503260720-3">(</span><span·class="s">&quot;Exclude·the·signalling·caused·by·this</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p"·data-group-id="2503260720-3">)</span><span·class="p">,</span><span·class="w">941 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8335999566-3">(</span><span·class="s">&quot;Exclude·the·signalling·caused·by·this</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p"·data-group-id="8335999566-3">)</span><span·class="p">,</span><span·class="w">
942 </span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="2503260720-4">(</span><span·class="n">OldToken</span><span·class="p"·data-group-id="2503260720-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·activate·the·trace·token·again</span><span·class="w">942 </span><span·class="nc">seq_trace</span><span·class="p">:</span><span·class="nf">set_token</span><span·class="p"·data-group-id="8335999566-4">(</span><span·class="n">OldToken</span><span·class="p"·data-group-id="8335999566-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·activate·the·trace·token·again</span><span·class="w">
943 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Returns·the·previous·value·of·the·trace·token.</p>943 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>Returns·the·previous·value·of·the·trace·token.</p>
944 ··</section>944 ··</section>
945 </section>945 </section>
946 <section·class="detail"·id="set_token/2">946 <section·class="detail"·id="set_token/2">
  
947 ··<div·class="detail-header">947 ··<div·class="detail-header">
948 ····<a·href="#set_token/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">948 ····<a·href="#set_token/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1029, 15 lines modifiedOffset 1029, 15 lines modified
1029 ······<p·class="built-using">1029 ······<p·class="built-using">
1030 ········Built·using1030 ········Built·using
1031 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1031 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1032 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1032 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1033 ······</p>1033 ······</p>
1034 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1034 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1035 ····</footer>1035 ····</footer>
1036 ··</div>1036 ··</div>
1037 </main>1037 </main>
1038 </div>1038 </div>
Max diff block lines reached; 73/51866 bytes (0.14%) of diff not shown.
669 B
html2text {}
Max HTML report size reached
34.0 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/socket.html
    
Offset 168, 16 lines modifiedOffset 168, 16 lines modified
168 and·using·that·as·the·<code·class="inline">Timeout | Handle</code>·argument,·the·same·<code·class="inline">Handle</code>168 and·using·that·as·the·<code·class="inline">Timeout | Handle</code>·argument,·the·same·<code·class="inline">Handle</code>
169 will·then·be·the·<a·href="#t:select_handle/0"><code·class="inline">SelectHandle</code></a>·in·the·returned169 will·then·be·the·<a·href="#t:select_handle/0"><code·class="inline">SelectHandle</code></a>·in·the·returned
170 <a·href="#t:select_info/0"><code·class="inline">select_info/0</code></a>·and·the·received·<code·class="inline">select</code>·message,·or·be170 <a·href="#t:select_info/0"><code·class="inline">select_info/0</code></a>·and·the·received·<code·class="inline">select</code>·message,·or·be
171 the·<a·href="#t:completion_handle/0"><code·class="inline">CompletionHandle</code></a>·in·the·returned171 the·<a·href="#t:completion_handle/0"><code·class="inline">CompletionHandle</code></a>·in·the·returned
172 <a·href="#t:completion_info/0"><code·class="inline">completion_info/0</code></a>·and·the·received·<code·class="inline">completion</code>·message.</p><p>The·compiler·may·then·optimize·a·following·<code·class="inline">receive</code>·statement172 <a·href="#t:completion_info/0"><code·class="inline">completion_info/0</code></a>·and·the·received·<code·class="inline">completion</code>·message.</p><p>The·compiler·may·then·optimize·a·following·<code·class="inline">receive</code>·statement
173 to·only·scan·the·messages·that·arrive·after·the·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0"><code·class="inline">reference/0</code></a>173 to·only·scan·the·messages·that·arrive·after·the·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0"><code·class="inline">reference/0</code></a>
174 is·created.··If·the·message·queue·is·large·this·is·a·big·optimization.</p><p>The·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0"><code·class="inline">reference/0</code></a>·has·to·be·unique·for·the·call.</p><h4>Repeating·an·Operation·on·a·<code·class="inline">select</code>·Systems</h4><p>On<code·class="inline">select</code>·systems,·if·a·call·would·be·repeated·<em>before</em>·the·<code·class="inline">select</code>174 is·created.··If·the·message·queue·is·large·this·is·a·big·optimization.</p><p>The·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0"><code·class="inline">reference/0</code></a>·has·to·be·unique·for·the·call.</p><h4>Repeating·an·Operation·on·a·<code·class="inline">select</code>·Systems</h4><p>On<code·class="inline">select</code>·systems,·if·a·call·would·be·repeated·<em>before</em>·the·<code·class="inline">select</code>
175 message·has·been·received·it·replaces·the·call·in·progress:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="p"·data-group-id="7901763056-1">{</span><span·class="ss">select</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7901763056-2">{</span><span·class="ss">select_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handl[·...·truncated·by·diffoscope;·len:·470,·SHA:·b1eeb4f8eda79a4e4864d2ddb99029e2db4fab3d23893c2501cad62624c4342c·...·]-3">)</span><span·class="p">,</span><span·class="w">175 message·has·been·received·it·replaces·the·call·in·progress:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="p"·data-group-id="7308451688-1">{</span><span·class="ss">select</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7308451688-2">{</span><span·class="ss">select_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Handl[·...·truncated·by·diffoscope;·len:·470,·SHA:·526601635125c01eb7a9c339e0d329385ea0c219df0c38a70b0563c35652437e·...·]-3">)</span><span·class="p">,</span><span·class="w">
176 ····</span><span·class="p"·data-group-id="7901763056-4">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="p"·data-group-id="7901763056-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·279,·SHA:·6f12aef5dc85f70b5bf8f4084a182534cbc86cb9a0948a2ea61ef4b69bddadbd·...·]-5">)</span><span·class="p">,</span><span·class="w">176 ····</span><span·class="p"·data-group-id="7308451688-4">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="p"·data-group-id="7308451688-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·279,·SHA:·887c0de7bb0bdae189274e433c9ab19a34f10d07bcde9b69c1eb9a1f58071909·...·]-5">)</span><span·class="p">,</span><span·class="w">
177 ····</span><span·class="p">:</span></code></pre><p>Above,·<code·class="inline">Handle</code>·is·<em>no·longer</em>·valid·once·the·second·<a·href="#accept/2"><code·class="inline">accept/2</code></a>,·call177 ····</span><span·class="p">:</span></code></pre><p>Above,·<code·class="inline">Handle</code>·is·<em>no·longer</em>·valid·once·the·second·<a·href="#accept/2"><code·class="inline">accept/2</code></a>,·call
178 has·been·made·(the·first·call·is·automatically·canceled).178 has·been·made·(the·first·call·is·automatically·canceled).
179 After·the·second·<a·href="#accept/2"><code·class="inline">accept/2</code></a>·call·returns·<code·class="inline">{error,·timeout}</code>,179 After·the·second·<a·href="#accept/2"><code·class="inline">accept/2</code></a>·call·returns·<code·class="inline">{error,·timeout}</code>,
180 the·accept·operation·has·completed.</p><p>Note·that·there·is·a·race·here;·there·is·no·way·to·know·if·the·call180 the·accept·operation·has·completed.</p><p>Note·that·there·is·a·race·here;·there·is·no·way·to·know·if·the·call
181 is·repeated·<em>before</em>·the·<code·class="inline">select</code>·message·is·sent·since·it·<em>may</em>181 is·repeated·<em>before</em>·the·<code·class="inline">select</code>·message·is·sent·since·it·<em>may</em>
182 have·been·sent·just·before·the·repeated·call.··So·now·there182 have·been·sent·just·before·the·repeated·call.··So·now·there
183 might·be·a·<code·class="inline">select</code>·message·containing·<code·class="inline">Handle</code>·in·the·inbox.</p><h4>The·<code·class="inline">abort</code>·Message</h4><p>Another·message·the·user·must·be·prepared·for183 might·be·a·<code·class="inline">select</code>·message·containing·<code·class="inline">Handle</code>·in·the·inbox.</p><h4>The·<code·class="inline">abort</code>·Message</h4><p>Another·message·the·user·must·be·prepared·for
Offset 202, 36 lines modifiedOffset 202, 36 lines modified
202 (<a·href="#t:completion_handle/0">completion·handle</a>)202 (<a·href="#t:completion_handle/0">completion·handle</a>)
203 API·features·could·be·considered·no·longer·experimental.</li></ul><h2·id="module-examples"·class="section-heading">203 API·features·could·be·considered·no·longer·experimental.</li></ul><h2·id="module-examples"·class="section-heading">
204 ··<a·href="#module-examples"·class="hover-link">204 ··<a·href="#module-examples"·class="hover-link">
205 ····<i·class="ri-link-m"·aria-hidden="true"></i>205 ····<i·class="ri-link-m"·aria-hidden="true"></i>
206 ··</a>206 ··</a>
207 ··<span·class="text">Examples</span>207 ··<span·class="text">Examples</span>
208 </h2>208 </h2>
209 <pre><code·class="makeup·erlang"·translate="no"><span·class="nf">client</span><span·class="p"·data-group-id="1129097997-1">(</span><span·class="n">SAddr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SPort</span><span·class="p"·data-group-id="1129097997-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">209 <pre><code·class="makeup·erlang"·translate="no"><span·class="nf">client</span><span·class="p"·data-group-id="0906413694-1">(</span><span·class="n">SAddr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SPort</span><span·class="p"·data-group-id="0906413694-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
210 ···</span><span·class="p"·data-group-id="1129097997-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="1129097997-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·349,·SHA:·79e67f8acde8132b5967866234bcb1776a0a444b5217dd2a04336dcffa34203f·...·]-3">)</span><span·class="p">,</span><span·class="w">210 ···</span><span·class="p"·data-group-id="0906413694-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="0906413694-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·349,·SHA:·2770a211bc2a748ee27d00bfe0ce4b448c1870181dff5a78f592d234f2fb514c·...·]-3">)</span><span·class="p">,</span><span·class="w">
211 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="1129097997-4">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1129097997-5">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">inet</span><span·class="p">,</span><span·class="w">211 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="0906413694-4">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0906413694-5">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">inet</span><span·class="p">,</span><span·class="w">
212 ·······························</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">SAddr</span><span·class="p">,</span><span·class="w">212 ·······························</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">SAddr</span><span·class="p">,</span><span·class="w">
213 ·······························</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">SPort</span><span·class="p"·data-group-id="1129097997-5">}</span><span·class="p"·data-group-id="1129097997-4">)</span><span·class="p">,</span><span·class="w">213 ·······························</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">SPort</span><span·class="p"·data-group-id="0906413694-5">}</span><span·class="p"·data-group-id="0906413694-4">)</span><span·class="p">,</span><span·class="w">
214 ···</span><span·class="n">Msg</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;hello&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">214 ···</span><span·class="n">Msg</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;hello&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
215 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="1129097997-6">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1129097997-6">)</span><span·class="p">,</span><span·class="w">215 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="0906413694-6">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0906413694-6">)</span><span·class="p">,</span><span·class="w">
216 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="1129097997-7">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">write</span><span·class="p"·data-group-id="1129097997-7">)</span><span·class="p">,</span><span·class="w">216 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="0906413694-7">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">write</span><span·class="p"·data-group-id="0906413694-7">)</span><span·class="p">,</span><span·class="w">
217 ···</span><span·class="p"·data-group-id="1129097997-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1129097997-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·194,·SHA:·0f2d54c2930fdc5d599e4068489b915ec8376bd26b61d6f0e11228fc7ddbd2c3·...·]-9">)</span><span·class="p">,</span><span·class="w">217 ···</span><span·class="p"·data-group-id="0906413694-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0906413694-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·194,·SHA:·6f12a0cf91f42982c7f9db98eb691397e0d799329fb3220181fc2849d12da889·...·]-9">)</span><span·class="p">,</span><span·class="w">
218 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="1129097997-10">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="1129097997-10">)</span><span·class="p">.</span><span·class="w">218 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="0906413694-10">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0906413694-10">)</span><span·class="p">.</span><span·class="w">
  
219 </span><span·class="nf">server</span><span·class="p"·data-group-id="1129097997-11">(</span><span·class="n">Addr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="1129097997-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 </span><span·class="nf">server</span><span·class="p"·data-group-id="0906413694-11">(</span><span·class="n">Addr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="0906413694-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 ···</span><span·class="p"·data-group-id="1129097997-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LSock</span><span·class="p"·data-group-id="1129097997-12">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·353,·SHA:·4102828f12e12e956c8d723352fe4f73f95d0fefb3ce54819f6fdf88a782cbb3·...·]-13">)</span><span·class="p">,</span><span·class="w">220 ···</span><span·class="p"·data-group-id="0906413694-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LSock</span><span·class="p"·data-group-id="0906413694-12">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·353,·SHA:·44c5d704e7378af52ca7ad65c88ed4f75338833f6110e4cd4273217e3a3042ca·...·]-13">)</span><span·class="p">,</span><span·class="w">
221 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">bind</span><span·class="p"·data-group-id="1129097997-14">(</span><span·class="n">LSock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1129097997-15">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">inet</span><span·class="p">,</span><span·class="w">221 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">bind</span><span·class="p"·data-group-id="0906413694-14">(</span><span·class="n">LSock</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0906413694-15">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">inet</span><span·class="p">,</span><span·class="w">
222 ·····························</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">222 ·····························</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">
223 ·····························</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p"·data-group-id="1129097997-15">}</span><span·class="p"·data-group-id="1129097997-14">)</span><span·class="p">,</span><span·class="w">223 ·····························</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p"·data-group-id="0906413694-15">}</span><span·class="p"·data-group-id="0906413694-14">)</span><span·class="p">,</span><span·class="w">
224 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">listen</span><span·class="p"·data-group-id="1129097997-16">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="1129097997-16">)</span><span·class="p">,</span><span·class="w">224 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">listen</span><span·class="p"·data-group-id="0906413694-16">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0906413694-16">)</span><span·class="p">,</span><span·class="w">
225 ···</span><span·class="p"·data-group-id="1129097997-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="1129097997-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·201,·SHA:·407d5dcb5aa5a9afb849eaedb516e691461339da87985c4b6c5d473cff2b3e40·...·]-18">)</span><span·class="p">,</span><span·class="w">225 ···</span><span·class="p"·data-group-id="0906413694-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="0906413694-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·201,·SHA:·eb3a80f2fa789ab6b88ebd60e9e01d0f62204abc45e85000e34ef845335f324d·...·]-18">)</span><span·class="p">,</span><span·class="w">
226 ···</span><span·class="p"·data-group-id="1129097997-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1129097997-19">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·197,·SHA:·f9068e6264d8e759b97a2e4f3c32c9bf44087279f4df94b3721a241ee7fe4ccb·...·]-20">)</span><span·class="p">,</span><span·class="w">226 ···</span><span·class="p"·data-group-id="0906413694-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0906413694-19">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·197,·SHA:·4b37a52630e8529edad4aa8ff58cc2b35efc940f03a69c4d2efc6ca5e7584dbd·...·]-20">)</span><span·class="p">,</span><span·class="w">
227 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="1129097997-21">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1129097997-21">)</span><span·class="p">,</span><span·class="w">227 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="0906413694-21">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0906413694-21">)</span><span·class="p">,</span><span·class="w">
228 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="1129097997-22">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="1129097997-22">)</span><span·class="p">,</span><span·class="w">228 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="0906413694-22">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0906413694-22">)</span><span·class="p">,</span><span·class="w">
229 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="1129097997-23">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="1129097997-23">)</span><span·class="p">.</span></code></pre>229 ···</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="0906413694-23">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0906413694-23">)</span><span·class="p">.</span></code></pre>
230 ····</section>230 ····</section>
  
231 </div>231 </div>
  
232 ··<section·id="summary"·class="details-list">232 ··<section·id="summary"·class="details-list">
233 ····<h1·class="section-heading">233 ····<h1·class="section-heading">
234 ······<a·class="hover-link"·href="#summary">234 ······<a·class="hover-link"·href="#summary">
Offset 4790, 15 lines modifiedOffset 4790, 15 lines modified
4790 the·<code·class="inline">GetRequest</code>·argument.</p><ul><li><p><strong><code·class="inline">gifconf</code></strong>·-·Get·a·list·of·interface·(transport·layer)·addresses.</p><p>Result;·a·list·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:map/0"><code·class="inline">map/0</code></a>s,·one·for·each·interface,4790 the·<code·class="inline">GetRequest</code>·argument.</p><ul><li><p><strong><code·class="inline">gifconf</code></strong>·-·Get·a·list·of·interface·(transport·layer)·addresses.</p><p>Result;·a·list·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:map/0"><code·class="inline">map/0</code></a>s,·one·for·each·interface,
4791 with·its·name·and·address.</p></li><li><p><strong><code·class="inline">nread</code></strong>·-·Get·the·number·of·bytes·immediately·available·for·reading4791 with·its·name·and·address.</p></li><li><p><strong><code·class="inline">nread</code></strong>·-·Get·the·number·of·bytes·immediately·available·for·reading
4792 <em>(since·OTP·26.1)</em>.</p><p>Result;·the·number·of·bytes,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>.</p></li><li><p><strong><code·class="inline">nwrite</code></strong>·-·Get·the·number·of·bytes·in·the·send·queue4792 <em>(since·OTP·26.1)</em>.</p><p>Result;·the·number·of·bytes,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>.</p></li><li><p><strong><code·class="inline">nwrite</code></strong>·-·Get·the·number·of·bytes·in·the·send·queue
4793 <em>(since·OTP·26.1)</em>.</p><p>Result;·the·number·of·bytes,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>.</p></li><li><p><strong><code·class="inline">nspace</code></strong>·-·Get·the·free·space·in·the·send·queue4793 <em>(since·OTP·26.1)</em>.</p><p>Result;·the·number·of·bytes,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>.</p></li><li><p><strong><code·class="inline">nspace</code></strong>·-·Get·the·free·space·in·the·send·queue
4794 <em>(since·OTP·26.1)</em>.</p><p>Result;·the·number·of·bytes,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>.</p></li><li><p><strong><code·class="inline">atmark</code></strong>·-·Test·if·there·is·OOB·(out-of-bound)·data·waiting·to·be·read4794 <em>(since·OTP·26.1)</em>.</p><p>Result;·the·number·of·bytes,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>.</p></li><li><p><strong><code·class="inline">atmark</code></strong>·-·Test·if·there·is·OOB·(out-of-bound)·data·waiting·to·be·read
4795 <em>(since·OTP·26.1)</em>.</p><p>Result;·a·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0"><code·class="inline">boolean/0</code></a>.</p></li><li><p><strong><code·class="inline">tcp_info</code></strong>·-·Get·miscellaneous·TCP·related·information·for·a4795 <em>(since·OTP·26.1)</em>.</p><p>Result;·a·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0"><code·class="inline">boolean/0</code></a>.</p></li><li><p><strong><code·class="inline">tcp_info</code></strong>·-·Get·miscellaneous·TCP·related·information·for·a
4796 <em>connected</em>·socket·<em>(since·OTP·26.1)</em>.</p><p>Result;·a·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:map/0"><code·class="inline">map/0</code></a>·with·information·items·as·key-value·pairs.</p></li></ul><blockquote><h4·class="info">Note</h4><p>To·see·if·a·ioctl·request·is·supported·on·the·current·platform:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="n">Request</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">nread</span><span·class="p">,</span><span·class="w">4796 <em>connected</em>·socket·<em>(since·OTP·26.1)</em>.</p><p>Result;·a·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:map/0"><code·class="inline">map/0</code></a>·with·information·items·as·key-value·pairs.</p></li></ul><blockquote><h4·class="info">Note</h4><p>To·see·if·a·ioctl·request·is·supported·on·the·current·platform:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="n">Request</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">nread</span><span·class="p">,</span><span·class="w">
4797 ······</span><span·class="p"·data-group-id="4558652293-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="4558652293-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·293,·SHA:·58b8c9a45cc70f9a72ce3f85ca8ca020bfabd62927c114c919f6b2a7491f9599·...·]-2">)</span><span·class="p">,</span><span·class="w">4797 ······</span><span·class="p"·data-group-id="6329464934-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="6329464934-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·293,·SHA:·fd37c87d785925e7e40ac1918bc10cad8441763f0ea5b3ecb3d4b80df75bdbf6·...·]-2">)</span><span·class="p">,</span><span·class="w">
4798 ······</span><span·class="p">:</span></code></pre></blockquote>4798 ······</span><span·class="p">:</span></code></pre></blockquote>
4799 ··</section>4799 ··</section>
4800 </section>4800 </section>
4801 <section·class="detail"·id="ioctl/3">4801 <section·class="detail"·id="ioctl/3">
  
4802 ··<div·class="detail-header">4802 ··<div·class="detail-header">
4803 ····<a·href="#ioctl/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">4803 ····<a·href="#ioctl/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 4952, 15 lines modifiedOffset 4952, 15 lines modified
  
4952 ··········<pre·translate="no"><span·class="attribute">-spec</span>·is_supported(Key1·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>().</pre>4952 ··········<pre·translate="no"><span·class="attribute">-spec</span>·is_supported(Key1·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>().</pre>
  
4953 ······</div>4953 ······</div>
  
4954 <p>Check·if·a·socket·feature·is·supported.</p><p>Returns·<code·class="inline">true</code>·if·<a·href="#supports/0"><code·class="inline">supports/0</code></a>·has·a·<code·class="inline">{Key1,·true}</code>·tuple4954 <p>Check·if·a·socket·feature·is·supported.</p><p>Returns·<code·class="inline">true</code>·if·<a·href="#supports/0"><code·class="inline">supports/0</code></a>·has·a·<code·class="inline">{Key1,·true}</code>·tuple
4955 or·a·<code·class="inline">{Key1,·list()}</code>·tuple·in·its·returned·list,4955 or·a·<code·class="inline">{Key1,·list()}</code>·tuple·in·its·returned·list,
4956 otherwise·<code·class="inline">false</code>·(also·for·unknown·keys).</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">true</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">is_supported</span><span·class="p"·data-group-id="6699480413-1">(</span><span·class="ss">local</span><span·class="p"·data-group-id="6699480413-1">)</span><span·class="p">,</span></code></pre>4956 otherwise·<code·class="inline">false</code>·(also·for·unknown·keys).</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">true</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">is_supported</span><span·class="p"·data-group-id="8264723656-1">(</span><span·class="ss">local</span><span·class="p"·data-group-id="8264723656-1">)</span><span·class="p">,</span></code></pre>
4957 ··</section>4957 ··</section>
4958 </section>4958 </section>
4959 <section·class="detail"·id="is_supported/2">4959 <section·class="detail"·id="is_supported/2">
  
4960 ··<div·class="detail-header">4960 ··<div·class="detail-header">
4961 ····<a·href="#is_supported/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">4961 ····<a·href="#is_supported/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
4962 ······<i·class="ri-link-m"·aria-hidden="true"></i>4962 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 4983, 15 lines modifiedOffset 4983, 15 lines modified
4983 ······<div·class="specs">4983 ······<div·class="specs">
  
4984 ··········<pre·translate="no"><span·class="attribute">-spec</span>·is_supported(Key1·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),·Key2·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>().</pre>4984 ··········<pre·translate="no"><span·class="attribute">-spec</span>·is_supported(Key1·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),·Key2·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>().</pre>
  
4985 ······</div>4985 ······</div>
  
4986 <p>Check·if·a·socket·feature·is·supported.</p><p>Returns·<code·class="inline">true</code>·if·<a·href="#supports/1"><code·class="inline">supports(Key1)</code></a>·has·a·<code·class="inline">{Key2,·true}</code>·tuple4986 <p>Check·if·a·socket·feature·is·supported.</p><p>Returns·<code·class="inline">true</code>·if·<a·href="#supports/1"><code·class="inline">supports(Key1)</code></a>·has·a·<code·class="inline">{Key2,·true}</code>·tuple
4987 in·its·returned·list,·otherwise·<code·class="inline">false</code>·(also·for·unknown·keys).</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">true</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">is_supported</span><span·class="p"·data-group-id="9553960944-1">(</span><span·class="ss">msg_flags</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">errqueue</span><span·class="p"·data-group-id="9553960944-1">)</span><span·class="p">,</span></code></pre>4987 in·its·returned·list,·otherwise·<code·class="inline">false</code>·(also·for·unknown·keys).</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">true</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">is_supported</span><span·class="p"·data-group-id="6266587994-1">(</span><span·class="ss">msg_flags</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">errqueue</span><span·class="p"·data-group-id="6266587994-1">)</span><span·class="p">,</span></code></pre>
4988 ··</section>4988 ··</section>
4989 </section>4989 </section>
4990 <section·class="detail"·id="listen/1">4990 <section·class="detail"·id="listen/1">
  
4991 ··<div·class="detail-header">4991 ··<div·class="detail-header">
4992 ····<a·href="#listen/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">4992 ····<a·href="#listen/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
4993 ······<i·class="ri-link-m"·aria-hidden="true"></i>4993 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 5081, 15 lines modifiedOffset 5081, 15 lines modified
  
5081 ··········<pre·translate="no"><span·class="attribute">-spec</span>·monitor(Socket·::·<a·href="#t:socket/0">socket</a>())·->·MonitorRef·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0">reference</a>().</pre>5081 ··········<pre·translate="no"><span·class="attribute">-spec</span>·monitor(Socket·::·<a·href="#t:socket/0">socket</a>())·->·MonitorRef·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:reference/0">reference</a>().</pre>
  
5082 ······</div>5082 ······</div>
  
5083 <p>Start·a·socket·monitor.</p><p>If·the·<code·class="inline">Socket</code>·doesn't·exist·or·when·later·the·monitor·is·triggered,5083 <p>Start·a·socket·monitor.</p><p>If·the·<code·class="inline">Socket</code>·doesn't·exist·or·when·later·the·monitor·is·triggered,
5084 a·<code·class="inline">'DOWN'</code>·message·is·sent·to·the·process·that·called·<a·href="#monitor/1"><code·class="inline">monitor/1</code></a>5084 a·<code·class="inline">'DOWN'</code>·message·is·sent·to·the·process·that·called·<a·href="#monitor/1"><code·class="inline">monitor/1</code></a>
5085 with·the·following·pattern:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»       ····</span><span·class="p"·data-group-id="5510736168-1">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MonitorRef</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">socket</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·156,·SHA:·3a26feec572bc00bc3bedc09363159cb54313f79c330d6eec7440dc84d6195e4·...·]-1">}</span></code></pre><p><code·class="inline">Info</code>·is·the·termination·reason·of·the·socket·or·<code·class="inline">nosock</code>·if5085 with·the·following·pattern:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»       ····</span><span·class="p"·data-group-id="6600376887-1">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MonitorRef</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">socket</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·156,·SHA:·b15ce06b84b87c344fd0538b20d920c594f8af014943c861bef61392aa90dc6d·...·]-1">}</span></code></pre><p><code·class="inline">Info</code>·is·the·termination·reason·of·the·socket·or·<code·class="inline">nosock</code>·if
5086 <code·class="inline">Socket</code>·did·not·exist·when·the·monitor·was·started.</p><p>Making·several·calls·to·<a·href="#monitor/1"><code·class="inline">socket:monitor/1</code></a>·for·the·same·<code·class="inline">Socket</code>·is·not·an5086 <code·class="inline">Socket</code>·did·not·exist·when·the·monitor·was·started.</p><p>Making·several·calls·to·<a·href="#monitor/1"><code·class="inline">socket:monitor/1</code></a>·for·the·same·<code·class="inline">Socket</code>·is·not·an
5087 error;·each·call·creates·an·independent·monitor·instance.</p>5087 error;·each·call·creates·an·independent·monitor·instance.</p>
5088 ··</section>5088 ··</section>
5089 </section>5089 </section>
5090 <section·class="detail"·id="number_of/0">5090 <section·class="detail"·id="number_of/0">
  
5091 ··<div·class="detail-header">5091 ··<div·class="detail-header">
Offset 7219, 15 lines modifiedOffset 7219, 15 lines modified
7219 ······<p·class="built-using">7219 ······<p·class="built-using">
7220 ········Built·using7220 ········Built·using
7221 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the7221 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
7222 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>7222 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
7223 ······</p>7223 ······</p>
7224 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>7224 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
7225 ····</footer>7225 ····</footer>
Max diff block lines reached; 157/33862 bytes (0.46%) of diff not shown.
832 B
html2text {}
Max HTML report size reached
142 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/socket_usage.html
    
Offset 182, 244 lines modifiedOffset 182, 244 lines modified
182 effects·<em>that</em>·specific·socket).</p><h2·id="example"·class="section-heading">182 effects·<em>that</em>·specific·socket).</p><h2·id="example"·class="section-heading">
183 ··<a·href="#example"·class="hover-link">183 ··<a·href="#example"·class="hover-link">
184 ····<i·class="ri-link-m"·aria-hidden="true"></i>184 ····<i·class="ri-link-m"·aria-hidden="true"></i>
185 ··</a>185 ··</a>
186 ··<span·class="text">Example</span>186 ··<span·class="text">Example</span>
187 </h2>187 </h2>
188 <p>This·example·is·intended·to·show·how·to·create·a·simple·(echo)·server188 <p>This·example·is·intended·to·show·how·to·create·a·simple·(echo)·server
189 (and·client).</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0712741476-1">(</span><span·class="ss">example</span><span·class="p"·data-group-id="0712741476-1">)</span><span·class="p">.</span><span·class="w">189 (and·client).</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4968972092-1">(</span><span·class="ss">example</span><span·class="p"·data-group-id="4968972092-1">)</span><span·class="p">.</span><span·class="w">
190 </span><span·class="w">190 </span><span·class="w">
191 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0712741476-2">(</span><span·class="p"·data-group-id="0712741476-3">[</span><span·class="ss">client</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">client</span><span·class="p">/</span>[·...·truncated·by·diffoscope;·len:·119,·SHA:·4e0d84f0590f73f9423d28627fb92dee0298b3036269fb4aaaa18437e087d07b·...·]-2">)</span><span·class="p">.</span><span·class="w">191 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4968972092-2">(</span><span·class="p"·data-group-id="4968972092-3">[</span><span·class="ss">client</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">client</span><span·class="p">/</span>[·...·truncated·by·diffoscope;·len:·119,·SHA:·78ff5b6def993c47e1e9e729e3f542be7e672d5336925a66fcbc7ad84e438e9e·...·]-2">)</span><span·class="p">.</span><span·class="w">
192 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0712741476-4">(</span><span·class="p"·data-group-id="0712741476-5">[</span><span·class="ss">server</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">server</span><span·class="p">/</span>[·...·truncated·by·diffoscope;·len:·246,·SHA:·a82b0357cc0a59ede3e6db7b1bb3e4120ebb2ca21be2f05770f5d41317faa423·...·]-4">)</span><span·class="p">.</span><span·class="w">192 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4968972092-4">(</span><span·class="p"·data-group-id="4968972092-5">[</span><span·class="ss">server</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">server</span><span·class="p">/</span>[·...·truncated·by·diffoscope;·len:·246,·SHA:·7e1b63c59b4cd3392a374353f7b5b5520e22f8941eda0a575b49a06f75162475·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
  
193 </span><span·class="c1">%%·======================================================================</span><span·class="w">193 </span><span·class="c1">%%·======================================================================</span><span·class="w">
  
194 </span><span·class="c1">%%·===·Client·===</span><span·class="w">194 </span><span·class="c1">%%·===·Client·===</span><span·class="w">
  
195 </span><span·class="nf">client</span><span·class="p"·data-group-id="0712741476-6">(</span><span·class="p"·data-group-id="0712741476-7">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Family</span><span·class="p"·data-group-id="0712741476-7">}</[·...·truncated·by·diffoscope;·len:·229,·SHA:·0f288af45bb53ecf6f61daa6db32cb4ad4b6085859a34dd2f72d7b6cded29fab·...·]-6">)</span><span·class="w">195 </span><span·class="nf">client</span><span·class="p"·data-group-id="4968972092-6">(</span><span·class="p"·data-group-id="4968972092-7">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Family</span><span·class="p"·data-group-id="4968972092-7">}</[·...·truncated·by·diffoscope;·len:·229,·SHA:·b39a19cbbf10861ceba91847600eafe9d38c5dae564079b3d92f282638cac8f1·...·]-6">)</span><span·class="w">
196 ··</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="0712741476-8">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="0712741476-8">)</span><span·class="w">·</span><span·class="ow">orelse</span><span·class="w">·</span><span·class="nf">is_binary</span><span·class="p"·data-group-id="0712741476-9"[·...·truncated·by·diffoscope;·len:·76,·SHA:·b4222eaf49104461b731ef3f404b087a3867ad1316c91976463ee96a888e0733·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">196 ··</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="4968972092-8">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="4968972092-8">)</span><span·class="w">·</span><span·class="ow">orelse</span><span·class="w">·</span><span·class="nf">is_binary</span><span·class="p"·data-group-id="4968972092-9"[·...·truncated·by·diffoscope;·len:·76,·SHA:·4dc87999def26065efc2e9d13bfed0f101bf8d99120eeb835bd8ad71e9accf4b·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
197 ····</span><span·class="p"·data-group-id="0712741476-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="0712741476-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·357,·SHA:·55ee70b641497a0e4c39131178c1fd94219b55dc610c06941eac40fe7e80ffa2·...·]-11">)</span><span·class="p">,</span><span·class="w">197 ····</span><span·class="p"·data-group-id="4968972092-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="4968972092-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·357,·SHA:·f9ee8da5125f604b13aa00c50d5ee07149dfa8a9f4a25fc6bed1ce54b99ff99f·...·]-11">)</span><span·class="p">,</span><span·class="w">
198 ····</span><span·class="ss">ok</span><span·class="w">·········</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">maybe_bind</span><span·class="p"·data-group-id="0712741476-12">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Family</span><span·class="p"·data-group-id="0712741476-12">)</span><span·class="p">,</span><span·class="w">198 ····</span><span·class="ss">ok</span><span·class="w">·········</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">maybe_bind</span><span·class="p"·data-group-id="4968972092-12">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Family</span><span·class="p"·data-group-id="4968972092-12">)</span><span·class="p">,</span><span·class="w">
199 ····</span><span·class="ss">ok</span><span·class="w">·········</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="0712741476-13">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ServerSockAddr</span><span·class="p"·data-group-id="0712741476-13">)</span><span·class="p">,</span><span·class="w">199 ····</span><span·class="ss">ok</span><span·class="w">·········</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="4968972092-13">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ServerSockAddr</span><span·class="p"·data-group-id="4968972092-13">)</span><span·class="p">,</span><span·class="w">
200 ····</span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="0712741476-14">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0712741476-14">)</span><span·class="p">;</span><span·class="w">200 ····</span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="4968972092-14">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4968972092-14">)</span><span·class="p">;</span><span·class="w">
  
201 </span><span·class="nf">client</span><span·class="p"·data-group-id="0712741476-15">(</span><span·class="n">ServerPort</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0712741476-15">)</span><span·class="w">201 </span><span·class="nf">client</span><span·class="p"·data-group-id="4968972092-15">(</span><span·class="n">ServerPort</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4968972092-15">)</span><span·class="w">
202 ··</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="0712741476-16">(</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="0712741476-16">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-17">(</span><span·class="[·...·truncated·by·diffoscope;·len:·161,·SHA:·b59ef706001da115e1345620c8c1d1c1beb6991fa59a919db794ac4360ef7f7a·...·]-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">202 ··</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="4968972092-16">(</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="4968972092-16">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-17">(</span><span·class="[·...·truncated·by·diffoscope;·len:·161,·SHA:·7642c8f1559af4baff6f18cc3c2410151075b53d363b6fad6d58e818956b096f·...·]-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
203 ····</span><span·class="n">Family</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">inet</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Default</span><span·class="w">203 ····</span><span·class="n">Family</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">inet</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Default</span><span·class="w">
204 ····</span><span·class="n">Addr</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">get_local_addr</span><span·class="p"·data-group-id="0712741476-18">(</span><span·class="n">Family</span><span·class="p"·data-group-id="0712741476-18">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Pick·an·address</span><span·class="w">204 ····</span><span·class="n">Addr</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">get_local_addr</span><span·class="p"·data-group-id="4968972092-18">(</span><span·class="n">Family</span><span·class="p"·data-group-id="4968972092-18">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Pick·an·address</span><span·class="w">
205 ····</span><span·class="n">SockAddr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-19">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">205 ····</span><span·class="n">SockAddr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-19">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">
206 »       »       ·</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p">,</span><span·class="w">206 »       »       ·</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p">,</span><span·class="w">
207 »       »       ·</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="0712741476-19">}</span><span·class="p">,</span><span·class="w">207 »       »       ·</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="4968972092-19">}</span><span·class="p">,</span><span·class="w">
208 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="0712741476-20">(</span><span·class="n">SockAddr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0712741476-20">)</span><span·class="p">.</span><span·class="w">208 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="4968972092-20">(</span><span·class="n">SockAddr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4968972092-20">)</span><span·class="p">.</span><span·class="w">
  
209 </span><span·class="nf">client</span><span·class="p"·data-group-id="0712741476-21">(</span><span·class="n">ServerPort</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ServerAddr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0712741476-21">)</span><span·class="w">209 </span><span·class="nf">client</span><span·class="p"·data-group-id="4968972092-21">(</span><span·class="n">ServerPort</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ServerAddr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4968972092-21">)</span><span·class="w">
210 ··</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="0712741476-22">(</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="0712741476-22">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-23">(</span><span·class="[·...·truncated·by·diffoscope;·len:·161,·SHA:·b59ef706001da115e1345620c8c1d1c1beb6991fa59a919db794ac4360ef7f7a·...·]-23">)</span><span·class="w">·</span><span·class="ow">andalso</span><span·class="w">210 ··</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="4968972092-22">(</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="4968972092-22">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-23">(</span><span·class="[·...·truncated·by·diffoscope;·len:·161,·SHA:·7642c8f1559af4baff6f18cc3c2410151075b53d363b6fad6d58e818956b096f·...·]-23">)</span><span·class="w">·</span><span·class="ow">andalso</span><span·class="w">
211 ·······</span><span·class="nf">is_tuple</span><span·class="p"·data-group-id="0712741476-24">(</span><span·class="n">ServerAddr</span><span·class="p"·data-group-id="0712741476-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">211 ·······</span><span·class="nf">is_tuple</span><span·class="p"·data-group-id="4968972092-24">(</span><span·class="n">ServerAddr</span><span·class="p"·data-group-id="4968972092-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
212 ····</span><span·class="n">Family</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">which_family</span><span·class="p"·data-group-id="0712741476-25">(</span><span·class="n">ServerAddr</span><span·class="p"·data-group-id="0712741476-25">)</span><span·class="p">,</span><span·class="w">212 ····</span><span·class="n">Family</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">which_family</span><span·class="p"·data-group-id="4968972092-25">(</span><span·class="n">ServerAddr</span><span·class="p"·data-group-id="4968972092-25">)</span><span·class="p">,</span><span·class="w">
213 ····</span><span·class="n">SockAddr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-26">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">213 ····</span><span·class="n">SockAddr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-26">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">
214 »       »       ·</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">ServerAddr</span><span·class="p">,</span><span·class="w">214 »       »       ·</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">ServerAddr</span><span·class="p">,</span><span·class="w">
215 »       »       ·</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="0712741476-26">}</span><span·class="p">,</span><span·class="w">215 »       »       ·</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">ServerPort</span><span·class="p"·data-group-id="4968972092-26">}</span><span·class="p">,</span><span·class="w">
216 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="0712741476-27">(</span><span·class="n">SockAddr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0712741476-27">)</span><span·class="p">.</span><span·class="w">216 ····</span><span·class="nf">client</span><span·class="p"·data-group-id="4968972092-27">(</span><span·class="n">SockAddr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4968972092-27">)</span><span·class="p">.</span><span·class="w">
  
217 </span><span·class="c1">%%·Send·the·message·to·the·(echo)·server·and·wait·for·the·echo·to·come·back.</span><span·class="w">217 </span><span·class="c1">%%·Send·the·message·to·the·(echo)·server·and·wait·for·the·echo·to·come·back.</span><span·class="w">
218 </span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="0712741476-28">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0712741476-28">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·149,·SHA:·887abb66668ca2f03ca54493384c140cf09b275d4f715247a77a51feca8c7af5·...·]-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">218 </span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="4968972092-28">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4968972092-28">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·149,·SHA:·70ece8fea6e8445245b0f6af7e404cef17c5dc22db4add3563fb37ce31966108·...·]-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
219 ····</span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="0712741476-30">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="0712741476-31">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="071274147[·...·truncated·by·diffoscope;·len:·55,·SHA:·d0779b584646bef5881de6915c2d64acf6acf4fc0499714a83fb50f6edc2cd89·...·]-30">)</span><span·class="p">;</span><span·class="w">219 ····</span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="4968972092-30">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="4968972092-31">(</span><span·class="n">Msg</span><span·class="p"·data-group-id="496897209[·...·truncated·by·diffoscope;·len:·55,·SHA:·36c2ee64d71a83383b194633bfcd96dd5ab6e997f61da79f643ce56a442b2439·...·]-30">)</span><span·class="p">;</span><span·class="w">
220 </span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="0712741476-32">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0712741476-32">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·151,·SHA:·0a995b8cb76bd05ca8f7a9735b1221f6a418a339ced66704472edf3ddc9855c0·...·]-33">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">220 </span><span·class="nf">client_exchange</span><span·class="p"·data-group-id="4968972092-32">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4968972092-32">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·151,·SHA:·c8f6526cc927d60c136be755d698642ddc2706ab38a14e67a935d9a5b3a5407c·...·]-33">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
221 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="0712741476-34">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="p"·data-group-id="0712741476-34">)</span><span·class="p">,</span><span·class="w">221 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="4968972092-34">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="p"·data-group-id="4968972092-34">)</span><span·class="p">,</span><span·class="w">
222 ····</span><span·class="p"·data-group-id="0712741476-35">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="0712741476-35">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·492,·SHA:·02496ecb131c78b08e2e0d7477dc0242c2ad166e2ef82c93c79a8d58f76a55e4·...·]-36">)</span><span·class="p">,</span><span·class="w">222 ····</span><span·class="p"·data-group-id="4968972092-35">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="4968972092-35">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·492,·SHA:·a3f74bffd425e5a12d0cf1c2824cda088791670b6b3813d6b0d485c9c09aae65·...·]-36">)</span><span·class="p">,</span><span·class="w">
223 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">223 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
  
224 </span><span·class="c1">%%·======================================================================</span><span·class="w">224 </span><span·class="c1">%%·======================================================================</span><span·class="w">
  
225 </span><span·class="c1">%%·===·Server·===</span><span·class="w">225 </span><span·class="c1">%%·===·Server·===</span><span·class="w">
  
226 </span><span·class="nf">server</span><span·class="p"·data-group-id="0712741476-38">(</span><span·class="p"·data-group-id="0712741476-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">226 </span><span·class="nf">server</span><span·class="p"·data-group-id="4968972092-38">(</span><span·class="p"·data-group-id="4968972092-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
227 ····</span><span·class="c1">%%·Make·system·choose·port·(and·address)</span><span·class="w">227 ····</span><span·class="c1">%%·Make·system·choose·port·(and·address)</span><span·class="w">
228 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="0712741476-39">(</span><span·class="mi">0</span><span·class="p"·data-group-id="0712741476-39">)</span><span·class="p">.</span><span·class="w">228 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="4968972092-39">(</span><span·class="mi">0</span><span·class="p"·data-group-id="4968972092-39">)</span><span·class="p">.</span><span·class="w">
  
229 </span><span·class="c1">%%·This·function·return·the·port·and·address·that·it·actually·uses,</span><span·class="w">229 </span><span·class="c1">%%·This·function·return·the·port·and·address·that·it·actually·uses,</span><span·class="w">
230 </span><span·class="c1">%%·in·case·server/0·or·server/1·(with·a·port·number)·was·used·to·start·it.</span><span·class="w">230 </span><span·class="c1">%%·in·case·server/0·or·server/1·(with·a·port·number)·was·used·to·start·it.</span><span·class="w">
  
231 </span><span·class="nf">server</span><span·class="p"·data-group-id="0712741476-40">(</span><span·class="p"·data-group-id="0712741476-41">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·501,·SHA:·d492e13f5d4b26dcab9d462e990506909c7014cb530ced6e3813c1a2cc42cea4·...·]-40">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 </span><span·class="nf">server</span><span·class="p"·data-group-id="4968972092-40">(</span><span·class="p"·data-group-id="4968972092-41">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·501,·SHA:·e0bf07c6a6c7f9d2765ef119e04296e300f06edec476226bd6fb20ad2bb98e82·...·]-40">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 ····</span><span·class="p"·data-group-id="0712741476-42">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="0712741476-42">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·353,·SHA:·1085e68a5b667196cf53e8e571b0375832498342b4eec843a0f090054474c5b1·...·]-43">)</span><span·class="p">,</span><span·class="w">232 ····</span><span·class="p"·data-group-id="4968972092-42">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sock</span><span·class="p"·data-group-id="4968972092-42">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·353,·SHA:·1b8d31ac81359d9536e05aadb45f839a9a13f19b3b74df13e60c4e296c58a873·...·]-43">)</span><span·class="p">,</span><span·class="w">
233 ····</span><span·class="ss">ok</span><span·class="w">·········</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">bind</span><span·class="p"·data-group-id="0712741476-44">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="0712741476-44">)</span><span·class="p">,</span><span·class="w">233 ····</span><span·class="ss">ok</span><span·class="w">·········</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">bind</span><span·class="p"·data-group-id="4968972092-44">(</span><span·class="n">Sock</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="4968972092-44">)</span><span·class="p">,</span><span·class="w">
234 ····</span><span·class="ss">ok</span><span·class="w">·········</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">listen</span><span·class="p"·data-group-id="0712741476-45">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0712741476-45">)</span><span·class="p">,</span><span·class="w">234 ····</span><span·class="ss">ok</span><span·class="w">·········</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">listen</span><span·class="p"·data-group-id="4968972092-45">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="4968972092-45">)</span><span·class="p">,</span><span·class="w">
235 ····</span><span·class="p"·data-group-id="0712741476-46">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-47">#{</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·412,·SHA:·20a860274106b5998dfff1aabaf510c07469c80ba250152d7fc437cbb17735cc·...·]-48">)</span><span·class="p">,</span><span·class="w">235 ····</span><span·class="p"·data-group-id="4968972092-46">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-47">#{</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·412,·SHA:·d9123df375815dbfe716c227921041975919f9ee38657bbf1888ebeb0284c72d·...·]-48">)</span><span·class="p">,</span><span·class="w">
236 ····</span><span·class="n">Acceptor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_acceptor</span><span·class="p"·data-group-id="0712741476-49">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0712741476-49">)</span><span·class="p">,</span><span·class="w">236 ····</span><span·class="n">Acceptor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_acceptor</span><span·class="p"·data-group-id="4968972092-49">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="4968972092-49">)</span><span·class="p">,</span><span·class="w">
237 ····</span><span·class="p"·data-group-id="0712741476-50">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-51">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Addr</span><sp[·...·truncated·by·diffoscope;·len:·171,·SHA:·8b47d246a855b91da48086dac96ab3c0b7b3b04dfb8236e988189710aa0d29d8·...·]-50">}</span><span·class="p">;</span><span·class="w">237 ····</span><span·class="p"·data-group-id="4968972092-50">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-51">{</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Addr</span><sp[·...·truncated·by·diffoscope;·len:·171,·SHA:·faef6453884aa0f5c8497453758105734cfa35e05c11253b91fbfca4f04a5757·...·]-50">}</span><span·class="p">;</span><span·class="w">
  
238 </span><span·class="nf">server</span><span·class="p"·data-group-id="0712741476-52">(</span><span·class="n">Port</span><span·class="p"·data-group-id="0712741476-52">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="0712741476-5[·...·truncated·by·diffoscope;·len:·79,·SHA:·d3463dc84f418ce85d1aeb52185204b0935c41506e3a7729a5e16333aef2d74e·...·]-53">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">238 </span><span·class="nf">server</span><span·class="p"·data-group-id="4968972092-52">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4968972092-52">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="4968972092-5[·...·truncated·by·diffoscope;·len:·79,·SHA:·92128dd7674270e5cc048190d873d0e6ed12bd02e8ae01d355c2d9818442fffc·...·]-53">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
239 ····</span><span·class="n">Family</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">inet</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Default</span><span·class="w">239 ····</span><span·class="n">Family</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">inet</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Default</span><span·class="w">
240 ····</span><span·class="n">Addr</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">get_local_addr</span><span·class="p"·data-group-id="0712741476-54">(</span><span·class="n">Family</span><span·class="p"·data-group-id="0712741476-54">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Pick·an·address</span><span·class="w">240 ····</span><span·class="n">Addr</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">get_local_addr</span><span·class="p"·data-group-id="4968972092-54">(</span><span·class="n">Family</span><span·class="p"·data-group-id="4968972092-54">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·Pick·an·address</span><span·class="w">
241 ····</span><span·class="n">SockAddr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-55">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">241 ····</span><span·class="n">SockAddr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-55">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">
242 »       »       ·</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p">,</span><span·class="w">242 »       »       ·</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p">,</span><span·class="w">
243 »       »       ·</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="0712741476-55">}</span><span·class="p">,</span><span·class="w">243 »       »       ·</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="4968972092-55">}</span><span·class="p">,</span><span·class="w">
244 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="0712741476-56">(</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="0712741476-56">)</span><span·class="p">.</span><span·class="w">244 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="4968972092-56">(</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="4968972092-56">)</span><span·class="p">.</span><span·class="w">
  
245 </span><span·class="nf">server</span><span·class="p"·data-group-id="0712741476-57">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p"·data-group-id="0712741476-57">)</span><span·class="w">245 </span><span·class="nf">server</span><span·class="p"·data-group-id="4968972092-57">(</span><span·class="n">Port</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p"·data-group-id="4968972092-57">)</span><span·class="w">
246 ··</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="0712741476-58">(</span><span·class="n">Port</span><span·class="p"·data-group-id="0712741476-58">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-59">(</span><span·class="n">Por[·...·truncated·by·diffoscope;·len:·150,·SHA:·84f57342fad9222d1c4487dded18d1756d6085995137d3ee6f3b4ef7ec648168·...·]-59">)</span><span·class="w">·</span><span·class="ow">andalso</span><span·class="w">246 ··</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="4968972092-58">(</span><span·class="n">Port</span><span·class="p"·data-group-id="4968972092-58">)</span><span·class="w">·</span><span·class="nf">andalso</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-59">(</span><span·class="n">Por[·...·truncated·by·diffoscope;·len:·150,·SHA:·575e881f715b64669bc34cf5bae0e0fc56eb111ac1d7f5899f9f67b2f9263011·...·]-59">)</span><span·class="w">·</span><span·class="ow">andalso</span><span·class="w">
247 ·······</span><span·class="nf">is_tuple</span><span·class="p"·data-group-id="0712741476-60">(</span><span·class="n">Addr</span><span·class="p"·data-group-id="0712741476-60">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">247 ·······</span><span·class="nf">is_tuple</span><span·class="p"·data-group-id="4968972092-60">(</span><span·class="n">Addr</span><span·class="p"·data-group-id="4968972092-60">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
248 ····</span><span·class="n">Family</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">which_family</span><span·class="p"·data-group-id="0712741476-61">(</span><span·class="n">Addr</span><span·class="p"·data-group-id="0712741476-61">)</span><span·class="p">,</span><span·class="w">248 ····</span><span·class="n">Family</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">which_family</span><span·class="p"·data-group-id="4968972092-61">(</span><span·class="n">Addr</span><span·class="p"·data-group-id="4968972092-61">)</span><span·class="p">,</span><span·class="w">
249 ····</span><span·class="n">SockAddr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-62">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">249 ····</span><span·class="n">SockAddr</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-62">#{</span><span·class="ss">family</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Family</span><span·class="p">,</span><span·class="w">
250 »       »       ·</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p">,</span><span·class="w">250 »       »       ·</span><span·class="ss">addr</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Addr</span><span·class="p">,</span><span·class="w">
251 »       »       ·</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="0712741476-62">}</span><span·class="p">,</span><span·class="w">251 »       »       ·</span><span·class="ss">port</span><span·class="w">···</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Port</span><span·class="p"·data-group-id="4968972092-62">}</span><span·class="p">,</span><span·class="w">
252 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="0712741476-63">(</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="0712741476-63">)</span><span·class="p">.</span><span·class="w">252 ····</span><span·class="nf">server</span><span·class="p"·data-group-id="4968972092-63">(</span><span·class="n">SockAddr</span><span·class="p"·data-group-id="4968972092-63">)</span><span·class="p">.</span><span·class="w">
  
  
253 </span><span·class="c1">%%·---·Echo·Server·-·Acceptor·---</span><span·class="w">253 </span><span·class="c1">%%·---·Echo·Server·-·Acceptor·---</span><span·class="w">
  
254 </span><span·class="nf">start_acceptor</span><span·class="p"·data-group-id="0712741476-64">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0712741476-64">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">254 </span><span·class="nf">start_acceptor</span><span·class="p"·data-group-id="4968972092-64">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="4968972092-64">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
255 ····</span><span·class="n">Self</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="0712741476-65">(</span><span·class="p"·data-group-id="0712741476-65">)</span><span·class="p">,</span><span·class="w">255 ····</span><span·class="n">Self</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="4968972092-65">(</span><span·class="p"·data-group-id="4968972092-65">)</span><span·class="p">,</span><span·class="w">
256 ····</span><span·class="p"·data-group-id="0712741476-66">{</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p"·data-group-id="0712741476-66">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·635,·SHA:·f2be2308a7a0d2a7192e34afc99991f719ba759cb92f1adafbd65ae780785e87·...·]-67">)</span><span·class="p">,</span><span·class="w">256 ····</span><span·class="p"·data-group-id="4968972092-66">{</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p"·data-group-id="4968972092-66">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·635,·SHA:·0fe10efc323c639a7c7e5ba042b2c0c00e1b411fc2c82b3028815ded6c2c9f2d·...·]-67">)</span><span·class="p">,</span><span·class="w">
257 ····</span><span·class="k">receive</span><span·class="w">257 ····</span><span·class="k">receive</span><span·class="w">
258 »       </span><span·class="p"·data-group-id="0712741476-70">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·149,·SHA:·d90071272e6ab9f6f77f588e7a938375805651ca0f3cb43a2fcdd44ce641d28e·...·]-70">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">258 »       </span><span·class="p"·data-group-id="4968972092-70">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·149,·SHA:·e7530c512b8ef058d6afddc7f6980f0991d49a220f14570f6146f4675a06adcf·...·]-70">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
259 »       ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="0712741476-71">(</span><span·class="p"·data-group-id="0712741476-72">{</span><span·class="ss">failed_starting_acceptor</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p"·data-group-id="0712741476-72">}</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·945f4f1f4619deb5f3bd3d18309affaf2705b85d29517f6d9f0df830286067de·...·]-71">)</span><span·class="p">;</span><span·class="w">259 »       ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="4968972092-71">(</span><span·class="p"·data-group-id="4968972092-72">{</span><span·class="ss">failed_starting_acceptor</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p"·data-group-id="4968972092-72">}</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·0646ef18bbe28dcd6dfc63c899fa63290d6378835fac3f5255cac978354cc994·...·]-71">)</span><span·class="p">;</span><span·class="w">
260 »       </span><span·class="p"·data-group-id="0712741476-73">{</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">started</span><span·class="p"·data-group-id="0712741476-73">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">260 »       </span><span·class="p"·data-group-id="4968972092-73">{</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">started</span><span·class="p"·data-group-id="4968972092-73">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
261 »       ····</span><span·class="c1">%%·Transfer·ownership</span><span·class="w">261 »       ····</span><span·class="c1">%%·Transfer·ownership</span><span·class="w">
262 »       ····</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">setopt</span><span·class="p"·data-group-id="0712741476-74">(</span><span·class="n">LSock</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">otp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">owner</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·62,·SHA:·c093eff1217c7eab2e3e8aee8d016ec4f3cf8f0266849c5dda7e55c73f2d8ced·...·]-74">)</span><span·class="p">,</span><span·class="w">262 »       ····</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">setopt</span><span·class="p"·data-group-id="4968972092-74">(</span><span·class="n">LSock</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">otp</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">owner</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·62,·SHA:·62ad63f66e9180e0ec1c2aea6fee6a665b148c48be69af2d0a31f70a2b023e3e·...·]-74">)</span><span·class="p">,</span><span·class="w">
263 »       ····</span><span·class="n">Pid</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-75">{</span><span·class="nf">self</span><span·class="p"·data-group-id="0712741476-76">(</span><span·class="p"·data-group-id="0712741476-76">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">continue</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·3a58c825cf06616ed5da89402f92eebde67474632606dbaa606735ec691c1d60·...·]-75">}</span><span·class="p">,</span><span·class="w">263 »       ····</span><span·class="n">Pid</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-75">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4968972092-76">(</span><span·class="p"·data-group-id="4968972092-76">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">continue</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·c910b06a58cd5bf4cd628095d55ee91a4b6a816c403231e56267751315029e33·...·]-75">}</span><span·class="p">,</span><span·class="w">
264 »       ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="0712741476-77">(</span><span·class="n">MRef</span><span·class="p"·data-group-id="0712741476-77">)</span><span·class="p">,</span><span·class="w">264 »       ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">demonitor</span><span·class="p"·data-group-id="4968972092-77">(</span><span·class="n">MRef</span><span·class="p"·data-group-id="4968972092-77">)</span><span·class="p">,</span><span·class="w">
265 »       ····</span><span·class="n">Pid</span><span·class="w">265 »       ····</span><span·class="n">Pid</span><span·class="w">
266 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">266 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
267 ····267 ····
268 </span><span·class="nf">acceptor_init</span><span·class="p"·data-group-id="0712741476-78">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LSock</span><span·class="p"·data-group-id="0712741476-78">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">268 </span><span·class="nf">acceptor_init</span><span·class="p"·data-group-id="4968972092-78">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LSock</span><span·class="p"·data-group-id="4968972092-78">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
269 ····</span><span·class="n">Parent</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="0712741476-79">{</span><span·class="nf">self</span><span·class="p"·data-group-id="0712741476-80">(</span><span·class="p"·data-group-id="0712741476-80">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">started</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·3ccd1e90f186ec14c27c623e83bfc3460674de3fd75824db2a5f5fdba03ec85d·...·]-79">}</span><span·class="p">,</span><span·class="w">269 ····</span><span·class="n">Parent</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="4968972092-79">{</span><span·class="nf">self</span><span·class="p"·data-group-id="4968972092-80">(</span><span·class="p"·data-group-id="4968972092-80">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">started</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·fb8f03aa313d4051fca0e944525cb7faea44ca98b4e012ebf64eb241db40eff2·...·]-79">}</span><span·class="p">,</span><span·class="w">
270 ····</span><span·class="k">receive</span><span·class="w">270 ····</span><span·class="k">receive</span><span·class="w">
271 »       </span><span·class="p"·data-group-id="0712741476-81">{</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">continue</span><span·class="p"·data-group-id="0712741476-81">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">271 »       </span><span·class="p"·data-group-id="4968972092-81">{</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">continue</span><span·class="p"·data-group-id="4968972092-81">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
272 »       ····</span><span·class="ss">ok</span><span·class="w">272 »       ····</span><span·class="ss">ok</span><span·class="w">
273 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">273 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
274 ····</span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="0712741476-82">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0712741476-82">)</span><span·class="p">.</span><span·class="w">274 ····</span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="4968972092-82">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="4968972092-82">)</span><span·class="p">.</span><span·class="w">
  
275 </span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="0712741476-83">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0712741476-83">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">275 </span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="4968972092-83">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="4968972092-83">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
276 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">accept</span><span·class="p"·data-group-id="0712741476-84">(</span><span·class="n">LSock</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="p"·data-group-id="0712741476-84">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">276 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">socket</span><span·class="p">:</span><span·class="nf">accept</span><span·class="p"·data-group-id="4968972092-84">(</span><span·class="n">LSock</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">infinity</span><span·class="p"·data-group-id="4968972092-84">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
277 »       </span><span·class="p"·data-group-id="0712741476-85">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ASock</span><span·class="p"·data-group-id="0712741476-85">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">277 »       </span><span·class="p"·data-group-id="4968972092-85">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ASock</span><span·class="p"·data-group-id="4968972092-85">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
278 »       ····</span><span·class="nf">start_handler</span><span·class="p"·data-group-id="0712741476-86">(</span><span·class="n">ASock</span><span·class="p"·data-group-id="0712741476-86">)</span><span·class="p">,</span><span·class="w">278 »       ····</span><span·class="nf">start_handler</span><span·class="p"·data-group-id="4968972092-86">(</span><span·class="n">ASock</span><span·class="p"·data-group-id="4968972092-86">)</span><span·class="p">,</span><span·class="w">
279 »       ····</span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="0712741476-87">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="0712741476-87">)</span><span·class="p">;</span><span·class="w">279 »       ····</span><span·class="nf">acceptor_loop</span><span·class="p"·data-group-id="4968972092-87">(</span><span·class="n">LSock</span><span·class="p"·data-group-id="4968972092-87">)</span><span·class="p">;</span><span·class="w">
280 »       </span><span·class="p"·data-group-id="0712741476-88">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="0712741476-88">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">280 »       </span><span·class="p"·data-group-id="4968972092-88">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="4968972092-88">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
281 »       ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="0712741476-89">(</span><span·class="p"·data-group-id="0712741476-90">{</span><span·class="ss">accept_failed</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="0712741476-90">}</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·744b75ae91ff65ed5630fd7c1c91023d87713c84b105dc5332d964b7015474b1·...·]-89">)</span><span·class="w">281 »       ····</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="4968972092-89">(</span><span·class="p"·data-group-id="4968972092-90">{</span><span·class="ss">accept_failed</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="4968972092-90">}</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·78151074be815ef8b9e34d7436b9f5d520612f46edc91e034afd675f23fc2c11·...·]-89">)</span><span·class="w">
282 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">282 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
  
283 </span><span·class="c1">%%·---·Echo·Server·-·Handler·---</span><span·class="w">283 </span><span·class="c1">%%·---·Echo·Server·-·Handler·---</span><span·class="w">
  
284 </span><span·class="nf">start_handler</span><span·class="p"·data-group-id="0712741476-91">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="0712741476-91">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">284 </span><span·class="nf">start_handler</span><span·class="p"·data-group-id="4968972092-91">(</span><span·class="n">Sock</span><span·class="p"·data-group-id="4968972092-91">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
285 ····</span><span·class="n">Self</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="0712741476-92">(</span><span·class="p"·data-group-id="0712741476-92">)</span><span·class="p">,</span><span·class="w">285 ····</span><span·class="n">Self</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="4968972092-92">(</span><span·class="p"·data-group-id="4968972092-92">)</span><span·class="p">,</span><span·class="w">
286 ····</span><span·class="p"·data-group-id="0712741476-93">{</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p"·data-group-id="0712741476-93">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·633,·SHA:·b45d7d8a7e1cd2f1f6b5a382b8558657c09bfebbdfe785ac59abf022ba1499a6·...·]-94">)</span><span·class="p">,</span><span·class="w">286 ····</span><span·class="p"·data-group-id="4968972092-93">{</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p"·data-group-id="4968972092-93">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·633,·SHA:·e4611474653fb499c0905044cf67cc95aed5c9e6551ee6cf0eae4a54818adc86·...·]-94">)</span><span·class="p">,</span><span·class="w">
Max diff block lines reached; 82579/145036 bytes (56.94%) of diff not shown.
677 B
html2text {}
Max HTML report size reached
42.2 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/trace.html
    
Offset 142, 31 lines modifiedOffset 142, 31 lines modified
142 </h2>142 </h2>
143 <p>All·tracing·is·done·within·a·trace·session.·Trace·sessions·can·be143 <p>All·tracing·is·done·within·a·trace·session.·Trace·sessions·can·be
144 <a·href="#session_create/3">created</a>·and·<a·href="#session_destroy/1">destroyed</a>144 <a·href="#session_create/3">created</a>·and·<a·href="#session_destroy/1">destroyed</a>
145 dynamically.·Each·session·has·its·own·tracer·that·will·receive·all·trace145 dynamically.·Each·session·has·its·own·tracer·that·will·receive·all·trace
146 messages.·Several·sessions·can·exist·at·the·same·time·without·interfering·with146 messages.·Several·sessions·can·exist·at·the·same·time·without·interfering·with
147 each·other.·When·a·trace·session·is·destroyed,·all·its·trace·settings·are147 each·other.·When·a·trace·session·is·destroyed,·all·its·trace·settings·are
148 automatically·cleaned·up.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Create·a·tracer·process·that·will·receive·the·trace·events</span><span·class="gp·unselectable">148 automatically·cleaned·up.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Create·a·tracer·process·that·will·receive·the·trace·events</span><span·class="gp·unselectable">
149 1&gt;·</span><span·class="n">Tracer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="2046704500-1">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="2046704500-2">(</span><span·class="p"·data-group-id="2046704500-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><sp[·...·truncated·by·diffoscope;·len:·944,·SHA:·c1bb0b962b5fd2b27caed40073c9474a945d889ce19621fefa7112e2a98c471f·...·]-1">)</span><span·class="p">.</span><span·class="w">149 1&gt;·</span><span·class="n">Tracer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="2975952667-1">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="2975952667-2">(</span><span·class="p"·data-group-id="2975952667-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><sp[·...·truncated·by·diffoscope;·len:·944,·SHA:·448b8574cf944cd0271c9bcdec8e21178600147037a400d436ff8fe788b923ac·...·]-1">)</span><span·class="p">.</span><span·class="w">
150 </span><span·class="o">&lt;</span><span·class="mf">0.91</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">150 </span><span·class="o">&lt;</span><span·class="mf">0.91</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">
151 </span><span·class="c1">%%·Create·a·session·using·the·Tracer</span><span·class="gp·unselectable">151 </span><span·class="c1">%%·Create·a·session·using·the·Tracer</span><span·class="gp·unselectable">
152 2&gt;·</span><span·class="n">Session</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">session_create</span><span·class="p"·data-group-id="2046704500-6">(</span><span·class="ss">my_session</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tracer</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2046704500-7">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·71,·SHA:·650206f5d0fea0e74b0c60e30d69594ef634b30650cd788c56c9be32be4b2a88·...·]-6">)</span><span·class="p">.</span><span·class="w">152 2&gt;·</span><span·class="n">Session</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">session_create</span><span·class="p"·data-group-id="2975952667-6">(</span><span·class="ss">my_session</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tracer</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2975952667-7">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·71,·SHA:·ecf8c55bbf8173759be10eb914ab892fd8428c679f343c9631f07bcf288860d5·...·]-6">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="p"·data-group-id="2046704500-8">{</span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.1543805153</span><span·class="p">.</span><span·class="mf">1548353537.92331</span><span·class="o">&gt;</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·247,·SHA:·28cc7104dbc856cef4fcc87af50053252258a0bfe38c5a03123ac5731cfb6b57·...·]-8">}</span><span·class="w">153 </span><span·class="p"·data-group-id="2975952667-8">{</span><span·class="p">#</span><span·class="n">Ref</span><span·class="o">&lt;</span><span·class="mf">0.1543805153</span><span·class="p">.</span><span·class="mf">1548353537.92331</span><span·class="o">&gt;</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·247,·SHA:·0307647645477a3ebd0eb6e59d074439a107bee1f6eaf9c0b458a588adfa3572·...·]-8">}</span><span·class="w">
154 </span><span·class="c1">%%·Setup·call·tracing·on·self()</span><span·class="gp·unselectable">154 </span><span·class="c1">%%·Setup·call·tracing·on·self()</span><span·class="gp·unselectable">
155 3&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">process</span><span·class="p"·data-group-id="2046704500-10">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="2046704500-11">(</span><span·class="p"·data-group-id="2046704500-11">)</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·281,·SHA:·8bb0bfec3486ef0ea3678c2c6c59a087b630f21c99cc52ee269b40ed01bef304·...·]-10">)</span><span·class="p">.</span><span·class="w">155 3&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">process</span><span·class="p"·data-group-id="2975952667-10">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="2975952667-11">(</span><span·class="p"·data-group-id="2975952667-11">)</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·281,·SHA:·2e768fb075429f4a5fe882cb9c976b35a885346be1dd7786a2db2bcfc13a4d21·...·]-10">)</span><span·class="p">.</span><span·class="w">
156 </span><span·class="mi">1</span><span·class="w">156 </span><span·class="mi">1</span><span·class="w">
157 </span><span·class="c1">%%·Setup·call·tracing·on·lists:seq/2</span><span·class="gp·unselectable">157 </span><span·class="c1">%%·Setup·call·tracing·on·lists:seq/2</span><span·class="gp·unselectable">
158 4&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">function</span><span·class="p"·data-group-id="2046704500-13">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2046704500-14">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">seq</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·434,·SHA:·205bc3e0527aa273b1155d5cd78ff0c60ed0e9addd03cef307aa6221a390556e·...·]-13">)</span><span·class="p">.</span><span·class="w">158 4&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">function</span><span·class="p"·data-group-id="2975952667-13">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2975952667-14">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">seq</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·434,·SHA:·bdb5a0492ed5f603a96ba4936acaa69c771c7a196764cc6d01bdd7a89339d713·...·]-13">)</span><span·class="p">.</span><span·class="w">
159 </span><span·class="mi">1</span><span·class="w">159 </span><span·class="mi">1</span><span·class="w">
160 </span><span·class="c1">%%·Call·the·traced·function</span><span·class="gp·unselectable">160 </span><span·class="c1">%%·Call·the·traced·function</span><span·class="gp·unselectable">
161 5&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="2046704500-17">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">10</span><span·class="p"·data-group-id="2046704500-17">)</span><span·class="p">.</span><span·class="w">161 5&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="2975952667-17">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">10</span><span·class="p"·data-group-id="2975952667-17">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p"·data-group-id="2046704500-18">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.89</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="ss">call</spa[·...·truncated·by·diffoscope;·len:·462,·SHA:·dacc22768cf26adfc3c9a9c83d97178ce01e690cc7df3bd1a133e5c268d7b3f3·...·]-18">}</span><span·class="w">·</span><span·class="c1">%·The·trace·message</span><span·class="w">162 </span><span·class="p"·data-group-id="2975952667-18">{</span><span·class="nb">trace</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.89</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="ss">call</spa[·...·truncated·by·diffoscope;·len:·462,·SHA:·7906d378b3ce8c487713664efe4d41090864dcfcb1e4d7b0f73844d86c18e098·...·]-18">}</span><span·class="w">·</span><span·class="c1">%·The·trace·message</span><span·class="w">
163 </span><span·class="p"·data-group-id="2046704500-21">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="[·...·truncated·by·diffoscope;·len:·274,·SHA:·d776ddfa0da0fe6d2fd29ee132ae4d4f4a661a0088ec3e17f1c72290f7c53b0c·...·]-21">]</span><span·class="w">·</span><span·class="c1">%·The·return·value</span><span·class="w">163 </span><span·class="p"·data-group-id="2975952667-21">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">5</span><span·class="[·...·truncated·by·diffoscope;·len:·274,·SHA:·96308542e15dcdb303321e771905c2cf9c0d7141d8a0456a3fc32a641217ad42·...·]-21">]</span><span·class="w">·</span><span·class="c1">%·The·return·value</span><span·class="w">
164 </span><span·class="c1">%%·Cleanup·the·trace·session</span><span·class="gp·unselectable">164 </span><span·class="c1">%%·Cleanup·the·trace·session</span><span·class="gp·unselectable">
165 6&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">session_destroy</span><span·class="p"·data-group-id="2046704500-22">(</span><span·class="n">Session</span><span·class="p"·data-group-id="2046704500-22">)</span><span·class="p">.</span><span·class="w">165 6&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">session_destroy</span><span·class="p"·data-group-id="2975952667-22">(</span><span·class="n">Session</span><span·class="p"·data-group-id="2975952667-22">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="ss">ok</span></code></pre><h2·id="module-node-local-tracing-only"·class="section-heading">166 </span><span·class="ss">ok</span></code></pre><h2·id="module-node-local-tracing-only"·class="section-heading">
167 ··<a·href="#module-node-local-tracing-only"·class="hover-link">167 ··<a·href="#module-node-local-tracing-only"·class="hover-link">
168 ····<i·class="ri-link-m"·aria-hidden="true"></i>168 ····<i·class="ri-link-m"·aria-hidden="true"></i>
169 ··</a>169 ··</a>
170 ··<span·class="text">Node·Local·Tracing·Only</span>170 ··<span·class="text">Node·Local·Tracing·Only</span>
171 </h2>171 </h2>
172 <p>The·functions·in·this·module·only·operates·on·the·local·node.·That·is,·both·the172 <p>The·functions·in·this·module·only·operates·on·the·local·node.·That·is,·both·the
Offset 1316, 17 lines modifiedOffset 1316, 17 lines modified
1316 <code·class="inline">undefined</code>·if·the·sender·is·not·known·(which·can·be·the·case·for·remote1316 <code·class="inline">undefined</code>·if·the·sender·is·not·known·(which·can·be·the·case·for·remote
1317 senders).·<code·class="inline">Msg</code>·is·the·message·term.·The·pid·of·the·receiving·process·can·be1317 senders).·<code·class="inline">Msg</code>·is·the·message·term.·The·pid·of·the·receiving·process·can·be
1318 accessed·with·the·guard·function·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>.·An·empty·list·is·the·same·as1318 accessed·with·the·guard·function·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>.·An·empty·list·is·the·same·as
1319 <code·class="inline">true</code>.·For·more·information,·see·section1319 <code·class="inline">true</code>.·For·more·information,·see·section
1320 <a·href="../../../../erts-15.0.1/doc/html/match_spec.html">Match·Specifications·in·Erlang</a>·in·the·User's·Guide1320 <a·href="../../../../erts-15.0.1/doc/html/match_spec.html">Match·Specifications·in·Erlang</a>·in·the·User's·Guide
1321 for·the·ERTS·application.</p></li><li><p><strong><code·class="inline">true</code></strong>·-·Enable·tracing·for·all·received·messages·(to·<code·class="inline">'receive'</code>·traced1321 for·the·ERTS·application.</p></li><li><p><strong><code·class="inline">true</code></strong>·-·Enable·tracing·for·all·received·messages·(to·<code·class="inline">'receive'</code>·traced
1322 processes).·Any·match·specification·is·removed.·<em>This·is·the·default</em>.</p></li><li><p><strong><code·class="inline">false</code></strong>·-·Disable·tracing·for·all·received·messages.·Any·match1322 processes).·Any·match·specification·is·removed.·<em>This·is·the·default</em>.</p></li><li><p><strong><code·class="inline">false</code></strong>·-·Disable·tracing·for·all·received·messages.·Any·match
1323 specification·is·removed.</p></li></ul><p>Argument·<code·class="inline">FlagList</code>·must·be·<code·class="inline">[]</code>·for·receive·tracing.</p><p>The·return·value·is·always·<code·class="inline">1</code>.</p><p><em>Examples:</em></p><p>Only·trace·messages·from·a·specific·process·<code·class="inline">Pid</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="2683259507-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2683259507-2">[</span><span·class="p"·data-group-id="2683259507-3">{</span><span·class="p"·data-group-id="2683259507-4">[</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="2683259507-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="2683259507-5">[</span><span·class="p"·data-group-id="2683259507-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="2683259507-6">[</span><span·class="p"·data-group-id="2683259507-6">]</span><span·class="p"·data-group-id="2683259507-3">}</span><span·class="p"·data-group-id="2683259507-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2683259507-7">[</span><span·class="p"·data-group-id="2683259507-7">]</span><span·class="p"·data-group-id="2683259507-1">)</span><span·class="p">.</span><span·class="w"> 
1324 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·matching·<code·class="inline">{reply,·_}</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="0891498689-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0891498689-2">[</span><span·class="p"·data-group-id="0891498689-3">{</span><span·class="p"·data-group-id="0891498689-4">[</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0891498689-5">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="0891498689-5">}</span><span·class="p"·data-group-id="0891498689-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="0891498689-6">[</span><span·class="p"·data-group-id="0891498689-6">]</span><span·class="p">,</span><span·class="p"·data-group-id="0891498689-7">[</span><span·class="p"·data-group-id="0891498689-7">]</span><span·class="p"·data-group-id="0891498689-3">}</span><span·class="p"·data-group-id="0891498689-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0891498689-8">[</span><span·class="p"·data-group-id="0891498689-8">]</span><span·class="p"·data-group-id="0891498689-1">)</span><span·class="p">.</span><span·class="w"> 
1325 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·from·other·nodes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">recv</s[·...·truncated·by·diffoscope;·len:·1470,·SHA:·838710fdd18a99a0cb88ced5766e95d9dcc88f849ba3a0ddd46d69d63ba65d5d·...·]8-1">)</span><span·class="p">.</span><span·class="w">1323 specification·is·removed.</p></li></ul><p>Argument·<code·class="inline">FlagList</code>·must·be·<code·class="inline">[]</code>·for·receive·tracing.</p><p>The·return·value·is·always·<code·class="inline">1</code>.</p><p><em>Examples:</em></p><p>Only·trace·me[·...·truncated·by·diffoscope;·len:·1309,·SHA:·1db94b734dc9ee7ea6e9927920493ad9a4f8f9e8c4a2aacc475101a891f820dd·...·]8-1">)</span><span·class="p">.</span><span·class="w">
 1324 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·matching·<code·class="inline">{reply,·_}</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="9064828906-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9064828906-2">[</span><span·class="p"·data-group-id="9064828906-3">{</span><span·class="p"·data-group-id="9064828906-4">[</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9064828906-5">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="9064828906-5">}</span><span·class="p"·data-group-id="9064828906-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="9064828906-6">[</span><span·class="p"·data-group-id="9064828906-6">]</span><span·class="p">,</span><span·class="p"·data-group-id="9064828906-7">[</span><span·class="p"·data-group-id="9064828906-7">]</span><span·class="p"·data-group-id="9064828906-3">}</span><span·class="p"·data-group-id="9064828906-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9064828906-8">[</span><span·class="p"·data-group-id="9064828906-8">]</span><span·class="p"·data-group-id="9064828906-1">)</span><span·class="p">.</span><span·class="w">
 1325 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·from·other·nodes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">recv</span><span·class="p"·data-group-id="4342064442-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4342064442-2">[</span><span·class="p"·data-group-id="4342064442-3">{</span><span·class="p"·data-group-id="4342064442-4">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="4342064442-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="4342064442-5">[</span><span·class="p"·data-group-id="4342064442-6">{</span><span·class="ss">&#39;=/=&#39;</span><span·class="p">,</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="4342064442-7">{</span><span·class="nb">node</span><span·class="p"·data-group-id="4342064442-7">}</span><span·class="p"·data-group-id="4342064442-6">}</span><span·class="p"·data-group-id="4342064442-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="4342064442-8">[</span><span·class="p"·data-group-id="4342064442-8">]</span><span·class="p"·data-group-id="4342064442-3">}</span><span·class="p"·data-group-id="4342064442-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4342064442-9">[</span><span·class="p"·data-group-id="4342064442-9">]</span><span·class="p"·data-group-id="4342064442-1">)</span><span·class="p">.</span><span·class="w">
1326 </span><span·class="mi">1</span></code></pre><blockquote><h4·class="info">Note</h4><p>A·match·specification·for·<code·class="inline">'receive'</code>·trace·can·use·all·guard·and·body1326 </span><span·class="mi">1</span></code></pre><blockquote><h4·class="info">Note</h4><p>A·match·specification·for·<code·class="inline">'receive'</code>·trace·can·use·all·guard·and·body
1327 functions·except·<code·class="inline">caller</code>,·<code·class="inline">is_seq_trace</code>,·<code·class="inline">get_seq_token</code>,·<code·class="inline">set_seq_token</code>,1327 functions·except·<code·class="inline">caller</code>,·<code·class="inline">is_seq_trace</code>,·<code·class="inline">get_seq_token</code>,·<code·class="inline">set_seq_token</code>,
1328 <code·class="inline">enable_trace</code>,·<code·class="inline">disable_trace</code>,·<code·class="inline">trace</code>,·<code·class="inline">silent</code>,·and·<code·class="inline">process_dump</code>.</p></blockquote><p>Fails·by·raising·an·error·exception·with·an·error·reason·of:</p><ul><li><p><strong><code·class="inline">badarg</code></strong>·-·If·an·argument·is·invalid.</p></li><li><p><strong><code·class="inline">system_limit</code></strong>·-·If·a·match·specification·passed·as·argument·has·excessive1328 <code·class="inline">enable_trace</code>,·<code·class="inline">disable_trace</code>,·<code·class="inline">trace</code>,·<code·class="inline">silent</code>,·and·<code·class="inline">process_dump</code>.</p></blockquote><p>Fails·by·raising·an·error·exception·with·an·error·reason·of:</p><ul><li><p><strong><code·class="inline">badarg</code></strong>·-·If·an·argument·is·invalid.</p></li><li><p><strong><code·class="inline">system_limit</code></strong>·-·If·a·match·specification·passed·as·argument·has·excessive
1329 nesting·which·causes·scheduler·stack·exhaustion·for·the·scheduler·that·the1329 nesting·which·causes·scheduler·stack·exhaustion·for·the·scheduler·that·the
1330 calling·process·is·executing·on.1330 calling·process·is·executing·on.
1331 <a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html#sched_thread_stack_size">Scheduler·stack·size</a>·can·be·configured1331 <a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html#sched_thread_stack_size">Scheduler·stack·size</a>·can·be·configured
1332 when·starting·the·runtime·system.</p></li></ul>1332 when·starting·the·runtime·system.</p></li></ul>
Offset 1369, 18 lines modifiedOffset 1369, 18 lines modified
1369 the·list·<code·class="inline">[Receiver,·Msg]</code>.·<code·class="inline">Receiver</code>·is·the·process·or·port·identity·of·the1369 the·list·<code·class="inline">[Receiver,·Msg]</code>.·<code·class="inline">Receiver</code>·is·the·process·or·port·identity·of·the
1370 receiver·and·<code·class="inline">Msg</code>·is·the·message·term.·The·pid·of·the·sending·process·can·be1370 receiver·and·<code·class="inline">Msg</code>·is·the·message·term.·The·pid·of·the·sending·process·can·be
1371 accessed·with·the·guard·function·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>.·An·empty·list·is·the·same·as1371 accessed·with·the·guard·function·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>.·An·empty·list·is·the·same·as
1372 <code·class="inline">true</code>.·For·more·information,·see·section1372 <code·class="inline">true</code>.·For·more·information,·see·section
1373 <a·href="../../../../erts-15.0.1/doc/html/match_spec.html">Match·Specifications·in·Erlang</a>·in·the·User's·Guide1373 <a·href="../../../../erts-15.0.1/doc/html/match_spec.html">Match·Specifications·in·Erlang</a>·in·the·User's·Guide
1374 for·the·ERTS·application.</p></li><li><p><strong><code·class="inline">true</code></strong>·-·Enable·tracing·for·all·sent·messages·(from·<code·class="inline">send</code>·traced1374 for·the·ERTS·application.</p></li><li><p><strong><code·class="inline">true</code></strong>·-·Enable·tracing·for·all·sent·messages·(from·<code·class="inline">send</code>·traced
1375 processes).·Any·match·specification·is·removed.</p></li><li><p><strong><code·class="inline">false</code></strong>·-·Disable·tracing·for·all·sent·messages.·Any·match·specification1375 processes).·Any·match·specification·is·removed.</p></li><li><p><strong><code·class="inline">false</code></strong>·-·Disable·tracing·for·all·sent·messages.·Any·match·specification
1376 is·removed.</p></li></ul><p>Argument·<code·class="inline">FlagList</code>·must·be·<code·class="inline">[]</code>.</p><p>The·return·value·is·always·<code·class="inline">1</code>.</p><p><em>Examples:</em></p><p>Only·trace·messages·to·a·specific·process·<code·class="inline">Pid</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="5704629908-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5704629908-2">[</span><span·class="p"·data-group-id="5704629908-3">{</span><span·class="p"·data-group-id="5704629908-4">[</spa[·...·truncated·by·diffoscope;·len:·725,·SHA:·4ad00f607ef61ae672db69e23a17959edd7f97a06c5dd05530f40a71f1ba1b6e·...·]-1">)</span><span·class="p">.</span><span·class="w">1376 is·removed.</p></li></ul><p>Argument·<code·class="inline">FlagList</code>·must·be·<code·class="inline">[]</code>.</p><p>The·return·value·is·always·<code·class="inline">1</code>.</p><p><em>Examples:</em></p><p>Only·trace·messages·to·a·specific·process·<code·class="inline">Pid</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="5183212274-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5183212274-2">[</span><span·class="p"·data-group-id="5183212274-3">{</span><span·class="p"·data-group-id="5183212274-4">[</spa[·...·truncated·by·diffoscope;·len:·725,·SHA:·93103c94d8e1d830dbeb50011be9ac262363f04e8db3f394bec0f427b1f4780f·...·]-1">)</span><span·class="p">.</span><span·class="w">
1377 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·matching·<code·class="inline">{reply,·_}</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="6105469994-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6105469994-2">[</span><span·class="p"·data-group-id="6105469994-3">{</span><span·class="p"·data-group-id="6105469994-4">[</sp[·...·truncated·by·diffoscope;·len:·894,·SHA:·3e8e0d4489740fd4c1df525cd43099427b7b20623a546e9f856c7a404ee543c7·...·]-1">)</span><span·class="p">.</span><span·class="w">1377 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·matching·<code·class="inline">{reply,·_}</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="1605912427-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1605912427-2">[</span><span·class="p"·data-group-id="1605912427-3">{</span><span·class="p"·data-group-id="1605912427-4">[</sp[·...·truncated·by·diffoscope;·len:·894,·SHA:·73220640a44561c81aa010970c099f4b3e74d90ce6a9e4519adcc8d5d255386d·...·]-1">)</span><span·class="p">.</span><span·class="w">
1378 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·sent·to·the·sender·itself:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="0142153681-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0142153681-2">[</span><span·class="p"·data-group-id="0142153681-3">{</span><span·class="p"·data-group-id="0142153681-4">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="0142153681-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="0142153681-5">[</span><span·class="p"·data-group-id="0142153681-6">{</span><span·class="ss">&#39;=:=&#39;</span><span·class="p">,</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="0142153681-7">{</span><span·class="ss">self</span><span·class="p"·data-group-id="0142153681-7">}</span><span·class="p"·data-group-id="0142153681-6">}</span><span·class="p"·data-group-id="0142153681-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="0142153681-8">[</span><span·class="p"·data-group-id="0142153681-8">]</span><span·class="p"·data-group-id="0142153681-3">}</span><span·class="p"·data-group-id="0142153681-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0142153681-9">[</span><span·class="p"·data-group-id="0142153681-9">]</span><span·class="p"·data-group-id="0142153681-1">)</span><span·class="p">.</span><span·class="w"> 
1379 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·sent·to·other·nodes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="3076125976-1">(</span><span·class="n">[·...·truncated·by·diffoscope;·len:·1475,·SHA:·23fdcb39a1f413ce8f17fa3ce2f4fce2fed0833a0008ea93e031838099e7fec0·...·]-1">)</span><span·class="p">.</span><span·class="w">1378 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·sent·to·the·sender·itself:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="1805001283-1">(</span><span·clas[·...·truncated·by·diffoscope;·len:·1321,·SHA:·a5bc84554d46ff3484cfa891afc6865fd3bfb5f01405db5c8dff3aee72d5bc56·...·]-1">)</span><span·class="p">.</span><span·class="w">
 1379 </span><span·class="mi">1</span></code></pre><p>Only·trace·messages·sent·to·other·nodes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">trace</span><span·class="p">:</span><span·class="nf">send</span><span·class="p"·data-group-id="4665597650-1">(</span><span·class="n">Session</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4665597650-2">[</span><span·class="p"·data-group-id="4665597650-3">{</span><span·class="p"·data-group-id="4665597650-4">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;_&#39;</span><span·class="p"·data-group-id="4665597650-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="4665597650-5">[</span><span·class="p"·data-group-id="4665597650-6">{</span><span·class="ss">&#39;=/=&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="4665597650-7">{</span><span·class="nb">node</span><span·class="p">,</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="4665597650-7">}</span><span·class="p">,</span><span·class="p"·data-group-id="4665597650-8">{</span><span·class="nb">node</span><span·class="p"·data-group-id="4665597650-8">}</span><span·class="p"·data-group-id="4665597650-6">}</span><span·class="p"·data-group-id="4665597650-5">]</span><span·class="p">,</span><span·class="p"·data-group-id="4665597650-9">[</span><span·class="p"·data-group-id="4665597650-9">]</span><span·class="p"·data-group-id="4665597650-3">}</span><span·class="p"·data-group-id="4665597650-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4665597650-10">[</span><span·class="p"·data-group-id="4665597650-10">]</span><span·class="p"·data-group-id="4665597650-1">)</span><span·class="p">.</span><span·class="w">
1380 </span><span·class="mi">1</span></code></pre><blockquote><h4·class="info">Note</h4><p>A·match·specification·for·<code·class="inline">send</code>·trace·can·use·all·guard·and·body·functions1380 </span><span·class="mi">1</span></code></pre><blockquote><h4·class="info">Note</h4><p>A·match·specification·for·<code·class="inline">send</code>·trace·can·use·all·guard·and·body·functions
1381 except·<code·class="inline">caller</code>.</p></blockquote><p>Fails·by·raising·an·error·exception·with·an·error·reason·of:</p><ul><li><p><strong><code·class="inline">badarg</code></strong>·-·If·an·argument·is·invalid.</p></li><li><p><strong><code·class="inline">system_limit</code></strong>·-·If·a·match·specification·passed·as·argument·has·excessive1381 except·<code·class="inline">caller</code>.</p></blockquote><p>Fails·by·raising·an·error·exception·with·an·error·reason·of:</p><ul><li><p><strong><code·class="inline">badarg</code></strong>·-·If·an·argument·is·invalid.</p></li><li><p><strong><code·class="inline">system_limit</code></strong>·-·If·a·match·specification·passed·as·argument·has·excessive
1382 nesting·which·causes·scheduler·stack·exhaustion·for·the·scheduler·that·the1382 nesting·which·causes·scheduler·stack·exhaustion·for·the·scheduler·that·the
1383 calling·process·is·executing·on.1383 calling·process·is·executing·on.
1384 <a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html#sched_thread_stack_size">Scheduler·stack·size</a>·can·be·configured1384 <a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html#sched_thread_stack_size">Scheduler·stack·size</a>·can·be·configured
1385 when·starting·the·runtime·system.</p></li></ul>1385 when·starting·the·runtime·system.</p></li></ul>
1386 ··</section>1386 ··</section>
Offset 1518, 15 lines modifiedOffset 1518, 15 lines modified
1518 ······<p·class="built-using">1518 ······<p·class="built-using">
1519 ········Built·using1519 ········Built·using
1520 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1520 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1521 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1521 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1522 ······</p>1522 ······</p>
1523 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1523 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1524 ····</footer>1524 ····</footer>
1525 ··</div>1525 ··</div>
1526 </main>1526 </main>
1527 </div>1527 </div>
1528 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1528 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1529 <script>1529 <script>
1530 ··document.addEventListener("DOMContentLoaded",·function·()·{1530 ··document.addEventListener("DOMContentLoaded",·function·()·{
759 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/kernel-10.0.1/doc/html/wrap_log_reader.html
    
Offset 546, 15 lines modifiedOffset 546, 15 lines modified
546 ······<p·class="built-using">546 ······<p·class="built-using">
547 ········Built·using547 ········Built·using
548 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the548 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
549 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>549 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
550 ······</p>550 ······</p>
551 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>551 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
552 ····</footer>552 ····</footer>
553 ··</div>553 ··</div>
554 </main>554 </main>
555 </div>555 </div>
556 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>556 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
557 <script>557 <script>
558 ··document.addEventListener("DOMContentLoaded",·function·()·{558 ··document.addEventListener("DOMContentLoaded",·function·()·{
645 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/api-reference.html
    
Offset 298, 15 lines modifiedOffset 298, 15 lines modified
298 ······<p·class="built-using">298 ······<p·class="built-using">
299 ········Built·using299 ········Built·using
300 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the300 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
301 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>301 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
302 ······</p>302 ······</p>
303 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>303 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
304 ····</footer>304 ····</footer>
305 ··</div>305 ··</div>
306 </main>306 </main>
307 </div>307 </div>
308 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>308 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
309 <script>309 <script>
310 ··document.addEventListener("DOMContentLoaded",·function·()·{310 ··document.addEventListener("DOMContentLoaded",·function·()·{
645 B
html2text {}
Max HTML report size reached
196 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco.epub
6.87 KB
zipinfo {}
Max HTML report size reached
138 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
9.03 KB
OEBPS/megaco_user.xhtml
Max HTML report size reached
5.12 KB
OEBPS/megaco_examples.xhtml
Max HTML report size reached
21.6 KB
OEBPS/megaco_encode.xhtml
Max HTML report size reached
11.5 KB
OEBPS/megaco_debug.xhtml
Max HTML report size reached
2.74 KB
OEBPS/megaco.xhtml
Max HTML report size reached
1.23 KB
OEBPS/content.opf
1.2 KB
OEBPS/content.opf
Max HTML report size reached
4.15 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco.html
    
Offset 3201, 15 lines modifiedOffset 3201, 15 lines modified
  
3201 ··········<pre·translate="no"><span·class="attribute">-spec</span>·print_version_info(Versions)·->·<a·href="#t:void/0">void</a>()·when·Versions·::·[VersionInfo],·VersionInfo·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>3201 ··········<pre·translate="no"><span·class="attribute">-spec</span>·print_version_info(Versions)·->·<a·href="#t:void/0">void</a>()·when·Versions·::·[VersionInfo],·VersionInfo·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
3202 ······</div>3202 ······</div>
  
3203 <p>Utility·function·to·produce·a·formated·printout·of·the·versions·info·generated3203 <p>Utility·function·to·produce·a·formated·printout·of·the·versions·info·generated
3204 by·the·<code·class="inline">versions1</code>·and·<code·class="inline">versions2</code>·functions.</p><p>The·function·print_version_info/0·uses·the·result·of·function·version1/0·as3204 by·the·<code·class="inline">versions1</code>·and·<code·class="inline">versions2</code>·functions.</p><p>The·function·print_version_info/0·uses·the·result·of·function·version1/0·as
3205 <code·class="inline">VersionInfo</code>.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">···········</span><span·class="p"·data-group-id="0489174579-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">V</span><span·class="p"·data-group-id="0489174579-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·441,·SHA:·3d9202490a8ab28489014c0f3e8129e02a07c8de4c98fc58cbee3896e1a87ffa·...·]-3">)</span><span·class="p">.</span></code></pre><p><a·href=""·id="enable_trace"></a></p>3205 <code·class="inline">VersionInfo</code>.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">···········</span><span·class="p"·data-group-id="9403688394-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">V</span><span·class="p"·data-group-id="9403688394-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·441,·SHA:·c9f0fb5c3756503efbf3133517f016fd1956b8fce84dd1defd974fa6fc153662·...·]-3">)</span><span·class="p">.</span></code></pre><p><a·href=""·id="enable_trace"></a></p>
3206 ··</section>3206 ··</section>
3207 </section>3207 </section>
3208 <section·class="detail"·id="process_received_message/4">3208 <section·class="detail"·id="process_received_message/4">
  
3209 ··<div·class="detail-header">3209 ··<div·class="detail-header">
3210 ····<a·href="#process_received_message/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">3210 ····<a·href="#process_received_message/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
3211 ······<i·class="ri-link-m"·aria-hidden="true"></i>3211 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 4103, 15 lines modifiedOffset 4103, 15 lines modified
4103 ······<p·class="built-using">4103 ······<p·class="built-using">
4104 ········Built·using4104 ········Built·using
4105 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the4105 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
4106 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>4106 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
4107 ······</p>4107 ······</p>
4108 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4108 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
4109 ····</footer>4109 ····</footer>
4110 ··</div>4110 ··</div>
4111 </main>4111 </main>
4112 </div>4112 </div>
4113 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>4113 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
4114 <script>4114 <script>
4115 ··document.addEventListener("DOMContentLoaded",·function·()·{4115 ··document.addEventListener("DOMContentLoaded",·function·()·{
649 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_architecture.html
    
Offset 255, 15 lines modifiedOffset 255, 15 lines modified
255 ······<p·class="built-using">255 ······<p·class="built-using">
256 ········Built·using256 ········Built·using
257 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the257 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
258 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>258 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
259 ······</p>259 ······</p>
260 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>260 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
261 ····</footer>261 ····</footer>
262 ··</div>262 ··</div>
263 </main>263 </main>
264 </div>264 </div>
265 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>265 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
266 <script>266 <script>
267 ··document.addEventListener("DOMContentLoaded",·function·()·{267 ··document.addEventListener("DOMContentLoaded",·function·()·{
682 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_codec_meas.html
    
Offset 246, 15 lines modifiedOffset 246, 15 lines modified
246 ······<p·class="built-using">246 ······<p·class="built-using">
247 ········Built·using247 ········Built·using
248 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the248 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
249 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>249 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
250 ······</p>250 ······</p>
251 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>251 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
252 ····</footer>252 ····</footer>
253 ··</div>253 ··</div>
254 </main>254 </main>
255 </div>255 </div>
256 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>256 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
257 <script>257 <script>
258 ··document.addEventListener("DOMContentLoaded",·function·()·{258 ··document.addEventListener("DOMContentLoaded",·function·()·{
613 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_codec_mstone1.html
    
Offset 583, 15 lines modifiedOffset 583, 15 lines modified
583 ······<p·class="built-using">583 ······<p·class="built-using">
584 ········Built·using584 ········Built·using
585 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the585 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
586 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>586 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
587 ······</p>587 ······</p>
588 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>588 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
589 ····</footer>589 ····</footer>
590 ··</div>590 ··</div>
591 </main>591 </main>
592 </div>592 </div>
593 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>593 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
594 <script>594 <script>
595 ··document.addEventListener("DOMContentLoaded",·function·()·{595 ··document.addEventListener("DOMContentLoaded",·function·()·{
718 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_codec_mstone2.html
    
Offset 250, 15 lines modifiedOffset 250, 15 lines modified
250 ······<p·class="built-using">250 ······<p·class="built-using">
251 ········Built·using251 ········Built·using
252 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the252 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
253 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>253 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
254 ······</p>254 ······</p>
255 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>255 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
256 ····</footer>256 ····</footer>
257 ··</div>257 ··</div>
258 </main>258 </main>
259 </div>259 </div>
260 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>260 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
261 <script>261 <script>
262 ··document.addEventListener("DOMContentLoaded",·function·()·{262 ··document.addEventListener("DOMContentLoaded",·function·()·{
681 B
html2text {}
Max HTML report size reached
1.4 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_codec_transform.html
    
Offset 250, 15 lines modifiedOffset 250, 15 lines modified
250 ······<p·class="built-using">250 ······<p·class="built-using">
251 ········Built·using251 ········Built·using
252 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the252 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
253 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>253 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
254 ······</p>254 ······</p>
255 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>255 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
256 ····</footer>256 ····</footer>
257 ··</div>257 ··</div>
258 </main>258 </main>
259 </div>259 </div>
260 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>260 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
261 <script>261 <script>
262 ··document.addEventListener("DOMContentLoaded",·function·()·{262 ··document.addEventListener("DOMContentLoaded",·function·()·{
570 B
html2text {}
Max HTML report size reached
13.1 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_debug.html
    
Offset 168, 20 lines modifiedOffset 168, 20 lines modified
168 file·(see·below·for·more·info).·The·messages·in·this·file·is·encoded·with·just168 file·(see·below·for·more·info).·The·messages·in·this·file·is·encoded·with·just
169 one·codec.·During·measurement·initiation,·the·messages·are·read·and·then169 one·codec.·During·measurement·initiation,·the·messages·are·read·and·then
170 transformed·to·all·codec·formats·used·in·the·measurement.</p><p>The·message·transformation·is·done·by·the·transformation·module.·It·is·used·to170 transformed·to·all·codec·formats·used·in·the·measurement.</p><p>The·message·transformation·is·done·by·the·transformation·module.·It·is·used·to
171 transform·a·set·of·messages·encoded·with·one·codec·into·the·other·base·codec's.</p><h4>Measurement(s)</h4><p>There·are·two·different·measurement·tools:</p><ul><li><p><em>meas</em>:</p><p>Used·to·perform·codec·measurements.·That·is,·to·see·what·kind·of·performance171 transform·a·set·of·messages·encoded·with·one·codec·into·the·other·base·codec's.</p><h4>Measurement(s)</h4><p>There·are·two·different·measurement·tools:</p><ul><li><p><em>meas</em>:</p><p>Used·to·perform·codec·measurements.·That·is,·to·see·what·kind·of·performance
172 can·be·expected·by·the·different·codecs·provided·by·the·megaco·application.</p><p>The·measurement·is·done·by·iterating·over·the·decode/encode·function·for172 can·be·expected·by·the·different·codecs·provided·by·the·megaco·application.</p><p>The·measurement·is·done·by·iterating·over·the·decode/encode·function·for
173 approx·2·seconds·per·message·and·counting·the·number·of·decodes/encodes.</p><p>Is·best·run·by·modifying·the·meas.sh.skel·skeleton·script·provided·by·the173 approx·2·seconds·per·message·and·counting·the·number·of·decodes/encodes.</p><p>Is·best·run·by·modifying·the·meas.sh.skel·skeleton·script·provided·by·the
174 tool.</p><p>To·run·it·manually·do·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="c1">%·erl·-pa·&lt;path-megaco-ebin-dir&gt;·-pa·&lt;path-to-meas-module-dir&gt;</span><span·class="w">174 tool.</p><p>To·run·it·manually·do·the·following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="c1">%·erl·-pa·&lt;path-megaco-ebin-dir&gt;·-pa·&lt;path-to-meas-module-dir&gt;</span><span·class="w">
175 ········</span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="3442242843-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="3442242843-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">5.6[·...·truncated·by·diffoscope;·len:·155,·SHA:·53a5f8fe5373a153231d26b87570d2b228eb6e976117728271af525b8604a227·...·]-2">]</span><span·class="w">175 ········</span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="3288277851-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="3288277851-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">5.6[·...·truncated·by·diffoscope;·len:·155,·SHA:·d4b4f876e206eb80f43257c389c72f363fa8c6b1c06852aa37e4e32a312180ad·...·]-2">]</span><span·class="w">
  
176 ········</span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V12</span><span·class="p">.</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="3442242843-3">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="3442242843-3">)</span><span·class="w">176 ········</span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V12</span><span·class="p">.</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="3288277851-3">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="3288277851-3">)</span><span·class="w">
177 ········</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">megaco_codec_meas</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="3442242843-4">(</span><span·class="p"·data-group-id="3442242843-4">)</span><span·class="p">.</span><span·class="w">177 ········</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">megaco_codec_meas</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="3288277851-4">(</span><span·class="p"·data-group-id="3288277851-4">)</span><span·class="p">.</span><span·class="w">
178 ········</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">178 ········</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
179 ········</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">halt</span><span·class="p"·data-group-id="3442242843-5">(</span><span·class="p"·data-group-id="3442242843-5">)</span><span·class="p">.</span></code></pre><p>or·to·make·it·even·easier,·assuming·a·measure·shall·be·done·on·all·the·codecs179 ········</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nf">halt</span><span·class="p"·data-group-id="3288277851-5">(</span><span·class="p"·data-group-id="3288277851-5">)</span><span·class="p">.</span></code></pre><p>or·to·make·it·even·easier,·assuming·a·measure·shall·be·done·on·all·the·codecs
180 (as·above):</p><pre><code·class="text">········%·erl·-noshell·-pa·&lt;path-megaco-ebin-dir&gt;·\\180 (as·above):</p><pre><code·class="text">········%·erl·-noshell·-pa·&lt;path-megaco-ebin-dir&gt;·\\
181 ··············-pa·&lt;path-to-meas-module-dir&gt;·\\181 ··············-pa·&lt;path-to-meas-module-dir&gt;·\\
182 ··············-s·megaco_codec_meas·-s·init·stop</code></pre><p>When·run·as·above·(this·will·take·some·time),·the·measurement·process·is·done182 ··············-s·megaco_codec_meas·-s·init·stop</code></pre><p>When·run·as·above·(this·will·take·some·time),·the·measurement·process·is·done
183 as·follows:</p><pre><code·class="text">For·each·codec:183 as·follows:</p><pre><code·class="text">For·each·codec:
184 ····For·each·message:184 ····For·each·message:
185 ········Read·the·message·from·the·file185 ········Read·the·message·from·the·file
186 ············Detect·message·version186 ············Detect·message·version
Offset 195, 18 lines modifiedOffset 195, 18 lines modified
195 tool.</p><p>The·<em>mstone2</em>·is·similar·to·the·<em>mstone1</em>·tool,·but·in·this·case,·each·created195 tool.</p><p>The·<em>mstone2</em>·is·similar·to·the·<em>mstone1</em>·tool,·but·in·this·case,·each·created
196 process·makes·only·<em>one</em>·run·through·the·messages·and·then·exits.·A·soon·as·a196 process·makes·only·<em>one</em>·run·through·the·messages·and·then·exits.·A·soon·as·a
197 process·exits,·a·new·process·(with·the·same·config·and·messages)·is·created·to197 process·exits,·a·new·process·(with·the·same·config·and·messages)·is·created·to
198 takes·its·place.·The·number·of·messages·processed·in·total·is·the·mstone2(1)198 takes·its·place.·The·number·of·messages·processed·in·total·is·the·mstone2(1)
199 value.</p></li></ul><p>Both·these·tools·use·the·message·package·(time_test.msgs)·provided·with·the199 value.</p></li></ul><p>Both·these·tools·use·the·message·package·(time_test.msgs)·provided·with·the
200 tool(s),·although·it·can·run·on·any·message·package·as·long·as·it·has·the·same200 tool(s),·although·it·can·run·on·any·message·package·as·long·as·it·has·the·same
201 structure.</p><h4>Message·package·file</h4><p>This·is·simply·an·erlang·compatible·text-file·with·the·following·structure:201 structure.</p><h4>Message·package·file</h4><p>This·is·simply·an·erlang·compatible·text-file·with·the·following·structure:
202 <code·class="inline">{codec_name(),·messages_list()}</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">codec_name</span><span·class="p"·data-group-id="2105513254-1">(</span><span·class="p"·data-group-id="2105513254-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">pretty</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·687,·SHA:·65ea5ca407b8ba38c65cbd0ec4633418d206ddb39b1f3a75690392524e629f8e·...·]-2">)</span><span·class="w">202 <code·class="inline">{codec_name(),·messages_list()}</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">codec_name</span><span·class="p"·data-group-id="3946638873-1">(</span><span·class="p"·data-group-id="3946638873-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">pretty</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·687,·SHA:·b82c9e7a5885fe135bd2b55a77c4b522503a023de934b550784f102cb7d0ba1a·...·]-2">)</span><span·class="w">
203 </span><span·class="nf">messages_list</span><span·class="p"·data-group-id="2105513254-3">(</span><span·class="p"·data-group-id="2105513254-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2105513254-4">[</span><span·class="p"·data-group-id="2105513254-5">{</span><sp[·...·truncated·by·diffoscope;·len:·418,·SHA:·73d1cca75da5e823a46d61e9972dd60ee220c49898c04bd85318f7348682da7d·...·]-4">]</span><span·class="w">203 </span><span·class="nf">messages_list</span><span·class="p"·data-group-id="3946638873-3">(</span><span·class="p"·data-group-id="3946638873-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3946638873-4">[</span><span·class="p"·data-group-id="3946638873-5">{</span><sp[·...·truncated·by·diffoscope;·len:·418,·SHA:·e169535b3b3c9f1dfdccd4b906edda899e69124a6623f86a2e76e737e68bf079·...·]-4">]</span><span·class="w">
204 </span><span·class="nf">message_name</span><span·class="p"·data-group-id="2105513254-8">(</span><span·class="p"·data-group-id="2105513254-8">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="2105513254-9">(</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·556daed4ec5005a24e8509f0ec6b22faa8c5c4b010ecbbf549c032c918736370·...·]-9">)</span><span·class="w">204 </span><span·class="nf">message_name</span><span·class="p"·data-group-id="3946638873-8">(</span><span·class="p"·data-group-id="3946638873-8">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="3946638873-9">(</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·32c997706f9f3ea93f45bd4ee27f19cc17110179becb062cb0c71aa0378559e5·...·]-9">)</span><span·class="w">
205 </span><span·class="nf">message</span><span·class="p"·data-group-id="2105513254-10">(</span><span·class="p"·data-group-id="2105513254-10">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="2105513254-11">(</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·0613c49cf5b517b3cffeacf850f160c07308814f2c16988fc0080c369186a7b4·...·]-11">)</span></code></pre><p>The·codec·name·is·the·name·of·the·codec·with·which·all·messages·in·the205 </span><span·class="nf">message</span><span·class="p"·data-group-id="3946638873-10">(</span><span·class="p"·data-group-id="3946638873-10">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="3946638873-11">(</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·af39de566b10cc5040f49bf0f11b5613a353c7ca25c7a739e864e5a31eadde65·...·]-11">)</span></code></pre><p>The·codec·name·is·the·name·of·the·codec·with·which·all·messages·in·the
206 <code·class="inline">message_list()</code>·has·been·encoded.</p><p>This·file·can·be·<code·class="inline">exported</code>·to·a·file·structure·by·calling·the206 <code·class="inline">message_list()</code>·has·been·encoded.</p><p>This·file·can·be·<code·class="inline">exported</code>·to·a·file·structure·by·calling·the
207 <a·href="megaco_codec_transform.html#export_messages">export_messages</a>·function.·This·can207 <a·href="megaco_codec_transform.html#export_messages">export_messages</a>·function.·This·can
208 be·usefull·if·a·measurement·shall·be·done·with·an·external·tool.·Exporting·the208 be·usefull·if·a·measurement·shall·be·done·with·an·external·tool.·Exporting·the
209 messages·creates·a·directory·tree·with·the·following·structure:</p><pre><code·class="text">&lt;message·package&gt;/pretty/&lt;message-files&gt;209 messages·creates·a·directory·tree·with·the·following·structure:</p><pre><code·class="text">&lt;message·package&gt;/pretty/&lt;message-files&gt;
210 ··················compact/210 ··················compact/
211 ··················per/211 ··················per/
212 ··················ber/&lt;message-files&gt;212 ··················ber/&lt;message-files&gt;
Offset 262, 15 lines modifiedOffset 262, 15 lines modified
262 ······<p·class="built-using">262 ······<p·class="built-using">
263 ········Built·using263 ········Built·using
264 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the264 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
265 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>265 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
266 ······</p>266 ······</p>
267 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>267 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
268 ····</footer>268 ····</footer>
269 ··</div>269 ··</div>
270 </main>270 </main>
271 </div>271 </div>
272 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>272 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
273 <script>273 <script>
274 ··document.addEventListener("DOMContentLoaded",·function·()·{274 ··document.addEventListener("DOMContentLoaded",·function·()·{
812 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_digit_map.html
    
Offset 504, 15 lines modifiedOffset 504, 15 lines modified
504 ······<p·class="built-using">504 ······<p·class="built-using">
505 ········Built·using505 ········Built·using
506 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the506 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
507 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>507 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
508 ······</p>508 ······</p>
509 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>509 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
510 ····</footer>510 ····</footer>
511 ··</div>511 ··</div>
512 </main>512 </main>
513 </div>513 </div>
514 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>514 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
515 <script>515 <script>
516 ··document.addEventListener("DOMContentLoaded",·function·()·{516 ··document.addEventListener("DOMContentLoaded",·function·()·{
660 B
html2text {}
Max HTML report size reached
1.62 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_edist_compress.html
    
Offset 277, 15 lines modifiedOffset 277, 15 lines modified
277 ······<p·class="built-using">277 ······<p·class="built-using">
278 ········Built·using278 ········Built·using
279 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the279 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
280 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>280 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
281 ······</p>281 ······</p>
282 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>282 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
283 ····</footer>283 ····</footer>
284 ··</div>284 ··</div>
285 </main>285 </main>
286 </div>286 </div>
287 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>287 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
288 <script>288 <script>
289 ··document.addEventListener("DOMContentLoaded",·function·()·{289 ··document.addEventListener("DOMContentLoaded",·function·()·{
793 B
html2text {}
Max HTML report size reached
23.1 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_encode.html
    
Offset 170, 67 lines modifiedOffset 170, 67 lines modified
170 ···························}170 ···························}
171 ···················}171 ···················}
172 ···········}172 ···········}
173 ···}</code></pre><p>Then·the·compact·version·without·indentation·and·with·short·keywords:</p><pre><code·class="text">173 ···}</code></pre><p>Then·the·compact·version·without·indentation·and·with·short·keywords:</p><pre><code·class="text">
174 ···!/1·[124.124.124.222]174 ···!/1·[124.124.124.222]
175 ···T=9998{C=-{SC=ROOT{SV{MT=RS,AD=55555,PF=ResGW/1,RE=&quot;901·Cold·Boot&quot;}}}}</code></pre><p>And·the·programmers·view·of·the·same·message.·First·a·list·of·ActionRequest175 ···T=9998{C=-{SC=ROOT{SV{MT=RS,AD=55555,PF=ResGW/1,RE=&quot;901·Cold·Boot&quot;}}}}</code></pre><p>And·the·programmers·view·of·the·same·message.·First·a·list·of·ActionRequest
176 records·are·constructed·and·then·it·is·sent·with·one·of·the·send·functions·in176 records·are·constructed·and·then·it·is·sent·with·one·of·the·send·functions·in
177 the·API:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="n">Prof</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ServiceChangeProfile&#39;</span><span·class="p"·data-group-id="8926994353-1">{</span><span·class="ss">profileName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;resgw&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">version</span><span·clas[·...·truncated·by·diffoscope;·len:·128,·SHA:·52567530663a3895ce96be34ef854fe9541656c10a4ad8ccc8bdd58d764d2f2e·...·]-1">}</span><span·class="p">,</span><span·class="w">177 the·API:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="n">Prof</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ServiceChangeProfile&#39;</span><span·class="p"·data-group-id="8946286700-1">{</span><span·class="ss">profileName</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;resgw&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">version</span><span·clas[·...·truncated·by·diffoscope;·len:·128,·SHA:·8f1cae11566c5af036f40c68de76bc0af0534e8bed006b481df4f4ac4286b12e·...·]-1">}</span><span·class="p">,</span><span·class="w">
178 ··</span><span·class="n">Parm</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ServiceChangeParm&#39;</span><span·class="p"·data-group-id="8926994353-2">{</span><span·class="ss">serviceChangeMethod</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">restart</span><span·class="p">,</span><span·class="w">178 ··</span><span·class="n">Parm</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ServiceChangeParm&#39;</span><span·class="p"·data-group-id="8946286700-2">{</span><span·class="ss">serviceChangeMethod</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">restart</span><span·class="p">,</span><span·class="w">
179 ······························</span><span·class="ss">serviceChangeAddress</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8926994353-3">{</span><span·class="ss">portNumber</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">55555</span><span·class="p"·data-group-id="8926994353-3">}</span><span·class="p">,</span><span·class="w">179 ······························</span><span·class="ss">serviceChangeAddress</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8946286700-3">{</span><span·class="ss">portNumber</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">55555</span><span·class="p"·data-group-id="8946286700-3">}</span><span·class="p">,</span><span·class="w">
180 ······························</span><span·class="ss">serviceChangeReason</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;901·Cold·Boot&quot;</span><span·class="p">,</span><span·class="w">180 ······························</span><span·class="ss">serviceChangeReason</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;901·Cold·Boot&quot;</span><span·class="p">,</span><span·class="w">
181 ······························</span><span·class="ss">serviceChangeProfile</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Prof</span><span·class="p"·data-group-id="8926994353-2">}</span><span·class="p">,</span><span·class="w">181 ······························</span><span·class="ss">serviceChangeProfile</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Prof</span><span·class="p"·data-group-id="8946286700-2">}</span><span·class="p">,</span><span·class="w">
182 ··</span><span·class="n">Req</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ServiceChangeRequest&#39;</span><span·class="p"·data-group-id="8926994353-4">{</span><span·class="ss">terminationID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8926994353-5">[</span><span·class="o">?</span><span·class="ss">megaco_root_termination_id</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·b89854e687030881dab22165fde376f7dfc42cfcd99caf5ac6849bf6c719e8fd·...·]-5">]</span><span·class="p">,</span><span·class="w">182 ··</span><span·class="n">Req</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ServiceChangeRequest&#39;</span><span·class="p"·data-group-id="8946286700-4">{</span><span·class="ss">terminationID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8946286700-5">[</span><span·class="o">?</span><span·class="ss">megaco_root_termination_id</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·04af729ebdf1b7104ef132adecdc75849c135282b489e04f89fed5e1cfb1f29a·...·]-5">]</span><span·class="p">,</span><span·class="w">
183 ································</span><span·class="ss">serviceChangeParms</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Parm</span><span·class="p"·data-group-id="8926994353-4">}</span><span·class="p">,</span><span·class="w">183 ································</span><span·class="ss">serviceChangeParms</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Parm</span><span·class="p"·data-group-id="8946286700-4">}</span><span·class="p">,</span><span·class="w">
184 ··</span><span·class="n">Actions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8926994353-6">[</span><span·class="o">#</span><span·class="ss">&#39;ActionRequest&#39;</span><span·class="p"·data-group-id="8926994353-7">{</span><span·class="ss">contextId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">megaco_null_context_id</span><span·class="p">,</span><span·class="w">184 ··</span><span·class="n">Actions</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8946286700-6">[</span><span·class="o">#</span><span·class="ss">&#39;ActionRequest&#39;</span><span·class="p"·data-group-id="8946286700-7">{</span><span·class="ss">contextId</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">megaco_null_context_id</span><span·class="p">,</span><span·class="w">
185 ······························</span><span·class="ss">commandRequests</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8926994353-8">{</span><span·class="ss">serviceChangeReq</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="8926994353-8">}</span><span·class="p"·data-group-id="8926994353-7">}</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·1f479dc7618aaa19c3160c468e0917bcb9b7b6d48d1922ebfae338f292caa89e·...·]-6">]</span><span·class="p">,</span><span·class="w">185 ······························</span><span·class="ss">commandRequests</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8946286700-8">{</span><span·class="ss">serviceChangeReq</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Req</span><span·class="p"·data-group-id="8946286700-8">}</span><span·class="p"·data-group-id="8946286700-7">}</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·aa96ce0790af9f22a8dd7f86d5584c2600d80df6a01e4a83ced9d7e60d27c926·...·]-6">]</span><span·class="p">,</span><span·class="w">
186 ··</span><span·class="nc">megaco</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="8926994353-9">(</span><span·class="n">ConnHandle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Actions</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="8926994353-9">)</[·...·truncated·by·diffoscope;·len:·215,·SHA:·5db6fe36a38e078c0e5d124d8fda62b1b797f841744badd3afdf61306871afc6·...·]-1">{</span><span·class="ss">&#39;MegacoMessage&#39;</span><span·class="p">,</span><span·class="w">186 ··</span><span·class="nc">megaco</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="8946286700-9">(</span><span·class="n">ConnHandle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Actions</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="8946286700-9">)</[·...·truncated·by·diffoscope;·len:·215,·SHA:·72b55fe59ec4a4dfb21313a640f32607312ddd585c3f4f55b3ba34b8f523a739·...·]-1">{</span><span·class="ss">&#39;MegacoMessage&#39;</span><span·class="p">,</span><span·class="w">
187 ···</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">187 ···</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">
188 ···</span><span·class="p"·data-group-id="8574973120-2">{</span><span·class="ss">&#39;Message&#39;</span><span·class="p">,</span><span·class="w">188 ···</span><span·class="p"·data-group-id="0936924642-2">{</span><span·class="ss">&#39;Message&#39;</span><span·class="p">,</span><span·class="w">
189 ····</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">189 ····</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
190 ····</span><span·class="p"·data-group-id="8574973120-3">{</span><span·class="ss">ip4Address</span><span·class="p">,</span><span·class="p"·data-group-id="8574973120-4">{</span><span·class="ss">&#39;IP4Address&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·433,·SHA:·5e318baa65ca1bd40c32511825cacc1df9cf852b2f741ecfb37a441598bb7771·...·]-3">}</span><span·class="p">,</span><span·class="w">190 ····</span><span·class="p"·data-group-id="0936924642-3">{</span><span·class="ss">ip4Address</span><span·class="p">,</span><span·class="p"·data-group-id="0936924642-4">{</span><span·class="ss">&#39;IP4Address&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·433,·SHA:·2c6dd38cf4c45576337504ab5e4967b6f9a282be365a7b7d915ffe1ee226e16c·...·]-3">}</span><span·class="p">,</span><span·class="w">
191 ····</span><span·class="p"·data-group-id="8574973120-6">{</span><span·class="ss">transactions</span><span·class="p">,</span><span·class="w">191 ····</span><span·class="p"·data-group-id="0936924642-6">{</span><span·class="ss">transactions</span><span·class="p">,</span><span·class="w">
192 ·····</span><span·class="p"·data-group-id="8574973120-7">[</span><span·class="w">192 ·····</span><span·class="p"·data-group-id="0936924642-7">[</span><span·class="w">
193 ······</span><span·class="p"·data-group-id="8574973120-8">{</span><span·class="ss">transactionRequest</span><span·class="p">,</span><span·class="w">193 ······</span><span·class="p"·data-group-id="0936924642-8">{</span><span·class="ss">transactionRequest</span><span·class="p">,</span><span·class="w">
194 ·······</span><span·class="p"·data-group-id="8574973120-9">{</span><span·class="ss">&#39;TransactionRequest&#39;</span><span·class="p">,</span><span·class="w">194 ·······</span><span·class="p"·data-group-id="0936924642-9">{</span><span·class="ss">&#39;TransactionRequest&#39;</span><span·class="p">,</span><span·class="w">
195 ·········</span><span·class="mi">9998</span><span·class="p">,</span><span·class="w">195 ·········</span><span·class="mi">9998</span><span·class="p">,</span><span·class="w">
196 ·········</span><span·class="p"·data-group-id="8574973120-10">[</span><span·class="p"·data-group-id="8574973120-11">{</span><span·class="ss">&#39;ActionRequest&#39;</span><span·class="p">,</span><span·class="w">196 ·········</span><span·class="p"·data-group-id="0936924642-10">[</span><span·class="p"·data-group-id="0936924642-11">{</span><span·class="ss">&#39;ActionRequest&#39;</span><span·class="p">,</span><span·class="w">
197 ···········</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">197 ···········</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
198 ···········</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">198 ···········</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">
199 ···········</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">199 ···········</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">
200 ···········</span><span·class="p"·data-group-id="8574973120-12">[</span><span·class="w">200 ···········</span><span·class="p"·data-group-id="0936924642-12">[</span><span·class="w">
201 ············</span><span·class="p"·data-group-id="8574973120-13">{</span><span·class="ss">&#39;CommandRequest&#39;</span><span·class="p">,</span><span·class="w">201 ············</span><span·class="p"·data-group-id="0936924642-13">{</span><span·class="ss">&#39;CommandRequest&#39;</span><span·class="p">,</span><span·class="w">
202 ·············</span><span·class="p"·data-group-id="8574973120-14">{</span><span·class="ss">serviceChangeReq</span><span·class="p">,</span><span·class="w">202 ·············</span><span·class="p"·data-group-id="0936924642-14">{</span><span·class="ss">serviceChangeReq</span><span·class="p">,</span><span·class="w">
203 ··············</span><span·class="p"·data-group-id="8574973120-15">{</span><span·class="ss">&#39;ServiceChangeRequest&#39;</span><span·class="p">,</span><span·class="w">203 ··············</span><span·class="p"·data-group-id="0936924642-15">{</span><span·class="ss">&#39;ServiceChangeRequest&#39;</span><span·class="p">,</span><span·class="w">
204 ···············</span><span·class="p"·data-group-id="8574973120-16">[</span><span·class="w">204 ···············</span><span·class="p"·data-group-id="0936924642-16">[</span><span·class="w">
205 ················</span><span·class="p"·data-group-id="8574973120-17">{</span><span·class="ss">megaco_term_id</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8574973120-18">[</span><span·class="s">[·...·truncated·by·diffoscope;·len:·172,·SHA:·9fdd64a9b61e13c8df184bdcf5bd87d2bf11f23c9c2008342596ad4051566092·...·]-16">]</span><span·class="p">,</span><span·class="w">205 ················</span><span·class="p"·data-group-id="0936924642-17">{</span><span·class="ss">megaco_term_id</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0936924642-18">[</span><span·class="s">[·...·truncated·by·diffoscope;·len:·172,·SHA:·42dd40f3a46c3aceaa68d453a19cc6bb614e047cd68b9a04dbe7b97012e7df52·...·]-16">]</span><span·class="p">,</span><span·class="w">
206 ················</span><span·class="p"·data-group-id="8574973120-19">{</span><span·class="ss">&#39;ServiceChangeParm&#39;</span><span·class="p">,</span><span·class="w">206 ················</span><span·class="p"·data-group-id="0936924642-19">{</span><span·class="ss">&#39;ServiceChangeParm&#39;</span><span·class="p">,</span><span·class="w">
207 ·················</span><span·class="ss">restart</span><span·class="p">,</span><span·class="w">207 ·················</span><span·class="ss">restart</span><span·class="p">,</span><span·class="w">
208 ·················</span><span·class="p"·data-group-id="8574973120-20">{</span><span·class="ss">portNumber</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">55555</span><span·class="p"·data-group-id="8574973120-20">}</span><span·class="p">,</span><span·class="w">208 ·················</span><span·class="p"·data-group-id="0936924642-20">{</span><span·class="ss">portNumber</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">55555</span><span·class="p"·data-group-id="0936924642-20">}</span><span·class="p">,</span><span·class="w">
209 ·················</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">209 ·················</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">
210 ·················</span><span·class="p"·data-group-id="8574973120-21">{</span><span·class="ss">&#39;ServiceChangeProfile&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;resgw&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">version</span><span·class=[·...·truncated·by·diffoscope;·len:·126,·SHA:·9afbe1220c672fa68fee522fef9d7614dee72d2e286cfd4fd2058670532517ff·...·]-21">}</span><span·class="p">,</span><span·class="w">210 ·················</span><span·class="p"·data-group-id="0936924642-21">{</span><span·class="ss">&#39;ServiceChangeProfile&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;resgw&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">version</span><span·class=[·...·truncated·by·diffoscope;·len:·126,·SHA:·aa8732e9b78016eb66790314fc6b6629e8695f35154a3b3d33e2739fd8734cbd·...·]-21">}</span><span·class="p">,</span><span·class="w">
211 ·················</span><span·class="s">&quot;901·MG·Cold·Boot&quot;</span><span·class="p">,</span><span·class="w">211 ·················</span><span·class="s">&quot;901·MG·Cold·Boot&quot;</span><span·class="p">,</span><span·class="w">
212 ·················</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">212 ·················</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">
213 ·················</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">213 ·················</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">
214 ·················</span><span·class="ss">asn1_NOVALUE</span><span·class="w">214 ·················</span><span·class="ss">asn1_NOVALUE</span><span·class="w">
215 ················</span><span·class="p"·data-group-id="8574973120-19">}</span><span·class="w">215 ················</span><span·class="p"·data-group-id="0936924642-19">}</span><span·class="w">
216 ··············</span><span·class="p"·data-group-id="8574973120-15">}</span><span·class="w">216 ··············</span><span·class="p"·data-group-id="0936924642-15">}</span><span·class="w">
217 ·············</span><span·class="p"·data-group-id="8574973120-14">}</span><span·class="p">,</span><span·class="w">217 ·············</span><span·class="p"·data-group-id="0936924642-14">}</span><span·class="p">,</span><span·class="w">
218 ·············</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">218 ·············</span><span·class="ss">asn1_NOVALUE</span><span·class="p">,</span><span·class="w">
219 ·············</span><span·class="ss">asn1_NOVALUE</span><span·class="w">219 ·············</span><span·class="ss">asn1_NOVALUE</span><span·class="w">
220 ············</span><span·class="p"·data-group-id="8574973120-13">}</span><span·class="w">220 ············</span><span·class="p"·data-group-id="0936924642-13">}</span><span·class="w">
221 ···········</span><span·class="p"·data-group-id="8574973120-12">]</span><span·class="w">221 ···········</span><span·class="p"·data-group-id="0936924642-12">]</span><span·class="w">
222 ··········</span><span·class="p"·data-group-id="8574973120-11">}</span><span·class="w">222 ··········</span><span·class="p"·data-group-id="0936924642-11">}</span><span·class="w">
223 ·········</span><span·class="p"·data-group-id="8574973120-10">]</span><span·class="w">223 ·········</span><span·class="p"·data-group-id="0936924642-10">]</span><span·class="w">
224 ·······</span><span·class="p"·data-group-id="8574973120-9">}</span><span·class="w">224 ·······</span><span·class="p"·data-group-id="0936924642-9">}</span><span·class="w">
225 ······</span><span·class="p"·data-group-id="8574973120-8">}</span><span·class="w">225 ······</span><span·class="p"·data-group-id="0936924642-8">}</span><span·class="w">
226 ·····</span><span·class="p"·data-group-id="8574973120-7">]</span><span·class="w">226 ·····</span><span·class="p"·data-group-id="0936924642-7">]</span><span·class="w">
227 ····</span><span·class="p"·data-group-id="8574973120-6">}</span><span·class="w">227 ····</span><span·class="p"·data-group-id="0936924642-6">}</span><span·class="w">
228 ···</span><span·class="p"·data-group-id="8574973120-2">}</span><span·class="w">228 ···</span><span·class="p"·data-group-id="0936924642-2">}</span><span·class="w">
229 ··</span><span·class="p"·data-group-id="8574973120-1">}</span></code></pre><p>The·following·encoding·modules·are·provided:</p><ul><li>megaco_pretty_text_encoder·-·encodes·messages·into·pretty·text·format,·decodes229 ··</span><span·class="p"·data-group-id="0936924642-1">}</span></code></pre><p>The·following·encoding·modules·are·provided:</p><ul><li>megaco_pretty_text_encoder·-·encodes·messages·into·pretty·text·format,·decodes
230 both·pretty·as·well·as·compact·text.</li><li>megaco_compact_text_encoder·-·encodes·messages·into·compact·text·format,230 both·pretty·as·well·as·compact·text.</li><li>megaco_compact_text_encoder·-·encodes·messages·into·compact·text·format,
231 decodes·both·pretty·as·well·as·compact·text.</li><li>megaco_binary_encoder·-·encode/decode·ASN.1·BER·messages.·This·encoder231 decodes·both·pretty·as·well·as·compact·text.</li><li>megaco_binary_encoder·-·encode/decode·ASN.1·BER·messages.·This·encoder
232 implements·the·fastest·of·the·BER·encoders/decoders.·Recommended·binary·codec.</li><li>megaco_ber_encoder·-·encode/decode·ASN.1·BER·messages.</li><li>megaco_per_encoder·-·encode/decode·ASN.1·PER·messages.·N.B.·that·this·format232 implements·the·fastest·of·the·BER·encoders/decoders.·Recommended·binary·codec.</li><li>megaco_ber_encoder·-·encode/decode·ASN.1·BER·messages.</li><li>megaco_per_encoder·-·encode/decode·ASN.1·PER·messages.·N.B.·that·this·format
233 is·not·included·in·the·Megaco·standard.</li><li>megaco_erl_dist_encoder·-·encodes·messages·into·Erlangs·distribution·format.233 is·not·included·in·the·Megaco·standard.</li><li>megaco_erl_dist_encoder·-·encodes·messages·into·Erlangs·distribution·format.
234 It·is·rather·verbose·but·encoding·and·decoding·is·blinding·fast.·N.B.·that234 It·is·rather·verbose·but·encoding·and·decoding·is·blinding·fast.·N.B.·that
235 this·format·is·not·included·in·the·Megaco·standard.</li></ul><p><a·href=""·id="erl_dist_config"></a></p><h2·id="configuration-of-erlang-distribution-encoding-module"·class="section-heading">235 this·format·is·not·included·in·the·Megaco·standard.</li></ul><p><a·href=""·id="erl_dist_config"></a></p><h2·id="configuration-of-erlang-distribution-encoding-module"·class="section-heading">
236 ··<a·href="#configuration-of-erlang-distribution-encoding-module"·class="hover-link">236 ··<a·href="#configuration-of-erlang-distribution-encoding-module"·class="hover-link">
Offset 353, 15 lines modifiedOffset 353, 15 lines modified
353 ······<p·class="built-using">353 ······<p·class="built-using">
354 ········Built·using354 ········Built·using
355 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the355 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
356 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>356 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
357 ······</p>357 ······</p>
358 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>358 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
359 ····</footer>359 ····</footer>
360 ··</div>360 ··</div>
361 </main>361 </main>
362 </div>362 </div>
363 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>363 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
364 <script>364 <script>
365 ··document.addEventListener("DOMContentLoaded",·function·()·{365 ··document.addEventListener("DOMContentLoaded",·function·()·{
767 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_encoder.html
    
Offset 1400, 15 lines modifiedOffset 1400, 15 lines modified
1400 ······<p·class="built-using">1400 ······<p·class="built-using">
1401 ········Built·using1401 ········Built·using
1402 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1402 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1403 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1403 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1404 ······</p>1404 ······</p>
1405 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1405 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1406 ····</footer>1406 ····</footer>
1407 ··</div>1407 ··</div>
1408 </main>1408 </main>
1409 </div>1409 </div>
1410 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1410 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1411 <script>1411 <script>
1412 ··document.addEventListener("DOMContentLoaded",·function·()·{1412 ··document.addEventListener("DOMContentLoaded",·function·()·{
680 B
html2text {}
Max HTML report size reached
6.63 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_examples.html
    
Offset 155, 18 lines modifiedOffset 155, 18 lines modified
155 synchronously·for·a·reply.</p><p>After·this·initial·service·change·message·the·connection·between·the·MG·and·MGC155 synchronously·for·a·reply.</p><p>After·this·initial·service·change·message·the·connection·between·the·MG·and·MGC
156 is·fully·established·and·supervised.</p><p>Assuming·that·the·MGC·is·started·on·the·local·host,·four·different·MG's,·using156 is·fully·established·and·supervised.</p><p>Assuming·that·the·MGC·is·started·on·the·local·host,·four·different·MG's,·using
157 text·over·TCP/IP,·binary·over·TCP/IP,·text·over·UDP/IP·and·binary·over·UDP/IP157 text·over·TCP/IP,·binary·over·TCP/IP,·text·over·UDP/IP·and·binary·over·UDP/IP
158 may·be·started·on·the·same·Erlang·node·with:</p><pre><code·class="text">······cd·megaco/examples/simple158 may·be·started·on·the·same·Erlang·node·with:</p><pre><code·class="text">······cd·megaco/examples/simple
159 ······erl·-pa·../../../megaco/ebin·-s·megaco_filter·-s·megaco159 ······erl·-pa·../../../megaco/ebin·-s·megaco_filter·-s·megaco
160 ······megaco_simple_mg:start().</code></pre><p>or·simply·'gmake·mg'.</p><p>If·you·&quot;only&quot;·want·to·start·a·single·MG·which·tries·to·connect·an·MG·on·a·host160 ······megaco_simple_mg:start().</code></pre><p>or·simply·'gmake·mg'.</p><p>If·you·&quot;only&quot;·want·to·start·a·single·MG·which·tries·to·connect·an·MG·on·a·host
161 named·&quot;baidarka&quot;,·you·may·use·one·of·these·functions·(instead·of·the161 named·&quot;baidarka&quot;,·you·may·use·one·of·these·functions·(instead·of·the
162 megaco_simple_mg:start/0·above):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="nc">megaco_simple_mg</span><span·class="p">:</span><span·class="nf">start_tcp_text</span><span·class="p"·data-group-id="2945865515-1">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2945865515-2">[</span><span·class="p"·data-group-id="2945865515-2">]</span><span·class="p"·data-group-id="294586[·...·truncated·by·diffoscope;·len:·4,·SHA:·eacc30a21d89f388173157d87209b6dbe354af1635fb7838b99db220fdbdfb2f·...·]-1">)</span><span·class="p">.</span><span·class="w">162 megaco_simple_mg:start/0·above):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="nc">megaco_simple_mg</span><span·class="p">:</span><span·class="nf">start_tcp_text</span><span·class="p"·data-group-id="0026701130-1">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0026701130-2">[</span><span·class="p"·data-group-id="0026701130-2">]</span><span·class="p"·data-group-id="002670[·...·truncated·by·diffoscope;·len:·4,·SHA:·78c0781a0697b8212d21711580c2c60616f80ab66ec717ecdbb8200be03407f8·...·]-1">)</span><span·class="p">.</span><span·class="w">
163 ······</span><span·class="nc">megaco_simple_mg</span><span·class="p">:</span><span·class="nf">start_tcp_binary</span><span·class="p"·data-group-id="2945865515-3">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2945865515-4">[</span><span·class="p"·data-group-id="2945865515-4">]</span><span·class="p"·data-group-id="294586[·...·truncated·by·diffoscope;·len:·4,·SHA:·eacc30a21d89f388173157d87209b6dbe354af1635fb7838b99db220fdbdfb2f·...·]-3">)</span><span·class="p">.</span><span·class="w">163 ······</span><span·class="nc">megaco_simple_mg</span><span·class="p">:</span><span·class="nf">start_tcp_binary</span><span·class="p"·data-group-id="0026701130-3">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0026701130-4">[</span><span·class="p"·data-group-id="0026701130-4">]</span><span·class="p"·data-group-id="002670[·...·truncated·by·diffoscope;·len:·4,·SHA:·78c0781a0697b8212d21711580c2c60616f80ab66ec717ecdbb8200be03407f8·...·]-3">)</span><span·class="p">.</span><span·class="w">
164 ······</span><span·class="nc">megaco_simple_mg</span><span·class="p">:</span><span·class="nf">start_udp_text</span><span·class="p"·data-group-id="2945865515-5">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2945865515-6">[</span><span·class="p"·data-group-id="2945865515-6">]</span><span·class="p"·data-group-id="294586[·...·truncated·by·diffoscope;·len:·4,·SHA:·eacc30a21d89f388173157d87209b6dbe354af1635fb7838b99db220fdbdfb2f·...·]-5">)</span><span·class="p">.</span><span·class="w">164 ······</span><span·class="nc">megaco_simple_mg</span><span·class="p">:</span><span·class="nf">start_udp_text</span><span·class="p"·data-group-id="0026701130-5">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0026701130-6">[</span><span·class="p"·data-group-id="0026701130-6">]</span><span·class="p"·data-group-id="002670[·...·truncated·by·diffoscope;·len:·4,·SHA:·78c0781a0697b8212d21711580c2c60616f80ab66ec717ecdbb8200be03407f8·...·]-5">)</span><span·class="p">.</span><span·class="w">
165 ······</span><span·class="nc">megaco_simple_mg</span><span·class="p">:</span><span·class="nf">start_udp_binary</span><span·class="p"·data-group-id="2945865515-7">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2945865515-8">[</span><span·class="p"·data-group-id="2945865515-8">]</span><span·class="p"·data-group-id="294586[·...·truncated·by·diffoscope;·len:·4,·SHA:·eacc30a21d89f388173157d87209b6dbe354af1635fb7838b99db220fdbdfb2f·...·]-7">)</span><span·class="p">.</span></code></pre><p>The·-s·megaco_filter·option·to·erl·implies,·the·event·tracing·mechanism·to·be165 ······</span><span·class="nc">megaco_simple_mg</span><span·class="p">:</span><span·class="nf">start_udp_binary</span><span·class="p"·data-group-id="0026701130-7">(</span><span·class="s">&quot;baidarka&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0026701130-8">[</span><span·class="p"·data-group-id="0026701130-8">]</span><span·class="p"·data-group-id="002670[·...·truncated·by·diffoscope;·len:·4,·SHA:·78c0781a0697b8212d21711580c2c60616f80ab66ec717ecdbb8200be03407f8·...·]-7">)</span><span·class="p">.</span></code></pre><p>The·-s·megaco_filter·option·to·erl·implies,·the·event·tracing·mechanism·to·be
166 enabled·and·an·interactive·sequence·chart·tool·to·be·started.·This·may·be·quite166 enabled·and·an·interactive·sequence·chart·tool·to·be·started.·This·may·be·quite
167 useful·in·order·to·visualize·how·your·MG·interacts·with·the·Megaco/H.248167 useful·in·order·to·visualize·how·your·MG·interacts·with·the·Megaco/H.248
168 protocol·stack.</p><p>The·event·traces·may·alternatively·be·directed·to·a·file·for·later·analyze.·By168 protocol·stack.</p><p>The·event·traces·may·alternatively·be·directed·to·a·file·for·later·analyze.·By
169 default·the·event·tracing·is·disabled,·but·it·may·dynamically·be·enabled·without169 default·the·event·tracing·is·disabled,·but·it·may·dynamically·be·enabled·without
170 any·need·for·re-compilation·of·the·code.</p>170 any·need·for·re-compilation·of·the·code.</p>
171 </div>171 </div>
  
Offset 214, 15 lines modifiedOffset 214, 15 lines modified
214 ······<p·class="built-using">214 ······<p·class="built-using">
215 ········Built·using215 ········Built·using
216 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the216 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
217 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>217 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
218 ······</p>218 ······</p>
219 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>219 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
220 ····</footer>220 ····</footer>
221 ··</div>221 ··</div>
222 </main>222 </main>
223 </div>223 </div>
224 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>224 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
225 <script>225 <script>
226 ··document.addEventListener("DOMContentLoaded",·function·()·{226 ··document.addEventListener("DOMContentLoaded",·function·()·{
747 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_flex_scanner.html
    
Offset 447, 15 lines modifiedOffset 447, 15 lines modified
447 ······<p·class="built-using">447 ······<p·class="built-using">
448 ········Built·using448 ········Built·using
449 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the449 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
450 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>450 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
451 ······</p>451 ······</p>
452 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>452 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
453 ····</footer>453 ····</footer>
454 ··</div>454 ··</div>
455 </main>455 </main>
456 </div>456 </div>
457 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>457 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
458 <script>458 <script>
459 ··document.addEventListener("DOMContentLoaded",·function·()·{459 ··document.addEventListener("DOMContentLoaded",·function·()·{
729 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_intro.html
    
Offset 210, 15 lines modifiedOffset 210, 15 lines modified
210 ······<p·class="built-using">210 ······<p·class="built-using">
211 ········Built·using211 ········Built·using
212 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the212 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
213 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>213 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
214 ······</p>214 ······</p>
215 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>215 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
216 ····</footer>216 ····</footer>
217 ··</div>217 ··</div>
218 </main>218 </main>
219 </div>219 </div>
220 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>220 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
221 <script>221 <script>
222 ··document.addEventListener("DOMContentLoaded",·function·()·{222 ··document.addEventListener("DOMContentLoaded",·function·()·{
699 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_mib.html
    
Offset 202, 15 lines modifiedOffset 202, 15 lines modified
202 ······<p·class="built-using">202 ······<p·class="built-using">
203 ········Built·using203 ········Built·using
204 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the204 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
205 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>205 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
206 ······</p>206 ······</p>
207 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>207 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
208 ····</footer>208 ····</footer>
209 ··</div>209 ··</div>
210 </main>210 </main>
211 </div>211 </div>
212 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>212 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
213 <script>213 <script>
214 ··document.addEventListener("DOMContentLoaded",·function·()·{214 ··document.addEventListener("DOMContentLoaded",·function·()·{
756 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_performance.html
    
Offset 253, 15 lines modifiedOffset 253, 15 lines modified
253 ······<p·class="built-using">253 ······<p·class="built-using">
254 ········Built·using254 ········Built·using
255 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the255 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
256 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>256 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
257 ······</p>257 ······</p>
258 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>258 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
259 ····</footer>259 ····</footer>
260 ··</div>260 ··</div>
261 </main>261 </main>
262 </div>262 </div>
263 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>263 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
264 <script>264 <script>
265 ··document.addEventListener("DOMContentLoaded",·function·()·{265 ··document.addEventListener("DOMContentLoaded",·function·()·{
694 B
html2text {}
Max HTML report size reached
1.64 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_run.html
    
Offset 331, 15 lines modifiedOffset 331, 15 lines modified
331 ······<p·class="built-using">331 ······<p·class="built-using">
332 ········Built·using332 ········Built·using
333 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the333 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
334 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>334 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
335 ······</p>335 ······</p>
336 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>336 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
337 ····</footer>337 ····</footer>
338 ··</div>338 ··</div>
339 </main>339 </main>
340 </div>340 </div>
341 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>341 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
342 <script>342 <script>
343 ··document.addEventListener("DOMContentLoaded",·function·()·{343 ··document.addEventListener("DOMContentLoaded",·function·()·{
839 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_sdp.html
    
Offset 1236, 15 lines modifiedOffset 1236, 15 lines modified
1236 ······<p·class="built-using">1236 ······<p·class="built-using">
1237 ········Built·using1237 ········Built·using
1238 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1238 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1239 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1239 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1240 ······</p>1240 ······</p>
1241 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1241 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1242 ····</footer>1242 ····</footer>
1243 ··</div>1243 ··</div>
1244 </main>1244 </main>
1245 </div>1245 </div>
1246 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1246 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1247 <script>1247 <script>
1248 ··document.addEventListener("DOMContentLoaded",·function·()·{1248 ··document.addEventListener("DOMContentLoaded",·function·()·{
576 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_tcp.html
    
Offset 857, 15 lines modifiedOffset 857, 15 lines modified
857 ······<p·class="built-using">857 ······<p·class="built-using">
858 ········Built·using858 ········Built·using
859 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the859 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
860 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>860 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
861 ······</p>861 ······</p>
862 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>862 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
863 ····</footer>863 ····</footer>
864 ··</div>864 ··</div>
865 </main>865 </main>
866 </div>866 </div>
867 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>867 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
868 <script>868 <script>
869 ··document.addEventListener("DOMContentLoaded",·function·()·{869 ··document.addEventListener("DOMContentLoaded",·function·()·{
628 B
html2text {}
Max HTML report size reached
1.64 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_transport.html
    
Offset 336, 15 lines modifiedOffset 336, 15 lines modified
336 ······<p·class="built-using">336 ······<p·class="built-using">
337 ········Built·using337 ········Built·using
338 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the338 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
339 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>339 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
340 ······</p>340 ······</p>
341 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>341 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
342 ····</footer>342 ····</footer>
343 ··</div>343 ··</div>
344 </main>344 </main>
345 </div>345 </div>
346 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>346 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
347 <script>347 <script>
348 ··document.addEventListener("DOMContentLoaded",·function·()·{348 ··document.addEventListener("DOMContentLoaded",·function·()·{
823 B
html2text {}
Max HTML report size reached
1.66 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_transport_mechanisms.html
    
Offset 187, 15 lines modifiedOffset 187, 15 lines modified
187 ······<p·class="built-using">187 ······<p·class="built-using">
188 ········Built·using188 ········Built·using
189 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the189 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
190 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>190 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
191 ······</p>191 ······</p>
192 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>192 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
193 ····</footer>193 ····</footer>
194 ··</div>194 ··</div>
195 </main>195 </main>
196 </div>196 </div>
197 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>197 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
198 <script>198 <script>
199 ··document.addEventListener("DOMContentLoaded",·function·()·{199 ··document.addEventListener("DOMContentLoaded",·function·()·{
825 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_udp.html
    
Offset 887, 15 lines modifiedOffset 887, 15 lines modified
887 ······<p·class="built-using">887 ······<p·class="built-using">
888 ········Built·using888 ········Built·using
889 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the889 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
890 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>890 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
891 ······</p>891 ······</p>
892 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>892 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
893 ····</footer>893 ····</footer>
894 ··</div>894 ··</div>
895 </main>895 </main>
896 </div>896 </div>
897 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>897 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
898 <script>898 <script>
899 ··document.addEventListener("DOMContentLoaded",·function·()·{899 ··document.addEventListener("DOMContentLoaded",·function·()·{
627 B
html2text {}
Max HTML report size reached
10.5 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/megaco_user.html
    
Offset 129, 29 lines modifiedOffset 129, 29 lines modified
  
129 ····<section·id="moduledoc">129 ····<section·id="moduledoc">
130 <p>Callback·module·for·users·of·the·Megaco·application</p><p>This·module·defines·the·callback·behaviour·of·Megaco·users.·A·megaco_user130 <p>Callback·module·for·users·of·the·Megaco·application</p><p>This·module·defines·the·callback·behaviour·of·Megaco·users.·A·megaco_user
131 compliant·callback·module·must·export·the·following·functions:</p><ul><li><a·href="megaco_user.html#connect">handle_connect/2,3</a></li><li><a·href="megaco_user.html#disconnect">handle_disconnect/3</a></li><li><a·href="megaco_user.html#syntax_error">handle_syntax_error/3,4</a></li><li><a·href="megaco_user.html#message_error">handle_message_error/3,4</a></li><li><a·href="megaco_user.html#trans_request">handle_trans_request/3,4</a></li><li><a·href="megaco_user.html#trans_long_request">handle_trans_long_request/3,4</a></li><li><a·href="megaco_user.html#trans_reply">handle_trans_reply/4,5</a></li><li><a·href="megaco_user.html#trans_ack">handle_trans_ack/4,5</a></li><li><a·href="megaco_user.html#unexpected_trans">handle_unexpected_trans/3,4</a></li><li><a·href="megaco_user.html#request_abort">handle_trans_request_abort/4,5</a></li><li><a·href="megaco_user.html#segment_reply">handle_segment_reply/5,6</a></li></ul><p>The·semantics·of·them·and·their·exact·signatures·are·explained·below.</p><p>The·<code·class="inline">user_args</code>·configuration·parameter·which·may·be·used·to·extend·the·argument131 compliant·callback·module·must·export·the·following·functions:</p><ul><li><a·href="megaco_user.html#connect">handle_connect/2,3</a></li><li><a·href="megaco_user.html#disconnect">handle_disconnect/3</a></li><li><a·href="megaco_user.html#syntax_error">handle_syntax_error/3,4</a></li><li><a·href="megaco_user.html#message_error">handle_message_error/3,4</a></li><li><a·href="megaco_user.html#trans_request">handle_trans_request/3,4</a></li><li><a·href="megaco_user.html#trans_long_request">handle_trans_long_request/3,4</a></li><li><a·href="megaco_user.html#trans_reply">handle_trans_reply/4,5</a></li><li><a·href="megaco_user.html#trans_ack">handle_trans_ack/4,5</a></li><li><a·href="megaco_user.html#unexpected_trans">handle_unexpected_trans/3,4</a></li><li><a·href="megaco_user.html#request_abort">handle_trans_request_abort/4,5</a></li><li><a·href="megaco_user.html#segment_reply">handle_segment_reply/5,6</a></li></ul><p>The·semantics·of·them·and·their·exact·signatures·are·explained·below.</p><p>The·<code·class="inline">user_args</code>·configuration·parameter·which·may·be·used·to·extend·the·argument
132 list·of·the·callback·functions.·For·example,·the·handle_connect·function·takes132 list·of·the·callback·functions.·For·example,·the·handle_connect·function·takes
133 by·default·two·arguments:</p><pre><code·class="text">········handle_connect(Handle,·Version)</code></pre><p>but·if·the·<code·class="inline">user_args</code>·parameter·is·set·to·a·longer·list,·such·as133 by·default·two·arguments:</p><pre><code·class="text">········handle_connect(Handle,·Version)</code></pre><p>but·if·the·<code·class="inline">user_args</code>·parameter·is·set·to·a·longer·list,·such·as
134 <code·class="inline">[SomePid,SomeTableRef]</code>,·the·callback·function·is·expected·to·have·these·(in134 <code·class="inline">[SomePid,SomeTableRef]</code>,·the·callback·function·is·expected·to·have·these·(in
135 this·case·two)·extra·arguments·last·in·the·argument·list:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nf">handle_connect</span><span·class="p"·data-group-id="0283862104-1">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Version</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SomePid</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·75,·SHA:·801a7622aec90434a161025ca15b74d64de0e81bc7a92f03480a72335674597c·...·]-1">)</span></code></pre><p><a·href=""·id="extra_argument"></a></p><blockquote><h4·class="info">Note</h4><p>Must·of·the·functions·below·has·an·optional·<code·class="inline">Extra</code>·argument·(e.g.135 this·case·two)·extra·arguments·last·in·the·argument·list:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="nf">handle_connect</span><span·class="p"·data-group-id="4390668606-1">(</span><span·class="n">Handle</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Version</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SomePid</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·75,·SHA:·76c7e9cc61b9eaae75fee780a684368d6e20a0a0d1ee9e8503316cfc53873501·...·]-1">)</span></code></pre><p><a·href=""·id="extra_argument"></a></p><blockquote><h4·class="info">Note</h4><p>Must·of·the·functions·below·has·an·optional·<code·class="inline">Extra</code>·argument·(e.g.
136 <a·href="megaco_user.html#unexpected_trans">handle_unexpected_trans/4</a>).·The·functions136 <a·href="megaco_user.html#unexpected_trans">handle_unexpected_trans/4</a>).·The·functions
137 which·takes·this·argument·will·be·called·if·and·only·if·one·of·the·functions137 which·takes·this·argument·will·be·called·if·and·only·if·one·of·the·functions
138 <a·href="megaco.html#receive_message">receive_message/5</a>·or138 <a·href="megaco.html#receive_message">receive_message/5</a>·or
139 <a·href="megaco.html#process_received_message">process_received_message/5</a>·was·called139 <a·href="megaco.html#process_received_message">process_received_message/5</a>·was·called
140 with·the·<code·class="inline">Extra</code>·argument·different·than·<code·class="inline">ignore_extra</code>.</p></blockquote><h2·id="module-data-types"·class="section-heading">140 with·the·<code·class="inline">Extra</code>·argument·different·than·<code·class="inline">ignore_extra</code>.</p></blockquote><h2·id="module-data-types"·class="section-heading">
141 ··<a·href="#module-data-types"·class="hover-link">141 ··<a·href="#module-data-types"·class="hover-link">
142 ····<i·class="ri-link-m"·aria-hidden="true"></i>142 ····<i·class="ri-link-m"·aria-hidden="true"></i>
143 ··</a>143 ··</a>
144 ··<span·class="text">DATA·TYPES</span>144 ··<span·class="text">DATA·TYPES</span>
145 </h2>145 </h2>
146 <pre><code·class="makeup·erlang"·translate="no"><span·class="nf">action_request</span><span·class="p"·data-group-id="0572628947-1">(</span><span·class="p"·data-group-id="0572628947-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ActionRequest&#39;</span><span·class="p"·data-group-id="0572628[·...·truncated·by·diffoscope;·len:·56,·SHA:·165578da3b9ef0d2587acea232adba5d89c2ab065f643e29b6608d1995528437·...·]-2">}</span><span·class="w">146 <pre><code·class="makeup·erlang"·translate="no"><span·class="nf">action_request</span><span·class="p"·data-group-id="5356507880-1">(</span><span·class="p"·data-group-id="5356507880-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ActionRequest&#39;</span><span·class="p"·data-group-id="5356507[·...·truncated·by·diffoscope;·len:·56,·SHA:·c78c1ba228ebd102454b00d06f5effa5c7855937da3c315b29b78624c29be05f·...·]-2">}</span><span·class="w">
147 </span><span·class="nf">action_reply</span><span·class="p"·data-group-id="0572628947-3">(</span><span·class="p"·data-group-id="0572628947-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ActionReply&#39;</span><span·class="p"·data-group-id="057262894[·...·truncated·by·diffoscope;·len:·54,·SHA:·4e8d26a151a2d065ee5ed2e3962b10b81b25862745d95765cf21ce10e6800f61·...·]-4">}</span><span·class="w">147 </span><span·class="nf">action_reply</span><span·class="p"·data-group-id="5356507880-3">(</span><span·class="p"·data-group-id="5356507880-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ActionReply&#39;</span><span·class="p"·data-group-id="535650788[·...·truncated·by·diffoscope;·len:·54,·SHA:·9301d0d9889db72e173c2c523eb09b749404fee6cdc19e4cecbf8337fafb7d4a·...·]-4">}</span><span·class="w">
148 </span><span·class="nf">error_desc</span><span·class="p"·data-group-id="0572628947-5">(</span><span·class="p"·data-group-id="0572628947-5">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ErrorDescriptor&#39;</span><span·class="p"·data-group-id="0572628947-6">{</span><span·class="p"·data-group-id="0572628947-6">}</span><span·class="w"> 
149 </span><span·class="nf">segment_no</span><span·class="p"·data-group-id="0572628947-7">(</span><span·class="p"·data-group-id="0572628947-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·654,·SHA:·79333dcbd129bd5d36eb63115c9bd2a04cd781f1ba851fe7eee8e11101d16cdd·...·]148 </span><span·class="nf">error_desc</span><span·class="p"·data-group-id="5356507880-5">(</span><span·class="p"·data-group-id="5356507880-5">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;ErrorDescriptor[·...·truncated·by·diffoscope;·len:·134,·SHA:·e3a8028a7a28defa0b340b4d6c28f0148c506aa53b6436c62b21b8abb8e84760·...·]
 149 </span><span·class="nf">segment_no</span><span·class="p"·data-group-id="5356507880-7">(</span><span·class="p"·data-group-id="5356507880-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="5356507880-8">(</span><span·class="p"·data-group-id="5356507880-8">)</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">conn_handle</span><span·class="p"·data-group-id="6137412264-1">(</span><span·class="p"·data-group-id="6137412264-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">megaco_conn_handle</span><span·class="p"·data-group-id="6137412264-2">{</span><span·class="p"·data-group-id="6137412264-2">}</span></code></pre><p>The·record·initially·returned·by·<code·class="inline">megaco:connect/4,5</code>.·It·identifies·a·&quot;virtual&quot;
150 connection·and·may·be·reused·after·a·reconnect·(disconnect·+·connect).</p><pre><code·class="text">protocol_version()·=·integer()</code></pre><p>Is·the·actual·protocol·version.·In·most·cases·the·protocol·version·is·retrieved150 connection·and·may·be·reused·after·a·reconnect·(disconnect·+·connect).</p><pre><code·class="text">protocol_version()·=·integer()</code></pre><p>Is·the·actual·protocol·version.·In·most·cases·the·protocol·version·is·retrieved
151 from·the·processed·message,·but·there·are·exceptions:</p><ul><li>When·<code·class="inline">handle_connect/2,3</code>·is·triggered·by·an·explicit·call·to151 from·the·processed·message,·but·there·are·exceptions:</p><ul><li>When·<code·class="inline">handle_connect/2,3</code>·is·triggered·by·an·explicit·call·to
152 <code·class="inline">megaco:connect/4,5</code>.</li><li><a·href="#c:handle_disconnect/3"><code·class="inline">handle_disconnect/3</code></a></li><li><a·href="#c:handle_syntax_error/3"><code·class="inline">handle_syntax_error/3</code></a></li></ul><p>In·these·cases,·the·ProtocolVersion·default·version·is·obtained·from·the·static152 <code·class="inline">megaco:connect/4,5</code>.</li><li><a·href="#c:handle_disconnect/3"><code·class="inline">handle_disconnect/3</code></a></li><li><a·href="#c:handle_syntax_error/3"><code·class="inline">handle_syntax_error/3</code></a></li></ul><p>In·these·cases,·the·ProtocolVersion·default·version·is·obtained·from·the·static
153 connection·configuration:</p><ul><li><code·class="inline">megaco:conn_info(ConnHandle,·protocol_version)</code>.</li></ul><p><a·href=""·id="connect"></a></p>153 connection·configuration:</p><ul><li><code·class="inline">megaco:conn_info(ConnHandle,·protocol_version)</code>.</li></ul><p><a·href=""·id="connect"></a></p>
154 ····</section>154 ····</section>
  
155 </div>155 </div>
Offset 1551, 15 lines modifiedOffset 1551, 15 lines modified
1551 ······<p·class="built-using">1551 ······<p·class="built-using">
1552 ········Built·using1552 ········Built·using
1553 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1553 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1554 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1554 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1555 ······</p>1555 ······</p>
1556 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1556 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1557 ····</footer>1557 ····</footer>
1558 ··</div>1558 ··</div>
1559 </main>1559 </main>
1560 </div>1560 </div>
1561 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1561 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1562 <script>1562 <script>
1563 ··document.addEventListener("DOMContentLoaded",·function·()·{1563 ··document.addEventListener("DOMContentLoaded",·function·()·{
761 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/notes.html
    
Offset 980, 15 lines modifiedOffset 980, 15 lines modified
980 ······<p·class="built-using">980 ······<p·class="built-using">
981 ········Built·using981 ········Built·using
982 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the982 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
983 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>983 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
984 ······</p>984 ······</p>
985 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>985 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
986 ····</footer>986 ····</footer>
987 ··</div>987 ··</div>
988 </main>988 </main>
989 </div>989 </div>
990 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>990 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
991 <script>991 <script>
992 ··document.addEventListener("DOMContentLoaded",·function·()·{992 ··document.addEventListener("DOMContentLoaded",·function·()·{
589 B
html2text {}
Max HTML report size reached
1.27 KB
./usr/share/doc/erlang-doc/html/lib/megaco-4.6/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
461 B
html2text {}
Max HTML report size reached
644 B
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/.build
    
Offset 14, 15 lines modifiedOffset 14, 15 lines modified
14 dist/lato-latin-300-normal-YUMVEFOL.woff214 dist/lato-latin-300-normal-YUMVEFOL.woff2
15 dist/lato-latin-400-normal-W7754I4D.woff215 dist/lato-latin-400-normal-W7754I4D.woff2
16 dist/lato-latin-700-normal-2XVSBPG4.woff216 dist/lato-latin-700-normal-2XVSBPG4.woff2
17 dist/lato-latin-ext-300-normal-VPGGJKJL.woff217 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
18 dist/lato-latin-ext-400-normal-N27NCBWW.woff218 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
19 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff219 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
20 dist/remixicon-NKANDIL5.woff220 dist/remixicon-NKANDIL5.woff2
21 dist/search_data-9BFFF869.js21 dist/search_data-69A0CECD.js
22 dist/sidebar_items-54EFED7F.js22 dist/sidebar_items-54EFED7F.js
23 index.html23 index.html
24 mnesia.html24 mnesia.html
25 mnesia_app_a.html25 mnesia_app_a.html
26 mnesia_app_b.html26 mnesia_app_b.html
27 mnesia_app_c.html27 mnesia_app_c.html
28 mnesia_chap1.html28 mnesia_chap1.html
1.47 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/api-reference.html
    
Offset 199, 15 lines modifiedOffset 199, 15 lines modified
199 ······<p·class="built-using">199 ······<p·class="built-using">
200 ········Built·using200 ········Built·using
201 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the201 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
202 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>202 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
203 ······</p>203 ······</p>
204 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>204 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
205 ····</footer>205 ····</footer>
206 ··</div>206 ··</div>
207 </main>207 </main>
208 </div>208 </div>
209 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>209 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
210 <script>210 <script>
211 ··document.addEventListener("DOMContentLoaded",·function·()·{211 ··document.addEventListener("DOMContentLoaded",·function·()·{
669 B
html2text {}
Max HTML report size reached
955 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia.epub
3.96 KB
zipinfo {}
Max HTML report size reached
83.8 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
3.59 KB
OEBPS/mnesia_registry.xhtml
Max HTML report size reached
46.8 KB
OEBPS/mnesia_chap7.xhtml
Max HTML report size reached
147 KB
OEBPS/mnesia_chap5.xhtml
Max HTML report size reached
141 KB
OEBPS/mnesia_chap4.xhtml
Max HTML report size reached
51.7 KB
OEBPS/mnesia_chap3.xhtml
Max HTML report size reached
161 KB
OEBPS/mnesia_chap2.xhtml
Max HTML report size reached
68.5 KB
OEBPS/mnesia_app_c.xhtml
Max HTML report size reached
133 KB
OEBPS/mnesia_app_b.xhtml
Max HTML report size reached
63.3 KB
OEBPS/mnesia_app_a.xhtml
Max HTML report size reached
50.6 KB
OEBPS/mnesia.xhtml
Max HTML report size reached
1.23 KB
OEBPS/content.opf
1.2 KB
OEBPS/content.opf
Max HTML report size reached
52.1 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia.html
    
Offset 162, 19 lines modifiedOffset 162, 19 lines modified
162 <code·class="inline">true</code>,·a·majority·of·the·table·replicas·must·be·available·for·an·update·to162 <code·class="inline">true</code>,·a·majority·of·the·table·replicas·must·be·available·for·an·update·to
163 succeed.·Majority·checking·can·be·enabled·on·tables·with·mission-critical163 succeed.·Majority·checking·can·be·enabled·on·tables·with·mission-critical
164 data,·where·it·is·vital·to·avoid·inconsistencies·because·of·network·splits.</p></li><li><p><code·class="inline">snmp</code>.·Each·(set-based)·Mnesia·table·can·be·automatically·turned·into·a164 data,·where·it·is·vital·to·avoid·inconsistencies·because·of·network·splits.</p></li><li><p><code·class="inline">snmp</code>.·Each·(set-based)·Mnesia·table·can·be·automatically·turned·into·a
165 Simple·Network·Management·Protocol·(SNMP)·ordered·table·as·well.·This·property165 Simple·Network·Management·Protocol·(SNMP)·ordered·table·as·well.·This·property
166 specifies·the·types·of·the·SNMP·keys.</p></li><li><p><code·class="inline">attributes</code>.·The·names·of·the·attributes·for·the·records·that·are·inserted·in166 specifies·the·types·of·the·SNMP·keys.</p></li><li><p><code·class="inline">attributes</code>.·The·names·of·the·attributes·for·the·records·that·are·inserted·in
167 the·table.</p></li></ul><p>For·information·about·the·complete·set·of·table·properties·and·their·details,167 the·table.</p></li></ul><p>For·information·about·the·complete·set·of·table·properties·and·their·details,
168 see·<a·href="#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>.</p><p>This·Reference·Manual·uses·a·table·of·persons·to·illustrate·various·examples.168 see·<a·href="#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>.</p><p>This·Reference·Manual·uses·a·table·of·persons·to·illustrate·various·examples.
169 The·following·record·definition·is·assumed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3789022392-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3789022392-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">169 The·following·record·definition·is·assumed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4934623403-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4934623403-2">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">
170 ·················</span><span·class="ss">age</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">170 ·················</span><span·class="ss">age</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
171 ·················</span><span·class="ss">address</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">unknown</span><span·class="p">,</span><span·class="w">171 ·················</span><span·class="ss">address</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">unknown</span><span·class="p">,</span><span·class="w">
172 ·················</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">172 ·················</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
173 ·················</span><span·class="ss">children</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3789022392-3">[</span><span·class="p"·data-group-id="3789022392-3">]</span><span·class="p"·data-group-id="3789022392-2">}</span><span·class="p"·data-group-id="3789022392-1">)</span><span·class="p">,</span></code></pre><p>The·first·record·attribute·is·the·primary·key,·or·key·for·short.</p><p>The·function·descriptions·are·sorted·in·alphabetical·order.·It·is·recommended·to173 ·················</span><span·class="ss">children</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4934623403-3">[</span><span·class="p"·data-group-id="4934623403-3">]</span><span·class="p"·data-group-id="4934623403-2">}</span><span·class="p"·data-group-id="4934623403-1">)</span><span·class="p">,</span></code></pre><p>The·first·record·attribute·is·the·primary·key,·or·key·for·short.</p><p>The·function·descriptions·are·sorted·in·alphabetical·order.·It·is·recommended·to
174 start·to·read·about·<a·href="#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>,·<a·href="#lock/2"><code·class="inline">mnesia:lock/2</code></a>,·and174 start·to·read·about·<a·href="#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>,·<a·href="#lock/2"><code·class="inline">mnesia:lock/2</code></a>,·and
175 ·<a·href="#activity/4"><code·class="inline">mnesia:activity/4</code></a>·before·you·continue·and·learn·about·the·rest.</p><p>Writing·or·deleting·in·transaction-context·creates·a·local·copy·of·each·modified175 ·<a·href="#activity/4"><code·class="inline">mnesia:activity/4</code></a>·before·you·continue·and·learn·about·the·rest.</p><p>Writing·or·deleting·in·transaction-context·creates·a·local·copy·of·each·modified
176 record·during·the·transaction.·During·iteration,·that·is,·<a·href="#foldl/4"><code·class="inline">mnesia:foldl/4</code></a>,176 record·during·the·transaction.·During·iteration,·that·is,·<a·href="#foldl/4"><code·class="inline">mnesia:foldl/4</code></a>,
177 <a·href="#foldr/4"><code·class="inline">mnesia:foldr/4</code></a>,·<a·href="#next/2"><code·class="inline">mnesia:next/2</code></a>,·<a·href="#prev/2"><code·class="inline">mnesia:prev/2</code></a>,·and·<a·href="#snmp_get_next_index/2"><code·class="inline">mnesia:snmp_get_next_index/2</code></a>,·Mnesia177 <a·href="#foldr/4"><code·class="inline">mnesia:foldr/4</code></a>,·<a·href="#next/2"><code·class="inline">mnesia:next/2</code></a>,·<a·href="#prev/2"><code·class="inline">mnesia:prev/2</code></a>,·and·<a·href="#snmp_get_next_index/2"><code·class="inline">mnesia:snmp_get_next_index/2</code></a>,·Mnesia
178 compensates·for·every·written·or·deleted·record,·which·can·reduce·the178 compensates·for·every·written·or·deleted·record,·which·can·reduce·the
179 performance.</p><p>If·possible,·avoid·writing·or·deleting·records·in·the·same·transaction·before179 performance.</p><p>If·possible,·avoid·writing·or·deleting·records·in·the·same·transaction·before
180 iterating·over·the·table.</p><h2·id="module-configuration-parameters"·class="section-heading">180 iterating·over·the·table.</p><h2·id="module-configuration-parameters"·class="section-heading">
Offset 2861, 15 lines modifiedOffset 2861, 15 lines modified
  
2861 ······<div·class="specs">2861 ······<div·class="specs">
  
2862 ··········<pre·translate="no"><span·class="attribute">-spec</span>·change_table_copy_type(Tab·::·<a·href="#t:table/0">table</a>(),·Node·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:node/0">node</a>(),·To·::·<a·href="#t:storage_type/0">storage_type</a>())·->·<a·href="#t:t_result/1">t_result</a>(ok).</pre>2862 ··········<pre·translate="no"><span·class="attribute">-spec</span>·change_table_copy_type(Tab·::·<a·href="#t:table/0">table</a>(),·Node·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:node/0">node</a>(),·To·::·<a·href="#t:storage_type/0">storage_type</a>())·->·<a·href="#t:t_result/1">t_result</a>(ok).</pre>
  
2863 ······</div>2863 ······</div>
  
2864 <p>Change·the·storage·type·of·a·table.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">change_table_copy_type</span><span·class="p"·data-group-id="5401083963-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">node</span><span·class="p"·data-group-id="5401083963-2">(</span><span·class="p"·data-group-id="5401083963-2">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·102,·SHA:·6edb11d9acbe8f3f8b85393bb9e9ce35153a4a3cacd921c3fd219f7510d9ef48·...·]-1">)</span></code></pre><p>Transforms·the·<code·class="inline">person</code>·table·from·a·RAM·table·into·a·disc-based·table·at2864 <p>Change·the·storage·type·of·a·table.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">change_table_copy_type</span><span·class="p"·data-group-id="8828657270-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">node</span><span·class="p"·data-group-id="8828657270-2">(</span><span·class="p"·data-group-id="8828657270-2">)</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·102,·SHA:·10b93372d3e2ede50c46d3e49e56ac336ff854469320679ab0382195775fcf4d·...·]-1">)</span></code></pre><p>Transforms·the·<code·class="inline">person</code>·table·from·a·RAM·table·into·a·disc-based·table·at
2865 <code·class="inline">Node</code>.</p><p>This·function·can·also·be·used·to·change·the·storage·type·of·the·table·named2865 <code·class="inline">Node</code>.</p><p>This·function·can·also·be·used·to·change·the·storage·type·of·the·table·named
2866 <code·class="inline">schema</code>.·The·schema·table·can·only·have·<code·class="inline">ram_copies</code>·or·<code·class="inline">disc_copies</code>·as·the2866 <code·class="inline">schema</code>.·The·schema·table·can·only·have·<code·class="inline">ram_copies</code>·or·<code·class="inline">disc_copies</code>·as·the
2867 storage·type.·If·the·storage·type·of·the·schema·is·<code·class="inline">ram_copies</code>,·no·other·table2867 storage·type.·If·the·storage·type·of·the·schema·is·<code·class="inline">ram_copies</code>,·no·other·table
2868 can·be·disc-resident·on·that·node.</p>2868 can·be·disc-resident·on·that·node.</p>
2869 ··</section>2869 ··</section>
2870 </section>2870 </section>
2871 <section·class="detail"·id="change_table_frag/2">2871 <section·class="detail"·id="change_table_frag/2">
Offset 3112, 30 lines modifiedOffset 3112, 30 lines modified
3112 Therefore·applications·that·use·SNMP·to·manipulate·and·control·the·system·can3112 Therefore·applications·that·use·SNMP·to·manipulate·and·control·the·system·can
3113 be·designed·easily,·since·Mnesia·provides·a·direct·mapping·between·the·logical3113 be·designed·easily,·since·Mnesia·provides·a·direct·mapping·between·the·logical
3114 tables·that·make·up·an·SNMP·control·application·and·the·physical·data·that3114 tables·that·make·up·an·SNMP·control·application·and·the·physical·data·that
3115 makes·up·a·Mnesia·table.</p></li><li><p><code·class="inline">{storage_properties,·[{Backend,·Properties}]</code>·forwards·more·properties·to·the3115 makes·up·a·Mnesia·table.</p></li><li><p><code·class="inline">{storage_properties,·[{Backend,·Properties}]</code>·forwards·more·properties·to·the
3116 back·end·storage.·<code·class="inline">Backend</code>·can·currently·be·<code·class="inline">ets</code>·or·<code·class="inline">dets</code>.·<code·class="inline">Properties</code>·is3116 back·end·storage.·<code·class="inline">Backend</code>·can·currently·be·<code·class="inline">ets</code>·or·<code·class="inline">dets</code>.·<code·class="inline">Properties</code>·is
3117 a·list·of·options·sent·to·the·back·end·storage·during·table·creation.3117 a·list·of·options·sent·to·the·back·end·storage·during·table·creation.
3118 <code·class="inline">Properties</code>·cannot·contain·properties·already·used·by·Mnesia,·such·as·<code·class="inline">type</code>3118 <code·class="inline">Properties</code>·cannot·contain·properties·already·used·by·Mnesia,·such·as·<code·class="inline">type</code>
3119 or·<code·class="inline">named_table</code>.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="1256075567-1">(</span><span·class="ss">table</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1256075567-2">[</span><span·class="p"·data-group-id="1256075567-3">{</span><span·class="ss">ram_copies</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·689,·SHA:·4acce3a8fa3e655265990a2a7b3c1a5135f7a6d0951e39eeb4c79b4605637a02·...·]-6">}</span><span·class="p">,</span><span·class="w">3119 or·<code·class="inline">named_table</code>.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="5208073152-1">(</span><span·class="ss">table</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5208073152-2">[</span><span·class="p"·data-group-id="5208073152-3">{</span><span·class="ss">ram_copies</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·689,·SHA:·5934dea0fcf0eb2d19d24c10fd2a58cd5a564eda5f8c11e8860ae573016a33ef·...·]-6">}</span><span·class="p">,</span><span·class="w">
3120 ·······</span><span·class="p"·data-group-id="1256075567-8">{</span><span·class="ss">storage_properties</span><span·class="p">,</span><span·class="w">3120 ·······</span><span·class="p"·data-group-id="5208073152-8">{</span><span·class="ss">storage_properties</span><span·class="p">,</span><span·class="w">
3121 ········</span><span·class="p"·data-group-id="1256075567-9">[</span><span·class="p"·data-group-id="1256075567-10">{</span><span·class="ss">ets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1256075567-11">[</span><span·class="ss">compressed</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·872,·SHA:·672880c4f7388386ddc36ffc2cfbfb57ccccb46c66710c2d68c46b2743835ed4·...·]-1">)</span></code></pre></li><li><p><code·class="inline">{type,·Type}</code>,·where·<code·class="inline">Type</code>·must·be·either·of·the·atoms·<code·class="inline">set</code>,·<code·class="inline">ordered_set</code>,3121 ········</span><span·class="p"·data-group-id="5208073152-9">[</span><span·class="p"·data-group-id="5208073152-10">{</span><span·class="ss">ets</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5208073152-11">[</span><span·class="ss">compressed</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·872,·SHA:·1889af69fb439f3933e949a839d00c893648ecd46149a982ea3d6d1cc5d88525·...·]-1">)</span></code></pre></li><li><p><code·class="inline">{type,·Type}</code>,·where·<code·class="inline">Type</code>·must·be·either·of·the·atoms·<code·class="inline">set</code>,·<code·class="inline">ordered_set</code>,
3122 or·<code·class="inline">bag</code>.·Default·is·<code·class="inline">set</code>.·In·a·<code·class="inline">set</code>,·all·records·have·unique·keys.·In·a3122 or·<code·class="inline">bag</code>.·Default·is·<code·class="inline">set</code>.·In·a·<code·class="inline">set</code>,·all·records·have·unique·keys.·In·a
3123 <code·class="inline">bag</code>,·several·records·can·have·the·same·key,·but·the·record·content·is3123 <code·class="inline">bag</code>,·several·records·can·have·the·same·key,·but·the·record·content·is
3124 unique.·If·a·non-unique·record·is·stored,·the·old·conflicting·records·are3124 unique.·If·a·non-unique·record·is·stored,·the·old·conflicting·records·are
3125 overwritten.</p><p>Notice·that·currently·<code·class="inline">ordered_set</code>·is·not·supported·for·<code·class="inline">disc_only_copies</code>.</p></li><li><p><code·class="inline">{local_content,·Bool}</code>,·where·<code·class="inline">Bool</code>·is·<code·class="inline">true</code>·or·<code·class="inline">false</code>.·Default·is3125 overwritten.</p><p>Notice·that·currently·<code·class="inline">ordered_set</code>·is·not·supported·for·<code·class="inline">disc_only_copies</code>.</p></li><li><p><code·class="inline">{local_content,·Bool}</code>,·where·<code·class="inline">Bool</code>·is·<code·class="inline">true</code>·or·<code·class="inline">false</code>.·Default·is
3126 <code·class="inline">false</code>.</p></li></ul><p>For·example,·the·following·call·creates·the·<code·class="inline">person</code>·table·(defined·earlier)·and3126 <code·class="inline">false</code>.</p></li></ul><p>For·example,·the·following·call·creates·the·<code·class="inline">person</code>·table·(defined·earlier)·and
3127 replicates·it·on·two·nodes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="2971859439-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">3127 replicates·it·on·two·nodes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="3285519700-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">
3128 ····</span><span·class="p"·data-group-id="2971859439-2">[</span><span·class="p"·data-group-id="2971859439-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2971859439-4">[</span><span·class="n">N1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N2</span><span·class="p"·data-group-id="2971859439-4">]</span><span·class="p"·data-group-id="2971859439-3">}</span><span·class="p">,</span><span·class="w"> 
3129 ·····</span><span·class="p"·data-group-id="2971859439-5">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="2971859439-6">(</span><span·class="ss">fields</[·...·truncated·by·diffoscope;·len:·412,·SHA:·efa52987ec32db5abdd2ecdc8e44f4810495ff93c9b88bcdaf4dbb50a6a77766·...·]3128 ····</span><span·class="p"·data-group-id="3285519700-2">[</span><span·class="p"·data-group-id="3285519700-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3285519700-4">[</span><span·cl[·...·truncated·by·diffoscope;·len:·236,·SHA:·7eec6672734bc384e5f93da74d69d069dfad82e3901716add4cc291db689c690·...·]
 3129 ·····</span><span·class="p"·data-group-id="3285519700-5">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="3285519700-6">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">person</span><span·class="p"·data-group-id="3285519700-6">)</span><span·class="p"·data-group-id="3285519700-5">}</span><span·class="p"·data-group-id="3285519700-2">]</span><span·class="p"·data-group-id="3285519700-1">)</span><span·class="p">.</span></code></pre><p>If·it·is·required·that·Mnesia·must·build·and·maintain·an·extra·index·table·on
3130 attribute·<code·class="inline">address</code>·of·all·the·<code·class="inline">person</code>·records·that·are·inserted·in·the·table,3130 attribute·<code·class="inline">address</code>·of·all·the·<code·class="inline">person</code>·records·that·are·inserted·in·the·table,
3131 the·following·code·would·be·issued:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6519554733-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">3131 the·following·code·would·be·issued:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="8327151136-1">(</span><span·class="ss">person</span><span·class="p">,</span><span·class="w">
3132 ····</span><span·class="p"·data-group-id="6519554733-2">[</span><span·class="p"·data-group-id="6519554733-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6519554733-4">[</span><span·class="n">N1</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·146,·SHA:·cdeea051d79c230ed0132c929e3f94556c2ed4438aacfc99f06962b76504cd3d·...·]-3">}</span><span·class="p">,</span><span·class="w">3132 ····</span><span·class="p"·data-group-id="8327151136-2">[</span><span·class="p"·data-group-id="8327151136-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8327151136-4">[</span><span·class="n">N1</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·146,·SHA:·a5a418ca33aa63ffdcca42639107c8e04a58012b1c83414a2c9b5bd28cf895ba·...·]-3">}</span><span·class="p">,</span><span·class="w">
3133 ·····</span><span·class="p"·data-group-id="6519554733-5">{</span><span·class="ss">index</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6519554733-6">[</span><span·class="ss">address</span><span·class="p"·data-group-id="6519554733-6">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·106f7c10411e69af2a74bfe8bf96b74ad7c01d1da79829bbd4c42b39706d27c8·...·]-5">}</span><span·class="p">,</span><span·class="w">3133 ·····</span><span·class="p"·data-group-id="8327151136-5">{</span><span·class="ss">index</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8327151136-6">[</span><span·class="ss">address</span><span·class="p"·data-group-id="8327151136-6">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·0d4dd881bd5b2730197d53df61accd8432e51ac7ec9abe4dcfdf1c963fdfaef2·...·]-5">}</span><span·class="p">,</span><span·class="w">
3134 ·····</span><span·class="p"·data-group-id="6519554733-7">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="6519554733-8">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·244,·SHA:·6a130fa0d5facd5ff49bc7a118c92c04c6557b41bbb29f956b61ef8e56607aaa·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·specification·of·<code·class="inline">index</code>·and·<code·class="inline">attributes</code>·can·be·hard-coded·as3134 ·····</span><span·class="p"·data-group-id="8327151136-7">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="8327151136-8">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·244,·SHA:·27533e37ccbb91384d1d82af58988c7ff61fb51c89daec7a3c000d9804f50f0c·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·specification·of·<code·class="inline">index</code>·and·<code·class="inline">attributes</code>·can·be·hard-coded·as
3135 <code·class="inline">{index,·[2]}</code>·and·<code·class="inline">{attributes,·[name,·age,·address,·salary,·children]}</code>,3135 <code·class="inline">{index,·[2]}</code>·and·<code·class="inline">{attributes,·[name,·age,·address,·salary,·children]}</code>,
3136 respectively.</p><p><a·href="#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>·writes·records·into·the·table·<code·class="inline">schema</code>.·This·function,3136 respectively.</p><p><a·href="#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>·writes·records·into·the·table·<code·class="inline">schema</code>.·This·function,
3137 and·all·other·schema·manipulation·functions,·are·implemented·with·the·normal3137 and·all·other·schema·manipulation·functions,·are·implemented·with·the·normal
3138 transaction·management·system.·This·guarantees·that·schema·updates·are·performed3138 transaction·management·system.·This·guarantees·that·schema·updates·are·performed
3139 on·all·nodes·in·an·atomic·manner.</p>3139 on·all·nodes·in·an·atomic·manner.</p>
3140 ··</section>3140 ··</section>
3141 </section>3141 </section>
Offset 5377, 18 lines modifiedOffset 5377, 18 lines modified
5377 ······</div>5377 ······</div>
  
5378 <p>Select·the·objects·in·<code·class="inline">Tab</code>·against·<code·class="inline">MatchSpec</code>.</p><p>Matches·the·objects·in·table·<code·class="inline">Tab</code>·using·a·<code·class="inline">match_spec</code>·as·described·in·the5378 <p>Select·the·objects·in·<code·class="inline">Tab</code>·against·<code·class="inline">MatchSpec</code>.</p><p>Matches·the·objects·in·table·<code·class="inline">Tab</code>·using·a·<code·class="inline">match_spec</code>·as·described·in·the
5379 <a·href="../../../../lib/stdlib-6.0.1/doc/html/ets.html#select/3"><code·class="inline">ets:select/3</code></a>.·Optionally·a·lock·<code·class="inline">read</code>·or·<code·class="inline">write</code>·can·be·given·as·the·third5379 <a·href="../../../../lib/stdlib-6.0.1/doc/html/ets.html#select/3"><code·class="inline">ets:select/3</code></a>.·Optionally·a·lock·<code·class="inline">read</code>·or·<code·class="inline">write</code>·can·be·given·as·the·third
5380 argument.·Default·is·<code·class="inline">read</code>.·The·return·value·depends·on·<code·class="inline">MatchSpec</code>.</p><p>Notice·that·for·best·performance,·<code·class="inline">select</code>·is·to·be·used·before·any·modifying5380 argument.·Default·is·<code·class="inline">read</code>.·The·return·value·depends·on·<code·class="inline">MatchSpec</code>.</p><p>Notice·that·for·best·performance,·<code·class="inline">select</code>·is·to·be·used·before·any·modifying
5381 operations·are·done·on·that·table·in·the·same·transaction.·That·is,·do·not·use5381 operations·are·done·on·that·table·in·the·same·transaction.·That·is,·do·not·use
5382 <code·class="inline">write</code>·or·<code·class="inline">delete</code>·before·a·<code·class="inline">select</code>.</p><p>In·its·simplest·forms,·the·<code·class="inline">match_spec</code>·look·as·follows:</p><ul><li><code·class="inline">MatchSpec·=·[MatchFunction]</code></li><li><code·class="inline">MatchFunction·=·{MatchHead,·[Guard],·[Result]}</code></li><li><p><code·class="inline">MatchHead·=·tuple()·|·record()</code></p></li><li><code·class="inline">Guard·=·{&quot;Guardtest·name&quot;,·...}</code></li><li><code·class="inline">Result·=·&quot;Term·construct&quot;</code></li></ul><p>For·a·complete·description·of·<code·class="inline">select</code>,·see·the·<a·href="../../../../erts-15.0.1/doc/html/index.html">ERTS</a>5382 <code·class="inline">write</code>·or·<code·class="inline">delete</code>·before·a·<code·class="inline">select</code>.</p><p>In·its·simplest·forms,·the·<code·class="inline">match_spec</code>·look·as·follows:</p><ul><li><code·class="inline">MatchSpec·=·[MatchFunction]</code></li><li><code·class="inline">MatchFunction·=·{MatchHead,·[Guard],·[Result]}</code></li><li><p><code·class="inline">MatchHead·=·tuple()·|·record()</code></p></li><li><code·class="inline">Guard·=·{&quot;Guardtest·name&quot;,·...}</code></li><li><code·class="inline">Result·=·&quot;Term·construct&quot;</code></li></ul><p>For·a·complete·description·of·<code·class="inline">select</code>,·see·the·<a·href="../../../../erts-15.0.1/doc/html/index.html">ERTS</a>
5383 User's·Guide·and·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/ets.html"><code·class="inline">ets</code></a>·manual·page·in·STDLIB.</p><p>For·example,·to·find·the·names·of·all·male·persons·older·than·30·in·table·<code·class="inline">Tab</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">MatchHead</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8388587529-1">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sex</span><span·class="o">=</span><span·class="ss">male</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·288,·SHA:·9474a59110a8da435ac168085b353b1b9150c555beefc3d253e930ec2de26b81·...·]-1">}</span><span·class="p">,</span><span·class="w">5383 User's·Guide·and·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/ets.html"><code·class="inline">ets</code></a>·manual·page·in·STDLIB.</p><p>For·example,·to·find·the·names·of·all·male·persons·older·than·30·in·table·<code·class="inline">Tab</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">MatchHead</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="1673723520-1">{</span><span·class="ss">name</span><span·class="o">=</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sex</span><span·class="o">=</span><span·class="ss">male</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·288,·SHA:·099fdfb225687f14ee7153379b5acd6cfcb8daeaff0c1822614a45626b6867a9·...·]-1">}</span><span·class="p">,</span><span·class="w">
5384 </span><span·class="n">Guard</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8388587529-2">{</span><span·class="ss">&#39;&gt;&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">30</span><span·class="p"·data-group-id="8388587[·...·truncated·by·diffoscope;·len:·3,·SHA:·8920a14a7f6469b955b114111564cb9736440238d220fc9fd525efdb9a056d3e·...·]-2">}</span><span·class="p">,</span><span·class="w">5384 </span><span·class="n">Guard</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1673723520-2">{</span><span·class="ss">&#39;&gt;&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">30</span><span·class="p"·data-group-id="1673723[·...·truncated·by·diffoscope;·len:·3,·SHA:·0b35b06a22779418f775a804f36485f7bc978071d1709ad263a68f4f18117b11·...·]-2">}</span><span·class="p">,</span><span·class="w">
5385 </span><span·class="n">Result</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">5385 </span><span·class="n">Result</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">
5386 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="8388587529-3">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="p"·data-group-id="8388587529-4">[</span><span·class="p"·data-group-id="8388587529-5">{</span><span·class="n">MatchHead</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·466,·SHA:·0b1b1938a255de1891cffebfa6a12de18902477b5f66f970ce2625063c45928c·...·]-3">)</span><span·class="p">,</span></code></pre>5386 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="1673723520-3">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="p"·data-group-id="1673723520-4">[</span><span·class="p"·data-group-id="1673723520-5">{</span><span·class="n">MatchHead</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·466,·SHA:·7ca8364a3101d080ad3858dbbaacb99b0a211f27380918fcaaba017180cf2c6a·...·]-3">)</span><span·class="p">,</span></code></pre>
5387 ··</section>5387 ··</section>
5388 </section>5388 </section>
5389 <section·class="detail"·id="select/4">5389 <section·class="detail"·id="select/4">
  
5390 ··<div·class="detail-header">5390 ··<div·class="detail-header">
5391 ····<a·href="#select/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">5391 ····<a·href="#select/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
5392 ······<i·class="ri-link-m"·aria-hidden="true"></i>5392 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 5675, 17 lines modifiedOffset 5675, 17 lines modified
5675 information·needed·is·information·about·the·key·types·in·the·table.·Multiple5675 information·needed·is·information·about·the·key·types·in·the·table.·Multiple
5676 keys·cannot·be·handled·in·Mnesia,·but·many·SNMP·tables·have·multiple·keys.5676 keys·cannot·be·handled·in·Mnesia,·but·many·SNMP·tables·have·multiple·keys.
5677 Therefore,·the·following·convention·is·used:·if·a·table·has·multiple·keys,·these5677 Therefore,·the·following·convention·is·used:·if·a·table·has·multiple·keys,·these
5678 must·always·be·stored·as·a·tuple·of·the·keys.·Information·about·the·key·types·is5678 must·always·be·stored·as·a·tuple·of·the·keys.·Information·about·the·key·types·is
5679 specified·as·a·tuple·of·atoms·describing·the·types.·The·only·significant·type·is5679 specified·as·a·tuple·of·atoms·describing·the·types.·The·only·significant·type·is
5680 <code·class="inline">fix_string</code>.·This·means·that·a·string·has·a·fixed·size.</p><p>For·example,·the·following·causes·table·<code·class="inline">person</code>·to·be·ordered·as·an·SNMP·table:</p><pre><code·class="text">mnesia:snmp_open_table(person,·[{key,·string}])</code></pre><p>Consider·the·following·schema·for·a·table·of·company·employees.·Each·employee·is5680 <code·class="inline">fix_string</code>.·This·means·that·a·string·has·a·fixed·size.</p><p>For·example,·the·following·causes·table·<code·class="inline">person</code>·to·be·ordered·as·an·SNMP·table:</p><pre><code·class="text">mnesia:snmp_open_table(person,·[{key,·string}])</code></pre><p>Consider·the·following·schema·for·a·table·of·company·employees.·Each·employee·is
5681 identified·by·department·number·and·name.·The·other·table·column·stores·the5681 identified·by·department·number·and·name.·The·other·table·column·stores·the
5682 telephone·number:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="5116924744-1">(</span><span·class="ss">employee</span><span·class="p">,</span><span·class="w">5682 telephone·number:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="9477666206-1">(</span><span·class="ss">employee</span><span·class="p">,</span><span·class="w">
5683 ····</span><span·class="p"·data-group-id="5116924744-2">[</span><span·class="p"·data-group-id="5116924744-3">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5116924744-4">[</span><span·class="p"·data-group-id="5116924744-5">{</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5116924744-6">{</span><span·class="ss">integer</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">string</span><span·class="p"·data-group-id="5116924744-6">}</span><span·class="p"·data-group-id="5116924744-5">}</span><span·class="p"·data-group-id="5116924744-4">]</span><span·class="p"·data-group-id="5116924744-3">}</span><span·class="p">,</span><span·class="w"> 
5684 ·····</span><span·class="p"·data-group-id="5116924744-7">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="5116924744-8">(</span><span·class="ss">fields</[·...·truncated·by·diffoscope;·len:·470,·SHA:·6c14b8224445998d448db4877fcc8f1ea33f2473c65832a334ce6f97c9afe6f3·...·]5683 ····</span><span·class="p"·data-group-id="9477666206-2">[</span><span·class="p"·data-group-id="9477666206-3">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9477666206-4">[</span><span·class="p[·...·truncated·by·diffoscope;·len:·528,·SHA:·56883fb5c59d14372f916345f977849b2ab9de144d4f92c427d0d4e6e7183af2·...·]
 5684 ·····</span><span·class="p"·data-group-id="9477666206-7">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="9477666206-8">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">employees</span><span·class="p"·data-group-id="9477666206-8">)</span><span·class="p"·data-group-id="9477666206-7">}</span><span·class="p"·data-group-id="9477666206-2">]</span><span·class="p"·data-group-id="9477666206-1">)</span><span·class="p">,</span></code></pre><p>The·corresponding·SNMP·table·would·have·three·columns:·<code·class="inline">department</code>,·<code·class="inline">name</code>,·and
5685 <code·class="inline">telno</code>.</p><p>An·option·is·to·have·table·columns·that·are·not·visible·through·the·SNMP5685 <code·class="inline">telno</code>.</p><p>An·option·is·to·have·table·columns·that·are·not·visible·through·the·SNMP
5686 protocol.·These·columns·must·be·the·last·columns·of·the·table.·In·the·previous5686 protocol.·These·columns·must·be·the·last·columns·of·the·table.·In·the·previous
5687 example,·the·SNMP·table·could·have·columns·<code·class="inline">department</code>·and·<code·class="inline">name</code>·only.·The5687 example,·the·SNMP·table·could·have·columns·<code·class="inline">department</code>·and·<code·class="inline">name</code>·only.·The
5688 application·could·then·use·column·<code·class="inline">telno</code>·internally,·but·it·would·not·be5688 application·could·then·use·column·<code·class="inline">telno</code>·internally,·but·it·would·not·be
5689 visible·to·the·SNMP·managers.</p><p>In·a·table·monitored·by·SNMP,·all·elements·must·be·integers,·strings,·or·lists5689 visible·to·the·SNMP·managers.</p><p>In·a·table·monitored·by·SNMP,·all·elements·must·be·integers,·strings,·or·lists
5690 of·integers.</p><p>When·a·table·is·SNMP·ordered,·modifications·are·more·expensive·than·usual,5690 of·integers.</p><p>When·a·table·is·SNMP·ordered,·modifications·are·more·expensive·than·usual,
5691 O(logN).·Also,·more·memory·is·used.</p><p>Notice·that·only·the·lexicographical·SNMP·ordering·is·implemented·in·Mnesia,·not5691 O(logN).·Also,·more·memory·is·used.</p><p>Notice·that·only·the·lexicographical·SNMP·ordering·is·implemented·in·Mnesia,·not
Offset 6280, 43 lines modifiedOffset 6280, 43 lines modified
  
6280 <p>Execute·<code·class="inline">Fun</code>·with·arguments·<code·class="inline">Args</code>·as·a·transaction.</p><p>The·code·that·executes·inside·the·transaction·can·consist·of·a·series·of·table6280 <p>Execute·<code·class="inline">Fun</code>·with·arguments·<code·class="inline">Args</code>·as·a·transaction.</p><p>The·code·that·executes·inside·the·transaction·can·consist·of·a·series·of·table
6281 manipulation·functions.·If·something·goes·wrong·inside·the·transaction·as·a6281 manipulation·functions.·If·something·goes·wrong·inside·the·transaction·as·a
6282 result·of·a·user·error·or·a·certain·table·not·being·available,·the·entire6282 result·of·a·user·error·or·a·certain·table·not·being·available,·the·entire
6283 transaction·is·terminated·and·the·function·<a·href="#transaction/1"><code·class="inline">transaction/1</code></a>6283 transaction·is·terminated·and·the·function·<a·href="#transaction/1"><code·class="inline">transaction/1</code></a>
6284 returns·the·tuple·<code·class="inline">{aborted,·Reason}</code>.</p><p>If·all·is·going·well,·<code·class="inline">{atomic,·ResultOfFun}</code>·is·returned,·where·<code·class="inline">ResultOfFun</code>6284 returns·the·tuple·<code·class="inline">{aborted,·Reason}</code>.</p><p>If·all·is·going·well,·<code·class="inline">{atomic,·ResultOfFun}</code>·is·returned,·where·<code·class="inline">ResultOfFun</code>
6285 is·the·value·of·the·last·expression·in·<code·class="inline">Fun</code>.</p><p>A·function·that·adds·a·family·to·the·database·can·be·written·as·follows·if·there6285 is·the·value·of·the·last·expression·in·<code·class="inline">Fun</code>.</p><p>A·function·that·adds·a·family·to·the·database·can·be·written·as·follows·if·there
6286 is·a·structure·<code·class="inline">{family,·Father,·Mother,·ChildrenList}</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">add_family</span><span·class="p"·data-group-id="0902856157-1">(</span><span·class="p"·data-group-id="0902856157-2">{</span><span·class="ss">family</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·c[·...·truncated·by·diffoscope;·len:·166,·SHA:·126e79c5e2e825caf116c0e545def46de91f60641dfe02d8f0703b4890edd266·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">6286 is·a·structure·<code·class="inline">{family,·Father,·Mother,·ChildrenList}</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">add_family</span><span·class="p"·data-group-id="8785142600-1">(</span><span·class="p"·data-group-id="8785142600-2">{</span><span·class="ss">family</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·c[·...·truncated·by·diffoscope;·len:·166,·SHA:·b8f3055264619babf398b48387ef3b211d4f371ca09b8f0ba1f98982f24fc2aa·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
6287 ····</span><span·class="n">ChildOids</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="0902856157-3">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">oid</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Children</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·75be5009aef5a4ce5212aed6b49a4f6fa1d21e581b20729cd979d007288a0c6d·...·]-3">)</span><span·class="p">,</span><span·class="w">6287 ····</span><span·class="n">ChildOids</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="8785142600-3">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">oid</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Children</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·839c92f49f71aabe9ee02840f1850e65e1bfc0772159fb70e4cd533d6985a896·...·]-3">)</span><span·class="p">,</span><span·class="w">
6288 ····</span><span·class="n">Trans</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="0902856157-4">(</span><span·class="p"·data-group-id="0902856157-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">6288 ····</span><span·class="n">Trans</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8785142600-4">(</span><span·class="p"·data-group-id="8785142600-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
6289 ········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="0902856157-5">(</span><span·class="n">F</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="0902856157-6">{</span><span·class="ss">children</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">ChildOids</span><span·class="p"·data-group-id="0902856157-6">}</span><span·class="p"·data-group-id="0902856157-5">)</span><span·class="p">,</span><span·class="w"> 
6290 ········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="0902856157-7">(</span><span·class="n">M</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="0902856157-8">{</span><span·class="ss">children</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·129,·SHA:·2bc1625e51eef4da3496b2964e5980752c965584d21bca6ed7ae010c5d184e7b·...·]">)</span><span·class="p">,</span><span·class="w">6289 ········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8785142600-5">(</span><span·class="n">F</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8785142600-6">{</span><span·class="ss">children</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·129,·SHA:·c9776ba750aef8aa9cfe0e592e05c313ce1a6d850cf2b73785a714b84e5be20f·...·]">)</span><span·class="p">,</span><span·class="w">
 6290 ········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8785142600-7">(</span><span·class="n">M</span><span·class="o">#</span><span·class="ss">person</span><span·class="p"·data-group-id="8785142600-8">{</span><span·class="ss">children</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">ChildOids</span><span·class="p"·data-group-id="8785142600-8">}</span><span·class="p"·data-group-id="8785142600-7">)</span><span·class="p">,</span><span·class="w">
6291 ········</span><span·class="n">Write</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="0902856157-9">(</span><span·class="n">Child</span><span·class="p"·data-group-id="0902856157-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write<[·...·truncated·by·diffoscope;·len:·129,·SHA:·7ba4033f76a870c532d9201ad380f478049255b46108bff38fa729b89568054f·...·]-10">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">6291 ········</span><span·class="n">Write</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8785142600-9">(</span><span·class="n">Child</span><span·class="p"·data-group-id="8785142600-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write<[·...·truncated·by·diffoscope;·len:·129,·SHA:·d92d8274d7f88885465206df935df6a193c4f5acd05d24cc7b0743bdc2e886d3·...·]-10">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
6292 ········</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foreach</span><span·class="p"·data-group-id="0902856157-11">(</span><span·class="n">Write</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Children</span><span·class="p"·data-group-id="0902856157-11">)</span><span·class="w">6292 ········</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foreach</span><span·class="p"·data-group-id="8785142600-11">(</span><span·class="n">Write</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Children</span><span·class="p"·data-group-id="8785142600-11">)</span><span·class="w">
6293 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">6293 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
6294 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="0902856157-12">(</span><span·class="n">Trans</span><span·class="p"·data-group-id="0902856157-12">)</span><span·class="p">.</span><span·class="w">6294 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="8785142600-12">(</span><span·class="n">Trans</span><span·class="p"·data-group-id="8785142600-12">)</span><span·class="p">.</span><span·class="w">
  
6295 </span><span·class="nf">oid</span><span·class="p"·data-group-id="0902856157-13">(</span><span·class="n">Rec</span><span·class="p"·data-group-id="0902856157-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0902856157-14">{</span><span·class="nf">elemen[·...·truncated·by·diffoscope;·len:·542,·SHA:·6f12782e03e7191e78dbce7e043b2a936cf5f2ac032d180e58e89b9979ad61c9·...·]-14">}</span><span·class="p">.</span></code></pre><p>This·code·adds·a·set·of·people·to·the·database.·Running·this·code·within·one6295 </span><span·class="nf">oid</span><span·class="p"·data-group-id="8785142600-13">(</span><span·class="n">Rec</span><span·class="p"·data-group-id="8785142600-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8785142600-14">{</span><span·class="nf">elemen[·...·truncated·by·diffoscope;·len:·542,·SHA:·8aaf37ab880aaeeeee7dc33b371fc29d2bb709876f2262bf4bf6f9aec28e4e34·...·]-14">}</span><span·class="p">.</span></code></pre><p>This·code·adds·a·set·of·people·to·the·database.·Running·this·code·within·one
6296 transaction·ensures·that·either·the·whole·family·is·added·to·the·database,·or6296 transaction·ensures·that·either·the·whole·family·is·added·to·the·database,·or
6297 the·whole·transaction·terminates.·For·example,·if·the·last·child·is·badly6297 the·whole·transaction·terminates.·For·example,·if·the·last·child·is·badly
Max diff block lines reached; 7984/52529 bytes (15.20%) of diff not shown.
721 B
html2text {}
Max HTML report size reached
65.0 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_app_a.html
    
Offset 155, 160 lines modifiedOffset 155, 160 lines modified
155 </span><span·class="c1">%%</span><span·class="w">155 </span><span·class="c1">%%</span><span·class="w">
156 </span><span·class="c1">%%·The·NewOpaqueData·arguments·returned·by·restore·callback·functions·will</span><span·class="w">156 </span><span·class="c1">%%·The·NewOpaqueData·arguments·returned·by·restore·callback·functions·will</span><span·class="w">
157 </span><span·class="c1">%%·be·given·as·input·when·the·next·restore·callback·function·is·invoked</span><span·class="w">157 </span><span·class="c1">%%·be·given·as·input·when·the·next·restore·callback·function·is·invoked</span><span·class="w">
158 </span><span·class="c1">%%·If·any·return·value·does·not·match·{ok,·_}·the·restore·will·be·aborted.</span><span·class="w">158 </span><span·class="c1">%%·If·any·return·value·does·not·match·{ok,·_}·the·restore·will·be·aborted.</span><span·class="w">
159 </span><span·class="c1">%%</span><span·class="w">159 </span><span·class="c1">%%</span><span·class="w">
160 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">160 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">
161 </span><span·class="w">161 </span><span·class="w">
162 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2308285258-1">(</span><span·class="ss">mnesia_backup</span><span·class="p"·data-group-id="2308285258-1">)</span><span·class="p">.</span><span·class="w">162 </span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8001108787-1">(</span><span·class="ss">mnesia_backup</span><span·class="p"·data-group-id="8001108787-1">)</span><span·class="p">.</span><span·class="w">
163 </span><span·class="w">163 </span><span·class="w">
164 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2308285258-2">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="2308285258-2">)</span><span·class="p">.</span><span·class="w">164 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="8001108787-2">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="8001108787-2">)</span><span·class="p">.</span><span·class="w">
165 </span><span·class="w">165 </span><span·class="w">
166 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2308285258-3">(</span><span·class="p"·data-group-id="2308285258-4">[</span><span·class="w">166 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8001108787-3">(</span><span·class="p"·data-group-id="8001108787-4">[</span><span·class="w">
167 »       ·</span><span·class="c1">%%·Write·access</span><span·class="w">167 »       ·</span><span·class="c1">%%·Write·access</span><span·class="w">
168 ·········</span><span·class="ss">open_write</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">168 ·········</span><span·class="ss">open_write</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
169 »       ·</span><span·class="ss">write</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">169 »       ·</span><span·class="ss">write</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">
170 »       ·</span><span·class="ss">commit_write</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">170 »       ·</span><span·class="ss">commit_write</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
171 »       ·</span><span·class="ss">abort_write</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">171 »       ·</span><span·class="ss">abort_write</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
  
172 »       ·</span><span·class="c1">%%·Read·access</span><span·class="w">172 »       ·</span><span·class="c1">%%·Read·access</span><span·class="w">
173 ·········</span><span·class="ss">open_read</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">173 ·········</span><span·class="ss">open_read</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
174 »       ·</span><span·class="ss">read</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">174 »       ·</span><span·class="ss">read</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
175 »       ·</span><span·class="ss">close_read</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">175 »       ·</span><span·class="ss">close_read</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">
176 ········</span><span·class="p"·data-group-id="2308285258-4">]</span><span·class="p"·data-group-id="2308285258-3">)</span><span·class="p">.</span><span·class="w">176 ········</span><span·class="p"·data-group-id="8001108787-4">]</span><span·class="p"·data-group-id="8001108787-3">)</span><span·class="p">.</span><span·class="w">
  
177 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">177 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">
178 </span><span·class="c1">%%·Backup·callback·interface</span><span·class="w">178 </span><span·class="c1">%%·Backup·callback·interface</span><span·class="w">
179 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="2308285258-5">(</span><span·class="ss">backup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2308285258-6">{</span><span·class="ss">tmp_file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">file</[·...·truncated·by·diffoscope;·len:·180,·SHA:·982dd3478b30a6e916a8f8316830a515da3c8092b48f3cea0ba3c19b30deb565·...·]-5">)</span><span·class="p">.</span><span·class="w">179 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="8001108787-5">(</span><span·class="ss">backup</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8001108787-6">{</span><span·class="ss">tmp_file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">file</[·...·truncated·by·diffoscope;·len:·180,·SHA:·3e8b2bd11e71f0b981ac86a239e44123c58ed6d879c3211cf465a49d6c628530·...·]-5">)</span><span·class="p">.</span><span·class="w">
  
180 </span><span·class="c1">%%·Opens·backup·media·for·write</span><span·class="w">180 </span><span·class="c1">%%·Opens·backup·media·for·write</span><span·class="w">
181 </span><span·class="c1">%%</span><span·class="w">181 </span><span·class="c1">%%</span><span·class="w">
182 </span><span·class="c1">%%·Returns·{ok,·OpaqueData}·or·{error,·Reason}</span><span·class="w">182 </span><span·class="c1">%%·Returns·{ok,·OpaqueData}·or·{error,·Reason}</span><span·class="w">
183 </span><span·class="nf">open_write</span><span·class="p"·data-group-id="2308285258-7">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="2308285258-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">183 </span><span·class="nf">open_write</span><span·class="p"·data-group-id="8001108787-7">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="8001108787-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
184 ····</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">184 ····</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">
185 ····</span><span·class="n">Tmp</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">concat</span><span·class="p"·data-group-id="2308285258-8">(</span><span·class="p"·data-group-id="2308285258-9">[</span><span·class="n">File</span><span·class="p">,</span><span·class="s">&quot;.BUPTMP&quot;</span><span·class="p"·data-group-id="2308285258-9">]</span><span·class="p"·data-group-id="2308[·...·truncated·by·diffoscope;·len:·6,·SHA:·4d19add70891a9192ca63bb45c8a8d326a8b2babdb2139021bb48011b380f9b1·...·]-8">)</span><span·class="p">,</span><span·class="w">185 ····</span><span·class="n">Tmp</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">concat</span><span·class="p"·data-group-id="8001108787-8">(</span><span·class="p"·data-group-id="8001108787-9">[</span><span·class="n">File</span><span·class="p">,</span><span·class="s">&quot;.BUPTMP&quot;</span><span·class="p"·data-group-id="8001108787-9">]</span><span·class="p"·data-group-id="8001[·...·truncated·by·diffoscope;·len:·6,·SHA:·ec11af0107746f43f8721bec8a279d3068ef0066f8480cb6a0bc19d98f35e98d·...·]-8">)</span><span·class="p">,</span><span·class="w">
186 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="2308285258-10">(</span><span·class="n">Tmp</span><span·class="p"·data-group-id="2308285258-10">)</span><span·class="p">,</span><span·class="w">186 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="8001108787-10">(</span><span·class="n">Tmp</span><span·class="p"·data-group-id="8001108787-10">)</span><span·class="p">,</span><span·class="w">
187 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="2308285258-11">(</span><span·class="p"·data-group-id="2308285258-12">[</span><span·class="p"·data-group-id="2308285258-13">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">make_ref</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·132,·SHA:·7c839215d4d826d0b694b59448b7b41e94d77302802cc78b8b26e87bab85092a·...·]-13">}</span><span·class="p">,</span><span·class="w">187 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="8001108787-11">(</span><span·class="p"·data-group-id="8001108787-12">[</span><span·class="p"·data-group-id="8001108787-13">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">make_ref</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·132,·SHA:·66875ea41099a797cc8c38371b03d0a382a46d49dabb5608cab91c7a6513d9b2·...·]-13">}</span><span·class="p">,</span><span·class="w">
188 »       »       »       </span><span·class="p"·data-group-id="2308285258-15">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tmp</span><span·class="p"·data-group-id="2308285258-15">}</span><span·class="p">,</span><span·class="w">188 »       »       »       </span><span·class="p"·data-group-id="8001108787-15">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tmp</span><span·class="p"·data-group-id="8001108787-15">}</span><span·class="p">,</span><span·class="w">
189 »       »       »       </span><span·class="p"·data-group-id="2308285258-16">{</span><span·class="ss">repair</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="2308285258-16">}</span><span·class="p">,</span><span·class="w">189 »       »       »       </span><span·class="p"·data-group-id="8001108787-16">{</span><span·class="ss">repair</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="8001108787-16">}</span><span·class="p">,</span><span·class="w">
190 »       »       »       </span><span·class="p"·data-group-id="2308285258-17">{</span><span·class="ss">linkto</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="2308285258-18">(</span><span·class="p"·data-group-id="2308285258-18">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·9959e335297d0ed9f84b27d869b78b949d4dd34cc1ee5e433aad14ad560526f6·...·]-11">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">190 »       »       »       </span><span·class="p"·data-group-id="8001108787-17">{</span><span·class="ss">linkto</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8001108787-18">(</span><span·class="p"·data-group-id="8001108787-18">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·73e76272b17417f071ca3530eae614b2df888301419728b9622f2577dcb6b0ef·...·]-11">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
191 »       </span><span·class="p"·data-group-id="2308285258-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="2308285258-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">191 »       </span><span·class="p"·data-group-id="8001108787-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="8001108787-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
192 »       ····</span><span·class="p"·data-group-id="2308285258-20">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p"·data-group-id="2308285258-21">{</span><span·class="ss">tmp_file</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·527,·SHA:·d247b928cd0632e867b9ad963670340a4ae501ed6e622397983b1c93e9c3de28·...·]-20">}</span><span·class="p">;</span><span·class="w">192 »       ····</span><span·class="p"·data-group-id="8001108787-20">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p"·data-group-id="8001108787-21">{</span><span·class="ss">tmp_file</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·527,·SHA:·ae6ccd0bd9fc12ca825692abe411f5c32d3bca5a9923fdedf3d1fa28679d3ed2·...·]-20">}</span><span·class="p">;</span><span·class="w">
193 »       </span><span·class="p"·data-group-id="2308285258-22">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-22">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 »       </span><span·class="p"·data-group-id="8001108787-22">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-22">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 »       ····</span><span·class="p"·data-group-id="2308285258-23">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-23">}</span><span·class="w">194 »       ····</span><span·class="p"·data-group-id="8001108787-23">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-23">}</span><span·class="w">
195 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">195 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
196 </span><span·class="c1">%%·Writes·BackupItems·to·the·backup·media</span><span·class="w">196 </span><span·class="c1">%%·Writes·BackupItems·to·the·backup·media</span><span·class="w">
197 </span><span·class="c1">%%</span><span·class="w">197 </span><span·class="c1">%%</span><span·class="w">
198 </span><span·class="c1">%%·Returns·{ok,·OpaqueData}·or·{error,·Reason}</span><span·class="w">198 </span><span·class="c1">%%·Returns·{ok,·OpaqueData}·or·{error,·Reason}</span><span·class="w">
199 </span><span·class="nf">write</span><span·class="p"·data-group-id="2308285258-24">(</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BackupItems</span><span·class="p"·data-group-id="2308285258-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">199 </span><span·class="nf">write</span><span·class="p"·data-group-id="8001108787-24">(</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BackupItems</span><span·class="p"·data-group-id="8001108787-24">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
200 ····</span><span·class="n">B</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">200 ····</span><span·class="n">B</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">
201 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">log_terms</span><span·class="p"·data-group-id="2308285258-25">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file_desc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BackupItems</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·28c7846b279caef12e1d11ab1a1f227f9945c52e0fe8ce02dbc4a6316ddc2b1a·...·]-25">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">201 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">log_terms</span><span·class="p"·data-group-id="8001108787-25">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file_desc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BackupItems</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·1deef0ea06dabd2bf1fde5fa8a5669d2e72a696cf8da785c418c509f40794945·...·]-25">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
202 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">202 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
203 ············</span><span·class="p"·data-group-id="2308285258-26">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="p"·data-group-id="2308285258-26">}</span><span·class="p">;</span><span·class="w">203 ············</span><span·class="p"·data-group-id="8001108787-26">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="p"·data-group-id="8001108787-26">}</span><span·class="p">;</span><span·class="w">
204 ········</span><span·class="p"·data-group-id="2308285258-27">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-27">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">204 ········</span><span·class="p"·data-group-id="8001108787-27">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-27">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
205 ············</span><span·class="nf">abort_write</span><span·class="p"·data-group-id="2308285258-28">(</span><span·class="n">B</span><span·class="p"·data-group-id="2308285258-28">)</span><span·class="p">,</span><span·class="w">205 ············</span><span·class="nf">abort_write</span><span·class="p"·data-group-id="8001108787-28">(</span><span·class="n">B</span><span·class="p"·data-group-id="8001108787-28">)</span><span·class="p">,</span><span·class="w">
206 ············</span><span·class="p"·data-group-id="2308285258-29">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-29">}</span><span·class="w">206 ············</span><span·class="p"·data-group-id="8001108787-29">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-29">}</span><span·class="w">
207 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">207 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
208 </span><span·class="c1">%%·Closes·the·backup·media·after·a·successful·backup</span><span·class="w">208 </span><span·class="c1">%%·Closes·the·backup·media·after·a·successful·backup</span><span·class="w">
209 </span><span·class="c1">%%</span><span·class="w">209 </span><span·class="c1">%%</span><span·class="w">
210 </span><span·class="c1">%%·Returns·{ok,·ReturnValueToUser}·or·{error,·Reason}</span><span·class="w">210 </span><span·class="c1">%%·Returns·{ok,·ReturnValueToUser}·or·{error,·Reason}</span><span·class="w">
211 </span><span·class="nf">commit_write</span><span·class="p"·data-group-id="2308285258-30">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="2308285258-30">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">211 </span><span·class="nf">commit_write</span><span·class="p"·data-group-id="8001108787-30">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="8001108787-30">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
212 ····</span><span·class="n">B</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">212 ····</span><span·class="n">B</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">
213 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">sync</span><span·class="p"·data-group-id="2308285258-31">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file_desc</span><span·class="p"·data-group-id="2308285258-31">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">213 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">sync</span><span·class="p"·data-group-id="8001108787-31">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file_desc</span><span·class="p"·data-group-id="8001108787-31">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
214 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 ············</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="2308285258-32">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file_desc</span><span·class="p"·data-group-id="2308285258-32">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">215 ············</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="8001108787-32">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file_desc</span><span·class="p"·data-group-id="8001108787-32">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
216 ················</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">216 ················</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
217 ····················</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="2308285258-33">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file</span><span·class="p"·data-group-id="2308285258-33">)</span><span·class="p">,</span><span·class="w">217 ····················</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="8001108787-33">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file</span><span·class="p"·data-group-id="8001108787-33">)</span><span·class="p">,</span><span·class="w">
218 »       »       ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">rename</span><span·class="p"·data-group-id="2308285258-34">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">tmp_file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="o">#</span><sp[·...·truncated·by·diffoscope;·len:·120,·SHA:·13426e3fb47c459be08182dfd60ee503e65280a9d7dfd314f16b2c6e253a1c3a·...·]-34">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">218 »       »       ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">rename</span><span·class="p"·data-group-id="8001108787-34">(</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">tmp_file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="o">#</span><sp[·...·truncated·by·diffoscope;·len:·120,·SHA:·a8cf72bea42c5384e7647d1e71c1132764158e0ebc45490841400e39d6baa4ad·...·]-34">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
219 »       »       ·······</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 »       »       ·······</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 »       »       »       ····</span><span·class="p"·data-group-id="2308285258-35">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·dd169c182ca95c1ba7ad07058a96db7fe972fbc28dc620519e03e5859fcae391·...·]-35">}</span><span·class="p">;</span><span·class="w">220 »       »       »       ····</span><span·class="p"·data-group-id="8001108787-35">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">B</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·5f02583f9336f84a892f51494de043322b6795440669f489ff02fba1bd5015ac·...·]-35">}</span><span·class="p">;</span><span·class="w">
221 »       »       ·······</span><span·class="p"·data-group-id="2308285258-36">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-36">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">221 »       »       ·······</span><span·class="p"·data-group-id="8001108787-36">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-36">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
222 »       »       »       ····</span><span·class="p"·data-group-id="2308285258-37">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-37">}</span><span·class="w">222 »       »       »       ····</span><span·class="p"·data-group-id="8001108787-37">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-37">}</span><span·class="w">
223 »       »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">223 »       »       ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
224 ················</span><span·class="p"·data-group-id="2308285258-38">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-38">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 ················</span><span·class="p"·data-group-id="8001108787-38">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-38">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 »       »       ····</span><span·class="p"·data-group-id="2308285258-39">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-39">}</span><span·class="w">225 »       »       ····</span><span·class="p"·data-group-id="8001108787-39">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-39">}</span><span·class="w">
226 ············</span><span·class="k">end</span><span·class="p">;</span><span·class="w">226 ············</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
227 ········</span><span·class="p"·data-group-id="2308285258-40">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-40">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 ········</span><span·class="p"·data-group-id="8001108787-40">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-40">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 ············</span><span·class="p"·data-group-id="2308285258-41">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-41">}</span><span·class="w">228 ············</span><span·class="p"·data-group-id="8001108787-41">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-41">}</span><span·class="w">
229 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">229 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
230 </span><span·class="c1">%%·Closes·the·backup·media·after·an·interrupted·backup</span><span·class="w">230 </span><span·class="c1">%%·Closes·the·backup·media·after·an·interrupted·backup</span><span·class="w">
231 </span><span·class="c1">%%</span><span·class="w">231 </span><span·class="c1">%%</span><span·class="w">
232 </span><span·class="c1">%%·Returns·{ok,·ReturnValueToUser}·or·{error,·Reason}</span><span·class="w">232 </span><span·class="c1">%%·Returns·{ok,·ReturnValueToUser}·or·{error,·Reason}</span><span·class="w">
233 </span><span·class="nf">abort_write</span><span·class="p"·data-group-id="2308285258-42">(</span><span·class="n">BackupRef</span><span·class="p"·data-group-id="2308285258-42">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">233 </span><span·class="nf">abort_write</span><span·class="p"·data-group-id="8001108787-42">(</span><span·class="n">BackupRef</span><span·class="p"·data-group-id="8001108787-42">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
234 ····</span><span·class="n">Res</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="2308285258-43">(</span><span·class="n">BackupRef</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file_desc</span><span·class="p"·data-group-id="2308285258-43">)</span><span·class="p">,</span><span·class="w">234 ····</span><span·class="n">Res</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="8001108787-43">(</span><span·class="n">BackupRef</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file_desc</span><span·class="p"·data-group-id="8001108787-43">)</span><span·class="p">,</span><span·class="w">
235 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="2308285258-44">(</span><span·class="n">BackupRef</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">tmp_file</span><span·class="p"·data-group-id="2308285258-44">)</span><span·class="p">,</span><span·class="w">235 ····</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="8001108787-44">(</span><span·class="n">BackupRef</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">tmp_file</span><span·class="p"·data-group-id="8001108787-44">)</span><span·class="p">,</span><span·class="w">
236 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Res</span><span·class="w">·</span><span·class="k">of</span><span·class="w">236 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Res</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
237 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">237 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
238 ············</span><span·class="p"·data-group-id="2308285258-45">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BackupRef</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·249730b9afcce3fe4c736ad7bc5a3002f8bc35c151e1816b125576d24606ab78·...·]-45">}</span><span·class="p">;</span><span·class="w">238 ············</span><span·class="p"·data-group-id="8001108787-45">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BackupRef</span><span·class="o">#</span><span·class="ss">backup</span><span·class="p">.</span><span·class="ss">file</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·6a32a0e0d0d1314f4b44c7646255d9e625af967b7f8e0c31077fcf426585e627·...·]-45">}</span><span·class="p">;</span><span·class="w">
239 ········</span><span·class="p"·data-group-id="2308285258-46">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">239 ········</span><span·class="p"·data-group-id="8001108787-46">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
240 ············</span><span·class="p"·data-group-id="2308285258-47">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-47">}</span><span·class="w">240 ············</span><span·class="p"·data-group-id="8001108787-47">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-47">}</span><span·class="w">
241 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">241 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
242 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">242 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">
243 </span><span·class="c1">%%·Restore·callback·interface</span><span·class="w">243 </span><span·class="c1">%%·Restore·callback·interface</span><span·class="w">
244 </span><span·class="w">244 </span><span·class="w">
245 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="2308285258-48">(</span><span·class="ss">restore</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2308285258-49">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">file_de[·...·truncated·by·diffoscope;·len:·180,·SHA:·32aa12321ed7113920a9ceffd842ed230861a71c19d2156f4d180733e7f4cea8·...·]-48">)</span><span·class="p">.</span><span·class="w">245 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="8001108787-48">(</span><span·class="ss">restore</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8001108787-49">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">file_de[·...·truncated·by·diffoscope;·len:·180,·SHA:·65928860afb0dbde267077611f8e887fcbb8d9693c95e6df5ef867b259c75533·...·]-48">)</span><span·class="p">.</span><span·class="w">
  
246 </span><span·class="c1">%%·Opens·backup·media·for·read</span><span·class="w">246 </span><span·class="c1">%%·Opens·backup·media·for·read</span><span·class="w">
247 </span><span·class="c1">%%</span><span·class="w">247 </span><span·class="c1">%%</span><span·class="w">
248 </span><span·class="c1">%%·Returns·{ok,·OpaqueData}·or·{error,·Reason}</span><span·class="w">248 </span><span·class="c1">%%·Returns·{ok,·OpaqueData}·or·{error,·Reason}</span><span·class="w">
249 </span><span·class="nf">open_read</span><span·class="p"·data-group-id="2308285258-50">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="2308285258-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">249 </span><span·class="nf">open_read</span><span·class="p"·data-group-id="8001108787-50">(</span><span·class="n">OpaqueData</span><span·class="p"·data-group-id="8001108787-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
250 ····</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">250 ····</span><span·class="n">File</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">OpaqueData</span><span·class="p">,</span><span·class="w">
251 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">read_file_info</span><span·class="p"·data-group-id="2308285258-51">(</span><span·class="n">File</span><span·class="p"·data-group-id="2308285258-51">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">251 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">read_file_info</span><span·class="p"·data-group-id="8001108787-51">(</span><span·class="n">File</span><span·class="p"·data-group-id="8001108787-51">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
252 »       </span><span·class="p"·data-group-id="2308285258-52">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-52">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">252 »       </span><span·class="p"·data-group-id="8001108787-52">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-52">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
253 »       ····</span><span·class="p"·data-group-id="2308285258-53">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-53">}</span><span·class="p">;</span><span·class="w">253 »       ····</span><span·class="p"·data-group-id="8001108787-53">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-53">}</span><span·class="p">;</span><span·class="w">
254 »       </span><span·class="p">_</span><span·class="n">FileInfo</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="c1">%%·file·exists</span><span·class="w">254 »       </span><span·class="p">_</span><span·class="n">FileInfo</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="c1">%%·file·exists</span><span·class="w">
255 »       ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="2308285258-54">(</span><span·class="p"·data-group-id="2308285258-55">[</span><span·class="p"·data-group-id="2308285258-56">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·38f64e6a9bd9f74391b6f24bb629a952ffe190b6cd9dcc34851c512e3bc6591e·...·]-56">}</span><span·class="p">,</span><span·class="w">255 »       ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="8001108787-54">(</span><span·class="p"·data-group-id="8001108787-55">[</span><span·class="p"·data-group-id="8001108787-56">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·65df9f145795e7a50787bb186694ac78dab22d4a8ffaec9429486b973fc30a00·...·]-56">}</span><span·class="p">,</span><span·class="w">
256 »       »       »       »       </span><span·class="p"·data-group-id="2308285258-57">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">make_ref</span><span·class="p"·data-group-id="2308285258-58">(</span><span·class="p"·data-group-id="2308285258-58">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·f727ee8b602bfbeaed97e90202f63a891d286c5b752eacf1b992c15db61812fb·...·]-57">}</span><span·class="p">,</span><span·class="w">256 »       »       »       »       </span><span·class="p"·data-group-id="8001108787-57">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">make_ref</span><span·class="p"·data-group-id="8001108787-58">(</span><span·class="p"·data-group-id="8001108787-58">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·66b0f6215f7e23a98b6dcde058d60ca722039a969797baf4d5ff33d7c51cffe2·...·]-57">}</span><span·class="p">,</span><span·class="w">
257 »       »       »       »       </span><span·class="p"·data-group-id="2308285258-59">{</span><span·class="ss">repair</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="2308285258-59">}</span><span·class="p">,</span><span·class="w">257 »       »       »       »       </span><span·class="p"·data-group-id="8001108787-59">{</span><span·class="ss">repair</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="8001108787-59">}</span><span·class="p">,</span><span·class="w">
258 »       »       »       »       </span><span·class="p"·data-group-id="2308285258-60">{</span><span·class="ss">mode</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">read_only</span><span·class="p"·data-group-id="2308285258-60">}</span><span·class="p">,</span><span·class="w">258 »       »       »       »       </span><span·class="p"·data-group-id="8001108787-60">{</span><span·class="ss">mode</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">read_only</span><span·class="p"·data-group-id="8001108787-60">}</span><span·class="p">,</span><span·class="w">
259 »       »       »       »       </span><span·class="p"·data-group-id="2308285258-61">{</span><span·class="ss">linkto</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="2308285258-62">(</span><span·class="p"·data-group-id="2308285258-62">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·7831c3d74c098237eef526dc586fda661fc48de6b67e265e89d1b181dd14dc28·...·]-54">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">259 »       »       »       »       </span><span·class="p"·data-group-id="8001108787-61">{</span><span·class="ss">linkto</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8001108787-62">(</span><span·class="p"·data-group-id="8001108787-62">)</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·71f09a5fcf901f5b2c2560eb8c1e01bdce7001ccce85e4e279bda41b625d04b9·...·]-54">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
260 »       »       </span><span·class="p"·data-group-id="2308285258-63">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="2308285258-63">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">260 »       »       </span><span·class="p"·data-group-id="8001108787-63">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="8001108787-63">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
261 »       »       ····</span><span·class="p"·data-group-id="2308285258-64">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">restore</span><span·class="p"·data-group-id="2308285258-65">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·ca6a8a4561827e08d8bbb28ec4340569096867c1d2360426185c455e8aa86273·...·]-64">}</span><span·class="p">;</span><span·class="w">261 »       »       ····</span><span·class="p"·data-group-id="8001108787-64">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">restore</span><span·class="p"·data-group-id="8001108787-65">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·6f9d236715c4af5240cbd575b14a72c050bf5d5dae2d039952315f771846ae16·...·]-64">}</span><span·class="p">;</span><span·class="w">
262 »       »       </span><span·class="p"·data-group-id="2308285258-66">{</span><span·class="ss">repaired</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·246,·SHA:·517005b7aaff16f980d73bb6821f3a8641adf50123c7ad14695ab99029c8afbc·...·]-66">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">262 »       »       </span><span·class="p"·data-group-id="8001108787-66">{</span><span·class="ss">repaired</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·246,·SHA:·fb8d28f1563d16d16dd402fdae2db0460829c692d2338b929ff95c373e139b1a·...·]-66">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
263 »       »       ····</span><span·class="p"·data-group-id="2308285258-68">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">restore</span><span·class="p"·data-group-id="2308285258-69">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·29fe41541a77546a0d5e142316b572952f6856a4f32c1e01b1bd71e2b14a2614·...·]-68">}</span><span·class="p">;</span><span·class="w">263 »       »       ····</span><span·class="p"·data-group-id="8001108787-68">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">restore</span><span·class="p"·data-group-id="8001108787-69">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·70ce4862a87a1f828e93c0a73e3cdd85a0160865efece09ebc36c8ca868efe61·...·]-68">}</span><span·class="p">;</span><span·class="w">
264 »       »       </span><span·class="p"·data-group-id="2308285258-70">{</span><span·class="ss">repaired</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·57,·SHA:·b8148df1ad21b5a5c61ebce2b2e3fad9133cd5125eba02c7324511fa5c5385af·...·]-70">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">264 »       »       </span><span·class="p"·data-group-id="8001108787-70">{</span><span·class="ss">repaired</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·57,·SHA:·6070303c0f7315870291b1f44265b184f2e862f058f560dfed1f6c1d42b50417·...·]-70">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
265 »       »       ····</span><span·class="p"·data-group-id="2308285258-71">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">restore</span><span·class="p"·data-group-id="2308285258-72">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·1ad0685e4d60eb878ad4020c854ed20211be8c86354cd23b36296174980cbb29·...·]-71">}</span><span·class="p">;</span><span·class="w">265 »       »       ····</span><span·class="p"·data-group-id="8001108787-71">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">restore</span><span·class="p"·data-group-id="8001108787-72">{</span><span·class="ss">file</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·527,·SHA:·434f0d23cbfc048541713b4fbffe94986997579282662d21d5f042a9d17ff8b2·...·]-71">}</span><span·class="p">;</span><span·class="w">
266 »       »       </span><span·class="p"·data-group-id="2308285258-73">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-73">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">266 »       »       </span><span·class="p"·data-group-id="8001108787-73">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-73">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
267 »       »       ····</span><span·class="p"·data-group-id="2308285258-74">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2308285258-74">}</span><span·class="w">267 »       »       ····</span><span·class="p"·data-group-id="8001108787-74">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="8001108787-74">}</span><span·class="w">
268 »       ····</span><span·class="k">end</span><span·class="w">268 »       ····</span><span·class="k">end</span><span·class="w">
269 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">269 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
270 </span><span·class="c1">%%·Reads·BackupItems·from·the·backup·media</span><span·class="w">270 </span><span·class="c1">%%·Reads·BackupItems·from·the·backup·media</span><span·class="w">
271 </span><span·class="c1">%%</span><span·class="w">271 </span><span·class="c1">%%</span><span·class="w">
272 </span><span·class="c1">%%·Returns·{ok,·OpaqueData,·BackupItems}·or·{error,·Reason}</span><span·class="w">272 </span><span·class="c1">%%·Returns·{ok,·OpaqueData,·BackupItems}·or·{error,·Reason}</span><span·class="w">
Max diff block lines reached; 15220/65675 bytes (23.17%) of diff not shown.
756 B
html2text {}
Max HTML report size reached
135 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_app_b.html
    
Offset 127, 250 lines modifiedOffset 127, 250 lines modified
  
127 <h2·id="mnesia_access-callback-behavior"·class="section-heading">127 <h2·id="mnesia_access-callback-behavior"·class="section-heading">
128 ··<a·href="#mnesia_access-callback-behavior"·class="hover-link">128 ··<a·href="#mnesia_access-callback-behavior"·class="hover-link">
129 ····<i·class="ri-link-m"·aria-hidden="true"></i>129 ····<i·class="ri-link-m"·aria-hidden="true"></i>
130 ··</a>130 ··</a>
131 ··<span·class="text">mnesia_access·Callback·Behavior</span>131 ··<span·class="text">mnesia_access·Callback·Behavior</span>
132 </h2>132 </h2>
133 <pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4502054590-1">(</span><span·class="ss">mnesia_frag</span><span·class="p"·data-group-id="4502054590-1">)</span><span·class="p">.</span><span·class="w">133 <pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7123713543-1">(</span><span·class="ss">mnesia_frag</span><span·class="p"·data-group-id="7123713543-1">)</span><span·class="p">.</span><span·class="w">
  
134 </span><span·class="c1">%%·Callback·functions·when·accessed·within·an·activity</span><span·class="w">134 </span><span·class="c1">%%·Callback·functions·when·accessed·within·an·activity</span><span·class="w">
135 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4502054590-2">(</span><span·class="p"·data-group-id="4502054590-3">[</span><span·class="w">135 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7123713543-2">(</span><span·class="p"·data-group-id="7123713543-3">[</span><span·class="w">
136 »       ·</span><span·class="ss">lock</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">136 »       ·</span><span·class="ss">lock</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">
137 »       ·</span><span·class="ss">write</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">delete</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">delete_object</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">137 »       ·</span><span·class="ss">write</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">delete</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">delete_object</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">
138 »       ·</span><span·class="ss">read</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">match_object</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">all_keys</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">138 »       ·</span><span·class="ss">read</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">match_object</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">all_keys</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">
139 »       ·</span><span·class="ss">select</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="ss">select</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="ss">select_cont</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">139 »       ·</span><span·class="ss">select</span><span·class="p">/</span><span·class="mi">5</span><span·class="p">,</span><span·class="ss">select</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="ss">select_cont</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">
140 »       ·</span><span·class="ss">index_match_object</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">index_read</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="w">140 »       ·</span><span·class="ss">index_match_object</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">index_read</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="w">
141 »       ·</span><span·class="ss">foldl</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foldr</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">table_info</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">141 »       ·</span><span·class="ss">foldl</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foldr</span><span·class="p">/</span><span·class="mi">6</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">table_info</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">
142 »       ·</span><span·class="ss">first</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">next</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prev</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">last</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">142 »       ·</span><span·class="ss">first</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">next</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">prev</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">last</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">
143 »       ·</span><span·class="ss">clear_table</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">143 »       ·</span><span·class="ss">clear_table</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">
144 ·······</span><span·class="p"·data-group-id="4502054590-3">]</span><span·class="p"·data-group-id="4502054590-2">)</span><span·class="p">.</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Callback·functions·which·provides·transparent</span><span·class="w">144 ·······</span><span·class="p"·data-group-id="7123713543-3">]</span><span·class="p"·data-group-id="7123713543-2">)</span><span·class="p">.</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Callback·functions·which·provides·transparent</span><span·class="w">
145 </span><span·class="c1">%%·access·of·fragmented·tables·from·any·activity</span><span·class="w">145 </span><span·class="c1">%%·access·of·fragmented·tables·from·any·activity</span><span·class="w">
146 </span><span·class="c1">%%·access·context.</span><span·class="w">146 </span><span·class="c1">%%·access·context.</span><span·class="w">
  
147 </span><span·class="nf">lock</span><span·class="p"·data-group-id="5555758840-1">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5555758840-2">{</span><span·class="ss">table<[·...·truncated·by·diffoscope;·len:·277,·SHA:·1f93021660de2a42ccc354d2e89004a1600ce51ea815c7ac01a251e568cdec1e·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">147 </span><span·class="nf">lock</span><span·class="p"·data-group-id="9987786406-1">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9987786406-2">{</span><span·class="ss">table<[·...·truncated·by·diffoscope;·len:·277,·SHA:·b4bb5066569c50a285724a9412292b54a666dc1511559b190a7c2d5de998089c·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
148 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="5555758840-3">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="5555758840-3">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">148 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="9987786406-3">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9987786406-3">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
149 »       </span><span·class="p"·data-group-id="5555758840-4">[</span><span·class="n">Tab</span><span·class="p"·data-group-id="5555758840-4">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 »       </span><span·class="p"·data-group-id="9987786406-4">[</span><span·class="n">Tab</span><span·class="p"·data-group-id="9987786406-4">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
150 »       ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="5555758840-5">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5555758840-6">{</span><span·class="ss">table<[·...·truncated·by·diffoscope;·len:·253,·SHA:·e1cdef6ccd8edf1c68dc1be08edf3ea6ef37374efe3bb2777d73b713c63416d8·...·]-5">)</span><span·class="p">;</span><span·class="w">150 »       ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="9987786406-5">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9987786406-6">{</span><span·class="ss">table<[·...·truncated·by·diffoscope;·len:·253,·SHA:·7da6b40d97525e26915457a666f3ef619c2a61448641fb960348760aa6ed8d81·...·]-5">)</span><span·class="p">;</span><span·class="w">
151 »       </span><span·class="n">Frags</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">151 »       </span><span·class="n">Frags</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
152 »       ····</span><span·class="n">DeepNs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5555758840-7">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="5555758840-8">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Op[·...·truncated·by·diffoscope;·len:·386,·SHA:·b14f4d74e8d6d92a4d9e3e826410a515f59b07b1789e51e208317deb35930177·...·]-8">)</span><span·class="w">·</span><span·class="p">||</span><span·class="w">152 »       ····</span><span·class="n">DeepNs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9987786406-7">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="9987786406-8">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Op[·...·truncated·by·diffoscope;·len:·386,·SHA:·21afaa3c13d62a601c87d820963f13e27f41ecf348a61dd00436298e2399c07d·...·]-8">)</span><span·class="w">·</span><span·class="p">||</span><span·class="w">
153 »       »       »       ·</span><span·class="n">F</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="n">Frags</span><span·class="p"·data-group-id="5555758840-7">]</span><span·class="p">,</span><span·class="w">153 »       »       »       ·</span><span·class="n">F</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="n">Frags</span><span·class="p"·data-group-id="9987786406-7">]</span><span·class="p">,</span><span·class="w">
154 »       ····</span><span·class="nc">mnesia_lib</span><span·class="p">:</span><span·class="nf">uniq</span><span·class="p"·data-group-id="5555758840-10">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="5555758840-11">(</span><span·class="n">DeepNs</span><span·class="p"·data-group-id="5555758840-11">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·50c848313f51d89835974ef07da8d27213c0f9b65acfd2431c898c947cb04df8·...·]-10">)</span><span·class="w">154 »       ····</span><span·class="nc">mnesia_lib</span><span·class="p">:</span><span·class="nf">uniq</span><span·class="p"·data-group-id="9987786406-10">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="9987786406-11">(</span><span·class="n">DeepNs</span><span·class="p"·data-group-id="9987786406-11">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·8c72d0fa80a25233f23aa9bf0d0c4dbc2f0ba6df7eb62189779bbdf7581e8f85·...·]-10">)</span><span·class="w">
155 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">155 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
  
156 </span><span·class="nf">lock</span><span·class="p"·data-group-id="5555758840-12">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LockItem</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·76,·SHA:·2939b8b2284ee777177dda4d882d2cfa3711f4fe526a9787083853b6169e4187·...·]-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">156 </span><span·class="nf">lock</span><span·class="p"·data-group-id="9987786406-12">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LockItem</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·76,·SHA:·6dfd2ceb47987e81bb599a24a5b8e90b46c9df91da653f890ba36744da101edc·...·]-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
157 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="5555758840-13">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LockItem</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·76,·SHA:·2939b8b2284ee777177dda4d882d2cfa3711f4fe526a9787083853b6169e4187·...·]-13">)</span><span·class="p">.</span><span·class="w">157 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="9987786406-13">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">LockItem</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·76,·SHA:·6dfd2ceb47987e81bb599a24a5b8e90b46c9df91da653f890ba36744da101edc·...·]-13">)</span><span·class="p">.</span><span·class="w">
  
158 </span><span·class="nf">write</span><span·class="p"·data-group-id="5555758840-14">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·abc5cc8e969c7d2cd37463faebc39031ecc829ff68a46dcf4848766dddff3b8d·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">158 </span><span·class="nf">write</span><span·class="p"·data-group-id="9987786406-14">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·12756fdefc3de9fbbb7f66b9e7a03cc5bae0c620d7a1db1f94cfc2c6fcc3d445·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
159 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">record_to_frag_name</span><span·class="p"·data-group-id="5555758840-15">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Rec</span><span·class="p"·data-group-id="5555758840-15">)</span><span·class="p">,</span><span·class="w">159 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">record_to_frag_name</span><span·class="p"·data-group-id="9987786406-15">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Rec</span><span·class="p"·data-group-id="9987786406-15">)</span><span·class="p">,</span><span·class="w">
160 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="5555758840-16">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·146,·SHA:·39f89691e2c4380e165a6ebfd37fdc354b93769f004679eae42cb51ce640e607·...·]-16">)</span><span·class="p">.</span><span·class="w">160 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="9987786406-16">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·146,·SHA:·22cd7ec986d37839485b1a9b862c805390c6448b40c992a4335169d4f7255992·...·]-16">)</span><span·class="p">.</span><span·class="w">
  
161 </span><span·class="nf">delete</span><span·class="p"·data-group-id="5555758840-17">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·cf840f4193e761cc52bfc157f2a12b5f2f80919d40f37b35b4a12f3453e0d1c6·...·]-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">161 </span><span·class="nf">delete</span><span·class="p"·data-group-id="9987786406-17">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·28fe55bcc787874467c71a502a5561eab07b7607740755cee709376506995b93·...·]-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">key_to_frag_name</span><span·class="p"·data-group-id="5555758840-18">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="5555758840-18">)</span><span·class="p">,</span><span·class="w">162 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">key_to_frag_name</span><span·class="p"·data-group-id="9987786406-18">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="9987786406-18">)</span><span·class="p">,</span><span·class="w">
163 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="5555758840-19">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·146,·SHA:·2a5a896e685b15c0b95de468085d4e94a1c8e9625e607ec0c02997e8d7e7cc0d·...·]-19">)</span><span·class="p">.</span><span·class="w">163 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">delete</span><span·class="p"·data-group-id="9987786406-19">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·146,·SHA:·09f8aa0c57dbda6d45bda9b42bb6062ae374d06248c1f87119d5f4d6c7868c73·...·]-19">)</span><span·class="p">.</span><span·class="w">
  
164 </span><span·class="nf">delete_object</span><span·class="p"·data-group-id="5555758840-20">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·abc5cc8e969c7d2cd37463faebc39031ecc829ff68a46dcf4848766dddff3b8d·...·]-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">164 </span><span·class="nf">delete_object</span><span·class="p"·data-group-id="9987786406-20">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·12756fdefc3de9fbbb7f66b9e7a03cc5bae0c620d7a1db1f94cfc2c6fcc3d445·...·]-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
165 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">record_to_frag_name</span><span·class="p"·data-group-id="5555758840-21">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Rec</span><span·class="p"·data-group-id="5555758840-21">)</span><span·class="p">,</span><span·class="w">165 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">record_to_frag_name</span><span·class="p"·data-group-id="9987786406-21">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Rec</span><span·class="p"·data-group-id="9987786406-21">)</span><span·class="p">,</span><span·class="w">
166 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">delete_object</span><span·class="p"·data-group-id="5555758840-22">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·146,·SHA:·39f89691e2c4380e165a6ebfd37fdc354b93769f004679eae42cb51ce640e607·...·]-22">)</span><span·class="p">.</span><span·class="w">166 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">delete_object</span><span·class="p"·data-group-id="9987786406-22">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·146,·SHA:·22cd7ec986d37839485b1a9b862c805390c6448b40c992a4335169d4f7255992·...·]-22">)</span><span·class="p">.</span><span·class="w">
  
167 </span><span·class="nf">read</span><span·class="p"·data-group-id="5555758840-23">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·cf840f4193e761cc52bfc157f2a12b5f2f80919d40f37b35b4a12f3453e0d1c6·...·]-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">167 </span><span·class="nf">read</span><span·class="p"·data-group-id="9987786406-23">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·28fe55bcc787874467c71a502a5561eab07b7607740755cee709376506995b93·...·]-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
168 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">key_to_frag_name</span><span·class="p"·data-group-id="5555758840-24">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="5555758840-24">)</span><span·class="p">,</span><span·class="w">168 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">key_to_frag_name</span><span·class="p"·data-group-id="9987786406-24">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="9987786406-24">)</span><span·class="p">,</span><span·class="w">
169 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><span·class="p"·data-group-id="5555758840-25">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·146,·SHA:·2a5a896e685b15c0b95de468085d4e94a1c8e9625e607ec0c02997e8d7e7cc0d·...·]-25">)</span><span·class="p">.</span><span·class="w">169 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><span·class="p"·data-group-id="9987786406-25">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·146,·SHA:·09f8aa0c57dbda6d45bda9b42bb6062ae374d06248c1f87119d5f4d6c7868c73·...·]-25">)</span><span·class="p">.</span><span·class="w">
  
170 </span><span·class="nf">match_object</span><span·class="p"·data-group-id="5555758840-26">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·149,·SHA:·c508d6f943450bcb33f091d5ac85d4779a98a25736853cf31e95dd3f03c83187·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">170 </span><span·class="nf">match_object</span><span·class="p"·data-group-id="9987786406-26">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·149,·SHA:·7a84043acbc085bde34737eb887cff75751455589a7a7f05dcdff1a38e6499b2·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
171 ····</span><span·class="n">MatchSpec</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5555758840-27">[</span><span·class="p"·data-group-id="5555758840-28">{</span><span·class="n">HeadPat</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5555758840-29">[</span><span·class="p"·data-group-id="5555758840-29">][·...·truncated·by·diffoscope;·len:·294,·SHA:·401303f4ac77ce1cdb082a3cf427b9ba3a9ebcf7df9b2233468cd9bd3fa0d85f·...·]-27">]</span><span·class="p">,</span><span·class="w">171 ····</span><span·class="n">MatchSpec</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9987786406-27">[</span><span·class="p"·data-group-id="9987786406-28">{</span><span·class="n">HeadPat</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9987786406-29">[</span><span·class="p"·data-group-id="9987786406-29">][·...·truncated·by·diffoscope;·len:·294,·SHA:·057e100090d76c2b45f233e5f60dcc59abf10a2e4feec94b5dbf235d1df2afdc·...·]-27">]</span><span·class="p">,</span><span·class="w">
172 ····</span><span·class="nf">select</span><span·class="p"·data-group-id="5555758840-31">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·151,·SHA:·f8503f1b525211339141287d357800c0bfe01ccfb0c6c81abb6ca5f3b846c434·...·]-31">)</span><span·class="p">.</span><span·class="w">172 ····</span><span·class="nf">select</span><span·class="p"·data-group-id="9987786406-31">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·151,·SHA:·8be7bcd4ba235ff6b3aa730b4c0b46c08bd49317d2552810a3899c4e1b86da1c·...·]-31">)</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">select</span><span·class="p"·data-group-id="5555758840-32">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·151,·SHA:·f8503f1b525211339141287d357800c0bfe01ccfb0c6c81abb6ca5f3b846c434·...·]-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 </span><span·class="nf">select</span><span·class="p"·data-group-id="9987786406-32">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·151,·SHA:·8be7bcd4ba235ff6b3aa730b4c0b46c08bd49317d2552810a3899c4e1b86da1c·...·]-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ····</span><span·class="nf">do_select</span><span·class="p"·data-group-id="5555758840-33">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·151,·SHA:·f8503f1b525211339141287d357800c0bfe01ccfb0c6c81abb6ca5f3b846c434·...·]-33">)</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="nf">do_select</span><span·class="p"·data-group-id="9987786406-33">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·151,·SHA:·8be7bcd4ba235ff6b3aa730b4c0b46c08bd49317d2552810a3899c4e1b86da1c·...·]-33">)</span><span·class="p">.</span><span·class="w">
  
  
175 </span><span·class="nf">select</span><span·class="p"·data-group-id="5555758840-34">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·227,·SHA:·6f61d999d32a36f94873ea4518a93f52bed6a345078ca392f90e0f8db85948c7·...·]-34">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 </span><span·class="nf">select</span><span·class="p"·data-group-id="9987786406-34">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·227,·SHA:·27caf475ecfdd98655ea1cfbf9b8f2c01d3acf071e28e004212fa42fc0f14698·...·]-34">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
176 ····</span><span·class="nf">init_select</span><span·class="p"·data-group-id="5555758840-35">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·227,·SHA:·6f61d999d32a36f94873ea4518a93f52bed6a345078ca392f90e0f8db85948c7·...·]-35">)</span><span·class="p">.</span><span·class="w">176 ····</span><span·class="nf">init_select</span><span·class="p"·data-group-id="9987786406-35">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·227,·SHA:·27caf475ecfdd98655ea1cfbf9b8f2c01d3acf071e28e004212fa42fc0f14698·...·]-35">)</span><span·class="p">.</span><span·class="w">
  
  
177 </span><span·class="nf">all_keys</span><span·class="p"·data-group-id="5555758840-36">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·71,·SHA:·371f6b82e8bccdcb06ecac1e25ad9523058c032693e6933764cb41b18e45afeb·...·]-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">177 </span><span·class="nf">all_keys</span><span·class="p"·data-group-id="9987786406-36">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·71,·SHA:·8dfed952d6432373d5dbc368f8fe26f5607058edb0b6183d42805ce5e52b5232·...·]-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
178 ····</span><span·class="n">Match</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5555758840-37">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">all_keys</span><span·class="p"·data-group-id="5555758840-38">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·212,·SHA:·616c09c5edff4f8a58b3bc180233ff9d06dec3acf8714e80701f945c009c383c·...·]-38">)</span><span·class="w">178 ····</span><span·class="n">Match</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9987786406-37">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">all_keys</span><span·class="p"·data-group-id="9987786406-38">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·212,·SHA:·f7c1c877e7386ba058a2564f36f91fa6b73ee84ec3be5280249b2cab87402a19·...·]-38">)</span><span·class="w">
179 »       ·····</span><span·class="p">||</span><span·class="w">·</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="5555758840-39">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="5555758840-39">)</span><span·class="p"·data-group-id="5555758840-37">]</span><span·class="p">,</span><span·class="w">179 »       ·····</span><span·class="p">||</span><span·class="w">·</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="9987786406-39">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9987786406-39">)</span><span·class="p"·data-group-id="9987786406-37">]</span><span·class="p">,</span><span·class="w">
180 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="5555758840-40">(</span><span·class="n">Match</span><span·class="p"·data-group-id="5555758840-40">)</span><span·class="p">.</span><span·class="w">180 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="9987786406-40">(</span><span·class="n">Match</span><span·class="p"·data-group-id="9987786406-40">)</span><span·class="p">.</span><span·class="w">
  
181 </span><span·class="nf">clear_table</span><span·class="p"·data-group-id="5555758840-41">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·66,·SHA:·e66702d4653d8e2c3575c6833339d0d990fa94279b033d9816dadda9c36fe265·...·]-41">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">181 </span><span·class="nf">clear_table</span><span·class="p"·data-group-id="9987786406-41">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·66,·SHA:·7e340fcdc885f4a2718f3122b52e0ab980667c52fc65e0440d954706ebd78203·...·]-41">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
182 ····</span><span·class="p"·data-group-id="5555758840-42">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">clear_table</span><span·class="p"·data-group-id="5555758840-43">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·609,·SHA:·9036ccc5f5ff4d0af32e5671b62a4231135261bf9a33c162178c56e3a75804a7·...·]-42">]</span><span·class="p">,</span><span·class="w">182 ····</span><span·class="p"·data-group-id="9987786406-42">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">clear_table</span><span·class="p"·data-group-id="9987786406-43">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·609,·SHA:·f36230d7e349cf9b5d7ee4c9c5ea6034848f5a85962012231d46a44f5ecb89eb·...·]-42">]</span><span·class="p">,</span><span·class="w">
183 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">183 ····</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
  
184 </span><span·class="nf">index_match_object</span><span·class="p"·data-group-id="5555758840-45">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·220,·SHA:·c10eab19705b163eae368c08cb2d28821452e803aca66eafe5827cf65960846c·...·]-45">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">184 </span><span·class="nf">index_match_object</span><span·class="p"·data-group-id="9987786406-45">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·220,·SHA:·9696f1c7365125cb41bdebd1ab851b7d7e3b30bd797b03b3447e0d2c260afccc·...·]-45">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
185 ····</span><span·class="n">Match</span><span·class="w">·</span><span·class="o">=</span><span·class="w">185 ····</span><span·class="n">Match</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
186 »       </span><span·class="p"·data-group-id="5555758840-46">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">index_match_object</span><span·class="p"·data-group-id="5555758840-47">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·371,·SHA:·0b600e05ccf7d8c6f41650466a0a0de6ecad0f4d375d5e1eaa16fab1cce46af0·...·]-47">)</span><span·class="w">186 »       </span><span·class="p"·data-group-id="9987786406-46">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">index_match_object</span><span·class="p"·data-group-id="9987786406-47">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·371,·SHA:·3834b4a5e41979ebadc6e186b6a670a5b8afac87ec6f7aa280363b70495a01bc·...·]-47">)</span><span·class="w">
187 »       ·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="5555758840-48">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="5555758840-48">)</span><span·class="p"·data-group-id="5555758840-46">]</span><span·class="p">,</span><span·class="w">187 »       ·</span><span·class="p">||</span><span·class="w">·</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="9987786406-48">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9987786406-48">)</span><span·class="p"·data-group-id="9987786406-46">]</span><span·class="p">,</span><span·class="w">
188 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="5555758840-49">(</span><span·class="n">Match</span><span·class="p"·data-group-id="5555758840-49">)</span><span·class="p">.</span><span·class="w">188 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="9987786406-49">(</span><span·class="n">Match</span><span·class="p"·data-group-id="9987786406-49">)</span><span·class="p">.</span><span·class="w">
  
189 </span><span·class="nf">index_read</span><span·class="p"·data-group-id="5555758840-50">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·220,·SHA:·41da7e3588ce7378c8f6f86bc44e42017ad7214ff7b2ae20ecbac137f3811147·...·]-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">189 </span><span·class="nf">index_read</span><span·class="p"·data-group-id="9987786406-50">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·220,·SHA:·42e8e041a66dcb0be69c28255a34e4a3c1ac1ac674a4efb2ab8010297cd300ba·...·]-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
190 ····</span><span·class="n">Match</span><span·class="w">·</span><span·class="o">=</span><span·class="w">190 ····</span><span·class="n">Match</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
191 »       </span><span·class="p"·data-group-id="5555758840-51">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">index_read</span><span·class="p"·data-group-id="5555758840-52">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·363,·SHA:·fb1600cbeb2fdb4b9789dc16427267e384acebde9b73d5ad3daff648cb5b9e9a·...·]-52">)</span><span·class="w">191 »       </span><span·class="p"·data-group-id="9987786406-51">[</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">index_read</span><span·class="p"·data-group-id="9987786406-52">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·363,·SHA:·3cd66ba6e89ecb694359dafe4ab9612e48de824ee060ef246fc0b9325227f6c7·...·]-52">)</span><span·class="w">
192 »       ·····</span><span·class="p">||</span><span·class="w">·</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="5555758840-53">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="5555758840-53">)</span><span·class="p"·data-group-id="5555758840-51">]</span><span·class="p">,</span><span·class="w">192 »       ·····</span><span·class="p">||</span><span·class="w">·</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="9987786406-53">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9987786406-53">)</span><span·class="p"·data-group-id="9987786406-51">]</span><span·class="p">,</span><span·class="w">
193 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="5555758840-54">(</span><span·class="n">Match</span><span·class="p"·data-group-id="5555758840-54">)</span><span·class="p">.</span><span·class="w">193 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="9987786406-54">(</span><span·class="n">Match</span><span·class="p"·data-group-id="9987786406-54">)</span><span·class="p">.</span><span·class="w">
  
194 </span><span·class="nf">foldl</span><span·class="p"·data-group-id="5555758840-55">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·219,·SHA:·de86925796b35205e70c9e1f40b7b01f14ba0930158f27d20f23f0055b2a4b1d·...·]-55">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">194 </span><span·class="nf">foldl</span><span·class="p"·data-group-id="9987786406-55">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·219,·SHA:·6ce94dd9d6c77fa52b4217f9236a21c7a9699056ff908afd28e921c296a94b1e·...·]-55">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
195 ····</span><span·class="n">Fun2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5555758840-56">(</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p"·data-group-id="5555758840-56">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">195 ····</span><span·class="n">Fun2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="9987786406-56">(</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p"·data-group-id="9987786406-56">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
196 »       »       ···</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="5555758840-57">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·218,·SHA:·94767fe19292dcfef61c0e944f4b01a6dc49173d68b6289e67f2c33cc6b4611b·...·]-57">)</span><span·class="w">196 »       »       ···</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="9987786406-57">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·218,·SHA:·6d97d7677ea5c6d6357edccdc3c4f1aa57845c361324010c66d8a2f6fad6f329·...·]-57">)</span><span·class="w">
197 »       ···</span><span·class="k">end</span><span·class="p">,</span><span·class="w">197 »       ···</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
198 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="5555758840-58">(</span><span·class="n">Fun2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="5555758840-59">(</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·d7e3289370d615a16bf26a4bc1f98c64ca0ba0ce31a330bae68aeec0ebbe5811·...·]-58">)</span><span·class="p">.</span><span·class="w">198 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="9987786406-58">(</span><span·class="n">Fun2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="9987786406-59">(</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·a505eb7fc15d622a73d74dca9a34af8b570264c653c7598f15258c08da6aa173·...·]-58">)</span><span·class="p">.</span><span·class="w">
  
199 </span><span·class="nf">foldr</span><span·class="p"·data-group-id="5555758840-60">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·219,·SHA:·de86925796b35205e70c9e1f40b7b01f14ba0930158f27d20f23f0055b2a4b1d·...·]-60">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">199 </span><span·class="nf">foldr</span><span·class="p"·data-group-id="9987786406-60">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·219,·SHA:·6ce94dd9d6c77fa52b4217f9236a21c7a9699056ff908afd28e921c296a94b1e·...·]-60">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
200 ····</span><span·class="n">Fun2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5555758840-61">(</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p"·data-group-id="5555758840-61">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">200 ····</span><span·class="n">Fun2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="9987786406-61">(</span><span·class="n">Frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p"·data-group-id="9987786406-61">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
201 »       »       ···</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">foldr</span><span·class="p"·data-group-id="5555758840-62">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·218,·SHA:·94767fe19292dcfef61c0e944f4b01a6dc49173d68b6289e67f2c33cc6b4611b·...·]-62">)</span><span·class="w">201 »       »       ···</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">foldr</span><span·class="p"·data-group-id="9987786406-62">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·218,·SHA:·6d97d7677ea5c6d6357edccdc3c4f1aa57845c361324010c66d8a2f6fad6f329·...·]-62">)</span><span·class="w">
202 »       ···</span><span·class="k">end</span><span·class="p">,</span><span·class="w">202 »       ···</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
203 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldr</span><span·class="p"·data-group-id="5555758840-63">(</span><span·class="n">Fun2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="5555758840-64">(</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·497d098eb3002d5d4fa76e77deadeec25f67e6123395da91eecb934ae6d29580·...·]-63">)</span><span·class="p">.</span><span·class="w">203 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldr</span><span·class="p"·data-group-id="9987786406-63">(</span><span·class="n">Fun2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">frag_names</span><span·class="p"·data-group-id="9987786406-64">(</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·22b06dc61c735540732a8a1cc9a3c80e822af8875b600a42cee10fc25a19f6d5·...·]-63">)</span><span·class="p">.</span><span·class="w">
  
204 </span><span·class="nf">table_info</span><span·class="p"·data-group-id="5555758840-65">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5555758840-66">{</span><span·class="n">Tab</[·...·truncated·by·diffoscope;·len:·249,·SHA:·caf9614887301ae8ad2466b43612b7ac4e3a1bfa2d6e30687130f4b97ab253df·...·]-65">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">204 </span><span·class="nf">table_info</span><span·class="p"·data-group-id="9987786406-65">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9987786406-66">{</span><span·class="n">Tab</[·...·truncated·by·diffoscope;·len:·249,·SHA:·c3646cbe7a58e63008414be732a1cea2722f8ca85d0914360ddeae8b5f512bd0·...·]-65">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
205 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">key_to_frag_name</span><span·class="p"·data-group-id="5555758840-67">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="5555758840-67">)</span><span·class="p">,</span><span·class="w">205 ····</span><span·class="n">Frag</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">key_to_frag_name</span><span·class="p"·data-group-id="9987786406-67">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="9987786406-67">)</span><span·class="p">,</span><span·class="w">
206 ····</span><span·class="nf">table_info2</span><span·class="p"·data-group-id="5555758840-68">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·142,·SHA:·0b75a2f45de6cca96743986424ed4cc68ed51510e878b17158b6399166b9d243·...·]-68">)</span><span·class="p">;</span><span·class="w">206 ····</span><span·class="nf">table_info2</span><span·class="p"·data-group-id="9987786406-68">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·142,·SHA:·8ef027e66d05c7a1984c982cc39a188de4f8b0c944f93c0444048ed5eb1466ba·...·]-68">)</span><span·class="p">;</span><span·class="w">
207 </span><span·class="nf">table_info</span><span·class="p"·data-group-id="5555758840-69">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·67,·SHA:·33cbd459ac10126e997af73fb2c426c195471ba742e5362f5ea50a4567caba74·...·]-69">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">207 </span><span·class="nf">table_info</span><span·class="p"·data-group-id="9987786406-69">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·67,·SHA:·ae5d3dd567f05f2e6e781b3a56bbb01d8bf276260e515a8bd68d10746a79f9ad·...·]-69">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
208 ····</span><span·class="nf">table_info2</span><span·class="p"·data-group-id="5555758840-70">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·141,·SHA:·a200a423532ed95b41248fe2bb6e2145baa9de4a4bd4e3de47256eaf0ad327b2·...·]-70">)</span><span·class="p">.</span><span·class="w">208 ····</span><span·class="nf">table_info2</span><span·class="p"·data-group-id="9987786406-70">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·141,·SHA:·769e7d41ed5f4b32248cc75b2633189ceb5e2cec0e80679d8302906d84a43ec5·...·]-70">)</span><span·class="p">.</span><span·class="w">
  
209 </span><span·class="nf">table_info2</span><span·class="p"·data-group-id="5555758840-71">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·142,·SHA:·0b75a2f45de6cca96743986424ed4cc68ed51510e878b17158b6399166b9d243·...·]-71">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">209 </span><span·class="nf">table_info2</span><span·class="p"·data-group-id="9987786406-71">(</span><span·class="n">ActivityId</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Opaque</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·142,·SHA:·8ef027e66d05c7a1984c982cc39a188de4f8b0c944f93c0444048ed5eb1466ba·...·]-71">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
210 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Item</span><span·class="w">·</span><span·class="k">of</span><span·class="w">210 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Item</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
211 »       </span><span·class="nb">size</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">211 »       </span><span·class="nb">size</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
212 »       ····</span><span·class="n">SumFun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5555758840-72">(</span><span·class="p"·data-group-id="5555758840-73">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Size</span><span·class="p"·data-group-id="5555758840-73">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·89,·SHA:·386e9aa2367b8e54808db961a2c2d46ad010ee5a415ffb332ab3ff297b4397a8·...·]-72">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Size</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">212 »       ····</span><span·class="n">SumFun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="9987786406-72">(</span><span·class="p"·data-group-id="9987786406-73">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Size</span><span·class="p"·data-group-id="9987786406-73">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·89,·SHA:·b1bd54fc33263cc341723885f03dd3ad0923aeff347b47b6c45c516877e9dd93·...·]-72">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Size</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
213 »       ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="5555758840-74">(</span><span·class="n">SumFun</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">frag_size</span><span·class="p"·data-group-id="5555758840-75">(</s[·...·truncated·by·diffoscope;·len:·283,·SHA:·e09792d6cc15ca3cf54ff86f9bb31505197b600b4c000040d307b59a736ccd47·...·]-74">)</span><span·class="p">;</span><span·class="w">213 »       ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="9987786406-74">(</span><span·class="n">SumFun</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">frag_size</span><span·class="p"·data-group-id="9987786406-75">(</s[·...·truncated·by·diffoscope;·len:·283,·SHA:·c1872109326c154c87df324976162755f5f4cb33a2e721f5325c7508c68c3ad4·...·]-74">)</span><span·class="p">;</span><span·class="w">
214 »       </span><span·class="nb">memory</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 »       </span><span·class="nb">memory</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 »       ····</span><span·class="n">SumFun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5555758840-76">(</span><span·class="p"·data-group-id="5555758840-77">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Size</span><span·class="p"·data-group-id="5555758840-77">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·89,·SHA:·386e9aa2367b8e54808db961a2c2d46ad010ee5a415ffb332ab3ff297b4397a8·...·]-76">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Size</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">215 »       ····</span><span·class="n">SumFun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="9987786406-76">(</span><span·class="p"·data-group-id="9987786406-77">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Size</span><span·class="p"·data-group-id="9987786406-77">}</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·89,·SHA:·b1bd54fc33263cc341723885f03dd3ad0923aeff347b47b6c45c516877e9dd93·...·]-76">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Size</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
216 »       ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="5555758840-78">(</span><span·class="n">SumFun</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">frag_memory</span><span·class="p"·data-group-id="5555758840-79">(<[·...·truncated·by·diffoscope;·len:·285,·SHA:·6ab263d81ec226f210edffe533547ec959731fdbc699868adfcbf5d6842ac66a·...·]-78">)</span><span·class="p">;</span><span·class="w">216 »       ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="9987786406-78">(</span><span·class="n">SumFun</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">frag_memory</span><span·class="p"·data-group-id="9987786406-79">(<[·...·truncated·by·diffoscope;·len:·285,·SHA:·ac6050fbb9d22a439d241677b5b096adc69a9811c9c6618e181d3dc73cb3f1ea·...·]-78">)</span><span·class="p">;</span><span·class="w">
217 »       </span><span·class="ss">base_table</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">217 »       </span><span·class="ss">base_table</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
218 »       ····</span><span·class="nf">lookup_prop</span><span·class="p"·data-group-id="5555758840-80">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">base_table</span><span·class="p"·data-group-id="5555758840-80">)</span><span·class="p">;</span><span·class="w">218 »       ····</span><span·class="nf">lookup_prop</span><span·class="p"·data-group-id="9987786406-80">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">base_table</span><span·class="p"·data-group-id="9987786406-80">)</span><span·class="p">;</span><span·class="w">
219 »       </span><span·class="ss">node_pool</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 »       </span><span·class="ss">node_pool</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 »       ····</span><span·class="nf">lookup_prop</span><span·class="p"·data-group-id="5555758840-81">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node_pool</span><span·class="p"·data-group-id="5555758840-81">)</span><span·class="p">;</span><span·class="w">220 »       ····</span><span·class="nf">lookup_prop</span><span·class="p"·data-group-id="9987786406-81">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">node_pool</span><span·class="p"·data-group-id="9987786406-81">)</span><span·class="p">;</span><span·class="w">
221 »       </span><span·class="ss">n_fragments</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">221 »       </span><span·class="ss">n_fragments</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
222 »       ····</span><span·class="n">FH</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">lookup_frag_hash</span><span·class="p"·data-group-id="5555758840-82">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="5555758840-82">)</span><span·class="p">,</span><span·class="w">222 »       ····</span><span·class="n">FH</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">lookup_frag_hash</span><span·class="p"·data-group-id="9987786406-82">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9987786406-82">)</span><span·class="p">,</span><span·class="w">
223 »       ····</span><span·class="n">FH</span><span·class="o">#</span><span·class="ss">frag_state</span><span·class="p">.</span><span·class="ss">n_fragments</span><span·class="p">;</span><span·class="w">223 »       ····</span><span·class="n">FH</span><span·class="o">#</span><span·class="ss">frag_state</span><span·class="p">.</span><span·class="ss">n_fragments</span><span·class="p">;</span><span·class="w">
224 »       </span><span·class="ss">foreign_key</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 »       </span><span·class="ss">foreign_key</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 »       ····</span><span·class="n">FH</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">lookup_frag_hash</span><span·class="p"·data-group-id="5555758840-83">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="5555758840-83">)</span><span·class="p">,</span><span·class="w">225 »       ····</span><span·class="n">FH</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">lookup_frag_hash</span><span·class="p"·data-group-id="9987786406-83">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9987786406-83">)</span><span·class="p">,</span><span·class="w">
226 »       ····</span><span·class="n">FH</span><span·class="o">#</span><span·class="ss">frag_state</span><span·class="p">.</span><span·class="ss">foreign_key</span><span·class="p">;</span><span·class="w">226 »       ····</span><span·class="n">FH</span><span·class="o">#</span><span·class="ss">frag_state</span><span·class="p">.</span><span·class="ss">foreign_key</span><span·class="p">;</span><span·class="w">
227 »       </span><span·class="ss">foreigners</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 »       </span><span·class="ss">foreigners</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 »       ····</span><span·class="nf">lookup_foreigners</span><span·class="p"·data-group-id="5555758840-84">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="5555758840-84">)</span><span·class="p">;</span><span·class="w">228 »       ····</span><span·class="nf">lookup_foreigners</span><span·class="p"·data-group-id="9987786406-84">(</span><span·class="n">Tab</span><span·class="p"·data-group-id="9987786406-84">)</span><span·class="p">;</span><span·class="w">
229 »       </span><span·class="ss">n_ram_copies</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">229 »       </span><span·class="ss">n_ram_copies</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
230 »       ····</span><span·class="nf">length</span><span·class="p"·data-group-id="5555758840-85">(</span><span·class="nf">val</span><span·class="p"·data-group-id="5555758840-86">(</span><span·class="p"·data-group-id="5555758840-87">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ram_cop[·...·truncated·by·diffoscope;·len:·159,·SHA:·c10c9c7dce6032a82ad5d4a7b54cad7ff131d7fe310e9148c7d22a6a84cfe2fa·...·]-85">)</span><span·class="p">;</span><span·class="w">230 »       ····</span><span·class="nf">length</span><span·class="p"·data-group-id="9987786406-85">(</span><span·class="nf">val</span><span·class="p"·data-group-id="9987786406-86">(</span><span·class="p"·data-group-id="9987786406-87">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ram_cop[·...·truncated·by·diffoscope;·len:·159,·SHA:·3492bb9a126124d058017a2391e2b3226a607a822caade270a928b5ef8ee77be·...·]-85">)</span><span·class="p">;</span><span·class="w">
231 »       </span><span·class="ss">n_disc_copies</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 »       </span><span·class="ss">n_disc_copies</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 »       ····</span><span·class="nf">length</span><span·class="p"·data-group-id="5555758840-88">(</span><span·class="nf">val</span><span·class="p"·data-group-id="5555758840-89">(</span><span·class="p"·data-group-id="5555758840-90">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disc_co[·...·truncated·by·diffoscope;·len:·160,·SHA:·1d46cd47e4524c244ac5f3d29a2882efd77ed1e80aa97c0017ca14d6c39fa949·...·]-88">)</span><span·class="p">;</span><span·class="w">232 »       ····</span><span·class="nf">length</span><span·class="p"·data-group-id="9987786406-88">(</span><span·class="nf">val</span><span·class="p"·data-group-id="9987786406-89">(</span><span·class="p"·data-group-id="9987786406-90">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disc_co[·...·truncated·by·diffoscope;·len:·160,·SHA:·29fd4bf43543f12316b1be02f090842875f734c61005e6427429410338e445cb·...·]-88">)</span><span·class="p">;</span><span·class="w">
Max diff block lines reached; 59623/137254 bytes (43.44%) of diff not shown.
816 B
html2text {}
Max HTML report size reached
70.1 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_app_c.html
    
Offset 127, 144 lines modifiedOffset 127, 144 lines modified
  
127 <h2·id="mnesia_frag_hash-callback-behavior"·class="section-heading">127 <h2·id="mnesia_frag_hash-callback-behavior"·class="section-heading">
128 ··<a·href="#mnesia_frag_hash-callback-behavior"·class="hover-link">128 ··<a·href="#mnesia_frag_hash-callback-behavior"·class="hover-link">
129 ····<i·class="ri-link-m"·aria-hidden="true"></i>129 ····<i·class="ri-link-m"·aria-hidden="true"></i>
130 ··</a>130 ··</a>
131 ··<span·class="text">mnesia_frag_hash·Callback·Behavior</span>131 ··<span·class="text">mnesia_frag_hash·Callback·Behavior</span>
132 </h2>132 </h2>
133 <pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7467880114-1">(</span><span·class="ss">mnesia_frag_hash</span><span·class="p"·data-group-id="7467880114-1">)</span><span·class="p">.</span><span·class="w">133 <pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0917276061-1">(</span><span·class="ss">mnesia_frag_hash</span><span·class="p"·data-group-id="0917276061-1">)</span><span·class="p">.</span><span·class="w">
134 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="7467880114-2">(</span><span·class="p"·data-group-id="7467880114-3">[</span><span·class="p"·data-group-id="7467880114-4">{</span><span·class="ss">nowarn_deprecated_function</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·461,·SHA:·77a35e4c06e83c2eab92b390d311a69340fb0b36a3db79e8bca6d6fdf56831f4·...·]-2">)</span><span·class="p">.</span><span·class="w">134 </span><span·class="p">-</span><span·class="na">compile</span><span·class="p"·data-group-id="0917276061-2">(</span><span·class="p"·data-group-id="0917276061-3">[</span><span·class="p"·data-group-id="0917276061-4">{</span><span·class="ss">nowarn_deprecated_function</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·461,·SHA:·0a3e84237fa771b37bc3239e3e665971acf9d46b05c00a0ee98f5c5dd8deb1da·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
135 </span><span·class="c1">%%·Fragmented·Table·Hashing·callback·functions</span><span·class="w">135 </span><span·class="c1">%%·Fragmented·Table·Hashing·callback·functions</span><span·class="w">
136 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7467880114-7">(</span><span·class="p"·data-group-id="7467880114-8">[</span><span·class="w">136 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0917276061-7">(</span><span·class="p"·data-group-id="0917276061-8">[</span><span·class="w">
137 »       ·</span><span·class="ss">init_state</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">137 »       ·</span><span·class="ss">init_state</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">
138 »       ·</span><span·class="ss">add_frag</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">138 »       ·</span><span·class="ss">add_frag</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
139 »       ·</span><span·class="ss">del_frag</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">139 »       ·</span><span·class="ss">del_frag</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
140 »       ·</span><span·class="ss">key_to_frag_number</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">140 »       ·</span><span·class="ss">key_to_frag_number</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">
141 »       ·</span><span·class="ss">match_spec_to_frag_numbers</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">141 »       ·</span><span·class="ss">match_spec_to_frag_numbers</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">
142 »       </span><span·class="p"·data-group-id="7467880114-8">]</span><span·class="p"·data-group-id="7467880114-7">)</span><span·class="p">.</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="1467893161-1">(</span><span·class="ss">hash_state</span><span·class="p">,</span><span·class="w">142 »       </span><span·class="p"·data-group-id="0917276061-8">]</span><span·class="p"·data-group-id="0917276061-7">)</span><span·class="p">.</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="6578966036-1">(</span><span·class="ss">hash_state</span><span·class="p">,</span><span·class="w">
143 »       </span><span·class="p"·data-group-id="1467893161-2">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="w">143 »       </span><span·class="p"·data-group-id="6578966036-2">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="w">
144 »       ·</span><span·class="ss">next_n_to_split</span><span·class="p">,</span><span·class="w">144 »       ·</span><span·class="ss">next_n_to_split</span><span·class="p">,</span><span·class="w">
145 »       ·</span><span·class="ss">n_doubles</span><span·class="p">,</span><span·class="w">145 »       ·</span><span·class="ss">n_doubles</span><span·class="p">,</span><span·class="w">
146 »       ·</span><span·class="ss">function</span><span·class="p"·data-group-id="1467893161-2">}</span><span·class="p"·data-group-id="1467893161-1">)</span><span·class="p">.</span><span·class="w">146 »       ·</span><span·class="ss">function</span><span·class="p"·data-group-id="6578966036-2">}</span><span·class="p"·data-group-id="6578966036-1">)</span><span·class="p">.</span><span·class="w">
  
147 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">147 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">
148 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">init_state</span><span·class="p"·data-group-id="1467893161-3">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="1467893161-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">NewState</span><span·class="w">·</span><span·class="k">when</span><span·class="w">148 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">init_state</span><span·class="p"·data-group-id="6578966036-3">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="6578966036-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">NewState</span><span·class="w">·</span><span·class="k">when</span><span·class="w">
149 ······</span><span·class="n">Tab</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="1467893161-4">(</span><span·class="p"·data-group-id="1467893161-4">)</span><span·class="p">,</span><span·class="w">149 ······</span><span·class="n">Tab</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="6578966036-4">(</span><span·class="p"·data-group-id="6578966036-4">)</span><span·class="p">,</span><span·class="w">
150 ······</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1467893161-5">(</span><span·class="p"·data-group-id="1467893161-5">)</span><span·class="p">,</span><span·class="w">150 ······</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6578966036-5">(</span><span·class="p"·data-group-id="6578966036-5">)</span><span·class="p">,</span><span·class="w">
151 ······</span><span·class="n">NewState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1467893161-6">(</span><span·class="p"·data-group-id="1467893161-6">)</span><span·class="p">.</span><span·class="w">151 ······</span><span·class="n">NewState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6578966036-6">(</span><span·class="p"·data-group-id="6578966036-6">)</span><span·class="p">.</span><span·class="w">
152 </span><span·class="nf">init_state</span><span·class="p"·data-group-id="1467893161-7">(</span><span·class="p">_</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="1467893161-7">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">State</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">152 </span><span·class="nf">init_state</span><span·class="p"·data-group-id="6578966036-7">(</span><span·class="p">_</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="6578966036-7">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">State</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
153 ····</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-8">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">153 ····</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-8">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
154 »       »       </span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">154 »       »       </span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
155 »       »       </span><span·class="ss">n_doubles</span><span·class="w">·······</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">155 »       »       </span><span·class="ss">n_doubles</span><span·class="w">·······</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
156 »       »       </span><span·class="ss">function</span><span·class="w">········</span><span·class="o">=</span><span·class="w">·</span><span·class="nb">phash2</span><span·class="p"·data-group-id="1467893161-8">}</span><span·class="p">.</span><span·class="w">156 »       »       </span><span·class="ss">function</span><span·class="w">········</span><span·class="o">=</span><span·class="w">·</span><span·class="nb">phash2</span><span·class="p"·data-group-id="6578966036-8">}</span><span·class="p">.</span><span·class="w">
  
157 </span><span·class="nf">convert_old_state</span><span·class="p"·data-group-id="1467893161-9">(</span><span·class="p"·data-group-id="1467893161-10">{</span><span·class="ss">hash_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">P</span><s[·...·truncated·by·diffoscope;·len:·165,·SHA:·87626bd0df54a0c788c5bce505aa8c58846ca26f22f127b9098a049f83f97e73·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 </span><span·class="nf">convert_old_state</span><span·class="p"·data-group-id="6578966036-9">(</span><span·class="p"·data-group-id="6578966036-10">{</span><span·class="ss">hash_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">P</span><s[·...·truncated·by·diffoscope;·len:·165,·SHA:·78063796ee0f14ecdf9921bc39e7f535336fd814d31dc69085bb625444928830·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ····</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-11">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">158 ····</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-11">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="n">N</span><span·class="p">,</span><span·class="w">
159 »       »       </span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="p">,</span><span·class="w">159 »       »       </span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="p">,</span><span·class="w">
160 »       »       </span><span·class="ss">n_doubles</span><span·class="w">·······</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L</span><span·class="p">,</span><span·class="w">160 »       »       </span><span·class="ss">n_doubles</span><span·class="w">·······</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L</span><span·class="p">,</span><span·class="w">
161 »       »       </span><span·class="ss">function</span><span·class="w">········</span><span·class="o">=</span><span·class="w">·</span><span·class="nb">phash</span><span·class="p"·data-group-id="1467893161-11">}</span><span·class="p">.</span><span·class="w">161 »       »       </span><span·class="ss">function</span><span·class="w">········</span><span·class="o">=</span><span·class="w">·</span><span·class="nb">phash</span><span·class="p"·data-group-id="6578966036-11">}</span><span·class="p">.</span><span·class="w">
  
162 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">162 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">
163 </span><span·class="w">163 </span><span·class="w">
164 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">add_frag</span><span·class="p"·data-group-id="1467893161-12">(</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1467893161-13">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·453,·SHA:·c089de1851c45161f9728444f2fab3e1895b71c5bb2e10d8124037a2069c1b5c·...·]-14">}</span><span·class="w">·</span><span·class="k">when</span><span·class="w">164 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">add_frag</span><span·class="p"·data-group-id="6578966036-12">(</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6578966036-13">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·453,·SHA:·41246985235329f4b1bd9d91d7a4e5d36cbb345ed60f940e6acb07a78157132d·...·]-14">}</span><span·class="w">·</span><span·class="k">when</span><span·class="w">
165 ······</span><span·class="n">NewState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1467893161-15">(</span><span·class="p"·data-group-id="1467893161-15">)</span><span·class="p">,</span><span·class="w">165 ······</span><span·class="n">NewState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6578966036-15">(</span><span·class="p"·data-group-id="6578966036-15">)</span><span·class="p">,</span><span·class="w">
166 ······</span><span·class="n">IterFrags</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1467893161-16">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="1467893161-17">(</span><span·class="p"·data-group-id="1467893161-17">)</span><span·class="p"·data-group-id="1467893161-16">]</span><span·class="p">,</span><span·class="w">166 ······</span><span·class="n">IterFrags</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="6578966036-16">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="6578966036-17">(</span><span·class="p"·data-group-id="6578966036-17">)</span><span·class="p"·data-group-id="6578966036-16">]</span><span·class="p">,</span><span·class="w">
167 ······</span><span·class="n">AdditionalLockFrags</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1467893161-18">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="1467893161-19">(</span><span·class="p"·data-group-id="1467893161-19">)</span><span·class="p"·data-group-id="1467893161-18">]</span><span·class="p">.</span><span·class="w">167 ······</span><span·class="n">AdditionalLockFrags</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="6578966036-18">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="6578966036-19">(</span><span·class="p"·data-group-id="6578966036-19">)</span><span·class="p"·data-group-id="6578966036-18">]</span><span·class="p">.</span><span·class="w">
168 </span><span·class="nf">add_frag</span><span·class="p"·data-group-id="1467893161-20">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-21">{</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·570,·SHA:·68a5297f9b44f0f1d8537ac67747be38aa8219ea4cdc3a48a2cd45f6ad65812b·...·]-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">168 </span><span·class="nf">add_frag</span><span·class="p"·data-group-id="6578966036-20">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-21">{</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·570,·SHA:·bff8bcb1f829c0faab61606e3e81c42151f2d34db492aaf5ea79f0703b31e06e·...·]-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
169 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">SplitN</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">169 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">SplitN</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
170 ····</span><span·class="n">NewN</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">170 ····</span><span·class="n">NewN</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
171 ····</span><span·class="n">State2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="1467893161-22">(</span><span·class="n">L</span><span·class="p"·data-group-id="1467893161-22">)</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="w">·</span><span·class="k">of</span><span·class="w">171 ····</span><span·class="n">State2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="6578966036-22">(</span><span·class="n">L</span><span·class="p"·data-group-id="6578966036-22">)</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
172 »       »       ·</span><span·class="n">P2</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">P2</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">P</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 »       »       ·</span><span·class="n">P2</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">P2</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">P</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
173 »       »       ·····</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-23">{</span><span·class="ss">n_fragments</span><span·class="w">······</span><span·class="o">=</span><span·class="w">·</span><span·class="n">NewN</span><span·class="p">,</span><span·class="w">173 »       »       ·····</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-23">{</span><span·class="ss">n_fragments</span><span·class="w">······</span><span·class="o">=</span><span·class="w">·</span><span·class="n">NewN</span><span·class="p">,</span><span·class="w">
174 »       »       »       »       ······</span><span·class="ss">n_doubles</span><span·class="w">········</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">174 »       »       »       »       ······</span><span·class="ss">n_doubles</span><span·class="w">········</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
175 »       »       »       »       ······</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="1467893161-23">}</span><span·class="p">;</span><span·class="w">175 »       »       »       »       ······</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="6578966036-23">}</span><span·class="p">;</span><span·class="w">
176 »       »       ·</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 »       »       ·</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 »       »       ·····</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-24">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="n">NewN</span><span·class="p">,</span><span·class="w">177 »       »       ·····</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-24">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="n">NewN</span><span·class="p">,</span><span·class="w">
178 »       »       »       »       ······</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="p"·data-group-id="1467893161-24">}</span><span·class="w">178 »       »       »       »       ······</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="p"·data-group-id="6578966036-24">}</span><span·class="w">
179 »       ·····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">179 »       ·····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="1467893161-25">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1467893161-26">[</span><span·class="n">SplitN</span><span·class="p"·data-group-id="1467893161-26">]</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·205,·SHA:·1ce9eb4cc7b27504ea00fd8e823d4589e49e96109a1e3413020272ac963e67b4·...·]-25">}</span><span·class="p">;</span><span·class="w">180 ····</span><span·class="p"·data-group-id="6578966036-25">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6578966036-26">[</span><span·class="n">SplitN</span><span·class="p"·data-group-id="6578966036-26">]</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·205,·SHA:·8cc638179ffb567356173ce8ad4dbdf831488a07a45bc142f142b4d17376539f·...·]-25">}</span><span·class="p">;</span><span·class="w">
181 </span><span·class="nf">add_frag</span><span·class="p"·data-group-id="1467893161-28">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="1467893161-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">181 </span><span·class="nf">add_frag</span><span·class="p"·data-group-id="6578966036-28">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="6578966036-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
182 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">convert_old_state</span><span·class="p"·data-group-id="1467893161-29">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="1467893161-29">)</span><span·class="p">,</span><span·class="w">182 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">convert_old_state</span><span·class="p"·data-group-id="6578966036-29">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="6578966036-29">)</span><span·class="p">,</span><span·class="w">
183 ····</span><span·class="nf">add_frag</span><span·class="p"·data-group-id="1467893161-30">(</span><span·class="n">State</span><span·class="p"·data-group-id="1467893161-30">)</span><span·class="p">.</span><span·class="w">183 ····</span><span·class="nf">add_frag</span><span·class="p"·data-group-id="6578966036-30">(</span><span·class="n">State</span><span·class="p"·data-group-id="6578966036-30">)</span><span·class="p">.</span><span·class="w">
  
184 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">184 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">
185 </span><span·class="w">185 </span><span·class="w">
186 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">del_frag</span><span·class="p"·data-group-id="1467893161-31">(</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1467893161-32">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·453,·SHA:·a089d225fe981dd3cb78f4a730392a6bbc31a61370a289c95d278ff8e1aa0d33·...·]-33">}</span><span·class="w">·</span><span·class="k">when</span><span·class="w">186 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">del_frag</span><span·class="p"·data-group-id="6578966036-31">(</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6578966036-32">(</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·453,·SHA:·9459cd51d1a0375a51d99b3baf31e5bc7d8943e2191e0170b38b3668f6a1c930·...·]-33">}</span><span·class="w">·</span><span·class="k">when</span><span·class="w">
187 ······</span><span·class="n">NewState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1467893161-34">(</span><span·class="p"·data-group-id="1467893161-34">)</span><span·class="p">,</span><span·class="w">187 ······</span><span·class="n">NewState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6578966036-34">(</span><span·class="p"·data-group-id="6578966036-34">)</span><span·class="p">,</span><span·class="w">
188 ······</span><span·class="n">IterFrags</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1467893161-35">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="1467893161-36">(</span><span·class="p"·data-group-id="1467893161-36">)</span><span·class="p"·data-group-id="1467893161-35">]</span><span·class="p">,</span><span·class="w">188 ······</span><span·class="n">IterFrags</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="6578966036-35">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="6578966036-36">(</span><span·class="p"·data-group-id="6578966036-36">)</span><span·class="p"·data-group-id="6578966036-35">]</span><span·class="p">,</span><span·class="w">
189 ······</span><span·class="n">AdditionalLockFrags</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1467893161-37">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="1467893161-38">(</span><span·class="p"·data-group-id="1467893161-38">)</span><span·class="p"·data-group-id="1467893161-37">]</span><span·class="p">.</span><span·class="w">189 ······</span><span·class="n">AdditionalLockFrags</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="6578966036-37">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="6578966036-38">(</span><span·class="p"·data-group-id="6578966036-38">)</span><span·class="p"·data-group-id="6578966036-37">]</span><span·class="p">.</span><span·class="w">
190 </span><span·class="nf">del_frag</span><span·class="p"·data-group-id="1467893161-39">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-40">{</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·570,·SHA:·6191a703f6a3354deaa59d941502190450e472c20c8d67ee5a5cb71c0d729c48·...·]-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">190 </span><span·class="nf">del_frag</span><span·class="p"·data-group-id="6578966036-39">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-40">{</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·570,·SHA:·e771edf23970b6cbfb17b9a5d3162c47f313931c7627bc9a0c447422abbbe289·...·]-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
191 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">SplitN</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">191 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">SplitN</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
192 ····</span><span·class="k">if</span><span·class="w">192 ····</span><span·class="k">if</span><span·class="w">
193 »       </span><span·class="n">P</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 »       </span><span·class="n">P</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 »       ····</span><span·class="n">L2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">194 »       ····</span><span·class="n">L2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
195 »       ····</span><span·class="n">MergeN</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="1467893161-41">(</span><span·class="n">L2</span><span·class="p"·data-group-id="1467893161-41">)</span><span·class="p">,</span><span·class="w">195 »       ····</span><span·class="n">MergeN</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="6578966036-41">(</span><span·class="n">L2</span><span·class="p"·data-group-id="6578966036-41">)</span><span·class="p">,</span><span·class="w">
196 »       ····</span><span·class="n">State2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-42">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">196 »       ····</span><span·class="n">State2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-42">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
197 »       »       »       »       ······</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">MergeN</span><span·class="p">,</span><span·class="w">197 »       »       »       »       ······</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">MergeN</span><span·class="p">,</span><span·class="w">
198 »       »       »       »       ······</span><span·class="ss">n_doubles</span><span·class="w">·······</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L2</span><span·class="p"·data-group-id="1467893161-42">}</span><span·class="p">,</span><span·class="w">198 »       »       »       »       ······</span><span·class="ss">n_doubles</span><span·class="w">·······</span><span·class="o">=</span><span·class="w">·</span><span·class="n">L2</span><span·class="p"·data-group-id="6578966036-42">}</span><span·class="p">,</span><span·class="w">
199 »       ····</span><span·class="p"·data-group-id="1467893161-43">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1467893161-44">[</span><span·class="n">N</span><span·class="p"·data-group-id="1467893161-44">]</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·202,·SHA:·097e4c22395c502def475c5fc9a64f619b048536f95959f746d5e650381eddca·...·]-43">}</span><span·class="p">;</span><span·class="w">199 »       ····</span><span·class="p"·data-group-id="6578966036-43">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6578966036-44">[</span><span·class="n">N</span><span·class="p"·data-group-id="6578966036-44">]</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·202,·SHA:·3ef00b9d2d7856dbed6096f01cbbc2b93ab8073ed23f74cbc1d18fa85ddde6e6·...·]-43">}</span><span·class="p">;</span><span·class="w">
200 »       </span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">200 »       </span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
201 »       ····</span><span·class="n">MergeN</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="p">,</span><span·class="w">201 »       ····</span><span·class="n">MergeN</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">P</span><span·class="p">,</span><span·class="w">
202 »       ····</span><span·class="n">State2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-46">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">202 »       ····</span><span·class="n">State2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-46">{</span><span·class="ss">n_fragments</span><span·class="w">·····</span><span·class="o">=</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
203 »       »       »       »       ······</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">MergeN</span><span·class="p"·data-group-id="1467893161-46">}</span><span·class="p">,</span><span·class="w">203 »       »       »       »       ······</span><span·class="ss">next_n_to_split</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">MergeN</span><span·class="p"·data-group-id="6578966036-46">}</span><span·class="p">,</span><span·class="w">
204 »       ····</span><span·class="p"·data-group-id="1467893161-47">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1467893161-48">[</span><span·class="n">N</span><span·class="p"·data-group-id="1467893161-48">]</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·202,·SHA:·58e50add04853a499585529b7e02027dbf6f3ff53afc581fea5f7e51397eec22·...·]-47">}</span><span·class="w">204 »       ····</span><span·class="p"·data-group-id="6578966036-47">{</span><span·class="n">State2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6578966036-48">[</span><span·class="n">N</span><span·class="p"·data-group-id="6578966036-48">]</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·202,·SHA:·cca1e91f49f73926fcd648ba3c6209c5509bc9b19aaa5dd3d01ffc0be4996525·...·]-47">}</span><span·class="w">
205 »       </span><span·class="k">end</span><span·class="p">;</span><span·class="w">205 »       </span><span·class="k">end</span><span·class="p">;</span><span·class="w">
206 </span><span·class="nf">del_frag</span><span·class="p"·data-group-id="1467893161-50">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="1467893161-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">206 </span><span·class="nf">del_frag</span><span·class="p"·data-group-id="6578966036-50">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="6578966036-50">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
207 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">convert_old_state</span><span·class="p"·data-group-id="1467893161-51">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="1467893161-51">)</span><span·class="p">,</span><span·class="w">207 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">convert_old_state</span><span·class="p"·data-group-id="6578966036-51">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="6578966036-51">)</span><span·class="p">,</span><span·class="w">
208 ····</span><span·class="nf">del_frag</span><span·class="p"·data-group-id="1467893161-52">(</span><span·class="n">State</span><span·class="p"·data-group-id="1467893161-52">)</span><span·class="p">.</span><span·class="w">208 ····</span><span·class="nf">del_frag</span><span·class="p"·data-group-id="6578966036-52">(</span><span·class="n">State</span><span·class="p"·data-group-id="6578966036-52">)</span><span·class="p">.</span><span·class="w">
  
209 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">209 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">
210 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="1467893161-53">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1467893161-53">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Fragnum</span><span·class="w">·</span><span·class="k">when</span><span·class="w">210 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="6578966036-53">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="6578966036-53">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Fragnum</span><span·class="w">·</span><span·class="k">when</span><span·class="w">
211 ······</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1467893161-54">(</span><span·class="p"·data-group-id="1467893161-54">)</span><span·class="p">,</span><span·class="w">211 ······</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6578966036-54">(</span><span·class="p"·data-group-id="6578966036-54">)</span><span·class="p">,</span><span·class="w">
212 ······</span><span·class="n">Key</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1467893161-55">(</span><span·class="p"·data-group-id="1467893161-55">)</span><span·class="p">,</span><span·class="w">212 ······</span><span·class="n">Key</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6578966036-55">(</span><span·class="p"·data-group-id="6578966036-55">)</span><span·class="p">,</span><span·class="w">
213 ······</span><span·class="n">Fragnum</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1467893161-56">(</span><span·class="p"·data-group-id="1467893161-56">)</span><span·class="p">.</span><span·class="w">213 ······</span><span·class="n">Fragnum</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="6578966036-56">(</span><span·class="p"·data-group-id="6578966036-56">)</span><span·class="p">.</span><span·class="w">
214 </span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="1467893161-57">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-58">{</span><span·class="ss">function</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nb">[·...·truncated·by·diffoscope;·len:·537,·SHA:·aa681ef2db3ca1350ee950a0bc466db179736c28c72c08702a017fbf297c3c29·...·]-57">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 </span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="6578966036-57">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-58">{</span><span·class="ss">function</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nb">[·...·truncated·by·diffoscope;·len:·537,·SHA:·92d5d084c4bdeda6f440ead280ffd4df953c43d6d531c6f86760a5f3a33c2cfc·...·]-57">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">phash</span><span·class="p"·data-group-id="1467893161-59">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="1467893161-60">(</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><sp[·...·truncated·by·diffoscope;·len:·141,·SHA:·6ab21d009fa1250139bf7fdb6f6aad0d91d02478f9c843225db6dab91417279a·...·]-59">)</span><span·class="p">,</span><span·class="w">215 ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">phash</span><span·class="p"·data-group-id="6578966036-59">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="6578966036-60">(</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><sp[·...·truncated·by·diffoscope;·len:·141,·SHA:·2475efbe22b61b19620bfae2640cedc2fd8d0eadf551301effe288225c841b77·...·]-59">)</span><span·class="p">,</span><span·class="w">
216 ····</span><span·class="k">if</span><span·class="w">216 ····</span><span·class="k">if</span><span·class="w">
217 »       </span><span·class="n">A</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">217 »       </span><span·class="n">A</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
218 »       ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="1467893161-61">(</span><span·class="n">L</span><span·class="p"·data-group-id="1467893161-61">)</span><span·class="p">;</span><span·class="w">218 »       ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="6578966036-61">(</span><span·class="n">L</span><span·class="p"·data-group-id="6578966036-61">)</span><span·class="p">;</span><span·class="w">
219 »       </span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 »       </span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 »       ····</span><span·class="n">A</span><span·class="w">220 »       ····</span><span·class="n">A</span><span·class="w">
221 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">221 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
222 </span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="1467893161-62">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-63">{</span><span·class="ss">function</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nb">[·...·truncated·by·diffoscope;·len:·538,·SHA:·b1419bae5efb2beb1de0713f891aebb8c123c75fd090c3268601bf7057ce1fe4·...·]-62">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">222 </span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="6578966036-62">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-63">{</span><span·class="ss">function</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nb">[·...·truncated·by·diffoscope;·len:·538,·SHA:·733361eec1157cdd46e241b8137b766acefcee90f407f12fd11609a5284ae7e4·...·]-62">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
223 ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">phash2</span><span·class="p"·data-group-id="1467893161-64">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="1467893161-65">(</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><sp[·...·truncated·by·diffoscope;·len:·141,·SHA:·0baebd21b87780a2bbfac5e1d8f8f10149ddaa16c7002ee757336800db1aed6b·...·]-64">)</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">223 ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">phash2</span><span·class="p"·data-group-id="6578966036-64">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="6578966036-65">(</span><span·class="n">L</span><span·class="w">·</span><span·class="o">+</span><sp[·...·truncated·by·diffoscope;·len:·141,·SHA:·f71954d87f72f5a68352bcce535944178a000fc690b6bfca3ca1cfcea6e2108f·...·]-64">)</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
224 ····</span><span·class="k">if</span><span·class="w">224 ····</span><span·class="k">if</span><span·class="w">
225 »       </span><span·class="n">A</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">225 »       </span><span·class="n">A</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
226 »       ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="1467893161-66">(</span><span·class="n">L</span><span·class="p"·data-group-id="1467893161-66">)</span><span·class="p">;</span><span·class="w">226 »       ····</span><span·class="n">A</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="nf">power2</span><span·class="p"·data-group-id="6578966036-66">(</span><span·class="n">L</span><span·class="p"·data-group-id="6578966036-66">)</span><span·class="p">;</span><span·class="w">
227 »       </span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 »       </span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 »       ····</span><span·class="n">A</span><span·class="w">228 »       ····</span><span·class="n">A</span><span·class="w">
229 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">229 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
230 </span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="1467893161-67">(</span><span·class="n">OldState</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1467893161-67">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">230 </span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="6578966036-67">(</span><span·class="n">OldState</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="6578966036-67">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
231 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">convert_old_state</span><span·class="p"·data-group-id="1467893161-68">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="1467893161-68">)</span><span·class="p">,</span><span·class="w">231 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">convert_old_state</span><span·class="p"·data-group-id="6578966036-68">(</span><span·class="n">OldState</span><span·class="p"·data-group-id="6578966036-68">)</span><span·class="p">,</span><span·class="w">
232 ····</span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="1467893161-69">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1467893161-69">)</span><span·class="p">.</span><span·class="w">232 ····</span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="6578966036-69">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="6578966036-69">)</span><span·class="p">.</span><span·class="w">
  
233 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">233 </span><span·class="c1">%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</span><span·class="w">
234 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">match_spec_to_frag_numbers</span><span·class="p"·data-group-id="1467893161-70">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MatchSpec</span><span·class="p"·data-group-id="1467893161-70">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Fragnums</span><span·class="w">·</span><span·class="k">when</span><span·class="w">234 </span><span·class="p">-</span><span·class="na">spec</span><span·class="w">·</span><span·class="nf">match_spec_to_frag_numbers</span><span·class="p"·data-group-id="6578966036-70">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MatchSpec</span><span·class="p"·data-group-id="6578966036-70">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Fragnums</span><span·class="w">·</span><span·class="k">when</span><span·class="w">
235 ······</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1467893161-71">(</span><span·class="p"·data-group-id="1467893161-71">)</span><span·class="p">,</span><span·class="w">235 ······</span><span·class="n">State</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6578966036-71">(</span><span·class="p"·data-group-id="6578966036-71">)</span><span·class="p">,</span><span·class="w">
236 ······</span><span·class="n">MatchSpec</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_spec</span><span·class="p"·data-group-id="1467893161-72">(</span><span·class="p"·data-group-id="1467893161-72">)</span><span·class="p">,</span><span·class="w">236 ······</span><span·class="n">MatchSpec</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_spec</span><span·class="p"·data-group-id="6578966036-72">(</span><span·class="p"·data-group-id="6578966036-72">)</span><span·class="p">,</span><span·class="w">
237 ······</span><span·class="n">Fragnums</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1467893161-73">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="1467893161-74">(</span><span·class="p"·data-group-id="1467893161-74">)</span><span·class="p"·data-group-id="1467893161-73">]</span><span·class="p">.</span><span·class="w">237 ······</span><span·class="n">Fragnums</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="6578966036-73">[</span><span·class="nf">integer</span><span·class="p"·data-group-id="6578966036-74">(</span><span·class="p"·data-group-id="6578966036-74">)</span><span·class="p"·data-group-id="6578966036-73">]</span><span·class="p">.</span><span·class="w">
238 </span><span·class="nf">match_spec_to_frag_numbers</span><span·class="p"·data-group-id="1467893161-75">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="1467893161-76">{</span><span·class="ss">n_fragments</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n[·...·truncated·by·diffoscope;·len:·285,·SHA:·189722c447041fe77fffbd0fb66f6e6f41e755f4880868dcbc2f612391e6a76d·...·]-75">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">238 </span><span·class="nf">match_spec_to_frag_numbers</span><span·class="p"·data-group-id="6578966036-75">(</span><span·class="o">#</span><span·class="ss">hash_state</span><span·class="p"·data-group-id="6578966036-76">{</span><span·class="ss">n_fragments</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n[·...·truncated·by·diffoscope;·len:·285,·SHA:·f9b14be59b85f5b781a6c682a0cfb33d0f7c6079877073df1c5ecd2f236c9ea2·...·]-75">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
239 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">MatchSpec</span><span·class="w">·</span><span·class="k">of</span><span·class="w">239 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="n">MatchSpec</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
240 »       </span><span·class="p"·data-group-id="1467893161-77">[</span><span·class="p"·data-group-id="1467893161-78">{</span><span·class="n">HeadPat</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span[·...·truncated·by·diffoscope;·len:·555,·SHA:·d1c3e55ca3fc192c18432a715bc13a6b7f2b27b3844f56e076a37356cd3b3245·...·]-80">)</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">2</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">240 »       </span><span·class="p"·data-group-id="6578966036-77">[</span><span·class="p"·data-group-id="6578966036-78">{</span><span·class="n">HeadPat</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span[·...·truncated·by·diffoscope;·len:·555,·SHA:·580ff69f87e65164e13847743c7fbeaf7bc6c6eb2872c829b94dfaf536eb5672·...·]-80">)</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">2</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
241 »       ····</span><span·class="n">KeyPat</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="1467893161-81">(</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HeadPat</span><span·class="p"·data-group-id="1467893161-81">)</span><span·class="p">,</span><span·class="w">241 »       ····</span><span·class="n">KeyPat</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="6578966036-81">(</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HeadPat</span><span·class="p"·data-group-id="6578966036-81">)</span><span·class="p">,</span><span·class="w">
242 »       ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">has_var</span><span·class="p"·data-group-id="1467893161-82">(</span><span·class="n">KeyPat</span><span·class="p"·data-group-id="1467893161-82">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">242 »       ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">has_var</span><span·class="p"·data-group-id="6578966036-82">(</span><span·class="n">KeyPat</span><span·class="p"·data-group-id="6578966036-82">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
243 »       »       </span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">243 »       »       </span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
244 »       »       ····</span><span·class="p"·data-group-id="1467893161-83">[</span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="1467893161-84">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">KeyPat</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·63,·SHA:·85749b161099c266bfe87da00e35ea4a34df927034157f9a1708d587f94f3123·...·]-83">]</span><span·class="p">;</span><span·class="w">244 »       »       ····</span><span·class="p"·data-group-id="6578966036-83">[</span><span·class="nf">key_to_frag_number</span><span·class="p"·data-group-id="6578966036-84">(</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">KeyPat</span><span·class="p"·data-group-id="6[·...·truncated·by·diffoscope;·len:·63,·SHA:·8ac63a271155f26e39262b36af55bbe236a455425da19ce2b135ae9eec5a9efd·...·]-83">]</span><span·class="p">;</span><span·class="w">
245 »       »       </span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">245 »       »       </span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
Max diff block lines reached; 4411/70972 bytes (6.22%) of diff not shown.
661 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_chap1.html
    
Offset 209, 15 lines modifiedOffset 209, 15 lines modified
209 ······<p·class="built-using">209 ······<p·class="built-using">
210 ········Built·using210 ········Built·using
211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
213 ······</p>213 ······</p>
214 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
215 ····</footer>215 ····</footer>
216 ··</div>216 ··</div>
217 </main>217 </main>
218 </div>218 </div>
219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
220 <script>220 <script>
221 ··document.addEventListener("DOMContentLoaded",·function·()·{221 ··document.addEventListener("DOMContentLoaded",·function·()·{
724 B
html2text {}
Max HTML report size reached
163 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_chap2.html
Max HTML report size reached
53.4 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_chap3.html
    
Offset 171, 26 lines modifiedOffset 171, 26 lines modified
171 there·as·well.·This·action·extends·the·set·of·nodes·that·comprise·this171 there·as·well.·This·action·extends·the·set·of·nodes·that·comprise·this
172 particular·<code·class="inline">Mnesia</code>·system.</p></li><li><p><a·href="mnesia.html#del_table_copy/2"><code·class="inline">mnesia:del_table_copy(Tab,·Node)</code></a>·deletes·the172 particular·<code·class="inline">Mnesia</code>·system.</p></li><li><p><a·href="mnesia.html#del_table_copy/2"><code·class="inline">mnesia:del_table_copy(Tab,·Node)</code></a>·deletes·the
173 replica·of·table·<code·class="inline">Tab</code>·at·node·<code·class="inline">Node</code>.·When·the·last·replica·of·a·table·is173 replica·of·table·<code·class="inline">Tab</code>·at·node·<code·class="inline">Node</code>.·When·the·last·replica·of·a·table·is
174 removed,·the·table·is·deleted.</p></li><li><p><a·href="mnesia.html#transform_table/4"><code·class="inline">mnesia:transform_table(Tab,·Fun,·NewAttributeList,·NewRecordName)</code></a>174 removed,·the·table·is·deleted.</p></li><li><p><a·href="mnesia.html#transform_table/4"><code·class="inline">mnesia:transform_table(Tab,·Fun,·NewAttributeList,·NewRecordName)</code></a>
175 changes·the·format·on·all·records·in·table·<code·class="inline">Tab</code>.·It·applies·argument·<code·class="inline">Fun</code>·to175 changes·the·format·on·all·records·in·table·<code·class="inline">Tab</code>.·It·applies·argument·<code·class="inline">Fun</code>·to
176 all·records·in·the·table.·<code·class="inline">Fun</code>·must·be·a·function·that·takes·a·record·of·the176 all·records·in·the·table.·<code·class="inline">Fun</code>·must·be·a·function·that·takes·a·record·of·the
177 old·type,·and·returns·the·record·of·the·new·type.·The·table·key·must·not·be177 old·type,·and·returns·the·record·of·the·new·type.·The·table·key·must·not·be
178 changed.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="9791390889-1">(</span><span·class="ss">old</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9791390889-2">{</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">val</span><spa[·...·truncated·by·diffoscope;·len:·89,·SHA:·50df3516423cb759cddd1c5104df7cff88d10e716b405bff9b1bd249aecbb0b2·...·]9-1">)</span><span·class="p">.</span><span·class="w">178 changed.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3566860329-1">(</span><span·class="ss">old</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3566860329-2">{</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">val</span><spa[·...·truncated·by·diffoscope;·len:·89,·SHA:·72eabc5024ac695db807db2663d9078a26df3ce168492f909a803020cc542137·...·]9-1">)</span><span·class="p">.</span><span·class="w">
179 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="9791390889-3">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9791390889-4">{</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">val</span><spa[·...·truncated·by·diffoscope;·len:·166,·SHA:·e2ea4ff486360c0c3652076079f5248c80bb0524c9ba540d70d558ece107c665·...·]9-3">)</span><span·class="p">.</span><span·class="w">179 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3566860329-3">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3566860329-4">{</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">val</span><spa[·...·truncated·by·diffoscope;·len:·166,·SHA:·e06cca7f852365781c3a1ef35bd202550ff46eed467894e5837930b9a269b6ca·...·]9-3">)</span><span·class="p">.</span><span·class="w">
  
180 </span><span·class="n">Transformer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">180 </span><span·class="n">Transformer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
181 ···</span><span·class="nf">fun</span><span·class="p"·data-group-id="9791390889-5">(</span><span·class="n">X</span><span·class="p"·data-group-id="9791390889-5">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">record</span><span·class="p"·data-group-id="9791390889-6">(</span[·...·truncated·by·diffoscope;·len:·140,·SHA:·4547cbdb938334905d9c612558c1406981b4e45324b75c68cc0ed49bdec8a1cb·...·]9-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">181 ···</span><span·class="nf">fun</span><span·class="p"·data-group-id="3566860329-5">(</span><span·class="n">X</span><span·class="p"·data-group-id="3566860329-5">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">record</span><span·class="p"·data-group-id="3566860329-6">(</span[·...·truncated·by·diffoscope;·len:·140,·SHA:·856a1e5d8546058474cf9cb3906ba9f38bef96cd14cda286be9a361d1de733fd·...·]9-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
182 ······</span><span·class="o">#</span><span·class="ss">new</span><span·class="p"·data-group-id="9791390889-7">{</span><span·class="ss">key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">X</span><span·class="o">#</span><span·class="ss">old</span><span·class="p">.</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">182 ······</span><span·class="o">#</span><span·class="ss">new</span><span·class="p"·data-group-id="3566860329-7">{</span><span·class="ss">key</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">X</span><span·class="o">#</span><span·class="ss">old</span><span·class="p">.</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">
183 ···········</span><span·class="ss">val</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">X</span><span·class="o">#</span><span·class="ss">old</span><span·class="p">.</span><span·class="ss">val</span><span·class="p">,</span><span·class="w">183 ···········</span><span·class="ss">val</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">X</span><span·class="o">#</span><span·class="ss">old</span><span·class="p">.</span><span·class="ss">val</span><span·class="p">,</span><span·class="w">
184 ···········</span><span·class="ss">extra</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="p"·data-group-id="9791390889-7">}</span><span·class="w">184 ···········</span><span·class="ss">extra</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="p"·data-group-id="3566860329-7">}</span><span·class="w">
185 ···</span><span·class="k">end</span><span·class="p">,</span><span·class="w">185 ···</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
186 </span><span·class="p"·data-group-id="9791390889-8">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p"·data-group-id="9791390889-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·128,·SHA:·3b13de4565efc33fdebf5d84e6d853ce00389111fa0863c8dd05cb3447edf74d·...·]9-9">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Transformer</span><span·class="p">,</span><span·class="w">186 </span><span·class="p"·data-group-id="3566860329-8">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p"·data-group-id="3566860329-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·128,·SHA:·f5f9a9b23badd893266b2c8d08b72bc03be9fd431a15b47eb9d9ffcc0a0a8b08·...·]9-9">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Transformer</span><span·class="p">,</span><span·class="w">
187 ······································</span><span·class="nf">record_info</span><span·class="p"·data-group-id="9791390889-10">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">new</span><span·class="p"·data-group-id="9791390889-10">)</span><span·class="p">,</span><span·class="w">187 ······································</span><span·class="nf">record_info</span><span·class="p"·data-group-id="3566860329-10">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">new</span><span·class="p"·data-group-id="3566860329-10">)</span><span·class="p">,</span><span·class="w">
188 ······································</span><span·class="ss">new</span><span·class="p"·data-group-id="9791390889-9">)</span><span·class="p">,</span></code></pre><p>Argument·<code·class="inline">Fun</code>·can·also·be·the·atom·<code·class="inline">ignore</code>,·which·indicates·that·only·the188 ······································</span><span·class="ss">new</span><span·class="p"·data-group-id="3566860329-9">)</span><span·class="p">,</span></code></pre><p>Argument·<code·class="inline">Fun</code>·can·also·be·the·atom·<code·class="inline">ignore</code>,·which·indicates·that·only·the
189 metadata·about·the·table·is·updated.·Use·of·<code·class="inline">ignore</code>·is·not·recommended·(as·it189 metadata·about·the·table·is·updated.·Use·of·<code·class="inline">ignore</code>·is·not·recommended·(as·it
190 creates·inconsistencies·between·the·metadata·and·the·actual·data)·but·it·is190 creates·inconsistencies·between·the·metadata·and·the·actual·data)·but·it·is
191 included·as·a·possibility·for·the·user·do·to·an·own·(offline)·transform.</p></li><li><p><a·href="mnesia.html#change_table_copy_type/3"><code·class="inline">mnesia:change_table_copy_type(Tab,·Node,·ToType)</code></a>191 included·as·a·possibility·for·the·user·do·to·an·own·(offline)·transform.</p></li><li><p><a·href="mnesia.html#change_table_copy_type/3"><code·class="inline">mnesia:change_table_copy_type(Tab,·Node,·ToType)</code></a>
192 changes·the·storage·type·of·a·table.·For·example,·a·RAM·table·is·changed·to·a192 changes·the·storage·type·of·a·table.·For·example,·a·RAM·table·is·changed·to·a
193 <code·class="inline">disc_table</code>·at·the·node·specified·as·<code·class="inline">Node</code>.</p></li></ul><h2·id="data-model"·class="section-heading">193 <code·class="inline">disc_table</code>·at·the·node·specified·as·<code·class="inline">Node</code>.</p></li></ul><h2·id="data-model"·class="section-heading">
194 ··<a·href="#data-model"·class="hover-link">194 ··<a·href="#data-model"·class="hover-link">
195 ····<i·class="ri-link-m"·aria-hidden="true"></i>195 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 234, 37 lines modifiedOffset 234, 37 lines modified
234 <a·href="mnesia_chap2.html#getting_started">Getting·Started</a>·to·illustrate·how·to·run·a234 <a·href="mnesia_chap2.html#getting_started">Getting·Started</a>·to·illustrate·how·to·run·a
235 database·on·two·separate·nodes,·called·<code·class="inline">a@gin</code>·and·<code·class="inline">b@skeppet</code>.·Each·of·these235 database·on·two·separate·nodes,·called·<code·class="inline">a@gin</code>·and·<code·class="inline">b@skeppet</code>.·Each·of·these
236 nodes·must·have·a·<code·class="inline">Mnesia</code>·directory·and·an·initialized·schema·before·<code·class="inline">Mnesia</code>236 nodes·must·have·a·<code·class="inline">Mnesia</code>·directory·and·an·initialized·schema·before·<code·class="inline">Mnesia</code>
237 can·be·started.·There·are·two·ways·to·specify·the·<code·class="inline">Mnesia</code>·directory·to·be·used:</p><ul><li><p>Specify·the·<code·class="inline">Mnesia</code>·directory·by·providing·an·application·parameter·either237 can·be·started.·There·are·two·ways·to·specify·the·<code·class="inline">Mnesia</code>·directory·to·be·used:</p><ul><li><p>Specify·the·<code·class="inline">Mnesia</code>·directory·by·providing·an·application·parameter·either
238 when·starting·the·Erlang·shell·or·in·the·application·script.·Previously,·the238 when·starting·the·Erlang·shell·or·in·the·application·script.·Previously,·the
239 following·example·was·used·to·create·the·directory·for·the·<code·class="inline">Company</code>·database:</p><pre><code·class="text">%·erl·-mnesia·dir·'&quot;/ldisc/scratch/Mnesia.Company&quot;'</code></pre></li><li><p>If·no·command-line·flag·is·entered,·the·<code·class="inline">Mnesia</code>·directory·becomes·the·current239 following·example·was·used·to·create·the·directory·for·the·<code·class="inline">Company</code>·database:</p><pre><code·class="text">%·erl·-mnesia·dir·'&quot;/ldisc/scratch/Mnesia.Company&quot;'</code></pre></li><li><p>If·no·command-line·flag·is·entered,·the·<code·class="inline">Mnesia</code>·directory·becomes·the·current
240 working·directory·on·the·node·where·the·Erlang·shell·is·started.</p></li></ul><p>To·start·the·<code·class="inline">Company</code>·database·and·get·it·running·on·the·two·specified·nodes,240 working·directory·on·the·node·where·the·Erlang·shell·is·started.</p></li></ul><p>To·start·the·<code·class="inline">Company</code>·database·and·get·it·running·on·the·two·specified·nodes,
241 enter·the·following·commands:</p><ol><li>On·the·node·<code·class="inline">a@gin</code>:</li></ol><pre><code·class="text">·gin·%·erl·-sname·a··-mnesia·dir·'&quot;/ldisc/scratch/Mnesia.company&quot;'</code></pre><ol><li>On·the·node·<code·class="inline">b@skeppet</code>:</li></ol><pre><code·class="text">skeppet·%·erl·-sname·b·-mnesia·dir·'&quot;/ldisc/scratch/Mnesia.company&quot;'</code></pre><ol><li>On·one·of·the·two·nodes:</li></ol><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(a@gin)1&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_schema</span><span·class="p"·data-group-id="2552769334-1">(</span><span·class="p"·data-group-id="2552769334-2">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@skeppet</span><span·class="p"·data-group-id="2552769334-2">]</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·36c2dcd206c2d93b1359ddc80524569933a7a50eb977190c1360e7a4d19a3b17·...·]-1">)</span><span·class="p">.</span></code></pre><ol><li>The·function·<a·href="mnesia.html#start/0"><code·class="inline">mnesia:start()</code></a>·is·called·on·both·nodes.</li><li>To·initialize·the·database,·execute·the·following·code·on·one·of·the·two241 enter·the·following·commands:</p><ol><li>On·the·node·<code·class="inline">a@gin</code>:</li></ol><pre><code·class="text">·gin·%·erl·-sname·a··-mnesia·dir·'&quot;/ldisc/scratch/Mnesia.company&quot;'</code></pre><ol><li>On·the·node·<code·class="inline">b@skeppet</code>:</li></ol><pre><code·class="text">skeppet·%·erl·-sname·b·-mnesia·dir·'&quot;/ldisc/scratch/Mnesia.company&quot;'</code></pre><ol><li>On·one·of·the·two·nodes:</li></ol><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(a@gin)1&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_schema</span><span·class="p"·data-group-id="4197780615-1">(</span><span·class="p"·data-group-id="4197780615-2">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@skeppet</span><span·class="p"·data-group-id="4197780615-2">]</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·d61846b433371b8dd97ca273392186531a0a94929f46f5779f83203901e203bf·...·]-1">)</span><span·class="p">.</span></code></pre><ol><li>The·function·<a·href="mnesia.html#start/0"><code·class="inline">mnesia:start()</code></a>·is·called·on·both·nodes.</li><li>To·initialize·the·database,·execute·the·following·code·on·one·of·the·two
242 nodes:</li></ol><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">dist_init</span><span·class="p"·data-group-id="6206948292-1">(</span><span·class="p"·data-group-id="6206948292-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">242 nodes:</li></ol><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">dist_init</span><span·class="p"·data-group-id="9364045731-1">(</span><span·class="p"·data-group-id="9364045731-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
243 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6206948292-2">(</span><span·class="ss">employee</span><span·class="p">,</span><span·class="w">243 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="9364045731-2">(</span><span·class="ss">employee</span><span·class="p">,</span><span·class="w">
244 ·························</span><span·class="p"·data-group-id="6206948292-3">[</span><span·class="p"·data-group-id="6206948292-4">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206948292-5">[</span><span·class="ss">a@gin</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·158,·SHA:·d8cfd7b7df17e52d53f01a78928edf2134c62eca5c1f760cd5d7b8dcd39848cb·...·]-4">}</span><span·class="p">,</span><span·class="w">244 ·························</span><span·class="p"·data-group-id="9364045731-3">[</span><span·class="p"·data-group-id="9364045731-4">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9364045731-5">[</span><span·class="ss">a@gin</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·158,·SHA:·5fe1d1a4b3f30b2aa607f1d8c42b10e80673ec52c327d82557e96f96e6b7db14·...·]-4">}</span><span·class="p">,</span><span·class="w">
245 ··························</span><span·class="p"·data-group-id="6206948292-6">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="6206948292-7">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">245 ··························</span><span·class="p"·data-group-id="9364045731-6">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="9364045731-7">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">
246 »       »       »       »       »       »       ···</span><span·class="ss">employee</span><span·class="p"·data-group-id="6206948292-7">)</span><span·class="p"·data-group-id="6206948292-6">}</span><span·class="p"·data-group-id="6206948292-3">]</span><span·class="p"·data-group-id="6206948292-2">)</span><span·class="p">,</span><span·class="w">246 »       »       »       »       »       »       ···</span><span·class="ss">employee</span><span·class="p"·data-group-id="9364045731-7">)</span><span·class="p"·data-group-id="9364045731-6">}</span><span·class="p"·data-group-id="9364045731-3">]</span><span·class="p"·data-group-id="9364045731-2">)</span><span·class="p">,</span><span·class="w">
247 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6206948292-8">(</span><span·class="ss">dept</span><span·class="p">,</span><span·class="w">247 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="9364045731-8">(</span><span·class="ss">dept</span><span·class="p">,</span><span·class="w">
248 ·························</span><span·class="p"·data-group-id="6206948292-9">[</span><span·class="p"·data-group-id="6206948292-10">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206948292-11">[</span><span·class="ss">a@gin</span><span·class="p"[·...·truncated·by·diffoscope;·len:·161,·SHA:·5ac972ed50939ce8164c2237f638802fae964ad383ecc0d113c3c7a791f48fd9·...·]-10">}</span><span·class="p">,</span><span·class="w">248 ·························</span><span·class="p"·data-group-id="9364045731-9">[</span><span·class="p"·data-group-id="9364045731-10">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9364045731-11">[</span><span·class="ss">a@gin</span><span·class="p"[·...·truncated·by·diffoscope;·len:·161,·SHA:·931a3fe6969fb862d7e4e7b8fa85106c6839a0548c1870464dcfcbd5917d3c8e·...·]-10">}</span><span·class="p">,</span><span·class="w">
249 ··························</span><span·class="p"·data-group-id="6206948292-12">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="6206948292-13">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·246,·SHA:·5b4564b532b273764e5afcedec47e004d2217ab5bb8510732ab87e982d41818d·...·]-8">)</span><span·class="p">,</span><span·class="w">249 ··························</span><span·class="p"·data-group-id="9364045731-12">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="9364045731-13">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·246,·SHA:·6cfb29ea0cbd016a43fb85c03b4b8cc2ee27c64b8ec41aa52cc4923ad9dc8ad4·...·]-8">)</span><span·class="p">,</span><span·class="w">
250 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6206948292-14">(</span><span·class="ss">project</span><span·class="p">,</span><span·class="w">250 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="9364045731-14">(</span><span·class="ss">project</span><span·class="p">,</span><span·class="w">
251 ·························</span><span·class="p"·data-group-id="6206948292-15">[</span><span·class="p"·data-group-id="6206948292-16">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206948292-17">[</span><span·class="ss">a@gin</span><span·class="p[·...·truncated·by·diffoscope;·len:·162,·SHA:·8f47b6bab19251bea72e4c325c7e85be082719769f6c7d7f0e3200843b474db1·...·]-16">}</span><span·class="p">,</span><span·class="w">251 ·························</span><span·class="p"·data-group-id="9364045731-15">[</span><span·class="p"·data-group-id="9364045731-16">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9364045731-17">[</span><span·class="ss">a@gin</span><span·class="p[·...·truncated·by·diffoscope;·len:·162,·SHA:·2d4ecf2e1378da1735bad9b2ce137826301f70b30b19ef6936fa30171d59038b·...·]-16">}</span><span·class="p">,</span><span·class="w">
252 ··························</span><span·class="p"·data-group-id="6206948292-18">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="6206948292-19">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·250,·SHA:·c24f2d4e945e5785b00028d1715068954532321af83addcd97a269824d129006·...·]-14">)</span><span·class="p">,</span><span·class="w">252 ··························</span><span·class="p"·data-group-id="9364045731-18">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="9364045731-19">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·250,·SHA:·d7ea3bc6a17cdec73b45cc3cc22528fb28353274a5cb66e9ed7c12de3aecb890·...·]-14">)</span><span·class="p">,</span><span·class="w">
253 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6206948292-20">(</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206948292-21">[</span><span·class="p"·data-group-id="6206948292-22">{</span><span·class="ss">type</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·98,·SHA:·8fb6d85772669f23908e2ece04e2f1853e52f751de46d537f6d3a17ec780eac4·...·]-22">}</span><span·class="p">,</span><span·class="w">253 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="9364045731-20">(</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9364045731-21">[</span><span·class="p"·data-group-id="9364045731-22">{</span><span·class="ss">type</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·98,·SHA:·20730a1fa6b33aaf6577b027cfd93b66b9b164f76ced99b92423e2c648839e17·...·]-22">}</span><span·class="p">,</span><span·class="w">
254 ··································</span><span·class="p"·data-group-id="6206948292-23">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206948292-24">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@s[·...·truncated·by·diffoscope;·len:·108,·SHA:·181898ecae0bd4e18c00a9585e53b63715a13d82d8e1b08389537278e71b76c1·...·]-23">}</span><span·class="p">,</span><span·class="w">254 ··································</span><span·class="p"·data-group-id="9364045731-23">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9364045731-24">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@s[·...·truncated·by·diffoscope;·len:·108,·SHA:·558ec5a70509db9f67bed9a2c1acc058e45c143b45175829b9e601496e508b8c·...·]-23">}</span><span·class="p">,</span><span·class="w">
255 ··································</span><span·class="p"·data-group-id="6206948292-25">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="6206948292-26">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">255 ··································</span><span·class="p"·data-group-id="9364045731-25">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="9364045731-26">(</span><span·class="ss">fields</span><span·class="p">,</span><span·class="w">
256 »       »       »       »       »       »       »       ···</span><span·class="ss">manager</span><span·class="p"·data-group-id="6206948292-26">)</span><span·class="p"·data-group-id="6206948292-25">}</span><span·class="p"·data-group-id="6206948292-21">]</span><span·class="p"·data-group-id="6206948292-20">)</span><span·class="p">,</span><span·class="w">256 »       »       »       »       »       »       »       ···</span><span·class="ss">manager</span><span·class="p"·data-group-id="9364045731-26">)</span><span·class="p"·data-group-id="9364045731-25">}</span><span·class="p"·data-group-id="9364045731-21">]</span><span·class="p"·data-group-id="9364045731-20">)</span><span·class="p">,</span><span·class="w">
257 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6206948292-27">(</span><span·class="ss">at_dep</span><span·class="p">,</span><span·class="w">257 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="9364045731-27">(</span><span·class="ss">at_dep</span><span·class="p">,</span><span·class="w">
258 ·························</span><span·class="p"·data-group-id="6206948292-28">[</span><span·class="p"·data-group-id="6206948292-29">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206948292-30">[</span><span·class="ss">a@gin</span><span·class="p[·...·truncated·by·diffoscope;·len:·162,·SHA:·1a49918df9318b063c6290422fb61066f2364dd8e9333092d0524cc6b7f94c1d·...·]-29">}</span><span·class="p">,</span><span·class="w">258 ·························</span><span·class="p"·data-group-id="9364045731-28">[</span><span·class="p"·data-group-id="9364045731-29">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9364045731-30">[</span><span·class="ss">a@gin</span><span·class="p[·...·truncated·by·diffoscope;·len:·162,·SHA:·37e19ca16a794958867315932725969b10429892aac63b24555cef2c25370caf·...·]-29">}</span><span·class="p">,</span><span·class="w">
259 ··························</span><span·class="p"·data-group-id="6206948292-31">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="6206948292-32">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·249,·SHA:·4be2f1e1065702ffb614096426b90316404ff5f1fd2bfaa387a18656cf46e8ee·...·]-27">)</span><span·class="p">,</span><span·class="w">259 ··························</span><span·class="p"·data-group-id="9364045731-31">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="9364045731-32">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·249,·SHA:·9e516f510cdd613269fcfb5579ebf5b217441e400b649401e4500923b4f27241·...·]-27">)</span><span·class="p">,</span><span·class="w">
260 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6206948292-33">(</span><span·class="ss">in_proj</span><span·class="p">,</span><span·class="w">260 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="9364045731-33">(</span><span·class="ss">in_proj</span><span·class="p">,</span><span·class="w">
261 ························</span><span·class="p"·data-group-id="6206948292-34">[</span><span·class="p"·data-group-id="6206948292-35">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bag</span><span·class="p"·data-group-id="6206948292-35">}</span><span·class="p">,</span><span·class="w">261 ························</span><span·class="p"·data-group-id="9364045731-34">[</span><span·class="p"·data-group-id="9364045731-35">{</span><span·class="ss">type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bag</span><span·class="p"·data-group-id="9364045731-35">}</span><span·class="p">,</span><span·class="w">
262 ·························</span><span·class="p"·data-group-id="6206948292-36">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206948292-37">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@s[·...·truncated·by·diffoscope;·len:·108,·SHA:·964ad45bbc6d957102b45ed91f1d505de2d282a10cd084c3677c3adce148af29·...·]-36">}</span><span·class="p">,</span><span·class="w">262 ·························</span><span·class="p"·data-group-id="9364045731-36">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9364045731-37">[</span><span·class="ss">a@gin</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b@s[·...·truncated·by·diffoscope;·len:·108,·SHA:·6142cb1d91fb2f34c6d49e43647440170c73d5e34f7423d40f311a7a39a3395d·...·]-36">}</span><span·class="p">,</span><span·class="w">
263 ·························</span><span·class="p"·data-group-id="6206948292-38">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="6206948292-39">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·250,·SHA:·edbe3b5b0604daaaf15259ac963b982aee44f4887112273af6ea5e539c9c2fc1·...·]-33">)</span><span·class="p">.</span></code></pre><p>As·illustrated,·the·two·directories·reside·on·different·nodes,·because263 ·························</span><span·class="p"·data-group-id="9364045731-38">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="9364045731-39">(</span><span·class="ss">fields</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·250,·SHA:·3e18bae0e4d2bae82a8338d3e0078d7beb688963fa060fab0c5edbd4b4e47261·...·]-33">)</span><span·class="p">.</span></code></pre><p>As·illustrated,·the·two·directories·reside·on·different·nodes,·because
264 <code·class="inline">/ldisc/scratch</code>·(the·&quot;local&quot;·disc)·exists·on·the·two·different·nodes.</p><p>By·executing·these·commands,·two·Erlang·nodes·are·configured·to·run·the264 <code·class="inline">/ldisc/scratch</code>·(the·&quot;local&quot;·disc)·exists·on·the·two·different·nodes.</p><p>By·executing·these·commands,·two·Erlang·nodes·are·configured·to·run·the
265 <code·class="inline">Company</code>·database,·and·therefore,·initialize·the·database.·This·is·required265 <code·class="inline">Company</code>·database,·and·therefore,·initialize·the·database.·This·is·required
266 only·once·when·setting·up.·The·next·time·the·system·is·started,266 only·once·when·setting·up.·The·next·time·the·system·is·started,
267 <a·href="mnesia.html#start/0"><code·class="inline">mnesia:start()</code></a>·is·called·on·both·nodes,·to·initialize·the267 <a·href="mnesia.html#start/0"><code·class="inline">mnesia:start()</code></a>·is·called·on·both·nodes,·to·initialize·the
268 system·from·disc.</p><p>In·a·system·of·<code·class="inline">Mnesia</code>·nodes,·every·node·is·aware·of·the·current·location·of268 system·from·disc.</p><p>In·a·system·of·<code·class="inline">Mnesia</code>·nodes,·every·node·is·aware·of·the·current·location·of
269 all·tables.·In·this·example,·data·is·replicated·on·both·nodes·and·functions·that269 all·tables.·In·this·example,·data·is·replicated·on·both·nodes·and·functions·that
270 manipulate·the·data·in·the·tables·can·be·executed·on·either·of·the·two·nodes.270 manipulate·the·data·in·the·tables·can·be·executed·on·either·of·the·two·nodes.
Offset 273, 15 lines modifiedOffset 273, 15 lines modified
273 the·function·is·executed.·The·functions·<a·href="mnesia.html#start/0"><code·class="inline">mnesia:start/0</code></a>·and·<a·href="mnesia.html#stop/0"><code·class="inline">mnesia:stop/0</code></a>273 the·function·is·executed.·The·functions·<a·href="mnesia.html#start/0"><code·class="inline">mnesia:start/0</code></a>·and·<a·href="mnesia.html#stop/0"><code·class="inline">mnesia:stop/0</code></a>
274 work·on·the·&quot;local&quot;·<code·class="inline">Mnesia</code>·system.·No·functions·start·or·stop·a·set·of·nodes.</p><h3·id="startup-procedure"·class="section-heading">274 work·on·the·&quot;local&quot;·<code·class="inline">Mnesia</code>·system.·No·functions·start·or·stop·a·set·of·nodes.</p><h3·id="startup-procedure"·class="section-heading">
275 ··<a·href="#startup-procedure"·class="hover-link">275 ··<a·href="#startup-procedure"·class="hover-link">
276 ····<i·class="ri-link-m"·aria-hidden="true"></i>276 ····<i·class="ri-link-m"·aria-hidden="true"></i>
277 ··</a>277 ··</a>
278 ··<span·class="text">Startup·Procedure</span>278 ··<span·class="text">Startup·Procedure</span>
279 </h3>279 </h3>
280 <p>Start·<code·class="inline">Mnesia</code>·by·calling·the·following·function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8735304430-1">(</span><span·class="p"·data-group-id="8735304430-1">)</span><span·class="p">.</span></code></pre><p>This·function·initiates·the·DBMS·locally.</p><p>The·choice·of·configuration·alters·the·location·and·load·order·of·the·tables.280 <p>Start·<code·class="inline">Mnesia</code>·by·calling·the·following·function:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7255059822-1">(</span><span·class="p"·data-group-id="7255059822-1">)</span><span·class="p">.</span></code></pre><p>This·function·initiates·the·DBMS·locally.</p><p>The·choice·of·configuration·alters·the·location·and·load·order·of·the·tables.
281 The·alternatives·are·as·follows:</p><ol><li>Tables·that·are·only·stored·locally·are·initialized·from·the·local·<code·class="inline">Mnesia</code>281 The·alternatives·are·as·follows:</p><ol><li>Tables·that·are·only·stored·locally·are·initialized·from·the·local·<code·class="inline">Mnesia</code>
282 directory.</li><li>Replicated·tables·that·reside·locally·as·well·as·somewhere·else·are·either282 directory.</li><li>Replicated·tables·that·reside·locally·as·well·as·somewhere·else·are·either
283 initiated·from·disc·or·by·copying·the·entire·table·from·the·other·node,283 initiated·from·disc·or·by·copying·the·entire·table·from·the·other·node,
284 depending·on·which·of·the·different·replicas·are·the·most·recent.·<code·class="inline">Mnesia</code>284 depending·on·which·of·the·different·replicas·are·the·most·recent.·<code·class="inline">Mnesia</code>
285 determines·which·of·the·tables·are·the·most·recent.</li><li>Tables·that·reside·on·remote·nodes·are·available·to·other·nodes·as·soon·as285 determines·which·of·the·tables·are·the·most·recent.</li><li>Tables·that·reside·on·remote·nodes·are·available·to·other·nodes·as·soon·as
286 they·are·loaded.</li></ol><p>Table·initialization·is·asynchronous.·The·function·call286 they·are·loaded.</li></ol><p>Table·initialization·is·asynchronous.·The·function·call
287 <a·href="mnesia.html#start/0"><code·class="inline">mnesia:start()</code></a>·returns·the·atom·<code·class="inline">ok</code>·and·then·starts·to287 <a·href="mnesia.html#start/0"><code·class="inline">mnesia:start()</code></a>·returns·the·atom·<code·class="inline">ok</code>·and·then·starts·to
Offset 296, 17 lines modifiedOffset 296, 17 lines modified
296 situation,·a·call·to·<a·href="mnesia.html#wait_for_tables/2"><code·class="inline">mnesia:wait_for_tables/2</code></a>,·suspends·the·caller·until·the296 situation,·a·call·to·<a·href="mnesia.html#wait_for_tables/2"><code·class="inline">mnesia:wait_for_tables/2</code></a>,·suspends·the·caller·until·the
297 remote·node·has·initialized·the·table·from·its·local·disc·and·the·node·has297 remote·node·has·initialized·the·table·from·its·local·disc·and·the·node·has
298 copied·the·table·over·the·network·to·the·local·node.</p><p>However,·this·procedure·can·be·time-consuming,·the·shortcut·function298 copied·the·table·over·the·network·to·the·local·node.</p><p>However,·this·procedure·can·be·time-consuming,·the·shortcut·function
299 <a·href="mnesia.html#force_load_table/1"><code·class="inline">mnesia:force_load_table(Tab)</code></a>·loads·all·the·tables299 <a·href="mnesia.html#force_load_table/1"><code·class="inline">mnesia:force_load_table(Tab)</code></a>·loads·all·the·tables
300 from·disc·at·a·faster·rate.·The·function·forces·tables·to·be·loaded·from·disc300 from·disc·at·a·faster·rate.·The·function·forces·tables·to·be·loaded·from·disc
301 regardless·of·the·network·situation.</p><p>Thus,·it·can·be·assumed·that·if·an·application·wants·to·use·tables·<code·class="inline">a</code>·and·<code·class="inline">b</code>,301 regardless·of·the·network·situation.</p><p>Thus,·it·can·be·assumed·that·if·an·application·wants·to·use·tables·<code·class="inline">a</code>·and·<code·class="inline">b</code>,
302 the·application·must·perform·some·action·similar·to·following·before·it·can·use302 the·application·must·perform·some·action·similar·to·following·before·it·can·use
303 the·tables:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">wait_for_tables</span><span·class="p"·data-group-id="0818341921-1">(</span><span·class="p"·data-group-id="0818341921-2">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b</span><span·class="p"·data-group-id="0818341921-2">]</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·090c9fa91118b4959a5de01183c47cd7cc178a88b54fe14d22a243197049f8de·...·]-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">303 the·tables:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">case</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">wait_for_tables</span><span·class="p"·data-group-id="7249260408-1">(</span><span·class="p"·data-group-id="7249260408-2">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">b</span><span·class="p"·data-group-id="7249260408-2">]</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·2f56346ad11bcf7a87a2142e84d1b1d76dbbb14b3ff3793508f9eb252bb60440·...·]-1">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
304 ··</span><span·class="p"·data-group-id="0818341921-3">{</span><span·class="ss">timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RemainingTabs</span><span·class="p"·data-group-id="0818341921-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">304 ··</span><span·class="p"·data-group-id="7249260408-3">{</span><span·class="ss">timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RemainingTabs</span><span·class="p"·data-group-id="7249260408-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
305 ····</span><span·class="nf">panic</span><span·class="p"·data-group-id="0818341921-4">(</span><span·class="n">RemainingTabs</span><span·class="p"·data-group-id="0818341921-4">)</span><span·class="p">;</span><span·class="w">305 ····</span><span·class="nf">panic</span><span·class="p"·data-group-id="7249260408-4">(</span><span·class="n">RemainingTabs</span><span·class="p"·data-group-id="7249260408-4">)</span><span·class="p">;</span><span·class="w">
306 ··</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">306 ··</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
307 ····</span><span·class="ss">synced</span><span·class="w">307 ····</span><span·class="ss">synced</span><span·class="w">
308 </span><span·class="k">end</span><span·class="p">.</span></code></pre><blockquote><h4·class="warning">Warning</h4><p>When·tables·are·forcefully·loaded·from·the·local·disc,·all·operations·that308 </span><span·class="k">end</span><span·class="p">.</span></code></pre><blockquote><h4·class="warning">Warning</h4><p>When·tables·are·forcefully·loaded·from·the·local·disc,·all·operations·that
309 were·performed·on·the·replicated·table·while·the·local·node·was·down,·and·the309 were·performed·on·the·replicated·table·while·the·local·node·was·down,·and·the
310 remote·replica·was·alive,·are·lost.·This·can·cause·the·database·to·become310 remote·replica·was·alive,·are·lost.·This·can·cause·the·database·to·become
311 inconsistent.</p></blockquote><p>If·the·startup·procedure·fails,·the·function·<a·href="mnesia.html#start/0"><code·class="inline">mnesia:start()</code></a>311 inconsistent.</p></blockquote><p>If·the·startup·procedure·fails,·the·function·<a·href="mnesia.html#start/0"><code·class="inline">mnesia:start()</code></a>
312 returns·the·cryptic·tuple312 returns·the·cryptic·tuple
Offset 324, 21 lines modifiedOffset 324, 21 lines modified
324 the·records·that·constitute·the·table.·For·details,·see·<code·class="inline">record_name</code>.</li><li><code·class="inline">ArgList</code>·is·a·list·of·<code·class="inline">{Key,Value}</code>·tuples.·The·following·arguments·are324 the·records·that·constitute·the·table.·For·details,·see·<code·class="inline">record_name</code>.</li><li><code·class="inline">ArgList</code>·is·a·list·of·<code·class="inline">{Key,Value}</code>·tuples.·The·following·arguments·are
325 valid:<ul><li><p><code·class="inline">{type,·Type}</code>,·where·<code·class="inline">Type</code>·must·be·either·of·the·atoms·<code·class="inline">set</code>,325 valid:<ul><li><p><code·class="inline">{type,·Type}</code>,·where·<code·class="inline">Type</code>·must·be·either·of·the·atoms·<code·class="inline">set</code>,
326 <code·class="inline">ordered_set</code>,·or·<code·class="inline">bag</code>.·Default·is·<code·class="inline">set</code>.</p><p>Notice·that·currently·<code·class="inline">ordered_set</code>·is·not·supported·for·<code·class="inline">disc_only_copies</code>326 <code·class="inline">ordered_set</code>,·or·<code·class="inline">bag</code>.·Default·is·<code·class="inline">set</code>.</p><p>Notice·that·currently·<code·class="inline">ordered_set</code>·is·not·supported·for·<code·class="inline">disc_only_copies</code>
327 tables.</p><p>A·table·of·type·<code·class="inline">set</code>·or·<code·class="inline">ordered_set</code>·has·either·zero·or·one·record·per327 tables.</p><p>A·table·of·type·<code·class="inline">set</code>·or·<code·class="inline">ordered_set</code>·has·either·zero·or·one·record·per
328 key,·whereas·a·table·of·type·<code·class="inline">bag</code>·can·have·an·arbitrary·number·of·records328 key,·whereas·a·table·of·type·<code·class="inline">bag</code>·can·have·an·arbitrary·number·of·records
329 per·key.·The·key·for·each·record·is·always·the·first·attribute·of·the329 per·key.·The·key·for·each·record·is·always·the·first·attribute·of·the
330 record.</p><p>The·following·example·illustrates·the·difference·between·type·<code·class="inline">set</code>·and330 record.</p><p>The·following·example·illustrates·the·difference·between·type·<code·class="inline">set</code>·and
331 <code·class="inline">bag</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="nf">f</span><span·class="p"·data-group-id="8908972663-1">(</span><span·class="p"·data-group-id="8908972663-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">331 <code·class="inline">bag</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="nf">f</span><span·class="p"·data-group-id="6137604443-1">(</span><span·class="p"·data-group-id="6137604443-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
332 ····</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8908972663-2">(</span><span·class="p"·data-group-id="8908972663-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">332 ····</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="6137604443-2">(</span><span·class="p"·data-group-id="6137604443-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
333 ··········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8908972663-3">(</span><span·class="p"·data-group-id="8908972663-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·3d6b8c1ab028ecea06f8e7a75e6b1f4435c6721208b406afcb92271c6e33a8e5·...·]3-3">)</span><span·class="p">,</span><span·class="w">333 ··········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="6137604443-3">(</span><span·class="p"·data-group-id="6137604443-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·26f71ae65a4524fdfb1a709e6cfa7305d625fba17e84951cb92f1ffda159cc18·...·]3-3">)</span><span·class="p">,</span><span·class="w">
334 ··········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8908972663-5">(</span><span·class="p"·data-group-id="8908972663-6">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">3</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·b3b6dd28eea498743f03e0bb70684d2ff81ef0b707d1b688b98ec25024b0c5c9·...·]3-5">)</span><span·class="p">,</span><span·class="w">334 ··········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="6137604443-5">(</span><span·class="p"·data-group-id="6137604443-6">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">3</span><span·cl[·...·truncated·by·diffoscope;·len:·85,·SHA:·9420e4637d9e2bd344094e1f33e7f9891b567589f28acbaff6b4ba440ca0ab75·...·]3-5">)</span><span·class="p">,</span><span·class="w">
335 ··········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><span·class="p"·data-group-id="8908972663-7">(</span><span·class="p"·data-group-id="8908972663-8">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="8908972663-8">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·12,·SHA:·bbfb15e89c1592f1d223362fe842a9213f1035796dc9451cf6854a6d797fb858·...·]3-7">)</span><span·class="w">335 ··········</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><span·class="p"·data-group-id="6137604443-7">(</span><span·class="p"·data-group-id="6137604443-8">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="6137604443-8">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·12,·SHA:·97912aa4e980aac784be95dae5a47851d6e803a34085f00c1c45e3e51ad33e38·...·]3-7">)</span><span·class="w">
336 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">336 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
337 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="8908972663-9">(</span><span·class="n">F</span><span·class="p"·data-group-id="8908972663-9">)</span><span·class="p">.</span></code></pre><p>This·transaction·returns·the·list·<code·class="inline">[{foo,1,3}]</code>·if·table·<code·class="inline">foo</code>·is·of·type337 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="6137604443-9">(</span><span·class="n">F</span><span·class="p"·data-group-id="6137604443-9">)</span><span·class="p">.</span></code></pre><p>This·transaction·returns·the·list·<code·class="inline">[{foo,1,3}]</code>·if·table·<code·class="inline">foo</code>·is·of·type
338 <code·class="inline">set</code>.·However,·the·list·<code·class="inline">[{foo,1,2},·{foo,1,3}]</code>·is·returned·if·the·table338 <code·class="inline">set</code>.·However,·the·list·<code·class="inline">[{foo,1,2},·{foo,1,3}]</code>·is·returned·if·the·table
339 is·of·type·<code·class="inline">bag</code>.</p><p><code·class="inline">Mnesia</code>·tables·can·never·contain·duplicates·of·the·same·record·in·the·same339 is·of·type·<code·class="inline">bag</code>.</p><p><code·class="inline">Mnesia</code>·tables·can·never·contain·duplicates·of·the·same·record·in·the·same
340 table.·Duplicate·records·have·attributes·with·the·same·contents·and·key.</p></li><li><p><code·class="inline">{disc_copies,·NodeList}</code>,·where·<code·class="inline">NodeList</code>·is·a·list·of·the·nodes·where340 table.·Duplicate·records·have·attributes·with·the·same·contents·and·key.</p></li><li><p><code·class="inline">{disc_copies,·NodeList}</code>,·where·<code·class="inline">NodeList</code>·is·a·list·of·the·nodes·where
341 this·table·is·to·reside·on·disc.</p><p>Write·operations·to·a·table·replica·of·type·<code·class="inline">disc_copies</code>·write·data·to·the341 this·table·is·to·reside·on·disc.</p><p>Write·operations·to·a·table·replica·of·type·<code·class="inline">disc_copies</code>·write·data·to·the
342 disc·copy·and·to·the·RAM·copy·of·the·table.</p><p>It·is·possible·to·have·a·replicated·table·of·type·<code·class="inline">disc_copies</code>·on·one·node,342 disc·copy·and·to·the·RAM·copy·of·the·table.</p><p>It·is·possible·to·have·a·replicated·table·of·type·<code·class="inline">disc_copies</code>·on·one·node,
343 and·the·same·table·stored·as·a·different·type·on·another·node.·Default·is343 and·the·same·table·stored·as·a·different·type·on·another·node.·Default·is
344 <code·class="inline">[]</code>.·This·arrangement·is·desirable·if·the·following·operational344 <code·class="inline">[]</code>.·This·arrangement·is·desirable·if·the·following·operational
Offset 374, 19 lines modifiedOffset 374, 19 lines modified
374 possible·for·you·to·provide·the·attribute·names·or·to·use·the374 possible·for·you·to·provide·the·attribute·names·or·to·use·the
375 <code·class="inline">record_info/2</code>·notation.</p><p>It·is·recommended·to·use·the·<code·class="inline">record_info/2</code>·notation,·as·it·becomes·easier375 <code·class="inline">record_info/2</code>·notation.</p><p>It·is·recommended·to·use·the·<code·class="inline">record_info/2</code>·notation,·as·it·becomes·easier
376 to·maintain·the·program·and·the·program·becomes·more·robust·with·regards·to376 to·maintain·the·program·and·the·program·becomes·more·robust·with·regards·to
377 future·record·changes.</p></li><li><p><code·class="inline">{record_name,·Atom}</code>·specifies·the·common·name·of·all·records·stored·in·the377 future·record·changes.</p></li><li><p><code·class="inline">{record_name,·Atom}</code>·specifies·the·common·name·of·all·records·stored·in·the
378 table.·All·records·stored·in·the·table·must·have·this·name·as·their·first378 table.·All·records·stored·in·the·table·must·have·this·name·as·their·first
379 element.·<code·class="inline">record_name</code>·defaults·to·the·name·of·the·table.·For·more379 element.·<code·class="inline">record_name</code>·defaults·to·the·name·of·the·table.·For·more
Max diff block lines reached; 7905/53815 bytes (14.69%) of diff not shown.
746 B
html2text {}
Max HTML report size reached
142 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_chap4.html
    
Offset 141, 22 lines modifiedOffset 141, 22 lines modified
141 <p>Transactions·are·important·when·designing·fault-tolerant,·distributed·systems.·A141 <p>Transactions·are·important·when·designing·fault-tolerant,·distributed·systems.·A
142 <code·class="inline">Mnesia</code>·transaction·is·a·mechanism·by·which·a·series·of·database·operations·can142 <code·class="inline">Mnesia</code>·transaction·is·a·mechanism·by·which·a·series·of·database·operations·can
143 be·executed·as·one·functional·block.·The·functional·block·that·is·run·as·a143 be·executed·as·one·functional·block.·The·functional·block·that·is·run·as·a
144 transaction·is·called·a·Functional·Object·(Fun),·and·this·code·can·read,·write,144 transaction·is·called·a·Functional·Object·(Fun),·and·this·code·can·read,·write,
145 and·delete·<code·class="inline">Mnesia</code>·records.·The·Fun·is·evaluated·as·a·transaction·that·either145 and·delete·<code·class="inline">Mnesia</code>·records.·The·Fun·is·evaluated·as·a·transaction·that·either
146 commits·or·terminates.·If·a·transaction·succeeds·in·executing·the·Fun,·it146 commits·or·terminates.·If·a·transaction·succeeds·in·executing·the·Fun,·it
147 replicates·the·action·on·all·nodes·involved,·or·terminates·if·an·error·occurs.</p><p>The·following·example·shows·a·transaction·that·raises·the·salary·of·certain147 replicates·the·action·on·all·nodes·involved,·or·terminates·if·an·error·occurs.</p><p>The·following·example·shows·a·transaction·that·raises·the·salary·of·certain
148 employee·numbers:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">raise</span><span·class="p"·data-group-id="0244779210-1">(</span><span·class="n">Eno</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Raise</span><span·class="p"·data-group-id="0244779210-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">148 employee·numbers:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">raise</span><span·class="p"·data-group-id="4205074473-1">(</span><span·class="n">Eno</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Raise</span><span·class="p"·data-group-id="4205074473-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
149 ····</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="0244779210-2">(</span><span·class="p"·data-group-id="0244779210-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 ····</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="4205074473-2">(</span><span·class="p"·data-group-id="4205074473-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
150 ················</span><span·class="p"·data-group-id="0244779210-3">[</span><span·class="n">E</span><span·class="p"·data-group-id="0244779210-3">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><sp[·...·truncated·by·diffoscope;·len:·274,·SHA:·4ded47b8623df3d7dc65549bb0910767c204efb70800c07db3a929376439a7bd·...·]-4">)</span><span·class="p">,</span><span·class="w">150 ················</span><span·class="p"·data-group-id="4205074473-3">[</span><span·class="n">E</span><span·class="p"·data-group-id="4205074473-3">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><sp[·...·truncated·by·diffoscope;·len:·274,·SHA:·8d8485262ade6ab3364da01771cab7cf6dec3e17b0a0723dd1dfc2fb3ab3d767·...·]-4">)</span><span·class="p">,</span><span·class="w">
151 ················</span><span·class="n">Salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">employee</span><span·class="p">.</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Raise</span><span·class="p">,</span><span·class="w">151 ················</span><span·class="n">Salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">employee</span><span·class="p">.</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Raise</span><span·class="p">,</span><span·class="w">
152 ················</span><span·class="n">New</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">employee</span><span·class="p"·data-group-id="0244779210-5">{</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Salary</span><span·class="p"·data-group-id="0244779210-5">}</span><span·class="p">,</span><span·class="w">152 ················</span><span·class="n">New</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">employee</span><span·class="p"·data-group-id="4205074473-5">{</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Salary</span><span·class="p"·data-group-id="4205074473-5">}</span><span·class="p">,</span><span·class="w">
153 ················</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="0244779210-6">(</span><span·class="n">New</span><span·class="p"·data-group-id="0244779210-6">)</span><span·class="w">153 ················</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="4205074473-6">(</span><span·class="n">New</span><span·class="p"·data-group-id="4205074473-6">)</span><span·class="w">
154 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">154 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
155 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="0244779210-7">(</span><span·class="n">F</span><span·class="p"·data-group-id="0244779210-7">)</span><span·class="p">.</span></code></pre><p>The·function·<code·class="inline">raise/2</code>·contains·a·Fun·made·up·of·four·code·lines.·This·Fun·is155 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="4205074473-7">(</span><span·class="n">F</span><span·class="p"·data-group-id="4205074473-7">)</span><span·class="p">.</span></code></pre><p>The·function·<code·class="inline">raise/2</code>·contains·a·Fun·made·up·of·four·code·lines.·This·Fun·is
156 called·by·the·statement·<code·class="inline">mnesia:transaction(F)</code>·and·returns·a·value.</p><p>The·<code·class="inline">Mnesia</code>·transaction·system·facilitates·the·construction·of·reliable,156 called·by·the·statement·<code·class="inline">mnesia:transaction(F)</code>·and·returns·a·value.</p><p>The·<code·class="inline">Mnesia</code>·transaction·system·facilitates·the·construction·of·reliable,
157 distributed·systems·by·providing·the·following·important·properties:</p><ul><li>The·transaction·handler·ensures·that·a·Fun,·which·is·placed·inside·a157 distributed·systems·by·providing·the·following·important·properties:</p><ul><li>The·transaction·handler·ensures·that·a·Fun,·which·is·placed·inside·a
158 transaction,·does·not·interfere·with·operations·embedded·in·other·transactions158 transaction,·does·not·interfere·with·operations·embedded·in·other·transactions
159 when·it·executes·a·series·of·operations·on·tables.</li><li>The·transaction·handler·ensures·that·either·all·operations·in·the·transaction159 when·it·executes·a·series·of·operations·on·tables.</li><li>The·transaction·handler·ensures·that·either·all·operations·in·the·transaction
160 are·performed·successfully·on·all·nodes·atomically,·or·the·transaction·fails160 are·performed·successfully·on·all·nodes·atomically,·or·the·transaction·fails
161 without·permanent·effect·on·any·node.</li><li>The·<code·class="inline">Mnesia</code>·transactions·have·four·important·properties,·called·<em>A</em>tomicity,161 without·permanent·effect·on·any·node.</li><li>The·<code·class="inline">Mnesia</code>·transactions·have·four·important·properties,·called·<em>A</em>tomicity,
162 <em>C</em>onsistency,·<em>I</em>solation,·and·<em>D</em>urability·(ACID).·These·properties·are162 <em>C</em>onsistency,·<em>I</em>solation,·and·<em>D</em>urability·(ACID).·These·properties·are
Offset 242, 23 lines modifiedOffset 242, 23 lines modified
242 code·these·operations.</p><p>Deadlocks·can·occur·when·concurrent·processes·set·and·release·locks·on·the·same242 code·these·operations.</p><p>Deadlocks·can·occur·when·concurrent·processes·set·and·release·locks·on·the·same
243 records.·<code·class="inline">Mnesia</code>·employs·a·&quot;wait-die&quot;·strategy·to·resolve·these·situations.·If243 records.·<code·class="inline">Mnesia</code>·employs·a·&quot;wait-die&quot;·strategy·to·resolve·these·situations.·If
244 <code·class="inline">Mnesia</code>·suspects·that·a·deadlock·can·occur·when·a·transaction·tries·to·set·a244 <code·class="inline">Mnesia</code>·suspects·that·a·deadlock·can·occur·when·a·transaction·tries·to·set·a
245 lock,·the·transaction·is·forced·to·release·all·its·locks·and·sleep·for·a·while.245 lock,·the·transaction·is·forced·to·release·all·its·locks·and·sleep·for·a·while.
246 The·Fun·in·the·transaction·is·evaluated·once·more.</p><p>It·is·therefore·important·that·the·code·inside·the·Fun·given·to246 The·Fun·in·the·transaction·is·evaluated·once·more.</p><p>It·is·therefore·important·that·the·code·inside·the·Fun·given·to
247 <a·href="mnesia.html#transaction/1"><code·class="inline">mnesia:transaction/1</code></a>·is·pure.·Some·strange·results·can·occur·if,·for·example,247 <a·href="mnesia.html#transaction/1"><code·class="inline">mnesia:transaction/1</code></a>·is·pure.·Some·strange·results·can·occur·if,·for·example,
248 messages·are·sent·by·the·transaction·Fun.·The·following·example·illustrates·this248 messages·are·sent·by·the·transaction·Fun.·The·following·example·illustrates·this
249 situation:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bad_raise</span><span·class="p"·data-group-id="2580836405-1">(</span><span·class="n">Eno</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Raise</span><span·class="p"·data-group-id="2580836405-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">249 situation:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">bad_raise</span><span·class="p"·data-group-id="3990231582-1">(</span><span·class="n">Eno</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Raise</span><span·class="p"·data-group-id="3990231582-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
250 ····</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="2580836405-2">(</span><span·class="p"·data-group-id="2580836405-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">250 ····</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3990231582-2">(</span><span·class="p"·data-group-id="3990231582-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
251 ················</span><span·class="p"·data-group-id="2580836405-3">[</span><span·class="n">E</span><span·class="p"·data-group-id="2580836405-3">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><sp[·...·truncated·by·diffoscope;·len:·303,·SHA:·fa44a887080db3c38e7c59e37286339fa6d1311c2f6817d5514e30e576792af8·...·]-4">)</span><span·class="p">,</span><span·class="w">251 ················</span><span·class="p"·data-group-id="3990231582-3">[</span><span·class="n">E</span><span·class="p"·data-group-id="3990231582-3">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><sp[·...·truncated·by·diffoscope;·len:·303,·SHA:·4bd9393cec698f7bda1090a5e69a6579f27e00570db3a440851917b055c32538·...·]-4">)</span><span·class="p">,</span><span·class="w">
252 ················</span><span·class="n">Salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">employee</span><span·class="p">.</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Raise</span><span·class="p">,</span><span·class="w">252 ················</span><span·class="n">Salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">employee</span><span·class="p">.</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">Raise</span><span·class="p">,</span><span·class="w">
253 ················</span><span·class="n">New</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">employee</span><span·class="p"·data-group-id="2580836405-6">{</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Salary</span><span·class="p"·data-group-id="2580836405-6">}</span><span·class="p">,</span><span·class="w">253 ················</span><span·class="n">New</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span·class="o">#</span><span·class="ss">employee</span><span·class="p"·data-group-id="3990231582-6">{</span><span·class="ss">salary</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Salary</span><span·class="p"·data-group-id="3990231582-6">}</span><span·class="p">,</span><span·class="w">
254 ················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="2580836405-7">(</span><span·class="s">&quot;Trying·to·write·...·</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2580836405-8">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·01135eb1cbc105257f1f93149137c752722339119eba15ae6a347d7f218970cd·...·]-7">)</span><span·class="p">,</span><span·class="w">254 ················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3990231582-7">(</span><span·class="s">&quot;Trying·to·write·...·</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3990231582-8">[</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·65,·SHA:·537ab4260f5a2c644737cd08dabaf18e09c4455725b8d7484535917e569f3cbc·...·]-7">)</span><span·class="p">,</span><span·class="w">
255 ················</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="2580836405-9">(</span><span·class="n">New</span><span·class="p"·data-group-id="2580836405-9">)</span><span·class="w">255 ················</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="3990231582-9">(</span><span·class="n">New</span><span·class="p"·data-group-id="3990231582-9">)</span><span·class="w">
256 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">256 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
257 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="2580836405-10">(</span><span·class="n">F</span><span·class="p"·data-group-id="2580836405-10">)</span><span·class="p">.</span></code></pre><p>This·transaction·can·write·the·text·<code·class="inline">&quot;Trying·to·write·...·&quot;</code>·1000·times·to·the257 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="3990231582-10">(</span><span·class="n">F</span><span·class="p"·data-group-id="3990231582-10">)</span><span·class="p">.</span></code></pre><p>This·transaction·can·write·the·text·<code·class="inline">&quot;Trying·to·write·...·&quot;</code>·1000·times·to·the
258 terminal.·However,·<code·class="inline">Mnesia</code>·guarantees·that·each·transaction·will·eventually258 terminal.·However,·<code·class="inline">Mnesia</code>·guarantees·that·each·transaction·will·eventually
259 run.·As·a·result,·<code·class="inline">Mnesia</code>·is·not·only·deadlock·free,·but·also·livelock·free.</p><p>The·<code·class="inline">Mnesia</code>·programmer·cannot·prioritize·one·particular·transaction·to·execute259 run.·As·a·result,·<code·class="inline">Mnesia</code>·is·not·only·deadlock·free,·but·also·livelock·free.</p><p>The·<code·class="inline">Mnesia</code>·programmer·cannot·prioritize·one·particular·transaction·to·execute
260 before·other·transactions·that·are·waiting·to·execute.·As·a·result,·the·<code·class="inline">Mnesia</code>260 before·other·transactions·that·are·waiting·to·execute.·As·a·result,·the·<code·class="inline">Mnesia</code>
261 DBMS·transaction·system·is·not·suitable·for·hard·real-time·applications.261 DBMS·transaction·system·is·not·suitable·for·hard·real-time·applications.
262 However,·<code·class="inline">Mnesia</code>·contains·other·features·that·have·real-time·properties.</p><p><code·class="inline">Mnesia</code>·dynamically·sets·and·releases·locks·as·transactions·execute.·It·is262 However,·<code·class="inline">Mnesia</code>·contains·other·features·that·have·real-time·properties.</p><p><code·class="inline">Mnesia</code>·dynamically·sets·and·releases·locks·as·transactions·execute.·It·is
263 therefore·dangerous·to·execute·code·with·transaction·side-effects.·In263 therefore·dangerous·to·execute·code·with·transaction·side-effects.·In
264 particular,·a·<code·class="inline">receive</code>·statement·inside·a·transaction·can·lead·to·a·situation264 particular,·a·<code·class="inline">receive</code>·statement·inside·a·transaction·can·lead·to·a·situation
Offset 297, 21 lines modifiedOffset 297, 21 lines modified
297 record·when·reading·a·record,·and·lock·all·replicas·of·a·record·when·writing·a297 record·when·reading·a·record,·and·lock·all·replicas·of·a·record·when·writing·a
298 record.·However,·some·applications·use·<code·class="inline">Mnesia</code>·mainly·for·its·fault-tolerant298 record.·However,·some·applications·use·<code·class="inline">Mnesia</code>·mainly·for·its·fault-tolerant
299 qualities.·These·applications·can·be·configured·with·one·node·doing·all·the299 qualities.·These·applications·can·be·configured·with·one·node·doing·all·the
300 heavy·work,·and·a·standby·node·that·is·ready·to·take·over·if·the·main·node300 heavy·work,·and·a·standby·node·that·is·ready·to·take·over·if·the·main·node
301 fails.·Such·applications·can·benefit·from·using·sticky·locks·instead·of·the301 fails.·Such·applications·can·benefit·from·using·sticky·locks·instead·of·the
302 normal·locking·scheme.</p><p>A·sticky·lock·is·a·lock·that·stays·in·place·at·a·node,·after·the·transaction302 normal·locking·scheme.</p><p>A·sticky·lock·is·a·lock·that·stays·in·place·at·a·node,·after·the·transaction
303 that·first·acquired·the·lock·has·terminated.·To·illustrate·this,·assume·that·the303 that·first·acquired·the·lock·has·terminated.·To·illustrate·this,·assume·that·the
304 following·transaction·is·executed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8102151508-1">(</span><span·class="p"·data-group-id="8102151508-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">304 following·transaction·is·executed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3547864230-1">(</span><span·class="p"·data-group-id="3547864230-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
305 ······</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8102151508-2">(</span><span·class="o">#</span><span·class="ss">foo</span><span·class="p"·data-group-id="8102151508-3">{</span><span·class="ss">a</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">kalle</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·a5c0398a124a5355abf469d8333bb074935113ae74b82cf05de0c3a487323696·...·]-2">)</span><span·class="w">305 ······</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="3547864230-2">(</span><span·class="o">#</span><span·class="ss">foo</span><span·class="p"·data-group-id="3547864230-3">{</span><span·class="ss">a</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">kalle</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·ae0440b9f6ba2fe16b2d50cb80ea1999a01cc3ff786ba772d747f4058c52c838·...·]-2">)</span><span·class="w">
306 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">306 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
307 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="8102151508-4">(</span><span·class="n">F</span><span·class="p"·data-group-id="8102151508-4">)</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">foo</code>·table·is·replicated·on·the·two·nodes·<code·class="inline">N1</code>·and·<code·cla[·...·truncated·by·diffoscope;·len:·557,·SHA:·975e8be5187db5f3cda197961f35418b127032d76b4aef87af4c50233aa8639a·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">307 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="3547864230-4">(</span><span·class="n">F</span><span·class="p"·data-group-id="3547864230-4">)</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">foo</code>·table·is·replicated·on·the·two·nodes·<code·class="inline">N1</code>·and·<code·cla[·...·truncated·by·diffoscope;·len:·557,·SHA:·aee74a3a4f6d284eb80e88499fe55e72d8cbdd1fc4d4ac6d978584b1d0926fc6·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
308 ······</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">s_write</span><span·class="p"·data-group-id="2113710002-2">(</span><span·class="o">#</span><span·class="ss">foo</span><span·class="p"·data-group-id="2113710002-3">{</span><span·class="ss">a</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">kalle</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·823ab90deb68b566268f9bb231e1a44a43962550e8e170d04b0a563bd9ff1b79·...·]-2">)</span><span·class="w">308 ······</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">s_write</span><span·class="p"·data-group-id="4114948094-2">(</span><span·class="o">#</span><span·class="ss">foo</span><span·class="p"·data-group-id="4114948094-3">{</span><span·class="ss">a</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">kalle</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·bd39cbe7e8b310fc28b722d07a90415ffb05162cb5fef51b7b81a3b8ce30275c·...·]-2">)</span><span·class="w">
309 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">309 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
310 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="2113710002-4">(</span><span·class="n">F</span><span·class="p"·data-group-id="2113710002-4">)</span><span·class="p">.</span></code></pre><p>This·code·uses·the·function·<a·href="mnesia.html#s_write/1"><code·class="inline">s_write/1</code></a>·instead·of·the310 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">transaction</span><span·class="p"·data-group-id="4114948094-4">(</span><span·class="n">F</span><span·class="p"·data-group-id="4114948094-4">)</span><span·class="p">.</span></code></pre><p>This·code·uses·the·function·<a·href="mnesia.html#s_write/1"><code·class="inline">s_write/1</code></a>·instead·of·the
311 function·<a·href="mnesia.html#write/1"><code·class="inline">write/1</code></a>·The·function·<code·class="inline">s_write/1</code>·sets·a·sticky·lock311 function·<a·href="mnesia.html#write/1"><code·class="inline">write/1</code></a>·The·function·<code·class="inline">s_write/1</code>·sets·a·sticky·lock
312 instead·of·a·normal·lock.·If·the·table·is·not·replicated,·sticky·locks·have·no312 instead·of·a·normal·lock.·If·the·table·is·not·replicated,·sticky·locks·have·no
313 special·effect.·If·the·table·is·replicated,·and·a·sticky·lock·is·set·on·node313 special·effect.·If·the·table·is·replicated,·and·a·sticky·lock·is·set·on·node
314 <code·class="inline">N1</code>,·this·lock·then·sticks·to·node·<code·class="inline">N1</code>.·The·next·time·you·try·to·set·a·sticky314 <code·class="inline">N1</code>,·this·lock·then·sticks·to·node·<code·class="inline">N1</code>.·The·next·time·you·try·to·set·a·sticky
315 lock·on·the·same·record·at·node·<code·class="inline">N1</code>,·<code·class="inline">Mnesia</code>·detects·that·the·lock·is·already315 lock·on·the·same·record·at·node·<code·class="inline">N1</code>,·<code·class="inline">Mnesia</code>·detects·that·the·lock·is·already
316 set·and·do·no·network·operation·to·acquire·the·lock.</p><p>It·is·more·efficient·to·set·a·local·lock·than·it·is·to·set·a·networked·lock.316 set·and·do·no·network·operation·to·acquire·the·lock.</p><p>It·is·more·efficient·to·set·a·local·lock·than·it·is·to·set·a·networked·lock.
317 Sticky·locks·can·therefore·benefit·an·application·that·uses·a·replicated·table317 Sticky·locks·can·therefore·benefit·an·application·that·uses·a·replicated·table
Offset 329, 16 lines modifiedOffset 329, 16 lines modified
329 locks·automatically,·and·the·programmer·does·not·need·to·code·these·operations.329 locks·automatically,·and·the·programmer·does·not·need·to·code·these·operations.
330 However,·transactions·that·read·and·write·many·records·in·a·specific·table330 However,·transactions·that·read·and·write·many·records·in·a·specific·table
331 execute·more·efficiently·if·the·transaction·is·started·by·setting·a·table·lock331 execute·more·efficiently·if·the·transaction·is·started·by·setting·a·table·lock
332 on·this·table.·This·blocks·other·concurrent·transactions·from·the·table.·The332 on·this·table.·This·blocks·other·concurrent·transactions·from·the·table.·The
333 following·two·functions·are·used·to·set·explicit·table·locks·for·read·and·write333 following·two·functions·are·used·to·set·explicit·table·locks·for·read·and·write
334 operations:</p><ul><li><a·href="mnesia.html#read_lock_table/1"><code·class="inline">mnesia:read_lock_table(Tab)</code></a>·sets·a·read·lock·on334 operations:</p><ul><li><a·href="mnesia.html#read_lock_table/1"><code·class="inline">mnesia:read_lock_table(Tab)</code></a>·sets·a·read·lock·on
335 table·<code·class="inline">Tab</code>.</li><li><a·href="mnesia.html#write_lock_table/1"><code·class="inline">mnesia:write_lock_table(Tab)</code></a>·sets·a·write·lock335 table·<code·class="inline">Tab</code>.</li><li><a·href="mnesia.html#write_lock_table/1"><code·class="inline">mnesia:write_lock_table(Tab)</code></a>·sets·a·write·lock
336 on·table·<code·class="inline">Tab</code>.</li></ul><p>Alternative·syntax·for·acquisition·of·table·locks·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="7464495477-1">(</span><span·class="p"·data-group-id="7464495477-2">{</span><span·class="ss">table</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p"·data-group-id="7464495477-2">}</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">read</span><span·class="p"·data-group-id="7464495477-1">)</span><span·class="w"> 
337 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="7464495477-3">(</span><span·class="p"·data-group-id="7464495477-4">{</span><span·class="ss">table</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·345,·SHA:·abadece0b10fd0b4759010a011d9f0472ca4333218991683572a2f85802b90c8·...·]336 on·table·<code·class="inline">Tab</code>.</li></ul><p>Alternative·syntax·for·acquisition·of·table·locks·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><spa[·...·truncated·by·diffoscope;·len:·403,·SHA:·4f30678f19ba1c27dde157b9caecafefda0d21caddee330f9cf02db61316dc98·...·]
 337 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">lock</span><span·class="p"·data-group-id="4121019487-3">(</span><span·class="p"·data-group-id="4121019487-4">{</span><span·class="ss">table</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p"·data-group-id="4121019487-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">write</span><span·class="p"·data-group-id="4121019487-3">)</span></code></pre><p>The·matching·operations·in·<code·class="inline">Mnesia</code>·can·either·lock·the·entire·table·or·only·a
338 single·record·(when·the·key·is·bound·in·the·pattern).</p><h3·id="global-locks"·class="section-heading">338 single·record·(when·the·key·is·bound·in·the·pattern).</p><h3·id="global-locks"·class="section-heading">
339 ··<a·href="#global-locks"·class="hover-link">339 ··<a·href="#global-locks"·class="hover-link">
340 ····<i·class="ri-link-m"·aria-hidden="true"></i>340 ····<i·class="ri-link-m"·aria-hidden="true"></i>
341 ··</a>341 ··</a>
342 ··<span·class="text">Global·Locks</span>342 ··<span·class="text">Global·Locks</span>
343 </h3>343 </h3>
344 <p>Write·locks·are·normally·acquired·on·all·nodes·where·a·replica·of·the·table344 <p>Write·locks·are·normally·acquired·on·all·nodes·where·a·replica·of·the·table
Offset 421, 86 lines modifiedOffset 421, 86 lines modified
421 ··<span·class="text">Record·Names·versus·Table·Names</span>421 ··<span·class="text">Record·Names·versus·Table·Names</span>
422 </h2>422 </h2>
423 <p>In·<code·class="inline">Mnesia</code>,·all·records·in·a·table·must·have·the·same·name.·All·the·records423 <p>In·<code·class="inline">Mnesia</code>,·all·records·in·a·table·must·have·the·same·name.·All·the·records
424 must·be·instances·of·the·same·record·type.·The·record·name,·however,·does·not424 must·be·instances·of·the·same·record·type.·The·record·name,·however,·does·not
425 necessarily·have·to·be·the·same·as·the·table·name,·although·this·is·the·case·in425 necessarily·have·to·be·the·same·as·the·table·name,·although·this·is·the·case·in
426 most·of·the·examples·in·this·User's·Guide.·If·a·table·is·created·without426 most·of·the·examples·in·this·User's·Guide.·If·a·table·is·created·without
427 property·<code·class="inline">record_name</code>,·the·following·code·ensures·that·all·records·in·the427 property·<code·class="inline">record_name</code>,·the·following·code·ensures·that·all·records·in·the
428 tables·have·the·same·name·as·the·table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="4234127901-1">(</span><span·class="ss">subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4234127901-2">[</span><span·class="p"·data-group-id="4234127901-2">]</span><span·class="p"·data-group-id="4234127901-1">)</span></code></pre><p>However,·if·the·table·is·created·with·an·explicit·record·name·as·argument,·as428 tables·have·the·same·name·as·the·table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6637701400-1">(</span><span·class="ss">subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6637701400-2">[</span><span·class="p"·data-group-id="6637701400-2">]</span><span·class="p"·data-group-id="6637701400-1">)</span></code></pre><p>However,·if·the·table·is·created·with·an·explicit·record·name·as·argument,·as
429 shown·in·the·following·example,·subscriber·records·can·be·stored·in·both·of·the429 shown·in·the·following·example,·subscriber·records·can·be·stored·in·both·of·the
430 tables·regardless·of·the·table·names:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">TabDef</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3091303098-1">[</span><span·class="p"·data-group-id="3091303098-2">{</span><span·class="ss">record_name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">subscriber</span><span·class="p"·data-group-id="3091303098-2">}</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·7146d41b20ff856865c1e3a2e9ad9e7d0a440da26a8194c1d6646f0203dbd3a0·...·]-1">]</span><span·class="p">,</span><span·class="w">430 tables·regardless·of·the·table·names:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">TabDef</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3378033725-1">[</span><span·class="p"·data-group-id="3378033725-2">{</span><span·class="ss">record_name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">subscriber</span><span·class="p"·data-group-id="3378033725-2">}</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·a8394fe9599a75f13ef15947c15f53f9f372d34978f31ea310ae3d0cb235f8fb·...·]-1">]</span><span·class="p">,</span><span·class="w">
431 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="3091303098-3">(</span><span·class="ss">my_subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabDef</span><span·class="p"·data-group-id="3091303098-3">)</span><span·class="p">,</span><span·class="w">431 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="3378033725-3">(</span><span·class="ss">my_subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabDef</span><span·class="p"·data-group-id="3378033725-3">)</span><span·class="p">,</span><span·class="w">
432 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="3091303098-4">(</span><span·class="ss">your_subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabDef</span><span·class="p"·data-group-id="3091303098-4">)</span><span·class="p">.</span></code></pre><p>To·access·such·tables,·simplified·access·functions·(as·described·earlier)·cannot432 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="3378033725-4">(</span><span·class="ss">your_subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabDef</span><span·class="p"·data-group-id="3378033725-4">)</span><span·class="p">.</span></code></pre><p>To·access·such·tables,·simplified·access·functions·(as·described·earlier)·cannot
433 be·used.·For·example,·writing·a·subscriber·record·into·a·table·requires·the433 be·used.·For·example,·writing·a·subscriber·record·into·a·table·requires·the
434 function·<a·href="mnesia.html#write/3"><code·class="inline">mnesia:write/3</code></a>·instead·of·the·simplified·functions·<a·href="mnesia.html#write/1"><code·class="inline">mnesia:write/1</code></a>434 function·<a·href="mnesia.html#write/3"><code·class="inline">mnesia:write/3</code></a>·instead·of·the·simplified·functions·<a·href="mnesia.html#write/1"><code·class="inline">mnesia:write/1</code></a>
435 and·<a·href="mnesia.html#s_write/1"><code·class="inline">mnesia:s_write/1</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="9569119513-1">(</span><span·class="ss">subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">subscriber</span><span·class="p"·data-group-id="9569119513-2">{</span><span·class="p"·data-group-id="9569119513[·...·truncated·by·diffoscope;·len:·130,·SHA:·8a257bd5530a7616d6de8397328a7d9802d3f262cb81d7e7fbfcfede32595abe·...·]-1">)</span><span·class="w">435 and·<a·href="mnesia.html#s_write/1"><code·class="inline">mnesia:s_write/1</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="2404949905-1">(</span><span·class="ss">subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">subscriber</span><span·class="p"·data-group-id="2404949905-2">{</span><span·class="p"·data-group-id="2404949905[·...·truncated·by·diffoscope;·len:·130,·SHA:·344124056bb6b930ecce9b9e78d3071df4c6b3bbae6e8480c8494d6030b5e17b·...·]-1">)</span><span·class="w">
436 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="9569119513-3">(</span><span·class="ss">my_subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">subscriber</span><span·class="p"·data-group-id="9569119513-4">{</span><span·class="p"·data-group-id="9569119[·...·truncated·by·diffoscope;·len:·140,·SHA:·cc85ed5dd33e2a90c29f87122f32cf1fbd73ed004a4c03c698b2242c598f09df·...·]-3">)</span><span·class="w">436 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="2404949905-3">(</span><span·class="ss">my_subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">subscriber</span><span·class="p"·data-group-id="2404949905-4">{</span><span·class="p"·data-group-id="2404949[·...·truncated·by·diffoscope;·len:·140,·SHA:·4a6c2b119e7b713b490754c53ebb402d86ef3c411a5378e68a6d16cc98fbb5bb·...·]-3">)</span><span·class="w">
437 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="9569119513-5">(</span><span·class="ss">your_subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">subscriber</span><span·class="p"·data-group-id="9569119513-6">{</span><span·class="p"·data-group-id="95691[·...·truncated·by·diffoscope;·len:·135,·SHA:·ab0f99acf2ad9228d6005e237ea6a2f7f82896c1aa4ecb09cc228feb96b98fd6·...·]-5">)</span></code></pre><p>The·following·simple·code·illustrates·the·relationship·between·the·simplified437 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="2404949905-5">(</span><span·class="ss">your_subscriber</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">subscriber</span><span·class="p"·data-group-id="2404949905-6">{</span><span·class="p"·data-group-id="24049[·...·truncated·by·diffoscope;·len:·135,·SHA:·906b20e3043bb7601dd4c0be801c916c17c40b54d316da9e587d58e81614def3·...·]-5">)</span></code></pre><p>The·following·simple·code·illustrates·the·relationship·between·the·simplified
438 access·functions·used·in·most·of·the·examples·and·their·more·flexible438 access·functions·used·in·most·of·the·examples·and·their·more·flexible
439 counterparts:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_write</span><span·class="p"·data-group-id="1872697587-1">(</span><span·class="n">Record</span><span·class="p"·data-group-id="1872697587-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">439 counterparts:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_write</span><span·class="p"·data-group-id="8460689241-1">(</span><span·class="n">Record</span><span·class="p"·data-group-id="8460689241-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
440 ··</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="1872697587-2">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="1872697587-2">)</span><span·class="p">,</span><span·class="w">440 ··</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="8460689241-2">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="8460689241-2">)</span><span·class="p">,</span><span·class="w">
441 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_write</span><span·class="p"·data-group-id="1872697587-3">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="1872697587-3">)</span><span·class="p">.</span><span·class="w">441 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_write</span><span·class="p"·data-group-id="8460689241-3">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="8460689241-3">)</span><span·class="p">.</span><span·class="w">
  
442 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_delete</span><span·class="p"·data-group-id="1872697587-4">(</span><span·class="p"·data-group-id="1872697587-5">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1872697587-5">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·bfe78cd9224e65ed1a888d8033c05234ec936fbb8e9a127aa9b4dd25314d30f8·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">442 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_delete</span><span·class="p"·data-group-id="8460689241-4">(</span><span·class="p"·data-group-id="8460689241-5">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="8460689241-5">}</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·b54b90da7125ebd49963a73f6f49ae4afe6d5490fc999603786f309e3db33b02·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
443 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_delete</span><span·class="p"·data-group-id="1872697587-6">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1872697587-6">)</span><span·class="p">.</span><span·class="w">443 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_delete</span><span·class="p"·data-group-id="8460689241-6">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="8460689241-6">)</span><span·class="p">.</span><span·class="w">
  
444 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_delete_object</span><span·class="p"·data-group-id="1872697587-7">(</span><span·class="n">Record</span><span·class="p"·data-group-id="1872697587-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">444 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_delete_object</span><span·class="p"·data-group-id="8460689241-7">(</span><span·class="n">Record</span><span·class="p"·data-group-id="8460689241-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
445 ··</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="1872697587-8">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="1872697587-8">)</span><span·class="p">,</span><span·class="w">445 ··</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="8460689241-8">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="8460689241-8">)</span><span·class="p">,</span><span·class="w">
446 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_delete_object</span><span·class="p"·data-group-id="1872697587-9">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="1872697587-9">)</span><span·class="w">446 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_delete_object</span><span·class="p"·data-group-id="8460689241-9">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="8460689241-9">)</span><span·class="w">
  
447 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_update_counter</span><span·class="p"·data-group-id="1872697587-10">(</span><span·class="p"·data-group-id="1872697587-11">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1872697587-11">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·91,·SHA:·ac7e9cf71cc72658c05646996003289c83d1eeb030030669d7aff49cbee9e0a1·...·]-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">447 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_update_counter</span><span·class="p"·data-group-id="8460689241-10">(</span><span·class="p"·data-group-id="8460689241-11">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="8460689241-11">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·91,·SHA:·95ceb369de5a5d1cf864f9fea0391121b31bab456d74d229404d10debe8cc702·...·]-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
448 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_update_counter</span><span·class="p"·data-group-id="1872697587-12">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Incr</span><span·class="p"·data-group-id="1872697587-12">)</span><span·class="p">.</span><span·class="w">448 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_update_counter</span><span·class="p"·data-group-id="8460689241-12">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Incr</span><span·class="p"·data-group-id="8460689241-12">)</span><span·class="p">.</span><span·class="w">
  
449 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_read</span><span·class="p"·data-group-id="1872697587-13">(</span><span·class="p"·data-group-id="1872697587-14">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1872697587-14">}</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·6674588a2308cf7b26c67ffe30e898bda570c4120b2a703c809b720d9f612737·...·]-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">449 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_read</span><span·class="p"·data-group-id="8460689241-13">(</span><span·class="p"·data-group-id="8460689241-14">{</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="8460689241-14">}</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·fc0d1789f8eeb7094fe29c6a9f0cd002e2d7afe555595e1e4ae1647b4082ef37·...·]-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
450 ··</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="1872697587-15">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="1872697587-15">)</span><span·class="p">,</span><span·class="w">450 ··</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="8460689241-15">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Record</span><span·class="p"·data-group-id="8460689241-15">)</span><span·class="p">,</span><span·class="w">
451 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_read</span><span·class="p"·data-group-id="1872697587-16">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="1872697587-16">)</span><span·class="p">.</span><span·class="w">451 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_read</span><span·class="p"·data-group-id="8460689241-16">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Key</span><span·class="p"·data-group-id="8460689241-16">)</span><span·class="p">.</span><span·class="w">
  
452 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_match_object</span><span·class="p"·data-group-id="1872697587-17">(</span><span·class="n">Pattern</span><span·class="p"·data-group-id="1872697587-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">452 </span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_match_object</span><span·class="p"·data-group-id="8460689241-17">(</span><span·class="n">Pattern</span><span·class="p"·data-group-id="8460689241-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
453 ··</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="1872697587-18">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pattern</span><span·class="p"·data-group-id="1872697587-18">)</span><span·class="p">,</span><span·class="w">453 ··</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">element</span><span·class="p"·data-group-id="8460689241-18">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pattern</span><span·class="p"·data-group-id="8460689241-18">)</span><span·class="p">,</span><span·class="w">
454 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_match_object</span><span·class="p"·data-group-id="1872697587-19">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pattern</span><span·class="p"·data-group-id="1872697587-19">)</span><span·class="p">.</span><span·class="w">454 ··</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">dirty_match_object</span><span·class="p"·data-group-id="8460689241-19">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pattern</span><span·class="p"·data-group-id="8460689241-19">)</span><span·class="p">.</span><span·class="w">
  
Max diff block lines reached; 95651/144819 bytes (66.05%) of diff not shown.
946 B
html2text {}
Max HTML report size reached
148 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_chap5.html
    
Offset 163, 17 lines modifiedOffset 163, 17 lines modified
163 different·Erlang·nodes·in·various·ways.·The·<code·class="inline">Mnesia</code>·programmer·does·not·need·to163 different·Erlang·nodes·in·various·ways.·The·<code·class="inline">Mnesia</code>·programmer·does·not·need·to
164 state·where·the·different·tables·reside,·only·the·names·of·the·different·tables164 state·where·the·different·tables·reside,·only·the·names·of·the·different·tables
165 need·to·be·specified·in·the·program·code.·This·is·known·as·&quot;location165 need·to·be·specified·in·the·program·code.·This·is·known·as·&quot;location
166 transparency&quot;·and·is·an·important·concept.·In·particular:</p><ul><li><p>A·program·works·regardless·of·the·data·location.·It·makes·no·difference166 transparency&quot;·and·is·an·important·concept.·In·particular:</p><ul><li><p>A·program·works·regardless·of·the·data·location.·It·makes·no·difference
167 whether·the·data·resides·on·the·local·node·or·on·a·remote·node.</p><p>Notice·that·the·program·runs·slower·if·the·data·is·located·on·a·remote·node.</p></li><li><p>The·database·can·be·reconfigured,·and·tables·can·be·moved·between·nodes.·These167 whether·the·data·resides·on·the·local·node·or·on·a·remote·node.</p><p>Notice·that·the·program·runs·slower·if·the·data·is·located·on·a·remote·node.</p></li><li><p>The·database·can·be·reconfigured,·and·tables·can·be·moved·between·nodes.·These
168 operations·do·not·affect·the·user·programs.</p></li></ul><p>It·has·previously·been·shown·that·each·table·has·a·number·of·system·attributes,168 operations·do·not·affect·the·user·programs.</p></li></ul><p>It·has·previously·been·shown·that·each·table·has·a·number·of·system·attributes,
169 such·as·<code·class="inline">index</code>·and·<code·class="inline">type</code>.</p><p>Table·attributes·are·specified·when·the·table·is·created.·For·example,·the169 such·as·<code·class="inline">index</code>·and·<code·class="inline">type</code>.</p><p>Table·attributes·are·specified·when·the·table·is·created.·For·example,·the
170 following·function·creates·a·table·with·two·RAM·replicas:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="8779144298-1">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">170 following·function·creates·a·table·with·two·RAM·replicas:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="0116133359-1">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">
171 ····················</span><span·class="p"·data-group-id="8779144298-2">[</span><span·class="p"·data-group-id="8779144298-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8779144298-4">[</span><span·class="n">N1</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·146,·SHA:·3af59e4511a651b9964cb165433fe6b9f10b7383f6b021d8e6ec14b8f71be28e·...·]-3">}</span><span·class="p">,</span><span·class="w">171 ····················</span><span·class="p"·data-group-id="0116133359-2">[</span><span·class="p"·data-group-id="0116133359-3">{</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0116133359-4">[</span><span·class="n">N1</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·146,·SHA:·bb5a86a88aa01935f82ebc27e2d163d49a0259d572107a047d9f62b2c2733520·...·]-3">}</span><span·class="p">,</span><span·class="w">
172 ·····················</span><span·class="p"·data-group-id="8779144298-5">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="8779144298-6">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·241,·SHA:·1ae072871351b7643f124c5cf7a78889addcc638c1786ff33b7851882ea13323·...·]-1">)</span><span·class="p">.</span></code></pre><p>Tables·can·also·have·the·following·properties,·where·each·attribute·has·a·list172 ·····················</span><span·class="p"·data-group-id="0116133359-5">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">record_info</span><span·class="p"·data-group-id="0116133359-6">(</span><span·class="ss">fields</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·241,·SHA:·2d600918b7f95993f57e839f9664f931c571b3ede29101c4ef30d842dafe2c05·...·]-1">)</span><span·class="p">.</span></code></pre><p>Tables·can·also·have·the·following·properties,·where·each·attribute·has·a·list
173 of·Erlang·nodes·as·its·value:</p><ul><li><p><code·class="inline">ram_copies</code>.·The·value·of·the·node·list·is·a·list·of·Erlang·nodes,·and·a·RAM173 of·Erlang·nodes·as·its·value:</p><ul><li><p><code·class="inline">ram_copies</code>.·The·value·of·the·node·list·is·a·list·of·Erlang·nodes,·and·a·RAM
174 replica·of·the·table·resides·on·each·node·in·the·list.</p><p>Notice·that·no·disc·operations·are·performed·when·a·program·executes·write174 replica·of·the·table·resides·on·each·node·in·the·list.</p><p>Notice·that·no·disc·operations·are·performed·when·a·program·executes·write
175 operations·to·these·replicas.·However,·if·permanent·RAM·replicas·are·required,175 operations·to·these·replicas.·However,·if·permanent·RAM·replicas·are·required,
176 the·following·alternatives·are·available:</p><ol><li>The·function·<a·href="mnesia.html#dump_tables/1"><code·class="inline">mnesia:dump_tables/1</code></a>·can·be·used·to·dump·RAM·table·replicas176 the·following·alternatives·are·available:</p><ol><li>The·function·<a·href="mnesia.html#dump_tables/1"><code·class="inline">mnesia:dump_tables/1</code></a>·can·be·used·to·dump·RAM·table·replicas
177 to·disc.</li><li>The·table·replicas·can·be·backed·up,·either·from·RAM,·or·from·disc·if177 to·disc.</li><li>The·table·replicas·can·be·backed·up,·either·from·RAM,·or·from·disc·if
178 dumped·there·with·this·function.</li></ol></li><li><p><code·class="inline">disc_copies</code>.·The·value·of·the·attribute·is·a·list·of·Erlang·nodes,·and·a178 dumped·there·with·this·function.</li></ol></li><li><p><code·class="inline">disc_copies</code>.·The·value·of·the·attribute·is·a·list·of·Erlang·nodes,·and·a
179 replica·of·the·table·resides·both·in·RAM·and·on·disc·on·each·node·in·the·list.179 replica·of·the·table·resides·both·in·RAM·and·on·disc·on·each·node·in·the·list.
Offset 218, 60 lines modifiedOffset 218, 60 lines modified
218 <code·class="inline">mnesia_frag</code>·can·be·used·as·a·<code·class="inline">mnesia_access</code>·callback·module.</p><p>At·each·record·access,·<code·class="inline">mnesia_frag</code>·first·computes·a·hash·value·from·the·record218 <code·class="inline">mnesia_frag</code>·can·be·used·as·a·<code·class="inline">mnesia_access</code>·callback·module.</p><p>At·each·record·access,·<code·class="inline">mnesia_frag</code>·first·computes·a·hash·value·from·the·record
219 key.·Second,·the·name·of·the·table·fragment·is·determined·from·the·hash·value.219 key.·Second,·the·name·of·the·table·fragment·is·determined·from·the·hash·value.
220 Finally·the·actual·table·access·is·performed·by·the·same·functions·as·for220 Finally·the·actual·table·access·is·performed·by·the·same·functions·as·for
221 non-fragmented·tables.·When·the·key·is·not·known·beforehand,·all·fragments·are221 non-fragmented·tables.·When·the·key·is·not·known·beforehand,·all·fragments·are
222 searched·for·matching·records.</p><p>Notice·that·in·<code·class="inline">ordered_set</code>·tables,·the·records·are·ordered·per·fragment,·and222 searched·for·matching·records.</p><p>Notice·that·in·<code·class="inline">ordered_set</code>·tables,·the·records·are·ordered·per·fragment,·and
223 the·order·is·undefined·in·results·returned·by·<code·class="inline">select</code>·and·<code·class="inline">match_object</code>,·as223 the·order·is·undefined·in·results·returned·by·<code·class="inline">select</code>·and·<code·class="inline">match_object</code>,·as
224 well·as·<code·class="inline">first</code>,·<code·class="inline">next</code>,·<code·class="inline">prev</code>·and·<code·class="inline">last</code>.</p><p>The·following·code·illustrates·how·a·<code·class="inline">Mnesia</code>·table·is·converted·to·be·a224 well·as·<code·class="inline">first</code>,·<code·class="inline">next</code>,·<code·class="inline">prev</code>·and·<code·class="inline">last</code>.</p><p>The·following·code·illustrates·how·a·<code·class="inline">Mnesia</code>·table·is·converted·to·be·a
225 fragmented·table·and·how·more·fragments·are·added·later:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V4</span><span·class="p">.</span><span·class="mf">7.3</span><span·class="p">.</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="9726199120-1">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="9726199120-1">)</span><span·class="gp·unselectable">225 fragmented·table·and·how·more·fragments·are·added·later:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V4</span><span·class="p">.</span><span·class="mf">7.3</span><span·class="p">.</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="6713585447-1">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="6713585447-1">)</span><span·class="gp·unselectable">
226 (a@sam)1&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="9726199120-2">(</span><span·class="p"·data-group-id="9726199120-2">)</span><span·class="p">.</span><span·class="w">226 (a@sam)1&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="6713585447-2">(</span><span·class="p"·data-group-id="6713585447-2">)</span><span·class="p">.</span><span·class="w">
227 </span><span·class="nf">ok</span><span·class="w">227 </span><span·class="nf">ok</span><span·class="w">
228 </span><span·class="p"·data-group-id="9726199120-3">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="9726199120-3">)</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">syste[·...·truncated·by·diffoscope;·len:·147,·SHA:·10f6b02cc79f02ad8d441928766feff3547844ce64797996de51152c8c8a0404·...·]-4">)</span><span·class="p">.</span><span·class="w">228 </span><span·class="p"·data-group-id="6713585447-3">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="6713585447-3">)</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">syste[·...·truncated·by·diffoscope;·len:·147,·SHA:·8626df124a3e8fe48b55bb8ee1b63f78e45ff28c8446cf1c979212a94dbd570e·...·]-4">)</span><span·class="p">.</span><span·class="w">
229 </span><span·class="p"·data-group-id="9726199120-5">[</span><span·class="ss">b@sam</span><span·class="p">,</span><span·class="ss">c@sam</span><span·class="p">,</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="9726199120-5">]</span><span·class="gp·unselectable">229 </span><span·class="p"·data-group-id="6713585447-5">[</span><span·class="ss">b@sam</span><span·class="p">,</span><span·class="ss">c@sam</span><span·class="p">,</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="6713585447-5">]</span><span·class="gp·unselectable">
230 (a@sam)3&gt;·</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">dictionary</span><span·class="p">.</span><span·class="w">230 (a@sam)3&gt;·</span><span·class="n">Tab</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">dictionary</span><span·class="p">.</span><span·class="w">
231 </span><span·class="nf">dictionary</span><span·class="w">231 </span><span·class="nf">dictionary</span><span·class="w">
232 </span><span·class="p"·data-group-id="9726199120-6">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="9726199120-6">)</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">creat[·...·truncated·by·diffoscope;·len:·690,·SHA:·db21580fe428cbd97d5aa62fbcc294bb76a79b9c0b4c977acff529458d29c41a·...·]-7">)</span><span·class="p">.</span><span·class="w">232 </span><span·class="p"·data-group-id="6713585447-6">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="6713585447-6">)</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">creat[·...·truncated·by·diffoscope;·len:·690,·SHA:·f8a3c68d815e90ba71c71df3415689a4b96a2350d8594428fe2676eabf7eab65·...·]-7">)</span><span·class="p">.</span><span·class="w">
233 </span><span·class="p"·data-group-id="9726199120-11">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="9726199120-11">}</span><span·class="gp·unselectable">233 </span><span·class="p"·data-group-id="6713585447-11">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6713585447-11">}</span><span·class="gp·unselectable">
234 (a@sam)5&gt;·</span><span·class="n">Write</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="9726199120-12">(</span><span·class="n">Keys</span><span·class="p"·data-group-id="9726199120-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-13">[</span><span·class="nc">mnesi[·...·truncated·by·diffoscope;·len:·664,·SHA:·bf746acfd9dbcb069703c2403de148eee4a8164a37bf9cbf6f0d60e47d500ea3·...·]-13">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">234 (a@sam)5&gt;·</span><span·class="n">Write</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="6713585447-12">(</span><span·class="n">Keys</span><span·class="p"·data-group-id="6713585447-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-13">[</span><span·class="nc">mnesi[·...·truncated·by·diffoscope;·len:·664,·SHA:·9e3ceae9e7b2f35483796016d1d7377c140e531a0f7fb810e1048d7af44392e7·...·]-13">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
235 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">235 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">
236 (a@sam)6&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="9726199120-16">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Write</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-17">[</span><span·class="nc">list[·...·truncated·by·diffoscope;·len:·445,·SHA:·28691ee49bd48b181e09966ecc1dfb8f3ab985a3395daedbd9118348d27a3c48·...·]-16">)</span><span·class="p">.</span><span·class="w">236 (a@sam)6&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="6713585447-16">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Write</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-17">[</span><span·class="nc">list[·...·truncated·by·diffoscope;·len:·445,·SHA:·4b1b5fbc83a80a0e4d521f9ccc58c81dc4c38ad889132aac5b9c9b17095cf3b0·...·]-16">)</span><span·class="p">.</span><span·class="w">
237 </span><span·class="nf">ok</span><span·class="w">237 </span><span·class="nf">ok</span><span·class="w">
238 </span><span·class="p"·data-group-id="9726199120-19">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="9726199120-19">)</span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">cha[·...·truncated·by·diffoscope;·len:·486,·SHA:·3920e1ed7c364b8fe8b8659526c471528d4e0101a644aebf8218e49d81e70b7c·...·]-20">)</span><span·class="p">.</span><span·class="w">238 </span><span·class="p"·data-group-id="6713585447-19">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="6713585447-19">)</span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">cha[·...·truncated·by·diffoscope;·len:·486,·SHA:·8bc04b431207157952c3b56608102a5448b776ec9be6788c1bf2720bca3c3c1a·...·]-20">)</span><span·class="p">.</span><span·class="w">
239 </span><span·class="p"·data-group-id="9726199120-23">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="9726199120-23">}</span><span·class="gp·unselectable">239 </span><span·class="p"·data-group-id="6713585447-23">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6713585447-23">}</span><span·class="gp·unselectable">
240 (a@sam)8&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">table_info</span><span·class="p"·data-group-id="9726199120-24">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">frag_properties</span><span·class="p"·data-group-id="9726199120-24">)</span><span·class="p">.</span><span·class="w">240 (a@sam)8&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">table_info</span><span·class="p"·data-group-id="6713585447-24">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">frag_properties</span><span·class="p"·data-group-id="6713585447-24">)</span><span·class="p">.</span><span·class="w">
241 </span><span·class="p"·data-group-id="9726199120-25">[</span><span·class="p"·data-group-id="9726199120-26">{</span><span·class="ss">base_table</span><span·class="p">,</span><span·class="ss">dictionary</span><span·class="p"·data-group-id="9726199120-26">}</span><span·class="p">,</span><span·class="w">241 </span><span·class="p"·data-group-id="6713585447-25">[</span><span·class="p"·data-group-id="6713585447-26">{</span><span·class="ss">base_table</span><span·class="p">,</span><span·class="ss">dictionary</span><span·class="p"·data-group-id="6713585447-26">}</span><span·class="p">,</span><span·class="w">
242 ·</span><span·class="p"·data-group-id="9726199120-27">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="9726199120-27">}</span><span·class="p">,</span><span·class="w">242 ·</span><span·class="p"·data-group-id="6713585447-27">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="6713585447-27">}</span><span·class="p">,</span><span·class="w">
243 ·</span><span·class="p"·data-group-id="9726199120-28">{</span><span·class="ss">n_doubles</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="9726199120-28">}</span><span·class="p">,</span><span·class="w">243 ·</span><span·class="p"·data-group-id="6713585447-28">{</span><span·class="ss">n_doubles</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="6713585447-28">}</span><span·class="p">,</span><span·class="w">
244 ·</span><span·class="p"·data-group-id="9726199120-29">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9726199120-29">}</span><span·class="p">,</span><span·class="w">244 ·</span><span·class="p"·data-group-id="6713585447-29">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6713585447-29">}</span><span·class="p">,</span><span·class="w">
245 ·</span><span·class="p"·data-group-id="9726199120-30">{</span><span·class="ss">next_n_to_split</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9726199120-30">}</span><span·class="p">,</span><span·class="w">245 ·</span><span·class="p"·data-group-id="6713585447-30">{</span><span·class="ss">next_n_to_split</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6713585447-30">}</span><span·class="p">,</span><span·class="w">
246 ·</span><span·class="p"·data-group-id="9726199120-31">{</span><span·class="ss">node_pool</span><span·class="p">,</span><span·class="p"·data-group-id="9726199120-32">[</span><span·class="ss">a@sam</span><span·class="p">,</span><span·class="ss">b@sam</span><span·class="p">,</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·162,·SHA:·f3770b0a3793bc272cdba5561710788bba90fec240b7f299051bb6ec5aee7746·...·]-25">]</span><span·class="gp·unselectable">246 ·</span><span·class="p"·data-group-id="6713585447-31">{</span><span·class="ss">node_pool</span><span·class="p">,</span><span·class="p"·data-group-id="6713585447-32">[</span><span·class="ss">a@sam</span><span·class="p">,</span><span·class="ss">b@sam</span><span·class="p">,</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·162,·SHA:·494a6d1260dddf343496a5554e73fcc4a62242145c6385dce66c5549ae493201·...·]-25">]</span><span·class="gp·unselectable">
247 (a@sam)9&gt;·</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="9726199120-33">(</span><span·class="n">Item</span><span·class="p"·data-group-id="9726199120-33">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">table[·...·truncated·by·diffoscope;·len:·208,·SHA:·bd2bc74b564ae54325ab6483fc0d4119e2e36c190e252125d5c405342890b82e·...·]-34">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">247 (a@sam)9&gt;·</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="6713585447-33">(</span><span·class="n">Item</span><span·class="p"·data-group-id="6713585447-33">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">table[·...·truncated·by·diffoscope;·len:·208,·SHA:·d96d2a32f2aa49706b4195de1a90ea6263b6898499f6aa74a7bfef3240cdc217·...·]-34">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
248 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">248 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">
249 (a@sam)10&gt;·</span><span·class="n">Dist</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="9726199120-35">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-36">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·16c0b834b86a4983c5d01d7d876d59b2c27375071f9d4ebc9fdbc6d64633c636·...·]-35">)</span><span·class="p">.</span><span·class="w">249 (a@sam)10&gt;·</span><span·class="n">Dist</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="6713585447-35">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-36">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·4f84142293af3d03d823a0391feb793d5bbf0beac4759d6a95cd19c2e7870a40·...·]-35">)</span><span·class="p">.</span><span·class="w">
250 </span><span·class="p"·data-group-id="9726199120-37">[</span><span·class="p"·data-group-id="9726199120-38">{</span><span·class="ss">c@sam</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="9726199120-38">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·d797f2398f37ce244d9b608c946c237256a75d332dcf67199416b72a5483bc1d·...·]-37">]</span><span·class="gp·unselectable">250 </span><span·class="p"·data-group-id="6713585447-37">[</span><span·class="p"·data-group-id="6713585447-38">{</span><span·class="ss">c@sam</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="6713585447-38">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·68f0a150c48aead162b0ef144daca63abc4d65b5ad0abcef097dc700d234c7ef·...·]-37">]</span><span·class="gp·unselectable">
251 (a@sam)11&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">change_table_frag</span><span·class="p"·data-group-id="9726199120-41">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-42">{</span><span·class="ss">add_frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dist</spa[·...·truncated·by·diffoscope;·len:·97,·SHA:·64384982265abe06c03e61ff96fe1c3cee00354c677129e679fd0eb9ef08569d·...·]-41">)</span><span·class="p">.</span><span·class="w">251 (a@sam)11&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">change_table_frag</span><span·class="p"·data-group-id="6713585447-41">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-42">{</span><span·class="ss">add_frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dist</spa[·...·truncated·by·diffoscope;·len:·97,·SHA:·5f7b2e7e720422b8c51d1b957a3b86b9af59e785d83612b94f762899dd5df4a5·...·]-41">)</span><span·class="p">.</span><span·class="w">
252 </span><span·class="p"·data-group-id="9726199120-43">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="9726199120-43">}</span><span·class="gp·unselectable">252 </span><span·class="p"·data-group-id="6713585447-43">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6713585447-43">}</span><span·class="gp·unselectable">
253 (a@sam)12&gt;·</span><span·class="n">Dist2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="9726199120-44">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-45">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·3eae9305b6ec104fa75402b8f331241ad58c99e54ac6726a86e9be3edd584f36·...·]-44">)</span><span·class="p">.</span><span·class="w">253 (a@sam)12&gt;·</span><span·class="n">Dist2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="6713585447-44">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-45">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·9afd95c34e7a76318a3820ec63406251b49445f2273b5d1032b48d1875bc5158·...·]-44">)</span><span·class="p">.</span><span·class="w">
254 </span><span·class="p"·data-group-id="9726199120-46">[</span><span·class="p"·data-group-id="9726199120-47">{</span><span·class="ss">b@sam</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9726199120-47">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·1f37043db706f87c2677694d47648b831fb1dbb46cdb45c56f735624147bccd5·...·]-46">]</span><span·class="gp·unselectable">254 </span><span·class="p"·data-group-id="6713585447-46">[</span><span·class="p"·data-group-id="6713585447-47">{</span><span·class="ss">b@sam</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6713585447-47">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·bda4ae639eb5441a9332fa1a17f8f61e07d0bf00328fdc6cc7863943c95ed15d·...·]-46">]</span><span·class="gp·unselectable">
255 (a@sam)13&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">change_table_frag</span><span·class="p"·data-group-id="9726199120-50">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-51">{</span><span·class="ss">add_frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dist2</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·cba5f652c30de1c740cdb734feac9c5bb1f93106cace9d9845b270eb8e41c84a·...·]-50">)</span><span·class="p">.</span><span·class="w">255 (a@sam)13&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">change_table_frag</span><span·class="p"·data-group-id="6713585447-50">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-51">{</span><span·class="ss">add_frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dist2</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·e1134b82892c1f41d2ecb2b9004a65b642b49e349bb390fe14810412a4bceaf7·...·]-50">)</span><span·class="p">.</span><span·class="w">
256 </span><span·class="p"·data-group-id="9726199120-52">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="9726199120-52">}</span><span·class="gp·unselectable">256 </span><span·class="p"·data-group-id="6713585447-52">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6713585447-52">}</span><span·class="gp·unselectable">
257 (a@sam)14&gt;·</span><span·class="n">Dist3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="9726199120-53">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-54">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·be0fbc9559ad35a092a7235afe24dce8b110605bf73b6c01f69430559cb04eb6·...·]-53">)</span><span·class="p">.</span><span·class="w">257 (a@sam)14&gt;·</span><span·class="n">Dist3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="6713585447-53">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-54">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·9ec456bb7bfcd51c087d1230d18f47f90702d8f5b801752be9567d638df6c9b7·...·]-53">)</span><span·class="p">.</span><span·class="w">
258 </span><span·class="p"·data-group-id="9726199120-55">[</span><span·class="p"·data-group-id="9726199120-56">{</span><span·class="ss">a@sam</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="9726199120-56">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·84aa7c52af896098f0296bb9a90540f127c028b6892187af93bf386d1b2e664f·...·]-55">]</span><span·class="gp·unselectable">258 </span><span·class="p"·data-group-id="6713585447-55">[</span><span·class="p"·data-group-id="6713585447-56">{</span><span·class="ss">a@sam</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="6713585447-56">}</span><span·class="p">,</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·414,·SHA:·70375d719fa4aafc911a5ce737ac45e0c07e006cf15b9340fc40645398e1d9c3·...·]-55">]</span><span·class="gp·unselectable">
259 (a@sam)15&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">change_table_frag</span><span·class="p"·data-group-id="9726199120-59">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-60">{</span><span·class="ss">add_frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dist3</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·50fbadb795ed28b7d353ab889dc52987023ac8edda0f5d6751137780ac1560e5·...·]-59">)</span><span·class="p">.</span><span·class="w">259 (a@sam)15&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">change_table_frag</span><span·class="p"·data-group-id="6713585447-59">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-60">{</span><span·class="ss">add_frag</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dist3</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·25b22b7646cb349f9b7c3acaecc9c5fe0a747afc49c32e91ce0a33eef439b211·...·]-59">)</span><span·class="p">.</span><span·class="w">
260 </span><span·class="p"·data-group-id="9726199120-61">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="9726199120-61">}</span><span·class="gp·unselectable">260 </span><span·class="p"·data-group-id="6713585447-61">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6713585447-61">}</span><span·class="gp·unselectable">
261 (a@sam)16&gt;·</span><span·class="n">Read</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="9726199120-62">(</span><span·class="n">Key</span><span·class="p"·data-group-id="9726199120-62">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</[·...·truncated·by·diffoscope;·len:·308,·SHA:·c0e4f68139a714ccce66331e4a7d530f950b29fcfce257b8a69b31a4cf6adfc5·...·]-63">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">261 (a@sam)16&gt;·</span><span·class="n">Read</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="6713585447-62">(</span><span·class="n">Key</span><span·class="p"·data-group-id="6713585447-62">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</[·...·truncated·by·diffoscope;·len:·308,·SHA:·ed3c4a1799c1ccb9e48f74dc98f99b31d5505493666906bfd4326b0be8610ac0·...·]-63">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
262 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">262 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">
263 (a@sam)17&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="9726199120-65">(</span><span·class="ss">transaction</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Read</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-66">[</span><span·class="mi">12</[·...·truncated·by·diffoscope;·len:·183,·SHA:·aeba179199add14280dbb2b069dbe8e6337a38976d3eb2aef1e284910422f945·...·]-65">)</span><span·class="p">.</span><span·class="w">263 (a@sam)17&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="6713585447-65">(</span><span·class="ss">transaction</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Read</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-66">[</span><span·class="mi">12</[·...·truncated·by·diffoscope;·len:·183,·SHA:·18b325ce95a1699bbc3156cc432e5ee2c01c19a183aaf9e401b285dfe7671042·...·]-65">)</span><span·class="p">.</span><span·class="w">
264 </span><span·class="p"·data-group-id="9726199120-67">[</span><span·class="p"·data-group-id="9726199120-68">{</span><span·class="ss">dictionary</span><span·class="p">,</span><span·class="mi">12</span><span·class="p">,</span><span·class="o">-</span><span·class="mi">12</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·74,·SHA:·b26608adb3a78d11f2dbed6465e24603c7703d61cb56264381db095fb02cce3c·...·]-67">]</span><span·class="gp·unselectable">264 </span><span·class="p"·data-group-id="6713585447-67">[</span><span·class="p"·data-group-id="6713585447-68">{</span><span·class="ss">dictionary</span><span·class="p">,</span><span·class="mi">12</span><span·class="p">,</span><span·class="o">-</span><span·class="mi">12</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·74,·SHA:·3702f018afabe21ef686da5bc24e9add6562e1f96c62c304a52c48f7e8e3da71·...·]-67">]</span><span·class="gp·unselectable">
265 (a@sam)18&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="9726199120-69">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9726199120-70">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·0b2cb5bfbe22d93aae4a4949ad33c69da258d0628742093a5be1462d77728bca·...·]-69">)</span><span·class="p">.</span><span·class="w">265 (a@sam)18&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="6713585447-69">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6713585447-70">[</span><span·class="ss">frag_[·...·truncated·by·diffoscope;·len:·189,·SHA:·da407656eed93ac99b0149df800b2e2c2b61d01babf3b6a7f1d36a0410fa6561·...·]-69">)</span><span·class="p">.</span><span·class="w">
266 </span><span·class="p"·data-group-id="9726199120-71">[</span><span·class="p"·data-group-id="9726199120-72">{</span><span·class="ss">dictionary</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="9726199120-72">}</span><span·class="p">,</span><span·class="w">266 </span><span·class="p"·data-group-id="6713585447-71">[</span><span·class="p"·data-group-id="6713585447-72">{</span><span·class="ss">dictionary</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="6713585447-72">}</span><span·class="p">,</span><span·class="w">
267 ·</span><span·class="p"·data-group-id="9726199120-73">{</span><span·class="ss">dictionary_frag2</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="9726199120-73">}</span><span·class="p">,</span><span·class="w">267 ·</span><span·class="p"·data-group-id="6713585447-73">{</span><span·class="ss">dictionary_frag2</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="6713585447-73">}</span><span·class="p">,</span><span·class="w">
268 ·</span><span·class="p"·data-group-id="9726199120-74">{</span><span·class="ss">dictionary_frag3</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="9726199120-74">}</span><span·class="p">,</span><span·class="w">268 ·</span><span·class="p"·data-group-id="6713585447-74">{</span><span·class="ss">dictionary_frag3</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="6713585447-74">}</span><span·class="p">,</span><span·class="w">
269 ·</span><span·class="p"·data-group-id="9726199120-75">{</span><span·class="ss">dictionary_frag4</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="9726199120-75">}</span><span·class="p"·data-group-id="9726199120-71">]</span><span·class="w">269 ·</span><span·class="p"·data-group-id="6713585447-75">{</span><span·class="ss">dictionary_frag4</span><span·class="p">,</span><span·class="mi">64</span><span·class="p"·data-group-id="6713585447-75">}</span><span·class="p"·data-group-id="6713585447-71">]</span><span·class="w">
270 </span><span·class="p"·data-group-id="9726199120-76">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="9726199120-76">)</span><span·class="mi">19</span><span·class="o">&gt;</span></code></pre><h3·id="fragmentation-properties"·class="section-heading">270 </span><span·class="p"·data-group-id="6713585447-76">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="6713585447-76">)</span><span·class="mi">19</span><span·class="o">&gt;</span></code></pre><h3·id="fragmentation-properties"·class="section-heading">
271 ··<a·href="#fragmentation-properties"·class="hover-link">271 ··<a·href="#fragmentation-properties"·class="hover-link">
272 ····<i·class="ri-link-m"·aria-hidden="true"></i>272 ····<i·class="ri-link-m"·aria-hidden="true"></i>
273 ··</a>273 ··</a>
274 ··<span·class="text">Fragmentation·Properties</span>274 ··<span·class="text">Fragmentation·Properties</span>
275 </h3>275 </h3>
276 <p>The·table·property·<code·class="inline">frag_properties</code>·can·be·read·with·the·function276 <p>The·table·property·<code·class="inline">frag_properties</code>·can·be·read·with·the·function
277 <a·href="mnesia.html#table_info/2"><code·class="inline">mnesia:table_info(Tab,·frag_properties)</code></a>.·The277 <a·href="mnesia.html#table_info/2"><code·class="inline">mnesia:table_info(Tab,·frag_properties)</code></a>.·The
Offset 305, 72 lines modifiedOffset 305, 72 lines modified
305 defaults·to·<code·class="inline">undefined</code>.·However,·if·the·foreign·key·is·set·to·something·else,305 defaults·to·<code·class="inline">undefined</code>.·However,·if·the·foreign·key·is·set·to·something·else,
306 it·causes·the·default·values·of·the·other·fragmentation·properties·to·be·the306 it·causes·the·default·values·of·the·other·fragmentation·properties·to·be·the
307 same·values·as·the·actual·fragmentation·properties·of·the·foreign·table.</p></li><li><p><strong><code·class="inline">{hash_module,·Atom}</code></strong>·-·Enables·definition·of·an·alternative·hashing307 same·values·as·the·actual·fragmentation·properties·of·the·foreign·table.</p></li><li><p><strong><code·class="inline">{hash_module,·Atom}</code></strong>·-·Enables·definition·of·an·alternative·hashing
308 scheme.·The·module·must·implement·the·<a·href="mnesia_frag_hash.html"><code·class="inline">mnesia_frag_hash</code></a>·callback·behavior.308 scheme.·The·module·must·implement·the·<a·href="mnesia_frag_hash.html"><code·class="inline">mnesia_frag_hash</code></a>·callback·behavior.
309 This·property·can·explicitly·be·set·at·table·creation.·Default·is309 This·property·can·explicitly·be·set·at·table·creation.·Default·is
310 <code·class="inline">mnesia_frag_hash</code>.</p></li><li><p><strong><code·class="inline">{hash_state,·Term}</code></strong>·-·Enables·a·table-specific·parameterization·of·a310 <code·class="inline">mnesia_frag_hash</code>.</p></li><li><p><strong><code·class="inline">{hash_state,·Term}</code></strong>·-·Enables·a·table-specific·parameterization·of·a
311 generic·hash·module.·This·property·can·explicitly·be·set·at·table·creation.311 generic·hash·module.·This·property·can·explicitly·be·set·at·table·creation.
312 Default·is·<code·class="inline">undefined</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V4</span><span·class="p">.</span><span·class="mf">7.3</span><span·class="p">.</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="2412274046-1">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="2412274046-1">)</span><span·class="gp·unselectable">312 Default·is·<code·class="inline">undefined</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V4</span><span·class="p">.</span><span·class="mf">7.3</span><span·class="p">.</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="5938081263-1">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="5938081263-1">)</span><span·class="gp·unselectable">
313 (a@sam)1&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="2412274046-2">(</span><span·class="p"·data-group-id="2412274046-2">)</span><span·class="p">.</span><span·class="w">313 (a@sam)1&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="5938081263-2">(</span><span·class="p"·data-group-id="5938081263-2">)</span><span·class="p">.</span><span·class="w">
314 </span><span·class="nf">ok</span><span·class="w">314 </span><span·class="nf">ok</span><span·class="w">
315 </span><span·class="p"·data-group-id="2412274046-3">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="2412274046-3">)</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">PrimProps</span><span·class="w">·</span><span·class="o">=</s[·...·truncated·by·diffoscope;·len:·811,·SHA:·81c3902d4345d54b10548d06e23030d4491b9a58ba4c5fbe207f575850a8bed3·...·]-4">]</span><span·class="p">.</span><span·class="w">315 </span><span·class="p"·data-group-id="5938081263-3">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="5938081263-3">)</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="n">PrimProps</span><span·class="w">·</span><span·class="o">=</s[·...·truncated·by·diffoscope;·len:·811,·SHA:·9f1cbf59dfa6545e3eb9d8360d718925351bc5da5ff2f4939a73ac0901e9993c·...·]-4">]</span><span·class="p">.</span><span·class="w">
316 </span><span·class="p"·data-group-id="2412274046-9">[</span><span·class="p"·data-group-id="2412274046-10">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="2412274046-10">}</span><span·class="p">,</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·325,·SHA:·47a8584e1237e16bf6f8968ccde51b24457377a6911b636204bb4d944cf7cae5·...·]-9">]</span><span·class="gp·unselectable">316 </span><span·class="p"·data-group-id="5938081263-9">[</span><span·class="p"·data-group-id="5938081263-10">{</span><span·class="ss">n_fragments</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="5938081263-10">}</span><span·class="p">,</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·325,·SHA:·2c1a2b893a8b52850a20f0de563084c0d4b184b89b39140cbac50cbdaa1b9932·...·]-9">]</span><span·class="gp·unselectable">
317 (a@sam)3&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="2412274046-13">(</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="w">317 (a@sam)3&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="5938081263-13">(</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="w">
318 ······························</span><span·class="p"·data-group-id="2412274046-14">[</span><span·class="p"·data-group-id="2412274046-15">{</span><span·class="ss">frag_properties</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrimProps</span><span·class="p"·data-group-id="2412274046-15">}</span><span·class="p">,</span><span·class="w">318 ······························</span><span·class="p"·data-group-id="5938081263-14">[</span><span·class="p"·data-group-id="5938081263-15">{</span><span·class="ss">frag_properties</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrimProps</span><span·class="p"·data-group-id="5938081263-15">}</span><span·class="p">,</span><span·class="w">
319 ·······························</span><span·class="p"·data-group-id="2412274046-16">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="p"·data-group-id="2412274046-17">[</span><span·class="ss">prim_key</span><span·class="p">,</span><span·class="ss">prim_val</span><span·class="p"·data-group-id="24[·...·truncated·by·diffoscope;·len:·170,·SHA:·69cfad447c4982eba91e74b76015b24e3e4b9bcc004cfcec3ded098964706cae·...·]-13">)</span><span·class="p">.</span><span·class="w">319 ·······························</span><span·class="p"·data-group-id="5938081263-16">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="p"·data-group-id="5938081263-17">[</span><span·class="ss">prim_key</span><span·class="p">,</span><span·class="ss">prim_val</span><span·class="p"·data-group-id="59[·...·truncated·by·diffoscope;·len:·170,·SHA:·ff85177f976ecb1052307aaa03883bf53c86b5b353142e9afc2adfd0f3b5a9be·...·]-13">)</span><span·class="p">.</span><span·class="w">
320 </span><span·class="p"·data-group-id="2412274046-18">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="2412274046-18">}</span><span·class="gp·unselectable">320 </span><span·class="p"·data-group-id="5938081263-18">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="5938081263-18">}</span><span·class="gp·unselectable">
321 (a@sam)4&gt;·</span><span·class="n">SecProps</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2412274046-19">[</span><span·class="p"·data-group-id="2412274046-20">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2412274046-21">{</span><span·class="ss">prim_dict</span><span·cla[·...·truncated·by·diffoscope;·len:·219,·SHA:·912ceae7cc341819cac43823d9e69fd80dfb996c0efed67fe08b015f0b3c7e46·...·]-19">]</span><span·class="p">.</span><span·class="w">321 (a@sam)4&gt;·</span><span·class="n">SecProps</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5938081263-19">[</span><span·class="p"·data-group-id="5938081263-20">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5938081263-21">{</span><span·class="ss">prim_dict</span><span·cla[·...·truncated·by·diffoscope;·len:·219,·SHA:·c7f4b24f441d071e68535908890e1ee1afa85b487c44efc6de1783bdae6ae980·...·]-19">]</span><span·class="p">.</span><span·class="w">
322 </span><span·class="p"·data-group-id="2412274046-22">[</span><span·class="p"·data-group-id="2412274046-23">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="p"·data-group-id="2412274046-24">{</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·171,·SHA:·3759a36ea8d6a0cb8c8462d2b1934c80a55bd491788a4477f5dfc487b053dc88·...·]-22">]</span><span·class="gp·unselectable">322 </span><span·class="p"·data-group-id="5938081263-22">[</span><span·class="p"·data-group-id="5938081263-23">{</span><span·class="ss">foreign_key</span><span·class="p">,</span><span·class="p"·data-group-id="5938081263-24">{</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·171,·SHA:·96798c4301832df2ef1ab0294cb0cdeaaecb3b4dd44ee132a0c2acbb94fe269e·...·]-22">]</span><span·class="gp·unselectable">
323 (a@sam)5&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="2412274046-25">(</span><span·class="ss">sec_dict</span><span·class="p">,</span><span·class="w">323 (a@sam)5&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="5938081263-25">(</span><span·class="ss">sec_dict</span><span·class="p">,</span><span·class="w">
324 ······························</span><span·class="p"·data-group-id="2412274046-26">[</span><span·class="p"·data-group-id="2412274046-27">{</span><span·class="ss">frag_properties</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecProps</span><span·class="p"·data-group-id="2412274046-27">}</span><span·class="p">,</span><span·class="gp·unselectable">324 ······························</span><span·class="p"·data-group-id="5938081263-26">[</span><span·class="p"·data-group-id="5938081263-27">{</span><span·class="ss">frag_properties</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecProps</span><span·class="p"·data-group-id="5938081263-27">}</span><span·class="p">,</span><span·class="gp·unselectable">
325 (a@sam)5&gt;·</span><span·class="w">·····················</span><span·class="p"·data-group-id="2412274046-28">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2412274046-29">[</span><span·class="ss">sec_key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·216,·SHA:·bc0f6b554a83f644640fb64e4d6efd0c4312f3c309cbd62ea7b13fe2992be53e·...·]-25">)</span><span·class="p">.</span><span·class="w">325 (a@sam)5&gt;·</span><span·class="w">·····················</span><span·class="p"·data-group-id="5938081263-28">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5938081263-29">[</span><span·class="ss">sec_key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·216,·SHA:·12eafb50f13e252a068f6f79eb1ee4dab44dc8c71328682a886e025bcce84aa8·...·]-25">)</span><span·class="p">.</span><span·class="w">
326 </span><span·class="p"·data-group-id="2412274046-30">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="2412274046-30">}</span><span·class="gp·unselectable">326 </span><span·class="p"·data-group-id="5938081263-30">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="5938081263-30">}</span><span·class="gp·unselectable">
327 (a@sam)6&gt;·</span><span·class="n">Write</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="2412274046-31">(</span><span·class="n">Rec</span><span·class="p"·data-group-id="2412274046-31">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write<[·...·truncated·by·diffoscope;·len:·127,·SHA:·5c45fe2037907102d3f52830491b14c83e571429b07e75fe275b5b473b614b37·...·]-32">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">327 (a@sam)6&gt;·</span><span·class="n">Write</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5938081263-31">(</span><span·class="n">Rec</span><span·class="p"·data-group-id="5938081263-31">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">write<[·...·truncated·by·diffoscope;·len:·127,·SHA:·e783889b58ea04d455d773c9954c8f276f5f4386a2f24523dd2c479c07dd69d5·...·]-32">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
328 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">328 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">
329 (a@sam)7&gt;·</span><span·class="n">PrimKey</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">11</span><span·class="p">.</span><span·class="w">329 (a@sam)7&gt;·</span><span·class="n">PrimKey</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">11</span><span·class="p">.</span><span·class="w">
330 </span><span·class="mi">11</span><span·class="gp·unselectable">330 </span><span·class="mi">11</span><span·class="gp·unselectable">
331 (a@sam)8&gt;·</span><span·class="n">SecKey</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">.</span><span·class="w">331 (a@sam)8&gt;·</span><span·class="n">SecKey</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">.</span><span·class="w">
332 </span><span·class="mi">42</span><span·class="gp·unselectable">332 </span><span·class="mi">42</span><span·class="gp·unselectable">
333 (a@sam)9&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="2412274046-33">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Write</span><span·class="p">,</span><span·class="w">333 (a@sam)9&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="5938081263-33">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Write</span><span·class="p">,</span><span·class="w">
334 ··························</span><span·class="p"·data-group-id="2412274046-34">[</span><span·class="p"·data-group-id="2412274046-35">{</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrimKey</span><span·class="p">,</span><span·class="w">·</span><span·class="o">-</s[·...·truncated·by·diffoscope;·len:·262,·SHA:·d1641edaf2198b08358ec62195e1005bdf390ed409fd314469b0377c1306f623·...·]-33">)</span><span·class="p">.</span><span·class="w">334 ··························</span><span·class="p"·data-group-id="5938081263-34">[</span><span·class="p"·data-group-id="5938081263-35">{</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrimKey</span><span·class="p">,</span><span·class="w">·</span><span·class="o">-</s[·...·truncated·by·diffoscope;·len:·262,·SHA:·06a4949a30acf427aa91d50ad286c80c8478a3a77199df113af7d1e36f29d0d4·...·]-33">)</span><span·class="p">.</span><span·class="w">
335 </span><span·class="nf">ok</span><span·class="w">335 </span><span·class="nf">ok</span><span·class="w">
336 </span><span·class="p"·data-group-id="2412274046-36">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="2412274046-36">)</span><span·class="mi">10</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">ac[·...·truncated·by·diffoscope;·len:·54,·SHA:·4e0dc1fd7472f4159878d1c460d498733b6fac1dec5ac40e71f5668c5213de7c·...·]-37">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Write</span><span·class="p">,</span><span·class="w">336 </span><span·class="p"·data-group-id="5938081263-36">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="5938081263-36">)</span><span·class="mi">10</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">ac[·...·truncated·by·diffoscope;·len:·54,·SHA:·d413e3e16ace26d010b4dd1f5490d261d35dda10e956eb74ec6ba5698107c856·...·]-37">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Write</span><span·class="p">,</span><span·class="w">
337 ···························</span><span·class="p"·data-group-id="2412274046-38">[</span><span·class="p"·data-group-id="2412274046-39">{</span><span·class="ss">sec_dict</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrimKe[·...·truncated·by·diffoscope;·len:·240,·SHA:·b671fb39201bee4cce9e934196ede40af4cceeec5932f76c5718e6689f70c001·...·]-37">)</span><span·class="p">.</span><span·class="w">337 ···························</span><span·class="p"·data-group-id="5938081263-38">[</span><span·class="p"·data-group-id="5938081263-39">{</span><span·class="ss">sec_dict</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrimKe[·...·truncated·by·diffoscope;·len:·240,·SHA:·3cd148dc340687448ad86356b3bdf8bfd82dbb5ba07b4d501385aff0f06ab8dc·...·]-37">)</span><span·class="p">.</span><span·class="w">
338 </span><span·class="nf">ok</span><span·class="w">338 </span><span·class="nf">ok</span><span·class="w">
339 </span><span·class="p"·data-group-id="2412274046-40">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="2412274046-40">)</span><span·class="mi">11</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">ch[·...·truncated·by·diffoscope;·len:·630,·SHA:·ede60d0d6b1b8897aa7b120247b3f66811edcce58c3a01765211b52b87068399·...·]-41">)</span><span·class="p">.</span><span·class="w">339 </span><span·class="p"·data-group-id="5938081263-40">(</span><span·class="ss">a@sam</span><span·class="p"·data-group-id="5938081263-40">)</span><span·class="mi">11</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">ch[·...·truncated·by·diffoscope;·len:·630,·SHA:·61378217d57e59e3f147b7c157e9acc4014bff54828454ea06cecae2f05d8393·...·]-41">)</span><span·class="p">.</span><span·class="w">
340 </span><span·class="p"·data-group-id="2412274046-45">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="2412274046-45">}</span><span·class="gp·unselectable">340 </span><span·class="p"·data-group-id="5938081263-45">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="5938081263-45">}</span><span·class="gp·unselectable">
341 (a@sam)12&gt;·</span><span·class="n">SecRead</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="2412274046-46">(</span><span·class="n">PrimKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecKey</span><span·class="p"·data-group-id="2412274046-46">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">341 (a@sam)12&gt;·</span><span·class="n">SecRead</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5938081263-46">(</span><span·class="n">PrimKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecKey</span><span·class="p"·data-group-id="5938081263-46">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
342 ···············</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><span·class="p"·data-group-id="2412274046-47">(</span><span·class="p"·data-group-id="2412274046-48">{</span><span·class="ss">sec_dict</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrimKey</span><span·class="p"·data-group-id="2412274046-48">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·179,·SHA:·4aa1cdf23468bf491ba8ef196fad082df7a8736bd3022a65fda1c9a9b094b686·...·]-47">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">342 ···············</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">read</span><span·class="p"·data-group-id="5938081263-47">(</span><span·class="p"·data-group-id="5938081263-48">{</span><span·class="ss">sec_dict</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrimKey</span><span·class="p"·data-group-id="5938081263-48">}</span><span·class="p"[·...·truncated·by·diffoscope;·len:·179,·SHA:·0c133679fc96a59e71c1d3e494133e2ecf80ab1f39193f4da8cf6ace5d3b5bc3·...·]-47">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
343 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">343 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">
344 (a@sam)13&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="2412274046-49">(</span><span·class="ss">transaction</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecRead</span><span·class="p">,</span><span·class="w">344 (a@sam)13&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="5938081263-49">(</span><span·class="ss">transaction</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecRead</span><span·class="p">,</span><span·class="w">
345 ···························</span><span·class="p"·data-group-id="2412274046-50">[</span><span·class="n">PrimKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecKey</span><span·class="p"·data-group-id="2412274046-50">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_[·...·truncated·by·diffoscope;·len:·52,·SHA:·f08d526ca6ad6ad55b61ff902bca3537dfed4265c4fe3b9fe0d1168ef9a5a8ef·...·]-49">)</span><span·class="p">.</span><span·class="w">345 ···························</span><span·class="p"·data-group-id="5938081263-50">[</span><span·class="n">PrimKey</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SecKey</span><span·class="p"·data-group-id="5938081263-50">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">mnesia_[·...·truncated·by·diffoscope;·len:·52,·SHA:·1ba072324a1fa83e02f9937b2e27ebc5549a8caf6f11216699a1bb4e1a669964·...·]-49">)</span><span·class="p">.</span><span·class="w">
346 </span><span·class="p"·data-group-id="2412274046-51">[</span><span·class="p"·data-group-id="2412274046-52">{</span><span·class="ss">sec_dict</span><span·class="p">,</span><span·class="mi">42</span><span·class="p">,</span><span·class="mi">11</span><span·class="p"·data-group-id="2412274046-52">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·24c14d86ff29e2b8d73c5f94cac186d3e5d6d1b4e994d86d6134038d6c98e6bd·...·]-51">]</span><span·class="gp·unselectable">346 </span><span·class="p"·data-group-id="5938081263-51">[</span><span·class="p"·data-group-id="5938081263-52">{</span><span·class="ss">sec_dict</span><span·class="p">,</span><span·class="mi">42</span><span·class="p">,</span><span·class="mi">11</span><span·class="p"·data-group-id="5938081263-52">}[·...·truncated·by·diffoscope;·len:·48,·SHA:·49a4ff77fca4783c9d8d4249b3faa3e2d3c5f1a7c39e76135d731448d801744c·...·]-51">]</span><span·class="gp·unselectable">
347 (a@sam)14&gt;·</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="2412274046-53">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Item</span><span·class="p"·data-group-id="2412274046-53">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·282,·SHA:·2b1c346203a4a8735b83a78f062e5ebfee98eb13b468758e085839c19a9aaa7e·...·]-54">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">347 (a@sam)14&gt;·</span><span·class="n">Info</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5938081263-53">(</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Item</span><span·class="p"·data-group-id="5938081263-53">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·282,·SHA:·e477a228f0a9e8bc4f1df7d34489017faea6a76d3590319156751528e89abed1·...·]-54">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
348 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">348 </span><span·class="p">#</span><span·class="n">Fun</span><span·class="o">&lt;</span><span·class="ss">erl_eval</span><span·class="o">&gt;</span><span·class="gp·unselectable">
349 (a@sam)15&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="2412274046-55">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">349 (a@sam)15&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">activity</span><span·class="p"·data-group-id="5938081263-55">(</span><span·class="ss">sync_dirty</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">
350 ···························</span><span·class="p"·data-group-id="2412274046-56">[</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">frag_size</span><span·class="p"·data-group-id="2412274046-56">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·59,·SHA:·b5cd86e67a8ff4c4844202b586c26b815b46396dcce4c64ee9617ea0ef99c66b·...·]-55">)</span><span·class="p">.</span><span·class="w">350 ···························</span><span·class="p"·data-group-id="5938081263-56">[</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">frag_size</span><span·class="p"·data-group-id="5938081263-56">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·59,·SHA:·c00300d0a6e1f844d3ac91e539bca45b84e0e8ff31d00a9c3c31f9651ca0cc42·...·]-55">)</span><span·class="p">.</span><span·class="w">
351 </span><span·class="p"·data-group-id="2412274046-57">[</span><span·class="p"·data-group-id="2412274046-58">{</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="2412274046-58">}</span><span·class="p">,</span><span·class="w">351 </span><span·class="p"·data-group-id="5938081263-57">[</span><span·class="p"·data-group-id="5938081263-58">{</span><span·class="ss">prim_dict</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="5938081263-58">}</span><span·class="p">,</span><span·class="w">
352 ·</span><span·class="p"·data-group-id="2412274046-59">{</span><span·class="ss">prim_dict_frag2</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="2412274046-59">}</span><span·class="p">,</span><span·class="w">352 ·</span><span·class="p"·data-group-id="5938081263-59">{</span><span·class="ss">prim_dict_frag2</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="5938081263-59">}</span><span·class="p">,</span><span·class="w">
Max diff block lines reached; 62775/150696 bytes (41.66%) of diff not shown.
861 B
html2text {}
Max HTML report size reached
48.4 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_chap7.html
    
Offset 229, 34 lines modifiedOffset 229, 34 lines modified
229 ··</a>229 ··</a>
230 ··<span·class="text">Startup·Files</span>230 ··<span·class="text">Startup·Files</span>
231 </h3>231 </h3>
232 <p><a·href="mnesia_chap3.html#start_mnesia">Start·Mnesia</a>·states·the·following·prerequisites232 <p><a·href="mnesia_chap3.html#start_mnesia">Start·Mnesia</a>·states·the·following·prerequisites
233 for·starting·<code·class="inline">Mnesia</code>:</p><ul><li>An·Erlang·session·must·be·started·and·a·<code·class="inline">Mnesia</code>·directory·must·be·specified233 for·starting·<code·class="inline">Mnesia</code>:</p><ul><li>An·Erlang·session·must·be·started·and·a·<code·class="inline">Mnesia</code>·directory·must·be·specified
234 for·the·database.</li><li>A·database·schema·must·be·initiated,·using·the·function234 for·the·database.</li><li>A·database·schema·must·be·initiated,·using·the·function
235 <a·href="mnesia.html#create_schema/1"><code·class="inline">mnesia:create_schema/1</code></a>.</li></ul><p>The·following·example·shows·how·these·tasks·are·performed:</p><p><em>Step·1:</em>·Start·an·Erlang·session·and·specify·a·<code·class="inline">Mnesia</code>·directory·for·the235 <a·href="mnesia.html#create_schema/1"><code·class="inline">mnesia:create_schema/1</code></a>.</li></ul><p>The·following·example·shows·how·these·tasks·are·performed:</p><p><em>Step·1:</em>·Start·an·Erlang·session·and·specify·a·<code·class="inline">Mnesia</code>·directory·for·the
236 database:</p><pre><code·class="text">%·erl·-sname·klacke·-mnesia·dir·'&quot;/ldisc/scratch/klacke&quot;'</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="6839025355-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="6839025355-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">4.9</span><span·class="w">236 database:</p><pre><code·class="text">%·erl·-sname·klacke·-mnesia·dir·'&quot;/ldisc/scratch/klacke&quot;'</code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="7369973994-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="7369973994-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">4.9</span><span·class="w">
  
237 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V4</span><span·class="p">.</span><span·class="mi">9</span><span·class="w">··</span><span·class="p"·data-group-id="6839025355-2">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="6839025355-2">)</span><span·class="gp·unselectable">237 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V4</span><span·class="p">.</span><span·class="mi">9</span><span·class="w">··</span><span·class="p"·data-group-id="7369973994-2">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="7369973994-2">)</span><span·class="gp·unselectable">
238 (klacke@gin)1&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_schema</span><span·class="p"·data-group-id="6839025355-3">(</span><span·class="p"·data-group-id="6839025355-4">[</span><span·class="nf">node</span><span·class="p"·data-group-id="6839025355-5">(</span><span·class="p"·data-group-id="6839025355-5">)</span><span·class="p"·data-group-id="6839025355-4">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·63bf831b6787450a6fa99b9e4884d7b3562d87209b3eeb2d94327ad8c46d1d5d·...·]-3">)</span><span·class="p">.</span><span·class="w">238 (klacke@gin)1&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_schema</span><span·class="p"·data-group-id="7369973994-3">(</span><span·class="p"·data-group-id="7369973994-4">[</span><span·class="nf">node</span><span·class="p"·data-group-id="7369973994-5">(</span><span·class="p"·data-group-id="7369973994-5">)</span><span·class="p"·data-group-id="7369973994-4">]<[·...·truncated·by·diffoscope;·len:·47,·SHA:·aed5f905fba3fe543b70435d46f3ced11a0fad1de22b46bbe5d6eda6a0f9a116·...·]-3">)</span><span·class="p">.</span><span·class="w">
239 </span><span·class="nf">ok</span><span·class="w">239 </span><span·class="nf">ok</span><span·class="w">
240 </span><span·class="p"·data-group-id="6839025355-6">(</span><span·class="ss">klacke@gin</span><span·class="p"·data-group-id="6839025355-6">)</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">240 </span><span·class="p"·data-group-id="7369973994-6">(</span><span·class="ss">klacke@gin</span><span·class="p"·data-group-id="7369973994-6">)</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">
241 </span><span·class="err">^</span><span·class="n">Z</span><span·class="w">241 </span><span·class="err">^</span><span·class="n">Z</span><span·class="w">
242 </span><span·class="n">Suspended</span></code></pre><p><em>Step·2:</em>·You·can·inspect·the·<code·class="inline">Mnesia</code>·directory·to·see·what·files·have·been242 </span><span·class="n">Suspended</span></code></pre><p><em>Step·2:</em>·You·can·inspect·the·<code·class="inline">Mnesia</code>·directory·to·see·what·files·have·been
243 created:</p><pre><code·class="text">%·ls·-l·/ldisc/scratch/klacke243 created:</p><pre><code·class="text">%·ls·-l·/ldisc/scratch/klacke
244 -rw-rw-r--···1·klacke···staff·······247·Aug·12·15:06·FALLBACK.BUP</code></pre><p>The·response·shows·that·the·file·<code·class="inline">FALLBACK.BUP</code>·has·been·created.·This·is·called244 -rw-rw-r--···1·klacke···staff·······247·Aug·12·15:06·FALLBACK.BUP</code></pre><p>The·response·shows·that·the·file·<code·class="inline">FALLBACK.BUP</code>·has·been·created.·This·is·called
245 a·backup·file,·and·it·contains·an·initial·schema.·If·more·than·one·node·in·the245 a·backup·file,·and·it·contains·an·initial·schema.·If·more·than·one·node·in·the
246 function·<a·href="mnesia.html#create_schema/1"><code·class="inline">mnesia:create_schema/1</code></a>·had·been·specified,·identical·backup·files246 function·<a·href="mnesia.html#create_schema/1"><code·class="inline">mnesia:create_schema/1</code></a>·had·been·specified,·identical·backup·files
247 would·have·been·created·on·all·nodes.</p><p><em>Step·3:</em>·Start·<code·class="inline">Mnesia</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6896260703-1">(</span><span·class="ss">klacke@gin</span><span·class="p"·data-group-id="6896260703-1">)</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class=[·...·truncated·by·diffoscope;·len:·106,·SHA:·2dcb4d83a453b146c78e91db2c49640548335061ba0a0ebbf2e9ffeadc8c8248·...·]-2">)</span><span·class="p">.</span><span·class="w">247 would·have·been·created·on·all·nodes.</p><p><em>Step·3:</em>·Start·<code·class="inline">Mnesia</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0481398565-1">(</span><span·class="ss">klacke@gin</span><span·class="p"·data-group-id="0481398565-1">)</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">start</span><span·class=[·...·truncated·by·diffoscope;·len:·106,·SHA:·268a20f61e74bcc107c9374240a65379389e31841e2eeb25d362a0d76735d080·...·]-2">)</span><span·class="p">.</span><span·class="w">
248 </span><span·class="ss">ok</span></code></pre><p><em>Step·4:</em>·You·can·see·the·following·listing·in·the·<code·class="inline">Mnesia</code>·directory:</p><pre><code·class="text">-rw-rw-r--···1·klacke···staff·········86·May·26·19:03·LATEST.LOG248 </span><span·class="ss">ok</span></code></pre><p><em>Step·4:</em>·You·can·see·the·following·listing·in·the·<code·class="inline">Mnesia</code>·directory:</p><pre><code·class="text">-rw-rw-r--···1·klacke···staff·········86·May·26·19:03·LATEST.LOG
249 -rw-rw-r--···1·klacke···staff······34507·May·26·19:03·schema.DAT</code></pre><p>The·schema·in·the·backup·file·<code·class="inline">FALLBACK.BUP</code>·has·been·used·to·generate·the·file249 -rw-rw-r--···1·klacke···staff······34507·May·26·19:03·schema.DAT</code></pre><p>The·schema·in·the·backup·file·<code·class="inline">FALLBACK.BUP</code>·has·been·used·to·generate·the·file
250 <code·class="inline">schema.DAT</code>.·Since·there·are·no·other·disc·resident·tables·than·the·schema,·no250 <code·class="inline">schema.DAT</code>.·Since·there·are·no·other·disc·resident·tables·than·the·schema,·no
251 other·data·files·were·created.·The·file·<code·class="inline">FALLBACK.BUP</code>·was·removed·after·the251 other·data·files·were·created.·The·file·<code·class="inline">FALLBACK.BUP</code>·was·removed·after·the
252 successful·&quot;restoration&quot;.·You·also·see·some·files·that·are·for·internal·use·by252 successful·&quot;restoration&quot;.·You·also·see·some·files·that·are·for·internal·use·by
253 <code·class="inline">Mnesia</code>.</p><p><em>Step·5:</em>·Create·a·table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(klacke@gin)4&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="4718606245-1">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="p"·data-group-id="4718606245-2">[</span><span·class="p"·data-group-id="4718606245-3">{</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4718606245-4">[</span><span·class="nf">node</span><span·class="p"·data-group-id="4718606245-5">(</span><span·class="p"·data-group-id="4718606245-5">)</span><span·class="p"·data-group-id="4718606245-4">]</span><span·class="p"·data-group-id="4718606245-3">}</span><span·class="p"·data-group-id="4718606245-2">]</span><span·class="p"·data-group-id="4718606245-1">)</span><span·class="p">.</span><span·class="w"> 
254 </span><span·class="p"·data-group-id="4718606245-6">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="4718606245-6">}</span></code></pre><p><em>Step·6:</em>·You·can·see·the·following·listi[·...·truncated·by·diffoscope;·len:·112,·SHA:·97a746fbad41ac6f5fe9013762a4d97380077fc7d0e49d5206c8569b7dda64af·...·]253 <code·class="inline">Mnesia</code>.</p><p><em>Step·5:</em>·Create·a·table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(klacke@gin)4&gt;·</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">creat[·...·truncated·by·diffoscope;·len:·746,·SHA:·af3f0be118941b273715d9369174ddb7603b300cc84880583f63da6d258bda64·...·]
 254 </span><span·class="p"·data-group-id="6222654607-6">{</span><span·class="ss">atomic</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p"·data-group-id="6222654607-6">}</span></code></pre><p><em>Step·6:</em>·You·can·see·the·following·listing·in·the·<code·class="inline">Mnesia</code>·directory:</p><pre><code·class="text">%·ls·-l·/ldisc/scratch/klacke
255 -rw-rw-r--·1·klacke·staff····86·May·26·19:07·LATEST.LOG255 -rw-rw-r--·1·klacke·staff····86·May·26·19:07·LATEST.LOG
256 -rw-rw-r--·1·klacke·staff····94·May·26·19:07·foo.DCD256 -rw-rw-r--·1·klacke·staff····94·May·26·19:07·foo.DCD
257 -rw-rw-r--·1·klacke·staff··6679·May·26·19:07·schema.DAT</code></pre><p>The·file·<code·class="inline">foo.DCD</code>·has·been·created.·This·file·will·eventually·store·all·data257 -rw-rw-r--·1·klacke·staff··6679·May·26·19:07·schema.DAT</code></pre><p>The·file·<code·class="inline">foo.DCD</code>·has·been·created.·This·file·will·eventually·store·all·data
258 that·is·written·into·the·<code·class="inline">foo</code>·table.</p><h3·id="log-file"·class="section-heading">258 that·is·written·into·the·<code·class="inline">foo</code>·table.</p><h3·id="log-file"·class="section-heading">
259 ··<a·href="#log-file"·class="hover-link">259 ··<a·href="#log-file"·class="hover-link">
260 ····<i·class="ri-link-m"·aria-hidden="true"></i>260 ····<i·class="ri-link-m"·aria-hidden="true"></i>
261 ··</a>261 ··</a>
Offset 292, 19 lines modifiedOffset 292, 19 lines modified
292 and·it·is·efficient·to·insert·and·search·for·records·in·these·files·with·a292 and·it·is·efficient·to·insert·and·search·for·records·in·these·files·with·a
293 specific·key.·The·<code·class="inline">.DAT</code>·files·are·used·for·the·schema·and·for293 specific·key.·The·<code·class="inline">.DAT</code>·files·are·used·for·the·schema·and·for
294 <code·class="inline">disc_only_copies</code>·tables.·The·<code·class="inline">Mnesia</code>·data·files·are·currently·implemented·in294 <code·class="inline">disc_only_copies</code>·tables.·The·<code·class="inline">Mnesia</code>·data·files·are·currently·implemented·in
295 the·standard·library·module·<a·href="../../../../lib/stdlib-6.0.1/doc/html/dets.html"><code·class="inline">dets</code></a>·in·<code·class="inline">STDLIB</code>.</p><p>All·operations·that·can·be·performed·on·<code·class="inline">dets</code>·files·can·also·be·performed·on295 the·standard·library·module·<a·href="../../../../lib/stdlib-6.0.1/doc/html/dets.html"><code·class="inline">dets</code></a>·in·<code·class="inline">STDLIB</code>.</p><p>All·operations·that·can·be·performed·on·<code·class="inline">dets</code>·files·can·also·be·performed·on
296 the·<code·class="inline">Mnesia</code>·data·files.·For·example,·<code·class="inline">dets</code>·contains·the·function296 the·<code·class="inline">Mnesia</code>·data·files.·For·example,·<code·class="inline">dets</code>·contains·the·function
297 <a·href="../../../../lib/stdlib-6.0.1/doc/html/dets.html#traverse/2"><code·class="inline">dets:traverse/2</code></a>,·which·can·be·used·to·view·the·contents·of·a·<code·class="inline">Mnesia</code>·<code·class="inline">DAT</code>297 <a·href="../../../../lib/stdlib-6.0.1/doc/html/dets.html#traverse/2"><code·class="inline">dets:traverse/2</code></a>,·which·can·be·used·to·view·the·contents·of·a·<code·class="inline">Mnesia</code>·<code·class="inline">DAT</code>
298 file.·However,·this·can·only·be·done·when·<code·class="inline">Mnesia</code>·is·not·running.·So,·to·view298 file.·However,·this·can·only·be·done·when·<code·class="inline">Mnesia</code>·is·not·running.·So,·to·view
299 the·schema·file,·do·as·follows;</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6598882896-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="6598882896-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·688,·SHA:·d7bda4bcf0e3d99c1256a03820cbad425d04bfe3dda5dae0947226675f3ce5b4·...·]-5">}</span><span·class="p">,</span><span·class="w">299 the·schema·file,·do·as·follows;</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3557181743-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="3557181743-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·688,·SHA:·22e31be94afa76ea61459db534970774e4d0950e9e48d455f8e2a1ac77f6f6fe·...·]-5">}</span><span·class="p">,</span><span·class="w">
300 </span><span·class="p"·data-group-id="6598882896-6">{</span><span·class="ss">keypos</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="6598882896-6">}</span><span·class="p"·data-group-id="6598882896-3">]</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·4e03d63431ea97251f0d83e39673e1d2795a6b599a2a1b1058cf302db42df038·...·]-2">)</span><span·class="p">,</span><span·class="w">300 </span><span·class="p"·data-group-id="3557181743-6">{</span><span·class="ss">keypos</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="3557181743-6">}</span><span·class="p"·data-group-id="3557181743-3">]</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·a8f346d56390e9f9b1c833341cdab88ea6b521f89638230229b0c849795a1516·...·]-2">)</span><span·class="p">,</span><span·class="w">
301 </span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="6598882896-7">(</span><span·class="n">X</span><span·class="p"·data-group-id="6598882896-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><[·...·truncated·by·diffoscope;·len:·381,·SHA:·0afcd2385062f19faa23714a4d74f54afd455f6ca24bca61fca04b50a1ca2b4c·...·]-8">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">continue</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">301 </span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3557181743-7">(</span><span·class="n">X</span><span·class="p"·data-group-id="3557181743-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><[·...·truncated·by·diffoscope;·len:·381,·SHA:·15d6bab0938825d4bbff60f272d7ae9e299f4be927179d3ef5eb2bf6e17c5f1b·...·]-8">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">continue</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
302 </span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">traverse</span><span·class="p"·data-group-id="6598882896-10">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="6598882896-10">)</span><span·class="p">,</span><span·class="w">302 </span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">traverse</span><span·class="p"·data-group-id="3557181743-10">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="3557181743-10">)</span><span·class="p">,</span><span·class="w">
303 </span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="6598882896-11">(</span><span·class="n">N</span><span·class="p"·data-group-id="6598882896-11">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="warning">Warning</h4><p>The·<code·class="inline">DAT</code>·files·must·always·be·opened·with·option·<code·class="inline">{repair,·false}</code>.·This303 </span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="3557181743-11">(</span><span·class="n">N</span><span·class="p"·data-group-id="3557181743-11">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="warning">Warning</h4><p>The·<code·class="inline">DAT</code>·files·must·always·be·opened·with·option·<code·class="inline">{repair,·false}</code>.·This
304 ensures·that·these·files·are·not·automatically·repaired.·Without·this·option,304 ensures·that·these·files·are·not·automatically·repaired.·Without·this·option,
305 the·database·can·become·inconsistent,·because·<code·class="inline">Mnesia</code>·can·believe·that·the305 the·database·can·become·inconsistent,·because·<code·class="inline">Mnesia</code>·can·believe·that·the
306 files·were·properly·closed.·For·information·about·configuration·parameter306 files·were·properly·closed.·For·information·about·configuration·parameter
307 <code·class="inline">auto_repair</code>,·see·the·Reference·Manual.</p></blockquote><blockquote><h4·class="warning">Warning</h4><p>It·is·recommended·that·the·data·files·are·not·tampered·with·while·<code·class="inline">Mnesia</code>·is307 <code·class="inline">auto_repair</code>,·see·the·Reference·Manual.</p></blockquote><blockquote><h4·class="warning">Warning</h4><p>It·is·recommended·that·the·data·files·are·not·tampered·with·while·<code·class="inline">Mnesia</code>·is
308 running.·While·not·prohibited,·the·behavior·of·<code·class="inline">Mnesia</code>·is·unpredictable.</p></blockquote><p>The·<code·class="inline">disc_copies</code>·tables·are·stored·on·disk·with·<code·class="inline">.DCL</code>·and·<code·class="inline">.DCD</code>·files,·which308 running.·While·not·prohibited,·the·behavior·of·<code·class="inline">Mnesia</code>·is·unpredictable.</p></blockquote><p>The·<code·class="inline">disc_copies</code>·tables·are·stored·on·disk·with·<code·class="inline">.DCL</code>·and·<code·class="inline">.DCD</code>·files,·which
309 are·standard·<code·class="inline">disk_log</code>·files.</p><h2·id="loading-tables-at-startup"·class="section-heading">309 are·standard·<code·class="inline">disk_log</code>·files.</p><h2·id="loading-tables-at-startup"·class="section-heading">
310 ··<a·href="#loading-tables-at-startup"·class="hover-link">310 ··<a·href="#loading-tables-at-startup"·class="hover-link">
Offset 530, 48 lines modifiedOffset 530, 48 lines modified
530 of·what·<code·class="inline">record_name</code>·is·set·to.</li></ul><p>The·backup·data·is·divided·into·two·sections.·The·first·section·contains530 of·what·<code·class="inline">record_name</code>·is·set·to.</li></ul><p>The·backup·data·is·divided·into·two·sections.·The·first·section·contains
531 information·related·to·the·schema.·All·schema-related·items·are·tuples·where·the531 information·related·to·the·schema.·All·schema-related·items·are·tuples·where·the
532 first·field·equals·the·atom·schema.·The·second·section·is·the·record·section.532 first·field·equals·the·atom·schema.·The·second·section·is·the·record·section.
533 Schema·records·cannot·be·mixed·with·other·records·and·all·schema·records·must·be533 Schema·records·cannot·be·mixed·with·other·records·and·all·schema·records·must·be
534 located·first·in·the·backup.</p><p>The·schema·itself·is·a·table·and·is·possibly·included·in·the·backup.·Each·node534 located·first·in·the·backup.</p><p>The·schema·itself·is·a·table·and·is·possibly·included·in·the·backup.·Each·node
535 where·the·schema·table·resides·is·regarded·as·a·<code·class="inline">db_node</code>.</p><p>The·following·example·shows·how535 where·the·schema·table·resides·is·regarded·as·a·<code·class="inline">db_node</code>.</p><p>The·following·example·shows·how
536 <a·href="mnesia.html#traverse_backup/4"><code·class="inline">mnesia:traverse_backup</code></a>·can·be·used·to·rename·a536 <a·href="mnesia.html#traverse_backup/4"><code·class="inline">mnesia:traverse_backup</code></a>·can·be·used·to·rename·a
537 <code·class="inline">db_node</code>·in·a·backup·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">change_node_name</span><span·class="p"·data-group-id="3833012401-1">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">To</span><span·class="p">,</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·135,·SHA:·9980c82a0773d550e725f0780209c81c2a7d92276d41a2ea056f20ef4d3dfa01·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">537 <code·class="inline">db_node</code>·in·a·backup·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">change_node_name</span><span·class="p"·data-group-id="9675445434-1">(</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">To</span><span·class="p">,</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·135,·SHA:·ec7c8da242e0840d171cc7884bcd91b0e02dea59678a94f91a054c2c64e15cea·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
538 ····</span><span·class="n">Switch</span><span·class="w">·</span><span·class="o">=</span><span·class="w">538 ····</span><span·class="n">Switch</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
539 ········</span><span·class="nf">fun</span><span·class="p"·data-group-id="3833012401-2">(</span><span·class="n">Node</span><span·class="p"·data-group-id="3833012401-2">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">From</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">To</span><span·class="p">;</span><span·class="w">539 ········</span><span·class="nf">fun</span><span·class="p"·data-group-id="9675445434-2">(</span><span·class="n">Node</span><span·class="p"·data-group-id="9675445434-2">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="n">From</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">To</span><span·class="p">;</span><span·class="w">
540 ···········</span><span·class="p"·data-group-id="3833012401-3">(</span><span·class="n">Node</span><span·class="p"·data-group-id="3833012401-3">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">==</span><sp[·...·truncated·by·diffoscope;·len:·466,·SHA:·5020ad5e9c7e799783c51a9b7c9d0495ebfa0ffab59788fe964b29f791266143·...·]-4">)</span><span·class="p">;</span><span·class="w">540 ···········</span><span·class="p"·data-group-id="9675445434-3">(</span><span·class="n">Node</span><span·class="p"·data-group-id="9675445434-3">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">==</span><sp[·...·truncated·by·diffoscope;·len:·466,·SHA:·44a8f4425db7fe66c82132255ce0f6f779ff8697c5080ee84aabf2a0739e7ce4·...·]-4">)</span><span·class="p">;</span><span·class="w">
541 ···········</span><span·class="p"·data-group-id="3833012401-6">(</span><span·class="n">Node</span><span·class="p"·data-group-id="3833012401-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Node</span><span·class="w">541 ···········</span><span·class="p"·data-group-id="9675445434-6">(</span><span·class="n">Node</span><span·class="p"·data-group-id="9675445434-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Node</span><span·class="w">
542 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">542 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
543 ····</span><span·class="n">Convert</span><span·class="w">·</span><span·class="o">=</span><span·class="w">543 ····</span><span·class="n">Convert</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
544 ········</span><span·class="nf">fun</span><span·class="p"·data-group-id="3833012401-7">(</span><span·class="p"·data-group-id="3833012401-8">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">db_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Nodes</[·...·truncated·by·diffoscope;·len:·173,·SHA:·d16b444410176f1d3b8f1ca9d4657363457c5430b054cd7957ccc57c2858ee7e·...·]-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">544 ········</span><span·class="nf">fun</span><span·class="p"·data-group-id="9675445434-7">(</span><span·class="p"·data-group-id="9675445434-8">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">db_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Nodes</[·...·truncated·by·diffoscope;·len:·173,·SHA:·c3e734fa42005b6cd165366b0debb14949857aeb0e4d3b3c86c6fa161f28a076·...·]-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
545 ················</span><span·class="p"·data-group-id="3833012401-9">{</span><span·class="p"·data-group-id="3833012401-10">[</span><span·class="p"·data-group-id="3833012401-11">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">db_nodes</span><span·class="p">[·...·truncated·by·diffoscope;·len:·524,·SHA:·aedfed90b9e0ab54419a629409d392e4e3643397d1b1e615a535d0a8d3e20327·...·]-9">}</span><span·class="p">;</span><span·class="w">545 ················</span><span·class="p"·data-group-id="9675445434-9">{</span><span·class="p"·data-group-id="9675445434-10">[</span><span·class="p"·data-group-id="9675445434-11">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">db_nodes</span><span·class="p">[·...·truncated·by·diffoscope;·len:·524,·SHA:·eacec1bdc38a00f3094d61c1c3b3477605996aa8968f83ec69bf26da97f4b673·...·]-9">}</span><span·class="p">;</span><span·class="w">
546 ···········</span><span·class="p"·data-group-id="3833012401-13">(</span><span·class="p"·data-group-id="3833012401-14">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">version</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Versio[·...·truncated·by·diffoscope;·len:·177,·SHA:·8cb80695ab6f4778e6be61dc31d6d7f98aae9c31232cec2b254f4f5dff3940e1·...·]-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">546 ···········</span><span·class="p"·data-group-id="9675445434-13">(</span><span·class="p"·data-group-id="9675445434-14">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">version</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Versio[·...·truncated·by·diffoscope;·len:·177,·SHA:·16b855da6f4802eb8f98492088215d7aeb7b3442801a7e3b486acc765c9dca66·...·]-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
547 ················</span><span·class="p"·data-group-id="3833012401-15">{</span><span·class="p"·data-group-id="3833012401-16">[</span><span·class="p"·data-group-id="3833012401-17">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">version</span><span·class="p">[·...·truncated·by·diffoscope;·len:·285,·SHA:·8e59e37dd37b98d5a2d778c77f2174f0681a031702e373190c2d3baedcad1b34·...·]-15">}</span><span·class="p">;</span><span·class="w">547 ················</span><span·class="p"·data-group-id="9675445434-15">{</span><span·class="p"·data-group-id="9675445434-16">[</span><span·class="p"·data-group-id="9675445434-17">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">version</span><span·class="p">[·...·truncated·by·diffoscope;·len:·285,·SHA:·9c5e8fdf6678de1efddbb47d2abf1b746dafa67f711c24d1e495ed2d54fd81ba·...·]-15">}</span><span·class="p">;</span><span·class="w">
548 ···········</span><span·class="p"·data-group-id="3833012401-18">(</span><span·class="p"·data-group-id="3833012401-19">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cookie</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cookie<[·...·truncated·by·diffoscope;·len:·175,·SHA:·1ab6013f0dc335262473e68cead20cd7834e6080f58a6a506c75757c611ac362·...·]-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">548 ···········</span><span·class="p"·data-group-id="9675445434-18">(</span><span·class="p"·data-group-id="9675445434-19">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cookie</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cookie<[·...·truncated·by·diffoscope;·len:·175,·SHA:·c43bcac0bb5ada9e71b206a86d99398b9e9078ac861c44015ad43224c7edf595·...·]-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
549 ················</span><span·class="p"·data-group-id="3833012401-20">{</span><span·class="p"·data-group-id="3833012401-21">[</span><span·class="p"·data-group-id="3833012401-22">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cookie</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·283,·SHA:·a75e0e687cc1eb2fee926e6b568faf2169421f88401d83a5f62e7e1059edbc0c·...·]-20">}</span><span·class="p">;</span><span·class="w">549 ················</span><span·class="p"·data-group-id="9675445434-20">{</span><span·class="p"·data-group-id="9675445434-21">[</span><span·class="p"·data-group-id="9675445434-22">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cookie</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·283,·SHA:·3328941bb92f8ba618fb0b2f202ca5c19c9ac70e325b4a23a4d31018993f4b0c·...·]-20">}</span><span·class="p">;</span><span·class="w">
550 ···········</span><span·class="p"·data-group-id="3833012401-23">(</span><span·class="p"·data-group-id="3833012401-24">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CreateList<[·...·truncated·by·diffoscope;·len:·175,·SHA:·dd3760889c8caa5d7b8165d7038fc1e02d9762a33c84184c784b6a470f6a14e5·...·]-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">550 ···········</span><span·class="p"·data-group-id="9675445434-23">(</span><span·class="p"·data-group-id="9675445434-24">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CreateList<[·...·truncated·by·diffoscope;·len:·175,·SHA:·abc486b24390e986e36cbc6c36c8b74ef1d58538de0a95deba7edd2da8d2d4b8·...·]-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
551 ················</span><span·class="n">Keys</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3833012401-25">[</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disc_only_copies</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·2a8181e36e8f1cefe93cac0185add19fdcd59282dcae1de3923360705dd1dc85·...·]-25">]</span><span·class="p">,</span><span·class="w">551 ················</span><span·class="n">Keys</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9675445434-25">[</span><span·class="ss">ram_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disc_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disc_only_copies</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·13,·SHA:·7d1c7fb5c705d06e3583ea684f957b8a872d44e634fd3422ac79692e686840b4·...·]-25">]</span><span·class="p">,</span><span·class="w">
552 ················</span><span·class="n">OptSwitch</span><span·class="w">·</span><span·class="o">=</span><span·class="w">552 ················</span><span·class="n">OptSwitch</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
553 ····················</span><span·class="nf">fun</span><span·class="p"·data-group-id="3833012401-26">(</span><span·class="p"·data-group-id="3833012401-27">{</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Val</span><span·class="p"·data-group-id="3833012401-27">}</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·b3b1da0031c5c1bf11d9fbb679a067de2f0d6cade0c44942fa83087bfe04a916·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">553 ····················</span><span·class="nf">fun</span><span·class="p"·data-group-id="9675445434-26">(</span><span·class="p"·data-group-id="9675445434-27">{</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Val</span><span·class="p"·data-group-id="9675445434-27">}</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·068c5ea0b7ddcaba0e1c6b1f9910b6e1152841c9e0c8f318a6f9518e06c0c744·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
554 ····························</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="3833012401-28">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Keys</span><span·class="p"·data-group-id="3833012401-28">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">554 ····························</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="9675445434-28">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Keys</span><span·class="p"·data-group-id="9675445434-28">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
555 ································</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3833012401-29">{</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="3833012401-30">(</span><span·class="n">Switch</s[·...·truncated·by·diffoscope;·len:·173,·SHA:·6cc5ad4a8135950cc7bc92e01eb7dc68185565ae444f70a52b674adae9b825f8·...·]-29">}</span><span·class="p">;</span><span·class="w">555 ································</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9675445434-29">{</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="9675445434-30">(</span><span·class="n">Switch</s[·...·truncated·by·diffoscope;·len:·173,·SHA:·28ff0e9790b6843c54aec46c83586d6fe5c403f603e5633bd809b54d3e2fb0d5·...·]-29">}</span><span·class="p">;</span><span·class="w">
556 ································</span><span·class="ss">false</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3833012401-31">{</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Val</span><span·class="p"·data-group-id="3833012401-31">}</span><span·class="w">556 ································</span><span·class="ss">false</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9675445434-31">{</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Val</span><span·class="p"·data-group-id="9675445434-31">}</span><span·class="w">
557 ····························</span><span·class="k">end</span><span·class="w">557 ····························</span><span·class="k">end</span><span·class="w">
558 ····················</span><span·class="k">end</span><span·class="p">,</span><span·class="w">558 ····················</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
559 ················</span><span·class="p"·data-group-id="3833012401-32">{</span><span·class="p"·data-group-id="3833012401-33">[</span><span·class="p"·data-group-id="3833012401-34">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·551,·SHA:·fea345e6b37b14e01b4ecc8dba6e924879550f8f50aca589461005f30e350c98·...·]-32">}</span><span·class="p">;</span><span·class="w">559 ················</span><span·class="p"·data-group-id="9675445434-32">{</span><span·class="p"·data-group-id="9675445434-33">[</span><span·class="p"·data-group-id="9675445434-34">{</span><span·class="ss">schema</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tab</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·551,·SHA:·efe1612dac6cf083110d04ba9ebd0db0e4a1fa849e2a831357105d83e5306c9a·...·]-32">}</span><span·class="p">;</span><span·class="w">
560 ···········</span><span·class="p"·data-group-id="3833012401-36">(</span><span·class="n">Other</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="3833012401-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">560 ···········</span><span·class="p"·data-group-id="9675445434-36">(</span><span·class="n">Other</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="9675445434-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
561 ················</span><span·class="p"·data-group-id="3833012401-37">{</span><span·class="p"·data-group-id="3833012401-38">[</span><span·class="n">Other</span><span·class="p"·data-group-id="3833012401-38">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·031e8e5cc8ac8d9834e61e53f5327c23c2a0e6786e8f1d6a7774eb5b54dd91ef·...·]-37">}</span><span·class="w">561 ················</span><span·class="p"·data-group-id="9675445434-37">{</span><span·class="p"·data-group-id="9675445434-38">[</span><span·class="n">Other</span><span·class="p"·data-group-id="9675445434-38">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·fecc395d57a2f31d1e9cc39c2caed54e6f12d39c1fbd10143024c30a0a447ec1·...·]-37">}</span><span·class="w">
562 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">562 ········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
563 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">traverse_backup</span><span·class="p"·data-group-id="3833012401-39">(</span><span·class="n">Source</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Target</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·220,·SHA:·5e09f14336c528f5bef95b4a7f7d054ad22142cbc947a295388be0a28326c6dc·...·]-39">)</span><span·class="p">.</span><span·class="w">563 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">traverse_backup</span><span·class="p"·data-group-id="9675445434-39">(</span><span·class="n">Source</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Target</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·220,·SHA:·abd82fe5c39e4ec2729f05f2685e0f6d88537aafdc30cce708fc2341bcbbe85a·...·]-39">)</span><span·class="p">.</span><span·class="w">
  
564 </span><span·class="nf">view</span><span·class="p"·data-group-id="3833012401-40">(</span><span·class="n">Source</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p"·data-group-id="3833012401-40">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">564 </span><span·class="nf">view</span><span·class="p"·data-group-id="9675445434-40">(</span><span·class="n">Source</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p"·data-group-id="9675445434-40">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
565 ····</span><span·class="n">View</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3833012401-41">(</span><span·class="n">Item</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="3833012401-41">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">565 ····</span><span·class="n">View</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="9675445434-41">(</span><span·class="n">Item</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="9675445434-41">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
566 ···················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3833012401-42">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">.</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="3833012401-43">[</span><span·class="n">Item<[·...·truncated·by·diffoscope;·len:·101,·SHA:·e19d99ac14565cfa4e412ed93e95840a4ccfbab37cb8a5eb1685b280b3b6775b·...·]-42">)</span><span·class="p">,</span><span·class="w">566 ···················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9675445434-42">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">.</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="9675445434-43">[</span><span·class="n">Item<[·...·truncated·by·diffoscope;·len:·101,·SHA:·8c6733f99114607378d21a8e1b49929c9f051003b94b63635572985736c31cad·...·]-42">)</span><span·class="p">,</span><span·class="w">
567 ···················</span><span·class="p"·data-group-id="3833012401-44">{</span><span·class="p"·data-group-id="3833012401-45">[</span><span·class="n">Item</span><span·class="p"·data-group-id="3833012401-45">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·114,·SHA:·37d9cd81149c05b2c715950e443dc9792acd2b19e301172cc74694749ba7bd9f·...·]-44">}</span><span·class="w">567 ···················</span><span·class="p"·data-group-id="9675445434-44">{</span><span·class="p"·data-group-id="9675445434-45">[</span><span·class="n">Item</span><span·class="p"·data-group-id="9675445434-45">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·114,·SHA:·9069cdd48086880d88620d3fc839441cc070e6bd171793c1da6ef2176da35afb·...·]-44">}</span><span·class="w">
568 ···········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">568 ···········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
569 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">traverse_backup</span><span·class="p"·data-group-id="3833012401-46">(</span><span·class="n">Source</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">dummy</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·217,·SHA:·cc88f8c272fbab01290abec56f77b3c55150145156e9ac5e3651a1cd70f9b808·...·]-46">)</span><span·class="p">.</span></code></pre><h3·id="restore"·class="section-heading">569 ····</span><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">traverse_backup</span><span·class="p"·data-group-id="9675445434-46">(</span><span·class="n">Source</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">dummy</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·217,·SHA:·fb058e924dd603c7bc6f10a583240054119e52d450290be01fa9e052b5af560f·...·]-46">)</span><span·class="p">.</span></code></pre><h3·id="restore"·class="section-heading">
570 ··<a·href="#restore"·class="hover-link">570 ··<a·href="#restore"·class="hover-link">
571 ····<i·class="ri-link-m"·aria-hidden="true"></i>571 ····<i·class="ri-link-m"·aria-hidden="true"></i>
572 ··</a>572 ··</a>
573 ··<span·class="text">Restore</span>573 ··<span·class="text">Restore</span>
574 </h3>574 </h3>
575 <p>Tables·can·be·restored·online·from·a·backup·without·restarting·<code·class="inline">Mnesia</code>.·A575 <p>Tables·can·be·restored·online·from·a·backup·without·restarting·<code·class="inline">Mnesia</code>.·A
576 restore·is·performed·with·the·function576 restore·is·performed·with·the·function
Offset 706, 15 lines modifiedOffset 706, 15 lines modified
706 ······<p·class="built-using">706 ······<p·class="built-using">
707 ········Built·using707 ········Built·using
708 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the708 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
709 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>709 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
710 ······</p>710 ······</p>
711 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>711 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
712 ····</footer>712 ····</footer>
713 ··</div>713 ··</div>
714 </main>714 </main>
715 </div>715 </div>
716 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>716 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
717 <script>717 <script>
718 ··document.addEventListener("DOMContentLoaded",·function·()·{718 ··document.addEventListener("DOMContentLoaded",·function·()·{
823 B
html2text {}
Max HTML report size reached
1.63 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_chap8.html
    
Offset 187, 15 lines modifiedOffset 187, 15 lines modified
187 ······<p·class="built-using">187 ······<p·class="built-using">
188 ········Built·using188 ········Built·using
189 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the189 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
190 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>190 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
191 ······</p>191 ······</p>
192 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>192 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
193 ····</footer>193 ····</footer>
194 ··</div>194 ··</div>
195 </main>195 </main>
196 </div>196 </div>
197 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>197 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
198 <script>198 <script>
199 ··document.addEventListener("DOMContentLoaded",·function·()·{199 ··document.addEventListener("DOMContentLoaded",·function·()·{
812 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_frag_hash.html
    
Offset 409, 15 lines modifiedOffset 409, 15 lines modified
409 ······<p·class="built-using">409 ······<p·class="built-using">
410 ········Built·using410 ········Built·using
411 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the411 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
412 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>412 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
413 ······</p>413 ······</p>
414 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>414 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
415 ····</footer>415 ····</footer>
416 ··</div>416 ··</div>
417 </main>417 </main>
418 </div>418 </div>
419 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>419 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
420 <script>420 <script>
421 ··document.addEventListener("DOMContentLoaded",·function·()·{421 ··document.addEventListener("DOMContentLoaded",·function·()·{
690 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_overview.html
    
Offset 239, 15 lines modifiedOffset 239, 15 lines modified
239 ······<p·class="built-using">239 ······<p·class="built-using">
240 ········Built·using240 ········Built·using
241 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the241 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
242 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>242 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
243 ······</p>243 ······</p>
244 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>244 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
245 ····</footer>245 ····</footer>
246 ··</div>246 ··</div>
247 </main>247 </main>
248 </div>248 </div>
249 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>249 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
250 <script>250 <script>
251 ··document.addEventListener("DOMContentLoaded",·function·()·{251 ··document.addEventListener("DOMContentLoaded",·function·()·{
705 B
html2text {}
Max HTML report size reached
5.12 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/mnesia_registry.html
    
Offset 254, 16 lines modifiedOffset 254, 16 lines modified
254 ··········<pre·translate="no"><span·class="attribute">-spec</span>·create_table(Tab·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),·Opt·::·[{<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()}])·->·ok.</pre>254 ··········<pre·translate="no"><span·class="attribute">-spec</span>·create_table(Tab·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),·Opt·::·[{<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()}])·->·ok.</pre>
  
255 ······</div>255 ······</div>
  
256 <blockquote><h4·class="warning">Warning</h4><p><em>This·function·is·deprecated.·Do·not·use·it.</em></p></blockquote><p>A·wrapper·function·for·<a·href="mnesia.html#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>,·which·creates·a·table·(if·there256 <blockquote><h4·class="warning">Warning</h4><p><em>This·function·is·deprecated.·Do·not·use·it.</em></p></blockquote><p>A·wrapper·function·for·<a·href="mnesia.html#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>,·which·creates·a·table·(if·there
257 is·no·existing·table)·with·an·appropriate·set·of·<code·class="inline">attributes</code>.·The·attributes257 is·no·existing·table)·with·an·appropriate·set·of·<code·class="inline">attributes</code>.·The·attributes
258 and·<code·class="inline">TabDef</code>·are·forwarded·to·<a·href="mnesia.html#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>.·For·example,·if·the·table258 and·<code·class="inline">TabDef</code>·are·forwarded·to·<a·href="mnesia.html#create_table/2"><code·class="inline">mnesia:create_table/2</code></a>.·For·example,·if·the·table
259 is·to·reside·as·<code·class="inline">disc_only_copies</code>·on·all·nodes,·a·call·looks·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">TabDef</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6003178172-1">[</span><span·class="p"·data-group-id="6003178172-2">{</span><span·class="p"·data-group-id="6003178172-3">{</span><span·class="ss">disc_only_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">node</span><span·class=[·...·truncated·by·diffoscope;·len:·318,·SHA:·ee827a35ea7611e86c085fc4a0fe7eff50bbbf784d0af67b004b21014655bd06·...·]-3">}</span><span·class="p">]</span><span·class="p">,</span><span·class="w">259 is·to·reside·as·<code·class="inline">disc_only_copies</code>·on·all·nodes,·a·call·looks·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">TabDef</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5108727706-1">[</span><span·class="p"·data-group-id="5108727706-2">{</span><span·class="p"·data-group-id="5108727706-3">{</span><span·class="ss">disc_only_copies</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">node</span><span·class=[·...·truncated·by·diffoscope;·len:·318,·SHA:·8c3acbfa9caea2afc10e2b446e9bb53cd465a2a458f19caa3044d79ba3b2683d·...·]-3">}</span><span·class="p">]</span><span·class="p">,</span><span·class="w">
260 ··········</span><span·class="nc">mnesia_registry</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="6003178172-6">(</span><span·class="ss">my_reg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabDef</span><span·class="p"·data-group-id="6003178172-6">)</span></code></pre>260 ··········</span><span·class="nc">mnesia_registry</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="5108727706-6">(</span><span·class="ss">my_reg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">TabDef</span><span·class="p"·data-group-id="5108727706-6">)</span></code></pre>
261 ··</section>261 ··</section>
262 </section>262 </section>
  
263 ····</div>263 ····</div>
264 ··</section>264 ··</section>
  
265 ····<footer·class="footer">265 ····<footer·class="footer">
Offset 284, 15 lines modifiedOffset 284, 15 lines modified
284 ······<p·class="built-using">284 ······<p·class="built-using">
285 ········Built·using285 ········Built·using
286 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the286 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
287 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>287 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
288 ······</p>288 ······</p>
289 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>289 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
290 ····</footer>290 ····</footer>
291 ··</div>291 ··</div>
292 </main>292 </main>
293 </div>293 </div>
294 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>294 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
295 <script>295 <script>
296 ··document.addEventListener("DOMContentLoaded",·function·()·{296 ··document.addEventListener("DOMContentLoaded",·function·()·{
751 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/notes.html
    
Offset 1487, 15 lines modifiedOffset 1487, 15 lines modified
1487 ······<p·class="built-using">1487 ······<p·class="built-using">
1488 ········Built·using1488 ········Built·using
1489 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1489 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1490 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1490 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1491 ······</p>1491 ······</p>
1492 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1492 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1493 ····</footer>1493 ····</footer>
1494 ··</div>1494 ··</div>
1495 </main>1495 </main>
1496 </div>1496 </div>
1497 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1497 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1498 <script>1498 <script>
1499 ··document.addEventListener("DOMContentLoaded",·function·()·{1499 ··document.addEventListener("DOMContentLoaded",·function·()·{
680 B
html2text {}
Max HTML report size reached
1.76 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-9BFFF869.js"></script>124 <script·src="dist/search_data-69A0CECD.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
464 B
html2text {}
Max HTML report size reached
629 B
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/.build
    
Offset 20, 15 lines modifiedOffset 20, 15 lines modified
20 dist/lato-latin-300-normal-YUMVEFOL.woff220 dist/lato-latin-300-normal-YUMVEFOL.woff2
21 dist/lato-latin-400-normal-W7754I4D.woff221 dist/lato-latin-400-normal-W7754I4D.woff2
22 dist/lato-latin-700-normal-2XVSBPG4.woff222 dist/lato-latin-700-normal-2XVSBPG4.woff2
23 dist/lato-latin-ext-300-normal-VPGGJKJL.woff223 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
24 dist/lato-latin-ext-400-normal-N27NCBWW.woff224 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
25 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff225 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
26 dist/remixicon-NKANDIL5.woff226 dist/remixicon-NKANDIL5.woff2
27 dist/search_data-B20F20A2.js27 dist/search_data-CBCA663E.js
28 dist/sidebar_items-20B80D35.js28 dist/sidebar_items-20B80D35.js
29 etop.html29 etop.html
30 etop_ug.html30 etop_ug.html
31 index.html31 index.html
32 introduction_ug.html32 introduction_ug.html
33 notes.html33 notes.html
34 observer.html34 observer.html
1.47 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/api-reference.html
    
Offset 209, 15 lines modifiedOffset 209, 15 lines modified
209 ······<p·class="built-using">209 ······<p·class="built-using">
210 ········Built·using210 ········Built·using
211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
213 ······</p>213 ······</p>
214 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
215 ····</footer>215 ····</footer>
216 ··</div>216 ··</div>
217 </main>217 </main>
218 </div>218 </div>
219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
220 <script>220 <script>
221 ··document.addEventListener("DOMContentLoaded",·function·()·{221 ··document.addEventListener("DOMContentLoaded",·function·()·{
602 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/cdv_cmd.html
    
Offset 178, 15 lines modifiedOffset 178, 15 lines modified
178 ······<p·class="built-using">178 ······<p·class="built-using">
179 ········Built·using179 ········Built·using
180 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the180 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
181 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>181 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
182 ······</p>182 ······</p>
183 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>183 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
184 ····</footer>184 ····</footer>
185 ··</div>185 ··</div>
186 </main>186 </main>
187 </div>187 </div>
188 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>188 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
189 <script>189 <script>
190 ··document.addEventListener("DOMContentLoaded",·function·()·{190 ··document.addEventListener("DOMContentLoaded",·function·()·{
684 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/crashdump_ug.html
    
Offset 367, 15 lines modifiedOffset 367, 15 lines modified
367 ······<p·class="built-using">367 ······<p·class="built-using">
368 ········Built·using368 ········Built·using
369 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the369 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
370 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>370 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
371 ······</p>371 ······</p>
372 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>372 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
373 ····</footer>373 ····</footer>
374 ··</div>374 ··</div>
375 </main>375 </main>
376 </div>376 </div>
377 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>377 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
378 <script>378 <script>
379 ··document.addEventListener("DOMContentLoaded",·function·()·{379 ··document.addEventListener("DOMContentLoaded",·function·()·{
749 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/crashdump_viewer.html
    
Offset 299, 15 lines modifiedOffset 299, 15 lines modified
299 ······<p·class="built-using">299 ······<p·class="built-using">
300 ········Built·using300 ········Built·using
301 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the301 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
302 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>302 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
303 ······</p>303 ······</p>
304 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>304 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
305 ····</footer>305 ····</footer>
306 ··</div>306 ··</div>
307 </main>307 </main>
308 </div>308 </div>
309 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>309 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
310 <script>310 <script>
311 ··document.addEventListener("DOMContentLoaded",·function·()·{311 ··document.addEventListener("DOMContentLoaded",·function·()·{
605 B
html2text {}
Max HTML report size reached
1.34 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/etop.html
    
Offset 430, 15 lines modifiedOffset 430, 15 lines modified
430 ······<p·class="built-using">430 ······<p·class="built-using">
431 ········Built·using431 ········Built·using
432 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the432 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
433 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>433 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
434 ······</p>434 ······</p>
435 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>435 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
436 ····</footer>436 ····</footer>
437 ··</div>437 ··</div>
438 </main>438 </main>
439 </div>439 </div>
440 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>440 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
441 <script>441 <script>
442 ··document.addEventListener("DOMContentLoaded",·function·()·{442 ··document.addEventListener("DOMContentLoaded",·function·()·{
531 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/etop_ug.html
    
Offset 269, 15 lines modifiedOffset 269, 15 lines modified
269 ······<p·class="built-using">269 ······<p·class="built-using">
270 ········Built·using270 ········Built·using
271 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the271 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
272 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>272 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
273 ······</p>273 ······</p>
274 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>274 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
275 ····</footer>275 ····</footer>
276 ··</div>276 ··</div>
277 </main>277 </main>
278 </div>278 </div>
279 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>279 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
280 <script>280 <script>
281 ··document.addEventListener("DOMContentLoaded",·function·()·{281 ··document.addEventListener("DOMContentLoaded",·function·()·{
685 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/introduction_ug.html
    
Offset 185, 15 lines modifiedOffset 185, 15 lines modified
185 ······<p·class="built-using">185 ······<p·class="built-using">
186 ········Built·using186 ········Built·using
187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
189 ······</p>189 ······</p>
190 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
191 ····</footer>191 ····</footer>
192 ··</div>192 ··</div>
193 </main>193 </main>
194 </div>194 </div>
195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
196 <script>196 <script>
197 ··document.addEventListener("DOMContentLoaded",·function·()·{197 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/notes.html
    
Offset 1146, 15 lines modifiedOffset 1146, 15 lines modified
1146 ······<p·class="built-using">1146 ······<p·class="built-using">
1147 ········Built·using1147 ········Built·using
1148 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1148 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1149 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1149 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1150 ······</p>1150 ······</p>
1151 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1151 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1152 ····</footer>1152 ····</footer>
1153 ··</div>1153 ··</div>
1154 </main>1154 </main>
1155 </div>1155 </div>
1156 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1156 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1157 <script>1157 <script>
1158 ··document.addEventListener("DOMContentLoaded",·function·()·{1158 ··document.addEventListener("DOMContentLoaded",·function·()·{
686 B
html2text {}
Max HTML report size reached
352 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/observer.epub
3.75 KB
zipinfo {}
Max HTML report size reached
77.7 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
250 KB
OEBPS/ttb_ug.xhtml
Max HTML report size reached
19.6 KB
OEBPS/ttb.xhtml
Max HTML report size reached
1.24 KB
OEBPS/content.opf
1.2 KB
OEBPS/content.opf
Max HTML report size reached
1.29 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/observer.html
    
Offset 385, 15 lines modifiedOffset 385, 15 lines modified
385 ······<p·class="built-using">385 ······<p·class="built-using">
386 ········Built·using386 ········Built·using
387 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the387 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
388 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>388 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
389 ······</p>389 ······</p>
390 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>390 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
391 ····</footer>391 ····</footer>
392 ··</div>392 ··</div>
393 </main>393 </main>
394 </div>394 </div>
395 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>395 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
396 <script>396 <script>
397 ··document.addEventListener("DOMContentLoaded",·function·()·{397 ··document.addEventListener("DOMContentLoaded",·function·()·{
478 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/observer_app.html
    
Offset 185, 15 lines modifiedOffset 185, 15 lines modified
185 ······<p·class="built-using">185 ······<p·class="built-using">
186 ········Built·using186 ········Built·using
187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
189 ······</p>189 ······</p>
190 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
191 ····</footer>191 ····</footer>
192 ··</div>192 ··</div>
193 </main>193 </main>
194 </div>194 </div>
195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
196 <script>196 <script>
197 ··document.addEventListener("DOMContentLoaded",·function·()·{197 ··document.addEventListener("DOMContentLoaded",·function·()·{
686 B
html2text {}
Max HTML report size reached
1.62 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/observer_ug.html
    
Offset 331, 15 lines modifiedOffset 331, 15 lines modified
331 ······<p·class="built-using">331 ······<p·class="built-using">
332 ········Built·using332 ········Built·using
333 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the333 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
334 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>334 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
335 ······</p>335 ······</p>
336 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>336 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
337 ····</footer>337 ····</footer>
338 ··</div>338 ··</div>
339 </main>339 </main>
340 </div>340 </div>
341 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>341 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
342 <script>342 <script>
343 ··document.addEventListener("DOMContentLoaded",·function·()·{343 ··document.addEventListener("DOMContentLoaded",·function·()·{
802 B
html2text {}
Max HTML report size reached
1.76 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-B20F20A2.js"></script>124 <script·src="dist/search_data-CBCA663E.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
464 B
html2text {}
Max HTML report size reached
21.0 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/ttb.html
    
Offset 1904, 21 lines modifiedOffset 1904, 21 lines modified
1904 returns·a·match·specification,·which·turns·on·sequential·tracing·with·the1904 returns·a·match·specification,·which·turns·on·sequential·tracing·with·the
1905 specified·<code·class="inline">Flags</code>.</p><p>This·match·specification·can·be·specified·as·the·last·argument·to·<code·class="inline">tp</code>·or·<code·class="inline">tpl</code>.1905 specified·<code·class="inline">Flags</code>.</p><p>This·match·specification·can·be·specified·as·the·last·argument·to·<code·class="inline">tp</code>·or·<code·class="inline">tpl</code>.
1906 The·activated·<code·class="inline">Item</code>·then·becomes·a·<em>trigger</em>·for·sequential·tracing.·This·means1906 The·activated·<code·class="inline">Item</code>·then·becomes·a·<em>trigger</em>·for·sequential·tracing.·This·means
1907 that·if·the·item·is·called·on·a·process·with·trace·flag·<code·class="inline">call</code>·set,·the·process1907 that·if·the·item·is·called·on·a·process·with·trace·flag·<code·class="inline">call</code>·set,·the·process
1908 is·&quot;contaminated&quot;·with·token·<code·class="inline">seq_trace</code>.</p><p>If·<code·class="inline">Flags·=·all</code>,·all·possible·flags·are·set.</p><p>The·possible·values·for·<code·class="inline">SeqTraceFlag</code>·are·available·in·<a·href="../../../../lib/kernel-10.0.1/doc/html/seq_trace.html"><code·class="inline">seq_trace</code></a>.</p><p>For·a·description·of·the·<code·class="inline">match_spec()</code>·syntax,·see·section1908 is·&quot;contaminated&quot;·with·token·<code·class="inline">seq_trace</code>.</p><p>If·<code·class="inline">Flags·=·all</code>,·all·possible·flags·are·set.</p><p>The·possible·values·for·<code·class="inline">SeqTraceFlag</code>·are·available·in·<a·href="../../../../lib/kernel-10.0.1/doc/html/seq_trace.html"><code·class="inline">seq_trace</code></a>.</p><p>For·a·description·of·the·<code·class="inline">match_spec()</code>·syntax,·see·section
1909 <a·href="../../../../erts-15.0.1/doc/html/match_spec.html"><code·class="inline">Match·Specifications·in·Erlang</code></a>·in·ERTS,·which1909 <a·href="../../../../erts-15.0.1/doc/html/match_spec.html"><code·class="inline">Match·Specifications·in·Erlang</code></a>·in·ERTS,·which
1910 explains·the·general·match·specification·&quot;language&quot;.</p><blockquote><h4·class="info">Note</h4><p>The·<em>system·tracer</em>·for·sequential·tracing·is·automatically·initiated·by·<code·class="inline">ttb</code>1910 explains·the·general·match·specification·&quot;language&quot;.</p><blockquote><h4·class="info">Note</h4><p>The·<em>system·tracer</em>·for·sequential·tracing·is·automatically·initiated·by·<code·class="inline">ttb</code>
1911 when·a·trace·port·is·started·with·<code·class="inline">ttb:tracer/0,1,2</code>.</p></blockquote><p>An·example·of·how·to·use·function·<code·class="inline">seq_trigger_ms/0,1</code>·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(tiger@durin)5&gt;·</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">tracer</span><span·class="p"·data-group-id="3324705041-1">(</span><span·class="p"·data-group-id="3324705041-1">)</span><span·class="p">.</span><span·class="w">1911 when·a·trace·port·is·started·with·<code·class="inline">ttb:tracer/0,1,2</code>.</p></blockquote><p>An·example·of·how·to·use·function·<code·class="inline">seq_trigger_ms/0,1</code>·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">(tiger@durin)5&gt;·</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">tracer</span><span·class="p"·data-group-id="5830298454-1">(</span><span·class="p"·data-group-id="5830298454-1">)</span><span·class="p">.</span><span·class="w">
1912 </span><span·class="p"·data-group-id="3324705041-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3324705041-3">[</span><span·class="ss">tiger@durin</span><span·class="p"·data-group-id="3324705041-3">]</span><span·class="p"·data-group-id="3324705041-2">}</span><span·class="gp·unselectable">1912 </span><span·class="p"·data-group-id="5830298454-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5830298454-3">[</span><span·class="ss">tiger@durin</span><span·class="p"·data-group-id="5830298454-3">]</span><span·class="p"·data-group-id="5830298454-2">}</span><span·class="gp·unselectable">
1913 (tiger@durin)6&gt;·</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">p</span><span·class="p"·data-group-id="3324705041-4">(</span><span·class="ss">all</span><span·class="p">,</span><span·class="ss">call</span><span·class="p"·data-group-id="3324705041-4">)</span><span·class="p">.</span><span·class="w">1913 (tiger@durin)6&gt;·</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">p</span><span·class="p"·data-group-id="5830298454-4">(</span><span·class="ss">all</span><span·class="p">,</span><span·class="ss">call</span><span·class="p"·data-group-id="5830298454-4">)</span><span·class="p">.</span><span·class="w">
1914 </span><span·class="p"·data-group-id="3324705041-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3324705041-6">{</span><span·class="p"·data-group-id="3324705041-7">[</span><span·class="ss">all</span><span·class="p"·data-group-id="3324705041-7">]</spa[·...·truncated·by·diffoscope;·len:·254,·SHA:·4ffe6cca58d9420ad4a5177b9108d41184e0743c4c496284dc2e466af5de0ce3·...·]-5">}</span><span·class="gp·unselectable">1914 </span><span·class="p"·data-group-id="5830298454-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5830298454-6">{</span><span·class="p"·data-group-id="5830298454-7">[</span><span·class="ss">all</span><span·class="p"·data-group-id="5830298454-7">]</spa[·...·truncated·by·diffoscope;·len:·254,·SHA:·1e4f5cfd744f7074fb4887c337d8f2cb008c56d71852bbe3325bbc33f40021e4·...·]-5">}</span><span·class="gp·unselectable">
1915 (tiger@durin)7&gt;·</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">tp</span><span·class="p"·data-group-id="3324705041-9">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="ss">func</span><span·class="p">,</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">seq_trigger_ms</span><span·class="p"·data-group-id="3324705041-[·...·truncated·by·diffoscope;·len:·107,·SHA:·9d03ac69540052b184f0c73f4c790cb6b8db0a5ee00c7cfe82a38d8f733ad76d·...·]-9">)</span><span·class="p">.</span><span·class="w">1915 (tiger@durin)7&gt;·</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">tp</span><span·class="p"·data-group-id="5830298454-9">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="ss">func</span><span·class="p">,</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">seq_trigger_ms</span><span·class="p"·data-group-id="5830298454-[·...·truncated·by·diffoscope;·len:·107,·SHA:·195537248be00e7dae56a465f7d67c78e25f1661b9d60e5dc92c0ac6de29d690·...·]-9">)</span><span·class="p">.</span><span·class="w">
1916 </span><span·class="p"·data-group-id="3324705041-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3324705041-12">[</span><span·class="p"·data-group-id="3324705041-13">{</span><span·class="ss">matched</span><span·class="p">,</span><span·class="mi">1</[·...·truncated·by·diffoscope;·len:·364,·SHA:·8b9d1d172a7a6b157e238f36702019b0cdb15cd3d25f8f418fbe43612b3481ef·...·]-11">}</span><span·class="w">1916 </span><span·class="p"·data-group-id="5830298454-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5830298454-12">[</span><span·class="p"·data-group-id="5830298454-13">{</span><span·class="ss">matched</span><span·class="p">,</span><span·class="mi">1</[·...·truncated·by·diffoscope;·len:·364,·SHA:·7c39bcc97f65e2cb872bcf54b82c5b0acd4a7d8d9955ab3e0d86d8dbaaa406b0·...·]-11">}</span><span·class="w">
1917 </span><span·class="p"·data-group-id="3324705041-15">(</span><span·class="ss">tiger@durin</span><span·class="p"·data-group-id="3324705041-15">)</span><span·class="mi">8</span><span·class="o">&gt;</span></code></pre><p>Whenever·<code·class="inline">mod:func(...)</code>·is·called·after·this,·token·<code·class="inline">seq_trace</code>·is·set·on·the1917 </span><span·class="p"·data-group-id="5830298454-15">(</span><span·class="ss">tiger@durin</span><span·class="p"·data-group-id="5830298454-15">)</span><span·class="mi">8</span><span·class="o">&gt;</span></code></pre><p>Whenever·<code·class="inline">mod:func(...)</code>·is·called·after·this,·token·<code·class="inline">seq_trace</code>·is·set·on·the
1918 executing·process.</p>1918 executing·process.</p>
1919 ··</section>1919 ··</section>
1920 </section>1920 </section>
1921 <section·class="detail"·id="start_trace/4">1921 <section·class="detail"·id="start_trace/4">
  
1922 ··<div·class="detail-header">1922 ··<div·class="detail-header">
1923 ····<a·href="#start_trace/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1923 ····<a·href="#start_trace/4"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1949, 22 lines modifiedOffset 1949, 22 lines modified
1949 ·························TracerOpts·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),1949 ·························TracerOpts·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),
1950 ·························Result·::·{ok,·[{<a·href="#t:item/0">item</a>(),·<a·href="#t:match_desc/0">match_desc</a>()}]}.</pre>1950 ·························Result·::·{ok,·[{<a·href="#t:item/0">item</a>(),·<a·href="#t:match_desc/0">match_desc</a>()}]}.</pre>
  
1951 ······</div>1951 ······</div>
  
1952 <p>start_trace(Nodes,·Patterns,·FlagSpec,·Opts)·-&gt;·Result</p><p>This·function·is·a·shortcut·allowing·to·start·a·trace·with·one·command.·Each1952 <p>start_trace(Nodes,·Patterns,·FlagSpec,·Opts)·-&gt;·Result</p><p>This·function·is·a·shortcut·allowing·to·start·a·trace·with·one·command.·Each
1953 tuple·in·<code·class="inline">Patterns</code>·is·converted·to·a·list,·which·in·turn·is·passed·to1953 tuple·in·<code·class="inline">Patterns</code>·is·converted·to·a·list,·which·in·turn·is·passed·to
1954 <code·class="inline">ttb:tpl/2,3,4</code>.</p><p>The·call:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">start_trace</span><span·class="p"·data-group-id="8796281225-1">(</span><span·class="p"·data-group-id="8796281225-2">[</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OtherNode</span><span·class="p"·data-group-id="8796281225-2">]</span><span·class="p">,</span><span·class="w">1954 <code·class="inline">ttb:tpl/2,3,4</code>.</p><p>The·call:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">start_trace</span><span·class="p"·data-group-id="9319499508-1">(</span><span·class="p"·data-group-id="9319499508-2">[</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OtherNode</span><span·class="p"·data-group-id="9319499508-2">]</span><span·class="p">,</span><span·class="w">
1955 ··················</span><span·class="p"·data-group-id="8796281225-3">[</span><span·class="p"·data-group-id="8796281225-4">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·498,·SHA:·efc6a6213e20ede3764fe070fd97d6701a6d269454a03fa657b83d6b3408dea2·...·]-3">]</span><span·class="p">,</span><span·class="w">1955 ··················</span><span·class="p"·data-group-id="9319499508-3">[</span><span·class="p"·data-group-id="9319499508-4">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·498,·SHA:·68f062ad5521b018539240e4c843cb05ea2f8b45088621ed9ed7845db03513a0·...·]-3">]</span><span·class="p">,</span><span·class="w">
1956 ··················</span><span·class="p"·data-group-id="8796281225-7">{</span><span·class="ss">all</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">call</span><span·class="p"·data-group-id="8796281225-7">}</span><span·class="p">,</span><span·class="w">1956 ··················</span><span·class="p"·data-group-id="9319499508-7">{</span><span·class="ss">all</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">call</span><span·class="p"·data-group-id="9319499508-7">}</span><span·class="p">,</span><span·class="w">
1957 ··················</span><span·class="p"·data-group-id="8796281225-8">[</span><span·class="p"·data-group-id="8796281225-9">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="8796281225-9">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·1095,·SHA:·3bb2336855c6731a0b2024c39013f61fbc9ee21b80a4c668eaac9bb12a51aa3e·...·]-2">]</span><span·class="p">,</span><span·class="w">1957 ··················</span><span·class="p"·data-group-id="9319499508-8">[</span><span·class="p"·data-group-id="9319499508-9">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="9319499508-9">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·1095,·SHA:·6a5eaeefa8048f8de62a8ff04dabdf229dd6415de9c8002282cab417e747e717·...·]-2">]</span><span·class="p">,</span><span·class="w">
1958 ··················</span><span·class="p"·data-group-id="6786780276-3">[</span><span·class="p"·data-group-id="6786780276-4">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="6786780276-4">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·588,·SHA:·b6afd2fea8fcffe844e76ba0a865cd077e2939fef509e55c76db9d0897376c23·...·]-1">)</span><span·class="p">,</span><span·class="w">1958 ··················</span><span·class="p"·data-group-id="9939444108-3">[</span><span·class="p"·data-group-id="9939444108-4">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">File</span><span·class="p"·data-group-id="9939444108-4">}</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·588,·SHA:·eed4d771cda6bf8e02202e4a9f59468cdbd6b130a4c3351359012b5d3c49b4c0·...·]-1">)</span><span·class="p">,</span><span·class="w">
1959 </span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">tpl</span><span·class="p"·data-group-id="6786780276-7">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6786780276-8">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·e2548e9efe72ff94739daa9a9a3cfa2679f3f0ea3fb4d5f66127418ff0369591·...·]-7">)</span><span·class="p">,</span><span·class="w">1959 </span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">tpl</span><span·class="p"·data-group-id="9939444108-7">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9939444108-8">[</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·6e2e77d26cd139eadb67af4a1200d484931e3680c0561ddf722039c6b4f239b2·...·]-7">)</span><span·class="p">,</span><span·class="w">
1960 </span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">tpl</span><span·class="p"·data-group-id="6786780276-9">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·138,·SHA:·e30562b163a4e43a8419ad014e7a8315acf6675c5421dad415c3a756ba07deb4·...·]-9">)</span><span·class="p">,</span><span·class="w">1960 </span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">tpl</span><span·class="p"·data-group-id="9939444108-9">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·138,·SHA:·df3ca812ad7fd0688bcd6724a16ee8ae44f2f205bf995593104a43c89a4ccd80·...·]-9">)</span><span·class="p">,</span><span·class="w">
1961 </span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">p</span><span·class="p"·data-group-id="6786780276-11">(</span><span·class="ss">all</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">call</span><span·class="p"·data-group-id="6786780276-11">)</span><span·class="p">.</span></code></pre>1961 </span><span·class="nc">ttb</span><span·class="p">:</span><span·class="nf">p</span><span·class="p"·data-group-id="9939444108-11">(</span><span·class="ss">all</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">call</span><span·class="p"·data-group-id="9939444108-11">)</span><span·class="p">.</span></code></pre>
1962 ··</section>1962 ··</section>
1963 </section>1963 </section>
1964 <section·class="detail"·id="stop/0">1964 <section·class="detail"·id="stop/0">
  
1965 ··<div·class="detail-header">1965 ··<div·class="detail-header">
1966 ····<a·href="#stop/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1966 ····<a·href="#stop/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1967 ······<i·class="ri-link-m"·aria-hidden="true"></i>1967 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 2528, 15 lines modifiedOffset 2528, 15 lines modified
2528 ······<p·class="built-using">2528 ······<p·class="built-using">
2529 ········Built·using2529 ········Built·using
2530 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2530 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2531 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2531 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2532 ······</p>2532 ······</p>
2533 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2533 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2534 ····</footer>2534 ····</footer>
2535 ··</div>2535 ··</div>
2536 </main>2536 </main>
2537 </div>2537 </div>
2538 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2538 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2539 <script>2539 <script>
2540 ··document.addEventListener("DOMContentLoaded",·function·()·{2540 ··document.addEventListener("DOMContentLoaded",·function·()·{
666 B
html2text {}
Max HTML report size reached
251 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/ttb_ug.html
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/api-reference.html
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ······<p·class="built-using">181 ······<p·class="built-using">
182 ········Built·using182 ········Built·using
183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
185 ······</p>185 ······</p>
186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
187 ····</footer>187 ····</footer>
188 ··</div>188 ··</div>
189 </main>189 </main>
190 </div>190 </div>
191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
192 <script>192 <script>
193 ··document.addEventListener("DOMContentLoaded",·function·()·{193 ··document.addEventListener("DOMContentLoaded",·function·()·{
629 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/databases.html
    
Offset 268, 15 lines modifiedOffset 268, 15 lines modified
268 ······<p·class="built-using">268 ······<p·class="built-using">
269 ········Built·using269 ········Built·using
270 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the270 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
271 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>271 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
272 ······</p>272 ······</p>
273 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>273 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
274 ····</footer>274 ····</footer>
275 ··</div>275 ··</div>
276 </main>276 </main>
277 </div>277 </div>
278 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>278 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
279 <script>279 <script>
280 ··document.addEventListener("DOMContentLoaded",·function·()·{280 ··document.addEventListener("DOMContentLoaded",·function·()·{
749 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/error_handling.html
    
Offset 267, 15 lines modifiedOffset 267, 15 lines modified
267 ······<p·class="built-using">267 ······<p·class="built-using">
268 ········Built·using268 ········Built·using
269 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the269 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
270 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>270 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
271 ······</p>271 ······</p>
272 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>272 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
273 ····</footer>273 ····</footer>
274 ··</div>274 ··</div>
275 </main>275 </main>
276 </div>276 </div>
277 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>277 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
278 <script>278 <script>
279 ··document.addEventListener("DOMContentLoaded",·function·()·{279 ··document.addEventListener("DOMContentLoaded",·function·()·{
724 B
html2text {}
Max HTML report size reached
83.6 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/getting_started.html
    
Offset 153, 85 lines modifiedOffset 153, 85 lines modified
153 ··<span·class="text">Using·the·Erlang·API</span>153 ··<span·class="text">Using·the·Erlang·API</span>
154 </h2>154 </h2>
155 <p>The·following·dialog·within·the·Erlang·shell·illustrates·the·functionality·of155 <p>The·following·dialog·within·the·Erlang·shell·illustrates·the·functionality·of
156 the·Erlang·ODBC·interface.·The·table·used·in·the·example·does·not·have·any156 the·Erlang·ODBC·interface.·The·table·used·in·the·example·does·not·have·any
157 relevance·to·anything·that·exist·in·reality,·it·is·just·a·simple·example.·The157 relevance·to·anything·that·exist·in·reality,·it·is·just·a·simple·example.·The
158 example·was·created·using·<code·class="inline">sqlserver·7.0·with·servicepack·1</code>·as·database·and·the158 example·was·created·using·<code·class="inline">sqlserver·7.0·with·servicepack·1</code>·as·database·and·the
159 ODBC·driver·for·<code·class="inline">sqlserver</code>·with·version·<code·class="inline">2000.80.194.00</code>.</p><pre><code·class="text">·1·&gt;·odbc:start().159 ODBC·driver·for·<code·class="inline">sqlserver</code>·with·version·<code·class="inline">2000.80.194.00</code>.</p><pre><code·class="text">·1·&gt;·odbc:start().
160 ······ok</code></pre><p>Connect·to·the·database</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">2</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8499483413-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ref</span><span·class="p"·data-group-id="8499483413-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·394,·SHA:·5c6565d90e2bd00bb9b02304b5c1c7c157ed39be7a9a7cbdd6c3e44344ca7c4f·...·]-2">)</span><span·class="p">.</span><span·class="w">160 ······ok</code></pre><p>Connect·to·the·database</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">2</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6068147519-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ref</span><span·class="p"·data-group-id="6068147519-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·394,·SHA:·9705b001012d6af4c371825c7d94dab366aa335f369d8659a7a95c83d268a61d·...·]-2">)</span><span·class="p">.</span><span·class="w">
161 ······</span><span·class="p"·data-group-id="8499483413-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.342</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="8499483413-4">}</span></code></pre><p>Create·a·table</p><pre><code·class="text">·3·&gt;·odbc:sql_query(Ref,·&quot;CREATE·TABLE·EMPLOYEE·(NR·integer,161 ······</span><span·class="p"·data-group-id="6068147519-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.342</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="6068147519-4">}</span></code></pre><p>Create·a·table</p><pre><code·class="text">·3·&gt;·odbc:sql_query(Ref,·&quot;CREATE·TABLE·EMPLOYEE·(NR·integer,
162 ······FIRSTNAME··char·varying(20),·LASTNAME··char·varying(20),·GENDER·char(1),162 ······FIRSTNAME··char·varying(20),·LASTNAME··char·varying(20),·GENDER·char(1),
163 ······PRIMARY·KEY(NR))&quot;).163 ······PRIMARY·KEY(NR))&quot;).
164 ······{updated,undefined}</code></pre><p>Insert·some·data</p><pre><code·class="text">·4·&gt;·odbc:sql_query(Ref,·&quot;INSERT·INTO·EMPLOYEE·VALUES(1,·'Jane',·'Doe',·'F')&quot;).164 ······{updated,undefined}</code></pre><p>Insert·some·data</p><pre><code·class="text">·4·&gt;·odbc:sql_query(Ref,·&quot;INSERT·INTO·EMPLOYEE·VALUES(1,·'Jane',·'Doe',·'F')&quot;).
165 ······{updated,1}</code></pre><p>Check·what·data·types·the·database·assigned·for·the·columns.·Hopefully·this·is165 ······{updated,1}</code></pre><p>Check·what·data·types·the·database·assigned·for·the·columns.·Hopefully·this·is
166 not·a·surprise,·some·times·it·can·be!·These·are·the·data·types·that·you·should166 not·a·surprise,·some·times·it·can·be!·These·are·the·data·types·that·you·should
167 use·if·you·want·to·do·a·parameterized·query.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">describe_table</span><span·class="p"·data-group-id="6528635207-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;EMPLOYEE&quot;</span><span·class="p"·data-group-id="6528635207-1">)</span><span·class="p">.</span><span·class="w">167 use·if·you·want·to·do·a·parameterized·query.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">describe_table</span><span·class="p"·data-group-id="5680356626-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;EMPLOYEE&quot;</span><span·class="p"·data-group-id="5680356626-1">)</span><span·class="p">.</span><span·class="w">
168 ······</span><span·class="p"·data-group-id="6528635207-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6528635207-3">[</span><span·class="p"·data-group-id="6528635207-4">{</span><span·class="s">&quot;NR&quot;</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·107,·SHA:·fb295517ddab636e7118db9f48711915afe22b1cb32ad1fc59c79eccd9a014eb·...·]-4">}</span><span·class="p">,</span><span·class="w">168 ······</span><span·class="p"·data-group-id="5680356626-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5680356626-3">[</span><span·class="p"·data-group-id="5680356626-4">{</span><span·class="s">&quot;NR&quot;</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·107,·SHA:·057c37247e4d5d1f53c0f9f16a5619b533d71677371d7aa673a32d659611f39e·...·]-4">}</span><span·class="p">,</span><span·class="w">
169 ············</span><span·class="p"·data-group-id="6528635207-5">{</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6528635207-6">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="6528635207-6">}</span><span·class="p"·data-group-id="6528635207-5">}</span><span·class="p">,</span><span·class="w"> 
170 ············</span><span·class="p"·data-group-id="6528635207-7">{</span><span·class="s">&quot;LASTNAME&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6528635207-8">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·118,·SHA:·6fbda29b5aa821d3bfbbe413634999bc9b9130fabb7de207dcb5bc723aa3eacd·...·]</span><span·class="w">169 ············</span><span·class="p"·data-group-id="5680356626-5">{</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5680356626-6">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·143,·SHA:·6652eee938615116b5c34107b9d09982b03a893e1ad569ecd529a4d62985c111·...·]</span><span·class="w">
 170 ············</span><span·class="p"·data-group-id="5680356626-7">{</span><span·class="s">&quot;LASTNAME&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5680356626-8">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="5680356626-8">}</span><span·class="p"·data-group-id="5680356626-7">}</span><span·class="w">
171 ············</span><span·class="p"·data-group-id="6528635207-9">{</span><span·class="s">&quot;GENDER&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6528635207-10">{</span><span·class="ss">sql_char</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·636,·SHA:·7615c8429190d58cf63f9340d89b261d056143877ce068ac78e8cbe21428b0b3·...·]-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="s">&quot;INSERT·INTO·EMPLOYEE·(NR,·FIRSTNAME,·&quot;</span><span·class="w">171 ············</span><span·class="p"·data-group-id="5680356626-9">{</span><span·class="s">&quot;GENDER&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5680356626-10">{</span><span·class="ss">sql_char</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·636,·SHA:·0052c41650b967e8bf30070dd85bed63202c68e7d3741f7c007f842d6f9677d2·...·]-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="s">&quot;INSERT·INTO·EMPLOYEE·(NR,·FIRSTNAME,·&quot;</span><span·class="w">
172 ··················</span><span·class="s">&quot;LASTNAME,·GENDER)·VALUES(?,·?,·?,·?)&quot;</span><span·class="p">,</span><span·class="w">172 ··················</span><span·class="s">&quot;LASTNAME,·GENDER)·VALUES(?,·?,·?,·?)&quot;</span><span·class="p">,</span><span·class="w">
173 ···················</span><span·class="p"·data-group-id="5392268457-2">[</span><span·class="p"·data-group-id="5392268457-3">{</span><span·class="ss">sql_integer</span><span·class="p">,</span><span·class="p"·data-group-id="5392268457-4">[</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</[·...·truncated·by·diffoscope;·len:·344,·SHA:·5928831a56cd10e69e3525c76db5bff65f5d316599c7c5e4094df16314b0dcf8·...·]-3">}</span><span·class="p">,</span><span·class="w">173 ···················</span><span·class="p"·data-group-id="1739623471-2">[</span><span·class="p"·data-group-id="1739623471-3">{</span><span·class="ss">sql_integer</span><span·class="p">,</span><span·class="p"·data-group-id="1739623471-4">[</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</[·...·truncated·by·diffoscope;·len:·344,·SHA:·d4d19635fdaed4060c25c8a3ef49e999594b2319c9bf4befe7a358c261c21d71·...·]-3">}</span><span·class="p">,</span><span·class="w">
174 ····················</span><span·class="p"·data-group-id="5392268457-5">{</span><span·class="p"·data-group-id="5392268457-6">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="5392268457-6">}</span><span·class="p">,</span><span·class="w">174 ····················</span><span·class="p"·data-group-id="1739623471-5">{</span><span·class="p"·data-group-id="1739623471-6">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="1739623471-6">}</span><span·class="p">,</span><span·class="w">
175 ·····························</span><span·class="p"·data-group-id="5392268457-7">[</span><span·class="s">&quot;John&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Ross&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="w">175 ·····························</span><span·class="p"·data-group-id="1739623471-7">[</span><span·class="s">&quot;John&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Ross&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="w">
176 ·····························</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Louise&quot;</span><span·class="p"·data-group-id="5392268457-7">]</span><span·class="p"·data-group-id="5392268457-5">}</span><span·class="p">,</span><span·class="w">176 ·····························</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Louise&quot;</span><span·class="p"·data-group-id="1739623471-7">]</span><span·class="p"·data-group-id="1739623471-5">}</span><span·class="p">,</span><span·class="w">
177 ···················</span><span·class="p"·data-group-id="5392268457-8">{</span><span·class="p"·data-group-id="5392268457-9">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="5392268457-9">}</span><span·class="p">,</span><span·class="w">177 ···················</span><span·class="p"·data-group-id="1739623471-8">{</span><span·class="p"·data-group-id="1739623471-9">{</span><span·class="ss">sql_varchar</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">20</span><span·class="p"·data-group-id="1739623471-9">}</span><span·class="p">,</span><span·class="w">
178 ·····························</span><span·class="p"·data-group-id="5392268457-10">[</span><span·class="s">&quot;Doe&quot;</span><span·class="p">,</span><span·class="s">&quot;Geller&quot;</span><span·class="p">,</span><span·class="s">&quot;Geller&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Green&quot;</span><span·class="p">,</span><span·class="w">178 ·····························</span><span·class="p"·data-group-id="1739623471-10">[</span><span·class="s">&quot;Doe&quot;</span><span·class="p">,</span><span·class="s">&quot;Geller&quot;</span><span·class="p">,</span><span·class="s">&quot;Geller&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Green&quot;</span><span·class="p">,</span><span·class="w">
179 ······························</span><span·class="s">&quot;Halliwell&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Halliwell&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Lane&quot;</span><span·class="p"·data-group-id="5392268457-10">]</span><span·class="p"·data-group-id="5392268457-8">}</span><span·class="p">,</span><span·class="w">179 ······························</span><span·class="s">&quot;Halliwell&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Halliwell&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Lane&quot;</span><span·class="p"·data-group-id="1739623471-10">]</span><span·class="p"·data-group-id="1739623471-8">}</span><span·class="p">,</span><span·class="w">
180 ···················</span><span·class="p"·data-group-id="5392268457-11">{</span><span·class="p"·data-group-id="5392268457-12">{</span><span·class="ss">sql_char</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="5392268457-12">}</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·680,·SHA:·c5c58305a946d45e5ab8a1df58cd3aed51c7e9af45aab50352cb1ebf098f7807·...·]-1">)</span><span·class="p">.</span><span·class="w">180 ···················</span><span·class="p"·data-group-id="1739623471-11">{</span><span·class="p"·data-group-id="1739623471-12">{</span><span·class="ss">sql_char</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="1739623471-12">}</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·680,·SHA:·e9e0647b82b77ce4e4b7ff5431d9dae630367366ff1976d2ac5c36f07d88dc81·...·]-1">)</span><span·class="p">.</span><span·class="w">
181 ······</span><span·class="p"·data-group-id="5392268457-14">{</span><span·class="ss">updated</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">7</span><span·class="p"·data-group-id="5392268457-14">}</span></code></pre><p>Fetch·all·data·in·the·table·employee</p><pre><code·class="m[·...·truncated·by·diffoscope;·len:·439,·SHA:·2207f5866107517315cfad010408d82fc65e64f9c558d4b51da261c20d5a079e·...·]-1">)</span><span·class="p">.</span><span·class="w">181 ······</span><span·class="p"·data-group-id="1739623471-14">{</span><span·class="ss">updated</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">7</span><span·class="p"·data-group-id="1739623471-14">}</span></code></pre><p>Fetch·all·data·in·the·table·employee</p><pre><code·class="m[·...·truncated·by·diffoscope;·len:·439,·SHA:·3f23106d553a0c122568a34bcfba800b049ba36a28afcb3cd1f369e9ec420ae4·...·]-1">)</span><span·class="p">.</span><span·class="w">
182 ····</span><span·class="p"·data-group-id="1966855010-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="1966855010-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·3bd4d8aac6a62e8265c4e1d701a96d6da44ac014af94a97a5cb8bf0500883090·...·]-3">]</span><span·class="p">,</span><span·class="w">182 ····</span><span·class="p"·data-group-id="7454914227-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="7454914227-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·b76cd24eeaa7d5ce43a07cd45efa3a767a5cb02949af2b52017b5dce595014a1·...·]-3">]</span><span·class="p">,</span><span·class="w">
183 ··········</span><span·class="p"·data-group-id="1966855010-4">[</span><span·class="p"·data-group-id="1966855010-5">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="s">&quot;Doe&quot;</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·70,·SHA:·fe7ef7da7bfa4b054a2a883d9f1d70237d35280c2a0a535b3a6a5a5176e3959b·...·]-5">}</span><span·class="p">,</span><span·class="w">183 ··········</span><span·class="p"·data-group-id="7454914227-4">[</span><span·class="p"·data-group-id="7454914227-5">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="s">&quot;Doe&quot;</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·70,·SHA:·44c0352d5b2a9a036bbab177aab974b6396779c491110e65e7c30067f1d2de2a·...·]-5">}</span><span·class="p">,</span><span·class="w">
184 ···········</span><span·class="p"·data-group-id="1966855010-6">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="s">&quot;John&quot;</span><span·class="p">,</span><span·class="s">&quot;Doe&quot;</span><span·class="p">,</span><span·class="s">&quot;M&quot;</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·80bb0b9c204b595d00abc541bb7349a5a12e01a599ea6cf8c34f41454f13fb01·...·]-6">}</span><span·class="p">,</span><span·class="w">184 ···········</span><span·class="p"·data-group-id="7454914227-6">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="s">&quot;John&quot;</span><span·class="p">,</span><span·class="s">&quot;Doe&quot;</span><span·class="p">,</span><span·class="s">&quot;M&quot;</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·0da99b1904adf5506e715fbfd6057a1062042aa0451c47f2e8e1676a848c7810·...·]-6">}</span><span·class="p">,</span><span·class="w">
185 ···········</span><span·class="p"·data-group-id="1966855010-7">{</span><span·class="mi">3</span><span·class="p">,</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="s">&quot;Geller&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·5f7f4595b86973ab2f7d7d02a0ab0b82aa2d7aee1cba802a9c5afadbdea5b1e1·...·]-7">}</span><span·class="p">,</span><span·class="w">185 ···········</span><span·class="p"·data-group-id="7454914227-7">{</span><span·class="mi">3</span><span·class="p">,</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="s">&quot;Geller&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·96d8ef0cf2ce94e98a8217d3fef48db8eff72fae101a1f90c41c8a310feda76b·...·]-7">}</span><span·class="p">,</span><span·class="w">
186 ···········</span><span·class="p"·data-group-id="1966855010-8">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="s">&quot;Ross&quot;</span><span·class="p">,</span><span·class="s">&quot;Geller&quot;</span><span·class="p">,</span><span·class="s">&quot;M&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·7396b430335a86d21c325a137cc661e753cc63047af94484c74e48b35073f0d4·...·]-8">}</span><span·class="p">,</span><span·class="w">186 ···········</span><span·class="p"·data-group-id="7454914227-8">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="s">&quot;Ross&quot;</span><span·class="p">,</span><span·class="s">&quot;Geller&quot;</span><span·class="p">,</span><span·class="s">&quot;M&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·1a7cc69db7a24d4fadf9d502c8eba43bdf0a9ba6bf9613fab4992696f6465fe3·...·]-8">}</span><span·class="p">,</span><span·class="w">
187 ···········</span><span·class="p"·data-group-id="1966855010-9">{</span><span·class="mi">5</span><span·class="p">,</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="s">&quot;Green&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·d812f89ecd0296ffeb266596d169d5e015c9fa8064213cee6d9940cd2f63189b·...·]-9">}</span><span·class="p">,</span><span·class="w">187 ···········</span><span·class="p"·data-group-id="7454914227-9">{</span><span·class="mi">5</span><span·class="p">,</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="s">&quot;Green&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·53a1c84c744d4466c9703eec95cb8f2f78251fd78ae6fb5d3afbb7388476b749·...·]-9">}</span><span·class="p">,</span><span·class="w">
188 ···········</span><span·class="p"·data-group-id="1966855010-10">{</span><span·class="mi">6</span><span·class="p">,</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="s">&quot;Halliwell&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·22f4ecfc05c90394f3cdd9c84dc5ce5a859ecd5270c32a35b8ee71d891965fb2·...·]-10">}</span><span·class="p">,</span><span·class="w">188 ···········</span><span·class="p"·data-group-id="7454914227-10">{</span><span·class="mi">6</span><span·class="p">,</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="s">&quot;Halliwell&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·63305532dbc4a196d7c18f4509476b73d00e181e9c26d03249da6c502416f236·...·]-10">}</span><span·class="p">,</span><span·class="w">
189 ···········</span><span·class="p"·data-group-id="1966855010-11">{</span><span·class="mi">7</span><span·class="p">,</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="s">&quot;Halliwell&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·b3774bd63257df11ce19302d44af941d8df7daa8b3eb79f81fbf405904325b49·...·]-11">}</span><span·class="p">,</span><span·class="w">189 ···········</span><span·class="p"·data-group-id="7454914227-11">{</span><span·class="mi">7</span><span·class="p">,</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="s">&quot;Halliwell&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·d7d01e5fa2d366e2bfe36f742eb83656d1949e7f163941a9b93282f66798fe96·...·]-11">}</span><span·class="p">,</span><span·class="w">
190 ···········</span><span·class="p"·data-group-id="1966855010-12">{</span><span·class="mi">8</span><span·class="p">,</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="s">&quot;Lane&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·152,·SHA:·798048aa92b1507665791846e298446f2ca9433d24c459926138482892a1573a·...·]-2">}</span></code></pre><p>Associate·a·result·set·containing·the·whole·table·<code·class="inline">EMPLOYEE</code>·to·the·connection.190 ···········</span><span·class="p"·data-group-id="7454914227-12">{</span><span·class="mi">8</span><span·class="p">,</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="s">&quot;Lane&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·152,·SHA:·3bf4d238a4f6e917fb1f7365fdcbbca983762f588e54a467e0eabc992ef40cc1·...·]-2">}</span></code></pre><p>Associate·a·result·set·containing·the·whole·table·<code·class="inline">EMPLOYEE</code>·to·the·connection.
191 The·number·of·rows·in·the·result·set·is·returned.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">8</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">select_count</span><span·class="p"·data-group-id="1256031740-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;SELECT·*·FROM·EMPLOYEE&quot;</span><span·class="p"·data-group-id="1256031740-1">)</span><span·class="p">.</span><span·class="w">191 The·number·of·rows·in·the·result·set·is·returned.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">8</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">select_count</span><span·class="p"·data-group-id="7976971166-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;SELECT·*·FROM·EMPLOYEE&quot;</span><span·class="p"·data-group-id="7976971166-1">)</span><span·class="p">.</span><span·class="w">
192 ······</span><span·class="p"·data-group-id="1256031740-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="1256031740-2">}</span></code></pre><p>You·can·always·traverse·the·result·set·sequential·by·using·next</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">9</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">next</span><span·class="p"·data-group-id="1642554541-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="1642554541-1">)</span><span·class="p">.</span><span·class="w"> 
193 ······</span><span·class="p"·data-group-id="1642554541-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="1642554541-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·1050,·SHA:·a50643f877fc871f1655fa0c29a97da939c911e4b4a2bbff06e940f8e2894d00·...·]-1">)</span><span·class="p">.</span><span·class="w">192 ······</span><span·class="p"·data-group-id="7976971166-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="7976971166-2">}</span></code></pre><p>You·can·always·traverse·the·result·set·sequential·by·using·next</p><pre><code·class="makeu[·...·truncated·by·diffoscope;·len:·349,·SHA:·b9eda7ecef30be3c76e611a05a42b8ad54ea094b48a07b82856f09fa1f8a39bb·...·]-1">)</span><span·class="p">.</span><span·class="w">
 193 ······</span><span·class="p"·data-group-id="5470724603-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="5470724603-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;LASTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;GENDER&quot;</span><span·class="p"·data-group-id="5470724603-3">]</span><span·class="p">,</span><span·class="p"·data-group-id="5470724603-4">[</span><span·class="p"·data-group-id="5470724603-5">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="s">&quot;Doe&quot;</span><span·class="p">,</span><span·class="s">&quot;F&quot;</span><span·class="p"·data-group-id="5470724603-5">}</span><span·class="p"·data-group-id="5470724603-4">]</span><span·class="p"·data-group-id="5470724603-2">}</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">10</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">next</span><span·class="p"·data-group-id="7678716280-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="7678716280-1">)</span><span·class="p">.</span><span·class="w">
194 ······</span><span·class="p"·data-group-id="7491257800-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="7491257800-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·650,·SHA:·d2b596c473ac697e48d54a70df074f21ed65c059d375986eccfac784da60aa4c·...·]0-2">}</span></code></pre><p>If·your·driver·supports·scrollable·cursors·you·have·a·little·more·freedom,·and194 ······</span><span·class="p"·data-group-id="7678716280-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="7678716280-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·650,·SHA:·38a0a1679af762ba35666e8f1d09af738d0f91b3b5eb667961d55b9bd18c7875·...·]0-2">}</span></code></pre><p>If·your·driver·supports·scrollable·cursors·you·have·a·little·more·freedom,·and
195 can·do·things·like·this.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">11</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">last</span><span·class="p"·data-group-id="5412822069-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="5412822069-1">)</span><span·class="p">.</span><span·class="w">195 can·do·things·like·this.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">11</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">last</span><span·class="p"·data-group-id="0684288536-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="0684288536-1">)</span><span·class="p">.</span><span·class="w">
196 ······</span><span·class="p"·data-group-id="5412822069-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="5412822069-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·1053,·SHA:·ef6b082ca8f581c20440f381609f570b0f1f0a6cee03676e583d0f25db851b86·...·]-1">)</span><span·class="p">.</span><span·class="w">196 ······</span><span·class="p"·data-group-id="0684288536-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="0684288536-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·1053,·SHA:·499dc973a18195af4e32e2d1a485b1a578138fedf86a2154bf6d33f5ba3cfa35·...·]-1">)</span><span·class="p">.</span><span·class="w">
197 ······</span><span·class="p"·data-group-id="2398212132-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="2398212132-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·1054,·SHA:·ef2a8f26e7bed4c4410d6832882748306a0fcab0c0e87770facf6c9e54d6f5b3·...·]39-1">)</span><span·class="p">.</span><span·class="w">197 ······</span><span·class="p"·data-group-id="2731989239-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="2731989239-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·1054,·SHA:·23840bf8ab1589851a8c7d49aad49c3d361fbc157e428d8e443d7dc75edb9126·...·]39-1">)</span><span·class="p">.</span><span·class="w">
198 ······</span><span·class="p"·data-group-id="2425128339-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="2425128339-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·1050,·SHA:·d1fbd661822f66dee4544912a6755fb729038feee413970012b7aaddce9bee9b·...·]-1">)</span><span·class="p">.</span><span·class="w">198 ······</span><span·class="p"·data-group-id="9147383239-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="9147383239-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·1050,·SHA:·22f15c7c63894cddcd73e997e42309fb80136f866f06807c8d15f7a481e2ddc0·...·]-1">)</span><span·class="p">.</span><span·class="w">
199 ······</span><span·class="p"·data-group-id="3526962473-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="3526962473-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·1318,·SHA:·3814974e4e492b23d80ba8f531189a6dd0a7848446011bab3fdf456dfaaba74a·...·]-1">)</span><span·class="p">.</span><span·class="w">199 ······</span><span·class="p"·data-group-id="7339478041-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="7339478041-3">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·1318,·SHA:·a9abc9144bc003f3622d07bfa7179b659fefef3352aaaef1961a820b35e6f27f·...·]-1">)</span><span·class="p">.</span><span·class="w">
200 ·····</span><span·class="p"·data-group-id="7148497413-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="7148497413-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·1cb280eaa81aef4956b723f05282319c5b449e1beddc5b800a75c2f1b40ca7b7·...·]-3">]</span><span·class="p">,</span><span·class="w">200 ·····</span><span·class="p"·data-group-id="9120129604-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="9120129604-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·31d9874e2f7f2e8c1d2ebf8def6bd9349ff62dc7b89d5df7ca6fa2655e23e746·...·]-3">]</span><span·class="p">,</span><span·class="w">
201 ··········</span><span·class="p"·data-group-id="7148497413-4">[</span><span·class="p"·data-group-id="7148497413-5">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="7148497413-5">}</span><span·class="p">,</span><span·class="w">201 ··········</span><span·class="p"·data-group-id="9120129604-4">[</span><span·class="p"·data-group-id="9120129604-5">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="9120129604-5">}</span><span·class="p">,</span><span·class="w">
202 ···········</span><span·class="p"·data-group-id="7148497413-6">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="7148497413-6">}</span><span·class="p">,</span><span·class="w">202 ···········</span><span·class="p"·data-group-id="9120129604-6">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="9120129604-6">}</span><span·class="p">,</span><span·class="w">
203 ···········</span><span·class="p"·data-group-id="7148497413-7">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="7148497413-7">}</span><span·class="p">,</span><span·class="w">203 ···········</span><span·class="p"·data-group-id="9120129604-7">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="9120129604-7">}</span><span·class="p">,</span><span·class="w">
204 ···········</span><span·class="p"·data-group-id="7148497413-8">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="7148497413-8">}</span><span·class="p">,</span><span·class="w">204 ···········</span><span·class="p"·data-group-id="9120129604-8">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="9120129604-8">}</span><span·class="p">,</span><span·class="w">
205 ···········</span><span·class="p"·data-group-id="7148497413-9">{</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="7148497413-9">}</span><span·class="p">,</span><span·class="w">205 ···········</span><span·class="p"·data-group-id="9120129604-9">{</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="9120129604-9">}</span><span·class="p">,</span><span·class="w">
206 ···········</span><span·class="p"·data-group-id="7148497413-10">{</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="7148497413-10">}</span><span·class="p"·data-group-id="7148497413-4">]</span><span·class="p"·data-group-id="71484[·...·truncated·by·diffoscope;·len:·5,·SHA:·c48056b510d370fa7f6a7d7b9ad416d09980f0b02b78f0af3c7c6b1d1a9fff25·...·]-2">}</span></code></pre><p>Fetch·the·fields·<code·class="inline">FIRSTNAME</code>and·<code·class="inline">NR</code>for·all·female·employees·and·sort·them·on206 ···········</span><span·class="p"·data-group-id="9120129604-10">{</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="9120129604-10">}</span><span·class="p"·data-group-id="9120129604-4">]</span><span·class="p"·data-group-id="91201[·...·truncated·by·diffoscope;·len:·5,·SHA:·c656716b13f91bb097c9ccedccca7b8eeee207bdbf43c5b1f85eb22c45dfb28d·...·]-2">}</span></code></pre><p>Fetch·the·fields·<code·class="inline">FIRSTNAME</code>and·<code·class="inline">NR</code>for·all·female·employees·and·sort·them·on
207 the·field·<code·class="inline">FIRSTNAME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">16</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">sql_query</span><span·class="p"·data-group-id="6739688076-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;SELECT·FIRSTNAME,·NR·FROM·EMPLOYEE·WHERE·GENDER·=·&#39;F&#39;207 the·field·<code·class="inline">FIRSTNAME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">16</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">sql_query</span><span·class="p"·data-group-id="7118758026-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;SELECT·FIRSTNAME,·NR·FROM·EMPLOYEE·WHERE·GENDER·=·&#39;F&#39;
208 ······ORDER·BY·FIRSTNAME&quot;</span><span·class="p"·data-group-id="6739688076-1">)</span><span·class="p">.</span><span·class="w">208 ······ORDER·BY·FIRSTNAME&quot;</span><span·class="p"·data-group-id="7118758026-1">)</span><span·class="p">.</span><span·class="w">
209 ····</span><span·class="p"·data-group-id="6739688076-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="6739688076-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·20,·SHA:·788470ed6d5a134ebc9e08a8c4b3714571d1f469d70187eb72825ebad4fd85fb·...·]6-3">]</span><span·class="p">,</span><span·class="w">209 ····</span><span·class="p"·data-group-id="7118758026-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="7118758026-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·20,·SHA:·d28c3f88121ce71e4d06990b5612f468bcea377a2145d6dad4dd89a35dde2acc·...·]6-3">]</span><span·class="p">,</span><span·class="w">
210 ··········</span><span·class="p"·data-group-id="6739688076-4">[</span><span·class="p"·data-group-id="6739688076-5">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6739688076-5">}</span><span·class="p">,</span><span·class="w">210 ··········</span><span·class="p"·data-group-id="7118758026-4">[</span><span·class="p"·data-group-id="7118758026-5">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="7118758026-5">}</span><span·class="p">,</span><span·class="w">
211 ···········</span><span·class="p"·data-group-id="6739688076-6">{</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="6739688076-6">}</span><span·class="p">,</span><span·class="w">211 ···········</span><span·class="p"·data-group-id="7118758026-6">{</span><span·class="s">&quot;Louise&quot;</span><span·class="p">,</span><span·class="mi">8</span><span·class="p"·data-group-id="7118758026-6">}</span><span·class="p">,</span><span·class="w">
212 ···········</span><span·class="p"·data-group-id="6739688076-7">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="6739688076-7">}</span><span·class="p">,</span><span·class="w">212 ···········</span><span·class="p"·data-group-id="7118758026-7">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="7118758026-7">}</span><span·class="p">,</span><span·class="w">
213 ···········</span><span·class="p"·data-group-id="6739688076-8">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="6739688076-8">}</span><span·class="p">,</span><span·class="w">213 ···········</span><span·class="p"·data-group-id="7118758026-8">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="7118758026-8">}</span><span·class="p">,</span><span·class="w">
214 ···········</span><span·class="p"·data-group-id="6739688076-9">{</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="6739688076-9">}</span><span·class="p">,</span><span·class="w">214 ···········</span><span·class="p"·data-group-id="7118758026-9">{</span><span·class="s">&quot;Prue&quot;</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="7118758026-9">}</span><span·class="p">,</span><span·class="w">
215 ···········</span><span·class="p"·data-group-id="6739688076-10">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="6739688076-10">}</span><span·class="p"·data-group-id="6739688076-4">]</span><span·class="p"·data-group-id="67396[·...·truncated·by·diffoscope;·len:·4,·SHA:·75b167181ef4fd16ae5df34a55c9b9e1e7c4b84318d56d5978989f87093fea89·...·]6-2">}</span></code></pre><p>Associate·a·result·set·that·contains·the·fields·<code·class="inline">FIRSTNAME</code>·and·<code·class="inline">NR</code>for·all215 ···········</span><span·class="p"·data-group-id="7118758026-10">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="7118758026-10">}</span><span·class="p"·data-group-id="7118758026-4">]</span><span·class="p"·data-group-id="71187[·...·truncated·by·diffoscope;·len:·4,·SHA:·ddca54a1cb9cfc5a47c9a0fa9b92c3b443cc2d3ad8fc5adf2cc2865c73354c48·...·]6-2">}</span></code></pre><p>Associate·a·result·set·that·contains·the·fields·<code·class="inline">FIRSTNAME</code>·and·<code·class="inline">NR</code>for·all
216 female·employees·to·the·connection.·The·number·of·rows·in·the·result·set·is216 female·employees·to·the·connection.·The·number·of·rows·in·the·result·set·is
217 returned.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">17</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">select_count</span><span·class="p"·data-group-id="1877039312-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;SELECT·FIRSTNAME,·NR·FROM·EMPLOYEE·WHERE·GENDER·=·&#39;F&#39;&quot;</span><span·class="p"·data-group-id="1877039312-1">)</span><span·class="p">.</span><span·class="w">217 returned.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">17</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">select_count</span><span·class="p"·data-group-id="9975638261-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;SELECT·FIRSTNAME,·NR·FROM·EMPLOYEE·WHERE·GENDER·=·&#39;F&#39;&quot;</span><span·class="p"·data-group-id="9975638261-1">)</span><span·class="p">.</span><span·class="w">
218 ······</span><span·class="p"·data-group-id="1877039312-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="1877039312-2">}</span></code></pre><p>A·few·more·ways·of·retrieving·parts·of·the·result·set·when·the·driver·supports218 ······</span><span·class="p"·data-group-id="9975638261-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="9975638261-2">}</span></code></pre><p>A·few·more·ways·of·retrieving·parts·of·the·result·set·when·the·driver·supports
219 scrollable·cursors.·Note·that·next·will·work·even·without·support·for·scrollable219 scrollable·cursors.·Note·that·next·will·work·even·without·support·for·scrollable
220 cursors.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">18</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="3101657149-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3101657149-2">{</span><span·class="ss">relative</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·165,·SHA:·a08e15419a6b26e0b55dc73b78ab210214b145acc054f5d63304cc7bf25c0c2f·...·]-1">)</span><span·class="p">.</span><span·class="w">220 cursors.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">18</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="4785547617-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4785547617-2">{</span><span·class="ss">relative</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·165,·SHA:·dcbc72e8b548ad70b43ee9f4c6f50e6cf64a4a3ad126f544933e4ca5699c7540·...·]-1">)</span><span·class="p">.</span><span·class="w">
221 ····</span><span·class="p"·data-group-id="3101657149-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="3101657149-4">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·1388,·SHA:·2180217c0c26d224095f20c24f0d16d3c45705d39567d0bad911b2b5853ed046·...·]-1">)</span><span·class="p">.</span><span·class="w">221 ····</span><span·class="p"·data-group-id="4785547617-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="4785547617-4">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·1388,·SHA:·d5f94a7bc2661be57a17a0876565aab6edf171c15b5755c478e60bb62a95b95e·...·]-1">)</span><span·class="p">.</span><span·class="w">
222 ······</span><span·class="p"·data-group-id="0289271259-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="0289271259-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·1348,·SHA:·931bbf42882114614e22a07c4dfbc354a737cb5f7ed27a93dd3dbaca21731f9f·...·]-1">)</span><span·class="p">.</span><span·class="w">222 ······</span><span·class="p"·data-group-id="0265005268-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="0265005268-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·1348,·SHA:·b338cd84c62ac450bf33060969764e2a4358f2ec6f887692406ccbc23727268b·...·]-1">)</span><span·class="p">.</span><span·class="w">
223 ······</span><span·class="p"·data-group-id="1347592134-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="1347592134-4">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·1167,·SHA:·e4343699dfd8c30d4bc0dd00f17be45b7c35b402470fe6cdd9296d8e7445776e·...·]-1">)</span><span·class="p">.</span><span·class="w">223 ······</span><span·class="p"·data-group-id="5285209403-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="5285209403-4">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·1167,·SHA:·768998af7b422742955476c33c5b95340c4a5c6e6f6a60598b3fa9beb7a7c4c2·...·]-1">)</span><span·class="p">.</span><span·class="w">
224 ····</span><span·class="p"·data-group-id="2375950918-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="2375950918-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·1351,·SHA:·f1243e3e9d97bea13e1837a4a0dfd2f3ef455d85e6df66f2420ae0100ce17feb·...·]-1">)</span><span·class="p">.</span><span·class="w">224 ····</span><span·class="p"·data-group-id="6727763626-2">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="6727763626-3">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·1351,·SHA:·32ed0b9db81c570e747544e018fa491374041916bfa9b283f49008c114b19214·...·]-1">)</span><span·class="p">.</span><span·class="w">
225 ······</span><span·class="p"·data-group-id="4890738395-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="4890738395-4">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·6e50d001c622a07883120d09887e2c266da63bb9566a487b04e6fc9f021a8e0c·...·]-4">]</span><span·class="p">,</span><span·class="w">225 ······</span><span·class="p"·data-group-id="4727350742-3">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="4727350742-4">[</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</span><span·class="s">&quot;NR&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·e32b39cf4fdb236c1fa35b6363b7e6fda004781dc20522eb96428bac0965f7af·...·]-4">]</span><span·class="p">,</span><span·class="w">
226 ················</span><span·class="p"·data-group-id="4890738395-5">[</span><span·class="p"·data-group-id="4890738395-6">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="4890738395-6">}</span><span·class="p">,</span><span·class="p"·data-group-id="4890738395-7">{</span><span·class="s">&quot;Monica&quot;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="4890738395-7">}</span><span·class="p">,</span><span·class="p"·data-group-id="4890738395-8">{</span><span·class="s">&quot;Rachel&quot;</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="4890738395-8">}</span><span·class="p">,</span><span·class="p"·data-group-id="4890738395-9">{</span><span·class="s">&quot;Piper&quot;</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="4890738395-9">}</span><span·class="p"·data-group-id="4890738395-5">]</span><span·class="p"·data-group-id="4890738395-3">}</span></code></pre><p>Select,·using·a·parameterized·query.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">23</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">param_query</span><span·class="p"·data-group-id="3100124072-1">(</span><span·class="n">Ref</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;SELECT·*·FROM·EMPLOYEE·WHERE·GENDER=?&quot;</span><span·class="p">,</span><span·class="w"> 
227 ······</span><span·class="p"·data-group-id="3100124072-2">[</span><span·class="p"·data-group-id="3100124072-3">{</span><span·class="p"·data-group-id="3100124072-4">{</span><span·class="ss">sql_char</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·434,·SHA:·4f19f9d18fcb2522e8e3b4bf47de909dbfc5a86738457fe10dfc42c36cec3d60·...·]</span><span·class="w">226 ················</span><span·class="p"·data-group-id="4727350742-5">[</span><span·class="p"·data-group-id="4727350742-6">{</span><span·class="s">&quot;Jane&quot;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="4727350742-6">[·...·truncated·by·diffoscope;·len:·1305,·SHA:·9e5dd65282aaf2f28654006575976249670629dbd713fb637421af4c0d6fa1eb·...·]</span><span·class="w">
 227 ······</span><span·class="p"·data-group-id="0069829617-2">[</span><span·class="p"·data-group-id="0069829617-3">{</span><span·class="p"·data-group-id="0069829617-4">{</span><span·class="ss">sql_char</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0069829617-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0069829617-5">[</span><span·class="s">&quot;M&quot;</span><span·class="p"·data-group-id="0069829617-5">]</span><span·class="p"·data-group-id="0069829617-3">}</span><span·class="p"·data-group-id="0069829617-2">]</span><span·class="p"·data-group-id="0069829617-1">)</span><span·class="p">.</span><span·class="w">
228 ······</span><span·class="p"·data-group-id="3100124072-6">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="3100124072-7">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·c2e1ee85f5e1bc95de7a6f156d2665c563fa99f7eed78ca6317369f0cf9bd492·...·]-7">]</span><span·class="p">,</span><span·class="w">228 ······</span><span·class="p"·data-group-id="0069829617-6">{</span><span·class="ss">selected</span><span·class="p">,</span><span·class="p"·data-group-id="0069829617-7">[</span><span·class="s">&quot;NR&quot;</span><span·class="p">,</span><span·class="s">&quot;FIRSTNAME&quot;</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·153,·SHA:·42db32d97b78f8590ae67c2cc498d442dcc6d14733bc9a2678233b7cfdc41cf1·...·]-7">]</span><span·class="p">,</span><span·class="w">
229 ················</span><span·class="p"·data-group-id="3100124072-8">[</span><span·class="p"·data-group-id="3100124072-9">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="s">&quot;John&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Doe&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·569,·SHA:·780f7b35168787b4fd6e747e08b669eee36e94d7c2efe7d158c5327e9eaa75e0·...·]-6">}</span></code></pre><p>Delete·the·table·<code·class="inline">EMPLOYEE</code>.</p><pre><code·class="text">·24·&gt;·odbc:sql_query(Ref,·&quot;DROP·TABLE·EMPLOYEE&quot;).229 ················</span><span·class="p"·data-group-id="0069829617-8">[</span><span·class="p"·data-group-id="0069829617-9">{</span><span·class="mi">2</span><span·class="p">,</span><span·class="s">&quot;John&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Doe&quot;</span><span·c[·...·truncated·by·diffoscope;·len:·569,·SHA:·67c6126a6434031243e4f8bcbd66e58e0a9e567d29e873ee9f7ae6cdfaa5b12a·...·]-6">}</span></code></pre><p>Delete·the·table·<code·class="inline">EMPLOYEE</code>.</p><pre><code·class="text">·24·&gt;·odbc:sql_query(Ref,·&quot;DROP·TABLE·EMPLOYEE&quot;).
230 ······{updated,undefined}</code></pre><p>Shut·down·the·connection.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">25</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">disconnect</span><span·class="p"·data-group-id="2254237189-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="2254237189-1">)</span><span·class="p">.</span><span·class="w">230 ······{updated,undefined}</code></pre><p>Shut·down·the·connection.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">25</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">odbc</span><span·class="p">:</span><span·class="nf">disconnect</span><span·class="p"·data-group-id="9290541272-1">(</span><span·class="n">Ref</span><span·class="p"·data-group-id="9290541272-1">)</span><span·class="p">.</span><span·class="w">
231 ······</span><span·class="ss">ok</span></code></pre><p>Shut·down·the·application.</p><pre><code·class="text">·26·&gt;·odbc:stop().231 ······</span><span·class="ss">ok</span></code></pre><p>Shut·down·the·application.</p><pre><code·class="text">·26·&gt;·odbc:stop().
232 ····=INFO·REPORT====·7-Jan-2004::17:00:59·===232 ····=INFO·REPORT====·7-Jan-2004::17:00:59·===
233 ····application:·odbc233 ····application:·odbc
234 ····exited:·stopped234 ····exited:·stopped
235 ····type:·temporary235 ····type:·temporary
  
236 ····ok</code></pre>236 ····ok</code></pre>
Offset 281, 15 lines modifiedOffset 281, 15 lines modified
281 ······<p·class="built-using">281 ······<p·class="built-using">
282 ········Built·using282 ········Built·using
283 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the283 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
284 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>284 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
285 ······</p>285 ······</p>
286 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>286 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
287 ····</footer>287 ····</footer>
288 ··</div>288 ··</div>
289 </main>289 </main>
290 </div>290 </div>
291 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>291 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
292 <script>292 <script>
293 ··document.addEventListener("DOMContentLoaded",·function·()·{293 ··document.addEventListener("DOMContentLoaded",·function·()·{
549 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/introduction.html
    
Offset 210, 15 lines modifiedOffset 210, 15 lines modified
210 ······<p·class="built-using">210 ······<p·class="built-using">
211 ········Built·using211 ········Built·using
212 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the212 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
213 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>213 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
214 ······</p>214 ······</p>
215 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>215 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
216 ····</footer>216 ····</footer>
217 ··</div>217 ··</div>
218 </main>218 </main>
219 </div>219 </div>
220 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>220 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
221 <script>221 <script>
222 ··document.addEventListener("DOMContentLoaded",·function·()·{222 ··document.addEventListener("DOMContentLoaded",·function·()·{
757 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/notes.html
    
Offset 1040, 15 lines modifiedOffset 1040, 15 lines modified
1040 ······<p·class="built-using">1040 ······<p·class="built-using">
1041 ········Built·using1041 ········Built·using
1042 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1042 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1043 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1043 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1044 ······</p>1044 ······</p>
1045 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1045 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1046 ····</footer>1046 ····</footer>
1047 ··</div>1047 ··</div>
1048 </main>1048 </main>
1049 </div>1049 </div>
1050 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1050 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1051 <script>1051 <script>
1052 ··document.addEventListener("DOMContentLoaded",·function·()·{1052 ··document.addEventListener("DOMContentLoaded",·function·()·{
675 B
html2text {}
Max HTML report size reached
136 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/odbc.epub
2.71 KB
zipinfo {}
Max HTML report size reached
50.0 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
82.3 KB
OEBPS/getting_started.xhtml
Max HTML report size reached
1.22 KB
OEBPS/content.opf
1.19 KB
OEBPS/content.opf
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/odbc.html
    
Offset 1843, 15 lines modifiedOffset 1843, 15 lines modified
1843 ······<p·class="built-using">1843 ······<p·class="built-using">
1844 ········Built·using1844 ········Built·using
1845 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1845 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1846 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1846 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1847 ······</p>1847 ······</p>
1848 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1848 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1849 ····</footer>1849 ····</footer>
1850 ··</div>1850 ··</div>
1851 </main>1851 </main>
1852 </div>1852 </div>
1853 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1853 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1854 <script>1854 <script>
1855 ··document.addEventListener("DOMContentLoaded",·function·()·{1855 ··document.addEventListener("DOMContentLoaded",·function·()·{
630 B
html2text {}
Max HTML report size reached
1.27 KB
./usr/share/doc/erlang-doc/html/lib/odbc-2.14.3/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
462 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/api-reference.html
    
Offset 217, 15 lines modifiedOffset 217, 15 lines modified
217 ······<p·class="built-using">217 ······<p·class="built-using">
218 ········Built·using218 ········Built·using
219 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the219 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
220 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>220 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
221 ······</p>221 ······</p>
222 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>222 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
223 ····</footer>223 ····</footer>
224 ··</div>224 ··</div>
225 </main>225 </main>
226 </div>226 </div>
227 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>227 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
228 <script>228 <script>
229 ··document.addEventListener("DOMContentLoaded",·function·()·{229 ··document.addEventListener("DOMContentLoaded",·function·()·{
595 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/cpu_sup.html
    
Offset 641, 15 lines modifiedOffset 641, 15 lines modified
641 ······<p·class="built-using">641 ······<p·class="built-using">
642 ········Built·using642 ········Built·using
643 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the643 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
644 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>644 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
645 ······</p>645 ······</p>
646 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>646 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
647 ····</footer>647 ····</footer>
648 ··</div>648 ··</div>
649 </main>649 </main>
650 </div>650 </div>
651 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>651 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
652 <script>652 <script>
653 ··document.addEventListener("DOMContentLoaded",·function·()·{653 ··document.addEventListener("DOMContentLoaded",·function·()·{
672 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/disksup.html
    
Offset 571, 15 lines modifiedOffset 571, 15 lines modified
571 ······<p·class="built-using">571 ······<p·class="built-using">
572 ········Built·using572 ········Built·using
573 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the573 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
574 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>574 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
575 ······</p>575 ······</p>
576 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>576 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
577 ····</footer>577 ····</footer>
578 ··</div>578 ··</div>
579 </main>579 </main>
580 </div>580 </div>
581 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>581 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
582 <script>582 <script>
583 ··document.addEventListener("DOMContentLoaded",·function·()·{583 ··document.addEventListener("DOMContentLoaded",·function·()·{
711 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/memsup.html
    
Offset 693, 15 lines modifiedOffset 693, 15 lines modified
693 ······<p·class="built-using">693 ······<p·class="built-using">
694 ········Built·using694 ········Built·using
695 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the695 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
696 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>696 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
697 ······</p>697 ······</p>
698 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>698 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
699 ····</footer>699 ····</footer>
700 ··</div>700 ··</div>
701 </main>701 </main>
702 </div>702 </div>
703 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>703 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
704 <script>704 <script>
705 ··document.addEventListener("DOMContentLoaded",·function·()·{705 ··document.addEventListener("DOMContentLoaded",·function·()·{
747 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/notes.html
    
Offset 1023, 15 lines modifiedOffset 1023, 15 lines modified
1023 ······<p·class="built-using">1023 ······<p·class="built-using">
1024 ········Built·using1024 ········Built·using
1025 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1025 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1026 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1026 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1027 ······</p>1027 ······</p>
1028 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1028 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1029 ····</footer>1029 ····</footer>
1030 ··</div>1030 ··</div>
1031 </main>1031 </main>
1032 </div>1032 </div>
1033 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1033 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1034 <script>1034 <script>
1035 ··document.addEventListener("DOMContentLoaded",·function·()·{1035 ··document.addEventListener("DOMContentLoaded",·function·()·{
633 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/nteventlog.html
    
Offset 337, 15 lines modifiedOffset 337, 15 lines modified
337 ······<p·class="built-using">337 ······<p·class="built-using">
338 ········Built·using338 ········Built·using
339 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the339 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
340 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>340 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
341 ······</p>341 ······</p>
342 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>342 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
343 ····</footer>343 ····</footer>
344 ··</div>344 ··</div>
345 </main>345 </main>
346 </div>346 </div>
347 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>347 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
348 <script>348 <script>
349 ··document.addEventListener("DOMContentLoaded",·function·()·{349 ··document.addEventListener("DOMContentLoaded",·function·()·{
617 B
html2text {}
Max HTML report size reached
27.3 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/os_mon.epub
2.54 KB
zipinfo {}
Max HTML report size reached
23.4 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
1.21 KB
OEBPS/content.opf
1.17 KB
OEBPS/content.opf
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/os_mon_app.html
    
Offset 203, 15 lines modifiedOffset 203, 15 lines modified
203 ······<p·class="built-using">203 ······<p·class="built-using">
204 ········Built·using204 ········Built·using
205 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the205 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
206 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>206 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
207 ······</p>207 ······</p>
208 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>208 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
209 ····</footer>209 ····</footer>
210 ··</div>210 ··</div>
211 </main>211 </main>
212 </div>212 </div>
213 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>213 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
214 <script>214 <script>
215 ··document.addEventListener("DOMContentLoaded",·function·()·{215 ··document.addEventListener("DOMContentLoaded",·function·()·{
722 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/os_sup.html
    
Offset 418, 15 lines modifiedOffset 418, 15 lines modified
418 ······<p·class="built-using">418 ······<p·class="built-using">
419 ········Built·using419 ········Built·using
420 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the420 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
421 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>421 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
422 ······</p>422 ······</p>
423 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>423 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
424 ····</footer>424 ····</footer>
425 ··</div>425 ··</div>
426 </main>426 </main>
427 </div>427 </div>
428 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>428 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
429 <script>429 <script>
430 ··document.addEventListener("DOMContentLoaded",·function·()·{430 ··document.addEventListener("DOMContentLoaded",·function·()·{
634 B
html2text {}
Max HTML report size reached
1.27 KB
./usr/share/doc/erlang-doc/html/lib/os_mon-2.10/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
462 B
html2text {}
Max HTML report size reached
604 B
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/.build
    
Offset 14, 14 lines modifiedOffset 14, 14 lines modified
14 dist/lato-latin-300-normal-YUMVEFOL.woff214 dist/lato-latin-300-normal-YUMVEFOL.woff2
15 dist/lato-latin-400-normal-W7754I4D.woff215 dist/lato-latin-400-normal-W7754I4D.woff2
16 dist/lato-latin-700-normal-2XVSBPG4.woff216 dist/lato-latin-700-normal-2XVSBPG4.woff2
17 dist/lato-latin-ext-300-normal-VPGGJKJL.woff217 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
18 dist/lato-latin-ext-400-normal-N27NCBWW.woff218 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
19 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff219 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
20 dist/remixicon-NKANDIL5.woff220 dist/remixicon-NKANDIL5.woff2
21 dist/search_data-F88FF550.js21 dist/search_data-888771CF.js
22 dist/sidebar_items-E70C9F62.js22 dist/sidebar_items-E70C9F62.js
23 index.html23 index.html
24 leex.html24 leex.html
25 notes.html25 notes.html
26 search.html26 search.html
27 yecc.html27 yecc.html
1.47 KB
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/api-reference.html
    
Offset 190, 15 lines modifiedOffset 190, 15 lines modified
190 ······<p·class="built-using">190 ······<p·class="built-using">
191 ········Built·using191 ········Built·using
192 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the192 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
193 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>193 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
194 ······</p>194 ······</p>
195 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>195 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
196 ····</footer>196 ····</footer>
197 ··</div>197 ··</div>
198 </main>198 </main>
199 </div>199 </div>
200 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>200 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
201 <script>201 <script>
202 ··document.addEventListener("DOMContentLoaded",·function·()·{202 ··document.addEventListener("DOMContentLoaded",·function·()·{
567 B
html2text {}
Max HTML report size reached
14.9 KB
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/leex.html
    
Offset 169, 21 lines modifiedOffset 169, 21 lines modified
169 <code·class="inline">error_location</code>·is·set·to·<code·class="inline">line</code>).</p></li></ul><p>The·code·must·return:</p><ul><li><p><strong><code·class="inline">{token,Token}</code></strong>·-·Return·<code·class="inline">Token</code>·to·the·caller.</p></li><li><p><strong><code·class="inline">{end_token,Token}</code></strong>·-·Return·<code·class="inline">Token</code>·and·is·last·token·in·a·tokens·call.</p></li><li><p><strong><code·class="inline">skip_token</code></strong>·-·Skip·this·token·completely.</p></li><li><p><strong><code·class="inline">{error,ErrString}</code></strong>·-·An·error·in·the·token,·<code·class="inline">ErrString</code>·is·a·string169 <code·class="inline">error_location</code>·is·set·to·<code·class="inline">line</code>).</p></li></ul><p>The·code·must·return:</p><ul><li><p><strong><code·class="inline">{token,Token}</code></strong>·-·Return·<code·class="inline">Token</code>·to·the·caller.</p></li><li><p><strong><code·class="inline">{end_token,Token}</code></strong>·-·Return·<code·class="inline">Token</code>·and·is·last·token·in·a·tokens·call.</p></li><li><p><strong><code·class="inline">skip_token</code></strong>·-·Skip·this·token·completely.</p></li><li><p><strong><code·class="inline">{error,ErrString}</code></strong>·-·An·error·in·the·token,·<code·class="inline">ErrString</code>·is·a·string
170 describing·the·error.</p></li></ul><p>It·is·also·possible·to·push·back·characters·into·the·input·characters·with·the170 describing·the·error.</p></li></ul><p>It·is·also·possible·to·push·back·characters·into·the·input·characters·with·the
171 following·returns:</p><ul><li><code·class="inline">{token,Token,PushBackList}</code></li><li><code·class="inline">{end_token,Token,PushBackList}</code></li><li><code·class="inline">{skip_token,PushBackList}</code></li></ul><p>These·have·the·same·meanings·as·the·normal·returns·but·the·characters·in171 following·returns:</p><ul><li><code·class="inline">{token,Token,PushBackList}</code></li><li><code·class="inline">{end_token,Token,PushBackList}</code></li><li><code·class="inline">{skip_token,PushBackList}</code></li></ul><p>These·have·the·same·meanings·as·the·normal·returns·but·the·characters·in
172 <code·class="inline">PushBackList</code>·will·be·prepended·to·the·input·characters·and·scanned·for·the172 <code·class="inline">PushBackList</code>·will·be·prepended·to·the·input·characters·and·scanned·for·the
173 next·token.·Note·that·pushing·back·a·newline·will·mean·the·line·numbering·will173 next·token.·Note·that·pushing·back·a·newline·will·mean·the·line·numbering·will
174 no·longer·be·correct.</p><blockquote><h4·class="info">Note</h4><p>Pushing·back·characters·gives·you·unexpected·possibilities·to·cause·the174 no·longer·be·correct.</p><blockquote><h4·class="info">Note</h4><p>Pushing·back·characters·gives·you·unexpected·possibilities·to·cause·the
175 scanner·to·loop!</p></blockquote><p>The·following·example·would·match·a·simple·Erlang·integer·or·float·and·return·a175 scanner·to·loop!</p></blockquote><p>The·following·example·would·match·a·simple·Erlang·integer·or·float·and·return·a
176 token·which·could·be·sent·to·the·Erlang·parser:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">D</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3212961429-1">[</span><span·class="mi">0</span><span·class="o">-</span><span·class="mi">9</span><span·class="p"·data-group-id="3212961429-1">]</span><span·class="w">176 token·which·could·be·sent·to·the·Erlang·parser:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">D</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3532424789-1">[</span><span·class="mi">0</span><span·class="o">-</span><span·class="mi">9</span><span·class="p"·data-group-id="3532424789-1">]</span><span·class="w">
  
177 </span><span·class="p"·data-group-id="3212961429-2">{</span><span·class="n">D</span><span·class="p"·data-group-id="3212961429-2">}</span><span·class="o">+</span><span·class="w">·</span><span·class="p">:</span><span·class="w">177 </span><span·class="p"·data-group-id="3532424789-2">{</span><span·class="n">D</span><span·class="p"·data-group-id="3532424789-2">}</span><span·class="o">+</span><span·class="w">·</span><span·class="p">:</span><span·class="w">
178 ··</span><span·class="p"·data-group-id="3212961429-3">{</span><span·class="ss">token</span><span·class="p">,</span><span·class="p"·data-group-id="3212961429-4">{</span><span·class="ss">integer</span><span·class="p">,</span><span·class="n">TokenLine</span><span·class="p">,</span><span·class="nf">l[·...·truncated·by·diffoscope;·len:·253,·SHA:·0db50c3733eac03e04936e5acd4adbeb729afcb20472d86ec1e81d213fae285a·...·]9-3">}</span><span·class="p">.</span><span·class="w">178 ··</span><span·class="p"·data-group-id="3532424789-3">{</span><span·class="ss">token</span><span·class="p">,</span><span·class="p"·data-group-id="3532424789-4">{</span><span·class="ss">integer</span><span·class="p">,</span><span·class="n">TokenLine</span><span·class="p">,</span><span·class="nf">l[·...·truncated·by·diffoscope;·len:·253,·SHA:·896449b5d09a9e70a889bc4a7bf0fb871086b9b68aff61bc968d93131bb339c0·...·]9-3">}</span><span·class="p">.</span><span·class="w">
  
179 </span><span·class="p"·data-group-id="3212961429-6">{</span><span·class="n">D</span><span·class="p"·data-group-id="3212961429-6">}</span><span·class="o">+</span><span·class="err">\</span><span·class="p">.</span><span·class="p"·data-group-id="3212961429-7">{</span><span·class="n">D</span><span·c[·...·truncated·by·diffoscope;·len:·754,·SHA:·b5af7a495404574d4c32731bd12c3664ca4627ef156752e9f6ebaf27ac18857c·...·]9-8">)</span><span·class="o">?</span><span·class="w">·</span><span·class="p">:</span><span·class="w">179 </span><span·class="p"·data-group-id="3532424789-6">{</span><span·class="n">D</span><span·class="p"·data-group-id="3532424789-6">}</span><span·class="o">+</span><span·class="err">\</span><span·class="p">.</span><span·class="p"·data-group-id="3532424789-7">{</span><span·class="n">D</span><span·c[·...·truncated·by·diffoscope;·len:·754,·SHA:·1640da901f0791d8e207d0eab1b00f428caa9ff98fd5bbd640000e0e21a00b6b·...·]9-8">)</span><span·class="o">?</span><span·class="w">·</span><span·class="p">:</span><span·class="w">
180 ··</span><span·class="p"·data-group-id="3212961429-12">{</span><span·class="ss">token</span><span·class="p">,</span><span·class="p"·data-group-id="3212961429-13">{</span><span·class="nb">float</span><span·class="p">,</span><span·class="n">TokenLine</span><span·class="p">,</span><span·class="nf">l[·...·truncated·by·diffoscope;·len:·254,·SHA:·5895cb64dbf7e8e5391309bc19a0f60d7c649911bb54e21c13a2631ff1992dc7·...·]9-12">}</span><span·class="p">.</span></code></pre><p>The·Erlang·code·in·the·<code·class="inline">Erlang·code.</code>·section·is·written·into·the·output·file180 ··</span><span·class="p"·data-group-id="3532424789-12">{</span><span·class="ss">token</span><span·class="p">,</span><span·class="p"·data-group-id="3532424789-13">{</span><span·class="nb">float</span><span·class="p">,</span><span·class="n">TokenLine</span><span·class="p">,</span><span·class="nf">l[·...·truncated·by·diffoscope;·len:·254,·SHA:·255a7a40dea42e74da001bb82b98c0c4a9b90d7898662fdad94661bb718e1257·...·]9-12">}</span><span·class="p">.</span></code></pre><p>The·Erlang·code·in·the·<code·class="inline">Erlang·code.</code>·section·is·written·into·the·output·file
181 directly·after·the·module·declaration·and·predefined·exports·declaration,·making181 directly·after·the·module·declaration·and·predefined·exports·declaration,·making
182 it·possible·to·add·extra·exports,·define·imports,·and·other·attributes,·which·are182 it·possible·to·add·extra·exports,·define·imports,·and·other·attributes,·which·are
183 visible·in·the·whole·file.</p><h2·id="module-regular-expressions"·class="section-heading">183 visible·in·the·whole·file.</p><h2·id="module-regular-expressions"·class="section-heading">
184 ··<a·href="#module-regular-expressions"·class="hover-link">184 ··<a·href="#module-regular-expressions"·class="hover-link">
185 ····<i·class="ri-link-m"·aria-hidden="true"></i>185 ····<i·class="ri-link-m"·aria-hidden="true"></i>
186 ··</a>186 ··</a>
187 ··<span·class="text">Regular·Expressions</span>187 ··<span·class="text">Regular·Expressions</span>
Offset 727, 15 lines modifiedOffset 727, 15 lines modified
727 <p>This·is·a·re-entrant·call·to·try·and·scan·a·single·token·from·<code·class="inline">Chars</code>.</p><p>If·there·are·enough·characters·in·<code·class="inline">Chars</code>·to·either·scan·a·token·or727 <p>This·is·a·re-entrant·call·to·try·and·scan·a·single·token·from·<code·class="inline">Chars</code>.</p><p>If·there·are·enough·characters·in·<code·class="inline">Chars</code>·to·either·scan·a·token·or
728 detect·an·error·then·this·will·be·returned·with728 detect·an·error·then·this·will·be·returned·with
729 <code·class="inline">{done,...}</code>.·Otherwise·<code·class="inline">{cont,Cont}</code>·will·be·returned·where·<code·class="inline">Cont</code>·is729 <code·class="inline">{done,...}</code>.·Otherwise·<code·class="inline">{cont,Cont}</code>·will·be·returned·where·<code·class="inline">Cont</code>·is
730 used·in·the·next·call·to·<code·class="inline">token()</code>·with·more·characters·to·try·an·scan730 used·in·the·next·call·to·<code·class="inline">token()</code>·with·more·characters·to·try·an·scan
731 the·token.·This·is·continued·until·a·token·has·been·scanned.·<code·class="inline">Cont</code>·is731 the·token.·This·is·continued·until·a·token·has·been·scanned.·<code·class="inline">Cont</code>·is
732 initially·<code·class="inline">[]</code>.</p><p>It·is·not·designed·to·be·called·directly·by·an·application,·but·is732 initially·<code·class="inline">[]</code>.</p><p>It·is·not·designed·to·be·called·directly·by·an·application,·but·is
733 used·through·the·I/O·system·where·it·can·typically·be·called·in·an733 used·through·the·I/O·system·where·it·can·typically·be·called·in·an
734 application·by:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="0600267997-1">(</span><span·class="n">InFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0600267997-2">{</span><span·class="ss">get_until</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p">[·...·truncated·by·diffoscope;·len:·393,·SHA:·7516803791823672b7f8843cc6424c226dfd1bc5dd76530fc1225bb6f0f81cec·...·]-1">)</span><span·class="w">734 application·by:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="4192802303-1">(</span><span·class="n">InFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4192802303-2">{</span><span·class="ss">get_until</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p">[·...·truncated·by·diffoscope;·len:·393,·SHA:·1980a061e552f53b892966a5a6e4903a3a095b9c73e84006f71bed9414db9c4d·...·]-1">)</span><span·class="w">
735 ··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">TokenRet</span></code></pre>735 ··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">TokenRet</span></code></pre>
736 ··</section>736 ··</section>
737 </section>737 </section>
738 <section·class="detail"·id="tokens/2">738 <section·class="detail"·id="tokens/2">
  
739 ··<div·class="detail-header">739 ··<div·class="detail-header">
740 ····<a·href="#tokens/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">740 ····<a·href="#tokens/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 816, 15 lines modifiedOffset 816, 15 lines modified
816 scan·the·tokens.·This·is·continued·until·all·tokens·have·been816 scan·the·tokens.·This·is·continued·until·all·tokens·have·been
817 scanned.·<code·class="inline">Cont</code>·is·initially·<code·class="inline">[]</code>.</p><p>This·functions·differs·from·<code·class="inline">token</code>·in·that·it·will·continue·to·scan·tokens·up817 scanned.·<code·class="inline">Cont</code>·is·initially·<code·class="inline">[]</code>.</p><p>This·functions·differs·from·<code·class="inline">token</code>·in·that·it·will·continue·to·scan·tokens·up
818 to·and·including·an·<code·class="inline">{end_token,Token}</code>·has·been·scanned·(see·next·section).·It818 to·and·including·an·<code·class="inline">{end_token,Token}</code>·has·been·scanned·(see·next·section).·It
819 will·then·return·all·the·tokens.·This·is·typically·used·for·scanning·grammars819 will·then·return·all·the·tokens.·This·is·typically·used·for·scanning·grammars
820 like·Erlang·where·there·is·an·explicit·end·token,·<code·class="inline">'.'</code>.·If·no·end·token·is820 like·Erlang·where·there·is·an·explicit·end·token,·<code·class="inline">'.'</code>.·If·no·end·token·is
821 found·then·the·whole·file·will·be·scanned·and·returned.·If·an·error·occurs·then821 found·then·the·whole·file·will·be·scanned·and·returned.·If·an·error·occurs·then
822 all·tokens·up·to·and·including·the·next·end·token·will·be·skipped.</p><p>It·is·not·designed·to·be·called·directly·by·an·application,·but·used·through·the822 all·tokens·up·to·and·including·the·next·end·token·will·be·skipped.</p><p>It·is·not·designed·to·be·called·directly·by·an·application,·but·used·through·the
823 I/O·system·where·it·can·typically·be·called·in·an·application·by:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="3163488747-1">(</span><span·class="n">InFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3163488747-2">{</span><span·class="ss">get_until</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p">[·...·truncated·by·diffoscope;·len:·394,·SHA:·a9c8f0f9edd7cab3f335a18a3d1f058b0880c42cd0f4c7eef2ac8d70716d7c4a·...·]-1">)</span><span·class="w">823 I/O·system·where·it·can·typically·be·called·in·an·application·by:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">io</span><span·class="p">:</span><span·class="nf">request</span><span·class="p"·data-group-id="2463946062-1">(</span><span·class="n">InFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2463946062-2">{</span><span·class="ss">get_until</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p">[·...·truncated·by·diffoscope;·len:·394,·SHA:·13a77d4db3df70cce07d408c35fd65ac767b52dda7a7dc517711488b93cef15b·...·]-1">)</span><span·class="w">
824 ··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">TokensRet</span></code></pre>824 ··</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">TokensRet</span></code></pre>
825 ··</section>825 ··</section>
826 </section>826 </section>
  
827 ····</div>827 ····</div>
828 ··</section>828 ··</section>
  
Offset 992, 15 lines modifiedOffset 992, 15 lines modified
992 ······<p·class="built-using">992 ······<p·class="built-using">
993 ········Built·using993 ········Built·using
994 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the994 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
995 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>995 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
996 ······</p>996 ······</p>
997 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>997 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
998 ····</footer>998 ····</footer>
999 ··</div>999 ··</div>
1000 </main>1000 </main>
1001 </div>1001 </div>
1002 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1002 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1003 <script>1003 <script>
1004 ··document.addEventListener("DOMContentLoaded",·function·()·{1004 ··document.addEventListener("DOMContentLoaded",·function·()·{
699 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/notes.html
    
Offset 730, 15 lines modifiedOffset 730, 15 lines modified
730 ······<p·class="built-using">730 ······<p·class="built-using">
731 ········Built·using731 ········Built·using
732 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the732 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
733 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>733 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
734 ······</p>734 ······</p>
735 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>735 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
736 ····</footer>736 ····</footer>
737 ··</div>737 ··</div>
738 </main>738 </main>
739 </div>739 </div>
740 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>740 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
741 <script>741 <script>
742 ··document.addEventListener("DOMContentLoaded",·function·()·{742 ··document.addEventListener("DOMContentLoaded",·function·()·{
679 B
html2text {}
Max HTML report size reached
106 KB
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/parsetools.epub
2.06 KB
zipinfo {}
Max HTML report size reached
39.8 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
49.1 KB
OEBPS/yecc.xhtml
Max HTML report size reached
13.5 KB
OEBPS/leex.xhtml
Max HTML report size reached
1.21 KB
OEBPS/content.opf
1.17 KB
OEBPS/content.opf
Max HTML report size reached
1.76 KB
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-F88FF550.js"></script>124 <script·src="dist/search_data-888771CF.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
465 B
html2text {}
Max HTML report size reached
50.5 KB
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/yecc.html
    
Offset 158, 16 lines modifiedOffset 158, 16 lines modified
158 <code·class="inline">{Category,·Position,·Symbol}</code>.</p><p>If·a·terminal·symbol·is·the·only·member·of·a·category,·and·the·symbol·name·is158 <code·class="inline">{Category,·Position,·Symbol}</code>.</p><p>If·a·terminal·symbol·is·the·only·member·of·a·category,·and·the·symbol·name·is
159 identical·to·the·category·name,·the·token·format·can·be·<code·class="inline">{Symbol,·Position}</code>.</p><p>A·list·of·tokens·produced·by·the·scanner·should·end·with·a·special159 identical·to·the·category·name,·the·token·format·can·be·<code·class="inline">{Symbol,·Position}</code>.</p><p>A·list·of·tokens·produced·by·the·scanner·should·end·with·a·special
160 <code·class="inline">end_of_input</code>·tuple·which·the·parser·is·looking·for.·The·format·of·this·tuple160 <code·class="inline">end_of_input</code>·tuple·which·the·parser·is·looking·for.·The·format·of·this·tuple
161 should·be·<code·class="inline">{Endsymbol,·EndPosition}</code>,·where·<code·class="inline">Endsymbol</code>·is·an·identifier·that·is161 should·be·<code·class="inline">{Endsymbol,·EndPosition}</code>,·where·<code·class="inline">Endsymbol</code>·is·an·identifier·that·is
162 distinguished·from·all·the·terminal·and·non-terminal·categories·of·the·syntax162 distinguished·from·all·the·terminal·and·non-terminal·categories·of·the·syntax
163 rules.·The·<code·class="inline">Endsymbol</code>·can·be·declared·in·the·grammar·file.</p><p>The·simplest·case·is·to·segment·the·input·string·into·a·list·of·identifiers163 rules.·The·<code·class="inline">Endsymbol</code>·can·be·declared·in·the·grammar·file.</p><p>The·simplest·case·is·to·segment·the·input·string·into·a·list·of·identifiers
164 (atoms)·and·use·those·atoms·both·as·categories·and·values·of·the·tokens.·For164 (atoms)·and·use·those·atoms·both·as·categories·and·values·of·the·tokens.·For
165 example,·the·input·string·<code·class="inline">aaa·bbb·777,·X</code>·may·be·scanned·(tokenized)·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7255593745-1">[</span><span·class="p"·data-group-id="7255593745-2">{</span><span·class="ss">aaa</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7255593745-2">}</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·1016,·SHA:·9a551831e0e77cccd02bf32efef13e80208daabff47947c13567346e0c1406e6·...·]-6">}</span><span·class="p">,</span><span·class="w">165 example,·the·input·string·<code·class="inline">aaa·bbb·777,·X</code>·may·be·scanned·(tokenized)·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6212947494-1">[</span><span·class="p"·data-group-id="6212947494-2">{</span><span·class="ss">aaa</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="6212947494-2">}</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·1016,·SHA:·2b210131a54890723caa0d78c158ca0a1c39c6d4c90bc1687552920997686ab5·...·]-6">}</span><span·class="p">,</span><span·class="w">
166 ·</span><span·class="p"·data-group-id="7255593745-7">{</span><span·class="ss">&#39;$end&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7255593745-7">}</span><span·class="p"·data-group-id="7255593745-1">]</span><span·class="p">.</span></code></pre><p>This·assumes·that·this·is·the·first·line·of·the·input·text,·and·that·<code·class="inline">'$end'</code>·is166 ·</span><span·class="p"·data-group-id="6212947494-7">{</span><span·class="ss">&#39;$end&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="6212947494-7">}</span><span·class="p"·data-group-id="6212947494-1">]</span><span·class="p">.</span></code></pre><p>This·assumes·that·this·is·the·first·line·of·the·input·text,·and·that·<code·class="inline">'$end'</code>·is
167 the·distinguished·<code·class="inline">end_of_input</code>·symbol.</p><p>The·Erlang·scanner·in·the·<code·class="inline">io</code>·module·can·be·used·as·a·starting·point·when167 the·distinguished·<code·class="inline">end_of_input</code>·symbol.</p><p>The·Erlang·scanner·in·the·<code·class="inline">io</code>·module·can·be·used·as·a·starting·point·when
168 writing·a·new·scanner.·Study·<code·class="inline">yeccscan.erl</code>·in·order·to·see·how·a·filter·can·be168 writing·a·new·scanner.·Study·<code·class="inline">yeccscan.erl</code>·in·order·to·see·how·a·filter·can·be
169 added·on·top·of·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#scan_erl_form/3"><code·class="inline">io:scan_erl_form/3</code></a>·to·provide·a·scanner·for·Yecc·that169 added·on·top·of·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#scan_erl_form/3"><code·class="inline">io:scan_erl_form/3</code></a>·to·provide·a·scanner·for·Yecc·that
170 tokenizes·grammar·files·before·parsing·them·with·the·Yecc·parser.·A·more·general170 tokenizes·grammar·files·before·parsing·them·with·the·Yecc·parser.·A·more·general
171 approach·to·scanner·implementation·is·to·use·a·scanner·generator·such·as171 approach·to·scanner·implementation·is·to·use·a·scanner·generator·such·as
172 <a·href="leex.html"><code·class="inline">leex</code></a>.</p><h2·id="module-grammar-definition-format"·class="section-heading">172 <a·href="leex.html"><code·class="inline">leex</code></a>.</p><h2·id="module-grammar-definition-format"·class="section-heading">
173 ··<a·href="#module-grammar-definition-format"·class="hover-link">173 ··<a·href="#module-grammar-definition-format"·class="hover-link">
Offset 229, 29 lines modifiedOffset 229, 29 lines modified
229 list·-&gt;·'('·')'.229 list·-&gt;·'('·')'.
230 list·-&gt;·'('·elements·')'.230 list·-&gt;·'('·elements·')'.
231 elements·-&gt;·element.231 elements·-&gt;·element.
232 elements·-&gt;·element·elements.232 elements·-&gt;·element·elements.
233 element·-&gt;·atom.233 element·-&gt;·atom.
234 element·-&gt;·list.</code></pre><p>This·grammar·can·be·used·to·generate·a·parser·which·parses·list·expressions,234 element·-&gt;·list.</code></pre><p>This·grammar·can·be·used·to·generate·a·parser·which·parses·list·expressions,
235 such·as·<code·class="inline">(),·(a),·(peter·charles),·(a·(b·c)·d·(())),·...</code>·provided·that·your235 such·as·<code·class="inline">(),·(a),·(peter·charles),·(a·(b·c)·d·(())),·...</code>·provided·that·your
236 scanner·tokenizes,·for·example,·the·input·<code·class="inline">(peter·charles)</code>·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7207220887-1">[</span><span·class="p"·data-group-id="7207220887-2">{</span><span·class="ss">&#39;(&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7207220887-2">}</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·920,·SHA:·0d9b136ba85cede1641b31893a107e813e0cadd5cd3b3381cbbc8d68ca68c326·...·]-5">}</span><span·class="p">,</span><span·class="w">236 scanner·tokenizes,·for·example,·the·input·<code·class="inline">(peter·charles)</code>·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0791590264-1">[</span><span·class="p"·data-group-id="0791590264-2">{</span><span·class="ss">&#39;(&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0791590264-2">}</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·920,·SHA:·d230fdfcc93b2ccfdfc9576a96b739aa5875907c02198f1289a6dbdb06fee228·...·]-5">}</span><span·class="p">,</span><span·class="w">
237 ·</span><span·class="p"·data-group-id="7207220887-6">{</span><span·class="ss">&#39;$end&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7207220887-6">}</span><span·class="p"·data-group-id="7207220887-1">]</span></code></pre><p>When·a·grammar·rule·is·used·by·the·parser·to·parse·(part·of)·the·input·string·as237 ·</span><span·class="p"·data-group-id="0791590264-6">{</span><span·class="ss">&#39;$end&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0791590264-6">}</span><span·class="p"·data-group-id="0791590264-1">]</span></code></pre><p>When·a·grammar·rule·is·used·by·the·parser·to·parse·(part·of)·the·input·string·as
238 a·grammatical·phrase,·the·associated·code·is·evaluated,·and·the·value·of·the238 a·grammatical·phrase,·the·associated·code·is·evaluated,·and·the·value·of·the
239 last·expression·becomes·the·value·of·the·parsed·phrase.·This·value·may·be·used239 last·expression·becomes·the·value·of·the·parsed·phrase.·This·value·may·be·used
240 by·the·parser·later·to·build·structures·that·are·values·of·higher·phrases·of240 by·the·parser·later·to·build·structures·that·are·values·of·higher·phrases·of
241 which·the·current·phrase·is·a·part.·The·values·initially·associated·with241 which·the·current·phrase·is·a·part.·The·values·initially·associated·with
242 terminal·category·phrases,·i.e.·input·tokens,·are·the·token·tuples·themselves.</p><p>Below·is·an·example·of·the·grammar·above·with·structure·building·code·added:</p><pre><code·class="text">list·-&gt;·'('·')'·:·nil.242 terminal·category·phrases,·i.e.·input·tokens,·are·the·token·tuples·themselves.</p><p>Below·is·an·example·of·the·grammar·above·with·structure·building·code·added:</p><pre><code·class="text">list·-&gt;·'('·')'·:·nil.
243 list·-&gt;·'('·elements·')'·:·'$2'.243 list·-&gt;·'('·elements·')'·:·'$2'.
244 elements·-&gt;·element·:·{cons,·'$1',·nil}.244 elements·-&gt;·element·:·{cons,·'$1',·nil}.
245 elements·-&gt;·element·elements·:·{cons,·'$1',·'$2'}.245 elements·-&gt;·element·elements·:·{cons,·'$1',·'$2'}.
246 element·-&gt;·atom·:·'$1'.246 element·-&gt;·atom·:·'$1'.
247 element·-&gt;·list·:·'$1'.</code></pre><p>With·this·code·added·to·the·grammar·rules,·the·parser·produces·the·following247 element·-&gt;·list·:·'$1'.</code></pre><p>With·this·code·added·to·the·grammar·rules,·the·parser·produces·the·following
248 value·(structure)·when·parsing·the·input·string·<code·class="inline">(a·b·c).</code>.·This·still·assumes248 value·(structure)·when·parsing·the·input·string·<code·class="inline">(a·b·c).</code>.·This·still·assumes
249 that·this·was·the·first·input·line·that·the·scanner·tokenized:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0266219977-1">{</span><span·class="ss">cons</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0266219977-2">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·567,·SHA:·86a45b74b4af2c9475f04b15452f8614e91b31e6844077214cb8408cf40169ef·...·]-4">}</span><span·class="p">,</span><span·class="w">249 that·this·was·the·first·input·line·that·the·scanner·tokenized:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2536507765-1">{</span><span·class="ss">cons</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2536507765-2">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·567,·SHA:·de238d85ec0ae9b33cfd3ddb3a07f982aba6ba7483bfb8f46a72a2498327ca0d·...·]-4">}</span><span·class="p">,</span><span·class="w">
250 ····························</span><span·class="p"·data-group-id="0266219977-5">{</span><span·class="ss">cons</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0266219977-6">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·344,·SHA:·913b0192f20263a456f09015c2980281fe35136e588aefdd2f77738b1b86de5f·...·]-1">}</span></code></pre><p>The·associated·code·contains·<code·class="inline">pseudo·variables</code>·<code·class="inline">'$1'</code>,·<code·class="inline">'$2'</code>,250 ····························</span><span·class="p"·data-group-id="2536507765-5">{</span><span·class="ss">cons</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2536507765-6">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·344,·SHA:·b150328f9396129b84e6f5cc42bd5c8a31dbb8d268582d3d92c7a75a197c2941·...·]-1">}</span></code></pre><p>The·associated·code·contains·<code·class="inline">pseudo·variables</code>·<code·class="inline">'$1'</code>,·<code·class="inline">'$2'</code>,
251 <code·class="inline">'$3'</code>,·and·so·on.··which·refer·to·(are·bound·to)·the·values251 <code·class="inline">'$3'</code>,·and·so·on.··which·refer·to·(are·bound·to)·the·values
252 associated·previously·by·the·parser·with·the·symbols·of·the·right-hand252 associated·previously·by·the·parser·with·the·symbols·of·the·right-hand
253 side·of·the·rule.·When·these·symbols·are·terminal·categories,·the253 side·of·the·rule.·When·these·symbols·are·terminal·categories,·the
254 values·are·token·tuples·of·the·input·string·(see·above).</p><p>The·associated·code·may·not·only·be·used·to·build·structures254 values·are·token·tuples·of·the·input·string·(see·above).</p><p>The·associated·code·may·not·only·be·used·to·build·structures
255 associated·with·phrases,·but·may·also·be·used·for·syntactic·and255 associated·with·phrases,·but·may·also·be·used·for·syntactic·and
256 semantic·tests,·printout·actions·(for·example·for·tracing),·and·so·on256 semantic·tests,·printout·actions·(for·example·for·tracing),·and·so·on
257 during·the·parsing·process.·Since·tokens·contain·positional·(line257 during·the·parsing·process.·Since·tokens·contain·positional·(line
Offset 266, 37 lines modifiedOffset 266, 37 lines modified
266 element·-&gt;·atom·:·'$1'.266 element·-&gt;·atom·:·'$1'.
267 element·-&gt;·list·:·'$1'.</code></pre><h2·id="module-generating-a-parser"·class="section-heading">267 element·-&gt;·list·:·'$1'.</code></pre><h2·id="module-generating-a-parser"·class="section-heading">
268 ··<a·href="#module-generating-a-parser"·class="hover-link">268 ··<a·href="#module-generating-a-parser"·class="hover-link">
269 ····<i·class="ri-link-m"·aria-hidden="true"></i>269 ····<i·class="ri-link-m"·aria-hidden="true"></i>
270 ··</a>270 ··</a>
271 ··<span·class="text">Generating·a·Parser</span>271 ··<span·class="text">Generating·a·Parser</span>
272 </h2>272 </h2>
273 <p>To·call·the·parser·generator,·use·the·following·command:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">yecc</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="6139358488-1">(</span><span·class="n">Grammarfile</span><span·class="p"·data-group-id="6139358488-1">)</span><span·class="p">.</span></code></pre><p>An·error·message·from·Yecc·will·be·shown·if·the·grammar·is·not·of·the·LALR·type273 <p>To·call·the·parser·generator,·use·the·following·command:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">yecc</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="4488120374-1">(</span><span·class="n">Grammarfile</span><span·class="p"·data-group-id="4488120374-1">)</span><span·class="p">.</span></code></pre><p>An·error·message·from·Yecc·will·be·shown·if·the·grammar·is·not·of·the·LALR·type
274 (for·example·too·ambiguous).·Shift/reduce·conflicts·are·resolved·in·favor·of274 (for·example·too·ambiguous).·Shift/reduce·conflicts·are·resolved·in·favor·of
275 shifting·if·there·are·no·operator·precedence·declarations.·Refer·to·the·<code·class="inline">yacc</code>275 shifting·if·there·are·no·operator·precedence·declarations.·Refer·to·the·<code·class="inline">yacc</code>
276 documentation·on·the·use·of·operator·precedence.</p><p>The·output·file·contains·Erlang·source·code·for·a·parser·module·with·module·name276 documentation·on·the·use·of·operator·precedence.</p><p>The·output·file·contains·Erlang·source·code·for·a·parser·module·with·module·name
277 equal·to·the·<code·class="inline">Parserfile</code>·parameter.·After·compilation,·the·parser·can·be·called277 equal·to·the·<code·class="inline">Parserfile</code>·parameter.·After·compilation,·the·parser·can·be·called
278 as·follows·(the·module·name·is·assumed·to·be·<code·class="inline">myparser</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">myparser</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="2641353315-1">(</span><span·class="nc">myscanner</span><span·class="p">:</span><span·class="nf">scan</span><span·class="p"·data-group-id="2641353315-2">(</span><span·class="n">Inport</span><span·class="p"·data-group-id="2641353315-2">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·b95a2849ee772846974bda31ce35d576bb9e38229f28f18e3ed204d94a11fb63·...·]-1">)</span></code></pre><p>The·call·format·can·be·different·if·a·customized·prologue·file·has·been·included278 as·follows·(the·module·name·is·assumed·to·be·<code·class="inline">myparser</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">myparser</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="5272318722-1">(</span><span·class="nc">myscanner</span><span·class="p">:</span><span·class="nf">scan</span><span·class="p"·data-group-id="5272318722-2">(</span><span·class="n">Inport</span><span·class="p"·data-group-id="5272318722-2">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·5e732cd9b3f101b6d3969c36143598cb0f7e2a6fa75640dfaeef22b9fa2f6464·...·]-1">)</span></code></pre><p>The·call·format·can·be·different·if·a·customized·prologue·file·has·been·included
279 when·generating·the·parser·instead·of·the·default·file279 when·generating·the·parser·instead·of·the·default·file
280 <code·class="inline">lib/parsetools/include/yeccpre.hrl</code>.</p><p>With·the·standard·prologue,·this·call·will·return·either·<code·class="inline">{ok,·Result}</code>,·where280 <code·class="inline">lib/parsetools/include/yeccpre.hrl</code>.</p><p>With·the·standard·prologue,·this·call·will·return·either·<code·class="inline">{ok,·Result}</code>,·where
281 <code·class="inline">Result</code>·is·a·structure·that·the·Erlang·code·of·the·grammar·file·has·built,·or281 <code·class="inline">Result</code>·is·a·structure·that·the·Erlang·code·of·the·grammar·file·has·built,·or
282 <code·class="inline">{error,·{Position,·Module,·Message}}</code>·if·there·was·a·syntax·error·in·the·input.</p><p><code·class="inline">Message</code>·is·something·which·may·be·converted·into·a·string·by·calling282 <code·class="inline">{error,·{Position,·Module,·Message}}</code>·if·there·was·a·syntax·error·in·the·input.</p><p><code·class="inline">Message</code>·is·something·which·may·be·converted·into·a·string·by·calling
283 <code·class="inline">Module:format_error(Message)</code>·and·printed·with·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#format/3"><code·class="inline">io:format/3</code></a>.</p><blockquote><h4·class="info">Note</h4><p>By·default,·the·parser·that·was·generated·will·not·print·out·error·messages·to283 <code·class="inline">Module:format_error(Message)</code>·and·printed·with·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#format/3"><code·class="inline">io:format/3</code></a>.</p><blockquote><h4·class="info">Note</h4><p>By·default,·the·parser·that·was·generated·will·not·print·out·error·messages·to
284 the·screen.·The·user·will·have·to·do·this·either·by·printing·the·returned284 the·screen.·The·user·will·have·to·do·this·either·by·printing·the·returned
285 error·messages,·or·by·inserting·tests·and·print·instructions·in·the·Erlang285 error·messages,·or·by·inserting·tests·and·print·instructions·in·the·Erlang
286 code·associated·with·the·syntax·rules·of·the·grammar·file.</p></blockquote><p>It·is·also·possible·to·make·the·parser·ask·for·more·input·tokens·when·needed·if286 code·associated·with·the·syntax·rules·of·the·grammar·file.</p></blockquote><p>It·is·also·possible·to·make·the·parser·ask·for·more·input·tokens·when·needed·if
287 the·following·call·format·is·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">myparser</span><span·class="p">:</span><span·class="nf">parse_and_scan</span><span·class="p"·data-group-id="3341896322-1">(</span><span·class="p"·data-group-id="3341896322-2">{</span><span·class="n">Function</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Args</span><span·class="p"·data-group-id="3341896322-2">}</span><span·class="p"·data-group-id="3341896322-1">)</span><span·class="w"> 
288 </span><span·class="nc">myparser</span><span·class="p">:</span><span·class="nf">parse_and_scan</span><span·class="p"·data-group-id="3341896322-3">(</span><span·class="p"·data-group-id="3341896322-4">{</span><span·class="n">Mod</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·386,·SHA:·52156bedf03f7abd47ce6d01f0216629393d29341d02ed3100262c7646b596f2·...·]287 the·following·call·format·is·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">myparser</span><span·class="p">:</span><span·class="nf">parse_and_scan</span><span·class="p"·data-group-id="5375804220-1">(</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·258,·SHA:·2fa532b84454d156803eed88304b7876e01648375aa071c77397d47e1e75d2a0·...·]
 288 </span><span·class="nc">myparser</span><span·class="p">:</span><span·class="nf">parse_and_scan</span><span·class="p"·data-group-id="5375804220-3">(</span><span·class="p"·data-group-id="5375804220-4">{</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tokenizer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Args</span><span·class="p"·data-group-id="5375804220-4">}</span><span·class="p"·data-group-id="5375804220-3">)</span></code></pre><p>The·tokenizer·<code·class="inline">Function</code>·is·either·a·fun·or·a·tuple·<code·class="inline">{Mod,·Tokenizer}</code>.·The·call
289 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/2"><code·class="inline">apply(Function,·Args)</code></a>·or289 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/2"><code·class="inline">apply(Function,·Args)</code></a>·or
290 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/2"><code·class="inline">apply({Mod,·Tokenizer},·Args)</code></a>·is·executed·whenever·a·new·token·is290 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/2"><code·class="inline">apply({Mod,·Tokenizer},·Args)</code></a>·is·executed·whenever·a·new·token·is
291 needed.·This,·for·example,·makes·it·possible·to·parse·from·a·file,·token·by291 needed.·This,·for·example,·makes·it·possible·to·parse·from·a·file,·token·by
292 token.</p><p>The·tokenizer·used·above·has·to·be·implemented·so·as·to·return·one·of·the292 token.</p><p>The·tokenizer·used·above·has·to·be·implemented·so·as·to·return·one·of·the
293 following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9011444986-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tokens</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EndPosition</span><span·class="p"·data-group-id="9011444986-1">}</span><span·class="w">293 following:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5818939316-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tokens</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EndPosition</span><span·class="p"·data-group-id="5818939316-1">}</span><span·class="w">
294 </span><span·class="p"·data-group-id="9011444986-2">{</span><span·class="ss">eof</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EndPosition</span><span·class="p"·data-group-id="9011444986-2">}</span><span·class="w">294 </span><span·class="p"·data-group-id="5818939316-2">{</span><span·class="ss">eof</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EndPosition</span><span·class="p"·data-group-id="5818939316-2">}</span><span·class="w">
295 </span><span·class="p"·data-group-id="9011444986-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Error_description</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EndPosition</span><span·class="p"·data-group-id="9011[·...·truncated·by·diffoscope;·len:·5,·SHA:·e73042e5013da7b38125c87dc43b007af55356fdcd59f0d921e7e42d8a140adb·...·]6-3">}</span></code></pre><p>This·conforms·to·the·format·used·by·the·scanner·in·the·Erlang·<code·class="inline">io</code>·library295 </span><span·class="p"·data-group-id="5818939316-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Error_description</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EndPosition</span><span·class="p"·data-group-id="5818[·...·truncated·by·diffoscope;·len:·5,·SHA:·7a1ee96b67249db091f923667d8230e30bbf2cd69e61789b9b9759c76dc41013·...·]6-3">}</span></code></pre><p>This·conforms·to·the·format·used·by·the·scanner·in·the·Erlang·<code·class="inline">io</code>·library
296 module.</p><p>If·<code·class="inline">{eof,·EndPosition}</code>·is·returned·immediately,·the·call·to·<code·class="inline">parse_and_scan/1</code>296 module.</p><p>If·<code·class="inline">{eof,·EndPosition}</code>·is·returned·immediately,·the·call·to·<code·class="inline">parse_and_scan/1</code>
297 returns·<code·class="inline">{ok,·eof}</code>.·If·<code·class="inline">{eof,·EndPosition}</code>·is·returned·before·the·parser297 returns·<code·class="inline">{ok,·eof}</code>.·If·<code·class="inline">{eof,·EndPosition}</code>·is·returned·before·the·parser
298 expects·end·of·input,·<code·class="inline">parse_and_scan/1</code>·will,·of·course,·return·an·error298 expects·end·of·input,·<code·class="inline">parse_and_scan/1</code>·will,·of·course,·return·an·error
299 message·(see·above).·Otherwise·<code·class="inline">{ok,·Result}</code>·is·returned.</p><h2·id="module-more-examples"·class="section-heading">299 message·(see·above).·Otherwise·<code·class="inline">{ok,·Result}</code>·is·returned.</p><h2·id="module-more-examples"·class="section-heading">
300 ··<a·href="#module-more-examples"·class="hover-link">300 ··<a·href="#module-more-examples"·class="hover-link">
301 ····<i·class="ri-link-m"·aria-hidden="true"></i>301 ····<i·class="ri-link-m"·aria-hidden="true"></i>
302 ··</a>302 ··</a>
Offset 338, 44 lines modifiedOffset 338, 44 lines modified
338 </span><span·class="n">Terminals</span><span·class="w">338 </span><span·class="n">Terminals</span><span·class="w">
339 </span><span·class="ss">atom</span><span·class="w">·</span><span·class="nb">float</span><span·class="w">·</span><span·class="ss">integer</span><span·class="w">·</span><span·class="ss">reserved_symbol</span><span·class="w">·</span><span·class="ss">reserved_word</span><span·class="w">·</span><span·class="ss">string</span><span·class="w">·</span><span·class="ss">char</span><span·class="w">·</span><span·class="ss">var</span><span·class="w">339 </span><span·class="ss">atom</span><span·class="w">·</span><span·class="nb">float</span><span·class="w">·</span><span·class="ss">integer</span><span·class="w">·</span><span·class="ss">reserved_symbol</span><span·class="w">·</span><span·class="ss">reserved_word</span><span·class="w">·</span><span·class="ss">string</span><span·class="w">·</span><span·class="ss">char</span><span·class="w">·</span><span·class="ss">var</span><span·class="w">
340 </span><span·class="ss">&#39;-&gt;&#39;</span><span·class="w">·</span><span·class="ss">&#39;:&#39;</span><span·class="w">·</span><span·class="ss">dot</span><span·class="p">.</span><span·class="w">340 </span><span·class="ss">&#39;-&gt;&#39;</span><span·class="w">·</span><span·class="ss">&#39;:&#39;</span><span·class="w">·</span><span·class="ss">dot</span><span·class="p">.</span><span·class="w">
341 </span><span·class="n">Rootsymbol</span><span·class="w">·</span><span·class="ss">grammar</span><span·class="p">.</span><span·class="w">341 </span><span·class="n">Rootsymbol</span><span·class="w">·</span><span·class="ss">grammar</span><span·class="p">.</span><span·class="w">
342 </span><span·class="n">Endsymbol</span><span·class="w">·</span><span·class="ss">&#39;$end&#39;</span><span·class="p">.</span><span·class="w">342 </span><span·class="n">Endsymbol</span><span·class="w">·</span><span·class="ss">&#39;$end&#39;</span><span·class="p">.</span><span·class="w">
343 </span><span·class="ss">grammar</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">declaration</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">343 </span><span·class="ss">grammar</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">declaration</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">
344 </span><span·class="ss">grammar</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">rule</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">344 </span><span·class="ss">grammar</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">rule</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">
345 </span><span·class="ss">declaration</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">symbol</span><span·class="w">·</span><span·class="ss">symbols</span><span·class="w">·</span><span·class="nc">dot</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-1">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="0157393270-1">}</span><span·class="p">.</span><span·class="w">345 </span><span·class="ss">declaration</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">symbol</span><span·class="w">·</span><span·class="ss">symbols</span><span·class="w">·</span><span·class="nc">dot</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-1">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="9682481079-1">}</span><span·class="p">.</span><span·class="w">
346 </span><span·class="ss">rule</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">head</span><span·class="w">·</span><span·class="ss">&#39;-&gt;&#39;</span><span·class="w">·</span><span·class="ss">symbols</span><span·class="w">·</span><span·class="ss">attached_code</span><span·class="w">·</span><span·class="nc">dot</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-2">{</span><span·class="ss">rule</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·80,·SHA:·f1c03dd89d4f963b8a0430c89011d3beaa421a63075b6663fb7297ebb0df14b9·...·]-3">]</span><span·class="p">,</span><span·class="w">346 </span><span·class="ss">rule</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">head</span><span·class="w">·</span><span·class="ss">&#39;-&gt;&#39;</span><span·class="w">·</span><span·class="ss">symbols</span><span·class="w">·</span><span·class="ss">attached_code</span><span·class="w">·</span><span·class="nc">dot</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-2">{</span><span·class="ss">rule</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-3">[</span><span·class="ss">&#39;$1&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·80,·SHA:·978041fb7290ca910666ce3b1bf5141e60f24616634972af457303e907563bee·...·]-3">]</span><span·class="p">,</span><span·class="w">
347 ········</span><span·class="ss">&#39;$4&#39;</span><span·class="p"·data-group-id="0157393270-2">}</span><span·class="p">.</span><span·class="w">347 ········</span><span·class="ss">&#39;$4&#39;</span><span·class="p"·data-group-id="9682481079-2">}</span><span·class="p">.</span><span·class="w">
348 </span><span·class="ss">head</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">348 </span><span·class="ss">head</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">
349 </span><span·class="ss">symbols</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-4">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0157393270-4">]</span><span·class="p">.</span><span·class="w">349 </span><span·class="ss">symbols</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-4">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="9682481079-4">]</span><span·class="p">.</span><span·class="w">
350 </span><span·class="ss">symbols</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">symbol</span><span·class="w">·</span><span·class="ss">symbols</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-5">[</span><span·class="ss">&#39;$1&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="0157393270-5">]</span><span·class="p">.</span><span·class="w">350 </span><span·class="ss">symbols</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">symbol</span><span·class="w">·</span><span·class="ss">symbols</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-5">[</span><span·class="ss">&#39;$1&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="9682481079-5">]</span><span·class="p">.</span><span·class="w">
351 </span><span·class="ss">attached_code</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">&#39;:&#39;</span><span·class="w">·</span><span·class="ss">tokens</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-6">{</span><span·class="ss">erlang_code</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="0157393270-6">}</span><span·class="p">.</span><span·class="w">351 </span><span·class="ss">attached_code</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">&#39;:&#39;</span><span·class="w">·</span><span·class="ss">tokens</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-6">{</span><span·class="ss">erlang_code</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="9682481079-6">}</span><span·class="p">.</span><span·class="w">
352 </span><span·class="ss">attached_code</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">&#39;$empty&#39;</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-7">{</span><span·class="ss">erlang_code</span><span·class="p">,</span><span·class="w">352 </span><span·class="ss">attached_code</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">&#39;$empty&#39;</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-7">{</span><span·class="ss">erlang_code</span><span·class="p">,</span><span·class="w">
353 ·················</span><span·class="p"·data-group-id="0157393270-8">[</span><span·class="p"·data-group-id="0157393270-9">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$undefined[·...·truncated·by·diffoscope;·len:·159,·SHA:·65d4c22c72aec1dfdf9e06b760d09ad3e5c14d6f32d93f97a68958c1ad013c31·...·]-7">}</span><span·class="p">.</span><span·class="w">353 ·················</span><span·class="p"·data-group-id="9682481079-8">[</span><span·class="p"·data-group-id="9682481079-9">{</span><span·class="ss">atom</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$undefined[·...·truncated·by·diffoscope;·len:·159,·SHA:·8f85eda1c48e456c12031a791b875cb230c6c702fcd5da68ba45149dffd50e6f·...·]-7">}</span><span·class="p">.</span><span·class="w">
354 </span><span·class="ss">tokens</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">token</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-10">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0157393270-10">]</span><span·class="p">.</span><span·class="w">354 </span><span·class="ss">tokens</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">token</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-10">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="9682481079-10">]</span><span·class="p">.</span><span·class="w">
355 </span><span·class="ss">tokens</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">token</span><span·class="w">·</span><span·class="ss">tokens</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-11">[</span><span·class="ss">&#39;$1&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="0157393270-11">]</span><span·class="p">.</span><span·class="w">355 </span><span·class="ss">tokens</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">token</span><span·class="w">·</span><span·class="ss">tokens</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-11">[</span><span·class="ss">&#39;$1&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="9682481079-11">]</span><span·class="p">.</span><span·class="w">
356 </span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">var</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0157393270-12">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0157393270-12">)</span><span·class="p">.</span><span·class="w">356 </span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">var</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="9682481079-12">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="9682481079-12">)</span><span·class="p">.</span><span·class="w">
357 </span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">atom</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0157393270-13">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0157393270-13">)</span><span·class="p">.</span><span·class="w">357 </span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">atom</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="9682481079-13">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="9682481079-13">)</span><span·class="p">.</span><span·class="w">
358 </span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">integer</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0157393270-14">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0157393270-14">)</span><span·class="p">.</span><span·class="w">358 </span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">integer</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="9682481079-14">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="9682481079-14">)</span><span·class="p">.</span><span·class="w">
359 </span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">reserved_word</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0157393270-15">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0157393270-15">)</span><span·class="p">.</span><span·class="w">359 </span><span·class="ss">symbol</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">reserved_word</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="9682481079-15">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="9682481079-15">)</span><span·class="p">.</span><span·class="w">
360 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">var</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">360 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">var</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">
361 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">atom</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">361 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">atom</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">
362 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nb">float</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">362 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nb">float</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">
363 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">integer</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">363 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">integer</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">
364 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">string</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">364 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">string</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">
365 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">char</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">365 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">char</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p">.</span><span·class="w">
366 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">reserved_symbol</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-16">{</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0157393270-17">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0157393270-17">)</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·207,·SHA:·bc40398de209409bc8556b04fcacd191ccd8edeedc01ac7044bcc6843207140c·...·]-16">}</span><span·class="p">.</span><span·class="w">366 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">reserved_symbol</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-16">{</span><span·class="nf">value_of</span><span·class="p"·data-group-id="9682481079-17">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="9682481079-17">)</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·207,·SHA:·588fb0d9e39e960e34e2be000e14bceb677cabfc4710814c0df0bb788c486728·...·]-16">}</span><span·class="p">.</span><span·class="w">
367 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">reserved_word</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-19">{</span><span·class="nf">value_of</span><span·class="p"·data-group-id="0157393270-20">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0157393270-20">)</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·207,·SHA:·847aa20855f3246f2d086384f045cb896029b346f8114422add7989a5f670be3·...·]-19">}</span><span·class="p">.</span><span·class="w">367 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">reserved_word</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-19">{</span><span·class="nf">value_of</span><span·class="p"·data-group-id="9682481079-20">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="9682481079-20">)</span><span·class="p">,</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·207,·SHA:·ec94a36adcb5e4f00b19ed9c8512266b214c022006949cd56de43bed0cad66e8·...·]-19">}</span><span·class="p">.</span><span·class="w">
368 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">&#39;-&gt;&#39;</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-22">{</span><span·class="ss">&#39;-&gt;&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">line_of</span><span·class="p"·data-group-id="0157393270-23">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·70,·SHA:·3beeaeb3604c3ceb7e9d0fb4aeb0b38970cbfedb007af67bbb9c3b238a946104·...·]-22">}</span><span·class="p">.</span><span·class="w">368 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">&#39;-&gt;&#39;</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-22">{</span><span·class="ss">&#39;-&gt;&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">line_of</span><span·class="p"·data-group-id="9682481079-23">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·70,·SHA:·d7b601dfcec3b18b8f7ccec071ec49e851278ae8951406f4f3701e7803fa19e0·...·]-22">}</span><span·class="p">.</span><span·class="w">
369 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">&#39;:&#39;</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0157393270-24">{</span><span·class="ss">&#39;:&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">line_of</span><span·class="p"·data-group-id="0157393270-25">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·d988e12415a00f4cd674bc323e98f386c618991b79eb31a389be22acd40f9a53·...·]-24">}</span><span·class="p">.</span><span·class="w">369 </span><span·class="ss">token</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">&#39;:&#39;</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9682481079-24">{</span><span·class="ss">&#39;:&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">line_of</span><span·class="p"·data-group-id="9682481079-25">(</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·66,·SHA:·5e0af72b449cd69722ddf96ffcb4b65e858c642fcc1deb1c99a53749bf4f3a4b·...·]-24">}</span><span·class="p">.</span><span·class="w">
370 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="ss">code</span><span·class="p">.</span><span·class="w">370 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="ss">code</span><span·class="p">.</span><span·class="w">
371 </span><span·class="nf">value_of</span><span·class="p"·data-group-id="0157393270-26">(</span><span·class="n">Token</span><span·class="p"·data-group-id="0157393270-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">371 </span><span·class="nf">value_of</span><span·class="p"·data-group-id="9682481079-26">(</span><span·class="n">Token</span><span·class="p"·data-group-id="9682481079-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
372 ····</span><span·class="nf">element</span><span·class="p"·data-group-id="0157393270-27">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Token</span><span·class="p"·data-group-id="0157393270-27">)</span><span·class="p">.</span><span·class="w">372 ····</span><span·class="nf">element</span><span·class="p"·data-group-id="9682481079-27">(</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Token</span><span·class="p"·data-group-id="9682481079-27">)</span><span·class="p">.</span><span·class="w">
373 </span><span·class="nf">line_of</span><span·class="p"·data-group-id="0157393270-28">(</span><span·class="n">Token</span><span·class="p"·data-group-id="0157393270-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">373 </span><span·class="nf">line_of</span><span·class="p"·data-group-id="9682481079-28">(</span><span·class="n">Token</span><span·class="p"·data-group-id="9682481079-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
374 ····</span><span·class="nf">element</span><span·class="p"·data-group-id="0157393270-29">(</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Token</span><span·class="p"·data-group-id="0157393270-29">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>The·symbols·<code·class="inline">'-&gt;'</code>,·and·<code·class="inline">':'</code>·have·to·be·treated·in·a·special·way,·as·they·are374 ····</span><span·class="nf">element</span><span·class="p"·data-group-id="9682481079-29">(</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Token</span><span·class="p"·data-group-id="9682481079-29">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>The·symbols·<code·class="inline">'-&gt;'</code>,·and·<code·class="inline">':'</code>·have·to·be·treated·in·a·special·way,·as·they·are
375 meta·symbols·of·the·grammar·notation,·as·well·as·terminal·symbols·of·the·Yecc375 meta·symbols·of·the·grammar·notation,·as·well·as·terminal·symbols·of·the·Yecc
376 grammar.</p></blockquote><p>5.·The·file·<code·class="inline">erl_parse.yrl</code>·in·the·<code·class="inline">lib/stdlib/src</code>·directory·contains·the376 grammar.</p></blockquote><p>5.·The·file·<code·class="inline">erl_parse.yrl</code>·in·the·<code·class="inline">lib/stdlib/src</code>·directory·contains·the
377 grammar·for·Erlang.</p><blockquote><h4·class="info">Note</h4><p>Syntactic·tests·are·used·in·the·code·associated·with·some·rules,·and·an·error377 grammar·for·Erlang.</p><blockquote><h4·class="info">Note</h4><p>Syntactic·tests·are·used·in·the·code·associated·with·some·rules,·and·an·error
378 is·thrown·(and·caught·by·the·generated·parser·to·produce·an·error·message)378 is·thrown·(and·caught·by·the·generated·parser·to·produce·an·error·message)
Max diff block lines reached; 925/50913 bytes (1.82%) of diff not shown.
652 B
html2text {}
Max HTML report size reached
651 B
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/.build
    
Offset 14, 15 lines modifiedOffset 14, 15 lines modified
14 dist/lato-latin-300-normal-YUMVEFOL.woff214 dist/lato-latin-300-normal-YUMVEFOL.woff2
15 dist/lato-latin-400-normal-W7754I4D.woff215 dist/lato-latin-400-normal-W7754I4D.woff2
16 dist/lato-latin-700-normal-2XVSBPG4.woff216 dist/lato-latin-700-normal-2XVSBPG4.woff2
17 dist/lato-latin-ext-300-normal-VPGGJKJL.woff217 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
18 dist/lato-latin-ext-400-normal-N27NCBWW.woff218 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
19 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff219 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
20 dist/remixicon-NKANDIL5.woff220 dist/remixicon-NKANDIL5.woff2
21 dist/search_data-118C23D3.js21 dist/search_data-E998F0E5.js
22 dist/sidebar_items-FB06B32D.js22 dist/sidebar_items-FB06B32D.js
23 index.html23 index.html
24 notes.html24 notes.html
25 public_key.html25 public_key.html
26 public_key_app.html26 public_key_app.html
27 public_key_records.html27 public_key_records.html
28 search.html28 search.html
1.48 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/api-reference.html
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ······<p·class="built-using">181 ······<p·class="built-using">
182 ········Built·using182 ········Built·using
183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
185 ······</p>185 ······</p>
186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
187 ····</footer>187 ····</footer>
188 ··</div>188 ··</div>
189 </main>189 </main>
190 </div>190 </div>
191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
192 <script>192 <script>
193 ··document.addEventListener("DOMContentLoaded",·function·()·{193 ··document.addEventListener("DOMContentLoaded",·function·()·{
695 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/notes.html
    
Offset 1301, 15 lines modifiedOffset 1301, 15 lines modified
1301 ······<p·class="built-using">1301 ······<p·class="built-using">
1302 ········Built·using1302 ········Built·using
1303 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1303 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1304 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1304 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1305 ······</p>1305 ······</p>
1306 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1306 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1307 ····</footer>1307 ····</footer>
1308 ··</div>1308 ··</div>
1309 </main>1309 </main>
1310 </div>1310 </div>
1311 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1311 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1312 <script>1312 <script>
1313 ··document.addEventListener("DOMContentLoaded",·function·()·{1313 ··document.addEventListener("DOMContentLoaded",·function·()·{
704 B
html2text {}
Max HTML report size reached
381 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/public_key.epub
2.42 KB
zipinfo {}
Max HTML report size reached
45.2 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
199 KB
OEBPS/using_public_key.xhtml
Max HTML report size reached
95.9 KB
OEBPS/public_key_records.xhtml
Max HTML report size reached
36.9 KB
OEBPS/public_key.xhtml
Max HTML report size reached
1.25 KB
OEBPS/content.opf
1.22 KB
OEBPS/content.opf
Max HTML report size reached
38.5 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/public_key.html
    
Offset 3319, 22 lines modifiedOffset 3319, 22 lines modified
3319 certificates·include·policies·the·constrained·policy·set·with3319 certificates·include·policies·the·constrained·policy·set·with
3320 potential·qualifiers·will·be·returned,·these·values·are·derived·from3320 potential·qualifiers·will·be·returned,·these·values·are·derived·from
3321 the·policy·tree·created·as·part·of·the·path·validation·algorithm.·The3321 the·policy·tree·created·as·part·of·the·path·validation·algorithm.·The
3322 constrained·set·can·be·constrained·only·by·the·Certificate·Authorities3322 constrained·set·can·be·constrained·only·by·the·Certificate·Authorities
3323 or·also·by·the·user·when·the·option·<code·class="inline">policy_set</code>·is·provided·to·this3323 or·also·by·the·user·when·the·option·<code·class="inline">policy_set</code>·is·provided·to·this
3324 function.·The·qualifiers·convey·information·about·the·valid·policy·and3324 function.·The·qualifiers·convey·information·about·the·valid·policy·and
3325 is·intended·as·information·to·end·users.</p><p>Available·options:</p><ul><li><p><strong>{verify_fun,·{fun(),·InitialUserState::term()}</strong>·-·The·fun·must·be3325 is·intended·as·information·to·end·users.</p><p>Available·options:</p><ul><li><p><strong>{verify_fun,·{fun(),·InitialUserState::term()}</strong>·-·The·fun·must·be
3326 defined·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="7050662167-1">(</span><span·class="n">OtpCert</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;OTPCertificate&#39;</span><span·class="p"·data-group-id="70506[·...·truncated·by·diffoscope;·len:·58,·SHA:·0665c74c6e39493efa6abd65680d560ca9b701cba62dc16a8fe9ddb6c8d757cf·...·]-2">}</span><span·class="p">,</span><span·class="w">3326 defined·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="9868496802-1">(</span><span·class="n">OtpCert</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;OTPCertificate&#39;</span><span·class="p"·data-group-id="98684[·...·truncated·by·diffoscope;·len:·58,·SHA:·f6010c26bbc8f42123c7a3ca4af18bf8e4f6dea5d24f3a54c7fcd4f0f4e75adb·...·]-2">}</span><span·class="p">,</span><span·class="w">
3327 ····</span><span·class="n">Event</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="7050662167-3">{</span><span·class="ss">bad_cert</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span><[·...·truncated·by·diffoscope;·len:·537,·SHA:·494617ccef1263c9e31c7170e6f45902a0647a6eddd57a904283745ddc889ed9·...·]-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3327 ····</span><span·class="n">Event</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9868496802-3">{</span><span·class="ss">bad_cert</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span><[·...·truncated·by·diffoscope;·len:·537,·SHA:·051dbf7da007fa5299f5673512b70a011483812e6d4f604318078ebcc89b91ca·...·]-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3328 ·············</span><span·class="p"·data-group-id="7050662167-7">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="7050662167-8">{</span><span·class="p"·data-group-id="70[·...·truncated·by·diffoscope;·len:·61,·SHA:·52da9a34cc2a8c55faaafbe82fbe12846b72036222e740e9a9eaff66ee9ad86f·...·]-7">}</span><span·class="p">,</span><span·class="w">3328 ·············</span><span·class="p"·data-group-id="9868496802-7">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="9868496802-8">{</span><span·class="p"·data-group-id="98[·...·truncated·by·diffoscope;·len:·61,·SHA:·bdde3bf42eebc2c753cffb0655e4f6160b31b0a6c77afaf9b21c077d8fe44e4f·...·]-7">}</span><span·class="p">,</span><span·class="w">
3329 ····</span><span·class="n">InitialUserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="7050662167-9">(</span><span·class="p"·data-group-id="7050662167-9">)</span><span·class="p"·data-group-id="7050662167-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3329 ····</span><span·class="n">InitialUserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="9868496802-9">(</span><span·class="p"·data-group-id="9868496802-9">)</span><span·class="p"·data-group-id="9868496802-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3330 ··</span><span·class="p"·data-group-id="7050662167-10">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span>[·...·truncated·by·diffoscope;·len:·149,·SHA:·52dc65d67c745212232202a7f5841e284fcef767e33bc8827089c9090f892f32·...·]-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3330 ··</span><span·class="p"·data-group-id="9868496802-10">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span>[·...·truncated·by·diffoscope;·len:·149,·SHA:·a0c3808ea662a843685033e151fa13eee56d6daa8961474a3a7d0b52d5856675·...·]-10">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3331 ··</span><span·class="p"·data-group-id="7050662167-12">{</span><span·class="ss">valid_peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</[·...·truncated·by·diffoscope;·len:·154,·SHA:·3df8a6695f8159a757d3d333c4009ebae62bb7acb38b5296585eb2978fc9e8eb·...·]-12">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3331 ··</span><span·class="p"·data-group-id="9868496802-12">{</span><span·class="ss">valid_peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</[·...·truncated·by·diffoscope;·len:·154,·SHA:·cb2afbaba2d39a4358dde61932fcc5f36dbb1272b95edb961b4271c19b8f17ee·...·]-12">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3332 ··</span><span·class="p"·data-group-id="7050662167-14">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><spa[·...·truncated·by·diffoscope;·len:·145,·SHA:·2721459b022bd1be7ed3f7ec410a96a2cdfda75fdc94f340816cf168a42f107b·...·]-14">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3332 ··</span><span·class="p"·data-group-id="9868496802-14">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><spa[·...·truncated·by·diffoscope;·len:·145,·SHA:·328ba26bbc7114cbf4b76830e09a7e28dc2db8a897dfd9f76470ba702d05bb74·...·]-14">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3333 ··</span><span·class="p"·data-group-id="7050662167-16">{</span><span·class="ss">unknown</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</spa[·...·truncated·by·diffoscope;·len:·151,·SHA:·eb48814dfd7859e8ad309ec6838d99f0b1b9e35828e19abb1964569cc5bf4426·...·]-16">}</span><span·class="p">.</span></code></pre><p>If·the·verify·callback·fun·returns·<code·class="inline">{fail,·Reason}</code>,·the·verification·process3333 ··</span><span·class="p"·data-group-id="9868496802-16">{</span><span·class="ss">unknown</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</spa[·...·truncated·by·diffoscope;·len:·151,·SHA:·ce4d305e680942079b82950361c02f9a104c264b8c05a4f418f8f3ac70ab520b·...·]-16">}</span><span·class="p">.</span></code></pre><p>If·the·verify·callback·fun·returns·<code·class="inline">{fail,·Reason}</code>,·the·verification·process
3334 is·immediately·stopped.·If·the·verify·callback·fun·returns3334 is·immediately·stopped.·If·the·verify·callback·fun·returns
3335 <code·class="inline">{valid,·UserState}</code>,·the·verification·process·is·continued.·This·can·be·used3335 <code·class="inline">{valid,·UserState}</code>,·the·verification·process·is·continued.·This·can·be·used
3336 to·accept·specific·path·validation·errors,·such·as·<code·class="inline">selfsigned_peer</code>,·as·well3336 to·accept·specific·path·validation·errors,·such·as·<code·class="inline">selfsigned_peer</code>,·as·well
3337 as·verifying·application-specific·extensions.·If·called·with·an·extension3337 as·verifying·application-specific·extensions.·If·called·with·an·extension
3338 unknown·to·the·user·application,·the·return·value·<code·class="inline">{unknown,·UserState}</code>·is·to3338 unknown·to·the·user·application,·the·return·value·<code·class="inline">{unknown,·UserState}</code>·is·to
3339 be·used.</p><blockquote><h4·class="warning">Warning</h4><p>Note·that·user·defined·custom·<code·class="inline">verify_fun</code>·may·alter·original·path3339 be·used.</p><blockquote><h4·class="warning">Warning</h4><p>Note·that·user·defined·custom·<code·class="inline">verify_fun</code>·may·alter·original·path
3340 validation·error·(e.g·<code·class="inline">selfsigned_peer</code>).·Use·with·caution.</p></blockquote></li><li><p><strong>{max_path_length,·integer()}</strong>·-·The·<code·class="inline">max_path_length</code>·is·the·maximum3340 validation·error·(e.g·<code·class="inline">selfsigned_peer</code>).·Use·with·caution.</p></blockquote></li><li><p><strong>{max_path_length,·integer()}</strong>·-·The·<code·class="inline">max_path_length</code>·is·the·maximum
Offset 3491, 17 lines modifiedOffset 3491, 17 lines modified
3491 certificate·is·in·agreement·with·at·least·one·of·the·<em>Reference·Identifier</em>·that3491 certificate·is·in·agreement·with·at·least·one·of·the·<em>Reference·Identifier</em>·that
3492 the·client·expects·to·be·connected·to.</p><p>The·function·is·intended·to·be·added·as·an·extra·client·check·of·the3492 the·client·expects·to·be·connected·to.</p><p>The·function·is·intended·to·be·added·as·an·extra·client·check·of·the
3493 peer·certificate·when·performing3493 peer·certificate·when·performing
3494 <a·href="#pkix_path_validation/3">public_key:pkix_path_validation/3</a></p><p>See·<a·href="https://tools.ietf.org/html/rfc6125">RFC·6125</a>·for·detailed·information3494 <a·href="#pkix_path_validation/3">public_key:pkix_path_validation/3</a></p><p>See·<a·href="https://tools.ietf.org/html/rfc6125">RFC·6125</a>·for·detailed·information
3495 about·hostname·verification.·The3495 about·hostname·verification.·The
3496 <a·href="using_public_key.html#verify_hostname">User's·Guide</a>·and3496 <a·href="using_public_key.html#verify_hostname">User's·Guide</a>·and
3497 <a·href="using_public_key.html#verify_hostname_examples">code·examples</a>·describes·this3497 <a·href="using_public_key.html#verify_hostname_examples">code·examples</a>·describes·this
3498 function·more·detailed.</p><p>The·option·funs·are·described·here:</p><ul><li><p><strong><code·class="inline">match_fun</code></strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="6638761480-1">(</span><span·class="n">ReferenceId</span><span·class="p">:</span><span·class="p">:</span><span·class="n">ReferenceId</span><span·class="p"·data-group-id="6638761480-2">(</span><span·class="p"·data-group-id="6638761480-2">)</span><span·class=[·...·truncated·by·diffoscope;·len:·259,·SHA:·b5130786080e13b1f989a49fd39af72faccd2090670278b07458fd14dcab7f54·...·]-3">)</span><span·class="p">,</span><span·class="w">3498 function·more·detailed.</p><p>The·option·funs·are·described·here:</p><ul><li><p><strong><code·class="inline">match_fun</code></strong></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="4861330536-1">(</span><span·class="n">ReferenceId</span><span·class="p">:</span><span·class="p">:</span><span·class="n">ReferenceId</span><span·class="p"·data-group-id="4861330536-2">(</span><span·class="p"·data-group-id="4861330536-2">)</span><span·class=[·...·truncated·by·diffoscope;·len:·259,·SHA:·5b6ee0dd7dec2bdc9ced15babad366cdf4792dadd730879ce05362de612d8c74·...·]-3">)</span><span·class="p">,</span><span·class="w">
3499 ····</span><span·class="n">PresentedId</span><span·class="p">:</span><span·class="p">:</span><span·class="p"·data-group-id="6638761480-4">{</span><span·class="ss">dNSName</span><span·class="p">,</span><span·class="nf">string</span><span·class="p"·data-group-id="6638761480-5">(</span><span·class="p"·data-group-id="6638761480-5">)</span><span·class="p"·data-group-id="6638761480-4[·...·truncated·by·diffoscope;·len:·332,·SHA:·b58a92deb186e5c094131ee7e20876b0956db0257ea503974cfc6470c43fc6f1·...·]-7">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3499 ····</span><span·class="n">PresentedId</span><span·class="p">:</span><span·class="p">:</span><span·class="p"·data-group-id="4861330536-4">{</span><span·class="ss">dNSName</span><span·class="p">,</span><span·class="nf">string</span><span·class="p"·data-group-id="4861330536-5">(</span><span·class="p"·data-group-id="4861330536-5">)</span><span·class="p"·data-group-id="4861330536-4[·...·truncated·by·diffoscope;·len:·332,·SHA:·133339db37c69cb229f62ef269fb1453e3a25060e19ca8152ded4b50caec8901·...·]-7">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3500 ·················</span><span·class="p"·data-group-id="6638761480-8">{</span><span·class="ss">iPAddress</span><span·class="p">,</span><span·class="nf">list</span><span·class="p"·data-group-id="6638761480-9">(</span><span·class="nf">byte</span><span·class="p"·data-group-id="6638761480-10">(</span><span·class="p[·...·truncated·by·diffoscope;·len:·953,·SHA:·74c5e1b0aacccb0c9ecc595d8b0be5056c33c3f48ca24de5dd9f613655c9f0ed·...·]-1">)</span></code></pre><p>This·function·replaces·the·default·host·name·matching·rules.·The·fun·should3500 ·················</span><span·class="p"·data-group-id="4861330536-8">{</span><span·class="ss">iPAddress</span><span·class="p">,</span><span·class="nf">list</span><span·class="p"·data-group-id="4861330536-9">(</span><span·class="nf">byte</span><span·class="p"·data-group-id="4861330536-10">(</span><span·class="p[·...·truncated·by·diffoscope;·len:·953,·SHA:·a87b97c53fba95bd6071970cad792797c7c579214d1f089fc413dabe6f00c1b3·...·]-1">)</span></code></pre><p>This·function·replaces·the·default·host·name·matching·rules.·The·fun·should
3501 return·a·boolean·to·tell·if·the·Reference·ID·and·Presented·ID·matches·or·not.3501 return·a·boolean·to·tell·if·the·Reference·ID·and·Presented·ID·matches·or·not.
3502 The·match·fun·can·also·return·a·third·value,·value,·the·atom·<code·class="inline">default</code>,·if·the3502 The·match·fun·can·also·return·a·third·value,·value,·the·atom·<code·class="inline">default</code>,·if·the
3503 default·matching·rules·shall·apply.·This·makes·it·possible·to·augment·the3503 default·matching·rules·shall·apply.·This·makes·it·possible·to·augment·the
3504 tests·with·a·special·case:</p><pre><code·class="text">fun(....)·-&gt;·true;···%·My·special·case3504 tests·with·a·special·case:</p><pre><code·class="text">fun(....)·-&gt;·true;···%·My·special·case
3505 ···(_,·_)·-&gt;·default·%·all·others·falls·back·to·the·inherit·tests3505 ···(_,·_)·-&gt;·default·%·all·others·falls·back·to·the·inherit·tests
3506 end</code></pre><p>See·<a·href="#pkix_verify_hostname_match_fun/1"><code·class="inline">pkix_verify_hostname_match_fun/1</code></a>·for·a·function·that·takes·a·protocol3506 end</code></pre><p>See·<a·href="#pkix_verify_hostname_match_fun/1"><code·class="inline">pkix_verify_hostname_match_fun/1</code></a>·for·a·function·that·takes·a·protocol
3507 name·as·argument·and·returns·a·<code·class="inline">fun/2</code>·suitable·for·this·option·and3507 name·as·argument·and·returns·a·<code·class="inline">fun/2</code>·suitable·for·this·option·and
Offset 3693, 21 lines modifiedOffset 3693, 21 lines modified
3693 ····································revocation_status_undetermined·|3693 ····································revocation_status_undetermined·|
3694 ····································{revocation_status_undetermined,·Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()}·|3694 ····································{revocation_status_undetermined,·Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()}·|
3695 ····································{revoked,·<a·href="#t:crl_reason/0">crl_reason</a>()}.</pre>3695 ····································{revoked,·<a·href="#t:crl_reason/0">crl_reason</a>()}.</pre>
  
3696 ······</div>3696 ······</div>
  
3697 <p>Performs·CRL·validation.·It·is·intended·to·be·called·from·the·verify·fun·of3697 <p>Performs·CRL·validation.·It·is·intended·to·be·called·from·the·verify·fun·of
3698 <a·href="#pkix_path_validation/3">pkix_path_validation/3·</a>.</p><p>Available·options:</p><ul><li><p><strong>{update_crl,·fun()}</strong>·-·The·fun·has·the·following·type·specification:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3009089834-1">(</span><span·class="o">#</span><span·class="ss">&#39;DistributionPoint&#39;</span><span·class="p"·data-group-id="3009089834-2">{</span><span·class="p"·data-group-id="3009089834-2">}</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·215,·SHA:·9aea3ca916ecbb58900fd17f25ae3833963fc9cf187d42fcb0b2eb566838e027·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3698 <a·href="#pkix_path_validation/3">pkix_path_validation/3·</a>.</p><p>Available·options:</p><ul><li><p><strong>{update_crl,·fun()}</strong>·-·The·fun·has·the·following·type·specification:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="6027793947-1">(</span><span·class="o">#</span><span·class="ss">&#39;DistributionPoint&#39;</span><span·class="p"·data-group-id="6027793947-2">{</span><span·class="p"·data-group-id="6027793947-2">}</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·215,·SHA:·dfefd9bce81ab911b474fee0ff136a9104db2c1bb1c905fa535461305b34cddb·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3699 ········</span><span·class="o">#</span><span·class="ss">&#39;CertificateList&#39;</span><span·class="p"·data-group-id="3009089834-4">{</span><span·class="p"·data-group-id="3009089834-4">}</span></code></pre><p>The·fun·uses·the·information·in·the·distribution·point·to·access·the·latest3699 ········</span><span·class="o">#</span><span·class="ss">&#39;CertificateList&#39;</span><span·class="p"·data-group-id="6027793947-4">{</span><span·class="p"·data-group-id="6027793947-4">}</span></code></pre><p>The·fun·uses·the·information·in·the·distribution·point·to·access·the·latest
3700 possible·version·of·the·CRL.·If·this·fun·is·not·specified,·Public·Key·uses·the3700 possible·version·of·the·CRL.·If·this·fun·is·not·specified,·Public·Key·uses·the
3701 default·implementation:</p><pre><code·class="text">·fun(_DP,·CRL)·-&gt;·CRL·end</code></pre></li><li><p><strong>{issuer_fun,·fun()}</strong>·-·The·fun·has·the·following·type·specification:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="3661314828-1">(</span><span·class="o">#</span><span·class="ss">&#39;DistributionPoint&#39;</span><span·class="p"·data-group-id="3661314828-2">{</span><span·class="p"·data-group-id="3661314828-2">}</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·161,·SHA:·07b91bc5b33f946086ca94459c286f79e73be7b2090d454237e8667b7ce0cbb8·...·]-3">}</span><span·class="p">,</span><span·class="w">3701 default·implementation:</p><pre><code·class="text">·fun(_DP,·CRL)·-&gt;·CRL·end</code></pre></li><li><p><strong>{issuer_fun,·fun()}</strong>·-·The·fun·has·the·following·type·specification:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="3817537747-1">(</span><span·class="o">#</span><span·class="ss">&#39;DistributionPoint&#39;</span><span·class="p"·data-group-id="3817537747-2">{</span><span·class="p"·data-group-id="3817537747-2">}</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·161,·SHA:·044475f19fd1df20ce4106981b1660782de3aec393320b07353488dc4b2fd8a4·...·]-3">}</span><span·class="p">,</span><span·class="w">
3702 ····</span><span·class="p"·data-group-id="3661314828-4">{</span><span·class="ss">rdnSequence</span><span·class="p">,</span><span·class="p"·data-group-id="3661314828-5">[</span><span·class="o">#</span><span·class="ss">&#39;AttributeTypeAndValue&#39;</span><span·class="p"·data-group-id="3661314828-6"[·...·truncated·by·diffoscope;·len:·391,·SHA:·7b5b901b8e021e0fdc84463e51a3fbc2385276f80b05c6c029ebfd7043a23f3d·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3702 ····</span><span·class="p"·data-group-id="3817537747-4">{</span><span·class="ss">rdnSequence</span><span·class="p">,</span><span·class="p"·data-group-id="3817537747-5">[</span><span·class="o">#</span><span·class="ss">&#39;AttributeTypeAndValue&#39;</span><span·class="p"·data-group-id="3817537747-6"[·...·truncated·by·diffoscope;·len:·391,·SHA:·7e39e5c7222744019c15b359693c0a11cc684d6c0ed3c8cb8eff009821cae6e4·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3703 ··</span><span·class="p"·data-group-id="3661314828-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;OTPCertificate&#39;</span><span·class="p"·data-group-id="3661314828-9">{</span><span·class="p"·data-group-id="36613[·...·truncated·by·diffoscope;·len:·249,·SHA:·9cf047de11fe66f7730d5991d641e822cd93c44a2d31d363714518825f35e19a·...·]-8">}</span></code></pre><p>The·fun·returns·the·root·certificate·and·certificate·chain·that·has·signed·the3703 ··</span><span·class="p"·data-group-id="3817537747-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;OTPCertificate&#39;</span><span·class="p"·data-group-id="3817537747-9">{</span><span·class="p"·data-group-id="38175[·...·truncated·by·diffoscope;·len:·249,·SHA:·feee14602925dfd27712d5f0567f14bdb269b712b87ad1a1cf6ba76c7c87d4fa·...·]-8">}</span></code></pre><p>The·fun·returns·the·root·certificate·and·certificate·chain·that·has·signed·the
3704 CRL.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5113420719-1">(</span><span·class="n">DP</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CRL</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Issuer</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·430,·SHA:·e33119655e540ad981a49757c025966cc07c76d7eb1349bdf8b5aaffadf7fbba·...·]-2">}</span></code></pre></li><li><p><strong>{undetermined_details,·boolean()}</strong>·-·Defaults·to·false.·When·revocation3704 CRL.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="4346852435-1">(</span><span·class="n">DP</span><span·class="p">,</span><span·class="w">·</span><span·class="n">CRL</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Issuer</span><span·class="p">,</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·430,·SHA:·05f40c130398e3f141a6a9f0aa97a47b3146cd5f14904ff321832ce4ef3b7cc7·...·]-2">}</span></code></pre></li><li><p><strong>{undetermined_details,·boolean()}</strong>·-·Defaults·to·false.·When·revocation
3705 status·cannot·be·determined,·and·this·option·is·set·to·true,·details·of·why·no3705 status·cannot·be·determined,·and·this·option·is·set·to·true,·details·of·why·no
3706 CRLs·where·accepted·are·included·in·the·return·value.</p></li></ul>3706 CRLs·where·accepted·are·included·in·the·return·value.</p></li></ul>
3707 ··</section>3707 ··</section>
3708 </section>3708 </section>
3709 <section·class="detail"·id="pkix_dist_point/1">3709 <section·class="detail"·id="pkix_dist_point/1">
  
3710 ··<div·class="detail-header">3710 ··<div·class="detail-header">
Offset 4047, 26 lines modifiedOffset 4047, 26 lines modified
4047 certificate,·but·makes·the·certificate·useful·for·both·roles.</p><p>Explanation·of·the·options·used·to·customize·certificates·in·the·generated4047 certificate,·but·makes·the·certificate·useful·for·both·roles.</p><p>Explanation·of·the·options·used·to·customize·certificates·in·the·generated
4048 chains:</p><ul><li><p><strong>{digest,·digest_type()}</strong>·-·Hash·algorithm·to·be·used·for·signing·the4048 chains:</p><ul><li><p><strong>{digest,·digest_type()}</strong>·-·Hash·algorithm·to·be·used·for·signing·the
4049 certificate·together·with·the·key·option.·Defaults·to·sha·that·is·sha1.</p></li><li><p><strong>{key,··ec_params()|·{rsa,·Size:pos_integer(),·Prime::pos_integer()}·|·private_key()}</strong>·-·Parameters·to·be·used·to·call4049 certificate·together·with·the·key·option.·Defaults·to·sha·that·is·sha1.</p></li><li><p><strong>{key,··ec_params()|·{rsa,·Size:pos_integer(),·Prime::pos_integer()}·|·private_key()}</strong>·-·Parameters·to·be·used·to·call
4050 public_key:generate_key/1,·to·generate·a·key,·or·an·existing·key.·Defaults·to4050 public_key:generate_key/1,·to·generate·a·key,·or·an·existing·key.·Defaults·to
4051 generating·an·ECDSA·key.·Note·this·could·fail·if·Erlang/OTP·is·compiled·with·a4051 generating·an·ECDSA·key.·Note·this·could·fail·if·Erlang/OTP·is·compiled·with·a
4052 very·old·cryptolib.</p></li><li><p><strong>{validity,·{From::erlang:timestamp(),·To::erlang:timestamp()}}</strong>·-·The4052 very·old·cryptolib.</p></li><li><p><strong>{validity,·{From::erlang:timestamp(),·To::erlang:timestamp()}}</strong>·-·The
4053 validity·period·of·the·certificate.</p></li><li><p><strong>{extensions,·[#'Extension'{}]}</strong>·-·Extensions·to·include·in·the4053 validity·period·of·the·certificate.</p></li><li><p><strong>{extensions,·[#'Extension'{}]}</strong>·-·Extensions·to·include·in·the
4054 certificate.</p><p>Default·extensions·included·in·CA·certificates·if·not·otherwise·specified·are:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2705504025-1">[</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="2705504025-2">{</span><span·class="ss">extnID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">&#39;id-ce-keyUsage&#39;</span><span·class="p">,</span><span·class="w">4054 certificate.</p><p>Default·extensions·included·in·CA·certificates·if·not·otherwise·specified·are:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1531033506-1">[</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="1531033506-2">{</span><span·class="ss">extnID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">&#39;id-ce-keyUsage&#39;</span><span·class="p">,</span><span·class="w">
4055 ··············</span><span·class="ss">extnValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2705504025-3">[</span><span·class="ss">keyCertSign</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cRLSign</span><span·class="p"·data-group-id="2705504025-3">]</span><span·class="p">,</span><span·class="w">4055 ··············</span><span·class="ss">extnValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1531033506-3">[</span><span·class="ss">keyCertSign</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">cRLSign</span><span·class="p"·data-group-id="1531033506-3">]</span><span·class="p">,</span><span·class="w">
4056 ··············</span><span·class="ss">critical</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="2705504025-2">}</span><span·class="p">,</span><span·class="w">4056 ··············</span><span·class="ss">critical</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="1531033506-2">}</span><span·class="p">,</span><span·class="w">
4057 </span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="2705504025-4">{</span><span·class="ss">extnID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">&#39;id-ce-basicConstraints&#39;</span><span·class="p">,</span><span·class="w">4057 </span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="1531033506-4">{</span><span·class="ss">extnID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">&#39;id-ce-basicConstraints&#39;</span><span·class="p">,</span><span·class="w">
4058 ·············</span><span·class="ss">extnValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;BasicConstraints&#39;</span><span·class="p"·data-group-id="2705504025-5">{</span><span·class="ss">cA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="2705504025-5">}</span><span·class="p">,</span><span·class="w">4058 ·············</span><span·class="ss">extnValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;BasicConstraints&#39;</span><span·class="p"·data-group-id="1531033506-5">{</span><span·class="ss">cA</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="1531033506-5">}</span><span·class="p">,</span><span·class="w">
4059 ·············</span><span·class="ss">critical</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="2705504025-4">}</span><span·class="p"·data-group-id="2705504025-1">]</span></code></pre><p>Default·extensions·included·in·the·server·peer·cert·if·not·otherwise·specified4059 ·············</span><span·class="ss">critical</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="1531033506-4">}</span><span·class="p"·data-group-id="1531033506-1">]</span></code></pre><p>Default·extensions·included·in·the·server·peer·cert·if·not·otherwise·specified
4060 are:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6865074729-1">[</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="6865074729-2">{</span><span·class="ss">extnID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">&#39;id-ce-keyUsage&#39;</span><span·class="p">,</span><span·class="w">4060 are:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0533906555-1">[</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="0533906555-2">{</span><span·class="ss">extnID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">&#39;id-ce-keyUsage&#39;</span><span·class="p">,</span><span·class="w">
4061 ··············</span><span·class="ss">extnValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6865074729-3">[</span><span·class="ss">digitalSignature</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">keyAgreement</span><span·class="p"·data-group-id="6865074729-3">]</span><span·class="p">,</span><span·class="w">4061 ··············</span><span·class="ss">extnValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0533906555-3">[</span><span·class="ss">digitalSignature</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">keyAgreement</span><span·class="p"·data-group-id="0533906555-3">]</span><span·class="p">,</span><span·class="w">
4062 ··············</span><span·class="ss">critical</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="6865074729-2">}</span><span·class="p">,</span><span·class="w">4062 ··············</span><span·class="ss">critical</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="0533906555-2">}</span><span·class="p">,</span><span·class="w">
4063 </span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="6865074729-4">{</span><span·class="ss">extnID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">&#39;id-ce-subjectAltName&#39;</span><span·class="p">,</span><span·class="w">4063 </span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="0533906555-4">{</span><span·class="ss">extnID</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">&#39;id-ce-subjectAltName&#39;</span><span·class="p">,</span><span·class="w">
4064 ·············</span><span·class="ss">extnValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6865074729-5">[</span><span·class="p"·data-group-id="6865074729-6">{</span><span·class="ss">dNSName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Hostname</span><span·class="p"·data-group-id="6865074729-6">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·9cee41a611c29150132ac5fb75f8390128db5b679d1a14259568d0034caa95bb·...·]-5">]</span><span·class="p">,</span><span·class="w">4064 ·············</span><span·class="ss">extnValue</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0533906555-5">[</span><span·class="p"·data-group-id="0533906555-6">{</span><span·class="ss">dNSName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Hostname</span><span·class="p"·data-group-id="0533906555-6">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·959946761cacb1d2115a6be3872e85340d289f4b8c8f34d3e7d86a9b9db88ca9·...·]-5">]</span><span·class="p">,</span><span·class="w">
4065 ·············</span><span·class="ss">critical</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="6865074729-4">}</span><span·class="p"·data-group-id="6865074729-1">]</span></code></pre><p>Hostname·is·the·result·of·calling·net_adm:localhost()·in·the·Erlang·node·where4065 ·············</span><span·class="ss">critical</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="0533906555-4">}</span><span·class="p"·data-group-id="0533906555-1">]</span></code></pre><p>Hostname·is·the·result·of·calling·net_adm:localhost()·in·the·Erlang·node·where
4066 this·function·is·called.</p></li></ul><blockquote><h4·class="info">Note</h4><p>Note·that·the·generated·certificates·and·keys·does·not·provide·a·formally4066 this·function·is·called.</p></li></ul><blockquote><h4·class="info">Note</h4><p>Note·that·the·generated·certificates·and·keys·does·not·provide·a·formally
4067 correct·PKIX-trust-chain·and·they·cannot·be·used·to·achieve·real·security.4067 correct·PKIX-trust-chain·and·they·cannot·be·used·to·achieve·real·security.
4068 This·function·is·provided·for·testing·purposes·only.</p></blockquote>4068 This·function·is·provided·for·testing·purposes·only.</p></blockquote>
4069 ··</section>4069 ··</section>
4070 </section>4070 </section>
4071 <section·class="detail"·id="pkix_test_root_cert/2">4071 <section·class="detail"·id="pkix_test_root_cert/2">
  
Offset 4440, 15 lines modifiedOffset 4440, 15 lines modified
4440 ······<p·class="built-using">4440 ······<p·class="built-using">
4441 ········Built·using4441 ········Built·using
4442 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the4442 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
4443 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>4443 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
4444 ······</p>4444 ······</p>
4445 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4445 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
4446 ····</footer>4446 ····</footer>
4447 ··</div>4447 ··</div>
4448 </main>4448 </main>
4449 </div>4449 </div>
4450 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>4450 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
4451 <script>4451 <script>
4452 ··document.addEventListener("DOMContentLoaded",·function·()·{4452 ··document.addEventListener("DOMContentLoaded",·function·()·{
807 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/public_key_app.html
    
Offset 221, 15 lines modifiedOffset 221, 15 lines modified
221 ······<p·class="built-using">221 ······<p·class="built-using">
222 ········Built·using222 ········Built·using
223 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the223 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
224 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>224 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
225 ······</p>225 ······</p>
226 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>226 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
227 ····</footer>227 ····</footer>
228 ··</div>228 ··</div>
229 </main>229 </main>
230 </div>230 </div>
231 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>231 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
232 <script>232 <script>
233 ··document.addEventListener("DOMContentLoaded",·function·()·{233 ··document.addEventListener("DOMContentLoaded",·function·()·{
696 B
html2text {}
Max HTML report size reached
97.5 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/public_key_records.html
    
Offset 125, 428 lines modifiedOffset 125, 428 lines modified
125 ····<span>Public-Key·Records</span>125 ····<span>Public-Key·Records</span>
126 ··</h1>126 ··</h1>
  
127 <p>This·chapter·briefly·describes·Erlang·records·derived·from·ASN.1·specifications127 <p>This·chapter·briefly·describes·Erlang·records·derived·from·ASN.1·specifications
128 used·to·handle·public·key·infrastructure.·The·scope·is·to·describe·the·data128 used·to·handle·public·key·infrastructure.·The·scope·is·to·describe·the·data
129 types·of·each·component,·not·the·semantics.·For·information·on·the·semantics,129 types·of·each·component,·not·the·semantics.·For·information·on·the·semantics,
130 refer·to·the·relevant·standards·and·RFCs·linked·in·the·sections·below.</p><p>Use·the·following·include·directive·to·get·access·to·the·records·and·constant130 refer·to·the·relevant·standards·and·RFCs·linked·in·the·sections·below.</p><p>Use·the·following·include·directive·to·get·access·to·the·records·and·constant
131 macros·described·in·the·following·sections:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="6076956373-1">(</span><span·class="s">&quot;public_key/include/public_key.hrl&quot;</span><span·class="p"·data-group-id="6076956373-1">)</span><span·class="p">.</span></code></pre><h2·id="data-types"·class="section-heading">131 macros·described·in·the·following·sections:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="1952558810-1">(</span><span·class="s">&quot;public_key/include/public_key.hrl&quot;</span><span·class="p"·data-group-id="1952558810-1">)</span><span·class="p">.</span></code></pre><h2·id="data-types"·class="section-heading">
132 ··<a·href="#data-types"·class="hover-link">132 ··<a·href="#data-types"·class="hover-link">
133 ····<i·class="ri-link-m"·aria-hidden="true"></i>133 ····<i·class="ri-link-m"·aria-hidden="true"></i>
134 ··</a>134 ··</a>
135 ··<span·class="text">Data·Types</span>135 ··<span·class="text">Data·Types</span>
136 </h2>136 </h2>
137 <p>Common·non-standard·Erlang·data·types·used·to·describe·the·record·fields·in·the137 <p>Common·non-standard·Erlang·data·types·used·to·describe·the·record·fields·in·the
138 following·sections·and·which·are·not·defined·in·the·Public·Key138 following·sections·and·which·are·not·defined·in·the·Public·Key
139 <a·href="public_key.html">Reference·Manual</a>·follows·here:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">time</span><span·class="p"·data-group-id="6019511230-1">(</span><span·class="p"·data-group-id="6019511230-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">utc_time</span><span·class="p"·data-group-id="6019511230-2">(</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·231,·SHA:·64f0d0e13a5e2919f7281ebd67ccdac673a15f4cb9831fa5d854226c8f2f1849·...·]-3">)</span><span·class="w">139 <a·href="public_key.html">Reference·Manual</a>·follows·here:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">time</span><span·class="p"·data-group-id="8409284255-1">(</span><span·class="p"·data-group-id="8409284255-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">utc_time</span><span·class="p"·data-group-id="8409284255-2">(</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·231,·SHA:·d80bf5d919c8d1e58ad479eedaf50c8fbca33bea5aafc6b17dec257117e31aa1·...·]-3">)</span><span·class="w">
  
140 </span><span·class="nf">utc_time</span><span·class="p"·data-group-id="6019511230-4">(</span><span·class="p"·data-group-id="6019511230-4">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6019511230-5">{</span><span·class="ss">utcTime</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·113,·SHA:·558c7168c649b061082521f61b0ba4d4c652710ba8de9a8e72a90bd434f8c7a1·...·]-5">}</span><span·class="w">140 </span><span·class="nf">utc_time</span><span·class="p"·data-group-id="8409284255-4">(</span><span·class="p"·data-group-id="8409284255-4">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8409284255-5">{</span><span·class="ss">utcTime</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·113,·SHA:·6264bd38e86c2beefab1c448a9c57e1d993c80d070e5d3ef8c06ab9c72a7c450·...·]-5">}</span><span·class="w">
  
141 </span><span·class="nf">general_time</span><span·class="p"·data-group-id="6019511230-6">(</span><span·class="p"·data-group-id="6019511230-6">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6019511230-7">{</span><span·class="ss">generalTime</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·118,·SHA:·c896e47a83cf629fa264866b6f089b75b8f2e7a7d6483baaa1119e78015be8c4·...·]-7">}</span><span·class="w">141 </span><span·class="nf">general_time</span><span·class="p"·data-group-id="8409284255-6">(</span><span·class="p"·data-group-id="8409284255-6">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8409284255-7">{</span><span·class="ss">generalTime</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·118,·SHA:·fc7b3d891e92da724c5139b241cf364847b2e9f5ba0fe8f6389e265e425177f6·...·]-7">}</span><span·class="w">
  
142 </span><span·class="nf">general_name</span><span·class="p"·data-group-id="6019511230-8">(</span><span·class="p"·data-group-id="6019511230-8">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6019511230-9">{</span><span·class="ss">rfc822Name</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·205,·SHA:·786bc6c85fedc69fa375318f19049f85d13707779c701afb2ed24754832a3481·...·]-9">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">142 </span><span·class="nf">general_name</span><span·class="p"·data-group-id="8409284255-8">(</span><span·class="p"·data-group-id="8409284255-8">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8409284255-9">{</span><span·class="ss">rfc822Name</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·205,·SHA:·8102536b2d93d710c9727d66f6b9ee2ab5f7b1b8579e903ddf5ec0fd62067610·...·]-9">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
143 ·················</span><span·class="p"·data-group-id="6019511230-11">{</span><span·class="ss">dNSName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="6019511230-12">(</span><span·class="p"·data-group-id="6019511230-12">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·e87001f87264ec7d780ea94054d31aff337b8d3425ab5b44680e25440d360970·...·]-11">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">143 ·················</span><span·class="p"·data-group-id="8409284255-11">{</span><span·class="ss">dNSName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="8409284255-12">(</span><span·class="p"·data-group-id="8409284255-12">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·e42ff1cd59c2434152d25a02576ba8cd5dd48e71d352190be351dfffdf77e7c7·...·]-11">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
144 ·················</span><span·class="p"·data-group-id="6019511230-13">{</span><span·class="ss">x400Address</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="6019511230-14">(</span><span·class="p"·data-group-id="6019511230-14">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">144 ·················</span><span·class="p"·data-group-id="8409284255-13">{</span><span·class="ss">x400Address</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="8409284255-14">(</span><span·class="p"·data-group-id="8409284255-14">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
145 ·················</span><span·class="p"·data-group-id="6019511230-15">{</span><span·class="ss">directoryName</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6019511230-16">{</span><span·class="ss">rdnSequence</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·379,·SHA:·3037aab59d28766832ed79a8c13b3ce28b3ea273d3da68e15d222889a6647ab6·...·]-15">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">145 ·················</span><span·class="p"·data-group-id="8409284255-15">{</span><span·class="ss">directoryName</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8409284255-16">{</span><span·class="ss">rdnSequence</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·379,·SHA:·316cf0d829574f1f251d340ac4912793aad27a3cc42d7004394eacb40f35a595·...·]-15">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
146 ·················</span><span·class="p"·data-group-id="6019511230-19">{</span><span·class="ss">ediPartyName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">special_string</span><span·class="p"·data-group-id="6019511230-20">(</span><span·class="p"·data-group-id="6019511230-20">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·c8dc480d6f0c3faa578ffbbaab48158c18a214e860c9a7d999889c07d02b5885·...·]-19">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">146 ·················</span><span·class="p"·data-group-id="8409284255-19">{</span><span·class="ss">ediPartyName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">special_string</span><span·class="p"·data-group-id="8409284255-20">(</span><span·class="p"·data-group-id="8409284255-20">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·d909e5bc42aa14c490942d93a3b81e10d36120d08820358ecadace45369cea09·...·]-19">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
147 ·················</span><span·class="p"·data-group-id="6019511230-21">{</span><span·class="ss">ediPartyName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">special_string</span><span·class="p"·data-group-id="6019511230-22">(</span><span·class="p"·data-group-id="6019511230-22">)</span><sp[·...·truncated·by·diffoscope;·len:·232,·SHA:·74ec1c85797471b8738d376c9561297656524c2c58152258fea04aa41333c6e4·...·]-21">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">147 ·················</span><span·class="p"·data-group-id="8409284255-21">{</span><span·class="ss">ediPartyName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">special_string</span><span·class="p"·data-group-id="8409284255-22">(</span><span·class="p"·data-group-id="8409284255-22">)</span><sp[·...·truncated·by·diffoscope;·len:·232,·SHA:·14e64da25c778cb49e384d5f01f2444c3ffc74b54d6bfd787433b54c28205c8e·...·]-21">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
148 ·················</span><span·class="p"·data-group-id="6019511230-24">{</span><span·class="ss">uniformResourceIdentifier</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="6019511230-25">(</span><span·class="p"·data-group-id="6019511230-25">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·43eb4be1dc8d9349abbd50953c0209985d5d79fdd101a2f553496f9c4946d9c8·...·]-24">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">148 ·················</span><span·class="p"·data-group-id="8409284255-24">{</span><span·class="ss">uniformResourceIdentifier</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="8409284255-25">(</span><span·class="p"·data-group-id="8409284255-25">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·0a46da2d46d4e035c76e80278724c93df300311cb6202edb50c30d9c1b3e240d·...·]-24">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
149 ·················</span><span·class="p"·data-group-id="6019511230-26">{</span><span·class="ss">iPAddress</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="6019511230-27">(</span><span·class="p"·data-group-id="6019511230-27">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·5b6f7ce008190544568bd31f58b52f41f6c3783ccd6fca84ab86041787e6a723·...·]-26">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">149 ·················</span><span·class="p"·data-group-id="8409284255-26">{</span><span·class="ss">iPAddress</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="8409284255-27">(</span><span·class="p"·data-group-id="8409284255-27">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·273f13b7c479944c65f4239a00587ba07c5c37e6faa3a443e06f63910e206517·...·]-26">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
150 ·················</span><span·class="p"·data-group-id="6019511230-28">{</span><span·class="ss">registeredId</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">oid</span><span·class="p"·data-group-id="6019511230-29">(</span><span·class="p"·data-group-id="6019511230-29">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·5b6f7ce008190544568bd31f58b52f41f6c3783ccd6fca84ab86041787e6a723·...·]-28">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">150 ·················</span><span·class="p"·data-group-id="8409284255-28">{</span><span·class="ss">registeredId</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">oid</span><span·class="p"·data-group-id="8409284255-29">(</span><span·class="p"·data-group-id="8409284255-29">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·273f13b7c479944c65f4239a00587ba07c5c37e6faa3a443e06f63910e206517·...·]-28">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
151 ·················</span><span·class="p"·data-group-id="6019511230-30">{</span><span·class="ss">otherName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6019511230-31">(</span><span·class="p"·data-group-id="6019511230-31">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·e87001f87264ec7d780ea94054d31aff337b8d3425ab5b44680e25440d360970·...·]-30">}</span><span·class="w">151 ·················</span><span·class="p"·data-group-id="8409284255-30">{</span><span·class="ss">otherName</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="8409284255-31">(</span><span·class="p"·data-group-id="8409284255-31">)</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·e42ff1cd59c2434152d25a02576ba8cd5dd48e71d352190be351dfffdf77e7c7·...·]-30">}</span><span·class="w">
  
152 </span><span·class="nf">special_string</span><span·class="p"·data-group-id="6019511230-32">(</span><span·class="p"·data-group-id="6019511230-32">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6019511230-33">{</span><span·class="ss">teletexString</span><span·class="p">[·...·truncated·by·diffoscope;·len:·211,·SHA:·4fda06a152878119e851051d8379c2db3864571a8871455187ea9185a51127e5·...·]-33">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">152 </span><span·class="nf">special_string</span><span·class="p"·data-group-id="8409284255-32">(</span><span·class="p"·data-group-id="8409284255-32">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8409284255-33">{</span><span·class="ss">teletexString</span><span·class="p">[·...·truncated·by·diffoscope;·len:·211,·SHA:·adc15476e36dbfd57f1d01f1f783bade2de9623099b89f2c9fda5dd293cde43e·...·]-33">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
153 ·153 ·
154 ···················</span><span·class="p"·data-group-id="6019511230-35">{</span><span·class="ss">printableString</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="6019511230-36">(</span><span·class="p"·data-group-id="6019511230-36">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·3db0e6d072ed3c5082e4c1235b5574fdda32b9e022959dda7ae9178bd407151a·...·]-35">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">154 ···················</span><span·class="p"·data-group-id="8409284255-35">{</span><span·class="ss">printableString</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="8409284255-36">(</span><span·class="p"·data-group-id="8409284255-36">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·89ba9f01f3fe60bfd771412344d8389703c14c8e921766816f10ef047922c466·...·]-35">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
155 ···················</span><span·class="p"·data-group-id="6019511230-37">{</span><span·class="ss">universalString</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="6019511230-38">(</span><span·class="p"·data-group-id="6019511230-38">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·3db0e6d072ed3c5082e4c1235b5574fdda32b9e022959dda7ae9178bd407151a·...·]-37">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">155 ···················</span><span·class="p"·data-group-id="8409284255-37">{</span><span·class="ss">universalString</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="8409284255-38">(</span><span·class="p"·data-group-id="8409284255-38">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·89ba9f01f3fe60bfd771412344d8389703c14c8e921766816f10ef047922c466·...·]-37">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
156 ···················</span><span·class="p"·data-group-id="6019511230-39">{</span><span·class="ss">utf8String</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="6019511230-40">(</span><span·class="p"·data-group-id="6019511230-40">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·e2614c3e39ad74e8b651e14351835d894c01e34d204380b3e3a0face90d665dd·...·]-39">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">156 ···················</span><span·class="p"·data-group-id="8409284255-39">{</span><span·class="ss">utf8String</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="8409284255-40">(</span><span·class="p"·data-group-id="8409284255-40">)</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·877bc9d3b616b98a7f6146fba4331628cd63d8120911aa75932e7ce7f7d8d712·...·]-39">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
  
157 ···················</span><span·class="p"·data-group-id="6019511230-41">{</span><span·class="ss">bmpString</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="6019511230-42">(</span><span·class="p"·data-group-id="6019511230-42">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·5b6f7ce008190544568bd31f58b52f41f6c3783ccd6fca84ab86041787e6a723·...·]-41">}</span><span·class="w">157 ···················</span><span·class="p"·data-group-id="8409284255-41">{</span><span·class="ss">bmpString</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="8409284255-42">(</span><span·class="p"·data-group-id="8409284255-42">)</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·273f13b7c479944c65f4239a00587ba07c5c37e6faa3a443e06f63910e206517·...·]-41">}</span><span·class="w">
  
158 </span><span·class="nf">dist_reason</span><span·class="p"·data-group-id="6019511230-43">(</span><span·class="p"·data-group-id="6019511230-43">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">unused</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">keyCompromise</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">cACompromise</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">affiliationChanged</span><span·class="w">·</span><span·class="p">|</span><span·class="w">158 </span><span·class="nf">dist_reason</span><span·class="p"·data-group-id="8409284255-43">(</span><span·class="p"·data-group-id="8409284255-43">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">unused</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">keyCompromise</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">cACompromise</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">affiliationChanged</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
159 ················</span><span·class="ss">cessationOfOperation</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">certificateHold</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">privilegeWithdrawn</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">aACompromise</span><span·class="w">159 ················</span><span·class="ss">cessationOfOperation</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">certificateHold</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">privilegeWithdrawn</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">aACompromise</span><span·class="w">
  
160 </span><span·class="n">OID_macro</span><span·class="p"·data-group-id="6019511230-44">(</span><span·class="p"·data-group-id="6019511230-44">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="n">OID_name</span><span·class="p"·data-group-id="6019511230-45">(</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·43eb4be1dc8d9349abbd50953c0209985d5d79fdd101a2f553496f9c4946d9c8·...·]-45">)</span><span·class="w">160 </span><span·class="n">OID_macro</span><span·class="p"·data-group-id="8409284255-44">(</span><span·class="p"·data-group-id="8409284255-44">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="n">OID_name</span><span·class="p"·data-group-id="8409284255-45">(</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·0a46da2d46d4e035c76e80278724c93df300311cb6202edb50c30d9c1b3e240d·...·]-45">)</span><span·class="w">
  
161 </span><span·class="n">OID_name</span><span·class="p"·data-group-id="6019511230-46">(</span><span·class="p"·data-group-id="6019511230-46">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="6019511230-47">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·7fa4c8d2642909ff1c2e28df42448a6adf5b44812fc8cde90b82b4960e2031db·...·]-47">)</span></code></pre><h2·id="rsa"·class="section-heading">161 </span><span·class="n">OID_name</span><span·class="p"·data-group-id="8409284255-46">(</span><span·class="p"·data-group-id="8409284255-46">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="8409284255-47">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·e7f269f92edf90c336db47d8268029a01f1325bdf423f426bdd90cbc34ebb0b8·...·]-47">)</span></code></pre><h2·id="rsa"·class="section-heading">
162 ··<a·href="#rsa"·class="hover-link">162 ··<a·href="#rsa"·class="hover-link">
163 ····<i·class="ri-link-m"·aria-hidden="true"></i>163 ····<i·class="ri-link-m"·aria-hidden="true"></i>
164 ··</a>164 ··</a>
165 ··<span·class="text">RSA</span>165 ··<span·class="text">RSA</span>
166 </h2>166 </h2>
167 <p>Erlang·representation·of167 <p>Erlang·representation·of
168 <a·href="http://www.ietf.org/rfc/rfc3447.txt">Rivest-Shamir-Adleman·cryptosystem·(RSA)</a>168 <a·href="http://www.ietf.org/rfc/rfc3447.txt">Rivest-Shamir-Adleman·cryptosystem·(RSA)</a>
169 keys·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">#</span><span·class="ss">&#39;RSAPublicKey&#39;</span><span·class="p"·data-group-id="8733785101-1">{</span><span·class="w">169 keys·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">#</span><span·class="ss">&#39;RSAPublicKey&#39;</span><span·class="p"·data-group-id="7769034531-1">{</span><span·class="w">
170 ···</span><span·class="ss">modulus</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·pos_integer()</span><span·class="w">170 ···</span><span·class="ss">modulus</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·pos_integer()</span><span·class="w">
171 ···</span><span·class="ss">publicExponent</span><span·class="w">·</span><span·class="c1">%·pos_integer()</span><span·class="w">171 ···</span><span·class="ss">publicExponent</span><span·class="w">·</span><span·class="c1">%·pos_integer()</span><span·class="w">
172 ··</span><span·class="p"·data-group-id="8733785101-1">}</span><span·class="p">.</span><span·class="w">172 ··</span><span·class="p"·data-group-id="7769034531-1">}</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="o">#</span><span·class="ss">&#39;RSAPrivateKey&#39;</span><span·class="p"·data-group-id="8733785101-2">{</span><span·class="w">173 </span><span·class="o">#</span><span·class="ss">&#39;RSAPrivateKey&#39;</span><span·class="p"·data-group-id="7769034531-2">{</span><span·class="w">
174 ···</span><span·class="ss">version</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·two-prime·|·multi</span><span·class="w">174 ···</span><span·class="ss">version</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·two-prime·|·multi</span><span·class="w">
175 ···</span><span·class="ss">modulus</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·pos_integer()</span><span·class="w">175 ···</span><span·class="ss">modulus</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·pos_integer()</span><span·class="w">
176 ···</span><span·class="ss">publicExponent</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·pos_integer()</span><span·class="w">176 ···</span><span·class="ss">publicExponent</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·pos_integer()</span><span·class="w">
177 ···</span><span·class="ss">privateExponent</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·pos_integer()</span><span·class="w">177 ···</span><span·class="ss">privateExponent</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·pos_integer()</span><span·class="w">
178 ···</span><span·class="ss">prime1</span><span·class="p">,</span><span·class="w">··········</span><span·class="c1">%·pos_integer()</span><span·class="w">178 ···</span><span·class="ss">prime1</span><span·class="p">,</span><span·class="w">··········</span><span·class="c1">%·pos_integer()</span><span·class="w">
179 ···</span><span·class="ss">prime2</span><span·class="p">,</span><span·class="w">··········</span><span·class="c1">%·pos_integer()</span><span·class="w">179 ···</span><span·class="ss">prime2</span><span·class="p">,</span><span·class="w">··········</span><span·class="c1">%·pos_integer()</span><span·class="w">
180 ···</span><span·class="ss">exponent1</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·pos_integer()</span><span·class="w">180 ···</span><span·class="ss">exponent1</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·pos_integer()</span><span·class="w">
181 ···</span><span·class="ss">exponent2</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·pos_integer()</span><span·class="w">181 ···</span><span·class="ss">exponent2</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·pos_integer()</span><span·class="w">
182 ···</span><span·class="ss">coefficient</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%·pos_integer()</span><span·class="w">182 ···</span><span·class="ss">coefficient</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%·pos_integer()</span><span·class="w">
183 ···</span><span·class="ss">otherPrimeInfos</span><span·class="w">··</span><span·class="c1">%·[#OtherPrimeInfo{}]·|·asn1_NOVALUE</span><span·class="w">183 ···</span><span·class="ss">otherPrimeInfos</span><span·class="w">··</span><span·class="c1">%·[#OtherPrimeInfo{}]·|·asn1_NOVALUE</span><span·class="w">
184 ··</span><span·class="p"·data-group-id="8733785101-2">}</span><span·class="p">.</span><span·class="w">184 ··</span><span·class="p"·data-group-id="7769034531-2">}</span><span·class="p">.</span><span·class="w">
  
185 </span><span·class="o">#</span><span·class="ss">&#39;OtherPrimeInfo&#39;</span><span·class="p"·data-group-id="8733785101-3">{</span><span·class="w">185 </span><span·class="o">#</span><span·class="ss">&#39;OtherPrimeInfo&#39;</span><span·class="p"·data-group-id="7769034531-3">{</span><span·class="w">
186 ···</span><span·class="ss">prime</span><span·class="p">,</span><span·class="w">···········</span><span·class="c1">%·pos_integer()</span><span·class="w">186 ···</span><span·class="ss">prime</span><span·class="p">,</span><span·class="w">···········</span><span·class="c1">%·pos_integer()</span><span·class="w">
187 ···</span><span·class="ss">exponent</span><span·class="p">,</span><span·class="w">········</span><span·class="c1">%·pos_integer()</span><span·class="w">187 ···</span><span·class="ss">exponent</span><span·class="p">,</span><span·class="w">········</span><span·class="c1">%·pos_integer()</span><span·class="w">
188 ···</span><span·class="ss">coefficient</span><span·class="w">······</span><span·class="c1">%·pos_integer()</span><span·class="w">188 ···</span><span·class="ss">coefficient</span><span·class="w">······</span><span·class="c1">%·pos_integer()</span><span·class="w">
189 ··</span><span·class="p"·data-group-id="8733785101-3">}</span><span·class="p">.</span><span·class="w">189 ··</span><span·class="p"·data-group-id="7769034531-3">}</span><span·class="p">.</span><span·class="w">
  
190 </span><span·class="o">#</span><span·class="ss">&#39;RSASSA-PSS-params&#39;</span><span·class="p"·data-group-id="8733785101-4">{</span><span·class="w">190 </span><span·class="o">#</span><span·class="ss">&#39;RSASSA-PSS-params&#39;</span><span·class="p"·data-group-id="7769034531-4">{</span><span·class="w">
191 ···</span><span·class="ss">hashAlgorithm</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%·#&#39;HashAlgorithm&#39;{}},</span><span·class="w">191 ···</span><span·class="ss">hashAlgorithm</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%·#&#39;HashAlgorithm&#39;{}},</span><span·class="w">
192 ···</span><span·class="ss">maskGenAlgorithm</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·#&#39;MaskGenAlgorithm&#39;{}},</span><span·class="w">192 ···</span><span·class="ss">maskGenAlgorithm</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·#&#39;MaskGenAlgorithm&#39;{}},</span><span·class="w">
193 ···</span><span·class="ss">saltLength</span><span·class="p">,</span><span·class="w">········</span><span·class="c1">%·pos_integer(),</span><span·class="w">193 ···</span><span·class="ss">saltLength</span><span·class="p">,</span><span·class="w">········</span><span·class="c1">%·pos_integer(),</span><span·class="w">
194 ···</span><span·class="ss">trailerField</span><span·class="p">,</span><span·class="w">······</span><span·class="c1">%·pos_integer()</span><span·class="w">194 ···</span><span·class="ss">trailerField</span><span·class="p">,</span><span·class="w">······</span><span·class="c1">%·pos_integer()</span><span·class="w">
195 ··</span><span·class="p"·data-group-id="8733785101-4">}</span><span·class="p">.</span><span·class="w">195 ··</span><span·class="p"·data-group-id="7769034531-4">}</span><span·class="p">.</span><span·class="w">
  
196 </span><span·class="o">#</span><span·class="ss">&#39;HashAlgorithm&#39;</span><span·class="p"·data-group-id="8733785101-5">{</span><span·class="w">196 </span><span·class="o">#</span><span·class="ss">&#39;HashAlgorithm&#39;</span><span·class="p"·data-group-id="7769034531-5">{</span><span·class="w">
197 ···</span><span·class="ss">algorithm</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·oid()</span><span·class="w">197 ···</span><span·class="ss">algorithm</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·oid()</span><span·class="w">
198 ···</span><span·class="ss">parameters</span><span·class="w">··</span><span·class="c1">%·defaults·to·asn1_NOVALUE</span><span·class="w">198 ···</span><span·class="ss">parameters</span><span·class="w">··</span><span·class="c1">%·defaults·to·asn1_NOVALUE</span><span·class="w">
199 ··</span><span·class="p"·data-group-id="8733785101-5">}</span><span·class="p">.</span><span·class="w">199 ··</span><span·class="p"·data-group-id="7769034531-5">}</span><span·class="p">.</span><span·class="w">
  
200 </span><span·class="o">#</span><span·class="ss">&#39;MaskGenAlgorithm&#39;</span><span·class="p"·data-group-id="8733785101-6">{</span><span·class="w">200 </span><span·class="o">#</span><span·class="ss">&#39;MaskGenAlgorithm&#39;</span><span·class="p"·data-group-id="7769034531-6">{</span><span·class="w">
201 ···</span><span·class="ss">algorithm</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·oid()</span><span·class="w">201 ···</span><span·class="ss">algorithm</span><span·class="p">,</span><span·class="w">··</span><span·class="c1">%·oid()</span><span·class="w">
202 ···</span><span·class="ss">parameters</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·defaults·to·asn1_NOVALUE</span><span·class="w">202 ···</span><span·class="ss">parameters</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·defaults·to·asn1_NOVALUE</span><span·class="w">
203 ··</span><span·class="p"·data-group-id="8733785101-6">}</span><span·class="p">.</span></code></pre><h2·id="dsa"·class="section-heading">203 ··</span><span·class="p"·data-group-id="7769034531-6">}</span><span·class="p">.</span></code></pre><h2·id="dsa"·class="section-heading">
204 ··<a·href="#dsa"·class="hover-link">204 ··<a·href="#dsa"·class="hover-link">
205 ····<i·class="ri-link-m"·aria-hidden="true"></i>205 ····<i·class="ri-link-m"·aria-hidden="true"></i>
206 ··</a>206 ··</a>
207 ··<span·class="text">DSA</span>207 ··<span·class="text">DSA</span>
208 </h2>208 </h2>
209 <p>Erlang·representation·of209 <p>Erlang·representation·of
210 <a·href="http://www.ietf.org/rfc/rfc6979.txt">Digital·Signature·Algorithm·(DSA)</a>·keys</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">#</span><span·class="ss">&#39;DSAPrivateKey&#39;</span><span·class="p"·data-group-id="9620348826-1">{</span><span·class="w">210 <a·href="http://www.ietf.org/rfc/rfc6979.txt">Digital·Signature·Algorithm·(DSA)</a>·keys</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">#</span><span·class="ss">&#39;DSAPrivateKey&#39;</span><span·class="p"·data-group-id="6545454357-1">{</span><span·class="w">
211 ···</span><span·class="ss">version</span><span·class="p">,</span><span·class="w">······</span><span·class="c1">%·pos_integer()</span><span·class="w">211 ···</span><span·class="ss">version</span><span·class="p">,</span><span·class="w">······</span><span·class="c1">%·pos_integer()</span><span·class="w">
212 ···</span><span·class="ss">p</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·pos_integer()</span><span·class="w">212 ···</span><span·class="ss">p</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·pos_integer()</span><span·class="w">
213 ···</span><span·class="ss">q</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·pos_integer()</span><span·class="w">213 ···</span><span·class="ss">q</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·pos_integer()</span><span·class="w">
214 ···</span><span·class="ss">g</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·pos_integer()</span><span·class="w">214 ···</span><span·class="ss">g</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·pos_integer()</span><span·class="w">
215 ···</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·pos_integer()</span><span·class="w">215 ···</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·pos_integer()</span><span·class="w">
216 ···</span><span·class="ss">x</span><span·class="w">·············</span><span·class="c1">%·pos_integer()</span><span·class="w">216 ···</span><span·class="ss">x</span><span·class="w">·············</span><span·class="c1">%·pos_integer()</span><span·class="w">
217 ··</span><span·class="p"·data-group-id="9620348826-1">}</span><span·class="p">.</span><span·class="w">217 ··</span><span·class="p"·data-group-id="6545454357-1">}</span><span·class="p">.</span><span·class="w">
  
218 </span><span·class="o">#</span><span·class="ss">&#39;Dss-Parms&#39;</span><span·class="p"·data-group-id="9620348826-2">{</span><span·class="w">218 </span><span·class="o">#</span><span·class="ss">&#39;Dss-Parms&#39;</span><span·class="p"·data-group-id="6545454357-2">{</span><span·class="w">
219 ···</span><span·class="ss">p</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·pos_integer()</span><span·class="w">219 ···</span><span·class="ss">p</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·pos_integer()</span><span·class="w">
220 ···</span><span·class="ss">q</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·pos_integer()</span><span·class="w">220 ···</span><span·class="ss">q</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·pos_integer()</span><span·class="w">
221 ···</span><span·class="ss">g</span><span·class="w">··········</span><span·class="c1">%·pos_integer()</span><span·class="w">221 ···</span><span·class="ss">g</span><span·class="w">··········</span><span·class="c1">%·pos_integer()</span><span·class="w">
222 ··</span><span·class="p"·data-group-id="9620348826-2">}</span><span·class="p">.</span></code></pre><h2·id="ecdsa-and-eddsa"·class="section-heading">222 ··</span><span·class="p"·data-group-id="6545454357-2">}</span><span·class="p">.</span></code></pre><h2·id="ecdsa-and-eddsa"·class="section-heading">
223 ··<a·href="#ecdsa-and-eddsa"·class="hover-link">223 ··<a·href="#ecdsa-and-eddsa"·class="hover-link">
224 ····<i·class="ri-link-m"·aria-hidden="true"></i>224 ····<i·class="ri-link-m"·aria-hidden="true"></i>
225 ··</a>225 ··</a>
Max diff block lines reached; 66574/99053 bytes (67.21%) of diff not shown.
608 B
html2text {}
Max HTML report size reached
1.77 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-118C23D3.js"></script>124 <script·src="dist/search_data-E998F0E5.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
468 B
html2text {}
Max HTML report size reached
201 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/using_public_key.html
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/api-reference.html
    
Offset 181, 15 lines modifiedOffset 181, 15 lines modified
181 ······<p·class="built-using">181 ······<p·class="built-using">
182 ········Built·using182 ········Built·using
183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
185 ······</p>185 ······</p>
186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
187 ····</footer>187 ····</footer>
188 ··</div>188 ··</div>
189 </main>189 </main>
190 </div>190 </div>
191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
192 <script>192 <script>
193 ··document.addEventListener("DOMContentLoaded",·function·()·{193 ··document.addEventListener("DOMContentLoaded",·function·()·{
665 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/notes.html
    
Offset 778, 15 lines modifiedOffset 778, 15 lines modified
778 ······<p·class="built-using">778 ······<p·class="built-using">
779 ········Built·using779 ········Built·using
780 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the780 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
781 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>781 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
782 ······</p>782 ······</p>
783 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>783 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
784 ····</footer>784 ····</footer>
785 ··</div>785 ··</div>
786 </main>786 </main>
787 </div>787 </div>
788 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>788 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
789 <script>789 <script>
790 ··document.addEventListener("DOMContentLoaded",·function·()·{790 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
424 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/reltool.epub
2.4 KB
zipinfo {}
Max HTML report size reached
48.5 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
372 KB
OEBPS/reltool_examples.xhtml
Max HTML report size reached
1.23 KB
OEBPS/content.opf
1.2 KB
OEBPS/content.opf
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/reltool.html
    
Offset 2877, 15 lines modifiedOffset 2877, 15 lines modified
2877 ······<p·class="built-using">2877 ······<p·class="built-using">
2878 ········Built·using2878 ········Built·using
2879 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2879 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2880 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2880 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2881 ······</p>2881 ······</p>
2882 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2882 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2883 ····</footer>2883 ····</footer>
2884 ··</div>2884 ··</div>
2885 </main>2885 </main>
2886 </div>2886 </div>
2887 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2887 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2888 <script>2888 <script>
2889 ··document.addEventListener("DOMContentLoaded",·function·()·{2889 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
373 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/reltool_examples.html
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/reltool_intro.html
    
Offset 208, 15 lines modifiedOffset 208, 15 lines modified
208 ······<p·class="built-using">208 ······<p·class="built-using">
209 ········Built·using209 ········Built·using
210 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the210 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
211 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>211 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
212 ······</p>212 ······</p>
213 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>213 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
214 ····</footer>214 ····</footer>
215 ··</div>215 ··</div>
216 </main>216 </main>
217 </div>217 </div>
218 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>218 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
219 <script>219 <script>
220 ··document.addEventListener("DOMContentLoaded",·function·()·{220 ··document.addEventListener("DOMContentLoaded",·function·()·{
723 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/reltool_usage.html
    
Offset 378, 15 lines modifiedOffset 378, 15 lines modified
378 ······<p·class="built-using">378 ······<p·class="built-using">
379 ········Built·using379 ········Built·using
380 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the380 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
381 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>381 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
382 ······</p>382 ······</p>
383 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>383 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
384 ····</footer>384 ····</footer>
385 ··</div>385 ··</div>
386 </main>386 </main>
387 </div>387 </div>
388 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>388 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
389 <script>389 <script>
390 ··document.addEventListener("DOMContentLoaded",·function·()·{390 ··document.addEventListener("DOMContentLoaded",·function·()·{
711 B
html2text {}
Max HTML report size reached
1.28 KB
./usr/share/doc/erlang-doc/html/lib/reltool-1.0.1/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
464 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/api-reference.html
    
Offset 226, 15 lines modifiedOffset 226, 15 lines modified
226 ······<p·class="built-using">226 ······<p·class="built-using">
227 ········Built·using227 ········Built·using
228 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the228 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
229 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>229 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
230 ······</p>230 ······</p>
231 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>231 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
232 ····</footer>232 ····</footer>
233 ··</div>233 ··</div>
234 </main>234 </main>
235 </div>235 </div>
236 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>236 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
237 <script>237 <script>
238 ··document.addEventListener("DOMContentLoaded",·function·()·{238 ··document.addEventListener("DOMContentLoaded",·function·()·{
614 B
html2text {}
Max HTML report size reached
216 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/dbg.html
Max HTML report size reached
1.62 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/dtrace.html
    
Offset 217, 15 lines modifiedOffset 217, 15 lines modified
217 ······<p·class="built-using">217 ······<p·class="built-using">
218 ········Built·using218 ········Built·using
219 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the219 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
220 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>220 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
221 ······</p>221 ······</p>
222 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>222 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
223 ····</footer>223 ····</footer>
224 ··</div>224 ··</div>
225 </main>225 </main>
226 </div>226 </div>
227 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>227 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
228 <script>228 <script>
229 ··document.addEventListener("DOMContentLoaded",·function·()·{229 ··document.addEventListener("DOMContentLoaded",·function·()·{
813 B
html2text {}
Max HTML report size reached
12.7 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/dyntrace.html
    
Offset 853, 22 lines modifiedOffset 853, 22 lines modified
853 ··········<pre·translate="no"><span·class="attribute">-spec</span>·restore_tag(true·|·{<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()·|·[]})·->·true.</pre>853 ··········<pre·translate="no"><span·class="attribute">-spec</span>·restore_tag(true·|·{<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()·|·[]})·->·true.</pre>
  
854 ······</div>854 ······</div>
  
855 <p>Restores·the·previous·state·of·user·tags·and·their·spreading·as·it·was·before·a855 <p>Restores·the·previous·state·of·user·tags·and·their·spreading·as·it·was·before·a
856 call·to·<a·href="#spread_tag/1"><code·class="inline">spread_tag/1</code></a>.</p><p>Note·that·the·restoring·is·not·limited·to·the·same·process;·one·can856 call·to·<a·href="#spread_tag/1"><code·class="inline">spread_tag/1</code></a>.</p><p>Note·that·the·restoring·is·not·limited·to·the·same·process;·one·can
857 utilize·this·to·turn·off·spreding·in·one·process·and·restore·it·in·a857 utilize·this·to·turn·off·spreding·in·one·process·and·restore·it·in·a
858 newly·created·process·that·is·is·actually·going·to·send·messages:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="8238565134-1">(</span><span·class="p"·data-group-id="8238565134-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">858 newly·created·process·that·is·is·actually·going·to·send·messages:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="9202886539-1">(</span><span·class="p"·data-group-id="9202886539-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
859 ····</span><span·class="n">TagData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">spread_tag</span><span·class="p"·data-group-id="8238565134-2">(</span><span·class="ss">false</span><span·class="p"·data-group-id="8238565134-2">)</span><span·class="p">,</span><span·class="w">859 ····</span><span·class="n">TagData</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">spread_tag</span><span·class="p"·data-group-id="9202886539-2">(</span><span·class="ss">false</span><span·class="p"·data-group-id="9202886539-2">)</span><span·class="p">,</span><span·class="w">
860 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="8238565134-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8238565134-4">(</span><span·class="p"·data-group-id="8238565134-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">860 ····</span><span·class="nf">spawn</span><span·class="p"·data-group-id="9202886539-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="9202886539-4">(</span><span·class="p"·data-group-id="9202886539-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
861 ·············</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">restore_tag</span><span·class="p"·data-group-id="8238565134-5">(</span><span·class="n">TagData</span><span·class="p"·data-group-id="8238565134-5">)</span><span·class="p">,</span><span·class="w">861 ·············</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">restore_tag</span><span·class="p"·data-group-id="9202886539-5">(</span><span·class="n">TagData</span><span·class="p"·data-group-id="9202886539-5">)</span><span·class="p">,</span><span·class="w">
862 ·············</span><span·class="nf">do_something</span><span·class="p"·data-group-id="8238565134-6">(</span><span·class="p"·data-group-id="8238565134-6">)</span><span·class="w">862 ·············</span><span·class="nf">do_something</span><span·class="p"·data-group-id="9202886539-6">(</span><span·class="p"·data-group-id="9202886539-6">)</span><span·class="w">
863 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="8238565134-3">)</span><span·class="p">,</span><span·class="w">863 ··········</span><span·class="k">end</span><span·class="p"·data-group-id="9202886539-3">)</span><span·class="p">,</span><span·class="w">
864 ····</span><span·class="nf">do_something_else</span><span·class="p"·data-group-id="8238565134-7">(</span><span·class="p"·data-group-id="8238565134-7">)</span><span·class="p">,</span><span·class="w">864 ····</span><span·class="nf">do_something_else</span><span·class="p"·data-group-id="9202886539-7">(</span><span·class="p"·data-group-id="9202886539-7">)</span><span·class="p">,</span><span·class="w">
865 ····</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">restore_tag</span><span·class="p"·data-group-id="8238565134-8">(</span><span·class="n">TagData</span><span·class="p"·data-group-id="8238565134-8">)</span><span·class="p">.</span></code></pre><p>Correctly·handling·user·tags·and·their·spreading·might·take·some·effort,·as865 ····</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">restore_tag</span><span·class="p"·data-group-id="9202886539-8">(</span><span·class="n">TagData</span><span·class="p"·data-group-id="9202886539-8">)</span><span·class="p">.</span></code></pre><p>Correctly·handling·user·tags·and·their·spreading·might·take·some·effort,·as
866 Erlang·programs·tend·to·send·and·receive·messages·so·that·sometimes·the·user·tag866 Erlang·programs·tend·to·send·and·receive·messages·so·that·sometimes·the·user·tag
867 gets·lost·due·to·various·things,·like·double·receives·or·communication·with·a867 gets·lost·due·to·various·things,·like·double·receives·or·communication·with·a
868 port·(ports·do·not·handle·user·tags,·in·the·same·way·as·they·do·not·handle868 port·(ports·do·not·handle·user·tags,·in·the·same·way·as·they·do·not·handle
869 regular·sequential·trace·tokens).</p>869 regular·sequential·trace·tokens).</p>
870 ··</section>870 ··</section>
871 </section>871 </section>
872 <section·class="detail"·id="spread_tag/1">872 <section·class="detail"·id="spread_tag/1">
Offset 907, 20 lines modifiedOffset 907, 20 lines modified
907 <a·href="#restore_tag/1"><code·class="inline">restore_tag/1</code></a>,·one·can·enable·or·disable·spreading·of·user907 <a·href="#restore_tag/1"><code·class="inline">restore_tag/1</code></a>,·one·can·enable·or·disable·spreading·of·user
908 tags·to·other·processes·and·then·restore·the·previous·state·of·the·user·tag.·The908 tags·to·other·processes·and·then·restore·the·previous·state·of·the·user·tag.·The
909 TagData·returned·from·this·call·contains·all·previous·information·so·the·state909 TagData·returned·from·this·call·contains·all·previous·information·so·the·state
910 (including·any·previously·spread·user·tags)·will·be·completely·restored·by·a910 (including·any·previously·spread·user·tags)·will·be·completely·restored·by·a
911 later·call·to·<a·href="#restore_tag/1"><code·class="inline">restore_tag/1</code></a>.</p><p>The·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html"><code·class="inline">file</code></a>·module·already·spreads·tags,·so·there·is·no·need·to·manually·call911 later·call·to·<a·href="#restore_tag/1"><code·class="inline">restore_tag/1</code></a>.</p><p>The·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html"><code·class="inline">file</code></a>·module·already·spreads·tags,·so·there·is·no·need·to·manually·call
912 this·function·to·get·user·tags·spread·to·the·<code·class="inline">efile</code>·driver·through·that·module.</p><p>The·most·use·of·this·function·would·be·if·one,·for·example,·uses·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html"><code·class="inline">io</code></a>·module912 this·function·to·get·user·tags·spread·to·the·<code·class="inline">efile</code>·driver·through·that·module.</p><p>The·most·use·of·this·function·would·be·if·one,·for·example,·uses·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html"><code·class="inline">io</code></a>·module
913 to·communicate·with·an·I/O-server·for·a·regular·file,·such·as·in·the·following913 to·communicate·with·an·I/O-server·for·a·regular·file,·such·as·in·the·following
914 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="6598638795-1">(</span><span·class="p"·data-group-id="6598638795-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">914 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">f</span><span·class="p"·data-group-id="5102233487-1">(</span><span·class="p"·data-group-id="5102233487-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
915 ···</span><span·class="p"·data-group-id="6598638795-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="6598638795-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·389,·SHA:·f51b6676dae22cb1a1e78d67f06630410c8e225c72f771eb32400b107798d4d5·...·]-3">)</span><span·class="p">,</span><span·class="w">915 ···</span><span·class="p"·data-group-id="5102233487-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·class="p"·data-group-id="5102233487-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·389,·SHA:·1a769fcd3279521a565cf04b8483445d287f63d187a35e6cc32d3f345a0dc5a5·...·]-3">)</span><span·class="p">,</span><span·class="w">
916 ···</span><span·class="n">Saved</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">spread_tag</span><span·class="p"·data-group-id="6598638795-5">(</span><span·class="ss">true</span><span·class="p"·data-group-id="6598638795-5">)</span><span·class="p">,</span><span·class="w">916 ···</span><span·class="n">Saved</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">spread_tag</span><span·class="p"·data-group-id="5102233487-5">(</span><span·class="ss">true</span><span·class="p"·data-group-id="5102233487-5">)</span><span·class="p">,</span><span·class="w">
917 ···</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6598638795-6">(</span><span·class="n">F</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Hello·world!&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6598638795-7">[</span><span·class="p[·...·truncated·by·diffoscope;·len:·80,·SHA:·8b32072ffa68b1e3e5cad355106e2a676c06c41be5b85116bd57cfe1a0435aa1·...·]-6">)</span><span·class="p">,</span><span·class="w">917 ···</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5102233487-6">(</span><span·class="n">F</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Hello·world!&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5102233487-7">[</span><span·class="p[·...·truncated·by·diffoscope;·len:·80,·SHA:·9865272434fed161a66ee816401a725adec7234f9a1d40b929f3f175d9fd54a5·...·]-6">)</span><span·class="p">,</span><span·class="w">
918 ···</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">restore_tag</span><span·class="p"·data-group-id="6598638795-8">(</span><span·class="n">Saved</span><span·class="p"·data-group-id="6598638795-8">)</span><span·class="p">,</span><span·class="w">918 ···</span><span·class="nc">dyntrace</span><span·class="p">:</span><span·class="nf">restore_tag</span><span·class="p"·data-group-id="5102233487-8">(</span><span·class="n">Saved</span><span·class="p"·data-group-id="5102233487-8">)</span><span·class="p">,</span><span·class="w">
919 ···</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="6598638795-9">(</span><span·class="n">F</span><span·class="p"·data-group-id="6598638795-9">)</span><span·class="p">.</span></code></pre><p>In·this·example,·any·user·tag·set·in·the·calling·process·will·be·spread·to·the919 ···</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="5102233487-9">(</span><span·class="n">F</span><span·class="p"·data-group-id="5102233487-9">)</span><span·class="p">.</span></code></pre><p>In·this·example,·any·user·tag·set·in·the·calling·process·will·be·spread·to·the
920 I/O-server·when·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#format/3"><code·class="inline">io:format/3</code></a>·call·is·done.</p>920 I/O-server·when·the·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#format/3"><code·class="inline">io:format/3</code></a>·call·is·done.</p>
921 ··</section>921 ··</section>
922 </section>922 </section>
  
923 ····</div>923 ····</div>
924 ··</section>924 ··</section>
  
Offset 942, 15 lines modifiedOffset 942, 15 lines modified
942 ······<p·class="built-using">942 ······<p·class="built-using">
943 ········Built·using943 ········Built·using
944 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the944 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
945 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>945 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
946 ······</p>946 ······</p>
947 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>947 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
948 ····</footer>948 ····</footer>
949 ··</div>949 ··</div>
950 </main>950 </main>
951 </div>951 </div>
952 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>952 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
953 <script>953 <script>
954 ··document.addEventListener("DOMContentLoaded",·function·()·{954 ··document.addEventListener("DOMContentLoaded",·function·()·{
606 B
html2text {}
Max HTML report size reached
51.8 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/instrument.html
    
Offset 351, 16 lines modifiedOffset 351, 16 lines modified
  
351 ······</div>351 ······</div>
  
352 <p>A·histogram·of·block·sizes·where·each·interval's·upper·bound·is·twice·as·high·as352 <p>A·histogram·of·block·sizes·where·each·interval's·upper·bound·is·twice·as·high·as
353 the·one·before·it.</p><p>The·upper·bound·of·the·first·interval·is·provided·by·the·function·that·returned353 the·one·before·it.</p><p>The·upper·bound·of·the·first·interval·is·provided·by·the·function·that·returned
354 the·histogram,·and·the·last·interval·has·no·upper·bound.</p><p>For·example,·the·histogram·below·has·40·(<code·class="inline">message</code>)·blocks·between·128-256·bytes354 the·histogram,·and·the·last·interval·has·no·upper·bound.</p><p>For·example,·the·histogram·below·has·40·(<code·class="inline">message</code>)·blocks·between·128-256·bytes
355 in·size,·78·blocks·between·256-512·bytes,2·blocks·between·512-1024·bytes,·and·2355 in·size,·78·blocks·between·256-512·bytes,2·blocks·between·512-1024·bytes,·and·2
356 blocks·between·1-2KB.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">instrument</span><span·class="p">:</span><span·class="nf">allocations</span><span·class="p"·data-group-id="2890881171-1">(</span><span·class="p"·data-group-id="2890881171-2">#{</span><span·class="w">·</span><span·class="ss">histogram_start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">128</span><span·class="p[·...·truncated·by·diffoscope;·len:·292,·SHA:·85857e0420219c95384b6a317a3e40f88b68358607a170bc72e6d6f22a1027cd·...·]1-1">)</span><span·class="p">.</span><span·class="w">356 blocks·between·1-2KB.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">instrument</span><span·class="p">:</span><span·class="nf">allocations</span><span·class="p"·data-group-id="6334603351-1">(</span><span·class="p"·data-group-id="6334603351-2">#{</span><span·class="w">·</span><span·class="ss">histogram_start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">128</span><span·class="p[·...·truncated·by·diffoscope;·len:·292,·SHA:·f35828aeb9eaaf6421872d426f3c13eece3850136004fe3a8785e04b48c0b1d5·...·]1-1">)</span><span·class="p">.</span><span·class="w">
357 </span><span·class="p"·data-group-id="2890881171-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2890881171-4">{</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·c[·...·truncated·by·diffoscope;·len:·1359,·SHA:·84237570cc090295bf61896a7704c150a5931d45917e191f20e4aee45f969fa8·...·]1-3">}</span></code></pre>357 </span><span·class="p"·data-group-id="6334603351-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6334603351-4">{</span><span·class="mi">128</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·c[·...·truncated·by·diffoscope;·len:·1359,·SHA:·c80f4bdc33947c7712ade3d9ff8f41fb9d10e8454105764a4a3d4e9b4000f5fc·...·]1-3">}</span></code></pre>
358 ··</section>358 ··</section>
359 </section>359 </section>
360 <section·class="detail"·id="t:carrier_info_list/0">360 <section·class="detail"·id="t:carrier_info_list/0">
  
361 ··<div·class="detail-header">361 ··<div·class="detail-header">
362 ····<a·href="#t:carrier_info_list/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">362 ····<a·href="#t:carrier_info_list/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">
363 ······<i·class="ri-link-m"·aria-hidden="true"></i>363 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 492, 38 lines modifiedOffset 492, 38 lines modified
492 to·an·allocator·of·a·different·type.</p><p>Defaults·to·all·<code·class="inline">alloc_util</code>·allocators.</p></li><li><p><strong><code·class="inline">scheduler_ids</code></strong>·-·The·scheduler·ids·whose·allocator·instances·will·be492 to·an·allocator·of·a·different·type.</p><p>Defaults·to·all·<code·class="inline">alloc_util</code>·allocators.</p></li><li><p><strong><code·class="inline">scheduler_ids</code></strong>·-·The·scheduler·ids·whose·allocator·instances·will·be
493 searched.·A·scheduler·id·of·0·will·refer·to·the·global·instance·that·is·not493 searched.·A·scheduler·id·of·0·will·refer·to·the·global·instance·that·is·not
494 tied·to·any·particular·scheduler.·Defaults·to·all·schedulers·and·the·global494 tied·to·any·particular·scheduler.·Defaults·to·all·schedulers·and·the·global
495 instance.</p></li><li><p><strong><code·class="inline">histogram_start</code></strong>·-·The·upper·bound·of·the·first·interval·in·the·allocated495 instance.</p></li><li><p><strong><code·class="inline">histogram_start</code></strong>·-·The·upper·bound·of·the·first·interval·in·the·allocated
496 block·size·histograms.·Defaults·to·128.</p></li><li><p><strong><code·class="inline">histogram_width</code></strong>·-·The·number·of·intervals·in·the·allocated·block·size496 block·size·histograms.·Defaults·to·128.</p></li><li><p><strong><code·class="inline">histogram_width</code></strong>·-·The·number·of·intervals·in·the·allocated·block·size
497 histograms.·Defaults·to·18.</p></li><li><p><strong><code·class="inline">flags</code></strong>·-·Controls·how·to·group·the·output,·for·example·showing497 histograms.·Defaults·to·18.</p></li><li><p><strong><code·class="inline">flags</code></strong>·-·Controls·how·to·group·the·output,·for·example·showing
498 allocations·on·a·per-process·basis·(when·possible)·rather·than·only·a498 allocations·on·a·per-process·basis·(when·possible)·rather·than·only·a
499 NIF/driver-basis.·Defaults·to·<code·class="inline">[]</code>.</p></li></ul><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">instrument</span><span·class="p">:</span><span·class="nf">allocations</span><span·class="p"·data-group-id="2558197180-1">(</span><span·class="p"·data-group-id="2558197180-2">#{</span><span·class="w">·</span><span·class="ss">histogram_start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">128</span><span·class="p[·...·truncated·by·diffoscope;·len:·293,·SHA:·f5a800a26afa722e6ddcd644067da62a69347309fdd73637498956fc77261bd4·...·]-1">)</span><span·class="p">.</span><span·class="w">499 NIF/driver-basis.·Defaults·to·<code·class="inline">[]</code>.</p></li></ul><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">instrument</span><span·class="p">:</span><span·class="nf">allocations</span><span·class="p"·data-group-id="6841122092-1">(</span><span·class="p"·data-group-id="6841122092-2">#{</span><span·class="w">·</span><span·class="ss">histogram_start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">128</span><span·class="p[·...·truncated·by·diffoscope;·len:·293,·SHA:·b32e115aacb5180c0e39dcbfe7a30433d0d3c4ffaacd7ed05438458a8468ba64·...·]-1">)</span><span·class="p">.</span><span·class="w">
500 </span><span·class="p"·data-group-id="2558197180-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2558197180-4">{</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">500 </span><span·class="p"·data-group-id="6841122092-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6841122092-4">{</span><span·class="mi">128</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
501 ·····</span><span·class="p"·data-group-id="2558197180-5">#{</span><span·class="ss">udp_inet</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">501 ·····</span><span·class="p"·data-group-id="6841122092-5">#{</span><span·class="ss">udp_inet</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">
502 ···········</span><span·class="p"·data-group-id="2558197180-6">#{</span><span·class="ss">driver_event_state</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-7">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·743,·SHA:·a5137cdb89cdd597b8a5debabedcd8e4476447297b927014818517bea289faf6·...·]-6">}</span><span·class="p">,</span><span·class="w">502 ···········</span><span·class="p"·data-group-id="6841122092-6">#{</span><span·class="ss">driver_event_state</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-7">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·743,·SHA:·920b26774237f176fed0eb260f328c500133176cec91ab96b14f29ea7b54f1bd·...·]-6">}</span><span·class="p">,</span><span·class="w">
503 ·······</span><span·class="ss">system</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">503 ·······</span><span·class="ss">system</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">
504 ···········</span><span·class="p"·data-group-id="2558197180-8">#{</span><span·class="ss">heap</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-9">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><s[·...·truncated·by·diffoscope;·len:·677,·SHA:·a4a9a9776e32557b023bf0689ba7481f7f6c4df0cfa749b2504ccab7c383898d·...·]-9">}</span><span·class="p">,</span><span·class="w">504 ···········</span><span·class="p"·data-group-id="6841122092-8">#{</span><span·class="ss">heap</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-9">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><s[·...·truncated·by·diffoscope;·len:·677,·SHA:·0c5ad384cfe6a3e6c90bb9010710e3318177258c17639aa3e5f3946931640429·...·]-9">}</span><span·class="p">,</span><span·class="w">
505 ·············</span><span·class="ss">db_term</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-10">{</span><span·class="mi">271</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">52</span><span·class="p">,</span><span·class="mi">80</span><span·cl[·...·truncated·by·diffoscope;·len:·523,·SHA:·ce40b78a653772c58a884679b97ebcb2c8362eea5e7871a0852b5df209831499·...·]-10">}</span><span·class="p">,</span><span·class="w">505 ·············</span><span·class="ss">db_term</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-10">{</span><span·class="mi">271</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">52</span><span·class="p">,</span><span·class="mi">80</span><span·cl[·...·truncated·by·diffoscope;·len:·523,·SHA:·762657cd5a8266cfdbe0647a50ca2489b6c7218c14100a1e00bde182bf45f135·...·]-10">}</span><span·class="p">,</span><span·class="w">
506 ·············</span><span·class="ss">code</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-11">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">3</span><span·class=[·...·truncated·by·diffoscope;·len:·524,·SHA:·721be87841e74f3dba547dcbc3ef52c8f1b58654ddb908333c181e877cbf9a14·...·]-11">}</span><span·class="p">,</span><span·class="w">506 ·············</span><span·class="ss">code</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-11">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">5</span><span·class="p">,</span><span·class="mi">3</span><span·class=[·...·truncated·by·diffoscope;·len:·524,·SHA:·a4a404ae6398e9ed54d169e98d6c834a0c0d3bed9be7bb349e27fa9894a2883d·...·]-11">}</span><span·class="p">,</span><span·class="w">
507 ·············</span><span·class="ss">binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-12">{</span><span·class="mi">18</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">7</span><span·class[·...·truncated·by·diffoscope;·len:·520,·SHA:·a97a84276542202b90f6984bdbbdf232e88982d5584a6c8f119e96a55303bad7·...·]-12">}</span><span·class="p">,</span><span·class="w">507 ·············</span><span·class="ss">binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-12">{</span><span·class="mi">18</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">7</span><span·class[·...·truncated·by·diffoscope;·len:·520,·SHA:·d239c8039cebd43d5386273d6d3b7d99d363787809229349b1644f712d133426·...·]-12">}</span><span·class="p">,</span><span·class="w">
508 ·············</span><span·class="ss">message</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-13">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">40</span><span·class="p">,</span><span·class="mi">78</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">2</span><span·clas[·...·truncated·by·diffoscope;·len:·521,·SHA:·098d36141ca86d9368db9337d9ee384795d8ee0aea7c8a7d6be8054d35c141f4·...·]-13">}</span><span·class="p">,</span><span·class="w">508 ·············</span><span·class="ss">message</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-13">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">40</span><span·class="p">,</span><span·class="mi">78</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">2</span><span·clas[·...·truncated·by·diffoscope;·len:·521,·SHA:·08de3a0f34e352db7eb8802e2c74dbe937de390a89823d4ead753deb68e3ee50·...·]-13">}</span><span·class="p">,</span><span·class="w">
509 ·············</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-8">}</span><span·class="w">509 ·············</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-8">}</span><span·class="w">
510 ·······</span><span·class="ss">spawn_forker</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">510 ·······</span><span·class="ss">spawn_forker</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">
511 ···········</span><span·class="p"·data-group-id="2558197180-14">#{</span><span·class="ss">driver_select_data_state</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">511 ···········</span><span·class="p"·data-group-id="6841122092-14">#{</span><span·class="ss">driver_select_data_state</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">
512 ·················</span><span·class="p"·data-group-id="2558197180-15">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·573,·SHA:·6a2c5dbb013acc3bb1a1e7824a14a3144aa5c6bc92df98ca65fc29011814deda·...·]-14">}</span><span·class="p">,</span><span·class="w">512 ·················</span><span·class="p"·data-group-id="6841122092-15">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·573,·SHA:·b73d7fad519f07062a8e75cbe026337d790b77ee6c45325e22ccb1af5b89e607·...·]-14">}</span><span·class="p">,</span><span·class="w">
513 ·······</span><span·class="ss">ram_file_drv</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-16">#{</span><span·class="ss">drv_binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-17">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0<[·...·truncated·by·diffoscope;·len:·738,·SHA:·070b8043afa64d070398338411c9cbe6850d59460781aea10615a27b4461731c·...·]-16">}</span><span·class="p">,</span><span·class="w">513 ·······</span><span·class="ss">ram_file_drv</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-16">#{</span><span·class="ss">drv_binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-17">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0<[·...·truncated·by·diffoscope;·len:·738,·SHA:·09b8e0b3fdcc257fa3aa3c119133489b689accde31eae302309e873fc1b00d26·...·]-16">}</span><span·class="p">,</span><span·class="w">
514 ·······</span><span·class="ss">prim_file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">514 ·······</span><span·class="ss">prim_file</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">
515 ···········</span><span·class="p"·data-group-id="2558197180-18">#{</span><span·class="ss">process_specific_data</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-19">{</span><span·class="mi">2</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·695,·SHA:·d14ed8d546b074ba063b300b83e4f80221145d9446d0f9ce0d3624051fabe32d·...·]-19">}</span><span·class="p">,</span><span·class="w">515 ···········</span><span·class="p"·data-group-id="6841122092-18">#{</span><span·class="ss">process_specific_data</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-19">{</span><span·class="mi">2</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·695,·SHA:·219439cc1a074c0f84cf7518f5922510fba08b285d41fccd32ac209c1060a35e·...·]-19">}</span><span·class="p">,</span><span·class="w">
516 ·············</span><span·class="ss">nif_trap_export_entry</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-20">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·519,·SHA:·f9447b63f482089140dbafccca9d5bd132a6b7390040f2585d4ce50c76ea8128·...·]-20">}</span><span·class="p">,</span><span·class="w">516 ·············</span><span·class="ss">nif_trap_export_entry</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-20">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·519,·SHA:·1b44329962eeedba859d9cc098425953fd51e139b60fed377eaa8bc738f7d0cc·...·]-20">}</span><span·class="p">,</span><span·class="w">
517 ·············</span><span·class="ss">monitor_extended</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-21">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·519,·SHA:·f9447b63f482089140dbafccca9d5bd132a6b7390040f2585d4ce50c76ea8128·...·]-21">}</span><span·class="p">,</span><span·class="w">517 ·············</span><span·class="ss">monitor_extended</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-21">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·519,·SHA:·1b44329962eeedba859d9cc098425953fd51e139b60fed377eaa8bc738f7d0cc·...·]-21">}</span><span·class="p">,</span><span·class="w">
518 ·············</span><span·class="ss">drv_binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-22">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·519,·SHA:·7632727a27758f7cf8c049a3060fac8a674c9172bdfce5b1acb9c134ca53458c·...·]-22">}</span><span·class="p">,</span><span·class="w">518 ·············</span><span·class="ss">drv_binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-22">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·519,·SHA:·fff3859e08cfeb22fe9f17ac44db8016808360d232eba035d96957a5cac5b623·...·]-22">}</span><span·class="p">,</span><span·class="w">
519 ·············</span><span·class="ss">binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-23">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·573,·SHA:·f970681a531dade55b570a1586d0b32471ecaeed4cb9fb3e493f0403a4a5a427·...·]-18">}</span><span·class="p">,</span><span·class="w">519 ·············</span><span·class="ss">binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-23">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·573,·SHA:·97565735bb5c6353cbe2b83f399f239f65834042af9b0f63d8db269a97c1d4bf·...·]-18">}</span><span·class="p">,</span><span·class="w">
520 ·······</span><span·class="ss">prim_buffer</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">520 ·······</span><span·class="ss">prim_buffer</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">
521 ···········</span><span·class="p"·data-group-id="2558197180-24">#{</span><span·class="ss">nif_internal</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-25">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">[·...·truncated·by·diffoscope;·len:·686,·SHA:·33da2972836dcbbe23d84ec349ab7b706e6e89d16e188a89857f4e2ccfc8dcff·...·]-25">}</span><span·class="p">,</span><span·class="w">521 ···········</span><span·class="p"·data-group-id="6841122092-24">#{</span><span·class="ss">nif_internal</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-25">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">[·...·truncated·by·diffoscope;·len:·686,·SHA:·3afb3fadea2f6980061810e5f6a0fabe8ae277683ccb031a5460df5c0fd1afd1·...·]-25">}</span><span·class="p">,</span><span·class="w">
522 ·············</span><span·class="ss">binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2558197180-26">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·733,·SHA:·d017b959aba66f16d16378f7a5625f80987cb51bf22c70806030fbc556ef6ab1·...·]-3">}</span></code></pre>522 ·············</span><span·class="ss">binary</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6841122092-26">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·733,·SHA:·c6d026d2d1d48ca4845d0968ec8f51e0c3416c9a095e3d69c4ec7c361fc08716·...·]-3">}</span></code></pre>
523 ··</section>523 ··</section>
524 </section>524 </section>
525 <section·class="detail"·id="carriers/0">525 <section·class="detail"·id="carriers/0">
  
526 ··<div·class="detail-header">526 ··<div·class="detail-header">
527 ····<a·href="#carriers/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">527 ····<a·href="#carriers/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
528 ······<i·class="ri-link-m"·aria-hidden="true"></i>528 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 592, 23 lines modifiedOffset 592, 23 lines modified
592 allocator·type·and·scheduler·id.</p><p>If·the·specified·allocator·types·are·not·enabled,·the·call·will·fail·with592 allocator·type·and·scheduler·id.</p><p>If·the·specified·allocator·types·are·not·enabled,·the·call·will·fail·with
593 <code·class="inline">{error,·not_enabled}</code>.</p><p>The·following·options·can·be·used:</p><ul><li><p><strong><code·class="inline">allocator_types</code></strong>·-·The·allocator·types·that·will·be·searched.·Defaults·to593 <code·class="inline">{error,·not_enabled}</code>.</p><p>The·following·options·can·be·used:</p><ul><li><p><strong><code·class="inline">allocator_types</code></strong>·-·The·allocator·types·that·will·be·searched.·Defaults·to
594 all·<code·class="inline">alloc_util</code>·allocators.</p></li><li><p><strong><code·class="inline">scheduler_ids</code></strong>·-·The·scheduler·ids·whose·allocator·instances·will·be594 all·<code·class="inline">alloc_util</code>·allocators.</p></li><li><p><strong><code·class="inline">scheduler_ids</code></strong>·-·The·scheduler·ids·whose·allocator·instances·will·be
595 searched.·A·scheduler·id·of·0·will·refer·to·the·global·instance·that·is·not595 searched.·A·scheduler·id·of·0·will·refer·to·the·global·instance·that·is·not
596 tied·to·any·particular·scheduler.·Defaults·to·all·schedulers·and·the·global596 tied·to·any·particular·scheduler.·Defaults·to·all·schedulers·and·the·global
597 instance.</p></li><li><p><strong><code·class="inline">histogram_start</code></strong>·-·The·upper·bound·of·the·first·interval·in·the·free597 instance.</p></li><li><p><strong><code·class="inline">histogram_start</code></strong>·-·The·upper·bound·of·the·first·interval·in·the·free
598 block·size·histograms.·Defaults·to·512.</p></li><li><p><strong><code·class="inline">histogram_width</code></strong>·-·The·number·of·intervals·in·the·free·block·size598 block·size·histograms.·Defaults·to·512.</p></li><li><p><strong><code·class="inline">histogram_width</code></strong>·-·The·number·of·intervals·in·the·free·block·size
599 histograms.·Defaults·to·14.</p></li></ul><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">instrument</span><span·class="p">:</span><span·class="nf">carriers</span><span·class="p"·data-group-id="1999112326-1">(</span><span·class="p"·data-group-id="1999112326-2">#{</span><span·class="w">·</span><span·class="ss">histogram_start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">512</span><span·class="p[·...·truncated·by·diffoscope;·len:·291,·SHA:·3ad01418abc2678054c9cf26bdb16db7f4e272cd191d6ca82fcbb8dd333860bf·...·]6-1">)</span><span·class="p">.</span><span·class="w">599 histograms.·Defaults·to·14.</p></li></ul><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">instrument</span><span·class="p">:</span><span·class="nf">carriers</span><span·class="p"·data-group-id="9300283976-1">(</span><span·class="p"·data-group-id="9300283976-2">#{</span><span·class="w">·</span><span·class="ss">histogram_start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">512</span><span·class="p[·...·truncated·by·diffoscope;·len:·291,·SHA:·7db3d8cb04d12ca1f19de3ef43f88cfe764c628d237d1d08ccab22112537a7d9·...·]6-1">)</span><span·class="p">.</span><span·class="w">
600 </span><span·class="p"·data-group-id="1999112326-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1999112326-4">{</span><span·class="mi">512</span><span·class="p">,</span><span·class="w">600 </span><span·class="p"·data-group-id="9300283976-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9300283976-4">{</span><span·class="mi">512</span><span·class="p">,</span><span·class="w">
601 ·····</span><span·class="p"·data-group-id="1999112326-5">[</span><span·class="p"·data-group-id="1999112326-6">{</span><span·class="ss">driver_alloc</span><span·class="p">,</span><span·class="ss">false</span><span·class="p">,</span><span·class="mi">262144</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">601 ·····</span><span·class="p"·data-group-id="9300283976-5">[</span><span·class="p"·data-group-id="9300283976-6">{</span><span·class="ss">driver_alloc</span><span·class="p">,</span><span·class="ss">false</span><span·class="p">,</span><span·class="mi">262144</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
602 ····················</span><span·class="p"·data-group-id="1999112326-7">[</span><span·class="p"·data-group-id="1999112326-8">{</span><span·class="ss">driver_alloc</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">32784</span><span·class="p"·data-group-id="1999112326-8[·...·truncated·by·diffoscope;·len:·50,·SHA:·418234893f481a7ee2494d0dd29187aac8d7c07ce0031260728bc04623a576ef·...·]6-7">]</span><span·class="p">,</span><span·class="w">602 ····················</span><span·class="p"·data-group-id="9300283976-7">[</span><span·class="p"·data-group-id="9300283976-8">{</span><span·class="ss">driver_alloc</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">32784</span><span·class="p"·data-group-id="9300283976-8[·...·truncated·by·diffoscope;·len:·50,·SHA:·5219e6353f35d96cd0e8add64d93c13f5859af6ca3fbdde84d3901521b0e8642·...·]6-7">]</span><span·class="p">,</span><span·class="w">
603 ····················</span><span·class="p"·data-group-id="1999112326-9">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·227,·SHA:·09d31eb23a32bba9cb8358501a082e420320bebf6f2b939bc5c0f5a6da564a7c·...·]6-6">}</span><span·class="p">,</span><span·class="w">603 ····················</span><span·class="p"·data-group-id="9300283976-9">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·227,·SHA:·9a32d2632bec986f45a1e4da9aa09e2e2b02a8d1be43b372ddbfeb4bdb99bf06·...·]6-6">}</span><span·class="p">,</span><span·class="w">
604 ······</span><span·class="p"·data-group-id="1999112326-10">{</span><span·class="ss">binary_alloc</span><span·class="p">,</span><span·class="ss">false</span><span·class="p">,</span><span·class="mi">32768</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">604 ······</span><span·class="p"·data-group-id="9300283976-10">{</span><span·class="ss">binary_alloc</span><span·class="p">,</span><span·class="ss">false</span><span·class="p">,</span><span·class="mi">32768</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
605 ····················</span><span·class="p"·data-group-id="1999112326-11">[</span><span·class="p"·data-group-id="1999112326-12">{</span><span·class="ss">binary_alloc</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">4304</span><span·class="p"·data-group-id="1999112326[·...·truncated·by·diffoscope;·len:·53,·SHA:·921854d48b08afa7a234af2f462eebdfe5de77e6997cfd7d55369086d088c62b·...·]6-11">]</span><span·class="p">,</span><span·class="w">605 ····················</span><span·class="p"·data-group-id="9300283976-11">[</span><span·class="p"·data-group-id="9300283976-12">{</span><span·class="ss">binary_alloc</span><span·class="p">,</span><span·class="mi">15</span><span·class="p">,</span><span·class="mi">4304</span><span·class="p"·data-group-id="9300283976[·...·truncated·by·diffoscope;·len:·53,·SHA:·8d8456a3ff41f0740e954b50d500195784ba0f0127ae4a44961027a1f7edd19e·...·]6-11">]</span><span·class="p">,</span><span·class="w">
606 ····················</span><span·class="p"·data-group-id="1999112326-13">{</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class=[·...·truncated·by·diffoscope;·len:·229,·SHA:·5642bbae72b7253b919ea43db413813786351b73c7b5de4ee74a0c42705d4fdd·...·]6-10">}</span><span·class="p">,</span><span·class="w">606 ····················</span><span·class="p"·data-group-id="9300283976-13">{</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class=[·...·truncated·by·diffoscope;·len:·229,·SHA:·19d99b051483b4c7b6b8cffad4dbe07114e3b75192199046e868a7f0c4972eee·...·]6-10">}</span><span·class="p">,</span><span·class="w">
607 ······</span><span·class="p"·data-group-id="1999112326-14">{</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="1999112326-14">}</span><span·class="p">|</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class[·...·truncated·by·diffoscope;·len:·135,·SHA:·a9266dd7062835aff006d9a23c2acd0f54ee31294ed8c0d4a545171e33aff35c·...·]6-3">}</span></code></pre>607 ······</span><span·class="p"·data-group-id="9300283976-14">{</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="9300283976-14">}</span><span·class="p">|</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class[·...·truncated·by·diffoscope;·len:·135,·SHA:·5299c15055353f905af1c1740276ed566ff4e501f3ca996f8a1f606c0061a66a·...·]6-3">}</span></code></pre>
608 ··</section>608 ··</section>
609 </section>609 </section>
  
610 ····</div>610 ····</div>
611 ··</section>611 ··</section>
  
612 ····<footer·class="footer">612 ····<footer·class="footer">
Offset 629, 15 lines modifiedOffset 629, 15 lines modified
629 ······<p·class="built-using">629 ······<p·class="built-using">
630 ········Built·using630 ········Built·using
631 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the631 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
632 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>632 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
633 ······</p>633 ······</p>
634 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>634 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
635 ····</footer>635 ····</footer>
636 ··</div>636 ··</div>
637 </main>637 </main>
638 </div>638 </div>
639 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>639 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
640 <script>640 <script>
641 ··document.addEventListener("DOMContentLoaded",·function·()·{641 ··document.addEventListener("DOMContentLoaded",·function·()·{
552 B
html2text {}
Max HTML report size reached
93.7 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/lttng.html
    
Offset 146, 40 lines modifiedOffset 146, 40 lines modified
146 $·make</code></pre><h2·id="dyntrace-tracepoints"·class="section-heading">146 $·make</code></pre><h2·id="dyntrace-tracepoints"·class="section-heading">
147 ··<a·href="#dyntrace-tracepoints"·class="hover-link">147 ··<a·href="#dyntrace-tracepoints"·class="hover-link">
148 ····<i·class="ri-link-m"·aria-hidden="true"></i>148 ····<i·class="ri-link-m"·aria-hidden="true"></i>
149 ··</a>149 ··</a>
150 ··<span·class="text">Dyntrace·Tracepoints</span>150 ··<span·class="text">Dyntrace·Tracepoints</span>
151 </h2>151 </h2>
152 <p>All·tracepoints·are·in·the·domain·of·<code·class="inline">org_erlang_dyntrace</code></p><p>All·Erlang·types·are·the·string·equivalent·in·LTTng.</p><p><em>process_spawn</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">parent·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">procs</code>·and152 <p>All·tracepoints·are·in·the·domain·of·<code·class="inline">org_erlang_dyntrace</code></p><p>All·Erlang·types·are·the·string·equivalent·in·LTTng.</p><p><em>process_spawn</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">parent·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">procs</code>·and
153 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">process_spawn</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1927117288-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">3</span><span·class="w">·</span><span·class="p"·data-group-id="1927117288-1">}</span><span·[·...·truncated·by·diffoscope;·len:·731,·SHA:·0847de75e252f1ff6ee9282dd741d15ca757b98d34ec2e55bb510a41fc08e5aa·...·]-2">}</span></code></pre><p><em>process_link</em></p><ul><li><code·class="inline">to·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">from·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><p><code·class="inline">type·:·string</code>·::·<code·class="inline">&quot;link&quot;·|·&quot;unlink&quot;</code></p></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">procs</code>·and153 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">process_spawn</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9806099913-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">3</span><span·class="w">·</span><span·class="p"·data-group-id="9806099913-1">}</span><span·[·...·truncated·by·diffoscope;·len:·731,·SHA:·5840bdb201eaf3cdadf1f71f6273e7384cb598c921fa02c34f470e999088a223·...·]-2">}</span></code></pre><p><em>process_link</em></p><ul><li><code·class="inline">to·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">from·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><p><code·class="inline">type·:·string</code>·::·<code·class="inline">&quot;link&quot;·|·&quot;unlink&quot;</code></p></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">procs</code>·and
154 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">process_link:·{·cpu_id·=·3·},·{·from·=·&quot;&lt;0.130.0&gt;&quot;,·to·=·&quot;&lt;0.131.0&gt;&quot;,·type·=·&quot;link&quot;·}</code></pre><p><em>process_exit</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">reason·:·string</code>·::·Exit·reason.·Ex.·<code·class="inline">&quot;normal&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">procs</code>·and154 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">process_link:·{·cpu_id·=·3·},·{·from·=·&quot;&lt;0.130.0&gt;&quot;,·to·=·&quot;&lt;0.131.0&gt;&quot;,·type·=·&quot;link&quot;·}</code></pre><p><em>process_exit</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">reason·:·string</code>·::·Exit·reason.·Ex.·<code·class="inline">&quot;normal&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">procs</code>·and
155 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">process_exit:·{·cpu_id·=·3·},·{·pid·=·&quot;&lt;0.130.0&gt;&quot;,·reason·=·&quot;normal&quot;·}</code></pre><p><em>process_register</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">name·:·string</code>·::·Registered·name.·Ex.·<code·class="inline">&quot;logger&quot;</code></li><li><p><code·class="inline">type·:·string</code>·::·<code·class="inline">&quot;register&quot;·|·&quot;unregister&quot;</code></p></li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">process_register</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="2374880063-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="2374880063-1">}</span><span·[·...·truncated·by·diffoscope;·len:·703,·SHA:·7dd59db413f060fee7d4839ce0dad55e7bf37da6f7dac062b04475e5c1a70526·...·]-2">}</span></code></pre><p><em>process_scheduled</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li><li><code·class="inline">type·:·string</code>·::155 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">process_exit:·{·cpu_id·=·3·},·{·pid·=·&quot;&lt;0.130.0&gt;&quot;,·reason·=·&quot;normal&quot;·}</code></pre><p><em>process_register</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">name·:·string</code>·::·Registered·name.·Ex.·<code·class="inline">&quot;logger&quot;</code></li><li><p><code·class="inline">type·:·string</code>·::·<code·class="inline">&quot;register&quot;·|·&quot;unregister&quot;</code></p></li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">process_register</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0696551315-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="0696551315-1">}</span><span·[·...·truncated·by·diffoscope;·len:·703,·SHA:·d1487f9e5e0b668db2e7ec8b4af77ce138f42bcd3d70a2dafb852645ffd106a3·...·]-2">}</span></code></pre><p><em>process_scheduled</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li><li><code·class="inline">type·:·string</code>·::
156 <code·class="inline">&quot;in&quot;·|·&quot;out&quot;·|·&quot;in_exiting&quot;·|·&quot;out_exiting&quot;·|·&quot;out_exited&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">running</code>·and156 <code·class="inline">&quot;in&quot;·|·&quot;out&quot;·|·&quot;in_exiting&quot;·|·&quot;out_exiting&quot;·|·&quot;out_exited&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">running</code>·and
157 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">process_scheduled</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="4778431602-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="4778431602-1">}</span><span·[·...·truncated·by·diffoscope;·len:·715,·SHA:·51544b8a9621c2da4a9a04de593a718805b82c5c7da89745a4e94d8d21af8754·...·]2-2">}</span></code></pre><p><em>port_open</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">driver·:·string</code>·::·Driver·name.·Ex.·<code·class="inline">&quot;tcp_inet&quot;</code></li><li><code·class="inline">port·:·string</code>·::·Port·ID.·Ex.·<code·class="inline">&quot;#Port&lt;0.1031&gt;&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">ports</code>·and157 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">process_scheduled</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="3661297842-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="3661297842-1">}</span><span·[·...·truncated·by·diffoscope;·len:·715,·SHA:·b17276e76554dd5a8f57ac95b32b4a28859c257340e7883b5cba1489bb67d0bb·...·]2-2">}</span></code></pre><p><em>port_open</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">driver·:·string</code>·::·Driver·name.·Ex.·<code·class="inline">&quot;tcp_inet&quot;</code></li><li><code·class="inline">port·:·string</code>·::·Port·ID.·Ex.·<code·class="inline">&quot;#Port&lt;0.1031&gt;&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">ports</code>·and
158 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">port_open:·{·cpu_id·=·5·},·{·pid·=·&quot;&lt;0.131.0&gt;&quot;,·driver·=·&quot;'/bin/sh·-s·unix:cmd'&quot;,·port·=·&quot;#Port&lt;0.1887&gt;&quot;·}</code></pre><p><em>port_exit</em></p><ul><li><code·class="inline">port·:·string</code>·::·Port·ID.·Ex.·<code·class="inline">&quot;#Port&lt;0.1031&gt;&quot;</code></li><li><code·class="inline">reason·:·string</code>·::·Exit·reason.·Ex.·<code·class="inline">&quot;normal&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">ports</code>·and158 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">port_open:·{·cpu_id·=·5·},·{·pid·=·&quot;&lt;0.131.0&gt;&quot;,·driver·=·&quot;'/bin/sh·-s·unix:cmd'&quot;,·port·=·&quot;#Port&lt;0.1887&gt;&quot;·}</code></pre><p><em>port_exit</em></p><ul><li><code·class="inline">port·:·string</code>·::·Port·ID.·Ex.·<code·class="inline">&quot;#Port&lt;0.1031&gt;&quot;</code></li><li><code·class="inline">reason·:·string</code>·::·Exit·reason.·Ex.·<code·class="inline">&quot;normal&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">ports</code>·and
159 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">port_exit:·{·cpu_id·=·5·},·{·port·=·&quot;#Port&lt;0.1887&gt;&quot;,·reason·=·&quot;normal&quot;·}</code></pre><p><em>port_link</em></p><ul><li><code·class="inline">to·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">from·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><p><code·class="inline">type·:·string</code>·::·<code·class="inline">&quot;link&quot;·|·&quot;unlink&quot;</code></p></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">ports</code>·and159 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">port_exit:·{·cpu_id·=·5·},·{·port·=·&quot;#Port&lt;0.1887&gt;&quot;,·reason·=·&quot;normal&quot;·}</code></pre><p><em>port_link</em></p><ul><li><code·class="inline">to·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">from·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><p><code·class="inline">type·:·string</code>·::·<code·class="inline">&quot;link&quot;·|·&quot;unlink&quot;</code></p></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">ports</code>·and
160 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">port_link</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="5998389510-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="5998389510-1">}</span><span·[·...·truncated·by·diffoscope;·len:·723,·SHA:·9d3ff442be6602da2add3e8b15be9d1c26ffcc3f75923aa4cd8113f0e473cb1c·...·]-2">}</span></code></pre><p><em>port_scheduled</em></p><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">running</code>·and160 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">port_link</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9892059901-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="9892059901-1">}</span><span·[·...·truncated·by·diffoscope;·len:·723,·SHA:·46c3c458d3ad877df04c9cc9c887a84d027bfd673a24c8f8f0d2b5b24a83399f·...·]-2">}</span></code></pre><p><em>port_scheduled</em></p><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">running</code>·and
161 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><ul><li><code·class="inline">port·:·string</code>·::·Port·ID.·Ex.·<code·class="inline">&quot;#Port&lt;0.1031&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Callback.·Ex.·<code·class="inline">&quot;open&quot;</code></li><li><code·class="inline">type·:·string</code>·::161 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><ul><li><code·class="inline">port·:·string</code>·::·Port·ID.·Ex.·<code·class="inline">&quot;#Port&lt;0.1031&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Callback.·Ex.·<code·class="inline">&quot;open&quot;</code></li><li><code·class="inline">type·:·string</code>·::
162 <code·class="inline">&quot;in&quot;·|·&quot;out&quot;·|·&quot;in_exiting&quot;·|·&quot;out_exiting&quot;·|·&quot;out_exited&quot;</code></li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">port_scheduled</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="2999001601-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="2999001601-1">}</span><span·c[·...·truncated·by·diffoscope;·len:·711,·SHA:·87e43fea16be9c54aab19d3522b92c093dfe6e049851461ceb314e6a555ffb88·...·]-2">}</span></code></pre><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">running</code>·and162 <code·class="inline">&quot;in&quot;·|·&quot;out&quot;·|·&quot;in_exiting&quot;·|·&quot;out_exiting&quot;·|·&quot;out_exited&quot;</code></li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">port_scheduled</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="2837814849-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="2837814849-1">}</span><span·c[·...·truncated·by·diffoscope;·len:·711,·SHA:·0774499718fcf53dfd9bc0a76ea068cbc194cf5a23eadf814b8b0951cd5b8b8d·...·]-2">}</span></code></pre><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">running</code>·and
163 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p><em>function_call</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li><li><code·class="inline">depth·:·integer</code>·::·Stack·depth.·Ex.·<code·class="inline">0</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">call</code>·and163 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p><em>function_call</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li><li><code·class="inline">depth·:·integer</code>·::·Stack·depth.·Ex.·<code·class="inline">0</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">call</code>·and
164 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">function_call</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="9456131022-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="9456131022-1">}</span><span·[·...·truncated·by·diffoscope;·len:·740,·SHA:·58beba089a349b96c9348ed052c7961e5d88272deaa4c5416ec4a7304072e812·...·]-2">}</span></code></pre><p><em>function_return</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li><li><code·class="inline">depth·:·integer</code>·::·Stack·depth.·Ex.·<code·class="inline">0</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">call</code>·or·<code·class="inline">return_to</code>·and164 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">function_call</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="2804199495-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="2804199495-1">}</span><span·[·...·truncated·by·diffoscope;·len:·740,·SHA:·01ef9e5314140a640b0ccb7c444d15348df7d74e00f62042d7952ca74172c4e4·...·]-2">}</span></code></pre><p><em>function_return</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li><li><code·class="inline">depth·:·integer</code>·::·Stack·depth.·Ex.·<code·class="inline">0</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">call</code>·or·<code·class="inline">return_to</code>·and
165 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">function_return</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="7645748304-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="7645748304-1">}</span><span·[·...·truncated·by·diffoscope;·len:·720,·SHA:·3b14ea039e6d864faa358267d333e1db4da6dc55f86b1a8a13b1e690fbc2d49a·...·]-2">}</span></code></pre><p><em>function_exception</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li><li><code·class="inline">class·:·string</code>·::·Error·reason.·Ex.·<code·class="inline">&quot;error&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">call</code>·and165 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">function_return</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="6676841208-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="6676841208-1">}</span><span·[·...·truncated·by·diffoscope;·len:·720,·SHA:·d03c402312273a5e3e07a171bd889cb9d868e7299689c2601ba2065acda771b0·...·]-2">}</span></code></pre><p><em>function_exception</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">entry·:·string</code>·::·Code·Location.·Ex.·<code·class="inline">&quot;lists:sort/1&quot;</code></li><li><code·class="inline">class·:·string</code>·::·Error·reason.·Ex.·<code·class="inline">&quot;error&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">call</code>·and
166 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">function_exception</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="8249915409-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="8249915409-1">}</span><span·[·...·truncated·by·diffoscope;·len:·718,·SHA:·386e0e21ae3d7f9cd00adbd0e9fe1887a1a46d40e4ac1b9623270a8d9eed9520·...·]-2">}</span></code></pre><p><em>message_send</em></p><ul><li><code·class="inline">from·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">to·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">message·:·string</code>·::·Message·sent.·Ex.·<code·class="inline">&quot;{&lt;0.162.0&gt;,ok}&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">send</code>·and166 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">function_exception</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1196371273-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">5</span><span·class="w">·</span><span·class="p"·data-group-id="1196371273-1">}</span><span·[·...·truncated·by·diffoscope;·len:·718,·SHA:·0d3f0a5619b2684d8b3dc5359f7420c17bb605dd3a5a493977bc7cbd7cb2fc79·...·]-2">}</span></code></pre><p><em>message_send</em></p><ul><li><code·class="inline">from·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">to·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">message·:·string</code>·::·Message·sent.·Ex.·<code·class="inline">&quot;{&lt;0.162.0&gt;,ok}&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">send</code>·and
167 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">message_send:·{·cpu_id·=·3·},·{·from·=·&quot;#Port&lt;0.1938&gt;&quot;,·to·=·&quot;&lt;0.160.0&gt;&quot;,·message·=·&quot;{#Port&lt;0.1938&gt;,eof}&quot;·}</code></pre><p><em>message_receive</em></p><ul><li><code·class="inline">to·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">message·:·string</code>·::·Message·received.·Ex.·<code·class="inline">&quot;{&lt;0.162.0&gt;,ok}&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">'receive'</code>·and167 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">message_send:·{·cpu_id·=·3·},·{·from·=·&quot;#Port&lt;0.1938&gt;&quot;,·to·=·&quot;&lt;0.160.0&gt;&quot;,·message·=·&quot;{#Port&lt;0.1938&gt;,eof}&quot;·}</code></pre><p><em>message_receive</em></p><ul><li><code·class="inline">to·:·string</code>·::·Process·ID·or·Port·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">message·:·string</code>·::·Message·received.·Ex.·<code·class="inline">&quot;{&lt;0.162.0&gt;,ok}&quot;</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">'receive'</code>·and
168 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">message_receive:·{·cpu_id·=·7·},·{·to·=·&quot;&lt;0.167.0&gt;&quot;,·message·=·&quot;{&lt;0.165.0&gt;,ok}&quot;·}</code></pre><p><em>gc_minor_start</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">need·:·integer</code>·::·Heap·need.·Ex.·<code·class="inline">2</code></li><li><code·class="inline">heap·:·integer</code>·::·Young·heap·word·size.·Ex.·<code·class="inline">233</code></li><li><code·class="inline">old_heap·:·integer</code>·::·Old·heap·word·size.·Ex.·<code·class="inline">233</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">garbage_collection</code>·and168 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">message_receive:·{·cpu_id·=·7·},·{·to·=·&quot;&lt;0.167.0&gt;&quot;,·message·=·&quot;{&lt;0.165.0&gt;,ok}&quot;·}</code></pre><p><em>gc_minor_start</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">need·:·integer</code>·::·Heap·need.·Ex.·<code·class="inline">2</code></li><li><code·class="inline">heap·:·integer</code>·::·Young·heap·word·size.·Ex.·<code·class="inline">233</code></li><li><code·class="inline">old_heap·:·integer</code>·::·Old·heap·word·size.·Ex.·<code·class="inline">233</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">garbage_collection</code>·and
169 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">gc_minor_start</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0690504250-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="0690504250-1">}</span><span·[·...·truncated·by·diffoscope;·len:·858,·SHA:·9be7ca82571eab73eee36f09cc797b3cc00aba22c08536de51c629572aa297c7·...·]-2">}</span></code></pre><p><em>gc_minor_end</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">reclaimed·:·integer</code>·::·Heap·reclaimed.·Ex.·<code·class="inline">2</code></li><li><code·class="inline">heap·:·integer</code>·::·Young·heap·word·size.·Ex.·<code·class="inline">233</code></li><li><code·class="inline">old_heap·:·integer</code>·::·Old·heap·word·size.·Ex.·<code·class="inline">233</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">garbage_collection</code>·and169 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">gc_minor_start</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1458927008-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="1458927008-1">}</span><span·[·...·truncated·by·diffoscope;·len:·858,·SHA:·c686e36a5328b274e4559fe7cfa413260b167c248da6a2924cad5d01c476dc68·...·]-2">}</span></code></pre><p><em>gc_minor_end</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">reclaimed·:·integer</code>·::·Heap·reclaimed.·Ex.·<code·class="inline">2</code></li><li><code·class="inline">heap·:·integer</code>·::·Young·heap·word·size.·Ex.·<code·class="inline">233</code></li><li><code·class="inline">old_heap·:·integer</code>·::·Old·heap·word·size.·Ex.·<code·class="inline">233</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">garbage_collection</code>·and
170 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="c">gc_minor_end:·{·cpu_id·=·0·},·{·pid·=·&quot;&lt;0.172.0&gt;&quot;,·reclaimed·=·120,·heap·=·1598,·old_heap·=·1598·}</code></pre><p><em>gc_major_start</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">need·:·integer</code>·::·Heap·need.·Ex.·<code·class="inline">2</code></li><li><code·class="inline">heap·:·integer</code>·::·Young·heap·word·size.·Ex.·<code·class="inline">233</code></li><li><code·class="inline">old_heap·:·integer</code>·::·Old·heap·word·size.·Ex.·<code·class="inline">233</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">garbage_collection</code>·and170 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="c">gc_minor_end:·{·cpu_id·=·0·},·{·pid·=·&quot;&lt;0.172.0&gt;&quot;,·reclaimed·=·120,·heap·=·1598,·old_heap·=·1598·}</code></pre><p><em>gc_major_start</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">need·:·integer</code>·::·Heap·need.·Ex.·<code·class="inline">2</code></li><li><code·class="inline">heap·:·integer</code>·::·Young·heap·word·size.·Ex.·<code·class="inline">233</code></li><li><code·class="inline">old_heap·:·integer</code>·::·Old·heap·word·size.·Ex.·<code·class="inline">233</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">garbage_collection</code>·and
171 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">gc_major_start</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1056442338-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="1056442338-1">}</span><span·cl[·...·truncated·by·diffoscope;·len:·860,·SHA:·36335603d03cf92672bbf60e2c98a362a57b4601837a835b7589948f3ce2389d·...·]-2">}</span></code></pre><p><em>gc_major_end</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">reclaimed·:·integer</code>·::·Heap·reclaimed.·Ex.·<code·class="inline">2</code></li><li><code·class="inline">heap·:·integer</code>·::·Young·heap·word·size.·Ex.·<code·class="inline">233</code></li><li><code·class="inline">old_heap·:·integer</code>·::·Old·heap·word·size.·Ex.·<code·class="inline">233</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">garbage_collection</code>·and171 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">gc_major_start</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="1061618397-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="1061618397-1">}</span><span·cl[·...·truncated·by·diffoscope;·len:·860,·SHA:·9d857bbb3c3e9c0923990d9b697c77b7324967b073e10979318d8adb57e5ea29·...·]-2">}</span></code></pre><p><em>gc_major_end</em></p><ul><li><code·class="inline">pid·:·string</code>·::·Process·ID.·Ex.·<code·class="inline">&quot;&lt;0.131.0&gt;&quot;</code></li><li><code·class="inline">reclaimed·:·integer</code>·::·Heap·reclaimed.·Ex.·<code·class="inline">2</code></li><li><code·class="inline">heap·:·integer</code>·::·Young·heap·word·size.·Ex.·<code·class="inline">233</code></li><li><code·class="inline">old_heap·:·integer</code>·::·Old·heap·word·size.·Ex.·<code·class="inline">233</code></li></ul><p>Available·through·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>·with·trace·flag·<code·class="inline">garbage_collection</code>·and
172 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">gc_major_end:·{·cpu_id·=·0·},·{·pid·=·&quot;&lt;0.172.0&gt;&quot;,·reclaimed·=·240,·heap·=·4185,·old_heap·=·0·}</code></pre><h2·id="beam-tracepoints"·class="section-heading">172 <code·class="inline">{tracer,dyntrace,[]}</code>·as·tracer·module.</p><p>Example:</p><pre><code·class="text">gc_major_end:·{·cpu_id·=·0·},·{·pid·=·&quot;&lt;0.172.0&gt;&quot;,·reclaimed·=·240,·heap·=·4185,·old_heap·=·0·}</code></pre><h2·id="beam-tracepoints"·class="section-heading">
173 ··<a·href="#beam-tracepoints"·class="hover-link">173 ··<a·href="#beam-tracepoints"·class="hover-link">
174 ····<i·class="ri-link-m"·aria-hidden="true"></i>174 ····<i·class="ri-link-m"·aria-hidden="true"></i>
175 ··</a>175 ··</a>
176 ··<span·class="text">BEAM·Tracepoints</span>176 ··<span·class="text">BEAM·Tracepoints</span>
177 </h2>177 </h2>
178 <p>All·tracepoints·are·in·the·domain·of·<code·class="inline">org_erlang_otp</code></p><p>All·Erlang·types·are·the·string·equivalent·in·LTTng.</p><p><em>driver_init</em></p><ul><li><code·class="inline">driver·:·string</code>·::·Driver·name.·Ex.·<code·class="inline">&quot;tcp_inet&quot;</code></li><li><code·class="inline">major·:·integer</code>·::·Major·version.·Ex.·<code·class="inline">3</code></li><li><code·class="inline">minor·:·integer</code>·::·Minor·version.·Ex.·<code·class="inline">1</code></li><li><code·class="inline">flags·:·integer</code>·::·Flags.·Ex.·<code·class="inline">1</code></li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">driver_init</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="3433110747-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">2</span><span·class="w">·</span><span·class="p"·data-group-id="3433110747-1">}</span><span·[·...·truncated·by·diffoscope;·len:·19389,·SHA:·7929b4b82a3d59c0a9d88c32f9d318fcfbdec73a31e729cb749f0779a1241c3a·...·]-2">}</span></code></pre><p><em>carrier_create</em></p><ul><li><code·class="inline">type·:·string</code>·::·Carrier·type.·Ex.·<code·class="inline">&quot;ets_alloc&quot;</code></li><li><code·class="inline">instance·:·integer</code>·::·Allocator·instance.·Ex.·<code·class="inline">1</code></li><li><code·class="inline">size·:·integer</code>·::·Carrier·size.·Ex.·<code·class="inline">262144</code></li><li><code·class="inline">mbc_carriers·:·integer</code>·::·Number·of·multiblock·carriers·in·instance.·Ex.·<code·class="inline">3</code></li><li><code·class="inline">mbc_carriers_size·:·integer</code>·::·Total·size·of·multiblock·blocks·carriers·in178 <p>All·tracepoints·are·in·the·domain·of·<code·class="inline">org_erlang_otp</code></p><p>All·Erlang·types·are·the·string·equivalent·in·LTTng.</p><p><em>driver_init</em></p><ul><li><code·class="inline">driver·:·string</code>·::·Driver·name.·Ex.·<code·class="inline">&quot;tcp_inet&quot;</code></li><li><code·class="inline">major·:·integer</code>·::·Major·version.·Ex.·<code·class="inline">3</code></li><li><code·class="inline">minor·:·integer</code>·::·Minor·version.·Ex.·<code·class="inline">1</code></li><li><code·class="inline">flags·:·integer</code>·::·Flags.·Ex.·<code·class="inline">1</code></li></ul><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">driver_init</span><span·class="p">:</span><span·class="w">·</span><span·class="p"·data-group-id="0661962042-1">{</span><span·class="w">·</span><span·class="ss">cpu_id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">2</span><span·class="w">·</span><span·class="p"·data-group-id="0661962042-1">}</span><span·[·...·truncated·by·diffoscope;·len:·19389,·SHA:·91582cbb872cd72066d4772316206969177662f74f25c99dc6eb3c608afc9b35·...·]-2">}</span></code></pre><p><em>carrier_create</em></p><ul><li><code·class="inline">type·:·string</code>·::·Carrier·type.·Ex.·<code·class="inline">&quot;ets_alloc&quot;</code></li><li><code·class="inline">instance·:·integer</code>·::·Allocator·instance.·Ex.·<code·class="inline">1</code></li><li><code·class="inline">size·:·integer</code>·::·Carrier·size.·Ex.·<code·class="inline">262144</code></li><li><code·class="inline">mbc_carriers·:·integer</code>·::·Number·of·multiblock·carriers·in·instance.·Ex.·<code·class="inline">3</code></li><li><code·class="inline">mbc_carriers_size·:·integer</code>·::·Total·size·of·multiblock·blocks·carriers·in
179 instance.·Ex.·<code·class="inline">1343488</code></li><li><code·class="inline">mbc_blocks·:·integer</code>·::·Number·of·multiblock·blocks·in·instance.·Ex.·<code·class="inline">122</code></li><li><code·class="inline">mbc_blocks_size·:·integer</code>·::·Total·size·of·all·multiblock·blocks·in179 instance.·Ex.·<code·class="inline">1343488</code></li><li><code·class="inline">mbc_blocks·:·integer</code>·::·Number·of·multiblock·blocks·in·instance.·Ex.·<code·class="inline">122</code></li><li><code·class="inline">mbc_blocks_size·:·integer</code>·::·Total·size·of·all·multiblock·blocks·in
180 instance.·Ex.·<code·class="inline">285296</code></li><li><code·class="inline">sbc_carriers·:·integer</code>·::·Number·of·singleblock·carriers·in·instance.·Ex.180 instance.·Ex.·<code·class="inline">285296</code></li><li><code·class="inline">sbc_carriers·:·integer</code>·::·Number·of·singleblock·carriers·in·instance.·Ex.
181 <code·class="inline">1</code></li><li><code·class="inline">sbc_carriers_size·:·integer</code>·::·Total·size·of·singleblock·blocks·carriers·in181 <code·class="inline">1</code></li><li><code·class="inline">sbc_carriers_size·:·integer</code>·::·Total·size·of·singleblock·blocks·carriers·in
182 instance.·Ex.·<code·class="inline">1343488</code></li><li><code·class="inline">sbc_blocks·:·integer</code>·::·Number·of·singleblocks·in·instance.·Ex.·<code·class="inline">1</code></li><li><code·class="inline">sbc_blocks_size·:·integer</code>·::·Total·size·of·all·singleblock·blocks·in182 instance.·Ex.·<code·class="inline">1343488</code></li><li><code·class="inline">sbc_blocks·:·integer</code>·::·Number·of·singleblocks·in·instance.·Ex.·<code·class="inline">1</code></li><li><code·class="inline">sbc_blocks_size·:·integer</code>·::·Total·size·of·all·singleblock·blocks·in
183 instance.·Ex.·<code·class="inline">285296</code></li></ul><p>Example:</p><pre><code·class="c">carrier_create:·{·cpu_id·=·2·},·{·type·=·&quot;ets_alloc&quot;,·instance·=·7,·size·=·2097152,·mbc_carriers·=·4,·mbc_carriers_size·=·3440640,·mbc_blocks·=·526,·mbc_blocks_size·=·1278576,·sbc_carriers·=·0,·sbc_carriers_size·=·0,·sbc_blocks·=·0,·sbc_blocks_size·=·0·}</code></pre><p><em>carrier_destroy</em></p><ul><li><code·class="inline">type·:·string</code>·::·Carrier·type.·Ex.·<code·class="inline">&quot;ets_alloc&quot;</code></li><li><code·class="inline">instance·:·integer</code>·::·Allocator·instance.·Ex.·<code·class="inline">1</code></li><li><code·class="inline">size·:·integer</code>·::·Carrier·size.·Ex.·<code·class="inline">262144</code></li><li><code·class="inline">mbc_carriers·:·integer</code>·::·Number·of·multiblock·carriers·in·instance.·Ex.·<code·class="inline">3</code></li><li><code·class="inline">mbc_carriers_size·:·integer</code>·::·Total·size·of·multiblock·blocks·carriers·in183 instance.·Ex.·<code·class="inline">285296</code></li></ul><p>Example:</p><pre><code·class="c">carrier_create:·{·cpu_id·=·2·},·{·type·=·&quot;ets_alloc&quot;,·instance·=·7,·size·=·2097152,·mbc_carriers·=·4,·mbc_carriers_size·=·3440640,·mbc_blocks·=·526,·mbc_blocks_size·=·1278576,·sbc_carriers·=·0,·sbc_carriers_size·=·0,·sbc_blocks·=·0,·sbc_blocks_size·=·0·}</code></pre><p><em>carrier_destroy</em></p><ul><li><code·class="inline">type·:·string</code>·::·Carrier·type.·Ex.·<code·class="inline">&quot;ets_alloc&quot;</code></li><li><code·class="inline">instance·:·integer</code>·::·Allocator·instance.·Ex.·<code·class="inline">1</code></li><li><code·class="inline">size·:·integer</code>·::·Carrier·size.·Ex.·<code·class="inline">262144</code></li><li><code·class="inline">mbc_carriers·:·integer</code>·::·Number·of·multiblock·carriers·in·instance.·Ex.·<code·class="inline">3</code></li><li><code·class="inline">mbc_carriers_size·:·integer</code>·::·Total·size·of·multiblock·blocks·carriers·in
184 instance.·Ex.·<code·class="inline">1343488</code></li><li><code·class="inline">mbc_blocks·:·integer</code>·::·Number·of·multiblock·blocks·in·instance.·Ex.·<code·class="inline">122</code></li><li><code·class="inline">mbc_blocks_size·:·integer</code>·::·Total·size·of·all·multiblock·blocks·in184 instance.·Ex.·<code·class="inline">1343488</code></li><li><code·class="inline">mbc_blocks·:·integer</code>·::·Number·of·multiblock·blocks·in·instance.·Ex.·<code·class="inline">122</code></li><li><code·class="inline">mbc_blocks_size·:·integer</code>·::·Total·size·of·all·multiblock·blocks·in
185 instance.·Ex.·<code·class="inline">285296</code></li><li><code·class="inline">sbc_carriers·:·integer</code>·::·Number·of·singleblock·carriers·in·instance.·Ex.185 instance.·Ex.·<code·class="inline">285296</code></li><li><code·class="inline">sbc_carriers·:·integer</code>·::·Number·of·singleblock·carriers·in·instance.·Ex.
Offset 194, 18 lines modifiedOffset 194, 18 lines modified
194 <p>An·example·of·process·tracing·of·<code·class="inline">os_mon</code>·and·friends.</p><p>Clean·start·of·lttng·in·a·bash·shell.</p><pre><code·class="text">$·lttng·create·erlang-demo194 <p>An·example·of·process·tracing·of·<code·class="inline">os_mon</code>·and·friends.</p><p>Clean·start·of·lttng·in·a·bash·shell.</p><pre><code·class="text">$·lttng·create·erlang-demo
195 Spawning·a·session·daemon195 Spawning·a·session·daemon
196 Session·erlang-demo·created.196 Session·erlang-demo·created.
197 Traces·will·be·written·in·/home/egil/lttng-traces/erlang-demo-20160526-165920</code></pre><p>Start·an·Erlang·node·with·lttng·enabled.</p><pre><code·class="text">$·erl197 Traces·will·be·written·in·/home/egil/lttng-traces/erlang-demo-20160526-165920</code></pre><p>Start·an·Erlang·node·with·lttng·enabled.</p><pre><code·class="text">$·erl
198 Erlang/OTP·19·[erts-8.0]·[source-4d7b24d]·[64-bit]·[smp:8:8]·[async-threads:10]·[hipe]·[kernel-poll:false]·[lttng]198 Erlang/OTP·19·[erts-8.0]·[source-4d7b24d]·[64-bit]·[smp:8:8]·[async-threads:10]·[hipe]·[kernel-poll:false]·[lttng]
  
199 Eshell·V8.0··(abort·with·^G)199 Eshell·V8.0··(abort·with·^G)
200 1&gt;</code></pre><p>Load·the·<code·class="inline">dyntrace</code>·module.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">l</span><span·class="p"·data-group-id="7475289234-1">(</span><span·class="ss">dyntrace</span><span·class="p"·data-group-id="7475289234-1">)</span><span·class="p">.</span><span·class="w">200 1&gt;</code></pre><p>Load·the·<code·class="inline">dyntrace</code>·module.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">l</span><span·class="p"·data-group-id="1368763355-1">(</span><span·class="ss">dyntrace</span><span·class="p"·data-group-id="1368763355-1">)</span><span·class="p">.</span><span·class="w">
201 </span><span·class="p"·data-group-id="7475289234-2">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">dyntrace</span><span·class="p"·data-group-id="7475289234-2">}</span></code></pre><p>All·tracepoints·via·dyntrace·are·now·visible·and·can·be·listed·through201 </span><span·class="p"·data-group-id="1368763355-2">{</span><span·class="ss">module</span><span·class="p">,</span><span·class="ss">dyntrace</span><span·class="p"·data-group-id="1368763355-2">}</span></code></pre><p>All·tracepoints·via·dyntrace·are·now·visible·and·can·be·listed·through
202 <code·class="inline">lttng·list·-u</code>.</p><p>Enable·the·process_register·LTTng·tracepoint·for·Erlang.</p><pre><code·class="text">$·lttng·enable-event·-u·org_erlang_dyntrace:process_register202 <code·class="inline">lttng·list·-u</code>.</p><p>Enable·the·process_register·LTTng·tracepoint·for·Erlang.</p><pre><code·class="text">$·lttng·enable-event·-u·org_erlang_dyntrace:process_register
203 UST·event·org_erlang_dyntrace:process_register·created·in·channel·channel0</code></pre><p>Enable·process·tracing·for·new·processes·and·use·<code·class="inline">dyntrace</code>·as·tracer·backend.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">trace</span><span·class="p"·data-group-id="1350616494-1">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="ss">true</span><span·class="p">,</span><span·class="p"·data-group-id="1350616494-2">[</span><span·class="ss">procs</span><span·class="p">,</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·391,·SHA:·5fa568f7213e7a5b56c36c6ab18ceb95618698aac6e6dfd840a1624edaf4a3aa·...·]-1">)</span><span·class="p">.</span><span·class="w">203 UST·event·org_erlang_dyntrace:process_register·created·in·channel·channel0</code></pre><p>Enable·process·tracing·for·new·processes·and·use·<code·class="inline">dyntrace</code>·as·tracer·backend.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">trace</span><span·class="p"·data-group-id="9696633699-1">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="ss">true</span><span·class="p">,</span><span·class="p"·data-group-id="9696633699-2">[</span><span·class="ss">procs</span><span·class="p">,</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·391,·SHA:·5da8dc42b8e0be1717e0dda929bcb1bd02617b94e3e40b983c67a6dce2bf36bc·...·]-1">)</span><span·class="p">.</span><span·class="w">
204 </span><span·class="mi">0</span></code></pre><p>Start·LTTng·tracing.</p><pre><code·class="text">$·lttng·start204 </span><span·class="mi">0</span></code></pre><p>Start·LTTng·tracing.</p><pre><code·class="text">$·lttng·start
205 Tracing·started·for·session·erlang-demo</code></pre><p>Start·the·<code·class="inline">os_mon</code>·application·in·Erlang.</p><pre><code·class="text">3&gt;·application:ensure_all_started(os_mon).205 Tracing·started·for·session·erlang-demo</code></pre><p>Start·the·<code·class="inline">os_mon</code>·application·in·Erlang.</p><pre><code·class="text">3&gt;·application:ensure_all_started(os_mon).
206 {ok,[sasl,os_mon]}</code></pre><p>Stop·LTTng·tracing·and·view·the·result.</p><pre><code·class="text">$·lttng·stop206 {ok,[sasl,os_mon]}</code></pre><p>Stop·LTTng·tracing·and·view·the·result.</p><pre><code·class="text">$·lttng·stop
207 Tracing·stopped·for·session·erlang-demo207 Tracing·stopped·for·session·erlang-demo
208 $·lttng·view208 $·lttng·view
209 [17:20:42.561168759]·(+?.?????????)·elxd1168lx9·org_erlang_dyntrace:process_register:·\209 [17:20:42.561168759]·(+?.?????????)·elxd1168lx9·org_erlang_dyntrace:process_register:·\
210 ····{·cpu_id·=·5·},·{·pid·=·&quot;&lt;0.66.0&gt;&quot;,·name·=·&quot;sasl_sup&quot;,·type·=·&quot;register&quot;·}210 ····{·cpu_id·=·5·},·{·pid·=·&quot;&lt;0.66.0&gt;&quot;,·name·=·&quot;sasl_sup&quot;,·type·=·&quot;register&quot;·}
Offset 271, 15 lines modifiedOffset 271, 15 lines modified
271 ······<p·class="built-using">271 ······<p·class="built-using">
272 ········Built·using272 ········Built·using
273 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the273 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
274 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>274 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
275 ······</p>275 ······</p>
276 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>276 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
277 ····</footer>277 ····</footer>
278 ··</div>278 ··</div>
279 </main>279 </main>
280 </div>280 </div>
281 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>281 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
282 <script>282 <script>
283 ··document.addEventListener("DOMContentLoaded",·function·()·{283 ··document.addEventListener("DOMContentLoaded",·function·()·{
705 B
html2text {}
Max HTML report size reached
14.3 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/msacc.html
    
Offset 127, 29 lines modifiedOffset 127, 29 lines modified
127 ··</h1>127 ··</h1>
  
  
128 ····<section·id="moduledoc">128 ····<section·id="moduledoc">
129 <p>Convenience·functions·for·microstate·accounting</p><p>This·module·implements·some·convenience·functions·for·analyzing·microstate129 <p>Convenience·functions·for·microstate·accounting</p><p>This·module·implements·some·convenience·functions·for·analyzing·microstate
130 accounting·data.·For·details·about·how·to·use·the·basic·API·and·what·the130 accounting·data.·For·details·about·how·to·use·the·basic·API·and·what·the
131 different·states·represent,·see131 different·states·represent,·see
132 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#statistics_microstate_accounting"><code·class="inline">erlang:statistics(microstate_accounting)</code></a>.</p><p><a·href=""·id="msacc_print_example"></a></p><p><em>Basic·Scenario</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="5556738704-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="5556738704-1">)</span><span·class="p">.</span><span·class="w">132 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#statistics_microstate_accounting"><code·class="inline">erlang:statistics(microstate_accounting)</code></a>.</p><p><a·href=""·id="msacc_print_example"></a></p><p><em>Basic·Scenario</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="1038864477-1">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="1038864477-1">)</span><span·class="p">.</span><span·class="w">
133 </span><span·class="ss">ok</span><span·class="gp·unselectable">133 </span><span·class="ss">ok</span><span·class="gp·unselectable">
134 2&gt;·</span><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">print</span><span·class="p"·data-group-id="5556738704-2">(</span><span·class="p"·data-group-id="5556738704-2">)</span><span·class="p">.</span><span·class="w">134 2&gt;·</span><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">print</span><span·class="p"·data-group-id="1038864477-2">(</span><span·class="p"·data-group-id="1038864477-2">)</span><span·class="p">.</span><span·class="w">
135 </span><span·class="n">Average</span><span·class="w">·</span><span·class="ss">thread</span><span·class="w">·</span><span·class="ss">real</span><span·class="o">-</span><span·class="ss">time</span><span·class="w">····</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">1000513</span><span·class="w">·</span><span·class="ss">us</span><span·class="w">135 </span><span·class="n">Average</span><span·class="w">·</span><span·class="ss">thread</span><span·class="w">·</span><span·class="ss">real</span><span·class="o">-</span><span·class="ss">time</span><span·class="w">····</span><span·class="p">:</span><span·class="w">·</span><span·class="mi">1000513</span><span·class="w">·</span><span·class="ss">us</span><span·class="w">
136 </span><span·class="n">Accumulated</span><span·class="w">·</span><span·class="ss">system</span><span·class="w">·</span><span·class="ss">run</span><span·class="o">-</span><span·class="ss">time</span><span·class="w">·</span><span·class="p">:</span><span·class="w">····</span><span·class="mi">2213</span><span·class="w">·</span><span·class="ss">us</span><span·class="w">136 </span><span·class="n">Accumulated</span><span·class="w">·</span><span·class="ss">system</span><span·class="w">·</span><span·class="ss">run</span><span·class="o">-</span><span·class="ss">time</span><span·class="w">·</span><span·class="p">:</span><span·class="w">····</span><span·class="mi">2213</span><span·class="w">·</span><span·class="ss">us</span><span·class="w">
137 </span><span·class="n">Average</span><span·class="w">·</span><span·class="ss">scheduler</span><span·class="w">·</span><span·class="ss">run</span><span·class="o">-</span><span·class="ss">time</span><span·class="w">··</span><span·class="p">:</span><span·class="w">····</span><span·class="mi">1076</span><span·class="w">·</span><span·class="ss">us</span><span·class="w">137 </span><span·class="n">Average</span><span·class="w">·</span><span·class="ss">scheduler</span><span·class="w">·</span><span·class="ss">run</span><span·class="o">-</span><span·class="ss">time</span><span·class="w">··</span><span·class="p">:</span><span·class="w">····</span><span·class="mi">1076</span><span·class="w">·</span><span·class="ss">us</span><span·class="w">
  
138 ········</span><span·class="n">Thread</span><span·class="w">······</span><span·class="ss">aux</span><span·class="w">·</span><span·class="ss">check_io</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·······</span><span·class="ss">gc</span><span·class="w">····</span><span·class="ss">other</span><span·class="w">·····</span><span·class="ss">port</span><span·class="w">····</span><span·class="ss">sleep</span><span·class="w">138 ········</span><span·class="n">Thread</span><span·class="w">······</span><span·class="ss">aux</span><span·class="w">·</span><span·class="ss">check_io</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·······</span><span·class="ss">gc</span><span·class="w">····</span><span·class="ss">other</span><span·class="w">·····</span><span·class="ss">port</span><span·class="w">····</span><span·class="ss">sleep</span><span·class="w">
  
139 </span><span·class="n">Stats</span><span·class="w">·</span><span·class="ss">per</span><span·class="w">·</span><span·class="nc">thread</span><span·class="p">:</span><span·class="w">139 </span><span·class="n">Stats</span><span·class="w">·</span><span·class="ss">per</span><span·class="w">·</span><span·class="nc">thread</span><span·class="p">:</span><span·class="w">
140 ·····</span><span·class="nf">async</span><span·class="p"·data-group-id="5556738704-3">(</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="5556738704-3">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%··100.00%</span><span·class="w">140 ·····</span><span·class="nf">async</span><span·class="p"·data-group-id="1038864477-3">(</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="1038864477-3">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%··100.00%</span><span·class="w">
141 ·····</span><span·class="nf">async</span><span·class="p"·data-group-id="5556738704-4">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="5556738704-4">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%··100.00%</span><span·class="w">141 ·····</span><span·class="nf">async</span><span·class="p"·data-group-id="1038864477-4">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="1038864477-4">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%··100.00%</span><span·class="w">
142 ·······</span><span·class="nf">aux</span><span·class="p"·data-group-id="5556738704-5">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="5556738704-5">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%···99.99%</span><span·class="w">142 ·······</span><span·class="nf">aux</span><span·class="p"·data-group-id="1038864477-5">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="1038864477-5">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%···99.99%</span><span·class="w">
143 ·</span><span·class="nf">scheduler</span><span·class="p"·data-group-id="5556738704-6">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="5556738704-6">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.03%····0.13%····0.00%····0.01%····0.00%···99.82%</span><span·class="w">143 ·</span><span·class="nf">scheduler</span><span·class="p"·data-group-id="1038864477-6">(</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="1038864477-6">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.03%····0.13%····0.00%····0.01%····0.00%···99.82%</span><span·class="w">
144 ·</span><span·class="nf">scheduler</span><span·class="p"·data-group-id="5556738704-7">(</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="5556738704-7">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.03%····0.00%···99.97%</span><span·class="w">144 ·</span><span·class="nf">scheduler</span><span·class="p"·data-group-id="1038864477-7">(</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="1038864477-7">)</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.03%····0.00%···99.97%</span><span·class="w">
  
145 </span><span·class="n">Stats</span><span·class="w">·</span><span·class="ss">per</span><span·class="w">·</span><span·class="nc">type</span><span·class="p">:</span><span·class="w">145 </span><span·class="n">Stats</span><span·class="w">·</span><span·class="ss">per</span><span·class="w">·</span><span·class="nc">type</span><span·class="p">:</span><span·class="w">
146 ·········</span><span·class="ss">async</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%··100.00%</span><span·class="w">146 ·········</span><span·class="ss">async</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%··100.00%</span><span·class="w">
147 ···········</span><span·class="ss">aux</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%···99.99%</span><span·class="w">147 ···········</span><span·class="ss">aux</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.00%····0.00%····0.00%····0.00%····0.00%···99.99%</span><span·class="w">
148 ·····</span><span·class="ss">scheduler</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.02%····0.06%····0.00%····0.02%····0.00%···99.89%</span><span·class="w">148 ·····</span><span·class="ss">scheduler</span><span·class="w">····</span><span·class="mf">0.00</span><span·class="c1">%····0.02%····0.06%····0.00%····0.02%····0.00%···99.89%</span><span·class="w">
149 </span><span·class="ss">ok</span></code></pre><p>This·first·command·enables·microstate·accounting·for·1000·milliseconds.·See149 </span><span·class="ss">ok</span></code></pre><p>This·first·command·enables·microstate·accounting·for·1000·milliseconds.·See
150 <a·href="#start/0"><code·class="inline">start/0</code></a>,·<a·href="#stop/0"><code·class="inline">stop/0</code></a>,·<a·href="#reset/0"><code·class="inline">reset/0</code></a>,·and·<a·href="#start/1"><code·class="inline">start/1</code></a>·for·more·details.·The·second150 <a·href="#start/0"><code·class="inline">start/0</code></a>,·<a·href="#stop/0"><code·class="inline">stop/0</code></a>,·<a·href="#reset/0"><code·class="inline">reset/0</code></a>,·and·<a·href="#start/1"><code·class="inline">start/1</code></a>·for·more·details.·The·second
Offset 941, 15 lines modifiedOffset 941, 15 lines modified
  
941 ······</div>941 ······</div>
  
942 <p>Print·the·given·microstate·statistics·values·to·standard·out.·With·many·states942 <p>Print·the·given·microstate·statistics·values·to·standard·out.·With·many·states
943 this·can·be·verbose.·See·the·top·of·this·reference·manual·for·a·brief943 this·can·be·verbose.·See·the·top·of·this·reference·manual·for·a·brief
944 description·of·what·the·fields·mean.</p><p>It·is·possible·to·print·more·specific·types·of·statistics·by·first·manipulating944 description·of·what·the·fields·mean.</p><p>It·is·possible·to·print·more·specific·types·of·statistics·by·first·manipulating
945 the·<code·class="inline">DataOrStats</code>·using·<a·href="#stats/2"><code·class="inline">stats/2</code></a>.·For·instance·if·you·want·to·print·the945 the·<code·class="inline">DataOrStats</code>·using·<a·href="#stats/2"><code·class="inline">stats/2</code></a>.·For·instance·if·you·want·to·print·the
946 percentage·of·run-time·for·each·thread·you·can·do:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">print</span><span·class="p"·data-group-id="9604234598-1">(</span><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">stats</span><span·class="p"·data-group-id="9604234598-2">(</span><span·class="ss">runtime</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">msa[·...·truncated·by·diffoscope;·len:·1323,·SHA:·1c0a5c06d8ed361b02cee3f3e46af5f49b8c4a49572f2d8631e9357f7ebe74e3·...·]-1">)</span><span·class="p">.</span></code></pre><p><em>Options</em></p><ul><li><strong><code·class="inline">system</code></strong>·-·Print·percentage·of·time·spent·in·each·state·out·of·system·time946 percentage·of·run-time·for·each·thread·you·can·do:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">print</span><span·class="p"·data-group-id="1899740337-1">(</span><span·class="nc">msacc</span><span·class="p">:</span><span·class="nf">stats</span><span·class="p"·data-group-id="1899740337-2">(</span><span·class="ss">runtime</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">msa[·...·truncated·by·diffoscope;·len:·1323,·SHA:·77a4d2ac8a40ba14fc7b933ac3178d3dfcf50750eb2027fa99a4fc9370db7616·...·]-1">)</span><span·class="p">.</span></code></pre><p><em>Options</em></p><ul><li><strong><code·class="inline">system</code></strong>·-·Print·percentage·of·time·spent·in·each·state·out·of·system·time
947 as·well·as·thread·time.·Default:·false.</li></ul>947 as·well·as·thread·time.·Default:·false.</li></ul>
948 ··</section>948 ··</section>
949 </section>949 </section>
950 <section·class="detail"·id="print/3">950 <section·class="detail"·id="print/3">
  
951 ··<div·class="detail-header">951 ··<div·class="detail-header">
952 ····<a·href="#print/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">952 ····<a·href="#print/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1232, 15 lines modifiedOffset 1232, 15 lines modified
1232 ······<p·class="built-using">1232 ······<p·class="built-using">
1233 ········Built·using1233 ········Built·using
1234 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1234 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1235 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1235 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1236 ······</p>1236 ······</p>
1237 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1237 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1238 ····</footer>1238 ····</footer>
1239 ··</div>1239 ··</div>
1240 </main>1240 </main>
1241 </div>1241 </div>
1242 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1242 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1243 <script>1243 <script>
1244 ··document.addEventListener("DOMContentLoaded",·function·()·{1244 ··document.addEventListener("DOMContentLoaded",·function·()·{
651 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/notes.html
    
Offset 1263, 15 lines modifiedOffset 1263, 15 lines modified
1263 ······<p·class="built-using">1263 ······<p·class="built-using">
1264 ········Built·using1264 ········Built·using
1265 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1265 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1266 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1266 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1267 ······</p>1267 ······</p>
1268 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1268 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1269 ····</footer>1269 ····</footer>
1270 ··</div>1270 ··</div>
1271 </main>1271 </main>
1272 </div>1272 </div>
1273 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1273 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1274 <script>1274 <script>
1275 ··document.addEventListener("DOMContentLoaded",·function·()·{1275 ··document.addEventListener("DOMContentLoaded",·function·()·{
680 B
html2text {}
Max HTML report size reached
457 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/runtime_tools.epub
3.27 KB
zipinfo {}
Max HTML report size reached
68.9 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
2.49 KB
OEBPS/scheduler.xhtml
Max HTML report size reached
12.9 KB
OEBPS/msacc.xhtml
Max HTML report size reached
92.2 KB
OEBPS/lttng.xhtml
Max HTML report size reached
50.5 KB
OEBPS/instrument.xhtml
Max HTML report size reached
11.3 KB
OEBPS/dyntrace.xhtml
Max HTML report size reached
214 KB
OEBPS/dbg.xhtml
Max HTML report size reached
1.24 KB
OEBPS/content.opf
1.21 KB
OEBPS/content.opf
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/runtime_tools_app.html
    
Offset 191, 15 lines modifiedOffset 191, 15 lines modified
191 ······<p·class="built-using">191 ······<p·class="built-using">
192 ········Built·using192 ········Built·using
193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
195 ······</p>195 ······</p>
196 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>196 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
197 ····</footer>197 ····</footer>
198 ··</div>198 ··</div>
199 </main>199 </main>
200 </div>200 </div>
201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
202 <script>202 <script>
203 ··document.addEventListener("DOMContentLoaded",·function·()·{203 ··document.addEventListener("DOMContentLoaded",·function·()·{
694 B
html2text {}
Max HTML report size reached
4.06 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/scheduler.html
    
Offset 609, 15 lines modifiedOffset 609, 15 lines modified
609 ······</div>609 ······</div>
  
610 <p>Measure·utilization·for·normal·and·dirty-cpu·schedulers·during·<code·class="inline">Seconds</code>610 <p>Measure·utilization·for·normal·and·dirty-cpu·schedulers·during·<code·class="inline">Seconds</code>
611 seconds,·and·then·return·the·result.</p><p>Will·automatically·first·enable·and·then·disable611 seconds,·and·then·return·the·result.</p><p>Will·automatically·first·enable·and·then·disable
612 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#system_flag_scheduler_wall_time"><code·class="inline">scheduler_wall_time</code></a>.</p><p>Calculate·scheduler·utilizations·for·the·time·interval·from·when·<code·class="inline">Sample</code>·was612 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#system_flag_scheduler_wall_time"><code·class="inline">scheduler_wall_time</code></a>.</p><p>Calculate·scheduler·utilizations·for·the·time·interval·from·when·<code·class="inline">Sample</code>·was
613 taken·and·&quot;now&quot;.·The·same·as·calling613 taken·and·&quot;now&quot;.·The·same·as·calling
614 <code·class="inline">scheduler:utilization(Sample,·scheduler:sample_all())</code>.</p><blockquote><h4·class="info">Note</h4><p>This·function·is·<em>not·recommended</em>·as·it's·so·easy·to·get·invalid·results614 <code·class="inline">scheduler:utilization(Sample,·scheduler:sample_all())</code>.</p><blockquote><h4·class="info">Note</h4><p>This·function·is·<em>not·recommended</em>·as·it's·so·easy·to·get·invalid·results
615 without·noticing.·In·particular·do·not·do·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">scheduler</span><span·class="p">:</span><span·class="nf">utilization</span><span·class="p"·data-group-id="1403900178-1">(</span><span·class="nc">scheduler</span><span·class="p">:</span><span·class="nf">sample</span><span·class="p"·data-group-id="1403900178-2">(</span><span·class="p"·data-group-id="1403900178-2">)</span><span·class="p"·data-group-id="1403900178-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·DO·NOT·DO·THIS!</span></code></pre><p>The·above·example·takes·two·samples·in·rapid·succession·and·calculates·the615 without·noticing.·In·particular·do·not·do·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">scheduler</span><span·class="p">:</span><span·class="nf">utilization</span><span·class="p"·data-group-id="8614522712-1">(</span><span·class="nc">scheduler</span><span·class="p">:</span><span·class="nf">sample</span><span·class="p"·data-group-id="8614522712-2">(</span><span·class="p"·data-group-id="8614522712-2">)</span><span·class="p"·data-group-id="8614522712-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·DO·NOT·DO·THIS!</span></code></pre><p>The·above·example·takes·two·samples·in·rapid·succession·and·calculates·the
616 scheduler·utilization·between·them.·The·resulting·values·will·probably·be·more616 scheduler·utilization·between·them.·The·resulting·values·will·probably·be·more
617 misleading·than·informative.</p><p>Instead·use·<a·href="#utilization/2"><code·class="inline">scheduler:utilization/2</code></a>·and·call617 misleading·than·informative.</p><p>Instead·use·<a·href="#utilization/2"><code·class="inline">scheduler:utilization/2</code></a>·and·call
618 <a·href="#get_sample/0"><code·class="inline">get_sample/0</code></a>·to·get·samples·with·some·time·in·between.</p></blockquote>618 <a·href="#get_sample/0"><code·class="inline">get_sample/0</code></a>·to·get·samples·with·some·time·in·between.</p></blockquote>
619 ··</section>619 ··</section>
620 </section>620 </section>
621 <section·class="detail"·id="utilization/2">621 <section·class="detail"·id="utilization/2">
  
Offset 677, 15 lines modifiedOffset 677, 15 lines modified
677 ······<p·class="built-using">677 ······<p·class="built-using">
678 ········Built·using678 ········Built·using
679 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the679 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
680 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>680 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
681 ······</p>681 ······</p>
682 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>682 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
683 ····</footer>683 ····</footer>
684 ··</div>684 ··</div>
685 </main>685 </main>
686 </div>686 </div>
687 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>687 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
688 <script>688 <script>
689 ··document.addEventListener("DOMContentLoaded",·function·()·{689 ··document.addEventListener("DOMContentLoaded",·function·()·{
799 B
html2text {}
Max HTML report size reached
1.29 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
468 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/system_information.html
    
Offset 294, 15 lines modifiedOffset 294, 15 lines modified
294 ······<p·class="built-using">294 ······<p·class="built-using">
295 ········Built·using295 ········Built·using
296 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the296 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
297 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>297 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
298 ······</p>298 ······</p>
299 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>299 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
300 ····</footer>300 ····</footer>
301 ··</div>301 ··</div>
302 </main>302 </main>
303 </div>303 </div>
304 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>304 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
305 <script>305 <script>
306 ··document.addEventListener("DOMContentLoaded",·function·()·{306 ··document.addEventListener("DOMContentLoaded",·function·()·{
629 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/runtime_tools-2.1/doc/html/systemtap.html
    
Offset 209, 15 lines modifiedOffset 209, 15 lines modified
209 ······<p·class="built-using">209 ······<p·class="built-using">
210 ········Built·using210 ········Built·using
211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
213 ······</p>213 ······</p>
214 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
215 ····</footer>215 ····</footer>
216 ··</div>216 ··</div>
217 </main>217 </main>
218 </div>218 </div>
219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
220 <script>220 <script>
221 ··document.addEventListener("DOMContentLoaded",·function·()·{221 ··document.addEventListener("DOMContentLoaded",·function·()·{
726 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/alarm_handler.html
    
Offset 414, 15 lines modifiedOffset 414, 15 lines modified
414 ······<p·class="built-using">414 ······<p·class="built-using">
415 ········Built·using415 ········Built·using
416 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the416 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
417 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>417 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
418 ······</p>418 ······</p>
419 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>419 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
420 ····</footer>420 ····</footer>
421 ··</div>421 ··</div>
422 </main>422 </main>
423 </div>423 </div>
424 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>424 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
425 <script>425 <script>
426 ··document.addEventListener("DOMContentLoaded",·function·()·{426 ··document.addEventListener("DOMContentLoaded",·function·()·{
643 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/api-reference.html
    
Offset 208, 15 lines modifiedOffset 208, 15 lines modified
208 ······<p·class="built-using">208 ······<p·class="built-using">
209 ········Built·using209 ········Built·using
210 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the210 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
211 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>211 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
212 ······</p>212 ······</p>
213 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>213 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
214 ····</footer>214 ····</footer>
215 ··</div>215 ··</div>
216 </main>216 </main>
217 </div>217 </div>
218 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>218 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
219 <script>219 <script>
220 ··document.addEventListener("DOMContentLoaded",·function·()·{220 ··document.addEventListener("DOMContentLoaded",·function·()·{
605 B
html2text {}
Max HTML report size reached
36.5 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/appup.html
    
Offset 217, 29 lines modifiedOffset 217, 29 lines modified
217 that·is,·if·a·process·using·the·module·spontaneously·switches·to·new·code,·or217 that·is,·if·a·process·using·the·module·spontaneously·switches·to·new·code,·or
218 if·it·is·&quot;static&quot;.·When·doing·an·advanced·update·and·upgrade,·the·new·version218 if·it·is·&quot;static&quot;.·When·doing·an·advanced·update·and·upgrade,·the·new·version
219 of·a·dynamic·module·is·loaded·before·the·process·is·asked·to·change·code.·When219 of·a·dynamic·module·is·loaded·before·the·process·is·asked·to·change·code.·When
220 downgrading,·the·process·is·asked·to·change·code·before·loading·the·new220 downgrading,·the·process·is·asked·to·change·code·before·loading·the·new
221 version.·For·static·modules,·the·new·version·is·loaded·before·the·process·is221 version.·For·static·modules,·the·new·version·is·loaded·before·the·process·is
222 asked·to·change·code,·both·in·the·case·of·upgrading·and·downgrading.·Callback222 asked·to·change·code,·both·in·the·case·of·upgrading·and·downgrading.·Callback
223 modules·are·dynamic.</p></li></ul><p><code·class="inline">update</code>·with·argument·<code·class="inline">supervisor</code>·is·used·when·changing·the·start223 modules·are·dynamic.</p></li></ul><p><code·class="inline">update</code>·with·argument·<code·class="inline">supervisor</code>·is·used·when·changing·the·start
224 specification·of·a·supervisor.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2965166817-1">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p"·data-group-id="2965166817-1">}</span><span·class="w">224 specification·of·a·supervisor.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3227744993-1">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p"·data-group-id="3227744993-1">}</span><span·class="w">
225 </span><span·class="p"·data-group-id="2965166817-2">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DepMods</span><span·class="p"·data-group-id="2965166817-2">}</span><span·class="w">225 </span><span·class="p"·data-group-id="3227744993-2">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DepMods</span><span·class="p"·data-group-id="3227744993-2">}</span><span·class="w">
226 </span><span·class="p"·data-group-id="2965166817-3">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrePurge</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·153,·SHA:·37064b274f0bb57215d8fda4b384a8213242e67890bdd33057e266e406a6f46d·...·]-3">}</span><span·class="w">226 </span><span·class="p"·data-group-id="3227744993-3">{</span><span·class="nb">load_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">PrePurge</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·153,·SHA:·fbef4fce9575fb31d71024113e29d17a42e8624610193a98fcfd1e510eaed1a5·...·]-3">}</span><span·class="w">
227 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="2965166817-4">(</span><span·class="p"·data-group-id="2965166817-4">)</span><span·class="w">227 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="3227744993-4">(</span><span·class="p"·data-group-id="3227744993-4">)</span><span·class="w">
228 ··</span><span·class="n">PrePurge</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">PostPurge</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">soft_purge</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">brutal_purge</span><span·class="w">228 ··</span><span·class="n">PrePurge</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">PostPurge</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">soft_purge</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">brutal_purge</span><span·class="w">
229 ··</span><span·class="n">DepMods</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2965166817-5">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="2965166817-5">]</span></code></pre><p>Simple·code·replacement·of·the·module·<code·class="inline">Mod</code>.</p><p>For·a·description·of·<code·class="inline">PrePurge</code>·and·<code·class="inline">PostPurge</code>,·see·<code·class="inline">update</code>·above.</p><p><code·class="inline">DepMods</code>·defaults·to·<code·class="inline">[]</code>·and·defines·which·other·modules·<code·class="inline">Mod</code>·is·dependent229 ··</span><span·class="n">DepMods</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3227744993-5">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="3227744993-5">]</span></code></pre><p>Simple·code·replacement·of·the·module·<code·class="inline">Mod</code>.</p><p>For·a·description·of·<code·class="inline">PrePurge</code>·and·<code·class="inline">PostPurge</code>,·see·<code·class="inline">update</code>·above.</p><p><code·class="inline">DepMods</code>·defaults·to·<code·class="inline">[]</code>·and·defines·which·other·modules·<code·class="inline">Mod</code>·is·dependent
230 on.·In·the·<code·class="inline">relup</code>·file,·instructions·for·loading·these·modules·come·before·the230 on.·In·the·<code·class="inline">relup</code>·file,·instructions·for·loading·these·modules·come·before·the
231 instruction·for·loading·<code·class="inline">Mod</code>·when·upgrading,·and·conversely·when·downgrading.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1516087734-1">{</span><span·class="ss">add_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p"·data-group-id="1516087734-1">}</span><span·class="w">231 instruction·for·loading·<code·class="inline">Mod</code>·when·upgrading,·and·conversely·when·downgrading.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1184921086-1">{</span><span·class="ss">add_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p"·data-group-id="1184921086-1">}</span><span·class="w">
232 </span><span·class="p"·data-group-id="1516087734-2">{</span><span·class="ss">add_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DepMods</span><span·class="p"·data-group-id="1516087734-2">}</span><span·class="w">232 </span><span·class="p"·data-group-id="1184921086-2">{</span><span·class="ss">add_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DepMods</span><span·class="p"·data-group-id="1184921086-2">}</span><span·class="w">
233 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="1516087734-3">(</span><span·class="p"·data-group-id="1516087734-3">)</span><span·class="w">233 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="1184921086-3">(</span><span·class="p"·data-group-id="1184921086-3">)</span><span·class="w">
234 ··</span><span·class="n">DepMods</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1516087734-4">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="1516087734-4">]</span></code></pre><p>Loads·a·new·module·<code·class="inline">Mod</code>.</p><p><code·class="inline">DepMods</code>·defaults·to·<code·class="inline">[]</code>·and·defines·which·other·modules·<code·class="inline">Mod</code>·is·dependent234 ··</span><span·class="n">DepMods</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1184921086-4">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="1184921086-4">]</span></code></pre><p>Loads·a·new·module·<code·class="inline">Mod</code>.</p><p><code·class="inline">DepMods</code>·defaults·to·<code·class="inline">[]</code>·and·defines·which·other·modules·<code·class="inline">Mod</code>·is·dependent
235 on.·In·the·<code·class="inline">relup</code>·file,·instructions·related·to·these·modules·come·before·the235 on.·In·the·<code·class="inline">relup</code>·file,·instructions·related·to·these·modules·come·before·the
236 instruction·for·loading·<code·class="inline">Mod</code>·when·upgrading,·and·conversely·when·downgrading.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3149172989-1">{</span><span·class="nb">delete_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p"·data-group-id="3149172989-1">}</span><span·class="w">236 instruction·for·loading·<code·class="inline">Mod</code>·when·upgrading,·and·conversely·when·downgrading.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7401462258-1">{</span><span·class="nb">delete_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p"·data-group-id="7401462258-1">}</span><span·class="w">
237 </span><span·class="p"·data-group-id="3149172989-2">{</span><span·class="nb">delete_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DepMods</span><span·class="p"·data-group-id="3149172989-2">}</span><span·class="w">237 </span><span·class="p"·data-group-id="7401462258-2">{</span><span·class="nb">delete_module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DepMods</span><span·class="p"·data-group-id="7401462258-2">}</span><span·class="w">
238 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="3149172989-3">(</span><span·class="p"·data-group-id="3149172989-3">)</span></code></pre><p>Deletes·a·module·<code·class="inline">Mod</code>·using·the·low-level·instructions·<code·class="inline">remove</code>·and·<code·class="inline">purge</code>.</p><p><code·class="inline">DepMods</code>·defaults·to·<code·class="inline">[]</code>·and·defines·which·other·modules·<code·class="inline">Mod</code>·is·dependent238 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="7401462258-3">(</span><span·class="p"·data-group-id="7401462258-3">)</span></code></pre><p>Deletes·a·module·<code·class="inline">Mod</code>·using·the·low-level·instructions·<code·class="inline">remove</code>·and·<code·class="inline">purge</code>.</p><p><code·class="inline">DepMods</code>·defaults·to·<code·class="inline">[]</code>·and·defines·which·other·modules·<code·class="inline">Mod</code>·is·dependent
239 on.·In·the·<code·class="inline">relup</code>·file,·instructions·related·to·these·modules·come·before·the239 on.·In·the·<code·class="inline">relup</code>·file,·instructions·related·to·these·modules·come·before·the
240 instruction·for·removing·<code·class="inline">Mod</code>·when·upgrading,·and·conversely·when·downgrading.</p><pre><code·class="text">{add_application,·Application}240 instruction·for·removing·<code·class="inline">Mod</code>·when·upgrading,·and·conversely·when·downgrading.</p><pre><code·class="text">{add_application,·Application}
241 {add_application,·Application,·Type}241 {add_application,·Application,·Type}
242 ··Application·=·atom()242 ··Application·=·atom()
243 ··Type·=·permanent·|·transient·|·temporary·|·load·|·none</code></pre><p>Adding·an·application·means·that·the·modules·defined·by·the·<code·class="inline">modules</code>·key·in·the243 ··Type·=·permanent·|·transient·|·temporary·|·load·|·none</code></pre><p>Adding·an·application·means·that·the·modules·defined·by·the·<code·class="inline">modules</code>·key·in·the
244 <code·class="inline">.app</code>·file·are·loaded·using·<code·class="inline">add_module</code>.</p><p><code·class="inline">Type</code>·defaults·to·<code·class="inline">permanent</code>·and·specifies·the·start·type·of·the·application.244 <code·class="inline">.app</code>·file·are·loaded·using·<code·class="inline">add_module</code>.</p><p><code·class="inline">Type</code>·defaults·to·<code·class="inline">permanent</code>·and·specifies·the·start·type·of·the·application.
245 If·<code·class="inline">Type·=·permanent·|·transient·|·temporary</code>,·the·application·is·loaded·and245 If·<code·class="inline">Type·=·permanent·|·transient·|·temporary</code>,·the·application·is·loaded·and
Offset 258, 62 lines modifiedOffset 258, 62 lines modified
258 application·is·not·loaded·and·not·started,·although·the·code·for·its·modules·is258 application·is·not·loaded·and·not·started,·although·the·code·for·its·modules·is
259 loaded.</p><h3·id="low-level-instructions"·class="section-heading">259 loaded.</p><h3·id="low-level-instructions"·class="section-heading">
260 ··<a·href="#low-level-instructions"·class="hover-link">260 ··<a·href="#low-level-instructions"·class="hover-link">
261 ····<i·class="ri-link-m"·aria-hidden="true"></i>261 ····<i·class="ri-link-m"·aria-hidden="true"></i>
262 ··</a>262 ··</a>
263 ··<span·class="text">Low-Level·Instructions</span>263 ··<span·class="text">Low-Level·Instructions</span>
264 </h3>264 </h3>
265 <pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1978693461-1">{</span><span·class="ss">load_object_code</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1978693461-2">{</span><span·class="n">App</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Vsn[·...·truncated·by·diffoscope;·len:·281,·SHA:·0a96e90cd19c31419e3d7412617dc975d4f79203c0212bf5c8711455a814f940·...·]-1">}</span><span·class="w">265 <pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4360672705-1">{</span><span·class="ss">load_object_code</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4360672705-2">{</span><span·class="n">App</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Vsn[·...·truncated·by·diffoscope;·len:·281,·SHA:·50ae9b7ff5735d517f197273ba1b26943bd8c451acff15f5a93335b6aed205f1·...·]-1">}</span><span·class="w">
266 ··</span><span·class="n">App</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="1978693461-4">(</span><span·class="p"·data-group-id="1978693461-4">)</span><span·class="w">266 ··</span><span·class="n">App</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="4360672705-4">(</span><span·class="p"·data-group-id="4360672705-4">)</span><span·class="w">
267 ··</span><span·class="n">Vsn</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="1978693461-5">(</span><span·class="p"·data-group-id="1978693461-5">)</span></code></pre><p>Reads·each·<code·class="inline">Mod</code>·from·directory·<code·class="inline">App-Vsn/ebin</code>·as·a·binary.·It·does·not·load·the267 ··</span><span·class="n">Vsn</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="4360672705-5">(</span><span·class="p"·data-group-id="4360672705-5">)</span></code></pre><p>Reads·each·<code·class="inline">Mod</code>·from·directory·<code·class="inline">App-Vsn/ebin</code>·as·a·binary.·It·does·not·load·the
268 modules.·The·instruction·is·to·be·placed·first·in·the·script·to·read·all·new268 modules.·The·instruction·is·to·be·placed·first·in·the·script·to·read·all·new
269 code·from·the·file·to·make·the·suspend-load-resume·cycle·less·time-consuming.</p><pre><code·class="text">point_of_no_return</code></pre><p>If·a·crash·occurs·after·this·instruction,·the·system·cannot·recover·and·is269 code·from·the·file·to·make·the·suspend-load-resume·cycle·less·time-consuming.</p><pre><code·class="text">point_of_no_return</code></pre><p>If·a·crash·occurs·after·this·instruction,·the·system·cannot·recover·and·is
270 restarted·from·the·old·release·version.·The·instruction·must·only·occur·once·in270 restarted·from·the·old·release·version.·The·instruction·must·only·occur·once·in
271 a·script.·It·is·to·be·placed·after·all·<code·class="inline">load_object_code</code>·instructions.</p><pre><code·class="text">{load,·{Mod,·PrePurge,·PostPurge}}271 a·script.·It·is·to·be·placed·after·all·<code·class="inline">load_object_code</code>·instructions.</p><pre><code·class="text">{load,·{Mod,·PrePurge,·PostPurge}}
272 ··Mod·=·atom()272 ··Mod·=·atom()
273 ··PrePurge·=·PostPurge·=·soft_purge·|·brutal_purge</code></pre><p>Before·this·instruction·occurs,·<code·class="inline">Mod</code>·must·have·been·loaded·using273 ··PrePurge·=·PostPurge·=·soft_purge·|·brutal_purge</code></pre><p>Before·this·instruction·occurs,·<code·class="inline">Mod</code>·must·have·been·loaded·using
274 <code·class="inline">load_object_code</code>.·This·instruction·loads·the·module.·<code·class="inline">PrePurge</code>·is·ignored.274 <code·class="inline">load_object_code</code>.·This·instruction·loads·the·module.·<code·class="inline">PrePurge</code>·is·ignored.
275 For·a·description·of·<code·class="inline">PostPurge</code>,·see·the·high-level·instruction·<code·class="inline">update</code>275 For·a·description·of·<code·class="inline">PostPurge</code>,·see·the·high-level·instruction·<code·class="inline">update</code>
276 earlier.</p><pre><code·class="text">{remove,·{Mod,·PrePurge,·PostPurge}}276 earlier.</p><pre><code·class="text">{remove,·{Mod,·PrePurge,·PostPurge}}
277 ··Mod·=·atom()277 ··Mod·=·atom()
278 ··PrePurge·=·PostPurge·=·soft_purge·|·brutal_purge</code></pre><p>Makes·the·current·version·of·<code·class="inline">Mod</code>·old.·<code·class="inline">PrePurge</code>·is·ignored.·For·a·description278 ··PrePurge·=·PostPurge·=·soft_purge·|·brutal_purge</code></pre><p>Makes·the·current·version·of·<code·class="inline">Mod</code>·old.·<code·class="inline">PrePurge</code>·is·ignored.·For·a·description
279 of·<code·class="inline">PostPurge</code>,·see·the·high-level·instruction·<code·class="inline">update</code>·earlier.</p><pre><code·class="text">{purge,·[Mod]}279 of·<code·class="inline">PostPurge</code>,·see·the·high-level·instruction·<code·class="inline">update</code>·earlier.</p><pre><code·class="text">{purge,·[Mod]}
280 ··Mod·=·atom()</code></pre><p>Purges·each·module·<code·class="inline">Mod</code>,·that·is,·removes·the·old·code.·Notice·that·any·process280 ··Mod·=·atom()</code></pre><p>Purges·each·module·<code·class="inline">Mod</code>,·that·is,·removes·the·old·code.·Notice·that·any·process
281 executing·purged·code·is·killed.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5491446860-1">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5491446860-2">[</span><span·class="n">Mod</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·300,·SHA:·91e4e3404e878581414646a7256dc7e9b1e48b8cf82c0ae59e039a68ebf3172b·...·]-1">}</span><span·class="w">281 executing·purged·code·is·killed.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8969331465-1">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8969331465-2">[</span><span·class="n">Mod</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·300,·SHA:·cb426d9b6a5abe5fd90ae466f64538c380a1e7f71679d0a85aa4e8c5738cfddf·...·]-1">}</span><span·class="w">
282 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="5491446860-4">(</span><span·class="p"·data-group-id="5491446860-4">)</span><span·class="w">282 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="8969331465-4">(</span><span·class="p"·data-group-id="8969331465-4">)</span><span·class="w">
283 ··</span><span·class="n">Timeout</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="5491446860-5">(</span><span·class="p"·data-group-id="5491446860-5">)</span><span·class="o">&gt;</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">default</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">infinity</span></code></pre><p>Tries·to·suspend·all·processes·using·a·module·<code·class="inline">Mod</code>.·If·a·process·does·not283 ··</span><span·class="n">Timeout</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="8969331465-5">(</span><span·class="p"·data-group-id="8969331465-5">)</span><span·class="o">&gt;</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">default</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">infinity</span></code></pre><p>Tries·to·suspend·all·processes·using·a·module·<code·class="inline">Mod</code>.·If·a·process·does·not
284 respond,·it·is·ignored.·This·can·cause·the·process·to·die,·either·because·it284 respond,·it·is·ignored.·This·can·cause·the·process·to·die,·either·because·it
285 crashes·when·it·spontaneously·switches·to·new·code,·or·as·a·result·of·a·purge285 crashes·when·it·spontaneously·switches·to·new·code,·or·as·a·result·of·a·purge
286 operation.·If·no·<code·class="inline">Timeout</code>·is·specified·or·<code·class="inline">default</code>·is·specified,·the·default286 operation.·If·no·<code·class="inline">Timeout</code>·is·specified·or·<code·class="inline">default</code>·is·specified,·the·default
287 value·for·<a·href="../../../../lib/stdlib-6.0.1/doc/html/sys.html#suspend/1"><code·class="inline">sys:suspend</code></a>·is·used.</p><pre><code·class="text">{resume,·[Mod]}287 value·for·<a·href="../../../../lib/stdlib-6.0.1/doc/html/sys.html#suspend/1"><code·class="inline">sys:suspend</code></a>·is·used.</p><pre><code·class="text">{resume,·[Mod]}
288 ··Mod·=·atom()</code></pre><p>Resumes·all·suspended·processes·using·a·module·<code·class="inline">Mod</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7792438069-1">{</span><span·class="ss">code_change</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7792438069-2">[</span><span·class="p"·data-group-id="7792438069-3">{</span><span·class="n">Mod</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·204,·SHA:·592449f62d9da5a410991bd197b82a6f08e98baf43f26fe5f9349f96bc049d76·...·]-1">}</span><span·class="w">288 ··Mod·=·atom()</code></pre><p>Resumes·all·suspended·processes·using·a·module·<code·class="inline">Mod</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2322565774-1">{</span><span·class="ss">code_change</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2322565774-2">[</span><span·class="p"·data-group-id="2322565774-3">{</span><span·class="n">Mod</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·204,·SHA:·79854ebb6ed6e22da7431ef2419402cb9fbaaed2cd09dcb0f1751e8691f8c028·...·]-1">}</span><span·class="w">
289 </span><span·class="p"·data-group-id="7792438069-4">{</span><span·class="ss">code_change</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mode</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7792438069-5">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·279,·SHA:·4f0e49f4fa62b76136a302ce6565a77c2ee936c4f0b3e241ab23be04f6434133·...·]-4">}</span><span·class="w">289 </span><span·class="p"·data-group-id="2322565774-4">{</span><span·class="ss">code_change</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mode</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2322565774-5">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·279,·SHA:·117a80b50c1841cacc261ac0f133209af24a995b1c9fc48b67c67df4536470e2·...·]-4">}</span><span·class="w">
290 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="7792438069-7">(</span><span·class="p"·data-group-id="7792438069-7">)</span><span·class="w">290 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="2322565774-7">(</span><span·class="p"·data-group-id="2322565774-7">)</span><span·class="w">
291 ··</span><span·class="n">Mode</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">up</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">down</span><span·class="w">291 ··</span><span·class="n">Mode</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">up</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">down</span><span·class="w">
292 ··</span><span·class="n">Extra</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="7792438069-8">(</span><span·class="p"·data-group-id="7792438069-8">)</span></code></pre><p><code·class="inline">Mode</code>·defaults·to·<code·class="inline">up</code>·and·specifies·if·it·is·an·upgrade·or·downgrade.·This292 ··</span><span·class="n">Extra</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="2322565774-8">(</span><span·class="p"·data-group-id="2322565774-8">)</span></code></pre><p><code·class="inline">Mode</code>·defaults·to·<code·class="inline">up</code>·and·specifies·if·it·is·an·upgrade·or·downgrade.·This
293 instruction·sends·a·<code·class="inline">code_change</code>·system·message·to·all·processes·using·a·module293 instruction·sends·a·<code·class="inline">code_change</code>·system·message·to·all·processes·using·a·module
294 <code·class="inline">Mod</code>·by·calling·function·<a·href="../../../../lib/stdlib-6.0.1/doc/html/sys.html#change_code/4"><code·class="inline">sys:change_code</code></a>,·passing·term294 <code·class="inline">Mod</code>·by·calling·function·<a·href="../../../../lib/stdlib-6.0.1/doc/html/sys.html#change_code/4"><code·class="inline">sys:change_code</code></a>,·passing·term
295 <code·class="inline">Extra</code>·as·argument.</p><pre><code·class="text">{stop,·[Mod]}295 <code·class="inline">Extra</code>·as·argument.</p><pre><code·class="text">{stop,·[Mod]}
296 ··Mod·=·atom()</code></pre><p>Stops·all·processes·using·a·module·<code·class="inline">Mod</code>·by·calling296 ··Mod·=·atom()</code></pre><p>Stops·all·processes·using·a·module·<code·class="inline">Mod</code>·by·calling
297 <a·href="../../../../lib/stdlib-6.0.1/doc/html/supervisor.html#terminate_child/2"><code·class="inline">supervisor:terminate_child/2</code></a>.·This·instruction·is·useful·when·the·simplest·way297 <a·href="../../../../lib/stdlib-6.0.1/doc/html/supervisor.html#terminate_child/2"><code·class="inline">supervisor:terminate_child/2</code></a>.·This·instruction·is·useful·when·the·simplest·way
298 to·change·code·is·to·stop·and·restart·the·processes·that·run·the·code.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6418741224-1">{</span><span·class="ss">start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6418741224-2">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="6418741224-2">]</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·1f2683c26b20a5ebf5c91f0d125963b7f52571ac794c2fb317d0caa90537fa8d·...·]-1">}</span><span·class="w">298 to·change·code·is·to·stop·and·restart·the·processes·that·run·the·code.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4531511587-1">{</span><span·class="ss">start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4531511587-2">[</span><span·class="n">Mod</span><span·class="p"·data-group-id="4531511587-2">]</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·ac4fee43a6e1c963ddcaffedac440c6bc6c3385f96a989b1bab006d94a1c8e19·...·]-1">}</span><span·class="w">
299 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="6418741224-3">(</span><span·class="p"·data-group-id="6418741224-3">)</span></code></pre><p>Starts·all·stopped·processes·using·a·module·<code·class="inline">Mod</code>·by·calling299 ··</span><span·class="n">Mod</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="4531511587-3">(</span><span·class="p"·data-group-id="4531511587-3">)</span></code></pre><p>Starts·all·stopped·processes·using·a·module·<code·class="inline">Mod</code>·by·calling
300 <a·href="../../../../lib/stdlib-6.0.1/doc/html/supervisor.html#restart_child/2"><code·class="inline">supervisor:restart_child/2</code></a>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2481632662-1">{</span><span·class="ss">sync_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Id</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2481632662-2">[</span><span·class="n">Node</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·bbd9f6b4ec59d35f8fe9e4cc6236b91cc9710be9055f2b8255371730fab598e8·...·]-1">}</span><span·class="w">300 <a·href="../../../../lib/stdlib-6.0.1/doc/html/supervisor.html#restart_child/2"><code·class="inline">supervisor:restart_child/2</code></a>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6448255473-1">{</span><span·class="ss">sync_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Id</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6448255473-2">[</span><span·class="n">Node</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·a45074424ae9f84ccc775cc2244739270471cc776a008719304cc52d760a3177·...·]-1">}</span><span·class="w">
301 </span><span·class="p"·data-group-id="2481632662-3">{</span><span·class="ss">sync_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Id</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2481632662-4">{</span><span·class="n">M</span><s[·...·truncated·by·diffoscope;·len:·236,·SHA:·049745db1b453e9963f566aa5c2665cb2af0c271ecc75a7e29f2d943fd354a22·...·]-3">}</span><span·class="w">301 </span><span·class="p"·data-group-id="6448255473-3">{</span><span·class="ss">sync_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Id</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6448255473-4">{</span><span·class="n">M</span><s[·...·truncated·by·diffoscope;·len:·236,·SHA:·db06aa5d02add4440ef23ccd404636628e51d52c79216827032b03b4251ee47b·...·]-3">}</span><span·class="w">
302 ··</span><span·class="n">Id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="2481632662-5">(</span><span·class="p"·data-group-id="2481632662-5">)</span><span·class="w">302 ··</span><span·class="n">Id</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="6448255473-5">(</span><span·class="p"·data-group-id="6448255473-5">)</span><span·class="w">
303 ··</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">node</span><span·class="p"·data-group-id="2481632662-6">(</span><span·class="p"·data-group-id="2481632662-6">)</span><span·class="w">303 ··</span><span·class="n">Node</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">node</span><span·class="p"·data-group-id="6448255473-6">(</span><span·class="p"·data-group-id="6448255473-6">)</span><span·class="w">
304 ··</span><span·class="n">M</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="2481632662-7">(</span><span·class="p"·data-group-id="2481632662-7">)</span><span·class="w">304 ··</span><span·class="n">M</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="6448255473-7">(</span><span·class="p"·data-group-id="6448255473-7">)</span><span·class="w">
305 ··</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2481632662-8">[</span><span·class="nf">term</span><span·class="p"·data-group-id="2481632662-9">(</span><span·class="p"·data-group-id="2481632662-9">)</span><span·class="p"·data-group-id="2481632662-8">]</span></code></pre><p><a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(M,·F,·A)</code></a>·must·return·a·list·of·nodes.</p><p>This·instruction·synchronizes·the·release·installation·with·other·nodes.·Each305 ··</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6448255473-8">[</span><span·class="nf">term</span><span·class="p"·data-group-id="6448255473-9">(</span><span·class="p"·data-group-id="6448255473-9">)</span><span·class="p"·data-group-id="6448255473-8">]</span></code></pre><p><a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(M,·F,·A)</code></a>·must·return·a·list·of·nodes.</p><p>This·instruction·synchronizes·the·release·installation·with·other·nodes.·Each
306 <code·class="inline">Node</code>·must·evaluate·this·command·with·the·same·<code·class="inline">Id</code>.·The·local·node·waits·for306 <code·class="inline">Node</code>·must·evaluate·this·command·with·the·same·<code·class="inline">Id</code>.·The·local·node·waits·for
307 all·other·nodes·to·evaluate·the·instruction·before·execution·continues.·If·a307 all·other·nodes·to·evaluate·the·instruction·before·execution·continues.·If·a
308 node·goes·down,·it·is·considered·to·be·an·unrecoverable·error,·and·the·local308 node·goes·down,·it·is·considered·to·be·an·unrecoverable·error,·and·the·local
309 node·is·restarted·from·the·old·release.·There·is·no·time-out·for·this309 node·is·restarted·from·the·old·release.·There·is·no·time-out·for·this
310 instruction,·which·means·that·it·can·hang·forever.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8284321956-1">{</span><span·class="nb">apply</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8284321956-2">{</span><span·class="n">M</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·cl[·...·truncated·by·diffoscope;·len:·158,·SHA:·ea52ca3a5405fe18156f3b3b5d38b9eae40073a4efae843675c406198411abf2·...·]-1">}</span><span·class="w">310 instruction,·which·means·that·it·can·hang·forever.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0354675162-1">{</span><span·class="nb">apply</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0354675162-2">{</span><span·class="n">M</span><span·class="p">,</span><span·class="w">·</span><span·class="n">F</span><span·cl[·...·truncated·by·diffoscope;·len:·158,·SHA:·11c88c71a9d5f289716d22d365899927b14d0e0567b4f49efdce5f55bf3a10d2·...·]-1">}</span><span·class="w">
311 ··</span><span·class="n">M</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="8284321956-3">(</span><span·class="p"·data-group-id="8284321956-3">)</span><span·class="w">311 ··</span><span·class="n">M</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">F</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="0354675162-3">(</span><span·class="p"·data-group-id="0354675162-3">)</span><span·class="w">
312 ··</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8284321956-4">[</span><span·class="nf">term</span><span·class="p"·data-group-id="8284321956-5">(</span><span·class="p"·data-group-id="8284321956-5">)</span><span·class="p"·data-group-id="8284321956-4">]</span></code></pre><p>Evaluates·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(M,·F,·A)</code></a>.</p><p>If·the·instruction·appears·before·instruction·<code·class="inline">point_of_no_return</code>,·a·failure·is312 ··</span><span·class="n">A</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0354675162-4">[</span><span·class="nf">term</span><span·class="p"·data-group-id="0354675162-5">(</span><span·class="p"·data-group-id="0354675162-5">)</span><span·class="p"·data-group-id="0354675162-4">]</span></code></pre><p>Evaluates·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(M,·F,·A)</code></a>.</p><p>If·the·instruction·appears·before·instruction·<code·class="inline">point_of_no_return</code>,·a·failure·is
313 caught.·<a·href="release_handler.html#install_release/1"><code·class="inline">release_handler:install_release/1</code></a>·then·returns313 caught.·<a·href="release_handler.html#install_release/1"><code·class="inline">release_handler:install_release/1</code></a>·then·returns
314 <code·class="inline">{error,{'EXIT',Reason}}</code>,·unless·<code·class="inline">{error,Error}</code>·is·thrown·or·returned.·Then·it314 <code·class="inline">{error,{'EXIT',Reason}}</code>,·unless·<code·class="inline">{error,Error}</code>·is·thrown·or·returned.·Then·it
315 returns·<code·class="inline">{error,Error}</code>.</p><p>If·the·instruction·appears·after·instruction·<code·class="inline">point_of_no_return</code>·and·the315 returns·<code·class="inline">{error,Error}</code>.</p><p>If·the·instruction·appears·after·instruction·<code·class="inline">point_of_no_return</code>·and·the
316 function·call·fails,·the·system·is·restarted.</p><pre><code·class="text">restart_new_emulator</code></pre><p>This·instruction·is·used·when·the·application·ERTS,·Kernel,·STDLIB,·or·SASL·is316 function·call·fails,·the·system·is·restarted.</p><pre><code·class="text">restart_new_emulator</code></pre><p>This·instruction·is·used·when·the·application·ERTS,·Kernel,·STDLIB,·or·SASL·is
317 upgraded.·It·shuts·down·the·current·emulator·and·starts·a·new·one.·All·processes317 upgraded.·It·shuts·down·the·current·emulator·and·starts·a·new·one.·All·processes
318 are·terminated·gracefully,·and·the·new·version·of·ERTS,·Kernel,·STDLIB,·and·SASL318 are·terminated·gracefully,·and·the·new·version·of·ERTS,·Kernel,·STDLIB,·and·SASL
319 are·used·when·the·emulator·restarts.·Only·one·<code·class="inline">restart_new_emulator</code>·instruction319 are·used·when·the·emulator·restarts.·Only·one·<code·class="inline">restart_new_emulator</code>·instruction
Offset 391, 15 lines modifiedOffset 391, 15 lines modified
391 ······<p·class="built-using">391 ······<p·class="built-using">
392 ········Built·using392 ········Built·using
393 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the393 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
394 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>394 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
395 ······</p>395 ······</p>
396 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>396 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
397 ····</footer>397 ····</footer>
398 ··</div>398 ··</div>
399 </main>399 </main>
400 </div>400 </div>
401 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>401 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
402 <script>402 <script>
403 ··document.addEventListener("DOMContentLoaded",·function·()·{403 ··document.addEventListener("DOMContentLoaded",·function·()·{
690 B
html2text {}
Max HTML report size reached
18.7 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/error_logging.html
    
Offset 304, 50 lines modifiedOffset 304, 50 lines modified
304 ········ok</code></pre><h3·id="show-reports"·class="section-heading">304 ········ok</code></pre><h3·id="show-reports"·class="section-heading">
305 ··<a·href="#show-reports"·class="hover-link">305 ··<a·href="#show-reports"·class="hover-link">
306 ····<i·class="ri-link-m"·aria-hidden="true"></i>306 ····<i·class="ri-link-m"·aria-hidden="true"></i>
307 ··</a>307 ··</a>
308 ··<span·class="text">Show·Reports</span>308 ··<span·class="text">Show·Reports</span>
309 </h3>309 </h3>
310 <p>Use·function·<a·href="rb.html#show/1"><code·class="inline">rb:show(Number)</code></a>·to·show·details·of·a·specific310 <p>Use·function·<a·href="rb.html#show/1"><code·class="inline">rb:show(Number)</code></a>·to·show·details·of·a·specific
311 report:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">7&gt;·</span><span·class="nc">rb</span><span·class="p">:</span><span·class="nf">show</span><span·class="p"·data-group-id="6435595105-1">(</span><span·class="mi">4</span><span·class="p"·data-group-id="6435595105-1">)</span><span·class="p">.</span><span·class="w">311 report:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">7&gt;·</span><span·class="nc">rb</span><span·class="p">:</span><span·class="nf">show</span><span·class="p"·data-group-id="9590768204-1">(</span><span·class="mi">4</span><span·class="p"·data-group-id="9590768204-1">)</span><span·class="p">.</span><span·class="w">
  
312 </span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="w">··</span><span·class="o">&lt;</span><span·class="mf">0.20</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">···································</span><span·class="mi">1996</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">16</span><span·class="w">·</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">36</span><span·class="w">312 </span><span·class="n">PROGRESS</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="w">··</span><span·class="o">&lt;</span><span·class="mf">0.20</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">···································</span><span·class="mi">1996</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">16</span><span·class="w">·</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">36</span><span·class="w">
313 </span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">=</span><span·class="w">313 </span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">=</span><span·class="w">
314 </span><span·class="ss">supervisor</span><span·class="w">·····················································</span><span·class="p"·data-group-id="6435595105-2">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">sasl_sup</span><span·class="p"·data-group-id="6435595105-2">}</span><span·class="w">314 </span><span·class="ss">supervisor</span><span·class="w">·····················································</span><span·class="p"·data-group-id="9590768204-2">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="ss">sasl_sup</span><span·class="p"·data-group-id="9590768204-2">}</span><span·class="w">
315 </span><span·class="ss">started</span><span·class="w">315 </span><span·class="ss">started</span><span·class="w">
316 </span><span·class="p"·data-group-id="6435595105-3">[</span><span·class="p"·data-group-id="6435595105-4">{</span><span·class="ss">pid</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.24</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·1b5f9cbc8566dd2a0fe7b7a0b8dfc13b94763d5c9a825e1b98dcc75de5348bcf·...·]-4">}</span><span·class="p">,</span><span·class="w">316 </span><span·class="p"·data-group-id="9590768204-3">[</span><span·class="p"·data-group-id="9590768204-4">{</span><span·class="ss">pid</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.24</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·2ae2c7e842df8fc1352d9c0a0aa0f011963fa5124fe2fb27865dabf6c6185414·...·]-4">}</span><span·class="p">,</span><span·class="w">
317 </span><span·class="p"·data-group-id="6435595105-5">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="ss">release_handler</span><span·class="p"·data-group-id="6435595105-5">}</span><span·class="p">,</span><span·class="w">317 </span><span·class="p"·data-group-id="9590768204-5">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="ss">release_handler</span><span·class="p"·data-group-id="9590768204-5">}</span><span·class="p">,</span><span·class="w">
318 </span><span·class="p"·data-group-id="6435595105-6">{</span><span·class="ss">mfa</span><span·class="p">,</span><span·class="p"·data-group-id="6435595105-7">{</span><span·class="ss">release_handler</span><span·class="p">,</span><span·class="ss">start_link</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·191,·SHA:·57bec7c6d53a94112247ef185da5d2018f4a772920199f88817b33f14e7cd886·...·]-6">}</span><span·class="p">,</span><span·class="w">318 </span><span·class="p"·data-group-id="9590768204-6">{</span><span·class="ss">mfa</span><span·class="p">,</span><span·class="p"·data-group-id="9590768204-7">{</span><span·class="ss">release_handler</span><span·class="p">,</span><span·class="ss">start_link</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·191,·SHA:·386cf8bc02ebe4ec424b14aa42cf7f492078659016d670167f717ccd553b3c4d·...·]-6">}</span><span·class="p">,</span><span·class="w">
319 </span><span·class="p"·data-group-id="6435595105-9">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="6435595105-9">}</span><span·class="p">,</span><span·class="w">319 </span><span·class="p"·data-group-id="9590768204-9">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="ss">permanent</span><span·class="p"·data-group-id="9590768204-9">}</span><span·class="p">,</span><span·class="w">
320 </span><span·class="p"·data-group-id="6435595105-10">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">2000</span><span·class="p"·data-group-id="6435595105-10">}</span><span·class="p">,</span><span·class="w">320 </span><span·class="p"·data-group-id="9590768204-10">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="mi">2000</span><span·class="p"·data-group-id="9590768204-10">}</span><span·class="p">,</span><span·class="w">
321 </span><span·class="p"·data-group-id="6435595105-11">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">worker</span><span·class="p"·data-group-id="6435595105-11">}</span><span·class="p"·data-group-id="6435595105-3">]</span><span·class="w">321 </span><span·class="p"·data-group-id="9590768204-11">{</span><span·class="ss">child_type</span><span·class="p">,</span><span·class="ss">worker</span><span·class="p"·data-group-id="9590768204-11">}</span><span·class="p"·data-group-id="9590768204-3">]</span><span·class="w">
  
322 </span><span·class="ss">ok</span><span·class="gp·unselectable">322 </span><span·class="ss">ok</span><span·class="gp·unselectable">
323 8&gt;·</span><span·class="nc">rb</span><span·class="p">:</span><span·class="nf">show</span><span·class="p"·data-group-id="6435595105-12">(</span><span·class="mi">9</span><span·class="p"·data-group-id="6435595105-12">)</span><span·class="p">.</span><span·class="w">323 8&gt;·</span><span·class="nc">rb</span><span·class="p">:</span><span·class="nf">show</span><span·class="p"·data-group-id="9590768204-12">(</span><span·class="mi">9</span><span·class="p"·data-group-id="9590768204-12">)</span><span·class="p">.</span><span·class="w">
  
324 </span><span·class="n">CRASH</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="w">··</span><span·class="o">&lt;</span><span·class="mf">0.24</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">······································</span><span·class="mi">1996</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">16</span><span·class="w">·</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">21</span><span·class="w">324 </span><span·class="n">CRASH</span><span·class="w">·</span><span·class="n">REPORT</span><span·class="w">··</span><span·class="o">&lt;</span><span·class="mf">0.24</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">······································</span><span·class="mi">1996</span><span·class="o">-</span><span·class="mi">10</span><span·class="o">-</span><span·class="mi">16</span><span·class="w">·</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">16</span><span·class="p">:</span><span·class="mi">21</span><span·class="w">
325 </span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">=</span><span·class="w">325 </span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">==</span><span·class="o">=</span><span·class="w">
326 </span><span·class="n">Crashing</span><span·class="w">·</span><span·class="ss">process</span><span·class="w">326 </span><span·class="n">Crashing</span><span·class="w">·</span><span·class="ss">process</span><span·class="w">
327 </span><span·class="ss">pid</span><span·class="w">·································································</span><span·class="o">&lt;</span><span·class="mf">0.24</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">327 </span><span·class="ss">pid</span><span·class="w">·································································</span><span·class="o">&lt;</span><span·class="mf">0.24</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">
328 </span><span·class="ss">registered_name</span><span·class="w">··············································</span><span·class="ss">release_handler</span><span·class="w">328 </span><span·class="ss">registered_name</span><span·class="w">··············································</span><span·class="ss">release_handler</span><span·class="w">
329 </span><span·class="ss">error_info</span><span·class="w">·····························</span><span·class="p"·data-group-id="6435595105-13">{</span><span·class="ss">undef</span><span·class="p">,</span><span·class="p"·data-group-id="6435595105-14">{</span><span·class="ss">release_handler</span><span·class="p">,</span><span·class="ss">mbj_func</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·196,·SHA:·a31ab4333de73a9ca8cfed71a8d9eecd182317713db3928782cb41a71ea85612·...·]-13">}</span><span·class="w">329 </span><span·class="ss">error_info</span><span·class="w">·····························</span><span·class="p"·data-group-id="9590768204-13">{</span><span·class="ss">undef</span><span·class="p">,</span><span·class="p"·data-group-id="9590768204-14">{</span><span·class="ss">release_handler</span><span·class="p">,</span><span·class="ss">mbj_func</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·196,·SHA:·dc40aa9258a6607f33135e98ae517c6b6c7e5fbd19fb608b98ce6c60d50a9cce·...·]-13">}</span><span·class="w">
330 </span><span·class="ss">initial_call</span><span·class="w">330 </span><span·class="ss">initial_call</span><span·class="w">
331 </span><span·class="p"·data-group-id="6435595105-16">{</span><span·class="ss">gen</span><span·class="p">,</span><span·class="ss">init_it</span><span·class="p">,</span><span·class="w">331 </span><span·class="p"·data-group-id="9590768204-16">{</span><span·class="ss">gen</span><span·class="p">,</span><span·class="ss">init_it</span><span·class="p">,</span><span·class="w">
332 </span><span·class="p"·data-group-id="6435595105-17">[</span><span·class="ss">gen_server</span><span·class="p">,</span><span·class="w">332 </span><span·class="p"·data-group-id="9590768204-17">[</span><span·class="ss">gen_server</span><span·class="p">,</span><span·class="w">
333 </span><span·class="o">&lt;</span><span·class="mf">0.20</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">333 </span><span·class="o">&lt;</span><span·class="mf">0.20</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">
334 </span><span·class="o">&lt;</span><span·class="mf">0.20</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">334 </span><span·class="o">&lt;</span><span·class="mf">0.20</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="w">
335 </span><span·class="p"·data-group-id="6435595105-18">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">register</span><span·class="p"·data-group-id="6435595105-18">}</span><span·class="p">,</span><span·class="w">335 </span><span·class="p"·data-group-id="9590768204-18">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">register</span><span·class="p"·data-group-id="9590768204-18">}</span><span·class="p">,</span><span·class="w">
336 </span><span·class="ss">release_handler</span><span·class="p">,</span><span·class="w">336 </span><span·class="ss">release_handler</span><span·class="p">,</span><span·class="w">
337 </span><span·class="ss">release_handler</span><span·class="p">,</span><span·class="w">337 </span><span·class="ss">release_handler</span><span·class="p">,</span><span·class="w">
338 </span><span·class="p"·data-group-id="6435595105-19">[</span><span·class="p"·data-group-id="6435595105-19">]</span><span·class="p">,</span><span·class="w">338 </span><span·class="p"·data-group-id="9590768204-19">[</span><span·class="p"·data-group-id="9590768204-19">]</span><span·class="p">,</span><span·class="w">
339 </span><span·class="p"·data-group-id="6435595105-20">[</span><span·class="p"·data-group-id="6435595105-20">]</span><span·class="p"·data-group-id="6435595105-17">]</span><span·class="p"·data-group-id="6435595105-16">}</span><span·class="w">339 </span><span·class="p"·data-group-id="9590768204-20">[</span><span·class="p"·data-group-id="9590768204-20">]</span><span·class="p"·data-group-id="9590768204-17">]</span><span·class="p"·data-group-id="9590768204-16">}</span><span·class="w">
340 </span><span·class="ss">ancestors</span><span·class="w">················································</span><span·class="p"·data-group-id="6435595105-21">[</span><span·class="ss">sasl_sup</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.18</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="6435595105-21">]</span><span·class="w">340 </span><span·class="ss">ancestors</span><span·class="w">················································</span><span·class="p"·data-group-id="9590768204-21">[</span><span·class="ss">sasl_sup</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.18</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="9590768204-21">]</span><span·class="w">
341 </span><span·class="ss">messages</span><span·class="w">··································································</span><span·class="p"·data-group-id="6435595105-22">[</span><span·class="p"·data-group-id="6435595105-22">]</span><span·class="w">341 </span><span·class="ss">messages</span><span·class="w">··································································</span><span·class="p"·data-group-id="9590768204-22">[</span><span·class="p"·data-group-id="9590768204-22">]</span><span·class="w">
342 </span><span·class="ss">links</span><span·class="w">····················································</span><span·class="p"·data-group-id="6435595105-23">[</span><span·class="o">&lt;</span><span·class="mf">0.23</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.20</span><span·class="p">.</span[·...·truncated·by·diffoscope;·len:·94,·SHA:·2ee5cd7a3023ee53a9abd4f8e784105625b7e31c3212cb43e9e59c1e3fdb4c85·...·]-23">]</span><span·class="w">342 </span><span·class="ss">links</span><span·class="w">····················································</span><span·class="p"·data-group-id="9590768204-23">[</span><span·class="o">&lt;</span><span·class="mf">0.23</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.20</span><span·class="p">.</span[·...·truncated·by·diffoscope;·len:·94,·SHA:·a02bc139cdd615a78cba3a07ffca980e30111c3bdd04a883a9270c083f139bb6·...·]-23">]</span><span·class="w">
343 </span><span·class="ss">dictionary</span><span·class="w">································································</span><span·class="p"·data-group-id="6435595105-24">[</span><span·class="p"·data-group-id="6435595105-24">]</span><span·class="w">343 </span><span·class="ss">dictionary</span><span·class="w">································································</span><span·class="p"·data-group-id="9590768204-24">[</span><span·class="p"·data-group-id="9590768204-24">]</span><span·class="w">
344 </span><span·class="ss">trap_exit</span><span·class="w">······························································</span><span·class="ss">false</span><span·class="w">344 </span><span·class="ss">trap_exit</span><span·class="w">······························································</span><span·class="ss">false</span><span·class="w">
345 </span><span·class="ss">status</span><span·class="w">·······························································</span><span·class="ss">running</span><span·class="w">345 </span><span·class="ss">status</span><span·class="w">·······························································</span><span·class="ss">running</span><span·class="w">
346 </span><span·class="ss">heap_size</span><span·class="w">································································</span><span·class="mi">610</span><span·class="w">346 </span><span·class="ss">heap_size</span><span·class="w">································································</span><span·class="mi">610</span><span·class="w">
347 </span><span·class="ss">stack_size</span><span·class="w">·······························································</span><span·class="mi">142</span><span·class="w">347 </span><span·class="ss">stack_size</span><span·class="w">·······························································</span><span·class="mi">142</span><span·class="w">
348 </span><span·class="ss">reductions</span><span·class="w">································································</span><span·class="mi">54</span><span·class="w">348 </span><span·class="ss">reductions</span><span·class="w">································································</span><span·class="mi">54</span><span·class="w">
  
349 </span><span·class="ss">ok</span></code></pre><h3·id="search-reports"·class="section-heading">349 </span><span·class="ss">ok</span></code></pre><h3·id="search-reports"·class="section-heading">
Offset 481, 15 lines modifiedOffset 481, 15 lines modified
481 ······<p·class="built-using">481 ······<p·class="built-using">
482 ········Built·using482 ········Built·using
483 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the483 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
484 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>484 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
485 ······</p>485 ······</p>
486 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>486 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
487 ····</footer>487 ····</footer>
488 ··</div>488 ··</div>
489 </main>489 </main>
490 </div>490 </div>
491 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>491 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
492 <script>492 <script>
493 ··document.addEventListener("DOMContentLoaded",·function·()·{493 ··document.addEventListener("DOMContentLoaded",·function·()·{
591 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/notes.html
    
Offset 1159, 15 lines modifiedOffset 1159, 15 lines modified
1159 ······<p·class="built-using">1159 ······<p·class="built-using">
1160 ········Built·using1160 ········Built·using
1161 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1161 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1162 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1162 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1163 ······</p>1163 ······</p>
1164 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1164 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1165 ····</footer>1165 ····</footer>
1166 ··</div>1166 ··</div>
1167 </main>1167 </main>
1168 </div>1168 </div>
1169 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1169 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1170 <script>1170 <script>
1171 ··document.addEventListener("DOMContentLoaded",·function·()·{1171 ··document.addEventListener("DOMContentLoaded",·function·()·{
694 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/rb.html
    
Offset 1109, 15 lines modifiedOffset 1109, 15 lines modified
1109 ······<p·class="built-using">1109 ······<p·class="built-using">
1110 ········Built·using1110 ········Built·using
1111 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1111 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1112 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1112 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1113 ······</p>1113 ······</p>
1114 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1114 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1115 ····</footer>1115 ····</footer>
1116 ··</div>1116 ··</div>
1117 </main>1117 </main>
1118 </div>1118 </div>
1119 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1119 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1120 <script>1120 <script>
1121 ··document.addEventListener("DOMContentLoaded",·function·()·{1121 ··document.addEventListener("DOMContentLoaded",·function·()·{
652 B
html2text {}
Max HTML report size reached
9.01 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/rel.html
    
Offset 136, 19 lines modifiedOffset 136, 19 lines modified
136 (<code·class="inline">.script</code>,·<code·class="inline">.boot</code>)·and·release·upgrade·files·(<code·class="inline">relup</code>).</p><h2·id="file-syntax"·class="section-heading">136 (<code·class="inline">.script</code>,·<code·class="inline">.boot</code>)·and·release·upgrade·files·(<code·class="inline">relup</code>).</p><h2·id="file-syntax"·class="section-heading">
137 ··<a·href="#file-syntax"·class="hover-link">137 ··<a·href="#file-syntax"·class="hover-link">
138 ····<i·class="ri-link-m"·aria-hidden="true"></i>138 ····<i·class="ri-link-m"·aria-hidden="true"></i>
139 ··</a>139 ··</a>
140 ··<span·class="text">File·Syntax</span>140 ··<span·class="text">File·Syntax</span>
141 </h2>141 </h2>
142 <p>The·release·resource·file·is·to·be·called·<code·class="inline">Name.rel</code>.</p><p>The·<code·class="inline">.rel</code>·file·contains·one·single·Erlang·term,·which·is·called·a·<em>release142 <p>The·release·resource·file·is·to·be·called·<code·class="inline">Name.rel</code>.</p><p>The·<code·class="inline">.rel</code>·file·contains·one·single·Erlang·term,·which·is·called·a·<em>release
143 specification</em>.·The·file·has·the·following·syntax:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6957793524-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6957793524-2">{</span><span·class="n">RelName</span><span·class="p">,</span><span·class="n">Vsn</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·276,·SHA:·00be91368daefb98edeb1fd2cae49906c79d0bbb5f9113dd31e688d5b9c6413f·...·]-3">}</span><span·class="p">,</span><span·class="w">143 specification</em>.·The·file·has·the·following·syntax:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1640328307-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1640328307-2">{</span><span·class="n">RelName</span><span·class="p">,</span><span·class="n">Vsn</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·276,·SHA:·ef87a9011842f0c03442c3b9fb1b7b94d43c58a6bc7f44940ab62c283baaa159·...·]-3">}</span><span·class="p">,</span><span·class="w">
144 ··</span><span·class="p"·data-group-id="6957793524-4">[</span><span·class="p"·data-group-id="6957793524-5">{</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn</span><span·class="p"·data-group-id="6957793524-5">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">144 ··</span><span·class="p"·data-group-id="1640328307-4">[</span><span·class="p"·data-group-id="1640328307-5">{</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn</span><span·class="p"·data-group-id="1640328307-5">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
145 ···</span><span·class="p"·data-group-id="6957793524-6">{</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p"·data-group-id="6957793524-6">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">145 ···</span><span·class="p"·data-group-id="1640328307-6">{</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p"·data-group-id="1640328307-6">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
146 ···</span><span·class="p"·data-group-id="6957793524-7">{</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IncApps</span><span·class="p"·data-group-id="6957793524-7">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">146 ···</span><span·class="p"·data-group-id="1640328307-7">{</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">IncApps</span><span·class="p"·data-group-id="1640328307-7">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
147 ···</span><span·class="p"·data-group-id="6957793524-8">{</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·639ae3c0694bc354ec9589fd53414a0c564dd41c6f89be5d20cdd3cf38acee17·...·]-1">}</span><span·class="p">.</span></code></pre><ul><li><p><strong><code·class="inline">RelName·=·string()</code></strong>·-·Release·name.</p></li><li><p><strong><code·class="inline">Vsn·=·string()</code></strong>·-·Release·version.</p></li><li><p><strong><code·class="inline">EVsn·=·string()</code></strong>·-·ERTS·version·the·release·is·intended·for.</p></li><li><p><strong><code·class="inline">Application·=·atom()</code></strong>·-·Name·of·an·application·included·in·the·release.</p></li><li><p><strong><code·class="inline">AppVsn·=·string()</code></strong>·-·Version·of·an·application·included·in·the·release.</p></li><li><p><strong><code·class="inline">Type·=·permanent·|·transient·|·temporary·|·load·|·none</code></strong>·-·Start·type·of147 ···</span><span·class="p"·data-group-id="1640328307-8">{</span><span·class="n">Application</span><span·class="p">,</span><span·class="w">·</span><span·class="n">AppVsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Type</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·177,·SHA:·4177d77e926b799ed775cad7e996fb8a7e70da97426e6eba280a8f517c091fd5·...·]-1">}</span><span·class="p">.</span></code></pre><ul><li><p><strong><code·class="inline">RelName·=·string()</code></strong>·-·Release·name.</p></li><li><p><strong><code·class="inline">Vsn·=·string()</code></strong>·-·Release·version.</p></li><li><p><strong><code·class="inline">EVsn·=·string()</code></strong>·-·ERTS·version·the·release·is·intended·for.</p></li><li><p><strong><code·class="inline">Application·=·atom()</code></strong>·-·Name·of·an·application·included·in·the·release.</p></li><li><p><strong><code·class="inline">AppVsn·=·string()</code></strong>·-·Version·of·an·application·included·in·the·release.</p></li><li><p><strong><code·class="inline">Type·=·permanent·|·transient·|·temporary·|·load·|·none</code></strong>·-·Start·type·of
148 an·application·included·in·the·release.</p><p>If·<code·class="inline">Type·=·permanent·|·transient·|·temporary</code>,·the·application·is·loaded·and148 an·application·included·in·the·release.</p><p>If·<code·class="inline">Type·=·permanent·|·transient·|·temporary</code>,·the·application·is·loaded·and
149 started·in·the·corresponding·way,·see·<a·href="../../../../lib/kernel-10.0.1/doc/html/application.html"><code·class="inline">application</code></a>.</p><p>If·<code·class="inline">Type·=·load</code>,·the·application·is·only·loaded.</p><p>If·<code·class="inline">Type·=·none</code>,·the·application·is·not·loaded·and·not·started,·although·the149 started·in·the·corresponding·way,·see·<a·href="../../../../lib/kernel-10.0.1/doc/html/application.html"><code·class="inline">application</code></a>.</p><p>If·<code·class="inline">Type·=·load</code>,·the·application·is·only·loaded.</p><p>If·<code·class="inline">Type·=·none</code>,·the·application·is·not·loaded·and·not·started,·although·the
150 code·for·its·modules·is·loaded.</p><p>Defaults·to·<code·class="inline">permanent</code></p></li><li><p><strong><code·class="inline">IncApps·=·[atom()]</code></strong>·-·A·list·of·applications·that·are·included·by·an150 code·for·its·modules·is·loaded.</p><p>Defaults·to·<code·class="inline">permanent</code></p></li><li><p><strong><code·class="inline">IncApps·=·[atom()]</code></strong>·-·A·list·of·applications·that·are·included·by·an
151 application·included·in·the·release.·The·list·must·be·a·subset·of·the·included151 application·included·in·the·release.·The·list·must·be·a·subset·of·the·included
152 applications·specified·in·the·application·resource·file·(<code·class="inline">Application.app</code>)152 applications·specified·in·the·application·resource·file·(<code·class="inline">Application.app</code>)
153 and·overrides·this·value.·Defaults·to·the·same·value·as·in·the·application153 and·overrides·this·value.·Defaults·to·the·same·value·as·in·the·application
154 resource·file.</p></li></ul><blockquote><h4·class="info">Note</h4><p>The·list·of·applications·must·contain·the·Kernel·and·STDLIB·applications.</p></blockquote><h2·id="see-also"·class="section-heading">154 resource·file.</p></li></ul><blockquote><h4·class="info">Note</h4><p>The·list·of·applications·must·contain·the·Kernel·and·STDLIB·applications.</p></blockquote><h2·id="see-also"·class="section-heading">
Offset 204, 15 lines modifiedOffset 204, 15 lines modified
204 ······<p·class="built-using">204 ······<p·class="built-using">
205 ········Built·using205 ········Built·using
206 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the206 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
207 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>207 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
208 ······</p>208 ······</p>
209 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>209 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
210 ····</footer>210 ····</footer>
211 ··</div>211 ··</div>
212 </main>212 </main>
213 </div>213 </div>
214 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>214 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
215 <script>215 <script>
216 ··document.addEventListener("DOMContentLoaded",·function·()·{216 ··document.addEventListener("DOMContentLoaded",·function·()·{
614 B
html2text {}
Max HTML report size reached
5.75 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/release_handler.html
    
Offset 1080, 16 lines modifiedOffset 1080, 16 lines modified
1080 updated·(<code·class="inline">Bool==true</code>)·or·if·only·code·paths·for·modified·applications·are·to1080 updated·(<code·class="inline">Bool==true</code>)·or·if·only·code·paths·for·modified·applications·are·to
1081 be·updated·(<code·class="inline">Bool==false</code>,·default).·This·option·has·only·effect·for·other1081 be·updated·(<code·class="inline">Bool==false</code>,·default).·This·option·has·only·effect·for·other
1082 application·directories·than·the·default·<code·class="inline">$ROOT/lib/App-Vsn</code>,·that·is,1082 application·directories·than·the·default·<code·class="inline">$ROOT/lib/App-Vsn</code>,·that·is,
1083 application·directories·specified·in·argument·<code·class="inline">AppDirs</code>·in·a·call·to1083 application·directories·specified·in·argument·<code·class="inline">AppDirs</code>·in·a·call·to
1084 <a·href="#create_RELEASES/4"><code·class="inline">create_RELEASES/4</code></a>·or·<a·href="#set_unpacked/2"><code·class="inline">set_unpacked/2</code></a>.</p><p><em>Example:</em></p><p>In·the·current·version·<code·class="inline">CurVsn</code>·of·a·release,·the·application·directory·of1084 <a·href="#create_RELEASES/4"><code·class="inline">create_RELEASES/4</code></a>·or·<a·href="#set_unpacked/2"><code·class="inline">set_unpacked/2</code></a>.</p><p><em>Example:</em></p><p>In·the·current·version·<code·class="inline">CurVsn</code>·of·a·release,·the·application·directory·of
1085 <code·class="inline">myapp</code>·is·<code·class="inline">$ROOT/lib/myapp-1.0</code>.·A·new·version·<code·class="inline">NewVsn</code>·is·unpacked·outside1085 <code·class="inline">myapp</code>·is·<code·class="inline">$ROOT/lib/myapp-1.0</code>.·A·new·version·<code·class="inline">NewVsn</code>·is·unpacked·outside
1086 the·release·handler·and·the·release·handler·is·informed·about·this·with·a·call1086 the·release·handler·and·the·release·handler·is·informed·about·this·with·a·call
1087 as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">release_handler</span><span·class="p">:</span><span·class="nf">set_unpacked</span><span·class="p"·data-group-id="1634657320-1">(</span><span·class="n">RelFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1634657320-2">[</span><span·class="p"·data-group-id="1634657320-3">{</span><span·class="ss">myapp</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·352,·SHA:·6315af5b72cc6db3ec2d944fc599e88680244996983752267b0b369cfcf71615·...·]-1">)</span><span·class="p">.</span><span·class="w">1087 as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">release_handler</span><span·class="p">:</span><span·class="nf">set_unpacked</span><span·class="p"·data-group-id="1377392428-1">(</span><span·class="n">RelFile</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1377392428-2">[</span><span·class="p"·data-group-id="1377392428-3">{</span><span·class="ss">myapp</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·352,·SHA:·591b2a85a71b1b8cc479371075c1fd2c3a1adbedb6139038b94d80a70c05c961·...·]-1">)</span><span·class="p">.</span><span·class="w">
1088 </span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1634657320-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">NewVsn</span><span·class="p"·data-group-id="1634657320-4">}</span></code></pre><p>If·<code·class="inline">NewVsn</code>·is·installed·with·option·<code·class="inline">{update_paths,true}</code>,·then1088 </span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1377392428-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">NewVsn</span><span·class="p"·data-group-id="1377392428-4">}</span></code></pre><p>If·<code·class="inline">NewVsn</code>·is·installed·with·option·<code·class="inline">{update_paths,true}</code>,·then
1089 <a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#lib_dir/1"><code·class="inline">code:lib_dir(myapp)</code></a>·returns·<code·class="inline">/home/user/myapp-1.0</code>.</p></li></ul><blockquote><h4·class="info">Note</h4><p>Installing·a·new·release·can·be·time·consuming·if·there·are·many·processes·in1089 <a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#lib_dir/1"><code·class="inline">code:lib_dir(myapp)</code></a>·returns·<code·class="inline">/home/user/myapp-1.0</code>.</p></li></ul><blockquote><h4·class="info">Note</h4><p>Installing·a·new·release·can·be·time·consuming·if·there·are·many·processes·in
1090 the·system.·The·reason·is·that·each·process·must·be·checked·for·references·to1090 the·system.·The·reason·is·that·each·process·must·be·checked·for·references·to
1091 old·code·before·a·module·can·be·purged.·This·check·can·lead·to·garbage1091 old·code·before·a·module·can·be·purged.·This·check·can·lead·to·garbage
1092 collections·and·copying·of·data.</p><p>To·speed·up·the·execution·of·<a·href="#install_release/1"><code·class="inline">install_release</code></a>,·first1092 collections·and·copying·of·data.</p><p>To·speed·up·the·execution·of·<a·href="#install_release/1"><code·class="inline">install_release</code></a>,·first
1093 call·<a·href="#check_install_release/1"><code·class="inline">check_install_release</code></a>,·using·option1093 call·<a·href="#check_install_release/1"><code·class="inline">check_install_release</code></a>,·using·option
1094 <code·class="inline">purge</code>.·This·does·the·same·check·for·old·code.·Then·purges·all·modules·that1094 <code·class="inline">purge</code>.·This·does·the·same·check·for·old·code.·Then·purges·all·modules·that
1095 can·be·soft-purged.·The·purged·modules·do·then·no·longer·have·any·old·code,1095 can·be·soft-purged.·The·purged·modules·do·then·no·longer·have·any·old·code,
Offset 1382, 15 lines modifiedOffset 1382, 15 lines modified
1382 ······<p·class="built-using">1382 ······<p·class="built-using">
1383 ········Built·using1383 ········Built·using
1384 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1384 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1385 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1385 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1386 ······</p>1386 ······</p>
1387 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1387 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1388 ····</footer>1388 ····</footer>
1389 ··</div>1389 ··</div>
1390 </main>1390 </main>
1391 </div>1391 </div>
1392 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1392 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1393 <script>1393 <script>
1394 ··document.addEventListener("DOMContentLoaded",·function·()·{1394 ··document.addEventListener("DOMContentLoaded",·function·()·{
707 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/relup.html
    
Offset 206, 15 lines modifiedOffset 206, 15 lines modified
206 ······<p·class="built-using">206 ······<p·class="built-using">
207 ········Built·using207 ········Built·using
208 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the208 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
209 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>209 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
210 ······</p>210 ······</p>
211 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>211 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
212 ····</footer>212 ····</footer>
213 ··</div>213 ··</div>
214 </main>214 </main>
215 </div>215 </div>
216 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>216 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
217 <script>217 <script>
218 ··document.addEventListener("DOMContentLoaded",·function·()·{218 ··document.addEventListener("DOMContentLoaded",·function·()·{
757 B
html2text {}
Max HTML report size reached
150 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/sasl.epub
3.39 KB
zipinfo {}
Max HTML report size reached
69.7 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
11.0 KB
OEBPS/script.xhtml
Max HTML report size reached
4.27 KB
OEBPS/release_handler.xhtml
Max HTML report size reached
7.62 KB
OEBPS/rel.xhtml
Max HTML report size reached
17.3 KB
OEBPS/error_logging.xhtml
Max HTML report size reached
1.2 KB
OEBPS/content.opf
1.17 KB
OEBPS/content.opf
Max HTML report size reached
35.0 KB
OEBPS/appup.xhtml
Max HTML report size reached
1.59 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/sasl_app.html
    
Offset 261, 15 lines modifiedOffset 261, 15 lines modified
261 ······<p·class="built-using">261 ······<p·class="built-using">
262 ········Built·using262 ········Built·using
263 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the263 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
264 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>264 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
265 ······</p>265 ······</p>
266 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>266 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
267 ····</footer>267 ····</footer>
268 ··</div>268 ··</div>
269 </main>269 </main>
270 </div>270 </div>
271 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>271 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
272 <script>272 <script>
273 ··document.addEventListener("DOMContentLoaded",·function·()·{273 ··document.addEventListener("DOMContentLoaded",·function·()·{
789 B
html2text {}
Max HTML report size reached
1.62 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/sasl_intro.html
    
Offset 188, 15 lines modifiedOffset 188, 15 lines modified
188 ······<p·class="built-using">188 ······<p·class="built-using">
189 ········Built·using189 ········Built·using
190 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the190 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
191 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>191 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
192 ······</p>192 ······</p>
193 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>193 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
194 ····</footer>194 ····</footer>
195 ··</div>195 ··</div>
196 </main>196 </main>
197 </div>197 </div>
198 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>198 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
199 <script>199 <script>
200 ··document.addEventListener("DOMContentLoaded",·function·()·{200 ··document.addEventListener("DOMContentLoaded",·function·()·{
819 B
html2text {}
Max HTML report size reached
12.4 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/script.html
    
Offset 138, 28 lines modifiedOffset 138, 28 lines modified
138 files.</p><h2·id="file-syntax"·class="section-heading">138 files.</p><h2·id="file-syntax"·class="section-heading">
139 ··<a·href="#file-syntax"·class="hover-link">139 ··<a·href="#file-syntax"·class="hover-link">
140 ····<i·class="ri-link-m"·aria-hidden="true"></i>140 ····<i·class="ri-link-m"·aria-hidden="true"></i>
141 ··</a>141 ··</a>
142 ··<span·class="text">File·Syntax</span>142 ··<span·class="text">File·Syntax</span>
143 </h2>143 </h2>
144 <p>The·boot·script·is·stored·in·a·file·with·extension·<code·class="inline">.script</code>.·The·file·has·the144 <p>The·boot·script·is·stored·in·a·file·with·extension·<code·class="inline">.script</code>.·The·file·has·the
145 following·syntax:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3854350086-1">{</span><span·class="ss">script</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3854350086-2">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Vsn</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·bbdbfe3054870864af53480353bf8456f1f66fe7daf94db367052fc0d50404ba·...·]-2">}</span><span·class="p">,</span><span·class="w">145 following·syntax:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5518555639-1">{</span><span·class="ss">script</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5518555639-2">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Vsn</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·6373280c83886e1383795d23ec12666703dba79c025611efa87dc25f79c57110·...·]-2">}</span><span·class="p">,</span><span·class="w">
146 ·</span><span·class="p"·data-group-id="3854350086-3">[</span><span·class="w">146 ·</span><span·class="p"·data-group-id="5518555639-3">[</span><span·class="w">
147 ··</span><span·class="p"·data-group-id="3854350086-4">{</span><span·class="ss">progress</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">loading</span><span·class="p"·data-group-id="3854350086-4">}</span><span·class="p">,</span><span·class="w">147 ··</span><span·class="p"·data-group-id="5518555639-4">{</span><span·class="ss">progress</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">loading</span><span·class="p"·data-group-id="5518555639-4">}</span><span·class="p">,</span><span·class="w">
148 ··</span><span·class="p"·data-group-id="3854350086-5">{</span><span·class="ss">preLoaded</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3854350086-6">[</span><span·class="n">Mod1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod2</spa[·...·truncated·by·diffoscope;·len:·216,·SHA:·a2781146b8832550b1b5190153b6455b9ac5aa23722d1edf495fee61f285f605·...·]-5">}</span><span·class="p">,</span><span·class="w">148 ··</span><span·class="p"·data-group-id="5518555639-5">{</span><span·class="ss">preLoaded</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5518555639-6">[</span><span·class="n">Mod1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod2</spa[·...·truncated·by·diffoscope;·len:·216,·SHA:·89bd731f768fb2d9bd8cf0a38ca917f84e82045161a9af927313c10a8590fdce·...·]-5">}</span><span·class="p">,</span><span·class="w">
149 ··</span><span·class="p"·data-group-id="3854350086-7">{</span><span·class="ss">path</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3854350086-8">[</span><span·class="n">Dir1</span><span·class="p">,</span><span·class="s">&quot;$ROOT/Dir&quot;</span><span·clas[·...·truncated·by·diffoscope;·len:·180,·SHA:·ea6cbcdaf9e3c4dc131bead9180ad60a20b978182d909cff5c3fa70392e4abf5·...·]-7">}</span><span·class="p">.</span><span·class="w">149 ··</span><span·class="p"·data-group-id="5518555639-7">{</span><span·class="ss">path</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5518555639-8">[</span><span·class="n">Dir1</span><span·class="p">,</span><span·class="s">&quot;$ROOT/Dir&quot;</span><span·clas[·...·truncated·by·diffoscope;·len:·180,·SHA:·911b9f17cea906c6f8a96aa711f9ca3c2bf966e4d467e592cca38804cd48bea4·...·]-7">}</span><span·class="p">.</span><span·class="w">
150 ··</span><span·class="p"·data-group-id="3854350086-9">{</span><span·class="ss">primLoad</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3854350086-10">[</span><span·class="n">Mod1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod2</spa[·...·truncated·by·diffoscope;·len:·217,·SHA:·7ba4fdb9f5799e39d65fa3d587717afe90ef4ebe52cdfc942ec806bd1f0ea199·...·]-9">}</span><span·class="p">,</span><span·class="w">150 ··</span><span·class="p"·data-group-id="5518555639-9">{</span><span·class="ss">primLoad</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5518555639-10">[</span><span·class="n">Mod1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mod2</spa[·...·truncated·by·diffoscope;·len:·217,·SHA:·299a7f040a31faeda3677bc17553c030ee60e09368c64bcee142bd2263be75d2·...·]-9">}</span><span·class="p">,</span><span·class="w">
151 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">151 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
152 ··</span><span·class="p"·data-group-id="3854350086-11">{</span><span·class="ss">kernel_load_completed</span><span·class="p"·data-group-id="3854350086-11">}</span><span·class="p">,</span><span·class="w">152 ··</span><span·class="p"·data-group-id="5518555639-11">{</span><span·class="ss">kernel_load_completed</span><span·class="p"·data-group-id="5518555639-11">}</span><span·class="p">,</span><span·class="w">
153 ··</span><span·class="p"·data-group-id="3854350086-12">{</span><span·class="ss">progress</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">loaded</span><span·class="p"·data-group-id="3854350086-12">}</span><span·class="p">,</span><span·class="w">153 ··</span><span·class="p"·data-group-id="5518555639-12">{</span><span·class="ss">progress</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">loaded</span><span·class="p"·data-group-id="5518555639-12">}</span><span·class="p">,</span><span·class="w">
154 ··</span><span·class="p"·data-group-id="3854350086-13">{</span><span·class="ss">kernelProcess</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3854350086-14">{</span><span·class="n">Mod[·...·truncated·by·diffoscope;·len:·252,·SHA:·ea5ef423a8416361b2ff926ca04b672fbefeac89f4338f17d2e7b9d1daf9b516·...·]-13">}</span><span·class="p">,</span><span·class="w">154 ··</span><span·class="p"·data-group-id="5518555639-13">{</span><span·class="ss">kernelProcess</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5518555639-14">{</span><span·class="n">Mod[·...·truncated·by·diffoscope;·len:·252,·SHA:·b4ff0cd186751a75b7bded526ffc47117bdbad13671efb8fb79474c366a3277a·...·]-13">}</span><span·class="p">,</span><span·class="w">
155 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">155 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
156 ··</span><span·class="p"·data-group-id="3854350086-15">{</span><span·class="nb">apply</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3854350086-16">{</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Func</span><[·...·truncated·by·diffoscope;·len:·169,·SHA:·ffea36cc45b57d659aafa11c02faa869b33fdb9f2c341a4d8ee5a984e96c8ed6·...·]-15">}</span><span·class="p">,</span><span·class="w">156 ··</span><span·class="p"·data-group-id="5518555639-15">{</span><span·class="nb">apply</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5518555639-16">{</span><span·class="n">Mod</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Func</span><[·...·truncated·by·diffoscope;·len:·169,·SHA:·8a2d80c992f692a80012bb733bded8a24578242fd5ae1d032a3994fd44ffcefb·...·]-15">}</span><span·class="p">,</span><span·class="w">
157 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">157 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
158 ··</span><span·class="p"·data-group-id="3854350086-17">{</span><span·class="ss">progress</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">started</span><span·class="p"·data-group-id="3854350086-17">}</span><span·class="p"·data-group-id="3854350086-3">]</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·afb05634dc681a7db0c7f639e88f9d99837af68dec1079d8cfb95789f933f8c0·...·]-1">}</span><span·class="p">.</span></code></pre><ul><li><p><strong><code·class="inline">Name·=·string()</code></strong>·-·Defines·the·system·name.</p></li><li><p><strong><code·class="inline">Vsn·=·string()</code></strong>·-·Defines·the·system·version.</p></li><li><p><strong><code·class="inline">{progress,·Term}</code></strong>·-·Sets·the·&quot;progress&quot;·of·the·initialization·program.158 ··</span><span·class="p"·data-group-id="5518555639-17">{</span><span·class="ss">progress</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">started</span><span·class="p"·data-group-id="5518555639-17">}</span><span·class="p"·data-group-id="5518555639-3">]</span><span·class="p"[·...·truncated·by·diffoscope;·len:·26,·SHA:·5ace003a5d7117dbef3c8ce53eacddc52b123d316ab4d27e9f74c98a74bbff53·...·]-1">}</span><span·class="p">.</span></code></pre><ul><li><p><strong><code·class="inline">Name·=·string()</code></strong>·-·Defines·the·system·name.</p></li><li><p><strong><code·class="inline">Vsn·=·string()</code></strong>·-·Defines·the·system·version.</p></li><li><p><strong><code·class="inline">{progress,·Term}</code></strong>·-·Sets·the·&quot;progress&quot;·of·the·initialization·program.
159 The·<a·href="../../../../erts-15.0.1/doc/html/init.html#get_status/0"><code·class="inline">init:get_status/0</code></a>·function·returns·the·current·value·of·the·progress,159 The·<a·href="../../../../erts-15.0.1/doc/html/init.html#get_status/0"><code·class="inline">init:get_status/0</code></a>·function·returns·the·current·value·of·the·progress,
160 which·is·<code·class="inline">{InternalStatus,Term}</code>.</p></li><li><p><strong><code·class="inline">{path,·[Dir]}</code></strong>·-·<code·class="inline">Dir</code>·is·a·string.·This·argument·sets·the·load·path·of160 which·is·<code·class="inline">{InternalStatus,Term}</code>.</p></li><li><p><strong><code·class="inline">{path,·[Dir]}</code></strong>·-·<code·class="inline">Dir</code>·is·a·string.·This·argument·sets·the·load·path·of
161 the·system·to·<code·class="inline">[Dir]</code>.·The·load·path·used·to·load·modules·is·obtained·from·the161 the·system·to·<code·class="inline">[Dir]</code>.·The·load·path·used·to·load·modules·is·obtained·from·the
162 initial·load·path,·which·is·given·in·the·script·file,·together·with·any·path162 initial·load·path,·which·is·given·in·the·script·file,·together·with·any·path
163 flags·that·were·supplied·in·the·command-line·arguments.·The·command-line163 flags·that·were·supplied·in·the·command-line·arguments.·The·command-line
164 arguments·modify·the·path·as·follows:</p><ul><li><code·class="inline">-pa·Dir1·Dir2·...·DirN</code>·adds·the·directories164 arguments·modify·the·path·as·follows:</p><ul><li><code·class="inline">-pa·Dir1·Dir2·...·DirN</code>·adds·the·directories
165 <code·class="inline">DirN,·DirN-1,·...,·Dir2,·Dir1</code>·to·the·front·of·the·initial·load·path.</li><li><code·class="inline">-pz·Dir1·Dir2·...·DirN</code>·adds·the·directories·<code·class="inline">Dir1,·Dir2,·...,·DirN</code>·to·the165 <code·class="inline">DirN,·DirN-1,·...,·Dir2,·Dir1</code>·to·the·front·of·the·initial·load·path.</li><li><code·class="inline">-pz·Dir1·Dir2·...·DirN</code>·adds·the·directories·<code·class="inline">Dir1,·Dir2,·...,·DirN</code>·to·the
Offset 230, 15 lines modifiedOffset 230, 15 lines modified
230 ······<p·class="built-using">230 ······<p·class="built-using">
231 ········Built·using231 ········Built·using
232 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the232 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
233 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>233 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
234 ······</p>234 ······</p>
235 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>235 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
236 ····</footer>236 ····</footer>
237 ··</div>237 ··</div>
238 </main>238 </main>
239 </div>239 </div>
240 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>240 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
241 <script>241 <script>
242 ··document.addEventListener("DOMContentLoaded",·function·()·{242 ··document.addEventListener("DOMContentLoaded",·function·()·{
646 B
html2text {}
Max HTML report size reached
1.27 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
461 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/sasl-4.2.2/doc/html/systools.html
    
Offset 670, 15 lines modifiedOffset 670, 15 lines modified
670 ······<p·class="built-using">670 ······<p·class="built-using">
671 ········Built·using671 ········Built·using
672 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the672 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
673 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>673 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
674 ······</p>674 ······</p>
675 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>675 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
676 ····</footer>676 ····</footer>
677 ··</div>677 ··</div>
678 </main>678 </main>
679 </div>679 </div>
680 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>680 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
681 <script>681 <script>
682 ··document.addEventListener("DOMContentLoaded",·function·()·{682 ··document.addEventListener("DOMContentLoaded",·function·()·{
625 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/api-reference.html
    
Offset 478, 15 lines modifiedOffset 478, 15 lines modified
478 ······<p·class="built-using">478 ······<p·class="built-using">
479 ········Built·using479 ········Built·using
480 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the480 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
481 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>481 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
482 ······</p>482 ······</p>
483 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>483 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
484 ····</footer>484 ····</footer>
485 ··</div>485 ··</div>
486 </main>486 </main>
487 </div>487 </div>
488 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>488 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
489 <script>489 <script>
490 ··document.addEventListener("DOMContentLoaded",·function·()·{490 ··document.addEventListener("DOMContentLoaded",·function·()·{
685 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/notes.html
    
Offset 1072, 15 lines modifiedOffset 1072, 15 lines modified
1072 ······<p·class="built-using">1072 ······<p·class="built-using">
1073 ········Built·using1073 ········Built·using
1074 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1074 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1075 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1075 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1076 ······</p>1076 ······</p>
1077 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1077 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1078 ····</footer>1078 ····</footer>
1079 ··</div>1079 ··</div>
1080 </main>1080 </main>
1081 </div>1081 </div>
1082 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1082 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1083 <script>1083 <script>
1084 ··document.addEventListener("DOMContentLoaded",·function·()·{1084 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
1.26 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
460 B
html2text {}
Max HTML report size reached
661 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp.epub
12.3 KB
zipinfo {}
Max HTML report size reached
237 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
5.39 KB
OEBPS/snmpm.xhtml
Max HTML report size reached
23.9 KB
OEBPS/snmpa.xhtml
Max HTML report size reached
2.4 KB
OEBPS/snmp_pdus.xhtml
Max HTML report size reached
7.26 KB
OEBPS/snmp_mib_compiler.xhtml
Max HTML report size reached
7.0 KB
OEBPS/snmp_manager_config_files.xhtml
Max HTML report size reached
19.8 KB
OEBPS/snmp_instr_functions.xhtml
Max HTML report size reached
6.5 KB
OEBPS/snmp_index.xhtml
Max HTML report size reached
174 KB
OEBPS/snmp_impl_example_agent.xhtml
Max HTML report size reached
18.8 KB
OEBPS/snmp_generic.xhtml
Max HTML report size reached
34.8 KB
OEBPS/snmp_config.xhtml
Max HTML report size reached
43.5 KB
OEBPS/snmp_app.xhtml
Max HTML report size reached
6.77 KB
OEBPS/snmp_agent_funct_descr.xhtml
Max HTML report size reached
20.6 KB
OEBPS/snmp_agent_config_files.xhtml
Max HTML report size reached
30.0 KB
OEBPS/snmp_advanced_agent.xhtml
Max HTML report size reached
10.2 KB
OEBPS/snmp.xhtml
Max HTML report size reached
1.2 KB
OEBPS/content.opf
1.17 KB
OEBPS/content.opf
Max HTML report size reached
11.6 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp.html
    
Offset 3339, 16 lines modifiedOffset 3339, 16 lines modified
3339 ······<div·class="specs">3339 ······<div·class="specs">
  
3340 ··········<pre·translate="no"><span·class="attribute">-spec</span>·print_version_info(Prefix)·->·<a·href="#t:void/0">void</a>()·when·Prefix·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>().</pre>3340 ··········<pre·translate="no"><span·class="attribute">-spec</span>·print_version_info(Prefix)·->·<a·href="#t:void/0">void</a>()·when·Prefix·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>().</pre>
  
3341 ······</div>3341 ······</div>
  
3342 <p>Utility·function(s)·to·produce·a·formatted·printout·of·the·versions·info3342 <p>Utility·function(s)·to·produce·a·formatted·printout·of·the·versions·info
3343 generated·by·the·<code·class="inline">versions1</code>·function</p><p>This·is·the·same·as·doing,·e.g.:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">···········</span><span·class="p"·data-group-id="9751277992-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">V</span><span·class="p"·data-group-id="9751277992-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·168,·SHA:·fed9bf88af2bc2f8e6e6d3c0e13faa881fae02d14b32a6619e0dce6e0b20e23f·...·]-2">)</span><span·class="p">,</span><span·class="w">3343 generated·by·the·<code·class="inline">versions1</code>·function</p><p>This·is·the·same·as·doing,·e.g.:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">···········</span><span·class="p"·data-group-id="4486354080-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">V</span><span·class="p"·data-group-id="4486354080-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·168,·SHA:·ab601ad7be8e313998057ee4d4c7fd863831d5577b0ac650aef1e721d339b067·...·]-2">)</span><span·class="p">,</span><span·class="w">
3344 ···········</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">print_versions</span><span·class="p"·data-group-id="9751277992-3">(</span><span·class="n">V</span><span·class="p"·data-group-id="9751277992-3">)</span><span·class="p">.</span></code></pre>3344 ···········</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">print_versions</span><span·class="p"·data-group-id="4486354080-3">(</span><span·class="n">V</span><span·class="p"·data-group-id="4486354080-3">)</span><span·class="p">.</span></code></pre>
3345 ··</section>3345 ··</section>
3346 </section>3346 </section>
3347 <section·class="detail"·id="print_versions/1">3347 <section·class="detail"·id="print_versions/1">
  
3348 ··<div·class="detail-header">3348 ··<div·class="detail-header">
3349 ····<a·href="#print_versions/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">3349 ····<a·href="#print_versions/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
3350 ······<i·class="ri-link-m"·aria-hidden="true"></i>3350 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 3401, 16 lines modifiedOffset 3401, 16 lines modified
3401 ····························Prefix·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),3401 ····························Prefix·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),
3402 ····························Versions·::·[VersionInfo],3402 ····························Versions·::·[VersionInfo],
3403 ····························VersionInfo·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>3403 ····························VersionInfo·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
3404 ······</div>3404 ······</div>
  
3405 <p>Utility·function·to·produce·a·formatted·printout·of·the·versions·info·generated3405 <p>Utility·function·to·produce·a·formatted·printout·of·the·versions·info·generated
3406 by·the·<code·class="inline">versions1</code>·and·<code·class="inline">versions2</code>·functions</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">···········</span><span·class="p"·data-group-id="0780584536-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">V</span><span·class="p"·data-group-id="0780584536-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·168,·SHA:·de9dce384a20a39ae3a24222194294fafcd09df41f1eae4bb70e1cd8c63c8f3f·...·]-2">)</span><span·class="p">,</span><span·class="w">3406 by·the·<code·class="inline">versions1</code>·and·<code·class="inline">versions2</code>·functions</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">···········</span><span·class="p"·data-group-id="1510405352-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">V</span><span·class="p"·data-group-id="1510405352-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·168,·SHA:·3337ec69804c2a5db41a3dd9e1142e27ce8743fc3e0ad8155db91723e4dfa941·...·]-2">)</span><span·class="p">,</span><span·class="w">
3407 ···········</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">print_versions</span><span·class="p"·data-group-id="0780584536-3">(</span><span·class="n">V</span><span·class="p"·data-group-id="0780584536-3">)</span><span·class="p">.</span></code></pre>3407 ···········</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">print_versions</span><span·class="p"·data-group-id="1510405352-3">(</span><span·class="n">V</span><span·class="p"·data-group-id="1510405352-3">)</span><span·class="p">.</span></code></pre>
3408 ··</section>3408 ··</section>
3409 </section>3409 </section>
3410 <section·class="detail"·id="read_mib/1">3410 <section·class="detail"·id="read_mib/1">
  
3411 ··<div·class="detail-header">3411 ··<div·class="detail-header">
3412 ····<a·href="#read_mib/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">3412 ····<a·href="#read_mib/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
3413 ······<i·class="ri-link-m"·aria-hidden="true"></i>3413 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 3538, 25 lines modifiedOffset 3538, 25 lines modified
3538 ·······················TraceOpt·::·{timestamp,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()}·|·TargetOpt.</pre>3538 ·······················TraceOpt·::·{timestamp,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>()}·|·TargetOpt.</pre>
  
3539 ······</div>3539 ······</div>
  
3540 <p>This·function·is·used·to·set·up·trace·on·function(s)·for·the·given·module·or3540 <p>This·function·is·used·to·set·up·trace·on·function(s)·for·the·given·module·or
3541 modules.</p><p>The·example·below·sets·up·trace·on·the·exported·functions·(default)·of·module3541 modules.</p><p>The·example·below·sets·up·trace·on·the·exported·functions·(default)·of·module
3542 <code·class="inline">snmp_generic</code>·and·all·functions·of·module·<code·class="inline">snmp_generic_mnesia</code>.·With·return3542 <code·class="inline">snmp_generic</code>·and·all·functions·of·module·<code·class="inline">snmp_generic_mnesia</code>.·With·return
3543 values·(which·is·default)·and·timestamps·in·both·cases·(which·is·also·default):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»    ··</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">enable_trace</span><span·class="p"·data-group-id="4083992385-1">(</span><span·class="p"·data-group-id="4083992385-1">)</span><span·class="p">,</span><span·class="w">3543 values·(which·is·default)·and·timestamps·in·both·cases·(which·is·also·default):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»    ··</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">enable_trace</span><span·class="p"·data-group-id="9245147270-1">(</span><span·class="p"·data-group-id="9245147270-1">)</span><span·class="p">,</span><span·class="w">
3544 »       ··</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">set_trace</span><span·class="p"·data-group-id="4083992385-2">(</span><span·class="p"·data-group-id="4083992385-3">[</span><span·class="ss">snmp_generic</span><span·class="p">,</span><span·class="w">3544 »       ··</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">set_trace</span><span·class="p"·data-group-id="9245147270-2">(</span><span·class="p"·data-group-id="9245147270-3">[</span><span·class="ss">snmp_generic</span><span·class="p">,</span><span·class="w">
3545 ··························</span><span·class="p"·data-group-id="4083992385-4">{</span><span·class="ss">snmp_generic_mnesia</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4083992385-5">[</span><span·class="p"·data-group-id="4083992385-6">{</span><span·class="ss">scope</span><span·cl[·...·truncated·by·diffoscope;·len:·330,·SHA:·a3d176ba329e3dfaa3a810f42c669af56d5231f890e4e7ea4553770f4eff7eeb·...·]-2">)</span><span·class="p">,</span><span·class="w">3545 ··························</span><span·class="p"·data-group-id="9245147270-4">{</span><span·class="ss">snmp_generic_mnesia</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9245147270-5">[</span><span·class="p"·data-group-id="9245147270-6">{</span><span·class="ss">scope</span><span·cl[·...·truncated·by·diffoscope;·len:·330,·SHA:·6de57b8e9c8f37f876853cd6973b5ccb3839a1006a5936ac8e3f0ed9b54b7e1e·...·]-2">)</span><span·class="p">,</span><span·class="w">
3546 »       ··</span><span·class="p">.</span><span·class="w">3546 »       ··</span><span·class="p">.</span><span·class="w">
3547 »       ··</span><span·class="p">.</span><span·class="w">3547 »       ··</span><span·class="p">.</span><span·class="w">
3548 »       ··</span><span·class="p">.</span><span·class="w">3548 »       ··</span><span·class="p">.</span><span·class="w">
3549 ··········</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">set_trace</span><span·class="p"·data-group-id="4083992385-7">(</span><span·class="ss">snmp_generic</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disable</span><span·class="p"·data-group-id="4083992385-7">)</span><span·class="p">,</span><span·class="w">3549 ··········</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">set_trace</span><span·class="p"·data-group-id="9245147270-7">(</span><span·class="ss">snmp_generic</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disable</span><span·class="p"·data-group-id="9245147270-7">)</span><span·class="p">,</span><span·class="w">
3550 »       ··</span><span·class="p">.</span><span·class="w">3550 »       ··</span><span·class="p">.</span><span·class="w">
3551 »       ··</span><span·class="p">.</span><span·class="w">3551 »       ··</span><span·class="p">.</span><span·class="w">
3552 »       ··</span><span·class="p">.</span><span·class="w">3552 »       ··</span><span·class="p">.</span><span·class="w">
3553 »       ··</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">disable_trace</span><span·class="p"·data-group-id="4083992385-8">(</span><span·class="p"·data-group-id="4083992385-8">)</span><span·class="p">,</span></code></pre>3553 »       ··</span><span·class="nc">snmp</span><span·class="p">:</span><span·class="nf">disable_trace</span><span·class="p"·data-group-id="9245147270-8">(</span><span·class="p"·data-group-id="9245147270-8">)</span><span·class="p">,</span></code></pre>
3554 ··</section>3554 ··</section>
3555 </section>3555 </section>
3556 <section·class="detail"·id="start/0">3556 <section·class="detail"·id="start/0">
  
3557 ··<div·class="detail-header">3557 ··<div·class="detail-header">
3558 ····<a·href="#start/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">3558 ····<a·href="#start/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
3559 ······<i·class="ri-link-m"·aria-hidden="true"></i>3559 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 3942, 15 lines modifiedOffset 3942, 15 lines modified
3942 ······<p·class="built-using">3942 ······<p·class="built-using">
3943 ········Built·using3943 ········Built·using
3944 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3944 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3945 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3945 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3946 ······</p>3946 ······</p>
3947 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3947 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3948 ····</footer>3948 ····</footer>
3949 ··</div>3949 ··</div>
3950 </main>3950 </main>
3951 </div>3951 </div>
3952 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3952 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3953 <script>3953 <script>
3954 ··document.addEventListener("DOMContentLoaded",·function·()·{3954 ··document.addEventListener("DOMContentLoaded",·function·()·{
633 B
html2text {}
Max HTML report size reached
31.5 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_advanced_agent.html
    
Offset 325, 74 lines modifiedOffset 325, 74 lines modified
325 ·······::=·{·empTable·1·}325 ·······::=·{·empTable·1·}
326 ·······EmpEntry·::=326 ·······EmpEntry·::=
327 ··············SEQUENCE·{327 ··············SEQUENCE·{
328 ··················empDepNo·········INTEGER,328 ··················empDepNo·········INTEGER,
329 ··················empName··········DisplayString,329 ··················empName··········DisplayString,
330 ··················empTelNo·········DisplayString,330 ··················empTelNo·········DisplayString,
331 ··················empStatus········RowStatus331 ··················empStatus········RowStatus
332 ··············}</code></pre><p>The·corresponding·Mnesia·table·is·specified·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="9687439696-1">(</span><span·class="p"·data-group-id="9687439696-2">[</span><span·class="p"·data-group-id="9687439696-3">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">employees</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·4374650156f55518c0cd00292fe319650409c937ee84d765a94eb08ade3a2669·...·]-3">}</span><span·class="p">,</span><span·class="w">332 ··············}</code></pre><p>The·corresponding·Mnesia·table·is·specified·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="9001567152-1">(</span><span·class="p"·data-group-id="9001567152-2">[</span><span·class="p"·data-group-id="9001567152-3">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">employees</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·24575562f982df658a6bf8326b449628712ab50f27a04f5be88e73a2c3941fdc·...·]-3">}</span><span·class="p">,</span><span·class="w">
333 ·····················</span><span·class="p"·data-group-id="9687439696-4">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9687439696-5">[</span><span·class="p"·data-group-id="9687439696-6">{</span><span·class="ss">key</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·384,·SHA:·dfd8cce4bba5386188094b84dafdbd7a651540b63734eecb3731bf1bd5023299·...·]-4">}</span><span·class="p">,</span><span·class="w">333 ·····················</span><span·class="p"·data-group-id="9001567152-4">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9001567152-5">[</span><span·class="p"·data-group-id="9001567152-6">{</span><span·class="ss">key</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·384,·SHA:·037011a338c5700e404a1ff58a3ec6bfeba034acdcb24d47e585f38dc14e9b84·...·]-4">}</span><span·class="p">,</span><span·class="w">
334 ·····················</span><span·class="p"·data-group-id="9687439696-8">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9687439696-9">[</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">telno</s[·...·truncated·by·diffoscope;·len:·286,·SHA:·d52810f2c6872fa922b3f1da3e9df1424b779bc7ffe3347a51efad4d6c76eadf·...·]-1">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>In·the·Mnesia·tables,·the·two·key·columns·are·stored·as·a·tuple·with·two334 ·····················</span><span·class="p"·data-group-id="9001567152-8">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9001567152-9">[</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">telno</s[·...·truncated·by·diffoscope;·len:·286,·SHA:·83cc5542246ce5727454572a79a2e3e69676c0b3ef96b0fd3e1faf1786be27ca·...·]-1">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>In·the·Mnesia·tables,·the·two·key·columns·are·stored·as·a·tuple·with·two
335 elements.·Therefore,·the·arity·of·the·table·is·3.</p></blockquote><h3·id="instrumentation-functions"·class="section-heading">335 elements.·Therefore,·the·arity·of·the·table·is·3.</p></blockquote><h3·id="instrumentation-functions"·class="section-heading">
336 ··<a·href="#instrumentation-functions"·class="hover-link">336 ··<a·href="#instrumentation-functions"·class="hover-link">
337 ····<i·class="ri-link-m"·aria-hidden="true"></i>337 ····<i·class="ri-link-m"·aria-hidden="true"></i>
338 ··</a>338 ··</a>
339 ··<span·class="text">Instrumentation·Functions</span>339 ··<span·class="text">Instrumentation·Functions</span>
340 </h3>340 </h3>
341 <p>The·MIB·table·shown·in·the·previous·section·can·be·compiled·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">snmpc</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="3327415272-1">(</span><span·class="s">&quot;EmpMIB&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3327415272-2">[</span><span·class="p"·data-group-id="3327415272-3">{</span><span·class="ss">db</span><span·class="p[·...·truncated·by·diffoscope;·len:·210,·SHA:·536e28d00513d11de58c1edd4c156ebe1dfcba4acc9418083a0071b556e33b15·...·]2-1">)</span><span·class="p">.</span></code></pre><p>This·is·all·that·has·to·be·done!·Now·the·manager·can·read,·add,·and·modify341 <p>The·MIB·table·shown·in·the·previous·section·can·be·compiled·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">snmpc</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="3054640022-1">(</span><span·class="s">&quot;EmpMIB&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3054640022-2">[</span><span·class="p"·data-group-id="3054640022-3">{</span><span·class="ss">db</span><span·class="p[·...·truncated·by·diffoscope;·len:·210,·SHA:·e95db4f32a55dbbbca428d82810599eebac6433672b4ee61a00aefdfbba7ebc1·...·]2-1">)</span><span·class="p">.</span></code></pre><p>This·is·all·that·has·to·be·done!·Now·the·manager·can·read,·add,·and·modify
342 rows.·Also,·you·can·use·the·ordinary·Mnesia·API·to·access·the·table·from·your342 rows.·Also,·you·can·use·the·ordinary·Mnesia·API·to·access·the·table·from·your
343 programs.·The·only·explicit·action·is·to·create·the·Mnesia·table,·an·action·the343 programs.·The·only·explicit·action·is·to·create·the·Mnesia·table,·an·action·the
344 user·has·to·perform·in·order·to·create·the·required·table·schemas.</p><h3·id="adding-own-actions"·class="section-heading">344 user·has·to·perform·in·order·to·create·the·required·table·schemas.</p><h3·id="adding-own-actions"·class="section-heading">
345 ··<a·href="#adding-own-actions"·class="hover-link">345 ··<a·href="#adding-own-actions"·class="hover-link">
346 ····<i·class="ri-link-m"·aria-hidden="true"></i>346 ····<i·class="ri-link-m"·aria-hidden="true"></i>
347 ··</a>347 ··</a>
348 ··<span·class="text">Adding·Own·Actions</span>348 ··<span·class="text">Adding·Own·Actions</span>
349 </h3>349 </h3>
350 <p>It·is·often·necessary·to·take·some·specific·action·when·a·table·is·modified.350 <p>It·is·often·necessary·to·take·some·specific·action·when·a·table·is·modified.
351 This·is·accomplished·with·an·instrumentation·function.·It·executes·some·specific351 This·is·accomplished·with·an·instrumentation·function.·It·executes·some·specific
352 code·when·the·table·is·set,·and·passes·all·other·requests·down·to·the352 code·when·the·table·is·set,·and·passes·all·other·requests·down·to·the
353 pre-defined·function.</p><p>The·following·example·illustrates·this·idea:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">emp_table</span><span·class="p"·data-group-id="3247395727-1">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="3247395727-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">353 pre-defined·function.</p><p>The·following·example·illustrates·this·idea:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">emp_table</span><span·class="p"·data-group-id="9743809034-1">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="9743809034-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
354 ····</span><span·class="nf">notify_internal_resources</span><span·class="p"·data-group-id="3247395727-2">(</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="3247395727-2">)</span><span·class="p">,</span><span·class="w">354 ····</span><span·class="nf">notify_internal_resources</span><span·class="p"·data-group-id="9743809034-2">(</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="9743809034-2">)</span><span·class="p">,</span><span·class="w">
355 ····</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="3247395727-3">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·252,·SHA:·3d87097c4ff39df013bf3b92c5a801bc2ee4bba18125a19562d3fc7a63f9e12d·...·]-3">)</span><span·class="p">;</span><span·class="w">355 ····</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="9743809034-3">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·252,·SHA:·e213b90e461182a495433146675db88afea3e4b612246fdeeb4aeeb18326a52f·...·]-3">)</span><span·class="p">;</span><span·class="w">
356 </span><span·class="nf">emp_table</span><span·class="p"·data-group-id="3247395727-5">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="3247395727-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">356 </span><span·class="nf">emp_table</span><span·class="p"·data-group-id="9743809034-5">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="9743809034-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
357 ····</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="3247395727-6">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·250,·SHA:·2ec55217e6feeaacd7ee2f2380713e10eaa83b4df2c6177f6c0249387c69308a·...·]-6">)</span><span·class="p">.</span></code></pre><p>The·default·instrumentation·functions·are·defined·in·the·module·<code·class="inline">snmp_generic</code>.357 ····</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="9743809034-6">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·250,·SHA:·3c4b8c9eeb2dbecb4f068225cae131cd866cfad847bab0e67eb625f47ee1f93d·...·]-6">)</span><span·class="p">.</span></code></pre><p>The·default·instrumentation·functions·are·defined·in·the·module·<code·class="inline">snmp_generic</code>.
358 Refer·to·the·Reference·Manual,·section·SNMP,·module·<code·class="inline">snmp_generic</code>·for·details.</p><h3·id="extending-the-mnesia-table"·class="section-heading">358 Refer·to·the·Reference·Manual,·section·SNMP,·module·<code·class="inline">snmp_generic</code>·for·details.</p><h3·id="extending-the-mnesia-table"·class="section-heading">
359 ··<a·href="#extending-the-mnesia-table"·class="hover-link">359 ··<a·href="#extending-the-mnesia-table"·class="hover-link">
360 ····<i·class="ri-link-m"·aria-hidden="true"></i>360 ····<i·class="ri-link-m"·aria-hidden="true"></i>
361 ··</a>361 ··</a>
362 ··<span·class="text">Extending·the·Mnesia·Table</span>362 ··<span·class="text">Extending·the·Mnesia·Table</span>
363 </h3>363 </h3>
364 <p>A·table·may·contain·columns·that·are·used·internally,·but·should·not·be·visible364 <p>A·table·may·contain·columns·that·are·used·internally,·but·should·not·be·visible
365 to·a·manager.·These·internal·columns·must·be·the·last·columns·in·the·table.·The365 to·a·manager.·These·internal·columns·must·be·the·last·columns·in·the·table.·The
366 <code·class="inline">set</code>·operation·will·not·work·with·this·arrangement,·because·there·are·columns366 <code·class="inline">set</code>·operation·will·not·work·with·this·arrangement,·because·there·are·columns
367 that·the·agent·does·not·know·about.·This·situation·is·handled·by·adding·values367 that·the·agent·does·not·know·about.·This·situation·is·handled·by·adding·values
368 for·the·internal·columns·in·the·<code·class="inline">set</code>·function.</p><p>To·illustrate·this,·suppose·we·extend·our·Mnesia·<code·class="inline">empTable</code>·with·one·internal368 for·the·internal·columns·in·the·<code·class="inline">set</code>·function.</p><p>To·illustrate·this,·suppose·we·extend·our·Mnesia·<code·class="inline">empTable</code>·with·one·internal
369 column.·We·create·it·as·before,·but·with·an·arity·of·4,·by·adding·another369 column.·We·create·it·as·before,·but·with·an·arity·of·4,·by·adding·another
370 attribute.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="3608237457-1">(</span><span·class="p"·data-group-id="3608237457-2">[</span><span·class="p"·data-group-id="3608237457-3">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">employees</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·ed4b1e2b9fffb0d7a2d068aefe9937ea6cace24aa6dcd1398688e2686f488f21·...·]-3">}</span><span·class="p">,</span><span·class="w">370 attribute.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">mnesia</span><span·class="p">:</span><span·class="nf">create_table</span><span·class="p"·data-group-id="4870895983-1">(</span><span·class="p"·data-group-id="4870895983-2">[</span><span·class="p"·data-group-id="4870895983-3">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">employees</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·9602a0bf60d6e72f56eac20efcc5159ebba5d0e468719a6c4d4462e91cc69628·...·]-3">}</span><span·class="p">,</span><span·class="w">
371 ·····················</span><span·class="p"·data-group-id="3608237457-4">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3608237457-5">[</span><span·class="p"·data-group-id="3608237457-6">{</span><span·class="ss">key</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·385,·SHA:·2b5dd75f0015ccf82b60ac1d1801ac7d8fb4193644d6eb9084b234c6fbc620ab·...·]-4">}</span><span·class="p">,</span><span·class="w">371 ·····················</span><span·class="p"·data-group-id="4870895983-4">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4870895983-5">[</span><span·class="p"·data-group-id="4870895983-6">{</span><span·class="ss">key</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·385,·SHA:·c8189cbd98c693c5f7186ccd939597e5aff1d5d5e831e2b325d59eb90246534d·...·]-4">}</span><span·class="p">,</span><span·class="w">
372 ·····················</span><span·class="p"·data-group-id="3608237457-8">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3608237457-9">{</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">telno</[·...·truncated·by·diffoscope;·len:·371,·SHA:·9ebb32453cb3ea301001c20b9ef9c7b76a8ce0306d2b25623d575e533b900a79·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·last·column·is·the·internal·column.·When·performing·a·<code·class="inline">set</code>·operation,·which372 ·····················</span><span·class="p"·data-group-id="4870895983-8">{</span><span·class="ss">attributes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4870895983-9">{</span><span·class="ss">key</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">telno</[·...·truncated·by·diffoscope;·len:·371,·SHA:·f7d10d58dd45535f92257e5a3d50a5f522bea3a509cd6f05cccb0027dd54cc08·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·last·column·is·the·internal·column.·When·performing·a·<code·class="inline">set</code>·operation,·which
373 creates·a·row,·we·must·give·a·value·to·the·internal·column.·The·instrumentation373 creates·a·row,·we·must·give·a·value·to·the·internal·column.·The·instrumentation
374 functions·will·now·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="2668334361-1">(</span><span·class="ss">createAndGo</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="p"·data-group-id="2668334361-1">)</span><span·class="p">.</span><span·class="w">374 functions·will·now·look·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8316555462-1">(</span><span·class="ss">createAndGo</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="p"·data-group-id="8316555462-1">)</span><span·class="p">.</span><span·class="w">
375 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="2668334361-2">(</span><span·class="ss">createAndWait</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5</span><span·class="p"·data-group-id="2668334361-2">)</span><span·class="p">.</span><span·class="w">375 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="8316555462-2">(</span><span·class="ss">createAndWait</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">5</span><span·class="p"·data-group-id="8316555462-2">)</span><span·class="p">.</span><span·class="w">
  
376 </span><span·class="nf">emp_table</span><span·class="p"·data-group-id="2668334361-3">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="2668334361-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">376 </span><span·class="nf">emp_table</span><span·class="p"·data-group-id="8316555462-3">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="8316555462-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
377 ··</span><span·class="nf">notify_internal_resources</span><span·class="p"·data-group-id="2668334361-4">(</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="2668334361-4">)</span><span·class="p">,</span><span·class="w">377 ··</span><span·class="nf">notify_internal_resources</span><span·class="p"·data-group-id="8316555462-4">(</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="8316555462-4">)</span><span·class="p">,</span><span·class="w">
378 ··</span><span·class="n">NewCols</span><span·class="w">·</span><span·class="o">=</span><span·class="w">378 ··</span><span·class="n">NewCols</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
379 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">is_row_created</span><span·class="p"·data-group-id="2668334361-5">(</span><span·class="ss">empTable</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="2668334361-5">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">379 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">is_row_created</span><span·class="p"·data-group-id="8316555462-5">(</span><span·class="ss">empTable</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="8316555462-5">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
380 ······</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Cols</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="2668334361-6">[</span><span·class="p"·data-group-id="2668334361-7">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;internal&quot;</span><span·class="p"·data-group-id="2668334361-7">}</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·427d580674fd539542e3a5751f61e661872a7c6e0c8d6c63102ba26198460f01·...·]-6">]</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·add·internal·column</span><span·class="w">380 ······</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Cols</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="8316555462-6">[</span><span·class="p"·data-group-id="8316555462-7">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;internal&quot;</span><span·class="p"·data-group-id="8316555462-7">}</span><span·class=[·...·truncated·by·diffoscope;·len:·29,·SHA:·d2ef5793485d1b74579a471827602d7ba7c303d31ebc717c147bab1a9b00e653·...·]-6">]</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·add·internal·column</span><span·class="w">
381 ······</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Cols</span><span·class="w">······················</span><span·class="c1">%·keep·original·cols</span><span·class="w">381 ······</span><span·class="ss">false</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Cols</span><span·class="w">······················</span><span·class="c1">%·keep·original·cols</span><span·class="w">
382 ··</span><span·class="k">end</span><span·class="p">,</span><span·class="w">382 ··</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
383 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="2668334361-8">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NewCols</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·255,·SHA:·7063c1d365d2e51aed887f4dfff51cd6b11f4bf7c96593c9b337f8ac1471c986·...·]-8">)</span><span·class="p">;</span><span·class="w">383 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="8316555462-8">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NewCols</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·255,·SHA:·74e99cfd1687507ac1729589a73e2ac1f76aa85af9ef649bdfa8242cdf363fd9·...·]-8">)</span><span·class="p">;</span><span·class="w">
384 </span><span·class="nf">emp_table</span><span·class="p"·data-group-id="2668334361-10">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="2668334361-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">384 </span><span·class="nf">emp_table</span><span·class="p"·data-group-id="8316555462-10">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="8316555462-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
385 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="2668334361-11">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·253,·SHA:·0a6334f19f989e25fdf20d0885e19fa3700ff33b6ef6831df4fb8f8052cd8cad·...·]-11">)</span><span·class="p">.</span><span·class="w">385 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="8316555462-11">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·253,·SHA:·d0b43a8c69e034c346f790302ac1d4484ac2ccae777513375dd45f6d1687513d·...·]-11">)</span><span·class="p">.</span><span·class="w">
  
386 </span><span·class="nf">is_row_created</span><span·class="p"·data-group-id="2668334361-13">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="2668334361-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">386 </span><span·class="nf">is_row_created</span><span·class="p"·data-group-id="8316555462-13">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="8316555462-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
387 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">get_status_col</span><span·class="p"·data-group-id="2668334361-14">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="2668334361-14">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">387 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">get_status_col</span><span·class="p"·data-group-id="8316555462-14">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="8316555462-14">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
388 ····</span><span·class="p"·data-group-id="2668334361-15">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">createAndGo</span><span·class="p"·data-group-id="2668334361-15">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">388 ····</span><span·class="p"·data-group-id="8316555462-15">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">createAndGo</span><span·class="p"·data-group-id="8316555462-15">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">
389 ····</span><span·class="p"·data-group-id="2668334361-16">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">createAndWait</span><span·class="p"·data-group-id="2668334361-16">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">389 ····</span><span·class="p"·data-group-id="8316555462-16">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="ss">createAndWait</span><span·class="p"·data-group-id="8316555462-16">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">;</span><span·class="w">
390 ····</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">false</span><span·class="w">390 ····</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">false</span><span·class="w">
391 ··</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>If·a·row·is·created,·we·always·set·the·internal·column·to·<code·class="inline">&quot;internal&quot;</code>.</p><h2·id="deviations-from-the-standard"·class="section-heading">391 ··</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>If·a·row·is·created,·we·always·set·the·internal·column·to·<code·class="inline">&quot;internal&quot;</code>.</p><h2·id="deviations-from-the-standard"·class="section-heading">
392 ··<a·href="#deviations-from-the-standard"·class="hover-link">392 ··<a·href="#deviations-from-the-standard"·class="hover-link">
393 ····<i·class="ri-link-m"·aria-hidden="true"></i>393 ····<i·class="ri-link-m"·aria-hidden="true"></i>
394 ··</a>394 ··</a>
395 ··<span·class="text">Deviations·from·the·Standard</span>395 ··<span·class="text">Deviations·from·the·Standard</span>
396 </h2>396 </h2>
Offset 453, 15 lines modifiedOffset 453, 15 lines modified
453 ······<p·class="built-using">453 ······<p·class="built-using">
454 ········Built·using454 ········Built·using
455 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the455 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
456 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>456 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
457 ······</p>457 ······</p>
458 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>458 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
459 ····</footer>459 ····</footer>
460 ··</div>460 ··</div>
461 </main>461 </main>
462 </div>462 </div>
463 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>463 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
464 <script>464 <script>
465 ··document.addEventListener("DOMContentLoaded",·function·()·{465 ··document.addEventListener("DOMContentLoaded",·function·()·{
716 B
html2text {}
Max HTML report size reached
22.1 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_agent_config_files.html
    
Offset 146, 27 lines modifiedOffset 146, 27 lines modified
146 ····<i·class="ri-link-m"·aria-hidden="true"></i>146 ····<i·class="ri-link-m"·aria-hidden="true"></i>
147 ··</a>147 ··</a>
148 ··<span·class="text">Agent·Information</span>148 ··<span·class="text">Agent·Information</span>
149 </h2>149 </h2>
150 <p>The·agent·information·should·be·stored·in·a·file·called·<code·class="inline">agent.conf</code>.</p><p>Each·entry·is·a·tuple·of·size·two:</p><p><code·class="inline">{AgentVariable,·Value}.</code></p><ul><li><code·class="inline">AgentVariable</code>·is·one·of·the·variables·in·SNMP-FRAMEWORK-MIB·or·one·of·the150 <p>The·agent·information·should·be·stored·in·a·file·called·<code·class="inline">agent.conf</code>.</p><p>Each·entry·is·a·tuple·of·size·two:</p><p><code·class="inline">{AgentVariable,·Value}.</code></p><ul><li><code·class="inline">AgentVariable</code>·is·one·of·the·variables·in·SNMP-FRAMEWORK-MIB·or·one·of·the
151 internal·variables·<code·class="inline">intAgentUDPPort</code>,·which·defines·which·UDP·port·the·agent151 internal·variables·<code·class="inline">intAgentUDPPort</code>,·which·defines·which·UDP·port·the·agent
152 listens·to,·or·<code·class="inline">intAgentTransports</code>,·which·defines·the·transport·domains·and152 listens·to,·or·<code·class="inline">intAgentTransports</code>,·which·defines·the·transport·domains·and
153 addresses·of·the·agent.</li><li><code·class="inline">Value</code>·is·the·value·for·the·variable.</li></ul><p>The·following·example·shows·an·<code·class="inline">agent.conf</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3381076965-1">{</span><span·class="ss">intAgentUDPPort</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4000</span><span·class="p"·data-group-id="3381076965-1">}</span><span·class="p">.</span><span·class="w">153 addresses·of·the·agent.</li><li><code·class="inline">Value</code>·is·the·value·for·the·variable.</li></ul><p>The·following·example·shows·an·<code·class="inline">agent.conf</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6584145933-1">{</span><span·class="ss">intAgentUDPPort</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4000</span><span·class="p"·data-group-id="6584145933-1">}</span><span·class="p">.</span><span·class="w">
154 </span><span·class="p"·data-group-id="3381076965-2">{</span><span·class="ss">intAgentTransports</span><span·class="p">,</span><span·class="w">154 </span><span·class="p"·data-group-id="6584145933-2">{</span><span·class="ss">intAgentTransports</span><span·class="p">,</span><span·class="w">
155 ·</span><span·class="p"·data-group-id="3381076965-3">[</span><span·class="p"·data-group-id="3381076965-4">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3381076965-5">{</span><span·class="mi">141</span><span·c[·...·truncated·by·diffoscope;·len:·238,·SHA:·f53b11e45e124f5d451fae4ee599824f01c84f036d5bcf7ed50990de8c3e91ff·...·]-4">}</span><span·class="p">,</span><span·class="w">155 ·</span><span·class="p"·data-group-id="6584145933-3">[</span><span·class="p"·data-group-id="6584145933-4">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6584145933-5">{</span><span·class="mi">141</span><span·c[·...·truncated·by·diffoscope;·len:·238,·SHA:·3d83410c755ee1bc7a58702ddebd2edfa38d977f453fced780e6e869e262ed33·...·]-4">}</span><span·class="p">,</span><span·class="w">
156 ··</span><span·class="p"·data-group-id="3381076965-6">{</span><span·class="ss">transportDomainUdpIpv6</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3381076965-7">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·481,·SHA:·fea93a42df8b03b3f75623ba5d152db2c65c29eaeba255d42e98752571c67e59·...·]-2">}</span><span·class="p">.</span><span·class="w">156 ··</span><span·class="p"·data-group-id="6584145933-6">{</span><span·class="ss">transportDomainUdpIpv6</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6584145933-7">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="[·...·truncated·by·diffoscope;·len:·481,·SHA:·adbf652c924e7ad3ce3f8c80c80cce0598c8de493197baa030f3edc6ce30deae·...·]-2">}</span><span·class="p">.</span><span·class="w">
157 </span><span·class="p"·data-group-id="3381076965-8">{</span><span·class="ss">snmpEngineID</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;mbj&#39;s·engine&quot;</span><span·class="p"·data-group-id="3381076965-8">}</span><span·class="p">.</span><span·class="w">157 </span><span·class="p"·data-group-id="6584145933-8">{</span><span·class="ss">snmpEngineID</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;mbj&#39;s·engine&quot;</span><span·class="p"·data-group-id="6584145933-8">}</span><span·class="p">.</span><span·class="w">
158 </span><span·class="p"·data-group-id="3381076965-9">{</span><span·class="ss">snmpEngineMaxMessageSize</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">484</span><span·class="p"·data-group-id="3381076965-9">}</span><span·class="p">.</span></code></pre><p>These·are·the·supp[·...·truncated·by·diffoscope;·len:·443,·SHA:·f2ee2e549d7173e320f7d46ec3908576770ab0427176f6642717fd02ebf01d61·...·]-1">}</span><span·class="p">.</span><span·class="w">·····················</span><span·class="c1">%·Mandatory</span><span·class="w">158 </span><span·class="p"·data-group-id="6584145933-9">{</span><span·class="ss">snmpEngineMaxMessageSize</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">484</span><span·class="p"·data-group-id="6584145933-9">}</span><span·class="p">.</span></code></pre><p>These·are·the·supp[·...·truncated·by·diffoscope;·len:·443,·SHA:·c4fcb8aa8a6644f84633e4ccde517b60a64876360e95af76b7d936e375139e48·...·]-1">}</span><span·class="p">.</span><span·class="w">·····················</span><span·class="c1">%·Mandatory</span><span·class="w">
159 ······</span><span·class="p"·data-group-id="7861910495-3">{</span><span·class="ss">snmpEngineMaxMessageSize</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">snmp_framework_mib</span><span·class="p">:</span><span·class="nf">max_message_size</span><span·class="p"·data-group-id="7[·...·truncated·by·diffoscope;·len:·115,·SHA:·9d0fd26e4f9921be5cce8e6c157474059335d09afac86a1a39bf4620b0038f9a·...·]-3">}</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%·Mandatory</span><span·class="w">159 ······</span><span·class="p"·data-group-id="9708145740-3">{</span><span·class="ss">snmpEngineMaxMessageSize</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">snmp_framework_mib</span><span·class="p">:</span><span·class="nf">max_message_size</span><span·class="p"·data-group-id="9[·...·truncated·by·diffoscope;·len:·115,·SHA:·2ff2766eb6d5b5cf136837a178a6ef88804721035db6e53f819e1e82c7780b62·...·]-3">}</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%·Mandatory</span><span·class="w">
160 ······</span><span·class="p"·data-group-id="7861910495-5">{</span><span·class="ss">intAgentUDPPort</span><span·class="p">,</span><span·class="w">··········</span><span·class="nc">inet</span><span·class="p">:</span><span·class="nf">port_number</span><span·class="p"·data-group-id="7861910495-6">(</span><span·class="p"·data-group-id="7861910495-6">)</span><span·class="p"·data-group-id="7861910495-5">}</span><span·class="p">.</span><span·class="w">······················</span><span·class="c1">%·Optional</span><span·class="w"> 
161 ······</span><span·class="p"·data-group-id="7861910495-7">{</span><span·class="ss">intAgentTransports</span><span·class="p">,</span><span·class="w">·······</span><span·class="p"·data-group-id="7861910495-8">[</span><span·class="nc">snmpa_conf</span><span·class="p">:</span><span·class="nf">intAgentTr[·...·truncated·by·diffoscope;·len:·439,·SHA:·a82c926c1175116073789dcf74c349899ae43a13e6c83c88f78bae3801cfa0a3·...·]160 ······</span><span·class="p"·data-group-id="9708145740-5">{</span><span·class="ss">intAgentUDPPort</span><span·class="p">,</span><span·class="w">··········</span><span·class="nc">inet</span><span·class="p">:</span><span·class="nf">port_number</span><span·class="p"·data-group-id="9708145740-6">(</spa[·...·truncated·by·diffoscope;·len:·227,·SHA:·d4cf58bb50d22b1120b0a04c675b3e7211d933661c06facd521926352cd0e763·...·]
 161 ······</span><span·class="p"·data-group-id="9708145740-7">{</span><span·class="ss">intAgentTransports</span><span·class="p">,</span><span·class="w">·······</span><span·class="p"·data-group-id="9708145740-8">[</span><span·class="nc">snmpa_conf</span><span·class="p">:</span><span·class="nf">intAgentTransport</span><span·class="p"·data-group-id="9708145740-9">(</span><span·class="p"·data-group-id="9708145740-9">)</span><span·class="p"·data-group-id="9708145740-8">]</span><span·class="p"·data-group-id="9708145740-7">}</span><span·class="p">.</span><span·class="w">···</span><span·class="c1">%·Mandatory</span></code></pre><p>If·a·&quot;traditional&quot;·transport·is·specified·(without·explicit·<code·class="inline">Kind</code>,·handling
162 both·requests·and·traps)·for·a·transport·domain,·its·<em>not</em>·possible·to·also162 both·requests·and·traps)·for·a·transport·domain,·its·<em>not</em>·possible·to·also
163 specify·a·transport·(for·that·domain)·with·a·specific·<code·class="inline">Kind</code>.·This·is·for163 specify·a·transport·(for·that·domain)·with·a·specific·<code·class="inline">Kind</code>.·This·is·for
164 example,·<em>not</em>·allowed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p"·data-group-id="1045604600-1">[</span><span·class="p"·data-group-id="1045604600-2">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1045604600-3">{</span><span·class="p"·data-group-id="1045604600-4">{</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">213</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">24</span><span·class="p"·data-group-id="1045604600-4">}</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4000</span><span·class="p"·data-group-id="1045604600-3">}</span><span·class="p"·data-group-id="1045604600-2">}</span><span·class="p">,</span><span·class="w"> 
165 ··</span><span·class="p"·data-group-id="1045604600-5">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1045604600-6">{</span><span·class="p"·data-group-id="1045604600-7">{<[·...·truncated·by·diffoscope;·len:·665,·SHA:·d32b0607282eb79ba9eeffe61f5d7d8a6bd1a07afbfbd521816fac0a49675f97·...·]164 example,·<em>not</em>·allowed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p"·data-group-id="5796843073-1">[</span><span·class="p"·data-group-id="5796843073-2">{</span><span·class="ss">transportDomainUdpIpv4</spa[·...·truncated·by·diffoscope;·len:·609,·SHA:·1c3d8717284fde8e6532b9f85940067a50f8cb896a57e9532b25083dfb00ba39·...·]
 165 ··</span><span·class="p"·data-group-id="5796843073-5">{</span><span·class="ss">transportDomainUdpIpv4</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5796843073-6">{</span><span·class="p"·data-group-id="5796843073-7">{</span><span·class="mi">141</span><span·class="p">,</span><span·class="mi">213</span><span·class="p">,</span><span·class="mi">11</span><span·class="p">,</span><span·class="mi">24</span><span·class="p"·data-group-id="5796843073-7">}</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4001</span><span·class="p"·data-group-id="5796843073-6">}</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">trap_sender</span><span·class="p"·data-group-id="5796843073-5">}</span><span·class="p"·data-group-id="5796843073-1">]</span><span·class="p">.</span></code></pre><p>Note·that·only·one·transport·per·kind·for·each·transport·domain·can·be
166 configured.</p><p><code·class="inline">PortInfo</code>·<code·class="inline">system</code>·is·used·to·indicate·that·the·'system'·should·choose·(the·way166 configured.</p><p><code·class="inline">PortInfo</code>·<code·class="inline">system</code>·is·used·to·indicate·that·the·'system'·should·choose·(the·way
167 port·number·'0'·(zero)·is·normally·used).·Port·info·'0'·(zero)·cannot·be·used167 port·number·'0'·(zero)·is·normally·used).·Port·info·'0'·(zero)·cannot·be·used
168 for·this,·since·it·is·(internally)·used·to·represent·the·'default'·port·number.</p><p>In·the·traditional·transport·entries,·when·the·<code·class="inline">Addr</code>·value·does·not·contain·a168 for·this,·since·it·is·(internally)·used·to·represent·the·'default'·port·number.</p><p>In·the·traditional·transport·entries,·when·the·<code·class="inline">Addr</code>·value·does·not·contain·a
169 port·number,·the·value·of·<code·class="inline">intAgentUDPPort</code>·is·used.</p><p>Note·that·the·(new)·extended·transport·entries·(including·<code·class="inline">Kind</code>·and·<code·class="inline">Opts</code>)169 port·number,·the·value·of·<code·class="inline">intAgentUDPPort</code>·is·used.</p><p>Note·that·the·(new)·extended·transport·entries·(including·<code·class="inline">Kind</code>·and·<code·class="inline">Opts</code>)
170 <em>must</em>·specify·port-info·as·they·ignore·any·value·specified·by170 <em>must</em>·specify·port-info·as·they·ignore·any·value·specified·by
171 <code·class="inline">intAgentUDPPort</code>.</p><p><code·class="inline">Opts</code>·is·the·same·as·for·the·<a·href="snmp_config.html#agent_ni_opts">net-if</a>·process171 <code·class="inline">intAgentUDPPort</code>.</p><p><code·class="inline">Opts</code>·is·the·same·as·for·the·<a·href="snmp_config.html#agent_ni_opts">net-if</a>·process
172 <em>and</em>·takes·precedence·(for·that·transport)·if·present.·The·point·is·that·each172 <em>and</em>·takes·precedence·(for·that·transport)·if·present.·The·point·is·that·each
Offset 184, 20 lines modifiedOffset 184, 20 lines modified
184 <code·class="inline">vacmContextTable</code>·in·the·SNMP-VIEW-BASED-ACM-MIB.</p><p>Each·entry·is·a·term:</p><p><code·class="inline">ContextName.</code></p><ul><li><code·class="inline">ContextName</code>·is·a·string.</li></ul><p><a·href=""·id="system_information"></a></p><h2·id="system-information"·class="section-heading">184 <code·class="inline">vacmContextTable</code>·in·the·SNMP-VIEW-BASED-ACM-MIB.</p><p>Each·entry·is·a·term:</p><p><code·class="inline">ContextName.</code></p><ul><li><code·class="inline">ContextName</code>·is·a·string.</li></ul><p><a·href=""·id="system_information"></a></p><h2·id="system-information"·class="section-heading">
185 ··<a·href="#system-information"·class="hover-link">185 ··<a·href="#system-information"·class="hover-link">
186 ····<i·class="ri-link-m"·aria-hidden="true"></i>186 ····<i·class="ri-link-m"·aria-hidden="true"></i>
187 ··</a>187 ··</a>
188 ··<span·class="text">System·Information</span>188 ··<span·class="text">System·Information</span>
189 </h2>189 </h2>
190 <p>The·system·information·should·be·stored·in·a·file·called·<code·class="inline">standard.conf</code>.</p><p>Each·entry·is·a·tuple·of·size·two:</p><p><code·class="inline">{SystemVariable,·Value}.</code></p><ul><li><code·class="inline">SystemVariable</code>·is·one·of·the·variables·in·the·system·group,·or190 <p>The·system·information·should·be·stored·in·a·file·called·<code·class="inline">standard.conf</code>.</p><p>Each·entry·is·a·tuple·of·size·two:</p><p><code·class="inline">{SystemVariable,·Value}.</code></p><ul><li><code·class="inline">SystemVariable</code>·is·one·of·the·variables·in·the·system·group,·or
191 <code·class="inline">snmpEnableAuthenTraps</code>.</li><li><code·class="inline">Value</code>·is·the·value·for·the·variable.</li></ul><p>The·following·example·shows·a·valid·<code·class="inline">standard.conf</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4888329550-1">{</span><span·class="ss">sysDescr</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Erlang·SNMP·agent&quot;</span><span·class="p"·data-group-id="4888329550-1">}</span><span·class="p">.</span><span·class="w">191 <code·class="inline">snmpEnableAuthenTraps</code>.</li><li><code·class="inline">Value</code>·is·the·value·for·the·variable.</li></ul><p>The·following·example·shows·a·valid·<code·class="inline">standard.conf</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5921845495-1">{</span><span·class="ss">sysDescr</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Erlang·SNMP·agent&quot;</span><span·class="p"·data-group-id="5921845495-1">}</span><span·class="p">.</span><span·class="w">
192 </span><span·class="p"·data-group-id="4888329550-2">{</span><span·class="ss">sysObjectID</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4888329550-3">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·119,·SHA:·11d199f0c6d37696e2c554106ad3c44e72b5f8a5f3ef1a5043b3b92b2249be62·...·]-2">}</span><span·class="p">.</span><span·class="w">192 </span><span·class="p"·data-group-id="5921845495-2">{</span><span·class="ss">sysObjectID</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5921845495-3">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·119,·SHA:·88afb8b987cdde76809c081639a77eadb430e474a6f9588388f8fafcc75cd688·...·]-2">}</span><span·class="p">.</span><span·class="w">
193 </span><span·class="p"·data-group-id="4888329550-4">{</span><span·class="ss">sysContact</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;(mbj,eklas)@erlang.ericsson.se&quot;</span><span·class="p"·data-group-id="4888329550-4">}</span><span·class="p">.</span><span·class="w">193 </span><span·class="p"·data-group-id="5921845495-4">{</span><span·class="ss">sysContact</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;(mbj,eklas)@erlang.ericsson.se&quot;</span><span·class="p"·data-group-id="5921845495-4">}</span><span·class="p">.</span><span·class="w">
194 </span><span·class="p"·data-group-id="4888329550-5">{</span><span·class="ss">sysName</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;test&quot;</span><span·class="p"·data-group-id="4888329550-5">}</span><span·class="p">.</span><span·class="w">194 </span><span·class="p"·data-group-id="5921845495-5">{</span><span·class="ss">sysName</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;test&quot;</span><span·class="p"·data-group-id="5921845495-5">}</span><span·class="p">.</span><span·class="w">
195 </span><span·class="p"·data-group-id="4888329550-6">{</span><span·class="ss">sysServices</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">72</span><span·class="p"·data-group-id="4888329550-6">}</span><span·class="p">.</span><span·class="w">195 </span><span·class="p"·data-group-id="5921845495-6">{</span><span·class="ss">sysServices</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">72</span><span·class="p"·data-group-id="5921845495-6">}</span><span·class="p">.</span><span·class="w">
196 </span><span·class="p"·data-group-id="4888329550-7">{</span><span·class="ss">snmpEnableAuthenTraps</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">enabled</span><span·class="p"·data-group-id="4888329550-7">}</span><span·class="p">.</span></code></pre><p>A·value·must·be·provided·for·all·variables,·which·lack·default·values·in·the196 </span><span·class="p"·data-group-id="5921845495-7">{</span><span·class="ss">snmpEnableAuthenTraps</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">enabled</span><span·class="p"·data-group-id="5921845495-7">}</span><span·class="p">.</span></code></pre><p>A·value·must·be·provided·for·all·variables,·which·lack·default·values·in·the
197 MIB.</p><p><a·href=""·id="community"></a></p><h2·id="communities"·class="section-heading">197 MIB.</p><p><a·href=""·id="community"></a></p><h2·id="communities"·class="section-heading">
198 ··<a·href="#communities"·class="hover-link">198 ··<a·href="#communities"·class="hover-link">
199 ····<i·class="ri-link-m"·aria-hidden="true"></i>199 ····<i·class="ri-link-m"·aria-hidden="true"></i>
200 ··</a>200 ··</a>
201 ··<span·class="text">Communities</span>201 ··<span·class="text">Communities</span>
202 </h2>202 </h2>
203 <p>The·community·information·should·be·stored·in·a·file·called·<code·class="inline">community.conf</code>.·It203 <p>The·community·information·should·be·stored·in·a·file·called·<code·class="inline">community.conf</code>.·It
Offset 307, 15 lines modifiedOffset 307, 15 lines modified
307 ······<p·class="built-using">307 ······<p·class="built-using">
308 ········Built·using308 ········Built·using
309 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the309 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
310 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>310 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
311 ······</p>311 ······</p>
312 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>312 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
313 ····</footer>313 ····</footer>
314 ··</div>314 ··</div>
315 </main>315 </main>
316 </div>316 </div>
317 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>317 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
318 <script>318 <script>
319 ··document.addEventListener("DOMContentLoaded",·function·()·{319 ··document.addEventListener("DOMContentLoaded",·function·()·{
783 B
html2text {}
Max HTML report size reached
8.3 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_agent_funct_descr.html
    
Offset 304, 15 lines modifiedOffset 304, 15 lines modified
304 This·MIB·can·be·used·with·any·SNMP·version.</li><li>SNMP-COMMUNITY-MIB,·which·defines·managed·objects·for·coexistence·of·SNMPv1304 This·MIB·can·be·used·with·any·SNMP·version.</li><li>SNMP-COMMUNITY-MIB,·which·defines·managed·objects·for·coexistence·of·SNMPv1
305 and·SNMPv2c·with·SNMPv3.·This·MIB·is·only·useful·if·SNMPv1·or·SNMPv2c·is·used,305 and·SNMPv2c·with·SNMPv3.·This·MIB·is·only·useful·if·SNMPv1·or·SNMPv2c·is·used,
306 possibly·in·combination·with·SNMPv3.</li><li>SNMP-USER-BASED-SM-MIB,·which·defines·managed·objects·for·authentication·and306 possibly·in·combination·with·SNMPv3.</li><li>SNMP-USER-BASED-SM-MIB,·which·defines·managed·objects·for·authentication·and
307 privacy.·This·MIB·is·only·useful·with·SNMPv3.</li></ul><p>All·of·these·MIBs·should·be·loaded·into·the·Master·Agent.·Once·loaded,·these307 privacy.·This·MIB·is·only·useful·with·SNMPv3.</li></ul><p>All·of·these·MIBs·should·be·loaded·into·the·Master·Agent.·Once·loaded,·these
308 MIBs·are·always·available·in·all·contexts.</p><p>The·ASN.1·code,·the·Erlang·source·code,·and·the·generated·<code·class="inline">.hrl</code>·files·for·them308 MIBs·are·always·available·in·all·contexts.</p><p>The·ASN.1·code,·the·Erlang·source·code,·and·the·generated·<code·class="inline">.hrl</code>·files·for·them
309 are·provided·in·the·distribution·and·are·placed·in·the·directories·<code·class="inline">mibs</code>,309 are·provided·in·the·distribution·and·are·placed·in·the·directories·<code·class="inline">mibs</code>,
310 <code·class="inline">src</code>,·and·<code·class="inline">include</code>,·respectively,·in·the·<code·class="inline">snmp</code>·application.</p><p>The·<code·class="inline">.hrl</code>·files·are·generated·with·<a·href="snmpc.html#mib_to_hrl/1"><code·class="inline">snmpc:mib_to_hrl/1</code></a>.·Include·these·files·in310 <code·class="inline">src</code>,·and·<code·class="inline">include</code>,·respectively,·in·the·<code·class="inline">snmp</code>·application.</p><p>The·<code·class="inline">.hrl</code>·files·are·generated·with·<a·href="snmpc.html#mib_to_hrl/1"><code·class="inline">snmpc:mib_to_hrl/1</code></a>.·Include·these·files·in
311 your·code·as·in·the·following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="4025972640-1">(</span><span·class="s">&quot;snmp/include/SNMPv2-MIB.hrl&quot;</span><span·class="p"·data-group-id="4025972640-1">)</span><span·class="p">.</span></code></pre><p>The·initial·values·for·the·managed·objects·defined·in·these·tables,·are·read·at311 your·code·as·in·the·following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="0723434283-1">(</span><span·class="s">&quot;snmp/include/SNMPv2-MIB.hrl&quot;</span><span·class="p"·data-group-id="0723434283-1">)</span><span·class="p">.</span></code></pre><p>The·initial·values·for·the·managed·objects·defined·in·these·tables,·are·read·at
312 start-up·from·a·set·of·configuration·files.·These·are·described·in312 start-up·from·a·set·of·configuration·files.·These·are·described·in
313 <a·href="snmp_config.html">Configuration·Files</a>.</p><h3·id="standard-mib-and-snmpv2-mib"·class="section-heading">313 <a·href="snmp_config.html">Configuration·Files</a>.</p><h3·id="standard-mib-and-snmpv2-mib"·class="section-heading">
314 ··<a·href="#standard-mib-and-snmpv2-mib"·class="hover-link">314 ··<a·href="#standard-mib-and-snmpv2-mib"·class="hover-link">
315 ····<i·class="ri-link-m"·aria-hidden="true"></i>315 ····<i·class="ri-link-m"·aria-hidden="true"></i>
316 ··</a>316 ··</a>
317 ··<span·class="text">STANDARD-MIB·and·SNMPv2-MIB</span>317 ··<span·class="text">STANDARD-MIB·and·SNMPv2-MIB</span>
318 </h3>318 </h3>
Offset 465, 17 lines modifiedOffset 465, 17 lines modified
465 ····<i·class="ri-link-m"·aria-hidden="true"></i>465 ····<i·class="ri-link-m"·aria-hidden="true"></i>
466 ··</a>466 ··</a>
467 ··<span·class="text">Notifications</span>467 ··<span·class="text">Notifications</span>
468 </h2>468 </h2>
469 <p>Notifications·are·defined·in·SMIv1·with·the·TRAP-TYPE·macro·in·the·definition·of469 <p>Notifications·are·defined·in·SMIv1·with·the·TRAP-TYPE·macro·in·the·definition·of
470 an·MIB·(see·RFC1215).·The·corresponding·macro·in·SMIv2·is·NOTIFICATION-TYPE.470 an·MIB·(see·RFC1215).·The·corresponding·macro·in·SMIv2·is·NOTIFICATION-TYPE.
471 When·an·application·decides·to·send·a·notification,·it·calls·one·of·the471 When·an·application·decides·to·send·a·notification,·it·calls·one·of·the
472 following·functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmpa</span><span·class="p">:</span><span·class="nf">send_notification</span><span·class="p"·data-group-id="7938137191-1">(</span><span·class="n">Agent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Notification</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Receiver</span><span·class="w">472 following·functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmpa</span><span·class="p">:</span><span·class="nf">send_notification</span><span·class="p"·data-group-id="5742632096-1">(</span><span·class="n">Agent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Notification</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Receiver</span><span·class="w">
473 ·······················</span><span·class="p"·data-group-id="7938137191-2">[</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NotifyName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ContextName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Varbind[·...·truncated·by·diffoscope;·len:·102,·SHA:·de68574f9992f7af62f98e82c8eb2ad5b1326683b31228d190a7f7630ccdd9f9·...·]-1">)</span><span·class="w">473 ·······················</span><span·class="p"·data-group-id="5742632096-2">[</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NotifyName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ContextName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Varbind[·...·truncated·by·diffoscope;·len:·102,·SHA:·b2d1101981430952b4a002b1a99657ed34e7507c9ca603d771dc7ac49455b3fa·...·]-1">)</span><span·class="w">
474 </span><span·class="nc">snmpa</span><span·class="p">:</span><span·class="nf">send_trap</span><span·class="p"·data-group-id="7938137191-3">(</span><span·class="n">Agent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Notification</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Community</span><span·class="w">·</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·286,·SHA:·c41c2aedc2e5a7ad686e61a6549dda43ebc6522aa05ab3a624a1673a74e396c8·...·]-3">)</span></code></pre><p>providing·the·registered·name·or·process·identifier·of·the·agent·where·the·MIB,474 </span><span·class="nc">snmpa</span><span·class="p">:</span><span·class="nf">send_trap</span><span·class="p"·data-group-id="5742632096-3">(</span><span·class="n">Agent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Notification</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Community</span><span·class="w">·</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·286,·SHA:·b717d4f090f0c89c80978c26ad6687efb078e9094818f775c0a09a4a8ba92846·...·]-3">)</span></code></pre><p>providing·the·registered·name·or·process·identifier·of·the·agent·where·the·MIB,
475 which·defines·the·notification·is·loaded·and·the·symbolic·name·of·the475 which·defines·the·notification·is·loaded·and·the·symbolic·name·of·the
476 notification.</p><p>If·the·<code·class="inline">send_notification/3,4</code>·function·is·used,·all·management·targets·are476 notification.</p><p>If·the·<code·class="inline">send_notification/3,4</code>·function·is·used,·all·management·targets·are
477 selected,·as·defined·in·RFC2273.·The·<code·class="inline">Receiver</code>·parameter·defines·where·the477 selected,·as·defined·in·RFC2273.·The·<code·class="inline">Receiver</code>·parameter·defines·where·the
478 agent·should·send·information·about·the·delivery·of·inform·requests.</p><p>If·the·<code·class="inline">send_notification/5</code>·function·is·used,·an·<code·class="inline">NotifyName</code>·must·be·provided.478 agent·should·send·information·about·the·delivery·of·inform·requests.</p><p>If·the·<code·class="inline">send_notification/5</code>·function·is·used,·an·<code·class="inline">NotifyName</code>·must·be·provided.
479 This·parameter·is·used·as·an·index·in·the·<code·class="inline">snmpNotifyTable</code>,·and·the·management479 This·parameter·is·used·as·an·index·in·the·<code·class="inline">snmpNotifyTable</code>,·and·the·management
480 targets·defined·by·that·single·entry·is·used.</p><p>The·<code·class="inline">send_notification/6</code>·function·is·the·most·general·version·of·the·function.480 targets·defined·by·that·single·entry·is·used.</p><p>The·<code·class="inline">send_notification/6</code>·function·is·the·most·general·version·of·the·function.
481 A·<code·class="inline">ContextName</code>·must·be·specified,·from·which·the·notification·will·be·sent.·If481 A·<code·class="inline">ContextName</code>·must·be·specified,·from·which·the·notification·will·be·sent.·If
Offset 611, 15 lines modifiedOffset 611, 15 lines modified
611 ······<p·class="built-using">611 ······<p·class="built-using">
612 ········Built·using612 ········Built·using
613 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the613 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
614 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>614 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
615 ······</p>615 ······</p>
616 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>616 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
617 ····</footer>617 ····</footer>
618 ··</div>618 ··</div>
619 </main>619 </main>
620 </div>620 </div>
621 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>621 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
622 <script>622 <script>
623 ··document.addEventListener("DOMContentLoaded",·function·()·{623 ··document.addEventListener("DOMContentLoaded",·function·()·{
772 B
html2text {}
Max HTML report size reached
1.69 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_agent_netif.html
    
Offset 263, 15 lines modifiedOffset 263, 15 lines modified
263 ······<p·class="built-using">263 ······<p·class="built-using">
264 ········Built·using264 ········Built·using
265 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the265 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
266 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>266 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
267 ······</p>267 ······</p>
268 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>268 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
269 ····</footer>269 ····</footer>
270 ··</div>270 ··</div>
271 </main>271 </main>
272 </div>272 </div>
273 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>273 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
274 <script>274 <script>
275 ··document.addEventListener("DOMContentLoaded",·function·()·{275 ··document.addEventListener("DOMContentLoaded",·function·()·{
872 B
html2text {}
Max HTML report size reached
44.9 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_app.html
    
Offset 136, 59 lines modifiedOffset 136, 59 lines modified
136 ··<a·href="#configuration"·class="hover-link">136 ··<a·href="#configuration"·class="hover-link">
137 ····<i·class="ri-link-m"·aria-hidden="true"></i>137 ····<i·class="ri-link-m"·aria-hidden="true"></i>
138 ··</a>138 ··</a>
139 ··<span·class="text">Configuration</span>139 ··<span·class="text">Configuration</span>
140 </h2>140 </h2>
141 <p>The·following·configuration·parameters·are·defined·for·the·SNMP·application.141 <p>The·following·configuration·parameters·are·defined·for·the·SNMP·application.
142 Refer·to·application(3)·for·more·information·about·configuration·parameters.</p><p>The·snmp·part·of·the·config·file·specifying·the·configuration·parameters·is142 Refer·to·application(3)·for·more·information·about·configuration·parameters.</p><p>The·snmp·part·of·the·config·file·specifying·the·configuration·parameters·is
143 basically·the·following·tuple:</p><pre><code·class="text">······{snmp,·snmp_components_config()}</code></pre><p>A·minimal·config·file·for·starting·a·node·with·both·a·manager·and·an·agent:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="2599771802-1">[</span><span·class="p"·data-group-id="2599771802-2">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">143 basically·the·following·tuple:</p><pre><code·class="text">······{snmp,·snmp_components_config()}</code></pre><p>A·minimal·config·file·for·starting·a·node·with·both·a·manager·and·an·agent:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="1550726221-1">[</span><span·class="p"·data-group-id="1550726221-2">{</span><span·class="ss">snmp</span><span·class="p">,</span><span·class="w">
144 ········</span><span·class="p"·data-group-id="2599771802-3">[</span><span·class="p"·data-group-id="2599771802-4">{</span><span·class="ss">agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2599771802-5">[</span><span·class="p"·data-group-id="2599771802-6">{</span><span·class="ss">db_dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/tmp/snmp/agent/db&quot;</span><span·class="p"·data-group-id="2599771802-6">}</span><span·class="p">,</span><span·class="w"> 
145 ··················</span><span·class="p"·data-group-id="2599771802-7">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2599771802-8">[</span><span·class="p"·data-group-id="2599771802-9">{</span><span·class="ss">dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/tmp/snmp/agent/conf&quot;</span><span·class="p"·data-group-id="2599771802-9">}</span><span·class="p"·data-group-id="2599771802-8">]</span><span·class="p"·data-group-id="2599771802-7">}</span><span·class="p"·data-group-id="2599771802-5">]</span><span·class="p"·data-group-id="2599771802-4">}</span><span·class="p">,</span><span·class="w"> 
146 ·········</span><span·class="p"·data-group-id="2599771802-10">{</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2599771802-11">[</span><span·class="p"·data-group-id="2599771802-12">{</span><span·c[·...·truncated·by·diffoscope;·len:·355,·SHA:·f0995f3012b4ee9cd6ff8934b9e6525964f3e56435b6421f45431eeacb2d2f7d·...·]">}</span><span·class="p">,</span><span·class="w">144 ········</span><span·class="p"·data-group-id="1550726221-3">[</span><span·class="p"·data-group-id="1550726221-4">{</span><span·class="ss">agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1550726221-5">[</span><span·class="[·...·truncated·by·diffoscope;·len:·214,·SHA:·6b8cb50c2515dadb9a2c97124d91aa9401c3f449454e3c78669b6f09ac810185·...·]">}</span><span·class="p">,</span><span·class="w">
 145 ··················</span><span·class="p"·data-group-id="1550726221-7">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1550726221-8">[</span><span·class="p"·data-group-id="1550726221-9">{</span><span·class="ss">dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/tmp/snmp/agent/conf&quot;</span><span·class="p"·data-group-id="1550726221-9">}</span><span·class="p"·data-group-id="1550726221-8">]</span><span·class="p"·data-group-id="1550726221-7">}</span><span·class="p"·data-group-id="1550726221-5">]</span><span·class="p"·data-group-id="1550726221-4">}</span><span·class="p">,</span><span·class="w">
 146 ·········</span><span·class="p"·data-group-id="1550726221-10">{</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1550726221-11">[</span><span·class="p"·data-group-id="1550726221-12">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1550726221-13">[</span><span·class="p"·data-group-id="1550726221-14">{</span><span·class="ss">dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/tmp/snmp/manager/conf&quot;</span><span·class="p"·data-group-id="1550726221-14">}</span><span·class="p">,</span><span·class="w">
147 ······························</span><span·class="p"·data-group-id="2599771802-15">{</span><span·class="ss">db_dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/tmp/snmp/manager/db&quot;</span><span·class="p"·data-group-id="2599771802-15">}</span><span·class="p"·data-group-id="2599771802-13">[·...·truncated·by·diffoscope;·len:·264,·SHA:·2635c8f5731a990518ee2def03a90f5518032be036c08b357cbd839d53404191·...·]-2">}</span><span·class="w">147 ······························</span><span·class="p"·data-group-id="1550726221-15">{</span><span·class="ss">db_dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/tmp/snmp/manager/db&quot;</span><span·class="p"·data-group-id="1550726221-15">}</span><span·class="p"·data-group-id="1550726221-13">[·...·truncated·by·diffoscope;·len:·264,·SHA:·259e63f0c53250c47389019f60c92fe26db612e572e11687f4e749de4dfdd25c·...·]-2">}</span><span·class="w">
148 ········</span><span·class="p"·data-group-id="2599771802-1">]</span><span·class="w">148 ········</span><span·class="p"·data-group-id="1550726221-1">]</span><span·class="w">
149 ·······</span><span·class="p">}</span><span·class="w">149 ·······</span><span·class="p">}</span><span·class="w">
150 ······</span><span·class="p">]</span><span·class="p">.</span></code></pre><p>Each·snmp·component·has·its·own·set·of·configuration·parameters,·even·though150 ······</span><span·class="p">]</span><span·class="p">.</span></code></pre><p>Each·snmp·component·has·its·own·set·of·configuration·parameters,·even·though
151 some·of·the·types·are·common·to·both·components.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="nf">snmp_components_config</span><span·class="p"·data-group-id="3120560523-1">(</span><span·class="p"·data-group-id="3120560523-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3120560523-2">[</span><span·class="nf">snmp_component_config</span><span·class="p"·data-group-id="3120560523-3">(</span><span·class="p"·data-group-id="3120560523-3">)</span><span·class="p"·data-group-id="3120560523-2">]</span><span·class="w"> 
152 ······</span><span·class="nf">snmp_component_config</span><span·class="p"·data-group-id="3120560523-4">(</span><span·class="p"·data-group-id="3120560523-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·705,·SHA:·5555ee87d5b7b051f7abeea231607ff3944b60dbddc66639b880e9974a02f083·...·]</span><span·class="w">151 some·of·the·types·are·common·to·both·components.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="nf">snmp_components_config</span><span·class="p"·data-group-id="8343570689-1">(</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·351,·SHA:·4361885b5c3efa055fd3adb24778d3a3adc868ebc267ad4042e5213c1f93839b·...·]</span><span·class="w">
 152 ······</span><span·class="nf">snmp_component_config</span><span·class="p"·data-group-id="8343570689-4">(</span><span·class="p"·data-group-id="8343570689-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8343570689-5">{</span><span·class="ss">agent</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">agent_options</span><span·class="p"·data-group-id="8343570689-6">(</span><span·class="p"·data-group-id="8343570689-6">)</span><span·class="p"·data-group-id="8343570689-5">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="8343570689-7">{</span><span·class="ss">manager</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">manager_options</span><span·class="p"·data-group-id="8343570689-8">(</span><span·class="p"·data-group-id="8343570689-8">)</span><span·class="p"·data-group-id="8343570689-7">}</span><span·class="w">
153 ······</span><span·class="nf">agent_options</span><span·class="p"·data-group-id="3120560523-9">(</span><span·class="p"·data-group-id="3120560523-9">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3120560523-10">[</span><span·class="nf">agent_option</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·18decfad263fedcf65102b7aca6f713510adef02c9c898e5e66c36d330ce8eb6·...·]-10">]</span><span·class="w">153 ······</span><span·class="nf">agent_options</span><span·class="p"·data-group-id="8343570689-9">(</span><span·class="p"·data-group-id="8343570689-9">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8343570689-10">[</span><span·class="nf">agent_option</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·130,·SHA:·a56f8f1b631f50a3d6e473fcda30baad53480e37a9690e9721783eb834c0dfc1·...·]-10">]</span><span·class="w">
154 ······</span><span·class="nf">agent_option</span><span·class="p"·data-group-id="3120560523-12">(</span><span·class="p"·data-group-id="3120560523-12">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3120560523-13">{</span><span·class="ss">restart_type</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·220,·SHA:·e0dab3a73a9ecd40862fd861c1a8f3da6db638a630a911665fccd270999bf04f·...·]-13">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">154 ······</span><span·class="nf">agent_option</span><span·class="p"·data-group-id="8343570689-12">(</span><span·class="p"·data-group-id="8343570689-12">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8343570689-13">{</span><span·class="ss">restart_type</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·220,·SHA:·f5d6ae42cff2f892c8f94d47c2401dd8f337fe71931a10da898d60f09449c53a·...·]-13">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
155 ·······················</span><span·class="p"·data-group-id="3120560523-15">{</span><span·class="ss">agent_type</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">agent_type</span><span·class="p"·data-group-id="3120560523-16">(</span><span·class="p"·data-group-id="3120560523-16">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·d1e923242d929e44ea04fc864cba7ba102138a5590c346657c04195629b4e7db·...·]-15">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">155 ·······················</span><span·class="p"·data-group-id="8343570689-15">{</span><span·class="ss">agent_type</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">agent_type</span><span·class="p"·data-group-id="8343570689-16">(</span><span·class="p"·data-group-id="8343570689-16">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·2927950d7b7dbe22e2040ae68da220f6689b92591231ba5ef1fc073565309928·...·]-15">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
156 ·······················</span><span·class="p"·data-group-id="3120560523-17">{</span><span·class="ss">agent_verbosity</span><span·class="p">,</span><span·class="w">··</span><span·class="nf">verbosity</span><span·class="p"·data-group-id="3120560523-18">(</span><span·class="p"·data-group-id="3120560523-18">)</span><span·class="p"·data-group-id="3120560523-17">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w"> 
157 ·······················</span><span·class="p"·data-group-id="3120560523-19">{</span><span·class="ss">discovery</span><span·class="p">,</span><span·class="w">········</span><span·class="nf">agent_discovery</span><span·class="p"·data-group-id="3120560523-20">(</span><span·class="p"·data-group-id="3120560523-20">)</span><span·class="p"·data-group-id="3120560523-19">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w"> 
158 ·······················</span><span·class="p"·data-group-id="3120560523-21">{</span><span·class="ss">versions</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">versions</span><span·class="p"·data-group-id="3120560523-22">(</span><span·class="p"·data-group-id="3120560523-22">)</span><span[·...·truncated·by·diffoscope;·len:·66,·SHA:·97e3b804f697a37b6ef93a64c4b5e65b564ec02e0f3b79beca07d51a4e1df356·...·]········</span><span·class="p">|</span><span·class="w">156 ·······················</span><span·class="p"·data-group-id="8343570689-17">{</span><span·class="ss">agent_verbosity</span><span·class="p">,</span><span·class="w">··</span><span·class="nf">verbosity</span><span·class="p"·data-group-id="8343570689-18">(</span><span·class="p"·data-group-id="8343570689-18">)</span><spa[·...·truncated·by·diffoscope;·len:·66,·SHA:·4522aaeb4a0863a4f59cc1c8ca8a8a779181e57cf59f176423005dfaf764d0b6·...·]········</span><span·class="p">|</span><span·class="w">
 157 ·······················</span><span·class="p"·data-group-id="8343570689-19">{</span><span·class="ss">discovery</span><span·class="p">,</span><span·class="w">········</span><span·class="nf">agent_discovery</span><span·class="p"·data-group-id="8343570689-20">(</span><span·class="p"·data-group-id="8343570689-20">)</span><span·class="p"·data-group-id="8343570689-19">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
 158 ·······················</span><span·class="p"·data-group-id="8343570689-21">{</span><span·class="ss">versions</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">versions</span><span·class="p"·data-group-id="8343570689-22">(</span><span·class="p"·data-group-id="8343570689-22">)</span><span·class="p"·data-group-id="8343570689-21">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">
159 ·······················</span><span·class="p"·data-group-id="3120560523-23">{</span><span·class="ss">gb_max_vbs</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">gb_max_vbs</span><span·class="p"·data-group-id="3120560523-24">(</span><span·class="p"·data-group-id="3120560523-24">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·d1e923242d929e44ea04fc864cba7ba102138a5590c346657c04195629b4e7db·...·]-23">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">159 ·······················</span><span·class="p"·data-group-id="8343570689-23">{</span><span·class="ss">gb_max_vbs</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">gb_max_vbs</span><span·class="p"·data-group-id="8343570689-24">(</span><span·class="p"·data-group-id="8343570689-24">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·2927950d7b7dbe22e2040ae68da220f6689b92591231ba5ef1fc073565309928·...·]-23">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
160 ·······················</span><span·class="p"·data-group-id="3120560523-25">{</span><span·class="ss">priority</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">priority</span><span·class="p"·data-group-id="3120560523-26">(</span><span·class="p"·data-group-id="3120560523-26">)</span><span·class="p"·data-group-id="3120560523-25">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w"> 
161 ·······················</span><span·class="p"·data-group-id="3120560523-27">{</span><span·class="ss">multi_threaded</span><span·class="p">,</span><span·class="w">···</span><span·class="nf">multi_threaded</span><span·class="p"·data-group-id="3120560523-28">(</span><span·class="p"·data-group-id="3120560523-28">)</span[·...·truncated·by·diffoscope;·len:·71,·SHA:·00809bcb9683ee748405a45b15ae4502be585a9fe77b52a38d2349cd52f65435·...·]···</span><span·class="p">|</span><span·class="w">160 ·······················</span><span·class="p"·data-group-id="8343570689-25">{</span><span·class="ss">priority</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">priority</span><span·class="p"·data-group-id="8343570689-26">(</span><span·class="p"·data-group-id="8343570689-26">)</span><span[·...·truncated·by·diffoscope;·len:·71,·SHA:·d2a39c32b8296f59c50925d5349c6a202a36c4c9cc9f17783cfe558c985c5790·...·]···</span><span·class="p">|</span><span·class="w">
 161 ·······················</span><span·class="p"·data-group-id="8343570689-27">{</span><span·class="ss">multi_threaded</span><span·class="p">,</span><span·class="w">···</span><span·class="nf">multi_threaded</span><span·class="p"·data-group-id="8343570689-28">(</span><span·class="p"·data-group-id="8343570689-28">)</span><span·class="p"·data-group-id="8343570689-27">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">
162 ·······················</span><span·class="p"·data-group-id="3120560523-29">{</span><span·class="ss">db_dir</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">db_dir</span><span·class="p"·data-group-id="3120560523-30">(</span><span·class="p"·data-group-id="3120560523-30">)</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·f0d2dc30f28ea4a4229521925c021a9be3fb497be3734f512dfa0c737d22637a·...·]-29">}</span><span·class="w">···········</span><span·class="p">|</span><span·class="w">162 ·······················</span><span·class="p"·data-group-id="8343570689-29">{</span><span·class="ss">db_dir</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">db_dir</span><span·class="p"·data-group-id="8343570689-30">(</span><span·class="p"·data-group-id="8343570689-30">)</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·cf2e10206bd2f818712fca2a935cae06e38d7a2e96bf8024c16b25d250fddbfd·...·]-29">}</span><span·class="w">···········</span><span·class="p">|</span><span·class="w">
163 ·······················</span><span·class="p"·data-group-id="3120560523-31">{</span><span·class="ss">db_init_error</span><span·class="p">,</span><span·class="w">····</span><span·class="nf">db_init_error</span><span·class="p"·data-group-id="3120560523-32">(</span><span·class="p"·data-group-id="3120560523-32">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·befe096f4e3d4753e0bd5b84d0558164654e9d90426f327cd6bd0c7c9bbef994·...·]-31">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">163 ·······················</span><span·class="p"·data-group-id="8343570689-31">{</span><span·class="ss">db_init_error</span><span·class="p">,</span><span·class="w">····</span><span·class="nf">db_init_error</span><span·class="p"·data-group-id="8343570689-32">(</span><span·class="p"·data-group-id="8343570689-32">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·7e02500607ef40aa564900b5ab21287bf8240b9bb710acdf1307300c2260ff78·...·]-31">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
164 ·······················</span><span·class="p"·data-group-id="3120560523-33">{</span><span·class="ss">local_db</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">local_db</span><span·class="p"·data-group-id="3120560523-34">(</span><span·class="p"·data-group-id="3120560523-34">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·b1817ee731a00f8b72209b6bf37385eb2ff03204a29b20ad2b63c7045e55c6a3·...·]-33">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">164 ·······················</span><span·class="p"·data-group-id="8343570689-33">{</span><span·class="ss">local_db</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">local_db</span><span·class="p"·data-group-id="8343570689-34">(</span><span·class="p"·data-group-id="8343570689-34">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·8811ef4bb3d8b3a1c81209e816ad0cc8c34783215bd6a8e4f4c50cde208d1ced·...·]-33">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">
165 ·······················</span><span·class="p"·data-group-id="3120560523-35">{</span><span·class="ss">net_if</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">agent_net_if</span><span·class="p"·data-group-id="3120560523-36">(</span><span·class="p"·data-group-id="3120560523-36">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·4e63065a7a1031b361b4a404060d73efb4eac0464256e5ed167c37943c2bfdd8·...·]-35">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">165 ·······················</span><span·class="p"·data-group-id="8343570689-35">{</span><span·class="ss">net_if</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">agent_net_if</span><span·class="p"·data-group-id="8343570689-36">(</span><span·class="p"·data-group-id="8343570689-36">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·5ff0edf913e6ab3422ba4b40b30167d7b28bbadf79a139e1b725bb314b836eae·...·]-35">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
166 ·······················</span><span·class="p"·data-group-id="3120560523-37">{</span><span·class="ss">mibs</span><span·class="p">,</span><span·class="w">·············</span><span·class="nf">mibs</span><span·class="p"·data-group-id="3120560523-38">(</span><span·class="p"·data-group-id="3120560523-38">)</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·ff2ac1755db1dcfe2da1683e57ad53803d6acdab7c67f34bcfd433357ee2b64e·...·]-37">}</span><span·class="w">·············</span><span·class="p">|</span><span·class="w">166 ·······················</span><span·class="p"·data-group-id="8343570689-37">{</span><span·class="ss">mibs</span><span·class="p">,</span><span·class="w">·············</span><span·class="nf">mibs</span><span·class="p"·data-group-id="8343570689-38">(</span><span·class="p"·data-group-id="8343570689-38">)</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·ef69287bea6decb5ec85fef51aa0c554945cb5658e8ddb7a77ce7614841eaf4b·...·]-37">}</span><span·class="w">·············</span><span·class="p">|</span><span·class="w">
167 ·······················</span><span·class="p"·data-group-id="3120560523-39">{</span><span·class="ss">mib_storage</span><span·class="p">,</span><span·class="w">······</span><span·class="nf">mib_storage</span><span·class="p"·data-group-id="3120560523-40">(</span><span·class="p"·data-group-id="3120560523-40">)</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·2e1d4ac44bddaca4ee6fef379c1f3bf34177257e3d0c37e7ef608cfd8a4967a0·...·]-39">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">167 ·······················</span><span·class="p"·data-group-id="8343570689-39">{</span><span·class="ss">mib_storage</span><span·class="p">,</span><span·class="w">······</span><span·class="nf">mib_storage</span><span·class="p"·data-group-id="8343570689-40">(</span><span·class="p"·data-group-id="8343570689-40">)</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·b03e8a13ad31600e2a6fe3fc111038bf2d13e8649e7919e87c1e534e9e37adee·...·]-39">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">
168 ·······················</span><span·class="p"·data-group-id="3120560523-41">{</span><span·class="ss">mib_server</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">mib_server</span><span·class="p"·data-group-id="3120560523-42">(</span><span·class="p"·data-group-id="3120560523-42">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·d1e923242d929e44ea04fc864cba7ba102138a5590c346657c04195629b4e7db·...·]-41">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">168 ·······················</span><span·class="p"·data-group-id="8343570689-41">{</span><span·class="ss">mib_server</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">mib_server</span><span·class="p"·data-group-id="8343570689-42">(</span><span·class="p"·data-group-id="8343570689-42">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·2927950d7b7dbe22e2040ae68da220f6689b92591231ba5ef1fc073565309928·...·]-41">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
169 ·······················</span><span·class="p"·data-group-id="3120560523-43">{</span><span·class="ss">audit_trail_log</span><span·class="p">,</span><span·class="w">··</span><span·class="nf">audit_trail_log</span><span·class="p"·data-group-id="3120560523-44">(</span><span·class="p"·data-group-id="3120560523-44">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·787dc478e2a5f03645854953d52a2575c656be1e0d608af9c149fa8b47440fdb·...·]-43">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">169 ·······················</span><span·class="p"·data-group-id="8343570689-43">{</span><span·class="ss">audit_trail_log</span><span·class="p">,</span><span·class="w">··</span><span·class="nf">audit_trail_log</span><span·class="p"·data-group-id="8343570689-44">(</span><span·class="p"·data-group-id="8343570689-44">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·63275709e62b6890750ffccd2e9cff15568b71f5710d16be2b60754867b17ade·...·]-43">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
170 ·······················</span><span·class="p"·data-group-id="3120560523-45">{</span><span·class="ss">error_report_mod</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">error_report_mod</span><span·class="p"·data-group-id="3120560523-46">(</span><span·class="p"·data-group-id="3120560523-46">)</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·8f6b1b89d865da304ebbf62f9d15d13c4e805ca396679259da258a357b3a972e·...·]-45">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">170 ·······················</span><span·class="p"·data-group-id="8343570689-45">{</span><span·class="ss">error_report_mod</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">error_report_mod</span><span·class="p"·data-group-id="8343570689-46">(</span><span·class="p"·data-group-id="8343570689-46">)</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·63dda069154a934ef51989e3c27a4df535d40c8199be46e260fda273f334201f·...·]-45">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
171 ·······················</span><span·class="p"·data-group-id="3120560523-47">{</span><span·class="ss">note_store</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">note_store</span><span·class="p"·data-group-id="3120560523-48">(</span><span·class="p"·data-group-id="3120560523-48">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·d1e923242d929e44ea04fc864cba7ba102138a5590c346657c04195629b4e7db·...·]-47">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">171 ·······················</span><span·class="p"·data-group-id="8343570689-47">{</span><span·class="ss">note_store</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">note_store</span><span·class="p"·data-group-id="8343570689-48">(</span><span·class="p"·data-group-id="8343570689-48">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·2927950d7b7dbe22e2040ae68da220f6689b92591231ba5ef1fc073565309928·...·]-47">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
172 ·······················</span><span·class="p"·data-group-id="3120560523-49">{</span><span·class="ss">symbolic_store</span><span·class="p">,</span><span·class="w">···</span><span·class="nf">symbolic_store</span><span·class="p"·data-group-id="3120560523-50">(</span><span·class="p"·data-group-id="3120560523-50">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·a2003fc9d2e4cb6af21150190c60438a469fbcecf31a75cfadd113e85ff784d1·...·]-49">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">172 ·······················</span><span·class="p"·data-group-id="8343570689-49">{</span><span·class="ss">symbolic_store</span><span·class="p">,</span><span·class="w">···</span><span·class="nf">symbolic_store</span><span·class="p"·data-group-id="8343570689-50">(</span><span·class="p"·data-group-id="8343570689-50">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·7254147b1078b4ac9cfa46b52f879d07495bad20197702745422459e6f8c62d4·...·]-49">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">
173 ·······················</span><span·class="p"·data-group-id="3120560523-51">{</span><span·class="ss">target_cache</span><span·class="p">,</span><span·class="w">·····</span><span·class="nf">target_cache</span><span·class="p"·data-group-id="3120560523-52">(</span><span·class="p"·data-group-id="3120560523-52">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·4e63065a7a1031b361b4a404060d73efb4eac0464256e5ed167c37943c2bfdd8·...·]-51">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">173 ·······················</span><span·class="p"·data-group-id="8343570689-51">{</span><span·class="ss">target_cache</span><span·class="p">,</span><span·class="w">·····</span><span·class="nf">target_cache</span><span·class="p"·data-group-id="8343570689-52">(</span><span·class="p"·data-group-id="8343570689-52">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·5ff0edf913e6ab3422ba4b40b30167d7b28bbadf79a139e1b725bb314b836eae·...·]-51">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
174 ·······················</span><span·class="p"·data-group-id="3120560523-53">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">agent_config</span><span·class="p"·data-group-id="3120560523-54">(</span><span·class="p"·data-group-id="3120560523-54">)</span><span·class="p"·data-group-id="3120560523-53">}</span><span·class="w"> 
175 ······</span><span·class="nf">manager_options</span><span·class="p"·data-group-id="3120560523-55">(</span><span·class="p"·data-group-id="3120560523-55">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·217,·SHA:·7d229307c89fc768142c61ff1c058f480e35d20f508ee7bfd09d7f14d5d22b55·...·]</span><span·class="w">174 ·······················</span><span·class="p"·data-group-id="8343570689-53">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">agent_config</span><span·class="p"·data-group-id="8343570689-54">(</span>[·...·truncated·by·diffoscope;·len:·101,·SHA:·f2b344e92e2477d4adc292c3480e20a31024cf1f090f7e5e3334d32ecf82c6b2·...·]</span><span·class="w">
 175 ······</span><span·class="nf">manager_options</span><span·class="p"·data-group-id="8343570689-55">(</span><span·class="p"·data-group-id="8343570689-55">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8343570689-56">[</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="8343570689-57">(</span><span·class="p"·data-group-id="8343570689-57">)</span><span·class="p"·data-group-id="8343570689-56">]</span><span·class="w">
176 ······</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="3120560523-58">(</span><span·class="p"·data-group-id="3120560523-58">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3120560523-59">{</span><span·class="ss">restart_type</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·228,·SHA:·981995f30f7cdcf1220b4e5d2c98f528f2cfccba3490633f8327ad39606b1158·...·]-59">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">176 ······</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="8343570689-58">(</span><span·class="p"·data-group-id="8343570689-58">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="8343570689-59">{</span><span·class="ss">restart_type</span><span·class="p">,[·...·truncated·by·diffoscope;·len:·228,·SHA:·6be7443ac1d27eea170178245ccb5e8d1de4dbc9ce59954f43e134cd1ea1709e·...·]-59">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
177 ·························</span><span·class="p"·data-group-id="3120560523-61">{</span><span·class="ss">net_if</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">manager_net_if</span><span·class="p"·data-group-id="3120560523-62">(</span><span·class="p"·data-group-id="3120560523-62"[·...·truncated·by·diffoscope;·len:·50,·SHA:·c6c905a4046c4c0d980905ffdddde2046459ab01a1374e6ab617218e3dcd63a1·...·]-61">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">177 ·························</span><span·class="p"·data-group-id="8343570689-61">{</span><span·class="ss">net_if</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">manager_net_if</span><span·class="p"·data-group-id="8343570689-62">(</span><span·class="p"·data-group-id="8343570689-62"[·...·truncated·by·diffoscope;·len:·50,·SHA:·d84353beb048b9af4c7b2b07b1d24a57dddc79186e4872977d2fbf8f299a62f4·...·]-61">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
178 ·························</span><span·class="p"·data-group-id="3120560523-63">{</span><span·class="ss">server</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">server</span><span·class="p"·data-group-id="3120560523-64">(</span><span·class="p"·data-group-id="3120560523-64">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·a2003fc9d2e4cb6af21150190c60438a469fbcecf31a75cfadd113e85ff784d1·...·]-63">}</span><span·class="w">··········</span><span·class="p">|</span><span·class="w">178 ·························</span><span·class="p"·data-group-id="8343570689-63">{</span><span·class="ss">server</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">server</span><span·class="p"·data-group-id="8343570689-64">(</span><span·class="p"·data-group-id="8343570689-64">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·7254147b1078b4ac9cfa46b52f879d07495bad20197702745422459e6f8c62d4·...·]-63">}</span><span·class="w">··········</span><span·class="p">|</span><span·class="w">
179 ·························</span><span·class="p"·data-group-id="3120560523-65">{</span><span·class="ss">note_store</span><span·class="p">,</span><span·class="w">···············</span><span·class="nf">note_store</span><span·class="p"·data-group-id="3120560523-66">(</span><span·class="p"·data-group-id="3120560523-66">)</[·...·truncated·by·diffoscope;·len:·46,·SHA:·83cb70a280fac47be840ca57d1f09c4a3ecdba567c6911b4a29122c49b261b97·...·]-65">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">179 ·························</span><span·class="p"·data-group-id="8343570689-65">{</span><span·class="ss">note_store</span><span·class="p">,</span><span·class="w">···············</span><span·class="nf">note_store</span><span·class="p"·data-group-id="8343570689-66">(</span><span·class="p"·data-group-id="8343570689-66">)</[·...·truncated·by·diffoscope;·len:·46,·SHA:·83b57a427e8084b8dce866c39461216ca195a0e4d591a944392e9c0e7e57270f·...·]-65">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">
180 ·························</span><span·class="p"·data-group-id="3120560523-67">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">manager_config</span><span·class="p"·data-group-id="3120560523-68">(</span><span·class="p"·data-group-id="3120560523-68"[·...·truncated·by·diffoscope;·len:·50,·SHA:·c6c905a4046c4c0d980905ffdddde2046459ab01a1374e6ab617218e3dcd63a1·...·]-67">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">180 ·························</span><span·class="p"·data-group-id="8343570689-67">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">manager_config</span><span·class="p"·data-group-id="8343570689-68">(</span><span·class="p"·data-group-id="8343570689-68"[·...·truncated·by·diffoscope;·len:·50,·SHA:·d84353beb048b9af4c7b2b07b1d24a57dddc79186e4872977d2fbf8f299a62f4·...·]-67">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
181 ·························</span><span·class="p"·data-group-id="3120560523-69">{</span><span·class="ss">inform_request_behaviour</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">manager_irb</span><span·class="p"·data-group-id="3120560523-70">(</span><span·class="p"·data-group-id="3120560523-70">)<[·...·truncated·by·diffoscope;·len:·47,·SHA:·37a17b023a86eaf54ce821c49a26885415ad5757100319023280d17d08ea602b·...·]-69">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">181 ·························</span><span·class="p"·data-group-id="8343570689-69">{</span><span·class="ss">inform_request_behaviour</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">manager_irb</span><span·class="p"·data-group-id="8343570689-70">(</span><span·class="p"·data-group-id="8343570689-70">)<[·...·truncated·by·diffoscope;·len:·47,·SHA:·cfa11b9fb54980f963505f6adf6f9e73f5f78447d148e885f759a910d5b6d698·...·]-69">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
182 ·························</span><span·class="p"·data-group-id="3120560523-71">{</span><span·class="ss">mibs</span><span·class="p">,</span><span·class="w">·····················</span><span·class="nf">manager_mibs</span><span·class="p"·data-group-id="3120560523-72">(</span><span·class="p"·data-group-id="3120560523-72">)[·...·truncated·by·diffoscope;·len:·48,·SHA:·46490b031fef973cc94ef28daed734bc6820d65da1971c3757f7d20a2acd703b·...·]-71">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">182 ·························</span><span·class="p"·data-group-id="8343570689-71">{</span><span·class="ss">mibs</span><span·class="p">,</span><span·class="w">·····················</span><span·class="nf">manager_mibs</span><span·class="p"·data-group-id="8343570689-72">(</span><span·class="p"·data-group-id="8343570689-72">)[·...·truncated·by·diffoscope;·len:·48,·SHA:·e3f719e33c7c890f74c55852f2cd4af4cb7bd62a0e9c8dcc7c70604ef710863d·...·]-71">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
183 ·························</span><span·class="p"·data-group-id="3120560523-73">{</span><span·class="ss">priority</span><span·class="p">,</span><span·class="w">·················</span><span·class="nf">priority</span><span·class="p"·data-group-id="3120560523-74">(</span><span·class="p"·data-group-id="3120560523-74">)</span><span·class="p"·data-group-id="3120560523-73">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w"> 
184 ·························</span><span·class="p"·data-group-id="3120560523-75">{</span><span·class="ss">audit_trail_log</span><span·class="p">,</span><span·class="w">··········</span><span·class="nf">audit_trail_log</span><span·class="p"·data-group-id="3120560523-76">(</span><span·class="p"·data-group-id="3120560523-76">)</span><span·class="p"·data-group-id="3120560523-75">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w"> 
185 ·························</span><span·class="p"·data-group-id="3120560523-77">{</span><span·class="ss">versions</span><span·class="p">,</span><span·class="w">·················</span><span·class="nf">versions</span><span·class="p"·data-group-id="3120560523-78">(</span><span·class="p"·data-group-id="3120560523-78">)</sp[·...·truncated·by·diffoscope;·len:·47,·SHA:·903004e703d7afca5c928f7e85289794d0caadd91427688c46e6b1a1e6b5f707·...·]">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">183 ·························</span><span·class="p"·data-group-id="8343570689-73">{</span><span·class="ss">priority</span><span·class="p">,</span><span·class="w">·················</span><span·class="nf">priority</span><span·class="p"·data-group-id="8343570689-74">(</span><span·class="p"·data-group-id="8343570689-74">)</sp[·...·truncated·by·diffoscope;·len:·47,·SHA:·8e93913f263efff8a3bdd3f2835e3ada65da58a6d7589cd4a643f7f6109ed43b·...·]">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
 184 ·························</span><span·class="p"·data-group-id="8343570689-75">{</span><span·class="ss">audit_trail_log</span><span·class="p">,</span><span·class="w">··········</span><span·class="nf">audit_trail_log</span><span·class="p"·data-group-id="8343570689-76">(</span><span·class="p"·data-group-id="8343570689-76">)</span><span·class="p"·data-group-id="8343570689-75">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
 185 ·························</span><span·class="p"·data-group-id="8343570689-77">{</span><span·class="ss">versions</span><span·class="p">,</span><span·class="w">·················</span><span·class="nf">versions</span><span·class="p"·data-group-id="8343570689-78">(</span><span·class="p"·data-group-id="8343570689-78">)</span><span·class="p"·data-group-id="8343570689-77">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
186 ·························</span><span·class="p"·data-group-id="3120560523-79">{</span><span·class="ss">def_user_mod</span><span·class="p">,</span><span·class="w">·············</span><span·class="nf">def_user_module</span><span·class="p"·data-group-id="3120560523-80">(</span><span·class="p"·data-group-id="3120560523-80">)</span><span·class="w">··</span><span·class="p">|</span><span·class="w">186 ·························</span><span·class="p"·data-group-id="8343570689-79">{</span><span·class="ss">def_user_mod</span><span·class="p">,</span><span·class="w">·············</span><span·class="nf">def_user_module</span><span·class="p"·data-group-id="8343570689-80">(</span><span·class="p"·data-group-id="8343570689-80">)</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
187 ·························</span><span·class="p"·data-group-id="3120560523-81">{</span><span·class="ss">def_user_data</span><span·class="p">,</span><span·class="w">············</span><span·class="nf">def_user_data</span><span·class="p"·data-group-id="3120560523-82">(</span><span·class="p"·data-group-id="3120560523-82">[·...·truncated·by·diffoscope;·len:·49,·SHA:·a20285787edfd6abda826ca6a03ecb47ae8a9bb0b5f82442af900a7586dda50c·...·]-81">}</span></code></pre><p><a·href=""·id="agent_opts_and_types"></a></p><p>Agent·specific·config·options·and·types:</p><ul><li><p><strong><code·class="inline"·id="agent_type">agent_type()·=·master·|·sub·&lt;optional&gt;</code></strong>·-·If·<code·class="inline">master</code>,187 ·························</span><span·class="p"·data-group-id="8343570689-81">{</span><span·class="ss">def_user_data</span><span·class="p">,</span><span·class="w">············</span><span·class="nf">def_user_data</span><span·class="p"·data-group-id="8343570689-82">(</span><span·class="p"·data-group-id="8343570689-82">[·...·truncated·by·diffoscope;·len:·49,·SHA:·5aa5039b2c651e93c037d89c5225440b5e12e8eb0ac39f7f60cd375dd9938126·...·]-81">}</span></code></pre><p><a·href=""·id="agent_opts_and_types"></a></p><p>Agent·specific·config·options·and·types:</p><ul><li><p><strong><code·class="inline"·id="agent_type">agent_type()·=·master·|·sub·&lt;optional&gt;</code></strong>·-·If·<code·class="inline">master</code>,
188 one·master·agent·is·started.·Otherwise,·no·agents·are·started.</p><p>Default·is·<code·class="inline">master</code>.</p></li><li><p><strong><code·class="inline"·id="agent_disco">agent_discovery()·=·[agent_discovery_opt()]·&lt;optional&gt;</code></strong>·-188 one·master·agent·is·started.·Otherwise,·no·agents·are·started.</p><p>Default·is·<code·class="inline">master</code>.</p></li><li><p><strong><code·class="inline"·id="agent_disco">agent_discovery()·=·[agent_discovery_opt()]·&lt;optional&gt;</code></strong>·-
189 <code·class="inline">agent_discovery_opt()·=·{terminating,·agent_terminating_discovery_opts()}·|·{originating,·agent_originating_discovery_opts()}</code></p><p>The·<code·class="inline">terminating</code>·options·effects·discovery·initiated·by·a·manager.</p><p>The·<code·class="inline">originating</code>·options·effects·discovery·initiated·by·this·agent.</p><p>For·defaults·see·the·options·in·<code·class="inline">agent_discovery_opt()</code>.</p></li><li><p><strong><code·class="inline"·id="agent_term_disco_opts">agent_terminating_discovery_opts()·=·[agent_terminating_discovery_opt()]·&lt;optional&gt;</code></strong>·-189 <code·class="inline">agent_discovery_opt()·=·{terminating,·agent_terminating_discovery_opts()}·|·{originating,·agent_originating_discovery_opts()}</code></p><p>The·<code·class="inline">terminating</code>·options·effects·discovery·initiated·by·a·manager.</p><p>The·<code·class="inline">originating</code>·options·effects·discovery·initiated·by·this·agent.</p><p>For·defaults·see·the·options·in·<code·class="inline">agent_discovery_opt()</code>.</p></li><li><p><strong><code·class="inline"·id="agent_term_disco_opts">agent_terminating_discovery_opts()·=·[agent_terminating_discovery_opt()]·&lt;optional&gt;</code></strong>·-
190 <code·class="inline">agent_terminating_discovery_opt()·=·{enable,·boolean()}·|·{stage2,·discovery·|·plain}·|·{trigger_username,·string()}</code></p><p>These·are·options·effecting·discovery·<code·class="inline">terminating</code>·in·this·agent·(i.e.190 <code·class="inline">agent_terminating_discovery_opt()·=·{enable,·boolean()}·|·{stage2,·discovery·|·plain}·|·{trigger_username,·string()}</code></p><p>These·are·options·effecting·discovery·<code·class="inline">terminating</code>·in·this·agent·(i.e.
191 initiated·by·a·manager).</p><p>The·default·values·for·the·<code·class="inline">terminating</code>·discovery·options·are:</p><ul><li>enable:·<code·class="inline">true</code></li><li>stage2:·<code·class="inline">discovery</code></li><li>trigger_username:·<code·class="inline">&quot;&quot;</code></li></ul></li><li><p><strong><code·class="inline"·id="agent_orig_disco_opts">agent_originating_discovery_opts()·=·[agent_originating_discovery_opt()]·&lt;optional&gt;</code></strong>·-191 initiated·by·a·manager).</p><p>The·default·values·for·the·<code·class="inline">terminating</code>·discovery·options·are:</p><ul><li>enable:·<code·class="inline">true</code></li><li>stage2:·<code·class="inline">discovery</code></li><li>trigger_username:·<code·class="inline">&quot;&quot;</code></li></ul></li><li><p><strong><code·class="inline"·id="agent_orig_disco_opts">agent_originating_discovery_opts()·=·[agent_originating_discovery_opt()]·&lt;optional&gt;</code></strong>·-
192 <code·class="inline">agent_originating_discovery_opt()·=·{enable,·boolean()}</code></p><p>These·are·options·effecting·discovery·<code·class="inline">originating</code>·in·this·agent.</p><p>The·default·values·for·the·<code·class="inline">originating</code>·discovery·options·are:</p><ul><li>enable:·<code·class="inline">true</code></li></ul></li><li><p><strong><code·class="inline"·id="agent_mt">multi_threaded()·=·bool()·|·extended·&lt;optional&gt;</code></strong>·-·If192 <code·class="inline">agent_originating_discovery_opt()·=·{enable,·boolean()}</code></p><p>These·are·options·effecting·discovery·<code·class="inline">originating</code>·in·this·agent.</p><p>The·default·values·for·the·<code·class="inline">originating</code>·discovery·options·are:</p><ul><li>enable:·<code·class="inline">true</code></li></ul></li><li><p><strong><code·class="inline"·id="agent_mt">multi_threaded()·=·bool()·|·extended·&lt;optional&gt;</code></strong>·-·If
193 <code·class="inline">true</code>·(or·<code·class="inline">extended</code>),·the·agent·is·multi-threaded,·with·one·thread·for·each193 <code·class="inline">true</code>·(or·<code·class="inline">extended</code>),·the·agent·is·multi-threaded,·with·one·thread·for·each
194 get·request.</p><p>The·value·<code·class="inline">extended</code>·means·that·a·special·'process'·is·also·created·intended194 get·request.</p><p>The·value·<code·class="inline">extended</code>·means·that·a·special·'process'·is·also·created·intended
Offset 421, 15 lines modifiedOffset 421, 15 lines modified
421 ······<p·class="built-using">421 ······<p·class="built-using">
422 ········Built·using422 ········Built·using
423 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the423 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
424 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>424 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
425 ······</p>425 ······</p>
426 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>426 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
427 ····</footer>427 ····</footer>
428 ··</div>428 ··</div>
429 </main>429 </main>
430 </div>430 </div>
431 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>431 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
432 <script>432 <script>
433 ··document.addEventListener("DOMContentLoaded",·function·()·{433 ··document.addEventListener("DOMContentLoaded",·function·()·{
626 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_app_a.html
    
Offset 179, 15 lines modifiedOffset 179, 15 lines modified
179 ······<p·class="built-using">179 ······<p·class="built-using">
180 ········Built·using180 ········Built·using
181 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the181 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
182 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>182 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
183 ······</p>183 ······</p>
184 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>184 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
185 ····</footer>185 ····</footer>
186 ··</div>186 ··</div>
187 </main>187 </main>
188 </div>188 </div>
189 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>189 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
190 <script>190 <script>
191 ··document.addEventListener("DOMContentLoaded",·function·()·{191 ··document.addEventListener("DOMContentLoaded",·function·()·{
686 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_app_b.html
    
Offset 649, 15 lines modifiedOffset 649, 15 lines modified
649 ······<p·class="built-using">649 ······<p·class="built-using">
650 ········Built·using650 ········Built·using
651 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the651 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
652 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>652 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
653 ······</p>653 ······</p>
654 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>654 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
655 ····</footer>655 ····</footer>
656 ··</div>656 ··</div>
657 </main>657 </main>
658 </div>658 </div>
659 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>659 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
660 <script>660 <script>
661 ··document.addEventListener("DOMContentLoaded",·function·()·{661 ··document.addEventListener("DOMContentLoaded",·function·()·{
638 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_app_c.html
    
Offset 186, 15 lines modifiedOffset 186, 15 lines modified
186 ······<p·class="built-using">186 ······<p·class="built-using">
187 ········Built·using187 ········Built·using
188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the188 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>189 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
190 ······</p>190 ······</p>
191 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>191 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
192 ····</footer>192 ····</footer>
193 ··</div>193 ··</div>
194 </main>194 </main>
195 </div>195 </div>
196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>196 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
197 <script>197 <script>
198 ··document.addEventListener("DOMContentLoaded",·function·()·{198 ··document.addEventListener("DOMContentLoaded",·function·()·{
679 B
html2text {}
Max HTML report size reached
1.67 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_audit_trail_log.html
    
Offset 198, 15 lines modifiedOffset 198, 15 lines modified
198 ······<p·class="built-using">198 ······<p·class="built-using">
199 ········Built·using199 ········Built·using
200 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the200 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
201 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>201 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
202 ······</p>202 ······</p>
203 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>203 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
204 ····</footer>204 ····</footer>
205 ··</div>205 ··</div>
206 </main>206 </main>
207 </div>207 </div>
208 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>208 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
209 <script>209 <script>
210 ··document.addEventListener("DOMContentLoaded",·function·()·{210 ··document.addEventListener("DOMContentLoaded",·function·()·{
850 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_community_mib.html
    
Offset 615, 15 lines modifiedOffset 615, 15 lines modified
615 ······<p·class="built-using">615 ······<p·class="built-using">
616 ········Built·using616 ········Built·using
617 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the617 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
618 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>618 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
619 ······</p>619 ······</p>
620 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>620 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
621 ····</footer>621 ····</footer>
622 ··</div>622 ··</div>
623 </main>623 </main>
624 </div>624 </div>
625 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>625 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
626 <script>626 <script>
627 ··document.addEventListener("DOMContentLoaded",·function·()·{627 ··document.addEventListener("DOMContentLoaded",·function·()·{
617 B
html2text {}
Max HTML report size reached
36.5 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_config.html
    
Offset 141, 49 lines modifiedOffset 141, 49 lines modified
141 <a·href="snmp_agent_config_files.html">Definition·of·Agent·Configuration·Files</a>·for·more141 <a·href="snmp_agent_config_files.html">Definition·of·Agent·Configuration·Files</a>·for·more
142 information).</li><li>the·<em>database·directory</em>·stores·the·internal·database·files.</li></ul><p>The·following·directory·must·exist·in·the·system·to·run·the·manager:</p><ul><li>the·<em>configuration·directory</em>·stores·all·configuration·files·used·by·the142 information).</li><li>the·<em>database·directory</em>·stores·the·internal·database·files.</li></ul><p>The·following·directory·must·exist·in·the·system·to·run·the·manager:</p><ul><li>the·<em>configuration·directory</em>·stores·all·configuration·files·used·by·the
143 manager·(refer·to·the·chapter143 manager·(refer·to·the·chapter
144 <a·href="snmp_manager_config_files.html">Definition·of·Manager·Configuration·Files</a>·for144 <a·href="snmp_manager_config_files.html">Definition·of·Manager·Configuration·Files</a>·for
145 more·information).</li><li>the·<em>database·directory</em>·stores·the·internal·database·files.</li></ul><p>The·agent·and·manager·uses·(application)·configuration·parameters·to·find·out145 more·information).</li><li>the·<em>database·directory</em>·stores·the·internal·database·files.</li></ul><p>The·agent·and·manager·uses·(application)·configuration·parameters·to·find·out
146 where·these·directories·are·located.·The·parameters·should·be·defined·in·an146 where·these·directories·are·located.·The·parameters·should·be·defined·in·an
147 Erlang·system·configuration·file.·The·following·configuration·parameters·are147 Erlang·system·configuration·file.·The·following·configuration·parameters·are
148 defined·for·the·SNMP·application:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="nf">agent_options</span><span·class="p"·data-group-id="1411325630-1">(</span><span·class="p"·data-group-id="1411325630-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1411325630-2">[</span><span·class="nf">agent_option</span><span·class="p"·data-group-id="1411325630-3">(</span><span·class="p"·data-group-id="1411325630-3">)</span><span·class="p"·data-group-id="1411325630-2">]</span><span·class="w"> 
149 ······</span><span·class="nf">agent_option</span><span·class="p"·data-group-id="1411325630-4">(</span><span·class="p"·data-group-id="1411325630-4">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·352,·SHA:·9a4d5698211d642d0d4d67485e1e2750d7f0ef60ce4c19de247241b1dcfafa56·...·]</span><span·class="w">148 defined·for·the·SNMP·application:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="nf">agent_options</span><span·class="p"·data-group-id="1015866599-1">(</span><span·class="p"·data-group-id="1015866599-1">)</span[·...·truncated·by·diffoscope;·len:·314,·SHA:·574cd18b37d14aa3d0d86c8d08ae45a27740d627654e04f48fa5214faec3e7ea·...·]</span><span·class="w">
 149 ······</span><span·class="nf">agent_option</span><span·class="p"·data-group-id="1015866599-4">(</span><span·class="p"·data-group-id="1015866599-4">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1015866599-5">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="w">·····</span><span·class="nf">restart_type</span><span·class="p"·data-group-id="1015866599-6">(</span><span·class="p"·data-group-id="1015866599-6">)</span><span·class="p"·data-group-id="1015866599-5">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
150 ·······················</span><span·class="p"·data-group-id="1411325630-7">{</span><span·class="ss">agent_type</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">agent_type</span><span·class="p"·data-group-id="1411325630-8">(</span><span·class="p"·data-group-id="1411325630-8">)</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·e02345d55904f1f27ba06dc0f42acf886b4351757b03c7e3fa5a47077b50d281·...·]-7">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">150 ·······················</span><span·class="p"·data-group-id="1015866599-7">{</span><span·class="ss">agent_type</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">agent_type</span><span·class="p"·data-group-id="1015866599-8">(</span><span·class="p"·data-group-id="1015866599-8">)</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·af726559e69b812a6788e20b9556ffd97baba2cb3029b6560b84692457bfed12·...·]-7">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
151 ·······················</span><span·class="p"·data-group-id="1411325630-9">{</span><span·class="ss">agent_verbosity</span><span·class="p">,</span><span·class="w">··</span><span·class="nf">verbosity</span><span·class="p"·data-group-id="1411325630-10">(</span><span·class="p"·data-group-id="1411325630-10">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·f2eeeba3618f222b3dab3d9d0faf6fd49a1c7d9f6f09ddd652653df0a16ae9f5·...·]-9">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">151 ·······················</span><span·class="p"·data-group-id="1015866599-9">{</span><span·class="ss">agent_verbosity</span><span·class="p">,</span><span·class="w">··</span><span·class="nf">verbosity</span><span·class="p"·data-group-id="1015866599-10">(</span><span·class="p"·data-group-id="1015866599-10">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·6d526bed1295a2a9987448964a68317edf6ccdd2c1c1f3afbc38e5dd43fefc99·...·]-9">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
152 ·······················</span><span·class="p"·data-group-id="1411325630-11">{</span><span·class="ss">versions</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">versions</span><span·class="p"·data-group-id="1411325630-12">(</span><span·class="p"·data-group-id="1411325630-12">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·f2eeeba3618f222b3dab3d9d0faf6fd49a1c7d9f6f09ddd652653df0a16ae9f5·...·]-11">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">152 ·······················</span><span·class="p"·data-group-id="1015866599-11">{</span><span·class="ss">versions</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">versions</span><span·class="p"·data-group-id="1015866599-12">(</span><span·class="p"·data-group-id="1015866599-12">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·6d526bed1295a2a9987448964a68317edf6ccdd2c1c1f3afbc38e5dd43fefc99·...·]-11">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">
153 ·······················</span><span·class="p"·data-group-id="1411325630-13">{</span><span·class="ss">discovery</span><span·class="p">,</span><span·class="w">········</span><span·class="nf">agent_discovery</span><span·class="p"·data-group-id="1411325630-14">(</span><span·class="p"·data-group-id="1411325630-14">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·bc9c0dc24f4b4817d1f593af262dea3b6c58daed94adce144a47813533e95680·...·]-13">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">153 ·······················</span><span·class="p"·data-group-id="1015866599-13">{</span><span·class="ss">discovery</span><span·class="p">,</span><span·class="w">········</span><span·class="nf">agent_discovery</span><span·class="p"·data-group-id="1015866599-14">(</span><span·class="p"·data-group-id="1015866599-14">)</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·142260be942e6c11b772a5636e7cfb87ec07818ab04d5c5b0984bf7699d3edc8·...·]-13">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
154 ·······················</span><span·class="p"·data-group-id="1411325630-15">{</span><span·class="ss">gb_max_vbs</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">gb_max_vbs</span><span·class="p"·data-group-id="1411325630-16">(</span><span·class="p"·data-group-id="1411325630-16">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·d82d8ec28076478b308524086d82cee3462097bbda59b2289aebc16f393d94fb·...·]-15">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">154 ·······················</span><span·class="p"·data-group-id="1015866599-15">{</span><span·class="ss">gb_max_vbs</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">gb_max_vbs</span><span·class="p"·data-group-id="1015866599-16">(</span><span·class="p"·data-group-id="1015866599-16">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·d4859dbfe0046bb4ae31d54ee1045447d9fc89c1839ae1fafbacbb178bc885f6·...·]-15">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
155 ·······················</span><span·class="p"·data-group-id="1411325630-17">{</span><span·class="ss">priority</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">priority</span><span·class="p"·data-group-id="1411325630-18">(</span><span·class="p"·data-group-id="1411325630-18">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·f2eeeba3618f222b3dab3d9d0faf6fd49a1c7d9f6f09ddd652653df0a16ae9f5·...·]-17">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">155 ·······················</span><span·class="p"·data-group-id="1015866599-17">{</span><span·class="ss">priority</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">priority</span><span·class="p"·data-group-id="1015866599-18">(</span><span·class="p"·data-group-id="1015866599-18">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·6d526bed1295a2a9987448964a68317edf6ccdd2c1c1f3afbc38e5dd43fefc99·...·]-17">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">
156 ·······················</span><span·class="p"·data-group-id="1411325630-19">{</span><span·class="ss">multi_threaded</span><span·class="p">,</span><span·class="w">···</span><span·class="nf">multi_threaded</span><span·class="p"·data-group-id="1411325630-20">(</span><span·class="p"·data-group-id="1411325630-20">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·4e2c753c8043f1f73a448dda9eda0ce84c76de82eecc0a512381b0faad52b841·...·]-19">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">156 ·······················</span><span·class="p"·data-group-id="1015866599-19">{</span><span·class="ss">multi_threaded</span><span·class="p">,</span><span·class="w">···</span><span·class="nf">multi_threaded</span><span·class="p"·data-group-id="1015866599-20">(</span><span·class="p"·data-group-id="1015866599-20">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·e33ce0b73f5ec61853b457bf2f93fc6de02a0d226a7f32078e1fb11ef61abb90·...·]-19">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">
157 ·······················</span><span·class="p"·data-group-id="1411325630-21">{</span><span·class="ss">db_dir</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">db_dir</span><span·class="p"·data-group-id="1411325630-22">(</span><span·class="p"·data-group-id="1411325630-22">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·ec4fa8ce5dc4072ce4a93b133a3ff1634f6ce8cd511234cf5231fe031764edeb·...·]-21">}</span><span·class="w">···········</span><span·class="p">|</span><span·class="w">157 ·······················</span><span·class="p"·data-group-id="1015866599-21">{</span><span·class="ss">db_dir</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">db_dir</span><span·class="p"·data-group-id="1015866599-22">(</span><span·class="p"·data-group-id="1015866599-22">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·16331da3c86a6a54feb55f64b6d696942cec8523adb55a91f898394ca66de8bb·...·]-21">}</span><span·class="w">···········</span><span·class="p">|</span><span·class="w">
158 ·······················</span><span·class="p"·data-group-id="1411325630-23">{</span><span·class="ss">db_init_error</span><span·class="p">,</span><span·class="w">····</span><span·class="nf">db_init_error</span><span·class="p"·data-group-id="1411325630-24">(</span><span·class="p"·data-group-id="1411325630-24">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·b9fde5e976823c5246fd934b03709251234b2bc1772f3bef6514ef3c5003a494·...·]-23">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">158 ·······················</span><span·class="p"·data-group-id="1015866599-23">{</span><span·class="ss">db_init_error</span><span·class="p">,</span><span·class="w">····</span><span·class="nf">db_init_error</span><span·class="p"·data-group-id="1015866599-24">(</span><span·class="p"·data-group-id="1015866599-24">)</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·1198b0d98294bbc9ec5a3f19cdae8fd90f35cf16d31d92db7968331d730effb2·...·]-23">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
159 ·······················</span><span·class="p"·data-group-id="1411325630-25">{</span><span·class="ss">local_db</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">local_db</span><span·class="p"·data-group-id="1411325630-26">(</span><span·class="p"·data-group-id="1411325630-26">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·f2eeeba3618f222b3dab3d9d0faf6fd49a1c7d9f6f09ddd652653df0a16ae9f5·...·]-25">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">159 ·······················</span><span·class="p"·data-group-id="1015866599-25">{</span><span·class="ss">local_db</span><span·class="p">,</span><span·class="w">·········</span><span·class="nf">local_db</span><span·class="p"·data-group-id="1015866599-26">(</span><span·class="p"·data-group-id="1015866599-26">)</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·6d526bed1295a2a9987448964a68317edf6ccdd2c1c1f3afbc38e5dd43fefc99·...·]-25">}</span><span·class="w">·········</span><span·class="p">|</span><span·class="w">
160 ·······················</span><span·class="p"·data-group-id="1411325630-27">{</span><span·class="ss">net_if</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">agent_net_if</span><span·class="p"·data-group-id="1411325630-28">(</span><span·class="p"·data-group-id="1411325630-28">)</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·e4feac49cf1ecbabc33fd119bfbefe669027e88aa59e5e1254a77e11694dea3a·...·]-27">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">160 ·······················</span><span·class="p"·data-group-id="1015866599-27">{</span><span·class="ss">net_if</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">agent_net_if</span><span·class="p"·data-group-id="1015866599-28">(</span><span·class="p"·data-group-id="1015866599-28">)</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·1cecf3e0860e25ef39a608d36f3c1d6b07ca70eafbd61a9fdb4b06b8ec4ab2c3·...·]-27">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
161 ·······················</span><span·class="p"·data-group-id="1411325630-29">{</span><span·class="ss">mibs</span><span·class="p">,</span><span·class="w">·············</span><span·class="nf">mibs</span><span·class="p"·data-group-id="1411325630-30">(</span><span·class="p"·data-group-id="1411325630-30">)</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·284dda031097b6d07fa3fb0c248eae68b89e23f4895d1b1844df3250ac97b908·...·]-29">}</span><span·class="w">·············</span><span·class="p">|</span><span·class="w">161 ·······················</span><span·class="p"·data-group-id="1015866599-29">{</span><span·class="ss">mibs</span><span·class="p">,</span><span·class="w">·············</span><span·class="nf">mibs</span><span·class="p"·data-group-id="1015866599-30">(</span><span·class="p"·data-group-id="1015866599-30">)</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·dda8e97d5df582e5cb4f9b9947c9a6d152f2b756d9c0bfbab6c08245a877b25e·...·]-29">}</span><span·class="w">·············</span><span·class="p">|</span><span·class="w">
162 ·······················</span><span·class="p"·data-group-id="1411325630-31">{</span><span·class="ss">mib_storage</span><span·class="p">,</span><span·class="w">······</span><span·class="nf">mib_storage</span><span·class="p"·data-group-id="1411325630-32">(</span><span·class="p"·data-group-id="1411325630-32">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·61e06f84c30f5cc0d03fc79898ee4820b9efa03f7406fa586a21eba10b3a8da1·...·]-31">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">162 ·······················</span><span·class="p"·data-group-id="1015866599-31">{</span><span·class="ss">mib_storage</span><span·class="p">,</span><span·class="w">······</span><span·class="nf">mib_storage</span><span·class="p"·data-group-id="1015866599-32">(</span><span·class="p"·data-group-id="1015866599-32">)</span><sp[·...·truncated·by·diffoscope;·len:·38,·SHA:·7e831223feaa6972c2d2e0990691e48b14a8c7ef176de7dd24952dfda69e6bbe·...·]-31">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">
163 ·······················</span><span·class="p"·data-group-id="1411325630-33">{</span><span·class="ss">mib_server</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">mib_server</span><span·class="p"·data-group-id="1411325630-34">(</span><span·class="p"·data-group-id="1411325630-34">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·d82d8ec28076478b308524086d82cee3462097bbda59b2289aebc16f393d94fb·...·]-33">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">163 ·······················</span><span·class="p"·data-group-id="1015866599-33">{</span><span·class="ss">mib_server</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">mib_server</span><span·class="p"·data-group-id="1015866599-34">(</span><span·class="p"·data-group-id="1015866599-34">)</span><spa[·...·truncated·by·diffoscope;·len:·37,·SHA:·d4859dbfe0046bb4ae31d54ee1045447d9fc89c1839ae1fafbacbb178bc885f6·...·]-33">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
164 ·······················</span><span·class="p"·data-group-id="1411325630-35">{</span><span·class="ss">audit_trail_log</span><span·class="p">,</span><span·class="w">··</span><span·class="nf">audit_trail_log</span><span·class="p"·data-group-id="1411325630-36">(</span><span·class="p"·data-group-id="1411325630-36">)</span><span·class="p"·data-group-id="1411325630-35">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w"> 
165 ·······················</span><span·class="p"·data-group-id="1411325630-37">{</span><span·class="ss">error_report_mod</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">error_report_mod</span><span·class="p"·data-group-id="1411325630-38">(</span><span·class="p"·data-group-id="1411325630-38">)</span><span·class="p"·data-group-id="1411325630-37">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w"> 
166 ·······················</span><span·class="p"·data-group-id="1411325630-39">{</span><span·class="ss">note_store</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">note_store</span><span·class="p"·data-group-id="1411325630-40">(</span><span·class="p"·data-group-id="1411325630-40">)</span><spa[·...·truncated·by·diffoscope;·len:·71,·SHA:·8f8c05c9121e62947d86cca575616d66eda849963e3eae7f9cee653a0a3517bf·...·]··</span><span·class="p">|</span><span·class="w">164 ·······················</span><span·class="p"·data-group-id="1015866599-35">{</span><span·class="ss">audit_trail_log</span><span·class="p">,</span><span·class="w">··</span><span·class="nf">audit_trail_log</span><span·class="p"·data-group-id="1015866599-36">(</span><span·class="p"·data-group-id="1015866599-36">)</span[·...·truncated·by·diffoscope;·len:·71,·SHA:·654e09266f2eb65fe0fe7d37f9dba94fe85c37b3191b702d08880b8ccaeda4d1·...·]··</span><span·class="p">|</span><span·class="w">
 165 ·······················</span><span·class="p"·data-group-id="1015866599-37">{</span><span·class="ss">error_report_mod</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">error_report_mod</span><span·class="p"·data-group-id="1015866599-38">(</span><span·class="p"·data-group-id="1015866599-38">)</span><span·class="p"·data-group-id="1015866599-37">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
 166 ·······················</span><span·class="p"·data-group-id="1015866599-39">{</span><span·class="ss">note_store</span><span·class="p">,</span><span·class="w">·······</span><span·class="nf">note_store</span><span·class="p"·data-group-id="1015866599-40">(</span><span·class="p"·data-group-id="1015866599-40">)</span><span·class="p"·data-group-id="1015866599-39">}</span><span·class="w">·······</span><span·class="p">|</span><span·class="w">
167 ·······················</span><span·class="p"·data-group-id="1411325630-41">{</span><span·class="ss">symbolic_store</span><span·class="p">,</span><span·class="w">···</span><span·class="nf">symbolic_store</span><span·class="p"·data-group-id="1411325630-42">(</span><span·class="p"·data-group-id="1411325630-42">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·4e2c753c8043f1f73a448dda9eda0ce84c76de82eecc0a512381b0faad52b841·...·]-41">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">167 ·······················</span><span·class="p"·data-group-id="1015866599-41">{</span><span·class="ss">symbolic_store</span><span·class="p">,</span><span·class="w">···</span><span·class="nf">symbolic_store</span><span·class="p"·data-group-id="1015866599-42">(</span><span·class="p"·data-group-id="1015866599-42">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·e33ce0b73f5ec61853b457bf2f93fc6de02a0d226a7f32078e1fb11ef61abb90·...·]-41">}</span><span·class="w">···</span><span·class="p">|</span><span·class="w">
168 ·······················</span><span·class="p"·data-group-id="1411325630-43">{</span><span·class="ss">target_cache</span><span·class="p">,</span><span·class="w">·····</span><span·class="nf">target_cache</span><span·class="p"·data-group-id="1411325630-44">(</span><span·class="p"·data-group-id="1411325630-44">)</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·e4feac49cf1ecbabc33fd119bfbefe669027e88aa59e5e1254a77e11694dea3a·...·]-43">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">168 ·······················</span><span·class="p"·data-group-id="1015866599-43">{</span><span·class="ss">target_cache</span><span·class="p">,</span><span·class="w">·····</span><span·class="nf">target_cache</span><span·class="p"·data-group-id="1015866599-44">(</span><span·class="p"·data-group-id="1015866599-44">)</span><s[·...·truncated·by·diffoscope;·len:·39,·SHA:·1cecf3e0860e25ef39a608d36f3c1d6b07ca70eafbd61a9fdb4b06b8ec4ab2c3·...·]-43">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
169 ·······················</span><span·class="p"·data-group-id="1411325630-45">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">agent_config</span><span·class="p"·data-group-id="1411325630-46">(</span><span·class="p"·data-group-id="1411325630-46">)</span><span·class="p"·data-group-id="1411325630-45">}</span><span·class="w"> 
170 ······</span><span·class="nf">manager_options</span><span·class="p"·data-group-id="1411325630-47">(</span><span·class="p"·data-group-id="1411325630-47">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1411325630-48">[</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="1411325630-49">(</span><span·class="p"·data-group-id="1411325630-49">)</span><span·class="p"·data-group-id="1411325630-48">]</span><span·class="w"> 
171 ······</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="1411325630-50">(</span><span·class="p"·data-group-id="1411325630-50">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·361,·SHA:·a30c911eb726ac27c3a91a810ca82f662855017847502e4ac7d03bc821d13825·...·]</span><span·class="w">169 ·······················</span><span·class="p"·data-group-id="1015866599-45">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">···········</span><span·class="nf">agent_config</span><span·class="p"·data-group-id="1015866599-46">(</span>[·...·truncated·by·diffoscope;·len:·101,·SHA:·aa3bd53107845df4eab2178503927125f993009b85f53e6991ec5cba41c38bf0·...·]</span><span·class="w">
 170 ······</span><span·class="nf">manager_options</span><span·class="p"·data-group-id="1015866599-47">(</span><span·class="p"·data-group-id="1015866599-47">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1015866599-48">[</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="1015866599-49">(</span><span·class="p"·data-group-id="1015866599-49">)</span><span·class="p"·data-group-id="1015866599-48">]</span><span·class="w">
 171 ······</span><span·class="nf">manager_option</span><span·class="p"·data-group-id="1015866599-50">(</span><span·class="p"·data-group-id="1015866599-50">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1015866599-51">{</span><span·class="ss">restart_type</span><span·class="p">,</span><span·class="w">·············</span><span·class="nf">restart_type</span><span·class="p"·data-group-id="1015866599-52">(</span><span·class="p"·data-group-id="1015866599-52">)</span><span·class="p"·data-group-id="1015866599-51">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
172 ·························</span><span·class="p"·data-group-id="1411325630-53">{</span><span·class="ss">net_if</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">manager_net_if</span><span·class="p"·data-group-id="1411325630-54">(</span><span·class="p"·data-group-id="1411325630-54">[·...·truncated·by·diffoscope;·len:·49,·SHA:·d243144bd16978fe3e5ccf329a7f6e6125a12a75b5623d75a927e684a7bffd8b·...·]-53">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">172 ·························</span><span·class="p"·data-group-id="1015866599-53">{</span><span·class="ss">net_if</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">manager_net_if</span><span·class="p"·data-group-id="1015866599-54">(</span><span·class="p"·data-group-id="1015866599-54">[·...·truncated·by·diffoscope;·len:·49,·SHA:·fb251c2dd1133e84eed53cfc32b660cf9f3720c90526c43f7702e022ef4dc5c0·...·]-53">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
173 ·························</span><span·class="p"·data-group-id="1411325630-55">{</span><span·class="ss">server</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">server</span><span·class="p"·data-group-id="1411325630-56">(</span><span·class="p"·data-group-id="1411325630-56">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·4e2c753c8043f1f73a448dda9eda0ce84c76de82eecc0a512381b0faad52b841·...·]-55">}</span><span·class="w">··········</span><span·class="p">|</span><span·class="w">173 ·························</span><span·class="p"·data-group-id="1015866599-55">{</span><span·class="ss">server</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">server</span><span·class="p"·data-group-id="1015866599-56">(</span><span·class="p"·data-group-id="1015866599-56">)</span>[·...·truncated·by·diffoscope;·len:·41,·SHA:·e33ce0b73f5ec61853b457bf2f93fc6de02a0d226a7f32078e1fb11ef61abb90·...·]-55">}</span><span·class="w">··········</span><span·class="p">|</span><span·class="w">
174 ·························</span><span·class="p"·data-group-id="1411325630-57">{</span><span·class="ss">note_store</span><span·class="p">,</span><span·class="w">···············</span><span·class="nf">note_store</span><span·class="p"·data-group-id="1411325630-58">(</span><span·class="p"·data-group-id="1411325630-58">)</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·a715bde519a61a63d129542fd8ef742a884902e6012412ab2d543e5b77774144·...·]-57">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">174 ·························</span><span·class="p"·data-group-id="1015866599-57">{</span><span·class="ss">note_store</span><span·class="p">,</span><span·class="w">···············</span><span·class="nf">note_store</span><span·class="p"·data-group-id="1015866599-58">(</span><span·class="p"·data-group-id="1015866599-58">)</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·46c599b6573b03068edfad819829feda36237f0f99bec06cfc160e614812ebc0·...·]-57">}</span><span·class="w">······</span><span·class="p">|</span><span·class="w">
175 ·························</span><span·class="p"·data-group-id="1411325630-59">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">manager_config</span><span·class="p"·data-group-id="1411325630-60">(</span><span·class="p"·data-group-id="1411325630-60">[·...·truncated·by·diffoscope;·len:·49,·SHA:·d243144bd16978fe3e5ccf329a7f6e6125a12a75b5623d75a927e684a7bffd8b·...·]-59">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">175 ·························</span><span·class="p"·data-group-id="1015866599-59">{</span><span·class="ss">config</span><span·class="p">,</span><span·class="w">···················</span><span·class="nf">manager_config</span><span·class="p"·data-group-id="1015866599-60">(</span><span·class="p"·data-group-id="1015866599-60">[·...·truncated·by·diffoscope;·len:·49,·SHA:·fb251c2dd1133e84eed53cfc32b660cf9f3720c90526c43f7702e022ef4dc5c0·...·]-59">}</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
176 ·························</span><span·class="p"·data-group-id="1411325630-61">{</span><span·class="ss">inform_request_behaviour</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">manager_irb</span><span·class="p"·data-group-id="1411325630-62">(</span><span·class="p"·data-group-id="1411325630-62">)</[·...·truncated·by·diffoscope;·len:·46,·SHA:·97e753cf7c5d4131221b2ec06c7e174077cb6d4826546dcdf8d5aab0a13f9466·...·]-61">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">176 ·························</span><span·class="p"·data-group-id="1015866599-61">{</span><span·class="ss">inform_request_behaviour</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">manager_irb</span><span·class="p"·data-group-id="1015866599-62">(</span><span·class="p"·data-group-id="1015866599-62">)</[·...·truncated·by·diffoscope;·len:·46,·SHA:·0513a31cfe24a5690a047dae5746ad4fdae33e049e1fd78bdc7a3383c4d84f98·...·]-61">}</span><span·class="w">·····</span><span·class="p">|</span><span·class="w">
177 ·························</span><span·class="p"·data-group-id="1411325630-63">{</span><span·class="ss">mibs</span><span·class="p">,</span><span·class="w">·····················</span><span·class="nf">manager_mibs</span><span·class="p"·data-group-id="1411325630-64">(</span><span·class="p"·data-group-id="1411325630-64">)<[·...·truncated·by·diffoscope;·len:·47,·SHA:·9188cb603706c008778ac7ba0ea6b1d98e72922740a046dec250e83da4a51d25·...·]-63">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">177 ·························</span><span·class="p"·data-group-id="1015866599-63">{</span><span·class="ss">mibs</span><span·class="p">,</span><span·class="w">·····················</span><span·class="nf">manager_mibs</span><span·class="p"·data-group-id="1015866599-64">(</span><span·class="p"·data-group-id="1015866599-64">)<[·...·truncated·by·diffoscope;·len:·47,·SHA:·c8f7586016e468840b5530bfe85d403cb0835a12461b8f0dfc72cd37d61d9c4c·...·]-63">}</span><span·class="w">····</span><span·class="p">|</span><span·class="w">
178 ·························</span><span·class="p"·data-group-id="1411325630-65">{</span><span·class="ss">priority</span><span·class="p">,</span><span·class="w">·················</span><span·class="nf">priority</span><span·class="p"·data-group-id="1411325630-66">(</span><span·class="p"·data-group-id="1411325630-66">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·3f80a687d73e6e68bded76d213458b14798f3a29fbbf61e9bfda441b2187beca·...·]-65">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">178 ·························</span><span·class="p"·data-group-id="1015866599-65">{</span><span·class="ss">priority</span><span·class="p">,</span><span·class="w">·················</span><span·class="nf">priority</span><span·class="p"·data-group-id="1015866599-66">(</span><span·class="p"·data-group-id="1015866599-66">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·5a454f15a5c0c1e26ed70a740584d0aa63a3bd05ec4f8ac08bf69c445bab9c8e·...·]-65">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
179 ·························</span><span·class="p"·data-group-id="1411325630-67">{</span><span·class="ss">audit_trail_log</span><span·class="p">,</span><span·class="w">··········</span><span·class="nf">audit_trail_log</span><span·class="p"·data-group-id="1411325630-68">(</span><span·class="p"·data-group-id="1411325630-68"[·...·truncated·by·diffoscope;·len:·50,·SHA:·85a6464ef732bf180bf2a7f61b4ff5ea8f397bdc58ce438ba0d18ef7180a9c31·...·]-67">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">179 ·························</span><span·class="p"·data-group-id="1015866599-67">{</span><span·class="ss">audit_trail_log</span><span·class="p">,</span><span·class="w">··········</span><span·class="nf">audit_trail_log</span><span·class="p"·data-group-id="1015866599-68">(</span><span·class="p"·data-group-id="1015866599-68"[·...·truncated·by·diffoscope;·len:·50,·SHA:·29b03aeca8396a853630e012777aebd0fad1b02ea96c5b642c34eb0ee95fadb0·...·]-67">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
180 ·························</span><span·class="p"·data-group-id="1411325630-69">{</span><span·class="ss">versions</span><span·class="p">,</span><span·class="w">·················</span><span·class="nf">versions</span><span·class="p"·data-group-id="1411325630-70">(</span><span·class="p"·data-group-id="1411325630-70">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·3f80a687d73e6e68bded76d213458b14798f3a29fbbf61e9bfda441b2187beca·...·]-69">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">180 ·························</span><span·class="p"·data-group-id="1015866599-69">{</span><span·class="ss">versions</span><span·class="p">,</span><span·class="w">·················</span><span·class="nf">versions</span><span·class="p"·data-group-id="1015866599-70">(</span><span·class="p"·data-group-id="1015866599-70">)</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·5a454f15a5c0c1e26ed70a740584d0aa63a3bd05ec4f8ac08bf69c445bab9c8e·...·]-69">}</span><span·class="w">········</span><span·class="p">|</span><span·class="w">
181 ·························</span><span·class="p"·data-group-id="1411325630-71">{</span><span·class="ss">def_user_mod</span><span·class="p">,</span><span·class="w">·············</span><span·class="nf">def_user_module</span><span·class="p"·data-group-id="1411325630-72">(</span><span·class="p"·data-group-id="1411325630-72">)</span><span·class="w">··</span><span·class="p">|</span><span·class="w">181 ·························</span><span·class="p"·data-group-id="1015866599-71">{</span><span·class="ss">def_user_mod</span><span·class="p">,</span><span·class="w">·············</span><span·class="nf">def_user_module</span><span·class="p"·data-group-id="1015866599-72">(</span><span·class="p"·data-group-id="1015866599-72">)</span><span·class="w">··</span><span·class="p">|</span><span·class="w">
182 ·························</span><span·class="p"·data-group-id="1411325630-73">{</span><span·class="ss">def_user_data</span><span·class="p">,</span><span·class="w">············</span><span·class="nf">def_user_data</span><span·class="p"·data-group-id="1411325630-74">(</span><span·class="p"·data-group-id="1411325630-74">)[·...·truncated·by·diffoscope;·len:·48,·SHA:·4efc4fa78a5edf258f0f014c298782f0dbeb8afe8ca945fe1b0a285d582ff4ef·...·]-73">}</span></code></pre><p><a·href=""·id="agent_opts_and_types"></a></p><p>Agent·specific·config·options·and·types:</p><ul><li><p><strong><code·class="inline"·id="agent_type">agent_type()·=·master·|·sub·&lt;optional&gt;</code></strong>·-·If·<code·class="inline">master</code>,182 ·························</span><span·class="p"·data-group-id="1015866599-73">{</span><span·class="ss">def_user_data</span><span·class="p">,</span><span·class="w">············</span><span·class="nf">def_user_data</span><span·class="p"·data-group-id="1015866599-74">(</span><span·class="p"·data-group-id="1015866599-74">)[·...·truncated·by·diffoscope;·len:·48,·SHA:·eda67fa8ad3635e62a788cdbb5c5dfb717b2840116825d32de4572c9f87d405c·...·]-73">}</span></code></pre><p><a·href=""·id="agent_opts_and_types"></a></p><p>Agent·specific·config·options·and·types:</p><ul><li><p><strong><code·class="inline"·id="agent_type">agent_type()·=·master·|·sub·&lt;optional&gt;</code></strong>·-·If·<code·class="inline">master</code>,
183 one·master·agent·is·started.·Otherwise,·no·agents·are·started.</p><p>Default·is·<code·class="inline">master</code>.</p></li><li><p><strong><code·class="inline"·id="agent_disco">agent_discovery()·=·[agent_discovery_opt()]·&lt;optional&gt;</code></strong>·-183 one·master·agent·is·started.·Otherwise,·no·agents·are·started.</p><p>Default·is·<code·class="inline">master</code>.</p></li><li><p><strong><code·class="inline"·id="agent_disco">agent_discovery()·=·[agent_discovery_opt()]·&lt;optional&gt;</code></strong>·-
184 <code·class="inline">agent_discovery_opt()·=·{terminating,·agent_terminating_discovery_opts()}·|·{originating,·agent_originating_discovery_opts()}</code></p><p>The·<code·class="inline">terminating</code>·options·effects·discovery·initiated·by·a·manager.</p><p>The·<code·class="inline">originating</code>·options·effects·discovery·initiated·by·this·agent.</p><p>For·defaults·see·the·options·in·<code·class="inline">agent_discovery_opt()</code>.</p></li><li><p><strong><code·class="inline"·id="agent_term_disco_opts">agent_terminating_discovery_opts()·=·[agent_terminating_discovery_opt()]·&lt;optional&gt;</code></strong>·-184 <code·class="inline">agent_discovery_opt()·=·{terminating,·agent_terminating_discovery_opts()}·|·{originating,·agent_originating_discovery_opts()}</code></p><p>The·<code·class="inline">terminating</code>·options·effects·discovery·initiated·by·a·manager.</p><p>The·<code·class="inline">originating</code>·options·effects·discovery·initiated·by·this·agent.</p><p>For·defaults·see·the·options·in·<code·class="inline">agent_discovery_opt()</code>.</p></li><li><p><strong><code·class="inline"·id="agent_term_disco_opts">agent_terminating_discovery_opts()·=·[agent_terminating_discovery_opt()]·&lt;optional&gt;</code></strong>·-
185 <code·class="inline">agent_terminating_discovery_opt()·=·{enable,·boolean()}·|·{stage2,·discovery·|·plain}·|·{trigger_username,·string()}</code></p><p>These·are·options·effecting·discovery·<code·class="inline">terminating</code>·in·this·agent·(i.e.185 <code·class="inline">agent_terminating_discovery_opt()·=·{enable,·boolean()}·|·{stage2,·discovery·|·plain}·|·{trigger_username,·string()}</code></p><p>These·are·options·effecting·discovery·<code·class="inline">terminating</code>·in·this·agent·(i.e.
186 initiated·by·a·manager).</p><p>The·default·values·for·the·<code·class="inline">terminating</code>·discovery·options·are:</p><ul><li>enable:·<code·class="inline">true</code></li><li>stage2:·<code·class="inline">discovery</code></li><li>trigger_username:·<code·class="inline">&quot;&quot;</code></li></ul></li><li><p><strong><code·class="inline"·id="agent_orig_disco_opts">agent_originating_discovery_opts()·=·[agent_originating_discovery_opt()]·&lt;optional&gt;</code></strong>·-186 initiated·by·a·manager).</p><p>The·default·values·for·the·<code·class="inline">terminating</code>·discovery·options·are:</p><ul><li>enable:·<code·class="inline">true</code></li><li>stage2:·<code·class="inline">discovery</code></li><li>trigger_username:·<code·class="inline">&quot;&quot;</code></li></ul></li><li><p><strong><code·class="inline"·id="agent_orig_disco_opts">agent_originating_discovery_opts()·=·[agent_originating_discovery_opt()]·&lt;optional&gt;</code></strong>·-
187 <code·class="inline">agent_originating_discovery_opt()·=·{enable,·boolean()}</code></p><p>These·are·options·effecting·discovery·<code·class="inline">originating</code>·in·this·agent.</p><p>The·default·values·for·the·<code·class="inline">originating</code>·discovery·options·are:</p><ul><li>enable:·<code·class="inline">true</code></li></ul></li><li><p><strong><code·class="inline"·id="agent_mt">multi_threaded()·=·bool()·|·extended&lt;optional&gt;</code></strong>·-·If·<code·class="inline">true</code>187 <code·class="inline">agent_originating_discovery_opt()·=·{enable,·boolean()}</code></p><p>These·are·options·effecting·discovery·<code·class="inline">originating</code>·in·this·agent.</p><p>The·default·values·for·the·<code·class="inline">originating</code>·discovery·options·are:</p><ul><li>enable:·<code·class="inline">true</code></li></ul></li><li><p><strong><code·class="inline"·id="agent_mt">multi_threaded()·=·bool()·|·extended&lt;optional&gt;</code></strong>·-·If·<code·class="inline">true</code>
188 (or·<code·class="inline">extended</code>),·the·agent·is·multi-threaded,·with·one·thread·for·each·get188 (or·<code·class="inline">extended</code>),·the·agent·is·multi-threaded,·with·one·thread·for·each·get
189 request.</p><p>The·value·<code·class="inline">extended</code>·means·that·a·special·'process'·is·also·created·intended189 request.</p><p>The·value·<code·class="inline">extended</code>·means·that·a·special·'process'·is·also·created·intended
Offset 646, 15 lines modifiedOffset 646, 15 lines modified
646 ······<p·class="built-using">646 ······<p·class="built-using">
647 ········Built·using647 ········Built·using
648 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the648 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
649 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>649 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
650 ······</p>650 ······</p>
651 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>651 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
652 ····</footer>652 ····</footer>
653 ··</div>653 ··</div>
654 </main>654 </main>
655 </div>655 </div>
656 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>656 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
657 <script>657 <script>
658 ··document.addEventListener("DOMContentLoaded",·function·()·{658 ··document.addEventListener("DOMContentLoaded",·function·()·{
936 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_def_instr_functions.html
    
Offset 364, 15 lines modifiedOffset 364, 15 lines modified
364 ······<p·class="built-using">364 ······<p·class="built-using">
365 ········Built·using365 ········Built·using
366 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the366 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
367 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>367 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
368 ······</p>368 ······</p>
369 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>369 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
370 ····</footer>370 ····</footer>
371 ··</div>371 ··</div>
372 </main>372 </main>
373 </div>373 </div>
374 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>374 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
375 <script>375 <script>
376 ··document.addEventListener("DOMContentLoaded",·function·()·{376 ··document.addEventListener("DOMContentLoaded",·function·()·{
781 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_framework_mib.html
    
Offset 614, 15 lines modifiedOffset 614, 15 lines modified
614 ······<p·class="built-using">614 ······<p·class="built-using">
615 ········Built·using615 ········Built·using
616 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the616 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
617 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>617 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
618 ······</p>618 ······</p>
619 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>619 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
620 ····</footer>620 ····</footer>
621 ··</div>621 ··</div>
622 </main>622 </main>
623 </div>623 </div>
624 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>624 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
625 <script>625 <script>
626 ··document.addEventListener("DOMContentLoaded",·function·()·{626 ··document.addEventListener("DOMContentLoaded",·function·()·{
621 B
html2text {}
Max HTML report size reached
20.3 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_generic.html
    
Offset 158, 49 lines modifiedOffset 158, 49 lines modified
158 Mnesia·table·<code·class="inline">snmp_variables</code>·which·must·be·a·table·with·two·attributes·(not·a158 Mnesia·table·<code·class="inline">snmp_variables</code>·which·must·be·a·table·with·two·attributes·(not·a
159 Mnesia·SNMP·table).·The·SNMP·tables·are·stored·in·Mnesia·tables·with·the·same159 Mnesia·SNMP·table).·The·SNMP·tables·are·stored·in·Mnesia·tables·with·the·same
160 names·as·the·SNMP·tables.·All·functions·assume·that·a·Mnesia·table·exists·with160 names·as·the·SNMP·tables.·All·functions·assume·that·a·Mnesia·table·exists·with
161 the·correct·name·and·attributes.·It·is·the·programmer's·responsibility·to·ensure161 the·correct·name·and·attributes.·It·is·the·programmer's·responsibility·to·ensure
162 this.·Specifically,·if·variables·are·stored·in·Mnesia,·the·table162 this.·Specifically,·if·variables·are·stored·in·Mnesia,·the·table
163 <code·class="inline">snmp_variables</code>·must·be·created·by·the·programmer.·The·record·definition·for163 <code·class="inline">snmp_variables</code>·must·be·created·by·the·programmer.·The·record·definition·for
164 this·table·is·defined·in·the·file·<code·class="inline">snmp/include/snmp_types.hrl</code>.</p><p>If·an·instrumentation·function·in·the·association·file·for·a·variable·<code·class="inline">myVar</code>164 this·table·is·defined·in·the·file·<code·class="inline">snmp/include/snmp_types.hrl</code>.</p><p>If·an·instrumentation·function·in·the·association·file·for·a·variable·<code·class="inline">myVar</code>
165 does·not·have·a·name·when·compiling·an·MIB,·the·compiler·generates·an·entry.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0674348432-1">{</span><span·class="ss">myVar</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0674348432-2">{</span><span·class="ss">snmp_generic</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">var[·...·truncated·by·diffoscope;·len:·1108,·SHA:·20e88ad318d4150b13080be582892dc0d1a8fb19c74e1a909b97ea52a5c8de45·...·]-4">}</span><span·class="p">}</span><span·class="p">.</span></code></pre><h2·id="module-example"·class="section-heading">165 does·not·have·a·name·when·compiling·an·MIB,·the·compiler·generates·an·entry.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8443409443-1">{</span><span·class="ss">myVar</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8443409443-2">{</span><span·class="ss">snmp_generic</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">var[·...·truncated·by·diffoscope;·len:·1108,·SHA:·4b7b1d19c44d00f485ebf7ebf408e13d26117f0cc109898d35cfaec054e2e840·...·]-4">}</span><span·class="p">}</span><span·class="p">.</span></code></pre><h2·id="module-example"·class="section-heading">
166 ··<a·href="#module-example"·class="hover-link">166 ··<a·href="#module-example"·class="hover-link">
167 ····<i·class="ri-link-m"·aria-hidden="true"></i>167 ····<i·class="ri-link-m"·aria-hidden="true"></i>
168 ··</a>168 ··</a>
169 ··<span·class="text">Example</span>169 ··<span·class="text">Example</span>
170 </h2>170 </h2>
171 <p>The·following·example·shows·an·implementation·of·a·table·which·is·stored·in171 <p>The·following·example·shows·an·implementation·of·a·table·which·is·stored·in
172 Mnesia,·but·with·some·checks·performed·at·set-request·operations.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">myTable_func</span><span·class="p"·data-group-id="5311901765-1">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="5311901765-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">···</span><span·class="c1">%·pass·unchanged</span><span·class="w">172 Mnesia,·but·with·some·checks·performed·at·set-request·operations.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">myTable_func</span><span·class="p"·data-group-id="7031753882-1">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="7031753882-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">···</span><span·class="c1">%·pass·unchanged</span><span·class="w">
173 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="5311901765-2">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="5311901765-2">)</span><span·class="p">.</span><span·class="w">173 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="7031753882-2">(</span><span·class="ss">new</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="7031753882-2">)</span><span·class="p">.</span><span·class="w">
  
174 </span><span·class="nf">myTable_func</span><span·class="p"·data-group-id="5311901765-3">(</span><span·class="ss">delete</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="5311901765-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">···</span><span·class="c1">%·pass·unchanged</span><span·class="w">174 </span><span·class="nf">myTable_func</span><span·class="p"·data-group-id="7031753882-3">(</span><span·class="ss">delete</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="7031753882-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">···</span><span·class="c1">%·pass·unchanged</span><span·class="w">
175 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="5311901765-4">(</span><span·class="ss">delete</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="5311901765-4">)</span><span·class="p">.</span><span·class="w">175 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="7031753882-4">(</span><span·class="ss">delete</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="7031753882-4">)</span><span·class="p">.</span><span·class="w">
  
176 </span><span·class="c1">%%·change·row</span><span·class="w">176 </span><span·class="c1">%%·change·row</span><span·class="w">
177 </span><span·class="nf">myTable_func</span><span·class="p"·data-group-id="5311901765-5">(</span><span·class="ss">is_set_ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·71,·SHA:·89279244263f25d7f98133ce3241e4b138d23ddcda505d81bdc44a1643514a8a·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">177 </span><span·class="nf">myTable_func</span><span·class="p"·data-group-id="7031753882-5">(</span><span·class="ss">is_set_ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·71,·SHA:·43c47c6b4915327fd5c66d28d2b47302f547d1817262f9872df2de41820771dd·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
178 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="5311901765-6">(</span><span·class="ss">is_set_ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">178 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="7031753882-6">(</span><span·class="ss">is_set_ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">
179 ·······························</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="5311901765-6">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">179 ·······························</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NameDb</span><span·class="p"·data-group-id="7031753882-6">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="5311901765-7">{</span><span·class="ss">noError</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="5311901765-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">180 ····</span><span·class="p"·data-group-id="7031753882-7">{</span><span·class="ss">noError</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="7031753882-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
181 ······</span><span·class="nc">myApplication</span><span·class="p">:</span><span·class="nf">is_set_ok</span><span·class="p"·data-group-id="5311901765-8">(</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="5311901765-8">)</span><span·class="p">;</span><span·class="w">181 ······</span><span·class="nc">myApplication</span><span·class="p">:</span><span·class="nf">is_set_ok</span><span·class="p"·data-group-id="7031753882-8">(</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="7031753882-8">)</span><span·class="p">;</span><span·class="w">
182 ····</span><span·class="n">Err</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">182 ····</span><span·class="n">Err</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
183 ······</span><span·class="n">Err</span><span·class="w">183 ······</span><span·class="n">Err</span><span·class="w">
184 ··</span><span·class="k">end</span><span·class="p">;</span><span·class="w">184 ··</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
  
185 </span><span·class="nf">myTable_func</span><span·class="p"·data-group-id="5311901765-9">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·65,·SHA:·abc76a5a7d20f86621d6d00dffdef115b26f595b0597a27f4b0fe644ad64c5c8·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">185 </span><span·class="nf">myTable_func</span><span·class="p"·data-group-id="7031753882-9">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·65,·SHA:·5b175a84c5c4d9b41e8e6e4c45f6a88eb0b4d6de592892a2c85f7735ab6a40e6·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
186 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="5311901765-10">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">186 ··</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="7031753882-10">(</span><span·class="ss">set</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">
187 ·······························</span><span·class="n">NameDb</span><span·class="p"·data-group-id="5311901765-10">)</span><span·class="p">,</span><span·class="w">187 ·······························</span><span·class="n">NameDb</span><span·class="p"·data-group-id="7031753882-10">)</span><span·class="p">,</span><span·class="w">
188 ····</span><span·class="p"·data-group-id="5311901765-11">{</span><span·class="ss">noError</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="5311901765-11">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">188 ····</span><span·class="p"·data-group-id="7031753882-11">{</span><span·class="ss">noError</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p"·data-group-id="7031753882-11">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
189 ······</span><span·class="c1">%·Now·the·row·is·updated,·tell·the·application</span><span·class="w">189 ······</span><span·class="c1">%·Now·the·row·is·updated,·tell·the·application</span><span·class="w">
190 ······</span><span·class="nc">myApplication</span><span·class="p">:</span><span·class="nf">update</span><span·class="p"·data-group-id="5311901765-12">(</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="5311901765-12">)</span><span·class="p">;</span><span·class="w">190 ······</span><span·class="nc">myApplication</span><span·class="p">:</span><span·class="nf">update</span><span·class="p"·data-group-id="7031753882-12">(</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p"·data-group-id="7031753882-12">)</span><span·class="p">;</span><span·class="w">
191 ····</span><span·class="n">Err</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">191 ····</span><span·class="n">Err</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
192 ······</span><span·class="n">Err</span><span·class="w">192 ······</span><span·class="n">Err</span><span·class="w">
193 ··</span><span·class="k">end</span><span·class="p">;</span><span·class="w">193 ··</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
  
194 </span><span·class="nf">myTable_func</span><span·class="p"·data-group-id="5311901765-13">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·64,·SHA:·6b38af3e7ed79b9266cf9189d59a6b7ff25078085fa642d17f2bdaab76f243c3·...·]-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">···</span><span·class="c1">%·pass·unchanged</span><span·class="w">194 </span><span·class="nf">myTable_func</span><span·class="p"·data-group-id="7031753882-13">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·64,·SHA:·550ee37fc741c07b3a8c7716d4fb9aa8a62db4215d3a6cc2013ba26728fa4937·...·]-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">···</span><span·class="c1">%·pass·unchanged</span><span·class="w">
195 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="5311901765-14">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·993,·SHA:·cbe42a3b0bfbe1832b971cdf3fb62dc8a9dd788f8d5d3615beab55b568d475a6·...·]-1">}</span><span·class="p">.</span></code></pre>195 ··</span><span·class="nc">snmp_generic</span><span·class="p">:</span><span·class="nf">table_func</span><span·class="p"·data-group-id="7031753882-14">(</span><span·class="n">Op</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RowIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cols</span><span·class="p">,</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·993,·SHA:·9587de7aa71bb358cec1fe2b67c92cd74febf6fd2a8e5822665b8cee5f357a2c·...·]-1">}</span><span·class="p">.</span></code></pre>
196 ····</section>196 ····</section>
  
197 </div>197 </div>
  
198 ··<section·id="summary"·class="details-list">198 ··<section·id="summary"·class="details-list">
199 ····<h1·class="section-heading">199 ····<h1·class="section-heading">
200 ······<a·class="hover-link"·href="#summary">200 ······<a·class="hover-link"·href="#summary">
Offset 959, 15 lines modifiedOffset 959, 15 lines modified
959 ······<p·class="built-using">959 ······<p·class="built-using">
960 ········Built·using960 ········Built·using
961 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the961 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
962 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>962 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
963 ······</p>963 ······</p>
964 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>964 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
965 ····</footer>965 ····</footer>
966 ··</div>966 ··</div>
967 </main>967 </main>
968 </div>968 </div>
969 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>969 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
970 <script>970 <script>
971 ··document.addEventListener("DOMContentLoaded",·function·()·{971 ··document.addEventListener("DOMContentLoaded",·function·()·{
716 B
html2text {}
Max HTML report size reached
175 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_impl_example_agent.html
Max HTML report size reached
1.62 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_impl_example_manager.html
    
Offset 189, 15 lines modifiedOffset 189, 15 lines modified
189 ······<p·class="built-using">189 ······<p·class="built-using">
190 ········Built·using190 ········Built·using
191 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the191 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
192 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>192 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
193 ······</p>193 ······</p>
194 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>194 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
195 ····</footer>195 ····</footer>
196 ··</div>196 ··</div>
197 </main>197 </main>
198 </div>198 </div>
199 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>199 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
200 <script>200 <script>
201 ··document.addEventListener("DOMContentLoaded",·function·()·{201 ··document.addEventListener("DOMContentLoaded",·function·()·{
791 B
html2text {}
Max HTML report size reached
7.87 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_index.html
    
Offset 131, 21 lines modifiedOffset 131, 21 lines modified
131 <p>Abstract·Data·Type·for·SNMP·Indexing</p><p>The·module·<code·class="inline">snmp_index</code>·implements·an·Abstract·Data·Type·(ADT)·for·an·SNMP·index131 <p>Abstract·Data·Type·for·SNMP·Indexing</p><p>The·module·<code·class="inline">snmp_index</code>·implements·an·Abstract·Data·Type·(ADT)·for·an·SNMP·index
132 structure·for·SNMP·tables.·It·is·implemented·as·an·ets·table·of·the·ordered_set132 structure·for·SNMP·tables.·It·is·implemented·as·an·ets·table·of·the·ordered_set
133 data-type,·which·means·that·all·operations·are·O(log·n).·In·the·table,·the·key133 data-type,·which·means·that·all·operations·are·O(log·n).·In·the·table,·the·key
134 is·an·ASN.1·OBJECT·IDENTIFIER.</p><p>This·index·is·used·to·separate·the·implementation·of·the·SNMP·ordering·from·the134 is·an·ASN.1·OBJECT·IDENTIFIER.</p><p>This·index·is·used·to·separate·the·implementation·of·the·SNMP·ordering·from·the
135 actual·implementation·of·the·table.·The·SNMP·ordering,·that·is·implementation·of135 actual·implementation·of·the·table.·The·SNMP·ordering,·that·is·implementation·of
136 GET·NEXT,·is·implemented·in·this·module.</p><p>For·example,·suppose·there·is·an·SNMP·table,·which·is·best·implemented·in·Erlang136 GET·NEXT,·is·implemented·in·this·module.</p><p>For·example,·suppose·there·is·an·SNMP·table,·which·is·best·implemented·in·Erlang
137 as·one·process·per·SNMP·table·row.·Suppose·further·that·the·INDEX·in·the·SNMP137 as·one·process·per·SNMP·table·row.·Suppose·further·that·the·INDEX·in·the·SNMP
138 table·is·an·OCTET·STRING.·The·index·structure·would·be·created·as·follows:</p><pre><code·class="text">snmp_index:new(string)</code></pre><p>For·each·new·process·we·create,·we·insert·an·item·in·an·<code·class="inline">snmp_index</code>·structure:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">new_process</span><span·class="p"·data-group-id="2202643559-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SnmpIndex</span><span·class="p"·data-group-id="2202643559-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">138 table·is·an·OCTET·STRING.·The·index·structure·would·be·created·as·follows:</p><pre><code·class="text">snmp_index:new(string)</code></pre><p>For·each·new·process·we·create,·we·insert·an·item·in·an·<code·class="inline">snmp_index</code>·structure:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">new_process</span><span·class="p"·data-group-id="3488279210-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SnmpIndex</span><span·class="p"·data-group-id="3488279210-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
139 ··</span><span·class="n">Pid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_process</span><span·class="p"·data-group-id="2202643559-2">(</span><span·class="p"·data-group-id="2202643559-2">)</span><span·class="p">,</span><span·class="w">139 ··</span><span·class="n">Pid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_process</span><span·class="p"·data-group-id="3488279210-2">(</span><span·class="p"·data-group-id="3488279210-2">)</span><span·class="p">,</span><span·class="w">
140 ··</span><span·class="n">NewSnmpIndex</span><span·class="w">·</span><span·class="o">=</span><span·class="w">140 ··</span><span·class="n">NewSnmpIndex</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
141 ····</span><span·class="nc">snmp_index</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="2202643559-3">(</span><span·class="n">SnmpIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="2202643559-3">)</span><span·class="p">,</span><span·class="w">141 ····</span><span·class="nc">snmp_index</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="3488279210-3">(</span><span·class="n">SnmpIndex</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="3488279210-3">)</span><span·class="p">,</span><span·class="w">
142 ··</span><span·class="o">&lt;</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="o">&gt;</span></code></pre><p>With·this·structure,·we·can·now·map·an·OBJECT·IDENTIFIER·in·e.g.·a·GET·NEXT142 ··</span><span·class="o">&lt;</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="o">&gt;</span></code></pre><p>With·this·structure,·we·can·now·map·an·OBJECT·IDENTIFIER·in·e.g.·a·GET·NEXT
143 request,·to·the·correct·process:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">get_next_pid</span><span·class="p"·data-group-id="1444034504-1">(</span><span·class="n">Oid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SnmpIndex</span><span·class="p"·data-group-id="1444034504-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">143 request,·to·the·correct·process:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">get_next_pid</span><span·class="p"·data-group-id="0353861300-1">(</span><span·class="n">Oid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SnmpIndex</span><span·class="p"·data-group-id="0353861300-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
144 ··</span><span·class="p"·data-group-id="1444034504-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1444034504-3">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·cla[·...·truncated·by·diffoscope;·len:·459,·SHA:·0bea6f241937956acd97d24e293b108016ab3031e55e3c8cf39d96f2589b46e7·...·]-4">)</span><span·class="p">,</span><span·class="w">144 ··</span><span·class="p"·data-group-id="0353861300-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0353861300-3">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·cla[·...·truncated·by·diffoscope;·len:·459,·SHA:·7299521e0c751c1727c7b7d6ce87bad93d95d701bdeb232671aff25d550944b0·...·]-4">)</span><span·class="p">,</span><span·class="w">
145 ··</span><span·class="n">Pid</span><span·class="p">.</span></code></pre><h2·id="module-warnings"·class="section-heading">145 ··</span><span·class="n">Pid</span><span·class="p">.</span></code></pre><h2·id="module-warnings"·class="section-heading">
146 ··<a·href="#module-warnings"·class="hover-link">146 ··<a·href="#module-warnings"·class="hover-link">
147 ····<i·class="ri-link-m"·aria-hidden="true"></i>147 ····<i·class="ri-link-m"·aria-hidden="true"></i>
148 ··</a>148 ··</a>
149 ··<span·class="text">Warnings</span>149 ··<span·class="text">Warnings</span>
150 </h2>150 </h2>
151 <blockquote><h4·class="warning">Warning</h4><p><a·href=""·id="1"></a>·All·API·functions·that·update·the·index·return·a·<code·class="inline">NewIndex</code>·term.151 <blockquote><h4·class="warning">Warning</h4><p><a·href=""·id="1"></a>·All·API·functions·that·update·the·index·return·a·<code·class="inline">NewIndex</code>·term.
Offset 791, 15 lines modifiedOffset 791, 15 lines modified
791 ······<p·class="built-using">791 ······<p·class="built-using">
792 ········Built·using792 ········Built·using
793 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the793 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
794 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>794 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
795 ······</p>795 ······</p>
796 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>796 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
797 ····</footer>797 ····</footer>
798 ··</div>798 ··</div>
799 </main>799 </main>
800 </div>800 </div>
801 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>801 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
802 <script>802 <script>
803 ··document.addEventListener("DOMContentLoaded",·function·()·{803 ··document.addEventListener("DOMContentLoaded",·function·()·{
601 B
html2text {}
Max HTML report size reached
21.4 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_instr_functions.html
    
Offset 210, 17 lines modifiedOffset 210, 17 lines modified
210 accessible),·and·the·table·has·three·rows.·The·instrumentation·function·for·this210 accessible),·and·the·table·has·three·rows.·The·instrumentation·function·for·this
211 table·is·called·<code·class="inline">my_table</code>.</p><p><a·href=""·id="getnext1"></a></p><p><img·src="assets/getnext1.gif"·alt="Contents·of·my_table"·title="Contents·of·my_table"/></p><blockquote><h4·class="info">Note</h4><p>N/A·means·not·accessible.</p></blockquote><p>The·manager·issues·the·following·<code·class="inline">getNext</code>·request:</p><pre><code·class="text">getNext{·myTable.myTableEntry.3.1.1,211 table·is·called·<code·class="inline">my_table</code>.</p><p><a·href=""·id="getnext1"></a></p><p><img·src="assets/getnext1.gif"·alt="Contents·of·my_table"·title="Contents·of·my_table"/></p><blockquote><h4·class="info">Note</h4><p>N/A·means·not·accessible.</p></blockquote><p>The·manager·issues·the·following·<code·class="inline">getNext</code>·request:</p><pre><code·class="text">getNext{·myTable.myTableEntry.3.1.1,
212 ·········myTable.myTableEntry.5.1.1·}</code></pre><p>Since·both·operations·involve·the·1.1·index,·this·is·transformed·into·one·call212 ·········myTable.myTableEntry.5.1.1·}</code></pre><p>Since·both·operations·involve·the·1.1·index,·this·is·transformed·into·one·call
213 to·<code·class="inline">my_table</code>:</p><pre><code·class="text">my_table(get_next,·[1,·1],·[3,·5])</code></pre><p>In·this·call,·<code·class="inline">[1,·1]</code>·is·the·<code·class="inline">RowIndex</code>,·where·key·1·has·value·1,·and·key·2·has213 to·<code·class="inline">my_table</code>:</p><pre><code·class="text">my_table(get_next,·[1,·1],·[3,·5])</code></pre><p>In·this·call,·<code·class="inline">[1,·1]</code>·is·the·<code·class="inline">RowIndex</code>,·where·key·1·has·value·1,·and·key·2·has
214 value·1,·and·<code·class="inline">[3,·5]</code>·is·the·list·of·requested·columns.·The·function·should·now214 value·1,·and·<code·class="inline">[3,·5]</code>·is·the·list·of·requested·columns.·The·function·should·now
215 return·the·lexicographically·next·elements:</p><pre><code·class="text">[{[3,·1,·2],·d},·{[5,·1,·2],·f}]</code></pre><p>This·is·illustrated·in·the·following·table:</p><p><a·href=""·id="getnext2"></a></p><p><img·src="assets/getnext2.gif"·alt="GetNext·from·[3,1,1]·and·[5,1,1]."·title="GetNext·from·[3,1,1]·and·[5,1,1]."/></p><p>The·manager·now·issues·the·following·<code·class="inline">getNext</code>·request:</p><pre><code·class="text">getNext{·myTable.myTableEntry.3.2.1,215 return·the·lexicographically·next·elements:</p><pre><code·class="text">[{[3,·1,·2],·d},·{[5,·1,·2],·f}]</code></pre><p>This·is·illustrated·in·the·following·table:</p><p><a·href=""·id="getnext2"></a></p><p><img·src="assets/getnext2.gif"·alt="GetNext·from·[3,1,1]·and·[5,1,1]."·title="GetNext·from·[3,1,1]·and·[5,1,1]."/></p><p>The·manager·now·issues·the·following·<code·class="inline">getNext</code>·request:</p><pre><code·class="text">getNext{·myTable.myTableEntry.3.2.1,
216 ·········myTable.myTableEntry.5.2.1·}</code></pre><p>This·is·transformed·into·one·call·to·<code·class="inline">my_table</code>:</p><pre><code·class="text">my_table(get_next,·[2,·1],·[3,·5])</code></pre><p>The·function·should·now·return:</p><pre><code·class="text">[{[4,·1,·1],·b},·endOfTable]</code></pre><p>This·is·illustrated·in·the·following·table:</p><p><a·href=""·id="getnext3"></a></p><p><img·src="assets/getnext3.gif"·alt="GetNext·from·[3,2,1]·and·[5,2,1]."·title="GetNext·from·[3,2,1]·and·[5,2,1]."/></p><p>The·manager·now·issues·the·following·<code·class="inline">getNext</code>·request:</p><pre><code·class="text">getNext{·myTable.myTableEntry.3.1.2,216 ·········myTable.myTableEntry.5.2.1·}</code></pre><p>This·is·transformed·into·one·call·to·<code·class="inline">my_table</code>:</p><pre><code·class="text">my_table(get_next,·[2,·1],·[3,·5])</code></pre><p>The·function·should·now·return:</p><pre><code·class="text">[{[4,·1,·1],·b},·endOfTable]</code></pre><p>This·is·illustrated·in·the·following·table:</p><p><a·href=""·id="getnext3"></a></p><p><img·src="assets/getnext3.gif"·alt="GetNext·from·[3,2,1]·and·[5,2,1]."·title="GetNext·from·[3,2,1]·and·[5,2,1]."/></p><p>The·manager·now·issues·the·following·<code·class="inline">getNext</code>·request:</p><pre><code·class="text">getNext{·myTable.myTableEntry.3.1.2,
217 ·········myTable.myTableEntry.4.1.2·}</code></pre><p>This·will·be·transform·into·one·call·to·<code·class="inline">my_table</code>:</p><pre><code·class="text">my_table(get_next,·[1,·2],·[3,·4])</code></pre><p>The·function·should·now·return:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0451859536-1">[</span><span·class="p"·data-group-id="0451859536-2">{</span><span·class="p"·data-group-id="0451859536-3">[</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0451859536-3">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">g</span><span·class="p"·data-group-id="0451859536-2">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0451859536-4">{</span><span·class="p"·data-group-id="0451859536-5">[</span><span·class="mi">5</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0451859536-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">c</span><span·class="p"·data-group-id="0451859536-4">}</span><span·class="p"·data-group-id="0451859536-1">]</span></code></pre><p>This·is·illustrated·in·the·following·table:</p><p><a·href=""·id="getnext4"></a></p><p><img·src="assets/getnext4.gif"·alt="GetNext·from·[3,1,2]·and·[4,1,2]."·title="GetNext·from·[3,1,2]·and·[4,1,2]."/></p><p>The·manager·now·issues·the·following·<code·class="inline">getNext</code>·request:</p><pre><code·class="text">getNext{·myTable.myTableEntry, 
218 ·········myTable.myTableEntry.1.3.2·}</code></pre><p>This·will·be·transform·into·two·calls·to·<code·class="inline">my_table</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_table</span><span·class="p"·data-group-id="7181416574-1">(</span><span·class="ss">get_next</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7181416574-2">[</span><span·class="p"·data-group-id="7181416574-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7181416574-3">[</span><span·class="mi">0</span><span·class="p"·data-group-id="7181416574-3">]</span><span·class="p"·data-group-id="7181416574-1">)</span><span·class="w">·</span><span·class="ow">and</span><span·class="w"> 
219 </span><span·class="nf">my_table</span><span·class="p"·data-group-id="7181416574-4">(</span><span·class="ss">get_next</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7181416574-5">[</span><span·class="mi">3</span><span·[·...·truncated·by·diffoscope;·len:·447,·SHA:·9c1eae46be95452f199ea225a764c8342d4d43d383ad7c50c6e0397f8ff008d9·...·]217 ·········myTable.myTableEntry.4.1.2·}</code></pre><p>This·will·be·transform·into·one·call·to·<code·class="inline">my_table</code>:</p><pre><code·class="text">my_table(get_next,·[1,·2],·[3,·4])</code></pre><p>The·function·should·now·return:</p><pre><code·cl[·...·truncated·by·diffoscope;·len:·1463,·SHA:·378c5e7277e6d15f1d2a24e8b6014317dcec3f51937be406932309cc578bbf95·...·]
 218 ·········myTable.myTableEntry.1.3.2·}</code></pre><p>This·will·be·transform·into·two·calls·to·<code·class="inline">my_table</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_table</span><span·class="p"·data-group-id="3997754610-1">(</span><span·class="ss">get_next</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3997754610-2">[</span><span·class="p"·data-group-id="3997754610-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3997754610-3">[</span><span·class="mi">0</span><span·class="p"·data-group-id="3997754610-3">]</span><span·class="p"·data-group-id="3997754610-1">)</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">
 219 </span><span·class="nf">my_table</span><span·class="p"·data-group-id="3997754610-4">(</span><span·class="ss">get_next</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3997754610-5">[</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="3997754610-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3997754610-6">[</span><span·class="mi">1</span><span·class="p"·data-group-id="3997754610-6">]</span><span·class="p"·data-group-id="3997754610-4">)</span></code></pre><p>The·function·should·now·return:</p><pre><code·class="text">[{[3,·1,·1],·a}]·and
220 [{[3,·1,·1],·a}]</code></pre><p>In·both·cases,·the·first·accessible·element·in·the·table·should·be·returned.·As220 [{[3,·1,·1],·a}]</code></pre><p>In·both·cases,·the·first·accessible·element·in·the·table·should·be·returned.·As
221 the·key·columns·are·not·accessible,·this·means·that·the·third·column·is·the221 the·key·columns·are·not·accessible,·this·means·that·the·third·column·is·the
222 first·row.</p><blockquote><h4·class="info">Note</h4><p>Normally,·the·functions·described·above·behave·exactly·as·shown,·but·they·are222 first·row.</p><blockquote><h4·class="info">Note</h4><p>Normally,·the·functions·described·above·behave·exactly·as·shown,·but·they·are
223 free·to·perform·other·actions.·For·example,·a·get-request·may·have·side223 free·to·perform·other·actions.·For·example,·a·get-request·may·have·side
224 effects·such·as·setting·some·other·variable,·perhaps·a·global·<code·class="inline">lastAccessed</code>224 effects·such·as·setting·some·other·variable,·perhaps·a·global·<code·class="inline">lastAccessed</code>
225 variable.</p></blockquote><h2·id="using-the-extraargument"·class="section-heading">225 variable.</p></blockquote><h2·id="using-the-extraargument"·class="section-heading">
226 ··<a·href="#using-the-extraargument"·class="hover-link">226 ··<a·href="#using-the-extraargument"·class="hover-link">
Offset 229, 25 lines modifiedOffset 229, 25 lines modified
229 ··<span·class="text">Using·the·ExtraArgument</span>229 ··<span·class="text">Using·the·ExtraArgument</span>
230 </h2>230 </h2>
231 <p>The·<code·class="inline">ListOfExtraArguments</code>·can·be·used·to·write·generic·functions.·This·list·is231 <p>The·<code·class="inline">ListOfExtraArguments</code>·can·be·used·to·write·generic·functions.·This·list·is
232 appended·to·the·standard·arguments·for·each·function.·Consider·two·read-only232 appended·to·the·standard·arguments·for·each·function.·Consider·two·read-only
233 variables·for·a·device,·<code·class="inline">ipAdr</code>·and·<code·class="inline">name</code>·with·object·identifiers·1.1.23.4·and233 variables·for·a·device,·<code·class="inline">ipAdr</code>·and·<code·class="inline">name</code>·with·object·identifiers·1.1.23.4·and
234 1.1.7·respectively.·To·access·these·variables,·one·could·implement·the·two234 1.1.7·respectively.·To·access·these·variables,·one·could·implement·the·two
235 Erlang·functions·<code·class="inline">ip_access</code>·and·<code·class="inline">name_access</code>,·which·will·be·in·the·MIB.·The235 Erlang·functions·<code·class="inline">ip_access</code>·and·<code·class="inline">name_access</code>,·which·will·be·in·the·MIB.·The
236 functions·could·be·specified·in·a·text·file·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5575475106-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5575475106-2">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ip_acc[·...·truncated·by·diffoscope;·len:·258,·SHA:·9a07f2c4fa55e490a7658df4f521ab7a694cf92a7bd0091d79e7b14f8b0cc2fe·...·]-1">}</span><span·class="p">.</span><span·class="w">236 functions·could·be·specified·in·a·text·file·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0633474619-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0633474619-2">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ip_acc[·...·truncated·by·diffoscope;·len:·258,·SHA:·7177f4dbb0cdb55385fcc533b2d86add53920a6f6ea6581426b7493f59934c48·...·]-1">}</span><span·class="p">.</span><span·class="w">
237 </span><span·class="c1">%·Or·using·the·oid·syntax·for·&#39;name&#39;</span><span·class="w">237 </span><span·class="c1">%·Or·using·the·oid·syntax·for·&#39;name&#39;</span><span·class="w">
238 </span><span·class="p"·data-group-id="5575475106-4">{</span><span·class="p"·data-group-id="5575475106-5">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="5575475106-5">]</span><span[·...·truncated·by·diffoscope;·len:·460,·SHA:·75cfad1d97bc419bb59452052c9851f11df9f862fd53c24e19321e2a2d61cc24·...·]-4">}</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">ExtraArgument</code>·parameter·is·the·empty·list.·For·example,·when·the·agent238 </span><span·class="p"·data-group-id="0633474619-4">{</span><span·class="p"·data-group-id="0633474619-5">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="0633474619-5">]</span><span[·...·truncated·by·diffoscope;·len:·460,·SHA:·80d8479a073cd1942a2254f1b491d686678105f57fe045b48a609a0ac6751519·...·]-4">}</span><span·class="p">.</span></code></pre><p>The·<code·class="inline">ExtraArgument</code>·parameter·is·the·empty·list.·For·example,·when·the·agent
239 receives·a·get-request·for·the·<code·class="inline">ipAdr</code>·variable,·a·call·will·be·made·to239 receives·a·get-request·for·the·<code·class="inline">ipAdr</code>·variable,·a·call·will·be·made·to
240 <code·class="inline">ip_access(get)</code>.·The·value·returned·by·this·function·is·the·answer·to·the240 <code·class="inline">ip_access(get)</code>.·The·value·returned·by·this·function·is·the·answer·to·the
241 get-request.</p><p>If·<code·class="inline">ip_access</code>·and·<code·class="inline">name_access</code>·are·implemented·similarly,·we·could·write·a241 get-request.</p><p>If·<code·class="inline">ip_access</code>·and·<code·class="inline">name_access</code>·are·implemented·similarly,·we·could·write·a
242 <code·class="inline">generic_access</code>·function·using·the·<code·class="inline">ListOfExtraArguments</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1901989442-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1901989442-2">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">generi[·...·truncated·by·diffoscope;·len:·302,·SHA:·3e2478818659ef8e41b6c99c4c2c72e561678d212d241cf5289c15b69fe99ef8·...·]-1">}</span><span·class="p">.</span><span·class="w">242 <code·class="inline">generic_access</code>·function·using·the·<code·class="inline">ListOfExtraArguments</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2505197237-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2505197237-2">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">generi[·...·truncated·by·diffoscope;·len:·302,·SHA:·38b668a70b68dfb02741937660d1190c84222940085824ee776ebd9b93fb971b·...·]-1">}</span><span·class="p">.</span><span·class="w">
243 </span><span·class="c1">%·The·mnemonic·&#39;name&#39;·is·more·convenient·than·1.1.7</span><span·class="w">243 </span><span·class="c1">%·The·mnemonic·&#39;name&#39;·is·more·convenient·than·1.1.7</span><span·class="w">
244 </span><span·class="p"·data-group-id="1901989442-4">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1901989442-5">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">generic_access</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1901989442-6">[</span><span·class="ss">&#39;NAME&#39;</span><span·class="p"·data-group-id="1901989442-6">]</span><span·class="p"·data-group-id="1901989442-5">}</span><span·class="p"·data-group-id="1901989442-4">}</span><span·class="p">.</span></code></pre><p>When·the·agent·receives·the·same·get-request·as·above,·a·call·will·be·made·to 
245 <code·class="inline">generic_access(get,</code>'<code·class="inline">IPADR')</code>.</p><p>Yet·another·possibility,·closer·to·the·hardware,·could·be:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6106948997-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6106948997-2">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">generic_access</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6106948997-3">[</span><span·class="mi">16#2543</span><span·class="p"·data-group-id="6106948997-3">]</span><span·class="p"·data-group-id="6106948997-2">}</span><span·class="p"·data-group-id="6106948997-1">}</span><span·class="p">.</span><span·class="w"> 
246 </span><span·class="p"·data-group-id="6106948997-4">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6106948997-5">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">generic[·...·truncated·by·diffoscope;·len:·399,·SHA:·1299eb3db126eac01142970349c465586810da5d8713b9efe262b18382964caa·...·]244 </span><span·class="p"·data-group-id="2505197237-4">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2505197237-5">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">generic[·...·truncated·by·diffoscope;·len:·429,·SHA:·e842ccd7f784d9e591ee7e80792955da8591a8661c0a4ff1d2522f8d68142ca0·...·]
 245 <code·class="inline">generic_access(get,</code>'<code·class="inline">IPADR')</code>.</p><p>Yet·another·possibility,·closer·to·the·hardware,·could·be:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8386674898-1">{</span><span·class="ss">ipAdr</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8386674898-2">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">generic_access</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8386674898-3">[</span><span·class="mi">16#2543</span><span·class="p"·data-group-id="8386674898-3">]</span><span·class="p"·data-group-id="8386674898-2">}</span><span·class="p"·data-group-id="8386674898-1">}</span><span·class="p">.</span><span·class="w">
 246 </span><span·class="p"·data-group-id="8386674898-4">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8386674898-5">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">generic_access</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8386674898-6">[</span><span·class="mi">16#A2B3</span><span·class="p"·data-group-id="8386674898-6">]</span><span·class="p"·data-group-id="8386674898-5">}</span><span·class="p"·data-group-id="8386674898-4">}</span><span·class="p">.</span></code></pre><h2·id="default-instrumentation"·class="section-heading">
247 ··<a·href="#default-instrumentation"·class="hover-link">247 ··<a·href="#default-instrumentation"·class="hover-link">
248 ····<i·class="ri-link-m"·aria-hidden="true"></i>248 ····<i·class="ri-link-m"·aria-hidden="true"></i>
249 ··</a>249 ··</a>
250 ··<span·class="text">Default·Instrumentation</span>250 ··<span·class="text">Default·Instrumentation</span>
251 </h2>251 </h2>
252 <p><a·href=""·id="snmp_3"></a></p><p>When·the·MIB·definition·work·is·finished,·there·are·two·major·issues·left.</p><ul><li>Implementing·the·MIB</li><li>Implementing·a·Manager·Application.</li></ul><p>Implementing·an·MIB·can·be·a·tedious·task.·Most·probably,·there·is·a·need·to252 <p><a·href=""·id="snmp_3"></a></p><p>When·the·MIB·definition·work·is·finished,·there·are·two·major·issues·left.</p><ul><li>Implementing·the·MIB</li><li>Implementing·a·Manager·Application.</li></ul><p>Implementing·an·MIB·can·be·a·tedious·task.·Most·probably,·there·is·a·need·to
253 test·the·agent·before·all·tables·and·variables·are·implemented.·In·this·case,253 test·the·agent·before·all·tables·and·variables·are·implemented.·In·this·case,
Offset 345, 15 lines modifiedOffset 345, 15 lines modified
345 ······<p·class="built-using">345 ······<p·class="built-using">
346 ········Built·using346 ········Built·using
347 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the347 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
348 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>348 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
349 ······</p>349 ······</p>
350 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>350 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
351 ····</footer>351 ····</footer>
352 ··</div>352 ··</div>
353 </main>353 </main>
354 </div>354 </div>
355 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>355 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
356 <script>356 <script>
357 ··document.addEventListener("DOMContentLoaded",·function·()·{357 ··document.addEventListener("DOMContentLoaded",·function·()·{
841 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_intro.html
    
Offset 253, 15 lines modifiedOffset 253, 15 lines modified
253 ······<p·class="built-using">253 ······<p·class="built-using">
254 ········Built·using254 ········Built·using
255 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the255 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
256 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>256 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
257 ······</p>257 ······</p>
258 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>258 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
259 ····</footer>259 ····</footer>
260 ··</div>260 ··</div>
261 </main>261 </main>
262 </div>262 </div>
263 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>263 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
264 <script>264 <script>
265 ··document.addEventListener("DOMContentLoaded",·function·()·{265 ··document.addEventListener("DOMContentLoaded",·function·()·{
725 B
html2text {}
Max HTML report size reached
8.64 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_manager_config_files.html
    
Offset 145, 18 lines modifiedOffset 145, 18 lines modified
145 and·<code·class="inline">IpPort</code>·is·an·integer.</p><p>When·<code·class="inline">Addr</code>·does·not·contain·a·port·number,·the·value·of·<code·class="inline">port</code>·is·used.</p><p>When·a·<code·class="inline">Addr</code>·is·not·specified·i.e·by·using·only·a·<code·class="inline">Domain</code>·atom,·the145 and·<code·class="inline">IpPort</code>·is·an·integer.</p><p>When·<code·class="inline">Addr</code>·does·not·contain·a·port·number,·the·value·of·<code·class="inline">port</code>·is·used.</p><p>When·a·<code·class="inline">Addr</code>·is·not·specified·i.e·by·using·only·a·<code·class="inline">Domain</code>·atom,·the
146 host's·name·is·resolved·to·find·the·IP·address,·and·the·value·of·<code·class="inline">port</code>·is146 host's·name·is·resolved·to·find·the·IP·address,·and·the·value·of·<code·class="inline">port</code>·is
147 used.</p></li></ul></li><li><p><code·class="inline">port</code>·-·which·defines·which·UDP·port·the·manager·uses·for·communicating147 used.</p></li></ul></li><li><p><code·class="inline">port</code>·-·which·defines·which·UDP·port·the·manager·uses·for·communicating
148 with·agents.·<em>Mandatory</em>·if·<code·class="inline">transports</code>·does·not·define·a·port·number·for148 with·agents.·<em>Mandatory</em>·if·<code·class="inline">transports</code>·does·not·define·a·port·number·for
149 every·transport.</p></li><li><p><code·class="inline">engine_id</code>·-·The·<code·class="inline">SnmpEngineID</code>·as·defined·in·SNMP-FRAMEWORK-MIB.149 every·transport.</p></li><li><p><code·class="inline">engine_id</code>·-·The·<code·class="inline">SnmpEngineID</code>·as·defined·in·SNMP-FRAMEWORK-MIB.
150 <em>Mandatory</em>.</p></li><li><p><code·class="inline">max_message_size</code>·-·The·<code·class="inline">snmpEngineMaxMessageSize</code>·as·defined·in150 <em>Mandatory</em>.</p></li><li><p><code·class="inline">max_message_size</code>·-·The·<code·class="inline">snmpEngineMaxMessageSize</code>·as·defined·in
151 SNMP-FRAMEWORK-MIB.·<em>Mandatory</em>.</p></li></ul></li><li><p><code·class="inline">Value</code>·is·the·value·for·the·variable.</p></li></ul><p>The·legacy·and·intermediate·variables·<code·class="inline">address</code>·and·<code·class="inline">domain</code>·are·still·supported151 SNMP-FRAMEWORK-MIB.·<em>Mandatory</em>.</p></li></ul></li><li><p><code·class="inline">Value</code>·is·the·value·for·the·variable.</p></li></ul><p>The·legacy·and·intermediate·variables·<code·class="inline">address</code>·and·<code·class="inline">domain</code>·are·still·supported
152 so·old·configurations·will·work.</p><p>The·following·example·shows·a·<code·class="inline">manager.conf</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7072537473-1">{</span><span·class="ss">transports</span><span·class="p">,</span><span·class="w">·······</span><span·class="p"·data-group-id="7072537473-2">[</span><span·class="p"·data-group-id="7072537473-3">{</span><span·class="ss">transportDomainUdpIpv4</[·...·truncated·by·diffoscope;·len:·560,·SHA:·6ee0726a39e78846acd2dfea5b1900c0127bff7e2c2143736b521ed94a837bc5·...·]-3">}</span><span·class="p">,</span><span·class="w">152 so·old·configurations·will·work.</p><p>The·following·example·shows·a·<code·class="inline">manager.conf</code>·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7473526188-1">{</span><span·class="ss">transports</span><span·class="p">,</span><span·class="w">·······</span><span·class="p"·data-group-id="7473526188-2">[</span><span·class="p"·data-group-id="7473526188-3">{</span><span·class="ss">transportDomainUdpIpv4</[·...·truncated·by·diffoscope;·len:·560,·SHA:·8969d86f86d1b5dcc22432293da671f5a6b6cdd54619c47b883dbbca75ce1de1·...·]-3">}</span><span·class="p">,</span><span·class="w">
153 ····················</span><span·class="p"·data-group-id="7072537473-6">{</span><span·class="ss">transportDomainUdpIpv6</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7072537473-7">{</span><span·class="p"·data-group-id="7072537473-8">{</span><span·class="mi">0</span><span·clas[·...·truncated·by·diffoscope;·len:·662,·SHA:·27e7ce194d6db6f66060b97e2415a9dfbcc58418d4a8d6a4b570868c1e8c0cad·...·]-1">}</span><span·class="p">.</span><span·class="w">153 ····················</span><span·class="p"·data-group-id="7473526188-6">{</span><span·class="ss">transportDomainUdpIpv6</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7473526188-7">{</span><span·class="p"·data-group-id="7473526188-8">{</span><span·class="mi">0</span><span·clas[·...·truncated·by·diffoscope;·len:·662,·SHA:·4040859f580d164e7db5aa478a627d6b81b47cc6dd86e8ea99a43986909f13af·...·]-1">}</span><span·class="p">.</span><span·class="w">
154 </span><span·class="p"·data-group-id="7072537473-9">{</span><span·class="ss">engine_id</span><span·class="p">,</span><span·class="w">········</span><span·class="s">&quot;mgrEngine&quot;</span><span·class="p"·data-group-id="7072537473-9">}</span><span·class="p">.</span><span·class="w">154 </span><span·class="p"·data-group-id="7473526188-9">{</span><span·class="ss">engine_id</span><span·class="p">,</span><span·class="w">········</span><span·class="s">&quot;mgrEngine&quot;</span><span·class="p"·data-group-id="7473526188-9">}</span><span·class="p">.</span><span·class="w">
155 </span><span·class="p"·data-group-id="7072537473-10">{</span><span·class="ss">max_message_size</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">484</span><span·class="p"·data-group-id="7072537473-10">}</span><span·class="p">.</span></code></pre><p>The·value·of·<code·class="inline">engine_id</code>·is·a·string,·which·should·have·a·very·specific155 </span><span·class="p"·data-group-id="7473526188-10">{</span><span·class="ss">max_message_size</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">484</span><span·class="p"·data-group-id="7473526188-10">}</span><span·class="p">.</span></code></pre><p>The·value·of·<code·class="inline">engine_id</code>·is·a·string,·which·should·have·a·very·specific
156 structure.·See·RFC·2271/2571·for·details.</p><h2·id="users"·class="section-heading">156 structure.·See·RFC·2271/2571·for·details.</p><h2·id="users"·class="section-heading">
157 ··<a·href="#users"·class="hover-link">157 ··<a·href="#users"·class="hover-link">
158 ····<i·class="ri-link-m"·aria-hidden="true"></i>158 ····<i·class="ri-link-m"·aria-hidden="true"></i>
159 ··</a>159 ··</a>
160 ··<span·class="text">Users</span>160 ··<span·class="text">Users</span>
161 </h2>161 </h2>
162 <p>For·each·<em>manager·user</em>,·the·manager·needs·some·information.·This·information·is162 <p>For·each·<em>manager·user</em>,·the·manager·needs·some·information.·This·information·is
Offset 243, 15 lines modifiedOffset 243, 15 lines modified
243 ······<p·class="built-using">243 ······<p·class="built-using">
244 ········Built·using244 ········Built·using
245 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the245 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
246 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>246 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
247 ······</p>247 ······</p>
248 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>248 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
249 ····</footer>249 ····</footer>
250 ··</div>250 ··</div>
251 </main>251 </main>
252 </div>252 </div>
253 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>253 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
254 <script>254 <script>
255 ··document.addEventListener("DOMContentLoaded",·function·()·{255 ··document.addEventListener("DOMContentLoaded",·function·()·{
884 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_manager_funct_descr.html
    
Offset 209, 15 lines modifiedOffset 209, 15 lines modified
209 ······<p·class="built-using">209 ······<p·class="built-using">
210 ········Built·using210 ········Built·using
211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
213 ······</p>213 ······</p>
214 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
215 ····</footer>215 ····</footer>
216 ··</div>216 ··</div>
217 </main>217 </main>
218 </div>218 </div>
219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
220 <script>220 <script>
221 ··document.addEventListener("DOMContentLoaded",·function·()·{221 ··document.addEventListener("DOMContentLoaded",·function·()·{
735 B
html2text {}
Max HTML report size reached
1.58 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_manager_netif.html
    
Offset 251, 15 lines modifiedOffset 251, 15 lines modified
251 ······<p·class="built-using">251 ······<p·class="built-using">
252 ········Built·using252 ········Built·using
253 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the253 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
254 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>254 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
255 ······</p>255 ······</p>
256 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>256 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
257 ····</footer>257 ····</footer>
258 ··</div>258 ··</div>
259 </main>259 </main>
260 </div>260 </div>
261 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>261 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
262 <script>262 <script>
263 ··document.addEventListener("DOMContentLoaded",·function·()·{263 ··document.addEventListener("DOMContentLoaded",·function·()·{
756 B
html2text {}
Max HTML report size reached
8.85 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_mib_compiler.html
    
Offset 137, 30 lines modifiedOffset 137, 30 lines modified
137 before·it·will·be·compiled.·This·text·file·must·have·the·same·name·as·the·MIB,137 before·it·will·be·compiled.·This·text·file·must·have·the·same·name·as·the·MIB,
138 but·with·the·suffix·<code·class="inline">.mib</code>.·This·is·necessary·for·handling·the·<code·class="inline">IMPORT</code>138 but·with·the·suffix·<code·class="inline">.mib</code>.·This·is·necessary·for·handling·the·<code·class="inline">IMPORT</code>
139 statement.</p><p>The·association·file,·which·contains·the·names·of·instrumentation·functions·for139 statement.</p><p>The·association·file,·which·contains·the·names·of·instrumentation·functions·for
140 the·MIB,·should·have·the·suffix·<code·class="inline">.funcs</code>.·If·the·compiler·does·not·find·the140 the·MIB,·should·have·the·suffix·<code·class="inline">.funcs</code>.·If·the·compiler·does·not·find·the
141 association·file,·it·gives·a·warning·message·and·uses·default·instrumentation141 association·file,·it·gives·a·warning·message·and·uses·default·instrumentation
142 functions.·(See·<a·href="snmp_instr_functions.html#snmp_3">Default·Instrumentation</a>·for142 functions.·(See·<a·href="snmp_instr_functions.html#snmp_3">Default·Instrumentation</a>·for
143 more·details).</p><p>The·MIB·compiler·is·started·with·a·call·to·<code·class="inline">snmpc:compile(&lt;mibname&gt;).</code>·For143 more·details).</p><p>The·MIB·compiler·is·started·with·a·call·to·<code·class="inline">snmpc:compile(&lt;mibname&gt;).</code>·For
144 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmpc</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="1722936114-1">(</span><span·class="s">&quot;RFC1213-MIB&quot;</span><span·class="p"·data-group-id="1722936114-1">)</span><span·class="p">.</span></code></pre><p>The·output·is·a·new·file·which·is·called·<code·class="inline">&lt;mibname&gt;.bin</code>.</p><p>The·MIB·compiler·understands·both·SMIv1·and·SMIv2·MIBs.·It·uses·the144 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmpc</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="1378516034-1">(</span><span·class="s">&quot;RFC1213-MIB&quot;</span><span·class="p"·data-group-id="1378516034-1">)</span><span·class="p">.</span></code></pre><p>The·output·is·a·new·file·which·is·called·<code·class="inline">&lt;mibname&gt;.bin</code>.</p><p>The·MIB·compiler·understands·both·SMIv1·and·SMIv2·MIBs.·It·uses·the
145 MODULE-IDENTITY·statement·to·determinate·if·the·MIB·is·written·in·SMI·version·1145 MODULE-IDENTITY·statement·to·determinate·if·the·MIB·is·written·in·SMI·version·1
146 or·2.</p><h2·id="importing-mibs"·class="section-heading">146 or·2.</p><h2·id="importing-mibs"·class="section-heading">
147 ··<a·href="#importing-mibs"·class="hover-link">147 ··<a·href="#importing-mibs"·class="hover-link">
148 ····<i·class="ri-link-m"·aria-hidden="true"></i>148 ····<i·class="ri-link-m"·aria-hidden="true"></i>
149 ··</a>149 ··</a>
150 ··<span·class="text">Importing·MIBs</span>150 ··<span·class="text">Importing·MIBs</span>
151 </h2>151 </h2>
152 <p>The·compiler·handles·the·<code·class="inline">IMPORT</code>·statement.·It·is·important·to·import·the152 <p>The·compiler·handles·the·<code·class="inline">IMPORT</code>·statement.·It·is·important·to·import·the
153 compiled·file·and·not·the·ASN.1·(source)·file.·A·MIB·must·be·recompiled·to·make153 compiled·file·and·not·the·ASN.1·(source)·file.·A·MIB·must·be·recompiled·to·make
154 changes·visible·to·other·MIBs·importing·it.</p><p>The·compiled·files·of·the·imported·MIBs·must·be·present·in·the·current154 changes·visible·to·other·MIBs·importing·it.</p><p>The·compiled·files·of·the·imported·MIBs·must·be·present·in·the·current
155 directory,·or·a·directory·in·the·current·path.·The·path·is·supplied·with·the155 directory,·or·a·directory·in·the·current·path.·The·path·is·supplied·with·the
156 <code·class="inline">{i,·Path}</code>·option,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmpc</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="6331676222-1">(</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p">,</span><span·class="w">156 <code·class="inline">{i,·Path}</code>·option,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmpc</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="0239648582-1">(</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p">,</span><span·class="w">
157 ·······</span><span·class="p"·data-group-id="6331676222-2">[</span><span·class="p"·data-group-id="6331676222-3">{</span><span·class="ss">i</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6331676222-4">[</span><span·class="s">&quot;friend_mibs/&quot;</span><span·cl[·...·truncated·by·diffoscope;·len:·291,·SHA:·e66895a8b0f984a218c0ffecf5a6bcd1c427f53e12ee9fb5792bec2ce67b1799·...·]2-1">)</span><span·class="p">.</span></code></pre><p>It·is·also·possible·to·import·MIBs·from·OTP·applications·in·an·<code·class="inline">&quot;include_lib&quot;</code>157 ·······</span><span·class="p"·data-group-id="0239648582-2">[</span><span·class="p"·data-group-id="0239648582-3">{</span><span·class="ss">i</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0239648582-4">[</span><span·class="s">&quot;friend_mibs/&quot;</span><span·cl[·...·truncated·by·diffoscope;·len:·291,·SHA:·cd3298a94b163d1d6d3ce2863293d0c56e9ff860e13136a742d2562def94e976·...·]2-1">)</span><span·class="p">.</span></code></pre><p>It·is·also·possible·to·import·MIBs·from·OTP·applications·in·an·<code·class="inline">&quot;include_lib&quot;</code>
158 like·fashion·with·the·<code·class="inline">il</code>·option.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmpc</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="9774930391-1">(</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p">,</span><span·class="w">158 like·fashion·with·the·<code·class="inline">il</code>·option.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmpc</span><span·class="p">:</span><span·class="nf">compile</span><span·class="p"·data-group-id="3897560403-1">(</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p">,</span><span·class="w">
159 ·······</span><span·class="p"·data-group-id="9774930391-2">[</span><span·class="p"·data-group-id="9774930391-3">{</span><span·class="ss">il</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9774930391-4">[</span><span·class="s">&quot;snmp/priv/mibs/&quot;</span><spa[·...·truncated·by·diffoscope;·len:·295,·SHA:·4f4d5cfd66f025af52549a1109ba460b8e669aff5ef3271b8d6dee40647c76b9·...·]-1">)</span><span·class="p">.</span></code></pre><p>finds·the·latest·version·of·the·<code·class="inline">snmp</code>·and·<code·class="inline">myapp</code>·applications·in·the·OTP159 ·······</span><span·class="p"·data-group-id="3897560403-2">[</span><span·class="p"·data-group-id="3897560403-3">{</span><span·class="ss">il</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3897560403-4">[</span><span·class="s">&quot;snmp/priv/mibs/&quot;</span><spa[·...·truncated·by·diffoscope;·len:·295,·SHA:·6c0b2faad55df1c09aa51655509999ac4955a8a304b4c128c3f4fe01d27e5d29·...·]-1">)</span><span·class="p">.</span></code></pre><p>finds·the·latest·version·of·the·<code·class="inline">snmp</code>·and·<code·class="inline">myapp</code>·applications·in·the·OTP
160 system·and·uses·the·expanded·paths·as·include·paths.</p><p>Note·that·an·SMIv2·MIB·can·import·an·SMIv1·MIB·and·vice·versa.</p><p>The·following·MIBs·are·built-ins·of·the·Erlang·SNMP·compiler:·SNMPv2-SMI,160 system·and·uses·the·expanded·paths·as·include·paths.</p><p>Note·that·an·SMIv2·MIB·can·import·an·SMIv1·MIB·and·vice·versa.</p><p>The·following·MIBs·are·built-ins·of·the·Erlang·SNMP·compiler:·SNMPv2-SMI,
161 RFC-1215,·RFC-1212,·SNMPv2-TC,·SNMPv2-CONF,·and·RFC1155-SMI.·They·cannot161 RFC-1215,·RFC-1212,·SNMPv2-TC,·SNMPv2-CONF,·and·RFC1155-SMI.·They·cannot
162 therefore·be·compiled·separately.</p><h2·id="mib-consistency-checking"·class="section-heading">162 therefore·be·compiled·separately.</p><h2·id="mib-consistency-checking"·class="section-heading">
163 ··<a·href="#mib-consistency-checking"·class="hover-link">163 ··<a·href="#mib-consistency-checking"·class="hover-link">
164 ····<i·class="ri-link-m"·aria-hidden="true"></i>164 ····<i·class="ri-link-m"·aria-hidden="true"></i>
165 ··</a>165 ··</a>
166 ··<span·class="text">MIB·Consistency·Checking</span>166 ··<span·class="text">MIB·Consistency·Checking</span>
Offset 262, 15 lines modifiedOffset 262, 15 lines modified
262 ······<p·class="built-using">262 ······<p·class="built-using">
263 ········Built·using263 ········Built·using
264 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the264 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
265 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>265 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
266 ······</p>266 ······</p>
267 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>267 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
268 ····</footer>268 ····</footer>
269 ··</div>269 ··</div>
270 </main>270 </main>
271 </div>271 </div>
272 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>272 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
273 <script>273 <script>
274 ··document.addEventListener("DOMContentLoaded",·function·()·{274 ··document.addEventListener("DOMContentLoaded",·function·()·{
834 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_notification_mib.html
    
Offset 482, 15 lines modifiedOffset 482, 15 lines modified
482 ······<p·class="built-using">482 ······<p·class="built-using">
483 ········Built·using483 ········Built·using
484 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the484 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
485 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>485 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
486 ······</p>486 ······</p>
487 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>487 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
488 ····</footer>488 ····</footer>
489 ··</div>489 ··</div>
490 </main>490 </main>
491 </div>491 </div>
492 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>492 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
493 <script>493 <script>
494 ··document.addEventListener("DOMContentLoaded",·function·()·{494 ··document.addEventListener("DOMContentLoaded",·function·()·{
612 B
html2text {}
Max HTML report size reached
3.78 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_pdus.html
    
Offset 130, 16 lines modifiedOffset 130, 16 lines modified
130 ····<section·id="moduledoc">130 ····<section·id="moduledoc">
131 <p>Encode·and·Decode·Functions·for·SNMP·PDUs</p><p>RFC1157,·RFC1905·and/or·RFC2272·should·be·studied·carefully·before·using·this131 <p>Encode·and·Decode·Functions·for·SNMP·PDUs</p><p>RFC1157,·RFC1905·and/or·RFC2272·should·be·studied·carefully·before·using·this
132 module,·<code·class="inline">snmp_pdus</code>.</p><p>The·module·<code·class="inline">snmp_pdus</code>·contains·functions·for·encoding·and·decoding·of·SNMP132 module,·<code·class="inline">snmp_pdus</code>.</p><p>The·module·<code·class="inline">snmp_pdus</code>·contains·functions·for·encoding·and·decoding·of·SNMP
133 protocol·data·units·(PDUs).·In·short,·this·module·converts·a·list·of·bytes·to133 protocol·data·units·(PDUs).·In·short,·this·module·converts·a·list·of·bytes·to
134 Erlang·record·representations·and·vice·versa.·The·record·definitions·can·be134 Erlang·record·representations·and·vice·versa.·The·record·definitions·can·be
135 found·in·the·file·<code·class="inline">snmp/include/snmp_types.hrl</code>.·If·snmpv3·is·used,·the·module135 found·in·the·file·<code·class="inline">snmp/include/snmp_types.hrl</code>.·If·snmpv3·is·used,·the·module
136 that·includes·<code·class="inline">snmp_types.hrl</code>·must·define·the·constant·<code·class="inline">SNMP_USE_V3</code>·before·the136 that·includes·<code·class="inline">snmp_types.hrl</code>·must·define·the·constant·<code·class="inline">SNMP_USE_V3</code>·before·the
137 header·file·is·included.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="6204730546-1">(</span><span·class="n">SNMP_USE_V3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="6204730546-1">)</span><span·class="p">.</span><span·class="w">137 header·file·is·included.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="3244764416-1">(</span><span·class="n">SNMP_USE_V3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="3244764416-1">)</span><span·class="p">.</span><span·class="w">
138 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="6204730546-2">(</span><span·class="s">&quot;snmp/include/snmp_types.hrl&quot;</span><span·class="p"·data-group-id="6204730546-2">)</span><span·class="p">.</span></code></pre><p>Encoding·and·decoding·must·be·done·explicitly·when·writing·your·own·Net·if138 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="3244764416-2">(</span><span·class="s">&quot;snmp/include/snmp_types.hrl&quot;</span><span·class="p"·data-group-id="3244764416-2">)</span><span·class="p">.</span></code></pre><p>Encoding·and·decoding·must·be·done·explicitly·when·writing·your·own·Net·if
139 process.</p>139 process.</p>
140 ····</section>140 ····</section>
  
141 </div>141 </div>
  
142 ··<section·id="summary"·class="details-list">142 ··<section·id="summary"·class="details-list">
143 ····<h1·class="section-heading">143 ····<h1·class="section-heading">
Offset 1049, 15 lines modifiedOffset 1049, 15 lines modified
1049 ······<p·class="built-using">1049 ······<p·class="built-using">
1050 ········Built·using1050 ········Built·using
1051 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1051 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1052 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1052 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1053 ······</p>1053 ······</p>
1054 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1054 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1055 ····</footer>1055 ····</footer>
1056 ··</div>1056 ··</div>
1057 </main>1057 </main>
1058 </div>1058 </div>
1059 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1059 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1060 <script>1060 <script>
1061 ··document.addEventListener("DOMContentLoaded",·function·()·{1061 ··document.addEventListener("DOMContentLoaded",·function·()·{
678 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_standard_mib.html
    
Offset 422, 15 lines modifiedOffset 422, 15 lines modified
422 ······<p·class="built-using">422 ······<p·class="built-using">
423 ········Built·using423 ········Built·using
424 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the424 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
425 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>425 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
426 ······</p>426 ······</p>
427 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>427 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
428 ····</footer>428 ····</footer>
429 ··</div>429 ··</div>
430 </main>430 </main>
431 </div>431 </div>
432 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>432 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
433 <script>433 <script>
434 ··document.addEventListener("DOMContentLoaded",·function·()·{434 ··document.addEventListener("DOMContentLoaded",·function·()·{
662 B
html2text {}
Max HTML report size reached
1.58 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_target_mib.html
    
Offset 814, 15 lines modifiedOffset 814, 15 lines modified
814 ······<p·class="built-using">814 ······<p·class="built-using">
815 ········Built·using815 ········Built·using
816 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the816 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
817 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>817 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
818 ······</p>818 ······</p>
819 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>819 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
820 ····</footer>820 ····</footer>
821 ··</div>821 ··</div>
822 </main>822 </main>
823 </div>823 </div>
824 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>824 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
825 <script>825 <script>
826 ··document.addEventListener("DOMContentLoaded",·function·()·{826 ··document.addEventListener("DOMContentLoaded",·function·()·{
769 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_user_based_sm_mib.html
    
Offset 765, 15 lines modifiedOffset 765, 15 lines modified
765 ······<p·class="built-using">765 ······<p·class="built-using">
766 ········Built·using766 ········Built·using
767 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the767 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
768 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>768 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
769 ······</p>769 ······</p>
770 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>770 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
771 ····</footer>771 ····</footer>
772 ··</div>772 ··</div>
773 </main>773 </main>
774 </div>774 </div>
775 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>775 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
776 <script>776 <script>
777 ··document.addEventListener("DOMContentLoaded",·function·()·{777 ··document.addEventListener("DOMContentLoaded",·function·()·{
615 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmp_view_based_acm_mib.html
    
Offset 1090, 15 lines modifiedOffset 1090, 15 lines modified
1090 ······<p·class="built-using">1090 ······<p·class="built-using">
1091 ········Built·using1091 ········Built·using
1092 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1092 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1093 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1093 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1094 ······</p>1094 ······</p>
1095 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1095 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1096 ····</footer>1096 ····</footer>
1097 ··</div>1097 ··</div>
1098 </main>1098 </main>
1099 </div>1099 </div>
1100 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1100 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1101 <script>1101 <script>
1102 ··document.addEventListener("DOMContentLoaded",·function·()·{1102 ··document.addEventListener("DOMContentLoaded",·function·()·{
640 B
html2text {}
Max HTML report size reached
25.3 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa.html
    
Offset 3332, 16 lines modifiedOffset 3332, 16 lines modified
3332 ······················AgentName·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),3332 ······················AgentName·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:atom/0">atom</a>(),
3333 ······················Mib·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),3333 ······················Mib·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>(),
3334 ······················Reason·::·already_loaded·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>3334 ······················Reason·::·already_loaded·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
3335 ······</div>3335 ······</div>
  
3336 <p>Load·a·single·<code·class="inline">Mib</code>·into·an·agent.·The·<code·class="inline">MibName</code>·is·the·name·of·the·Mib,3336 <p>Load·a·single·<code·class="inline">Mib</code>·into·an·agent.·The·<code·class="inline">MibName</code>·is·the·name·of·the·Mib,
3337 including·the·path·to·where·the·compiled·mib·is·found.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">priv_dir</span><span·class="p"·data-group-id="2250736200-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="2250736200-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;/mibs/&quot;</span><span·class="p">,</span><span·class="w">3337 including·the·path·to·where·the·compiled·mib·is·found.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">priv_dir</span><span·class="p"·data-group-id="9899499368-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="9899499368-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;/mibs/&quot;</span><span·class="p">,</span><span·class="w">
3338 ··········</span><span·class="nc">snmpa</span><span·class="p">:</span><span·class="nf">load_mib</span><span·class="p"·data-group-id="2250736200-2">(</span><span·class="ss">snmp_master_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;MY-MIB&quot;</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·6c2e531d269cf8101409bea3ca3d612b166d59b5f3edc176d7d77e72a6f8466c·...·]-2">)</span><span·class="p">.</span></code></pre>3338 ··········</span><span·class="nc">snmpa</span><span·class="p">:</span><span·class="nf">load_mib</span><span·class="p"·data-group-id="9899499368-2">(</span><span·class="ss">snmp_master_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;MY-MIB&quot;</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·e41fe56a0fcb7dd97e333ae85d75746c44e3a78f14f6d2451220ad2735f796ec·...·]-2">)</span><span·class="p">.</span></code></pre>
3339 ··</section>3339 ··</section>
3340 </section>3340 </section>
3341 <section·class="detail"·id="load_mibs/1">3341 <section·class="detail"·id="load_mibs/1">
  
3342 ··<div·class="detail-header">3342 ··<div·class="detail-header">
3343 ····<a·href="#load_mibs/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">3343 ····<a·href="#load_mibs/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
3344 ······<i·class="ri-link-m"·aria-hidden="true"></i>3344 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 3449, 16 lines modifiedOffset 3449, 16 lines modified
3449 ·······················InternalReason·::·already_loaded·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>3449 ·······················InternalReason·::·already_loaded·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
3450 ······</div>3450 ······</div>
  
3451 <p>Load·<code·class="inline">Mibs</code>·into·an·agent.·If·the·agent·cannot·load·all·MIBs·(the·default·value3451 <p>Load·<code·class="inline">Mibs</code>·into·an·agent.·If·the·agent·cannot·load·all·MIBs·(the·default·value
3452 of·the·<code·class="inline">Force</code>·argument·is·<code·class="inline">false</code>),·it·will·indicate·where·loading·was·aborted.3452 of·the·<code·class="inline">Force</code>·argument·is·<code·class="inline">false</code>),·it·will·indicate·where·loading·was·aborted.
3453 The·<code·class="inline">MibName</code>·is·the·name·of·the·Mib,·including·the·path·to·where·the·compiled3453 The·<code·class="inline">MibName</code>·is·the·name·of·the·Mib,·including·the·path·to·where·the·compiled
3454 mib·is·found.·For·example,</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">priv_dir</span><span·class="p"·data-group-id="4234179300-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="4234179300-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;/mibs/&quot;</span><span·class="p">,</span><span·class="w">3454 mib·is·found.·For·example,</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">priv_dir</span><span·class="p"·data-group-id="2453076058-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="2453076058-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;/mibs/&quot;</span><span·class="p">,</span><span·class="w">
3455 ··········</span><span·class="nc">snmpa</span><span·class="p">:</span><span·class="nf">load_mibs</span><span·class="p"·data-group-id="4234179300-2">(</span><span·class="ss">snmp_master_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4234179300-3">[</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·142,·SHA:·ddee1d053892050fe9219685212a3264cca30867373d16662a0ffe2d20f1a501·...·]-2">)</span><span·class="p">.</span></code></pre><p>If·<code·class="inline">Force·=·true</code>·then·the·agent·will·continue·attempting·to·load·each·mib·even3455 ··········</span><span·class="nc">snmpa</span><span·class="p">:</span><span·class="nf">load_mibs</span><span·class="p"·data-group-id="2453076058-2">(</span><span·class="ss">snmp_master_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2453076058-3">[</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·142,·SHA:·bc24b2ed5bc263fea6f373131dbcfdad875e4979b2b3f3f81a40d4e1a1aaf5db·...·]-2">)</span><span·class="p">.</span></code></pre><p>If·<code·class="inline">Force·=·true</code>·then·the·agent·will·continue·attempting·to·load·each·mib·even
3456 after·failing·to·load·a·previous·mib.·Use·with·care.</p>3456 after·failing·to·load·a·previous·mib.·Use·with·care.</p>
3457 ··</section>3457 ··</section>
3458 </section>3458 </section>
3459 <section·class="detail"·id="log_to_io/1">3459 <section·class="detail"·id="log_to_io/1">
  
3460 ··<div·class="detail-header">3460 ··<div·class="detail-header">
3461 ····<a·href="#log_to_io/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">3461 ····<a·href="#log_to_io/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 4561, 16 lines modifiedOffset 4561, 16 lines modified
4561 ·······························SubAgent·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:pid/0">pid</a>(),4561 ·······························SubAgent·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:pid/0">pid</a>(),
4562 ·······························Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>4562 ·······························Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
4563 ······</div>4563 ······</div>
  
4564 <p>Registers·a·sub-agent·under·a·sub-tree·of·another·agent.</p><p>It·is·easy·to·make·mistakes·when·registering·sub-agents·and·this·activity·should4564 <p>Registers·a·sub-agent·under·a·sub-tree·of·another·agent.</p><p>It·is·easy·to·make·mistakes·when·registering·sub-agents·and·this·activity·should
4565 be·done·carefully.·For·example,·a·strange·behaviour·would·result·from·the4565 be·done·carefully.·For·example,·a·strange·behaviour·would·result·from·the
4566 following·configuration:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmp_agent</span><span·class="p">:</span><span·class="nf">register_subagent</span><span·class="p"·data-group-id="6859507354-1">(</span><span·class="n">MAPid</span><span·class="p">,</span><span·class="p"·data-group-id="6859507354-2">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="6859507354-2">]</span><span·class="p">,</span><span·class="n">SA1</span><span·class="p"·data-group-id="6859507354-1">)</span><span·class="p">,</span><span·class="w"> 
4567 </span><span·class="nc">snmp_agent</span><span·class="p">:</span><span·class="nf">register_subagent</span><span·class="p"·data-group-id="6859507354-3">(</span><span·class="n">SA1</span><span·class="p">,</span><span·class="p"·data-group-id="6859507354-4">[<[·...·truncated·by·diffoscope;·len:·476,·SHA:·0fd27300d8d02c446ed59ebe96c573bfdd48a73571ffee0564f968fd01bed556·...·]4566 following·configuration:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">snmp_agent</span><span·class="p">:</span><span·class="nf">register_subagent</span><span·class="p"·data-group-id="8400683872-1">(</span><span·class="n">MAPid</span>[·...·truncated·by·diffoscope;·len:·445,·SHA:·5ce3c651224a45c441f951db7348ea8efb15ad792bd18831a145c694ec7f967f·...·]
 4567 </span><span·class="nc">snmp_agent</span><span·class="p">:</span><span·class="nf">register_subagent</span><span·class="p"·data-group-id="8400683872-3">(</span><span·class="n">SA1</span><span·class="p">,</span><span·class="p"·data-group-id="8400683872-4">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="8400683872-4">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SA2</span><span·class="p"·data-group-id="8400683872-3">)</span><span·class="p">.</span></code></pre><p><code·class="inline">SA2</code>·will·not·get·requests·starting·with·object·identifier·<code·class="inline">[1,2,3]</code>·since
4568 <code·class="inline">SA1</code>·does·not.</p>4568 <code·class="inline">SA1</code>·does·not.</p>
4569 ··</section>4569 ··</section>
4570 </section>4570 </section>
4571 <section·class="detail"·id="restart_set_worker/0">4571 <section·class="detail"·id="restart_set_worker/0">
  
4572 ··<div·class="detail-header">4572 ··<div·class="detail-header">
4573 ····<a·href="#restart_set_worker/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">4573 ····<a·href="#restart_set_worker/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 5007, 28 lines modifiedOffset 5007, 28 lines modified
5007 function·call·according·to·the·value·of·<code·class="inline">Recv</code>.</li></ul><p>If·<code·class="inline">Receiver</code>·has·the·value·<code·class="inline">{Tag,·Recv}</code>,·the·delivery·is·done·according·to5007 function·call·according·to·the·value·of·<code·class="inline">Recv</code>.</li></ul><p>If·<code·class="inline">Receiver</code>·has·the·value·<code·class="inline">{Tag,·Recv}</code>,·the·delivery·is·done·according·to
5008 <code·class="inline">Recv</code>:</p><ul><li><p><code·class="inline">pid()·|·atom()</code>·-·The·info·will·be·delivered·in·the·following·messages:</p><ul><li><p><code·class="inline">{snmp_targets,·Tag,·Addresses}</code></p><p>This·inform·the·user·which·target·addresses·the·notification·was·sent·to.</p></li><li><p><code·class="inline">{snmp_notification,·Tag,·{got_response,·Address}}</code></p><p>This·informs·the·user·that·this·target·address·acknowledged·the5008 <code·class="inline">Recv</code>:</p><ul><li><p><code·class="inline">pid()·|·atom()</code>·-·The·info·will·be·delivered·in·the·following·messages:</p><ul><li><p><code·class="inline">{snmp_targets,·Tag,·Addresses}</code></p><p>This·inform·the·user·which·target·addresses·the·notification·was·sent·to.</p></li><li><p><code·class="inline">{snmp_notification,·Tag,·{got_response,·Address}}</code></p><p>This·informs·the·user·that·this·target·address·acknowledged·the
5009 notification.</p></li><li><p><code·class="inline">{snmp_notification,·Tag,·{no_response,·Address}}</code></p><p>This·informs·the·user·that·this·target·address·did·not·acknowledge5009 notification.</p></li><li><p><code·class="inline">{snmp_notification,·Tag,·{no_response,·Address}}</code></p><p>This·informs·the·user·that·this·target·address·did·not·acknowledge
5010 notification.</p></li></ul><p>The·notification·is·sent·as·an·Inform-Request·to·each·target·address·in5010 notification.</p></li></ul><p>The·notification·is·sent·as·an·Inform-Request·to·each·target·address·in
5011 <code·class="inline">Addresses</code>·and·if·there·are·no·targets·for·which·an·Inform-Request·is·sent,5011 <code·class="inline">Addresses</code>·and·if·there·are·no·targets·for·which·an·Inform-Request·is·sent,
5012 <code·class="inline">Addresses</code>·is·the·empty·list·<code·class="inline">[]</code>.</p><p>The·<code·class="inline">receiver</code>·will·first·be·sent·the·<code·class="inline">snmp_targets</code>·message,·and·then·for5012 <code·class="inline">Addresses</code>·is·the·empty·list·<code·class="inline">[]</code>.</p><p>The·<code·class="inline">receiver</code>·will·first·be·sent·the·<code·class="inline">snmp_targets</code>·message,·and·then·for
5013 each·address·in·<code·class="inline">Addresses</code>·list,·one·of·the·two·<code·class="inline">snmp_notification</code>·messages.</p></li><li><p><code·class="inline">{Mod,·Func,·Args}</code>·-·The·info·will·be·delivered·via·the·function·call:</p><p><code·class="inline">Mod:Func([Msg·|·Args])</code></p><p>where·<code·class="inline">Msg</code>·has·the·same·content·and·purpose·as·the·messages·descrived·above.</p></li></ul><p><code·class="inline">Address</code>·is·a·management·target·address·and·<code·class="inline">Addresses</code>·is·a·list·of·management5013 each·address·in·<code·class="inline">Addresses</code>·list,·one·of·the·two·<code·class="inline">snmp_notification</code>·messages.</p></li><li><p><code·class="inline">{Mod,·Func,·Args}</code>·-·The·info·will·be·delivered·via·the·function·call:</p><p><code·class="inline">Mod:Func([Msg·|·Args])</code></p><p>where·<code·class="inline">Msg</code>·has·the·same·content·and·purpose·as·the·messages·descrived·above.</p></li></ul><p><code·class="inline">Address</code>·is·a·management·target·address·and·<code·class="inline">Addresses</code>·is·a·list·of·management
5014 target·addresses.·They·are·defined·as·followes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="n">Addresses</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0313698989-1">[</span><span·class="nf">address</span><span·class="p"·data-group-id="0313698989-2">(</span><span·class="p"·data-group-id="0313698989-2">)</span><span·class="p"·data-group-id="0313698989-1">]</span><span·class="w">5014 target·addresses.·They·are·defined·as·followes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">········</span><span·class="n">Addresses</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9959883213-1">[</span><span·class="nf">address</span><span·class="p"·data-group-id="9959883213-2">(</span><span·class="p"·data-group-id="9959883213-2">)</span><span·class="p"·data-group-id="9959883213-1">]</span><span·class="w">
5015 ········</span><span·class="n">Address</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">address</span><span·class="p"·data-group-id="0313698989-3">(</span><span·class="p"·data-group-id="0313698989-3">)</span><span·class="w">5015 ········</span><span·class="n">Address</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">address</span><span·class="p"·data-group-id="9959883213-3">(</span><span·class="p"·data-group-id="9959883213-3">)</span><span·class="w">
5016 ········</span><span·class="nf">address</span><span·class="p"·data-group-id="0313698989-4">(</span><span·class="p"·data-group-id="0313698989-4">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">v1_address</span><span·class="p"·data-group-id="0313698989-5">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·232,·SHA:·0a1eb603ed8a227a8410f04017f02796ecd7214c482749fa10f231e4f9f91755·...·]-6">)</span><span·class="w">5016 ········</span><span·class="nf">address</span><span·class="p"·data-group-id="9959883213-4">(</span><span·class="p"·data-group-id="9959883213-4">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">v1_address</span><span·class="p"·data-group-id="9959883213-5">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·232,·SHA:·1b526312afce00432685aa8e8eed324b4c93eaf9fb4cd476d774e1c2bfea7e4c·...·]-6">)</span><span·class="w">
5017 ········</span><span·class="nf">v1_address</span><span·class="p"·data-group-id="0313698989-7">(</span><span·class="p"·data-group-id="0313698989-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0313698989-8">{</span><span·class="n">TDomain</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·94,·SHA:·be1d562f12647181fafd0602a54921cc534cd619e415465a1cbfdf0fa8de044a·...·]-8">}</span><span·class="w">5017 ········</span><span·class="nf">v1_address</span><span·class="p"·data-group-id="9959883213-7">(</span><span·class="p"·data-group-id="9959883213-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9959883213-8">{</span><span·class="n">TDomain</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·94,·SHA:·695c828eaa6c39d8b870bf6ad10dee3fdef8e538eed828e45ae00e23e9eb1ec9·...·]-8">}</span><span·class="w">
5018 ········</span><span·class="nf">v3_address</span><span·class="p"·data-group-id="0313698989-9">(</span><span·class="p"·data-group-id="0313698989-9">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0313698989-10">{</span><span·class="p"·data-group-id="0313698989-11">{</span><[·...·truncated·by·diffoscope;·len:·283,·SHA:·c01862a131bba2c26a5d5a2a3ff91991ef45c88456841edd94ced537e142ab07·...·]-10">}</span><span·class="w">5018 ········</span><span·class="nf">v3_address</span><span·class="p"·data-group-id="9959883213-9">(</span><span·class="p"·data-group-id="9959883213-9">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9959883213-10">{</span><span·class="p"·data-group-id="9959883213-11">{</span><[·...·truncated·by·diffoscope;·len:·283,·SHA:·d1e3c9dc15772389e744ec5c9f73315c647103db9f07ef7eb5cef85cde621e76·...·]-10">}</span><span·class="w">
5019 ········</span><span·class="n">TDomain</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">tdoamin</span><span·class="p"·data-group-id="0313698989-12">(</span><span·class="p"·data-group-id="0313698989-12">)</span><span·class="w">5019 ········</span><span·class="n">TDomain</span><span·class="w">····</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">tdoamin</span><span·class="p"·data-group-id="9959883213-12">(</span><span·class="p"·data-group-id="9959883213-12">)</span><span·class="w">
5020 ········</span><span·class="n">TAddress</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">taddress</span><span·class="p"·data-group-id="0313698989-13">(</span><span·class="p"·data-group-id="0313698989-13">)</span><span·class="w">5020 ········</span><span·class="n">TAddress</span><span·class="w">···</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">taddress</span><span·class="p"·data-group-id="9959883213-13">(</span><span·class="p"·data-group-id="9959883213-13">)</span><span·class="w">
5021 ········</span><span·class="nf">tdomain</span><span·class="p"·data-group-id="0313698989-14">(</span><span·class="p"·data-group-id="0313698989-14">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="n">The</span><span·class="w">·</span><span·class="ss">oid</span><span·class="w">·</span><span·class="k">of</span><span·class="w">·</span><span·class="ss">snmpUDPDomain</span><span·class="w">5021 ········</span><span·class="nf">tdomain</span><span·class="p"·data-group-id="9959883213-14">(</span><span·class="p"·data-group-id="9959883213-14">)</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="n">The</span><span·class="w">·</span><span·class="ss">oid</span><span·class="w">·</span><span·class="k">of</span><span·class="w">·</span><span·class="ss">snmpUDPDomain</span><span·class="w">
5022 ·····················</span><span·class="n">This</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">only</span><span·class="w">·</span><span·class="ss">supported</span><span·class="w">·</span><span·class="ss">transport</span><span·class="w">·</span><span·class="ss">domain</span><span·class="p">.</span><span·class="w">5022 ·····················</span><span·class="n">This</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">only</span><span·class="w">·</span><span·class="ss">supported</span><span·class="w">·</span><span·class="ss">transport</span><span·class="w">·</span><span·class="ss">domain</span><span·class="p">.</span><span·class="w">
5023 ········</span><span·class="nf">taddress</span><span·class="p"·data-group-id="0313698989-15">(</span><span·class="p"·data-group-id="0313698989-15">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0313698989-16">[</span><span·class="n">A1</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·378,·SHA:·536003c856cdd0f76741462006479771847b9e9c3d7024855fc7e60332d8f671·...·]-16">]</span><span·class="w">5023 ········</span><span·class="nf">taddress</span><span·class="p"·data-group-id="9959883213-15">(</span><span·class="p"·data-group-id="9959883213-15">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9959883213-16">[</span><span·class="n">A1</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·378,·SHA:·a0eb1d6ed29ef633ebdac88d18378b2312b9f552bbddec88683afef389e19162·...·]-16">]</span><span·class="w">
5024 ·····················</span><span·class="n">The</span><span·class="w">·</span><span·class="mi">4</span><span·class="w">·</span><span·class="ss">first</span><span·class="w">·</span><span·class="ss">bytes</span><span·class="w">·</span><span·class="ss">makes</span><span·class="w">·</span><span·class="ss">up</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">IP</span><span·class="o">-</span><span·class="ss">address</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">last</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">5024 ·····················</span><span·class="n">The</span><span·class="w">·</span><span·class="mi">4</span><span·class="w">·</span><span·class="ss">first</span><span·class="w">·</span><span·class="ss">bytes</span><span·class="w">·</span><span·class="ss">makes</span><span·class="w">·</span><span·class="ss">up</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">IP</span><span·class="o">-</span><span·class="ss">address</span><span·class="w">·</span><span·class="ow">and</span><span·class="w">·</span><span·class="ss">the</span><span·class="w">·</span><span·class="ss">last</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">
5025 ·····················</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">UDP</span><span·class="o">-</span><span·class="ss">port</span><span·class="w">·</span><span·class="ss">number</span><span·class="p">.</span><span·class="w">5025 ·····················</span><span·class="ss">the</span><span·class="w">·</span><span·class="n">UDP</span><span·class="o">-</span><span·class="ss">port</span><span·class="w">·</span><span·class="ss">number</span><span·class="p">.</span><span·class="w">
5026 ········</span><span·class="n">V3MsgData</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">v3_msg_data</span><span·class="p"·data-group-id="0313698989-17">(</span><span·class="p"·data-group-id="0313698989-17">)</span><span·class="w">5026 ········</span><span·class="n">V3MsgData</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">v3_msg_data</span><span·class="p"·data-group-id="9959883213-17">(</span><span·class="p"·data-group-id="9959883213-17">)</span><span·class="w">
5027 ········</span><span·class="nf">v3_msg_data</span><span·class="p"·data-group-id="0313698989-18">(</span><span·class="p"·data-group-id="0313698989-18">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="0313698989-19">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·c968132b9c68e3a88d86305deda8afbe302de8020681e245575904f61352725c·...·]-19">)</span></code></pre><p>If·<code·class="inline">Receiver</code>·is·a·<a·href="#t:notification_delivery_info/0"><code·class="inline">notification_delivery_info/0</code></a>·record,·then·the·information5027 ········</span><span·class="nf">v3_msg_data</span><span·class="p"·data-group-id="9959883213-18">(</span><span·class="p"·data-group-id="9959883213-18">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="9959883213-19">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·72be9e6223906f794a36da11c0db6aa4b98208e7010ab6132fe45d17fc1096e6·...·]-19">)</span></code></pre><p>If·<code·class="inline">Receiver</code>·is·a·<a·href="#t:notification_delivery_info/0"><code·class="inline">notification_delivery_info/0</code></a>·record,·then·the·information
5028 about·the·notification·delivery·will·be·delivered·to·the·<code·class="inline">receiver</code>·via·the5028 about·the·notification·delivery·will·be·delivered·to·the·<code·class="inline">receiver</code>·via·the
5029 callback·functions·defined·by·the·<a·href="snmpa_notification_delivery_info_receiver.html"><code·class="inline">snmpa_notification_delivery_info_receiver</code></a>5029 callback·functions·defined·by·the·<a·href="snmpa_notification_delivery_info_receiver.html"><code·class="inline">snmpa_notification_delivery_info_receiver</code></a>
5030 behaviour·according·to·the·content·of·the·<a·href="#t:notification_delivery_info/0"><code·class="inline">notification_delivery_info/0</code></a>5030 behaviour·according·to·the·content·of·the·<a·href="#t:notification_delivery_info/0"><code·class="inline">notification_delivery_info/0</code></a>
5031 record.</p><p>The·optional·argument·<code·class="inline">Varbinds</code>·defines·values·for·the·objects·in·the5031 record.</p><p>The·optional·argument·<code·class="inline">Varbinds</code>·defines·values·for·the·objects·in·the
5032 notification.·If·no·value·is·given·for·an·object,·the·<code·class="inline">Agent</code>·performs·a5032 notification.·If·no·value·is·given·for·an·object,·the·<code·class="inline">Agent</code>·performs·a
5033 get-operation·to·retrieve·the·value.</p><p><code·class="inline">Varbinds</code>·is·a·list·of·<code·class="inline">Varbind</code>,·where·each·<code·class="inline">Varbind</code>·is·one·of:</p><ul><li><code·class="inline">{Variable,·Value}</code>,·where·<code·class="inline">Variable</code>·is·the·symbolic·name·of·a·scalar5033 get-operation·to·retrieve·the·value.</p><p><code·class="inline">Varbinds</code>·is·a·list·of·<code·class="inline">Varbind</code>,·where·each·<code·class="inline">Varbind</code>·is·one·of:</p><ul><li><code·class="inline">{Variable,·Value}</code>,·where·<code·class="inline">Variable</code>·is·the·symbolic·name·of·a·scalar
5034 variable·referred·to·in·the·notification·specification.</li><li><code·class="inline">{Column,·RowIndex,·Value}</code>,·where·<code·class="inline">Column</code>·is·the·symbolic·name·of·a·column5034 variable·referred·to·in·the·notification·specification.</li><li><code·class="inline">{Column,·RowIndex,·Value}</code>,·where·<code·class="inline">Column</code>·is·the·symbolic·name·of·a·column
Offset 6062, 15 lines modifiedOffset 6062, 15 lines modified
6062 ······<p·class="built-using">6062 ······<p·class="built-using">
6063 ········Built·using6063 ········Built·using
6064 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the6064 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
6065 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>6065 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
6066 ······</p>6066 ······</p>
6067 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>6067 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
6068 ····</footer>6068 ····</footer>
6069 ··</div>6069 ··</div>
6070 </main>6070 </main>
6071 </div>6071 </div>
6072 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>6072 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
6073 <script>6073 <script>
6074 ··document.addEventListener("DOMContentLoaded",·function·()·{6074 ··document.addEventListener("DOMContentLoaded",·function·()·{
636 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_conf.html
    
Offset 3803, 15 lines modifiedOffset 3803, 15 lines modified
3803 ······<p·class="built-using">3803 ······<p·class="built-using">
3804 ········Built·using3804 ········Built·using
3805 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3805 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3806 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3806 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3807 ······</p>3807 ······</p>
3808 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3808 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3809 ····</footer>3809 ····</footer>
3810 ··</div>3810 ··</div>
3811 </main>3811 </main>
3812 </div>3812 </div>
3813 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3813 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3814 <script>3814 <script>
3815 ··document.addEventListener("DOMContentLoaded",·function·()·{3815 ··document.addEventListener("DOMContentLoaded",·function·()·{
655 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_discovery_handler.html
    
Offset 240, 15 lines modifiedOffset 240, 15 lines modified
240 ······<p·class="built-using">240 ······<p·class="built-using">
241 ········Built·using241 ········Built·using
242 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the242 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
243 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>243 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
244 ······</p>244 ······</p>
245 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>245 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
246 ····</footer>246 ····</footer>
247 ··</div>247 ··</div>
248 </main>248 </main>
249 </div>249 </div>
250 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>250 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
251 <script>251 <script>
252 ··document.addEventListener("DOMContentLoaded",·function·()·{252 ··document.addEventListener("DOMContentLoaded",·function·()·{
610 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_error.html
    
Offset 265, 15 lines modifiedOffset 265, 15 lines modified
265 ······<p·class="built-using">265 ······<p·class="built-using">
266 ········Built·using266 ········Built·using
267 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the267 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
268 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>268 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
269 ······</p>269 ······</p>
270 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>270 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
271 ····</footer>271 ····</footer>
272 ··</div>272 ··</div>
273 </main>273 </main>
274 </div>274 </div>
275 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>275 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
276 <script>276 <script>
277 ··document.addEventListener("DOMContentLoaded",·function·()·{277 ··document.addEventListener("DOMContentLoaded",·function·()·{
685 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_error_io.html
    
Offset 265, 15 lines modifiedOffset 265, 15 lines modified
265 ······<p·class="built-using">265 ······<p·class="built-using">
266 ········Built·using266 ········Built·using
267 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the267 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
268 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>268 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
269 ······</p>269 ······</p>
270 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>270 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
271 ····</footer>271 ····</footer>
272 ··</div>272 ··</div>
273 </main>273 </main>
274 </div>274 </div>
275 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>275 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
276 <script>276 <script>
277 ··document.addEventListener("DOMContentLoaded",·function·()·{277 ··document.addEventListener("DOMContentLoaded",·function·()·{
685 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_error_logger.html
    
Offset 272, 15 lines modifiedOffset 272, 15 lines modified
272 ······<p·class="built-using">272 ······<p·class="built-using">
273 ········Built·using273 ········Built·using
274 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the274 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
275 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>275 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
276 ······</p>276 ······</p>
277 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>277 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
278 ····</footer>278 ····</footer>
279 ··</div>279 ··</div>
280 </main>280 </main>
281 </div>281 </div>
282 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>282 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
283 <script>283 <script>
284 ··document.addEventListener("DOMContentLoaded",·function·()·{284 ··document.addEventListener("DOMContentLoaded",·function·()·{
685 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_error_report.html
    
Offset 261, 15 lines modifiedOffset 261, 15 lines modified
261 ······<p·class="built-using">261 ······<p·class="built-using">
262 ········Built·using262 ········Built·using
263 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the263 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
264 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>264 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
265 ······</p>265 ······</p>
266 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>266 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
267 ····</footer>267 ····</footer>
268 ··</div>268 ··</div>
269 </main>269 </main>
270 </div>270 </div>
271 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>271 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
272 <script>272 <script>
273 ··document.addEventListener("DOMContentLoaded",·function·()·{273 ··document.addEventListener("DOMContentLoaded",·function·()·{
691 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_local_db.html
    
Offset 735, 15 lines modifiedOffset 735, 15 lines modified
735 ······<p·class="built-using">735 ······<p·class="built-using">
736 ········Built·using736 ········Built·using
737 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the737 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
738 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>738 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
739 ······</p>739 ······</p>
740 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>740 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
741 ····</footer>741 ····</footer>
742 ··</div>742 ··</div>
743 </main>743 </main>
744 </div>744 </div>
745 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>745 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
746 <script>746 <script>
747 ··document.addEventListener("DOMContentLoaded",·function·()·{747 ··document.addEventListener("DOMContentLoaded",·function·()·{
688 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_mib_data.html
    
Offset 1120, 15 lines modifiedOffset 1120, 15 lines modified
1120 ······<p·class="built-using">1120 ······<p·class="built-using">
1121 ········Built·using1121 ········Built·using
1122 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1122 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1123 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1123 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1124 ······</p>1124 ······</p>
1125 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1125 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1126 ····</footer>1126 ····</footer>
1127 ··</div>1127 ··</div>
1128 </main>1128 </main>
1129 </div>1129 </div>
1130 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1130 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1131 <script>1131 <script>
1132 ··document.addEventListener("DOMContentLoaded",·function·()·{1132 ··document.addEventListener("DOMContentLoaded",·function·()·{
576 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_mib_storage.html
    
Offset 843, 15 lines modifiedOffset 843, 15 lines modified
843 ······<p·class="built-using">843 ······<p·class="built-using">
844 ········Built·using844 ········Built·using
845 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the845 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
846 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>846 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
847 ······</p>847 ······</p>
848 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>848 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
849 ····</footer>849 ····</footer>
850 ··</div>850 ··</div>
851 </main>851 </main>
852 </div>852 </div>
853 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>853 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
854 <script>854 <script>
855 ··document.addEventListener("DOMContentLoaded",·function·()·{855 ··document.addEventListener("DOMContentLoaded",·function·()·{
627 B
html2text {}
Max HTML report size reached
1.58 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_mpd.html
    
Offset 1013, 15 lines modifiedOffset 1013, 15 lines modified
1013 ······<p·class="built-using">1013 ······<p·class="built-using">
1014 ········Built·using1014 ········Built·using
1015 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1015 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1016 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1016 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1017 ······</p>1017 ······</p>
1018 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1018 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1019 ····</footer>1019 ····</footer>
1020 ··</div>1020 ··</div>
1021 </main>1021 </main>
1022 </div>1022 </div>
1023 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1023 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1024 <script>1024 <script>
1025 ··document.addEventListener("DOMContentLoaded",·function·()·{1025 ··document.addEventListener("DOMContentLoaded",·function·()·{
775 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_network_interface.html
    
Offset 488, 15 lines modifiedOffset 488, 15 lines modified
488 ······<p·class="built-using">488 ······<p·class="built-using">
489 ········Built·using489 ········Built·using
490 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the490 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
491 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>491 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
492 ······</p>492 ······</p>
493 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>493 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
494 ····</footer>494 ····</footer>
495 ··</div>495 ··</div>
496 </main>496 </main>
497 </div>497 </div>
498 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>498 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
499 <script>499 <script>
500 ··document.addEventListener("DOMContentLoaded",·function·()·{500 ··document.addEventListener("DOMContentLoaded",·function·()·{
732 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_network_interface_filter.html
    
Offset 500, 15 lines modifiedOffset 500, 15 lines modified
500 ······<p·class="built-using">500 ······<p·class="built-using">
501 ········Built·using501 ········Built·using
502 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the502 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
503 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>503 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
504 ······</p>504 ······</p>
505 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>505 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
506 ····</footer>506 ····</footer>
507 ··</div>507 ··</div>
508 </main>508 </main>
509 </div>509 </div>
510 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>510 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
511 <script>511 <script>
512 ··document.addEventListener("DOMContentLoaded",·function·()·{512 ··document.addEventListener("DOMContentLoaded",·function·()·{
725 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_notification_delivery_info_receiver.html
    
Offset 420, 15 lines modifiedOffset 420, 15 lines modified
420 ······<p·class="built-using">420 ······<p·class="built-using">
421 ········Built·using421 ········Built·using
422 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the422 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
423 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>423 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
424 ······</p>424 ······</p>
425 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>425 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
426 ····</footer>426 ····</footer>
427 ··</div>427 ··</div>
428 </main>428 </main>
429 </div>429 </div>
430 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>430 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
431 <script>431 <script>
432 ··document.addEventListener("DOMContentLoaded",·function·()·{432 ··document.addEventListener("DOMContentLoaded",·function·()·{
680 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_notification_filter.html
    
Offset 325, 15 lines modifiedOffset 325, 15 lines modified
325 ······<p·class="built-using">325 ······<p·class="built-using">
326 ········Built·using326 ········Built·using
327 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the327 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
328 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>328 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
329 ······</p>329 ······</p>
330 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>330 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
331 ····</footer>331 ····</footer>
332 ··</div>332 ··</div>
333 </main>333 </main>
334 </div>334 </div>
335 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>335 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
336 <script>336 <script>
337 ··document.addEventListener("DOMContentLoaded",·function·()·{337 ··document.addEventListener("DOMContentLoaded",·function·()·{
728 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpa_supervisor.html
    
Offset 368, 15 lines modifiedOffset 368, 15 lines modified
368 ······<p·class="built-using">368 ······<p·class="built-using">
369 ········Built·using369 ········Built·using
370 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the370 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
371 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>371 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
372 ······</p>372 ······</p>
373 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>373 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
374 ····</footer>374 ····</footer>
375 ··</div>375 ··</div>
376 </main>376 </main>
377 </div>377 </div>
378 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>378 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
379 <script>379 <script>
380 ··document.addEventListener("DOMContentLoaded",·function·()·{380 ··document.addEventListener("DOMContentLoaded",·function·()·{
637 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpc.html
    
Offset 407, 15 lines modifiedOffset 407, 15 lines modified
407 ······<p·class="built-using">407 ······<p·class="built-using">
408 ········Built·using408 ········Built·using
409 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the409 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
410 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>410 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
411 ······</p>411 ······</p>
412 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>412 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
413 ····</footer>413 ····</footer>
414 ··</div>414 ··</div>
415 </main>415 </main>
416 </div>416 </div>
417 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>417 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
418 <script>418 <script>
419 ··document.addEventListener("DOMContentLoaded",·function·()·{419 ··document.addEventListener("DOMContentLoaded",·function·()·{
669 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpc_cmd.html
    
Offset 211, 15 lines modifiedOffset 211, 15 lines modified
211 ······<p·class="built-using">211 ······<p·class="built-using">
212 ········Built·using212 ········Built·using
213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
215 ······</p>215 ······</p>
216 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>216 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
217 ····</footer>217 ····</footer>
218 ··</div>218 ··</div>
219 </main>219 </main>
220 </div>220 </div>
221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
222 <script>222 <script>
223 ··document.addEventListener("DOMContentLoaded",·function·()·{223 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
6.85 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpm.html
    
Offset 2004, 16 lines modifiedOffset 2004, 16 lines modified
2004 ······<div·class="specs">2004 ······<div·class="specs">
  
2005 ··········<pre·translate="no"><span·class="attribute">-spec</span>·load_mib(MibName)·->·ok·|·{error,·Reason}·when·MibName·::·<a·href="snmp.html#t:mib_name/0">snmp:mib_name</a>(),·Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>2005 ··········<pre·translate="no"><span·class="attribute">-spec</span>·load_mib(MibName)·->·ok·|·{error,·Reason}·when·MibName·::·<a·href="snmp.html#t:mib_name/0">snmp:mib_name</a>(),·Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
2006 ······</div>2006 ······</div>
  
2007 <p>Load·a·<code·class="inline">Mib</code>·into·the·manager.·The·<code·class="inline">MibName</code>·is·the·name·of·the·Mib,·including2007 <p>Load·a·<code·class="inline">Mib</code>·into·the·manager.·The·<code·class="inline">MibName</code>·is·the·name·of·the·Mib,·including
2008 the·path·to·where·the·compiled·mib·is·found.·For·example,</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">priv_dir</span><span·class="p"·data-group-id="3585808397-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="3585808397-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;/mibs/&quot;</span><span·class="p">,</span><span·class="w">2008 the·path·to·where·the·compiled·mib·is·found.·For·example,</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">priv_dir</span><span·class="p"·data-group-id="7185679187-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="7185679187-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;/mibs/&quot;</span><span·class="p">,</span><span·class="w">
2009 ··········</span><span·class="nc">snmpm</span><span·class="p">:</span><span·class="nf">load_mib</span><span·class="p"·data-group-id="3585808397-2">(</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p"·data-group-id="3585808397-2">)</span><span·class="p">.</span></code></pre>2009 ··········</span><span·class="nc">snmpm</span><span·class="p">:</span><span·class="nf">load_mib</span><span·class="p"·data-group-id="7185679187-2">(</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p"·data-group-id="7185679187-2">)</span><span·class="p">.</span></code></pre>
2010 ··</section>2010 ··</section>
2011 </section>2011 </section>
2012 <section·class="detail"·id="log_to_io/1">2012 <section·class="detail"·id="log_to_io/1">
  
2013 ··<div·class="detail-header">2013 ··<div·class="detail-header">
2014 ····<a·href="#log_to_io/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2014 ····<a·href="#log_to_io/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
2015 ······<i·class="ri-link-m"·aria-hidden="true"></i>2015 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 3584, 16 lines modifiedOffset 3584, 16 lines modified
3584 ······<div·class="specs">3584 ······<div·class="specs">
  
3585 ··········<pre·translate="no"><span·class="attribute">-spec</span>·unload_mib(MibName)·->·ok·|·{error,·Reason}·when·MibName·::·<a·href="snmp.html#t:mib_name/0">snmp:mib_name</a>(),·Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>3585 ··········<pre·translate="no"><span·class="attribute">-spec</span>·unload_mib(MibName)·->·ok·|·{error,·Reason}·when·MibName·::·<a·href="snmp.html#t:mib_name/0">snmp:mib_name</a>(),·Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
3586 ······</div>3586 ······</div>
  
3587 <p>Unload·a·<code·class="inline">Mib</code>·from·the·manager.·The·<code·class="inline">MibName</code>·is·the·name·of·the·Mib,·including3587 <p>Unload·a·<code·class="inline">Mib</code>·from·the·manager.·The·<code·class="inline">MibName</code>·is·the·name·of·the·Mib,·including
3588 the·path·to·where·the·compiled·mib·is·found.·For·example,</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">priv_dir</span><span·class="p"·data-group-id="3773773217-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="3773773217-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;/mibs/&quot;</span><span·class="p">,</span><span·class="w">3588 the·path·to·where·the·compiled·mib·is·found.·For·example,</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··········</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">priv_dir</span><span·class="p"·data-group-id="3219745845-1">(</span><span·class="ss">my_app</span><span·class="p"·data-group-id="3219745845-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;/mibs/&quot;</span><span·class="p">,</span><span·class="w">
3589 ··········</span><span·class="nc">snmpm</span><span·class="p">:</span><span·class="nf">unload_mib</span><span·class="p"·data-group-id="3773773217-2">(</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p"·data-group-id="3773773217-2">)</span><span·class="p">.</span></code></pre>3589 ··········</span><span·class="nc">snmpm</span><span·class="p">:</span><span·class="nf">unload_mib</span><span·class="p"·data-group-id="3219745845-2">(</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;MY-MIB&quot;</span><span·class="p"·data-group-id="3219745845-2">)</span><span·class="p">.</span></code></pre>
3590 ··</section>3590 ··</section>
3591 </section>3591 </section>
3592 <section·class="detail"·id="unregister_agent/2">3592 <section·class="detail"·id="unregister_agent/2">
  
3593 ··<div·class="detail-header">3593 ··<div·class="detail-header">
3594 ····<a·href="#unregister_agent/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">3594 ····<a·href="#unregister_agent/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
3595 ······<i·class="ri-link-m"·aria-hidden="true"></i>3595 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 4053, 15 lines modifiedOffset 4053, 15 lines modified
4053 ······<p·class="built-using">4053 ······<p·class="built-using">
4054 ········Built·using4054 ········Built·using
4055 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the4055 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
4056 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>4056 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
4057 ······</p>4057 ······</p>
4058 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4058 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
4059 ····</footer>4059 ····</footer>
4060 ··</div>4060 ··</div>
4061 </main>4061 </main>
4062 </div>4062 </div>
4063 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>4063 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
4064 <script>4064 <script>
4065 ··document.addEventListener("DOMContentLoaded",·function·()·{4065 ··document.addEventListener("DOMContentLoaded",·function·()·{
692 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpm_conf.html
    
Offset 1364, 15 lines modifiedOffset 1364, 15 lines modified
1364 ······<p·class="built-using">1364 ······<p·class="built-using">
1365 ········Built·using1365 ········Built·using
1366 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1366 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1367 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1367 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1368 ······</p>1368 ······</p>
1369 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1369 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1370 ····</footer>1370 ····</footer>
1371 ··</div>1371 ··</div>
1372 </main>1372 </main>
1373 </div>1373 </div>
1374 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1374 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1375 <script>1375 <script>
1376 ··document.addEventListener("DOMContentLoaded",·function·()·{1376 ··document.addEventListener("DOMContentLoaded",·function·()·{
664 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpm_mpd.html
    
Offset 643, 15 lines modifiedOffset 643, 15 lines modified
643 ······<p·class="built-using">643 ······<p·class="built-using">
644 ········Built·using644 ········Built·using
645 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the645 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
646 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>646 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
647 ······</p>647 ······</p>
648 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>648 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
649 ····</footer>649 ····</footer>
650 ··</div>650 ··</div>
651 </main>651 </main>
652 </div>652 </div>
653 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>653 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
654 <script>654 <script>
655 ··document.addEventListener("DOMContentLoaded",·function·()·{655 ··document.addEventListener("DOMContentLoaded",·function·()·{
640 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpm_network_interface.html
    
Offset 570, 15 lines modifiedOffset 570, 15 lines modified
570 ······<p·class="built-using">570 ······<p·class="built-using">
571 ········Built·using571 ········Built·using
572 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the572 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
573 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>573 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
574 ······</p>574 ······</p>
575 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>575 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
576 ····</footer>576 ····</footer>
577 ··</div>577 ··</div>
578 </main>578 </main>
579 </div>579 </div>
580 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>580 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
581 <script>581 <script>
582 ··document.addEventListener("DOMContentLoaded",·function·()·{582 ··document.addEventListener("DOMContentLoaded",·function·()·{
726 B
html2text {}
Max HTML report size reached
1.6 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpm_network_interface_filter.html
    
Offset 492, 15 lines modifiedOffset 492, 15 lines modified
492 ······<p·class="built-using">492 ······<p·class="built-using">
493 ········Built·using493 ········Built·using
494 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the494 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
495 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>495 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
496 ······</p>496 ······</p>
497 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>497 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
498 ····</footer>498 ····</footer>
499 ··</div>499 ··</div>
500 </main>500 </main>
501 </div>501 </div>
502 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>502 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
503 <script>503 <script>
504 ··document.addEventListener("DOMContentLoaded",·function·()·{504 ··document.addEventListener("DOMContentLoaded",·function·()·{
753 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/lib/snmp-5.16/doc/html/snmpm_user.html
    
Offset 715, 15 lines modifiedOffset 715, 15 lines modified
715 ······<p·class="built-using">715 ······<p·class="built-using">
716 ········Built·using716 ········Built·using
717 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the717 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
718 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>718 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
719 ······</p>719 ······</p>
720 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>720 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
721 ····</footer>721 ····</footer>
722 ··</div>722 ··</div>
723 </main>723 </main>
724 </div>724 </div>
725 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>725 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
726 <script>726 <script>
727 ··document.addEventListener("DOMContentLoaded",·function·()·{727 ··document.addEventListener("DOMContentLoaded",·function·()·{
762 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/api-reference.html
    
Offset 264, 15 lines modifiedOffset 264, 15 lines modified
264 ······<p·class="built-using">264 ······<p·class="built-using">
265 ········Built·using265 ········Built·using
266 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the266 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
267 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>267 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
268 ······</p>268 ······</p>
269 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>269 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
270 ····</footer>270 ····</footer>
271 ··</div>271 ··</div>
272 </main>272 </main>
273 </div>273 </div>
274 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>274 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
275 <script>275 <script>
276 ··document.addEventListener("DOMContentLoaded",·function·()·{276 ··document.addEventListener("DOMContentLoaded",·function·()·{
577 B
html2text {}
Max HTML report size reached
62.7 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/configurations.html
    
Offset 138, 31 lines modifiedOffset 138, 31 lines modified
138 the·<a·href="configure_algos.html">Configuring·algorithms·in·SSH</a>·chapter.</p><h2·id="options-configuration"·class="section-heading">138 the·<a·href="configure_algos.html">Configuring·algorithms·in·SSH</a>·chapter.</p><h2·id="options-configuration"·class="section-heading">
139 ··<a·href="#options-configuration"·class="hover-link">139 ··<a·href="#options-configuration"·class="hover-link">
140 ····<i·class="ri-link-m"·aria-hidden="true"></i>140 ····<i·class="ri-link-m"·aria-hidden="true"></i>
141 ··</a>141 ··</a>
142 ··<span·class="text">Options·configuration</span>142 ··<span·class="text">Options·configuration</span>
143 </h2>143 </h2>
144 <p>There·are·from·OTP-23.0·two·main·ways·to·set·an·option:</p><ul><li><p>Like·before,·in·the·<code·class="inline">Options</code>·parameter·in·the·Erlang·code·in·a·call·to·for144 <p>There·are·from·OTP-23.0·two·main·ways·to·set·an·option:</p><ul><li><p>Like·before,·in·the·<code·class="inline">Options</code>·parameter·in·the·Erlang·code·in·a·call·to·for
145 example·<a·href="ssh.html#daemon/3"><code·class="inline">ssh:daemon/3</code></a>·or·<a·href="ssh.html#connect/3"><code·class="inline">ssh:connect/3</code></a>·or·any·of·their·variants.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="3362577349-1">(</span><span·class="mi">22</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3362577349-2">[</span><span·class="p"·data-group-id="3362577349-3">{</span><span·class="ss">user</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·625,·SHA:·d0d1cde528d5477971c7bfb25eb88b8f26d7270046b16cc7f1959117331ac9e7·...·]-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">145 example·<a·href="ssh.html#daemon/3"><code·class="inline">ssh:daemon/3</code></a>·or·<a·href="ssh.html#connect/3"><code·class="inline">ssh:connect/3</code></a>·or·any·of·their·variants.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="6596994585-1">(</span><span·class="mi">22</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6596994585-2">[</span><span·class="p"·data-group-id="6596994585-3">{</span><span·class="ss">user</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·625,·SHA:·e3fe56a31dcc8af73008728b9edc089c1cddc601e23e135e5311a0ab943fd808·...·]-1">{</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">
146 ·</span><span·class="p"·data-group-id="1050715836-2">[</span><span·class="p"·data-group-id="1050715836-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;SSH-2·for·Erlang/OTP&quot;</span><span·class="p"·data-group-id="1050715836-3">}</span><span·class="p">,</span><span·class="w">146 ·</span><span·class="p"·data-group-id="6265320181-2">[</span><span·class="p"·data-group-id="6265320181-3">{</span><span·class="ss">description</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;SSH-2·for·Erlang/OTP&quot;</span><span·class="p"·data-group-id="6265320181-3">}</span><span·class="p">,</span><span·class="w">
147 ··</span><span·class="p"·data-group-id="1050715836-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;4.9&quot;</span><span·class="p"·data-group-id="1050715836-4">}</span><span·class="p">,</span><span·class="w">147 ··</span><span·class="p"·data-group-id="6265320181-4">{</span><span·class="ss">vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;4.9&quot;</span><span·class="p"·data-group-id="6265320181-4">}</span><span·class="p">,</span><span·class="w">
148 ··</span><span·class="p"·data-group-id="1050715836-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1050715836-6">[</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">148 ··</span><span·class="p"·data-group-id="6265320181-5">{</span><span·class="ss">modules</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6265320181-6">[</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">
149 ········</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">149 ········</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
150 ·········</span><span·class="ss">ssh_xfer</span><span·class="p"·data-group-id="1050715836-6">]</span><span·class="p"·data-group-id="1050715836-5">}</span><span·class="p">,</span><span·class="w">150 ·········</span><span·class="ss">ssh_xfer</span><span·class="p"·data-group-id="6265320181-6">]</span><span·class="p"·data-group-id="6265320181-5">}</span><span·class="p">,</span><span·class="w">
151 ··</span><span·class="p"·data-group-id="1050715836-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1050715836-8">[</span><span·class="p"·data-group-id="1050715836-8">]</span><span·class="p"·data-group-id="1050715836-7">}</span><span·class="p">,</span><span·class="w">151 ··</span><span·class="p"·data-group-id="6265320181-7">{</span><span·class="ss">registered</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6265320181-8">[</span><span·class="p"·data-group-id="6265320181-8">]</span><span·class="p"·data-group-id="6265320181-7">}</span><span·class="p">,</span><span·class="w">
152 ··</span><span·class="p"·data-group-id="1050715836-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1050715836-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·267,·SHA:·c7a6c0002118072a7cb4a45a042566ac3149f1c6ade324e6d7d145d43d847a4a·...·]-9">}</span><span·class="p">,</span><span·class="w">152 ··</span><span·class="p"·data-group-id="6265320181-9">{</span><span·class="ss">applications</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6265320181-10">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">s[·...·truncated·by·diffoscope;·len:·267,·SHA:·085b1e19dabae3c977891570f190b4f6cc2e12b61d5904aeb65aa060bfb6b90a·...·]-9">}</span><span·class="p">,</span><span·class="w">
153 ··</span><span·class="p"·data-group-id="1050715836-11">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1050715836-12">[</span><span·class="p"·data-group-id="1050715836-13">{</span><span·class="ss">user</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·129,·SHA:·f0a89ffa3b1592cc6fa453bd0f7aff1200d8a0d06a080a9f53904b8c65943981·...·]-13">}</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;·HERE</span><span·class="w">153 ··</span><span·class="p"·data-group-id="6265320181-11">{</span><span·class="ss">env</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6265320181-12">[</span><span·class="p"·data-group-id="6265320181-13">{</span><span·class="ss">user</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·129,·SHA:·d23e74943a61c34c06a8cfbae82c3b2e306c9b860928ffa6aac562eba0d99cd6·...·]-13">}</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;·HERE</span><span·class="w">
154 ··</span><span·class="p"·data-group-id="1050715836-14">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1050715836-15">{</span><span·class="ss">ssh_app</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·178,·SHA:·c8147d1c0f1c31be74c7284bf8c888c60a9e6d10acd15c6d006bb40b27f35b17·...·]-14">}</span><span·class="p">,</span><span·class="w">154 ··</span><span·class="p"·data-group-id="6265320181-14">{</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6265320181-15">{</span><span·class="ss">ssh_app</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·178,·SHA:·cf3a774dcdcaf2aa951323b062035b52f50a0891eea7d9fbda56ffafbea86814·...·]-14">}</span><span·class="p">,</span><span·class="w">
155 ·······</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre></li><li><p>In·a·.config·file:</p><pre><code·class="text">erl·-config·ex1</code></pre><p>where·<code·class="inline">ex1.config</code>·contains:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7720118498-1">[</span><span·class="w">155 ·······</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre></li><li><p>In·a·.config·file:</p><pre><code·class="text">erl·-config·ex1</code></pre><p>where·<code·class="inline">ex1.config</code>·contains:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4748120369-1">[</span><span·class="w">
156 </span><span·class="p"·data-group-id="7720118498-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7720118498-3">[</span><span·class="p"·data-group-id="7720118498-4">{</span><span·class="ss">user</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·208,·SHA:·6247cb9120281a31d2274a0cfdbff09abefa7577ceafdba09a86b18ff84f770c·...·]-2">}</span><span·class="w">156 </span><span·class="p"·data-group-id="4748120369-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4748120369-3">[</span><span·class="p"·data-group-id="4748120369-4">{</span><span·class="ss">user</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·208,·SHA:·06cea164cf9322966f517ba6d83c54ec6025453dad9c51052f7fa32835e9b907·...·]-2">}</span><span·class="w">
157 </span><span·class="p"·data-group-id="7720118498-1">]</span><span·class="p">.</span></code></pre></li></ul><p>If·the·option·is·intended·only·for·a·server·or·for·a·client,·it·may·be·set·in157 </span><span·class="p"·data-group-id="4748120369-1">]</span><span·class="p">.</span></code></pre></li></ul><p>If·the·option·is·intended·only·for·a·server·or·for·a·client,·it·may·be·set·in
158 this·way:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2898743916-1">[</span><span·class="w">158 this·way:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9502387742-1">[</span><span·class="w">
159 </span><span·class="p"·data-group-id="2898743916-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2898743916-3">[</span><span·class="p"·data-group-id="2898743916-4">{</span><span·class="ss">server_options</span><span·class="p">,</span><span·class="p"·data-group-id="2898743916-5">[</span><span·class="p"·data-group-id="2898743916-6">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="2898743916-6">}</span><span·class="p"·data-group-id="2898743916-5">]</span><span·class="p"·data-group-id="2898743916-4">}</span><span·class="p">,</span><span·class="w"> 
160 ·······</span><span·class="p"·data-group-id="2898743916-7">{</span><span·class="ss">client_options</span><span·class="p">,</span><span·class="p"·data-group-id="2898743916-8">[</span><span·class="p"·data-group-id="2898743916-9">{</span><span·class="ss">user[·...·truncated·by·diffoscope;·len:·245,·SHA:·912c4652e39b6c24a6223f5363e2b69bdacebe7d036bfd46a94207a99d17ac42·...·]</span><span·class="w">159 </span><span·class="p"·data-group-id="9502387742-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9502387742-3">[</span><span·class="p"·data-group-id="9502387742-4">{</span><span·class="ss[·...·truncated·by·diffoscope;·len:·443,·SHA:·b03b8048531670c55fbef20901768365a17bea6acd4fe91f0eb035a667c83314·...·]</span><span·class="w">
 160 ·······</span><span·class="p"·data-group-id="9502387742-7">{</span><span·class="ss">client_options</span><span·class="p">,</span><span·class="p"·data-group-id="9502387742-8">[</span><span·class="p"·data-group-id="9502387742-9">{</span><span·class="ss">user</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;bar&quot;</span><span·class="p"·data-group-id="9502387742-9">}</span><span·class="p"·data-group-id="9502387742-8">]</span><span·class="p"·data-group-id="9502387742-7">}</span><span·class="w">
161 </span><span·class="p"·data-group-id="2898743916-3">]</span><span·class="p">.</span></code></pre><p>A·server·(daemon)·will·use·the·user·name·<code·class="inline">foo</code>,·and·a·client·will·use·the·name161 </span><span·class="p"·data-group-id="9502387742-3">]</span><span·class="p">.</span></code></pre><p>A·server·(daemon)·will·use·the·user·name·<code·class="inline">foo</code>,·and·a·client·will·use·the·name
162 <code·class="inline">bar</code>.</p></li></ul><h2·id="precedence"·class="section-heading">162 <code·class="inline">bar</code>.</p></li></ul><h2·id="precedence"·class="section-heading">
163 ··<a·href="#precedence"·class="hover-link">163 ··<a·href="#precedence"·class="hover-link">
164 ····<i·class="ri-link-m"·aria-hidden="true"></i>164 ····<i·class="ri-link-m"·aria-hidden="true"></i>
165 ··</a>165 ··</a>
166 ··<span·class="text">Precedence</span>166 ··<span·class="text">Precedence</span>
167 </h2>167 </h2>
168 <p>If·an·option·is·set·in·more·than·one·way,·what·happens?</p><p>There·is·an·ordering,·which·is:</p><ul><li>Level·0:·Hard-coded·default·values·in·the·OTP·SSH·source·code</li><li>Level·1:·<a·href="../../../../lib/kernel-10.0.1/doc/html/config.html">OTP·Configuration·Parameters</a></li><li>Level·2:·Options·in·the·<a·href="../../../../lib/kernel-10.0.1/doc/html/config.html">OTP·Configuration·Parameters</a>168 <p>If·an·option·is·set·in·more·than·one·way,·what·happens?</p><p>There·is·an·ordering,·which·is:</p><ul><li>Level·0:·Hard-coded·default·values·in·the·OTP·SSH·source·code</li><li>Level·1:·<a·href="../../../../lib/kernel-10.0.1/doc/html/config.html">OTP·Configuration·Parameters</a></li><li>Level·2:·Options·in·the·<a·href="../../../../lib/kernel-10.0.1/doc/html/config.html">OTP·Configuration·Parameters</a>
Offset 225, 96 lines modifiedOffset 225, 96 lines modified
225 ··························'aes192-cbc','aes128-cbc','3des-cbc']}]},225 ··························'aes192-cbc','aes128-cbc','3des-cbc']}]},
226 ·{mac,[{client2server,['hmac-sha2-256','hmac-sha2-512',226 ·{mac,[{client2server,['hmac-sha2-256','hmac-sha2-512',
227 ·······················'hmac-sha1']},227 ·······················'hmac-sha1']},
228 ·······{server2client,['hmac-sha2-256','hmac-sha2-512',228 ·······{server2client,['hmac-sha2-256','hmac-sha2-512',
229 ·······················'hmac-sha1']}]},229 ·······················'hmac-sha1']}]},
230 ·{compression,[{client2server,[none,'zlib@openssh.com',zlib]},230 ·{compression,[{client2server,[none,'zlib@openssh.com',zlib]},
231 ···············{server2client,[none,'zlib@openssh.com',zlib]}]}]</code></pre><p>Note·that·the·algorithms·in·the·file·<code·class="inline">ex2.config</code>·is·not·yet·applied.·They·will231 ···············{server2client,[none,'zlib@openssh.com',zlib]}]}]</code></pre><p>Note·that·the·algorithms·in·the·file·<code·class="inline">ex2.config</code>·is·not·yet·applied.·They·will
232 be·when·we·start·ssh:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="3188115064-1">(</span><span·class="p"·data-group-id="3188115064-1">)</span><span·class="p">.</span><span·class="w">232 be·when·we·start·ssh:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="6796136149-1">(</span><span·class="p"·data-group-id="6796136149-1">)</span><span·class="p">.</span><span·class="w">
233 </span><span·class="ss">ok</span><span·class="gp·unselectable">233 </span><span·class="ss">ok</span><span·class="gp·unselectable">
234 3&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">default_algorithms</span><span·class="p"·data-group-id="3188115064-2">(</span><span·class="p"·data-group-id="3188115064-2">)</span><span·class="p">.</span><span·class="w">234 3&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">default_algorithms</span><span·class="p"·data-group-id="6796136149-2">(</span><span·class="p"·data-group-id="6796136149-2">)</span><span·class="p">.</span><span·class="w">
235 </span><span·class="p"·data-group-id="3188115064-3">[</span><span·class="p"·data-group-id="3188115064-4">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="3188115064-5">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·607952ccc44c6371ccb5450911d53ddfd34ffb1fcd71973f8cd86abeac3f4d1a·...·]-4">}</span><span·class="p">,</span><span·class="w">235 </span><span·class="p"·data-group-id="6796136149-3">[</span><span·class="p"·data-group-id="6796136149-4">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="6796136149-5">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·a0660bd31e99e3fa1bb564958523b47ea1a4d718c8906f95ceaf3940d47ac6ec·...·]-4">}</span><span·class="p">,</span><span·class="w">
236 ·</span><span·class="p"·data-group-id="3188115064-6">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="3188115064-7">[</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p"·data-group-id="3188115064-7">]</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·ae428c7fc500a564f32bdc29c2c5f206dc861ce68c05c89f1201ce249598d0f5·...·]-6">}</span><span·class="p">,</span><span·class="w">236 ·</span><span·class="p"·data-group-id="6796136149-6">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="6796136149-7">[</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p"·data-group-id="6796136149-7">]</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·12,·SHA:·26dfa658ca5dbcff4dbfb50ac8b38778c861947b2914ec3bbd9d8b629254a35d·...·]-6">}</span><span·class="p">,</span><span·class="w">
237 ·</span><span·class="p"·data-group-id="3188115064-8">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="3188115064-9">[</span><span·class="p"·data-group-id="3188115064-10">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class=[·...·truncated·by·diffoscope;·len:·181,·SHA:·e4d067595b07947dda1b8915b904a7349da042854a33bed800b5c9305e530331·...·]-10">}</span><span·class="p">,</span><span·class="w">237 ·</span><span·class="p"·data-group-id="6796136149-8">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="6796136149-9">[</span><span·class="p"·data-group-id="6796136149-10">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class=[·...·truncated·by·diffoscope;·len:·181,·SHA:·20d5c46c36a673e2954abc7aaf7d692bac2d4ced9dac57c5bfecbf36ecc8aaa3·...·]-10">}</span><span·class="p">,</span><span·class="w">
238 ··········</span><span·class="p"·data-group-id="3188115064-12">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="3188115064-13">[</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p"·data-group-id="3188115064-13">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·128,·SHA:·ecf1adbb5e6de651dfa6be45eaba1d8439f94e420eb8ec601f6ad7174421e6d0·...·]-8">}</span><span·class="p">,</span><span·class="w">238 ··········</span><span·class="p"·data-group-id="6796136149-12">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6796136149-13">[</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p"·data-group-id="6796136149-13">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·128,·SHA:·14129cae1fe9e26637e4940f57e04b17ad3a7a05eaaf07e6e146707ef899b460·...·]-8">}</span><span·class="p">,</span><span·class="w">
239 ·</span><span·class="p"·data-group-id="3188115064-14">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="3188115064-15">[</span><span·class="p"·data-group-id="3188115064-16">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·179,·SHA:·f66241822fa034ba473b82744a8e7cae091c12bc7845aa1d05da3e5ead44c9d8·...·]-16">}</span><span·class="p">,</span><span·class="w">239 ·</span><span·class="p"·data-group-id="6796136149-14">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="6796136149-15">[</span><span·class="p"·data-group-id="6796136149-16">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·179,·SHA:·7a72d3f6c71e01e3ef1636929f0db94541b267de517b1ce3dee5a52d70f11aa6·...·]-16">}</span><span·class="p">,</span><span·class="w">
240 ·······</span><span·class="p"·data-group-id="3188115064-18">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="3188115064-19">[</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="3188115064-19">]</span><span·class="p"·data-group-id="3188115064-18">}</span><span·class="p"·data-group-id="3188115064-15">]</span><span·class="p"·data-group-id="3188115064-14">}</span><span·class="p">,</span><span·class="w"> 
241 ·</span><span·class="p"·data-group-id="3188115064-20">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="3188115064-21">[</span><span·class="p"·data-group-id="3188115064-22">{</span><span·class="ss">client2serv[·...·truncated·by·diffoscope;·len:·339,·SHA:·04fe69d0c8d0df9f2295ff907092b4c7e28fcdd5fc4ad8bb0c2f5d8b8e087120·...·]">}</span><span·class="p">,</span><span·class="w">240 ·······</span><span·class="p"·data-group-id="6796136149-18">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6796136149-19">[</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·175,·SHA:·28f084e6389b0686df486f140ae30953599297181505a7c38be362231b734035·...·]">}</span><span·class="p">,</span><span·class="w">
 241 ·</span><span·class="p"·data-group-id="6796136149-20">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="6796136149-21">[</span><span·class="p"·data-group-id="6796136149-22">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="p"·data-group-id="6796136149-23">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">&#39;zlib@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">zlib</span><span·class="p"·data-group-id="6796136149-23">]</span><span·class="p"·data-group-id="6796136149-22">}</span><span·class="p">,</span><span·class="w">
242 ···············</span><span·class="p"·data-group-id="3188115064-24">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="3188115064-25">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">&#39;zlib@openssh.com&#39;</span><span·class="p">[·...·truncated·by·diffoscope;·len:·293,·SHA:·4e00b5e14864dcd298104710a663a19e7a5796fc57b8f7cf24fbcc349174b515·...·]-3">]</span><span·class="w">242 ···············</span><span·class="p"·data-group-id="6796136149-24">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6796136149-25">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">&#39;zlib@openssh.com&#39;</span><span·class="p">[·...·truncated·by·diffoscope;·len:·293,·SHA:·7fd9c2c973e158a477bb9bbcadf96ace250488c2e6b6862783d77fda81812193·...·]-3">]</span><span·class="w">
243 </span><span·class="mi">4</span><span·class="o">&gt;</span></code></pre><p>We·see·that·the·algorithm·set·is·changed·to·the·one·in·the·<code·class="inline">ex2.config</code>.·Since243 </span><span·class="mi">4</span><span·class="o">&gt;</span></code></pre><p>We·see·that·the·algorithm·set·is·changed·to·the·one·in·the·<code·class="inline">ex2.config</code>.·Since
244 <code·class="inline">compression</code>·is·not·specified·in·the·file,·the·hard-coded·default·is·still·used244 <code·class="inline">compression</code>·is·not·specified·in·the·file,·the·hard-coded·default·is·still·used
245 for·that·entry.</p><h4>Establishing·a·connection·(ssh:connect·et·al)·or·starting·a·daemon·(ssh:daemon)</h4><p>Both·when·the·client·establishes·a·connection·with·ssh:connect·or·other245 for·that·entry.</p><h4>Establishing·a·connection·(ssh:connect·et·al)·or·starting·a·daemon·(ssh:daemon)</h4><p>Both·when·the·client·establishes·a·connection·with·ssh:connect·or·other
246 functions,·or·a·daemon·is·started·with·ssh:daemon,·the·option·lists·in·the246 functions,·or·a·daemon·is·started·with·ssh:daemon,·the·option·lists·in·the
247 function·calls·are·also·used.</p><p>If·a·client·is·started·(ssh:connect·et·al),·the·environment·variable247 function·calls·are·also·used.</p><p>If·a·client·is·started·(ssh:connect·et·al),·the·environment·variable
248 <code·class="inline">client_options</code>·is·used.·Similarly·for·a·daemon·the·<code·class="inline">server_options</code>·variable248 <code·class="inline">client_options</code>·is·used.·Similarly·for·a·daemon·the·<code·class="inline">server_options</code>·variable
249 is·handled.</p><p>If·any·<a·href="ssh.html#t:preferred_algorithms_common_option/0">preferred_algorithms</a>·is249 is·handled.</p><p>If·any·<a·href="ssh.html#t:preferred_algorithms_common_option/0">preferred_algorithms</a>·is
250 present,·the·one·with·the·highest·level·is·used,·that·is,·the·<code·class="inline">Option</code>·list250 present,·the·one·with·the·highest·level·is·used,·that·is,·the·<code·class="inline">Option</code>·list
251 parameter·has·the·highest·priority.·Then·the251 parameter·has·the·highest·priority.·Then·the
252 <a·href="ssh.html#t:modify_algorithms_common_option/0">modify_algorithms</a>·on·all·levels·in252 <a·href="ssh.html#t:modify_algorithms_common_option/0">modify_algorithms</a>·on·all·levels·in
253 order·starting·with·level·0·are·applied.</p><p>We·continue·the·example·above·by·connecting·to·a·server·and·modifying·the·<code·class="inline">kex</code>253 order·starting·with·level·0·are·applied.</p><p>We·continue·the·example·above·by·connecting·to·a·server·and·modifying·the·<code·class="inline">kex</code>
254 algorithm·set.·We·remove·the·only·one·(<code·class="inline">'ecdh-sha2-nistp384'</code>)·and·add254 algorithm·set.·We·remove·the·only·one·(<code·class="inline">'ecdh-sha2-nistp384'</code>)·and·add
255 <code·class="inline">'curve25519-sha256@libssh.org'</code>·by·appending·it·to·the·now·empty·list:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="p"·data-group-id="3607836480-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="3607836480-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ssh</span><span·cl[·...·truncated·by·diffoscope;·len:·88,·SHA:·6f18d379c4094d9638eae53693cc109cd359a2985454e23aa4c321927556f245·...·]-2">(</span><span·class="ss">loopback</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">22</span><span·class="p">,</span><span·class="w">255 <code·class="inline">'curve25519-sha256@libssh.org'</code>·by·appending·it·to·the·now·empty·list:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="p"·data-group-id="4056723961-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="4056723961-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ssh</span><span·cl[·...·truncated·by·diffoscope;·len:·88,·SHA:·7ceb342044d3d19af7a398b8ea60e3191b47366afa5bb9acc036984be34cdae5·...·]-2">(</span><span·class="ss">loopback</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">22</span><span·class="p">,</span><span·class="w">
256 ························</span><span·class="p"·data-group-id="3607836480-3">[</span><span·class="p"·data-group-id="3607836480-4">{</span><span·class="ss">modify_algorithms</span><span·class="p">,</span><span·class="w">256 ························</span><span·class="p"·data-group-id="4056723961-3">[</span><span·class="p"·data-group-id="4056723961-4">{</span><span·class="ss">modify_algorithms</span><span·class="p">,</span><span·class="w">
257 ·································</span><span·class="p"·data-group-id="3607836480-5">[</span><span·class="p"·data-group-id="3607836480-6">{</span><span·class="ss">rm</span><span·class="p">,</span><span·class="w">257 ·································</span><span·class="p"·data-group-id="4056723961-5">[</span><span·class="p"·data-group-id="4056723961-6">{</span><span·class="ss">rm</span><span·class="p">,</span><span·class="w">
258 ·····································</span><span·class="p"·data-group-id="3607836480-7">[</span><span·class="w">·</span><span·class="p"·data-group-id="3607836480-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="3607836480-9">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><[·...·truncated·by·diffoscope;·len:·170,·SHA:·867157bc1b647c2d263faeddfcdffb529c7fbafcd09bf371ce9e07bc4c73aacd·...·]-7">]</span><span·class="w">258 ·····································</span><span·class="p"·data-group-id="4056723961-7">[</span><span·class="w">·</span><span·class="p"·data-group-id="4056723961-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="4056723961-9">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><[·...·truncated·by·diffoscope;·len:·170,·SHA:·a4c673c45c0ad70b6ca2656ad9827cd0618c24063a9eec58cb02fa0b381a04a4·...·]-7">]</span><span·class="w">
259 »       »       »       »       ··</span><span·class="p"·data-group-id="3607836480-6">}</span><span·class="p">,</span><span·class="w">259 »       »       »       »       ··</span><span·class="p"·data-group-id="4056723961-6">}</span><span·class="p">,</span><span·class="w">
260 ··································</span><span·class="p"·data-group-id="3607836480-10">{</span><span·class="ss">append</span><span·class="p">,</span><span·class="w">260 ··································</span><span·class="p"·data-group-id="4056723961-10">{</span><span·class="ss">append</span><span·class="p">,</span><span·class="w">
261 »       »       »       ·············</span><span·class="p"·data-group-id="3607836480-11">[</span><span·class="w">·</span><span·class="p"·data-group-id="3607836480-12">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="3607836480-13">[</span><span·class="ss">&#39;curve25519-sha256@libssh.org[·...·truncated·by·diffoscope;·len:·185,·SHA:·195fe72059783438ea29c13bd3e66ede3cd89880bada92bd6028dd073f12b04e·...·]-11">]</span><span·class="w">261 »       »       »       ·············</span><span·class="p"·data-group-id="4056723961-11">[</span><span·class="w">·</span><span·class="p"·data-group-id="4056723961-12">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="4056723961-13">[</span><span·class="ss">&#39;curve25519-sha256@libssh.org[·...·truncated·by·diffoscope;·len:·185,·SHA:·baf2f437b223a4f639d21cdce8b2c2fb8e4e98ddb700595f221304c0592c74a0·...·]-11">]</span><span·class="w">
262 »       »       »       »       ··</span><span·class="p"·data-group-id="3607836480-10">}</span><span·class="w">262 »       »       »       »       ··</span><span·class="p"·data-group-id="4056723961-10">}</span><span·class="w">
263 »       »       »       »       ·</span><span·class="p"·data-group-id="3607836480-5">]</span><span·class="w">263 »       »       »       »       ·</span><span·class="p"·data-group-id="4056723961-5">]</span><span·class="w">
264 »       ·················</span><span·class="p"·data-group-id="3607836480-4">}</span><span·class="w">264 »       ·················</span><span·class="p"·data-group-id="4056723961-4">}</span><span·class="w">
265 ························</span><span·class="p"·data-group-id="3607836480-3">]</span><span·class="p"·data-group-id="3607836480-2">)</span><span·class="p">.</span><span·class="w">265 ························</span><span·class="p"·data-group-id="4056723961-3">]</span><span·class="p"·data-group-id="4056723961-2">)</span><span·class="p">.</span><span·class="w">
266 </span><span·class="p"·data-group-id="3607836480-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&gt;</span><span·class="mf">0.118</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="3607836480-14">}</span></code></pre><p>We·check·which·algorithms·are·negotiated·by·the·client·and·the·server,·and·note266 </span><span·class="p"·data-group-id="4056723961-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&gt;</span><span·class="mf">0.118</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="4056723961-14">}</span></code></pre><p>We·check·which·algorithms·are·negotiated·by·the·client·and·the·server,·and·note
267 that·the·(only)·<code·class="inline">kex</code>·algorithm·<code·class="inline">'curve25519-sha256@libssh.org'</code>·was·selected:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">connection_info</span><span·class="p"·data-group-id="1209811805-1">(</span><span·class="n">C</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">algorithms</span><span·class="p"·data-group-id="1209811805-1">)</span><span·class="p">.</span><span·class="w">267 that·the·(only)·<code·class="inline">kex</code>·algorithm·<code·class="inline">'curve25519-sha256@libssh.org'</code>·was·selected:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">connection_info</span><span·class="p"·data-group-id="9244237995-1">(</span><span·class="n">C</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">algorithms</span><span·class="p"·data-group-id="9244237995-1">)</span><span·class="p">.</span><span·class="w">
268 </span><span·class="p"·data-group-id="1209811805-2">{</span><span·class="ss">algorithms</span><span·class="p">,</span><span·class="p"·data-group-id="1209811805-3">[</span><span·class="p"·data-group-id="1209811805-4">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="ss">&#[·...·truncated·by·diffoscope;·len:·83,·SHA:·f1b3ac959e9ea41a66d089ac3cbc565f80a97be7558c63058e2434acc0f6b59b·...·]5-4">}</span><span·class="p">,</span><span·class="w">268 </span><span·class="p"·data-group-id="9244237995-2">{</span><span·class="ss">algorithms</span><span·class="p">,</span><span·class="p"·data-group-id="9244237995-3">[</span><span·class="p"·data-group-id="9244237995-4">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="ss">&#[·...·truncated·by·diffoscope;·len:·83,·SHA:·3e759618c48d889c74e15cba3752863ea8b2b41608c9cd8e6ae0a85859e5df02·...·]5-4">}</span><span·class="p">,</span><span·class="w">
269 ·············</span><span·class="p"·data-group-id="1209811805-5">{</span><span·class="ss">hkey</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p"·data-group-id="1209811805-5">}</span><span·class="p">,</span><span·class="w">269 ·············</span><span·class="p"·data-group-id="9244237995-5">{</span><span·class="ss">hkey</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p"·data-group-id="9244237995-5">}</span><span·class="p">,</span><span·class="w">
270 ·············</span><span·class="p"·data-group-id="1209811805-6">{</span><span·class="ss">send_mac</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="1209811805-6">}</span><span·class="p">,</span><span·class="w">270 ·············</span><span·class="p"·data-group-id="9244237995-6">{</span><span·class="ss">send_mac</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="9244237995-6">}</span><span·class="p">,</span><span·class="w">
271 ·············</span><span·class="p"·data-group-id="1209811805-7">{</span><span·class="ss">recv_mac</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="1209811805-7">}</span><span·class="p">,</span><span·class="w">271 ·············</span><span·class="p"·data-group-id="9244237995-7">{</span><span·class="ss">recv_mac</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="9244237995-7">}</span><span·class="p">,</span><span·class="w">
272 ·············</span><span·class="p"·data-group-id="1209811805-8">{</span><span·class="ss">encrypt</span><span·class="p">,</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p"·data-group-id="1209811805-8">}</span><span·class="p">,</span><span·class="w">272 ·············</span><span·class="p"·data-group-id="9244237995-8">{</span><span·class="ss">encrypt</span><span·class="p">,</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p"·data-group-id="9244237995-8">}</span><span·class="p">,</span><span·class="w">
273 ·············</span><span·class="p"·data-group-id="1209811805-9">{</span><span·class="ss">decrypt</span><span·class="p">,</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p"·data-group-id="1209811805-9">}</span><span·class="p">,</span><span·class="w">273 ·············</span><span·class="p"·data-group-id="9244237995-9">{</span><span·class="ss">decrypt</span><span·class="p">,</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p"·data-group-id="9244237995-9">}</span><span·class="p">,</span><span·class="w">
274 ·············</span><span·class="p"·data-group-id="1209811805-10">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="1209811805-10">}</span><span·class="p">,</span><span·class="w">274 ·············</span><span·class="p"·data-group-id="9244237995-10">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="9244237995-10">}</span><span·class="p">,</span><span·class="w">
275 ·············</span><span·class="p"·data-group-id="1209811805-11">{</span><span·class="ss">decompress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="1209811805-11">}</span><span·class="p">,</span><span·class="w">275 ·············</span><span·class="p"·data-group-id="9244237995-11">{</span><span·class="ss">decompress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="9244237995-11">}</span><span·class="p">,</span><span·class="w">
276 ·············</span><span·class="p"·data-group-id="1209811805-12">{</span><span·class="ss">send_ext_info</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="1209811805-12">}</span><span·class="p">,</span><span·class="w">276 ·············</span><span·class="p"·data-group-id="9244237995-12">{</span><span·class="ss">send_ext_info</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="9244237995-12">}</span><span·class="p">,</span><span·class="w">
277 ·············</span><span·class="p"·data-group-id="1209811805-13">{</span><span·class="ss">recv_ext_info</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="1209811805-13">}</span><span·class="p"·data-group-id="1209811805-3">]</span><span·class="p"·data-group-id="120981[·...·truncated·by·diffoscope;·len:·3,·SHA:·7b69759630f869f2723875f873935fed29d2d12b10ef763c1c33b8e0004cb405·...·]5-2">}</span></code></pre><h4>Example·of·modify_algorithms·handling</h4><p>We·will·now·check·if·the277 ·············</span><span·class="p"·data-group-id="9244237995-13">{</span><span·class="ss">recv_ext_info</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="9244237995-13">}</span><span·class="p"·data-group-id="9244237995-3">]</span><span·class="p"·data-group-id="924423[·...·truncated·by·diffoscope;·len:·3,·SHA:·ce02d4b6d1aceeea96a562c10923d590607df6182b4a3405ad10be85b6354787·...·]5-2">}</span></code></pre><h4>Example·of·modify_algorithms·handling</h4><p>We·will·now·check·if·the
278 <a·href="ssh.html#t:modify_algorithms_common_option/0">modify_algorithms</a>·on·a·lower·level278 <a·href="ssh.html#t:modify_algorithms_common_option/0">modify_algorithms</a>·on·a·lower·level
279 is·applied·to·a279 is·applied·to·a
280 <a·href="ssh.html#t:preferred_algorithms_common_option/0">preferred_algorithms</a>·on·a·higher280 <a·href="ssh.html#t:preferred_algorithms_common_option/0">preferred_algorithms</a>·on·a·higher
281 level.·We·will·do·that·by·enabling·the·<code·class="inline">ssh-dss</code>·algorithm·that·is·supported,281 level.·We·will·do·that·by·enabling·the·<code·class="inline">ssh-dss</code>·algorithm·that·is·supported,
282 but·not·in·the·default·set.</p><p>The·config·file·<code·class="inline">ex3.config</code>·has·the·contents:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8048515386-1">[</span><span·class="w">282 but·not·in·the·default·set.</p><p>The·config·file·<code·class="inline">ex3.config</code>·has·the·contents:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8127938481-1">[</span><span·class="w">
283 ·</span><span·class="p"·data-group-id="8048515386-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8048515386-3">[</span><span·class="p"·data-group-id="8048515386-4">{</span><span·class="ss">modify_algorithms</span><span·class="p">,</span><span·class="w">283 ·</span><span·class="p"·data-group-id="8127938481-2">{</span><span·class="ss">ssh</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8127938481-3">[</span><span·class="p"·data-group-id="8127938481-4">{</span><span·class="ss">modify_algorithms</span><span·class="p">,</span><span·class="w">
284 ·········</span><span·class="p"·data-group-id="8048515386-5">[</span><span·class="w">·</span><span·class="p"·data-group-id="8048515386-6">{</span><span·class="ss">prepend</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8048515386-7">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·480,·SHA:·b7452ff3bed1137dfbce292e203bc843a4d2031e0d9b8d28b0fa1ddccbf4cf1d·...·]-5">]</span><span·class="w">284 ·········</span><span·class="p"·data-group-id="8127938481-5">[</span><span·class="w">·</span><span·class="p"·data-group-id="8127938481-6">{</span><span·class="ss">prepend</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8127938481-7">[</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·480,·SHA:·eddaa687c2939d9706b50d03fbd58772cff6e7bc7835317760ec8d06f6b8aec3·...·]-5">]</span><span·class="w">
285 ········</span><span·class="p"·data-group-id="8048515386-4">}</span><span·class="p"·data-group-id="8048515386-3">]</span><span·class="p"·data-group-id="8048515386-2">}</span><span·class="w">285 ········</span><span·class="p"·data-group-id="8127938481-4">}</span><span·class="p"·data-group-id="8127938481-3">]</span><span·class="p"·data-group-id="8127938481-2">}</span><span·class="w">
286 </span><span·class="p"·data-group-id="8048515386-1">]</span><span·class="p">.</span></code></pre><p>A·newly·started·erlang·shell·shows·that·no·<code·class="inline">'ssh-dss'</code>·is·present·in·the286 </span><span·class="p"·data-group-id="8127938481-1">]</span><span·class="p">.</span></code></pre><p>A·newly·started·erlang·shell·shows·that·no·<code·class="inline">'ssh-dss'</code>·is·present·in·the
287 <code·class="inline">public_key</code>·entry:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="1060146385-1">(</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">default_algorithms</span><span·class="p"·data-group-id="1060146385-2">(</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·d260bcd79ccb0ba12d6aad0a0bd6ebd4d6678ac80d831e69e0edb00dec0b2ca9·...·]-1">)</span><span·class="p">.</span><span·class="w">287 <code·class="inline">public_key</code>·entry:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="4179356783-1">(</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">default_algorithms</span><span·class="p"·data-group-id="4179356783-2">(</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·821e66374cfbc0c6783e599b253ccb086a7379f926626b0fcf6e8fcb322bd736·...·]-1">)</span><span·class="p">.</span><span·class="w">
288 </span><span·class="p"·data-group-id="1060146385-3">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">288 </span><span·class="p"·data-group-id="4179356783-3">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">
289 ·</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-ed25519&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-ed448&#39;</span><span·class="p">,</span><span·class="w">289 ·</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-ed25519&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-ed448&#39;</span><span·class="p">,</span><span·class="w">
290 ·</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p"·data-group-id="1060146385-3">]</span><span·class="w">290 ·</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p"·data-group-id="4179356783-3">]</span><span·class="w">
291 </span><span·class="mi">2</span><span·class="o">&gt;</span></code></pre><p>A·call·to·<a·href="ssh.html#connect/3"><code·class="inline">ssh:connect/3</code></a>·removes·all·algorithms·but·one·of·each·type:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7606507690-1">(</span><span·class="p"·data-group-id="7606507690-1">)</span><span·class="p">.</span><span·class="w">291 </span><span·class="mi">2</span><span·class="o">&gt;</span></code></pre><p>A·call·to·<a·href="ssh.html#connect/3"><code·class="inline">ssh:connect/3</code></a>·removes·all·algorithms·but·one·of·each·type:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="4951359860-1">(</span><span·class="p"·data-group-id="4951359860-1">)</span><span·class="p">.</span><span·class="w">
292 </span><span·class="ss">ok</span><span·class="gp·unselectable">292 </span><span·class="ss">ok</span><span·class="gp·unselectable">
293 3&gt;·</span><span·class="p"·data-group-id="7606507690-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="7606507690-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ssh</span><span·cl[·...·truncated·by·diffoscope;·len:·87,·SHA:·327f0c0dfe9b4b87a2b044cd27a18ce04578c1960580196715a952d4e6d23b97·...·]0-3">(</span><span·class="ss">loopback</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">22</span><span·class="p">,</span><span·class="w">293 3&gt;·</span><span·class="p"·data-group-id="4951359860-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="4951359860-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ssh</span><span·cl[·...·truncated·by·diffoscope;·len:·87,·SHA:·9e84f261731e6936332e4d42a92360e76d7eaeff8e1287db2a4cd7420d2cba6a·...·]0-3">(</span><span·class="ss">loopback</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">22</span><span·class="p">,</span><span·class="w">
294 ························</span><span·class="p"·data-group-id="7606507690-4">[</span><span·class="p"·data-group-id="7606507690-5">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">294 ························</span><span·class="p"·data-group-id="4951359860-4">[</span><span·class="p"·data-group-id="4951359860-5">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
295 ·························</span><span·class="p"·data-group-id="7606507690-6">[</span><span·class="p"·data-group-id="7606507690-7">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7606507690-8">[</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;[·...·truncated·by·diffoscope;·len:·100,·SHA:·643a4d7de016e8f698d37172b3a49bf99c6a48bff7079c886db88fe4ef2b0238·...·]0-7">}</span><span·class="p">,</span><span·class="w">295 ·························</span><span·class="p"·data-group-id="4951359860-6">[</span><span·class="p"·data-group-id="4951359860-7">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4951359860-8">[</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;[·...·truncated·by·diffoscope;·len:·100,·SHA:·8f7615adf5b8ce6c201681998f5d15bb920c2129408da2b17ce84e991336f7db·...·]0-7">}</span><span·class="p">,</span><span·class="w">
296 »       »       »       ··</span><span·class="p"·data-group-id="7606507690-9">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7606507690-10">[</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p"·data-group-id="7606507690-10">]</span[·...·truncated·by·diffoscope;·len:·41,·SHA:·f0b1c1eb8bae4ad5522aa10cd2e9a473a75af6c7edd2047e900a7f7fd50c42b5·...·]0-9">}</span><span·class="p">,</span><span·class="w">296 »       »       »       ··</span><span·class="p"·data-group-id="4951359860-9">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4951359860-10">[</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p"·data-group-id="4951359860-10">]</span[·...·truncated·by·diffoscope;·len:·41,·SHA:·2ca17f6846c5f194aa9d3f625f323dc3e956efd2ce57d5b8b5a992cc050a70e0·...·]0-9">}</span><span·class="p">,</span><span·class="w">
297 »       »       ··········</span><span·class="p"·data-group-id="7606507690-11">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7606507690-12">[</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="7606507[·...·truncated·by·diffoscope;·len:·56,·SHA:·799d14a535bbfddf121bbacfa78c47790592ec1a5f225b3fe579a2518eccf2d2·...·]0-11">}</span><span·class="p">,</span><span·class="w">297 »       »       ··········</span><span·class="p"·data-group-id="4951359860-11">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4951359860-12">[</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="4951359[·...·truncated·by·diffoscope;·len:·56,·SHA:·77717dd921c5b3d3f713696ad694cddd5cc00f37e604e26f45c78732769b2c87·...·]0-11">}</span><span·class="p">,</span><span·class="w">
298 »       »       »       ··</span><span·class="p"·data-group-id="7606507690-13">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7606507690-14">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p"·data-group-id="7606507690-14">]</span><sp[·...·truncated·by·diffoscope;·len:·37,·SHA:·ae193501e59840b3a4d8c320af2e49ffc03ec7d512ad9f2b2c95c37200c209cf·...·]0-13">}</span><span·class="p">,</span><span·class="w">298 »       »       »       ··</span><span·class="p"·data-group-id="4951359860-13">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4951359860-14">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p"·data-group-id="4951359860-14">]</span><sp[·...·truncated·by·diffoscope;·len:·37,·SHA:·e66427e67c73f2bf0fb6222947b79939b4036ce7f3655936f8e2896f13f2e741·...·]0-13">}</span><span·class="p">,</span><span·class="w">
299 »       »       »       ··</span><span·class="p"·data-group-id="7606507690-15">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7606507690-16">[</span><span·class="ss">none</span><span·class="p"·data-group-id="7606507690-16">]</span><span·class="p[·...·truncated·by·diffoscope;·len:·26,·SHA:·0b72903d040a2ee321d3d0332e93080c5e4ae44d9c82bdff0479910a5f06b958·...·]0-15">}</span><span·class="w">299 »       »       »       ··</span><span·class="p"·data-group-id="4951359860-15">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4951359860-16">[</span><span·class="ss">none</span><span·class="p"·data-group-id="4951359860-16">]</span><span·class="p[·...·truncated·by·diffoscope;·len:·26,·SHA:·1299d88a67bff18d88d4bc0288ff93a7bad8f408698ea3dabcea2d4ec84db3a7·...·]0-15">}</span><span·class="w">
300 »       »       »       ··</span><span·class="p"·data-group-id="7606507690-6">]</span><span·class="p"·data-group-id="7606507690-5">}</span><span·class="w">300 »       »       »       ··</span><span·class="p"·data-group-id="4951359860-6">]</span><span·class="p"·data-group-id="4951359860-5">}</span><span·class="w">
301 »       »       »       ·</span><span·class="p"·data-group-id="7606507690-4">]</span><span·class="p"·data-group-id="7606507690-3">)</span><span·class="p">.</span><span·class="w">301 »       »       »       ·</span><span·class="p"·data-group-id="4951359860-4">]</span><span·class="p"·data-group-id="4951359860-3">)</span><span·class="p">.</span><span·class="w">
302 </span><span·class="p"·data-group-id="7606507690-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.101</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="7606507690-17">}</span><span·class="gp·unselectable">302 </span><span·class="p"·data-group-id="4951359860-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.101</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="4951359860-17">}</span><span·class="gp·unselectable">
303 4&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">connection_info</span><span·class="p"·data-group-id="7606507690-18">(</span><span·class="n">C</span><span·class="p">,</span><span·class="ss">algorithms</span><span·class="p"·data-group-id="7606507690-18">)</span><span·class="p">.</span><span·class="w">303 4&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">connection_info</span><span·class="p"·data-group-id="4951359860-18">(</span><span·class="n">C</span><span·class="p">,</span><span·class="ss">algorithms</span><span·class="p"·data-group-id="4951359860-18">)</span><span·class="p">.</span><span·class="w">
304 </span><span·class="p"·data-group-id="7606507690-19">{</span><span·class="ss">algorithms</span><span·class="p">,</span><span·class="p"·data-group-id="7606507690-20">[</span><span·class="p"·data-group-id="7606507690-21">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·76,·SHA:·bd7bc3c98774ff96767d9610b70014143f17ff5968d538eff3a62f36fbfe97b7·...·]0-21">}</span><span·class="p">,</span><span·class="w">304 </span><span·class="p"·data-group-id="4951359860-19">{</span><span·class="ss">algorithms</span><span·class="p">,</span><span·class="p"·data-group-id="4951359860-20">[</span><span·class="p"·data-group-id="4951359860-21">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·76,·SHA:·ed123526b50814bba7fa159f9d4eea847b93b46c6b239b8fdb9fef4cc50f7057·...·]0-21">}</span><span·class="p">,</span><span·class="w">
305 ·············</span><span·class="p"·data-group-id="7606507690-22">{</span><span·class="ss">hkey</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="7606507690-22">}</span><span·class="p">,</span><span·class="w">305 ·············</span><span·class="p"·data-group-id="4951359860-22">{</span><span·class="ss">hkey</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="4951359860-22">}</span><span·class="p">,</span><span·class="w">
306 ·············</span><span·class="p"·data-group-id="7606507690-23">{</span><span·class="ss">send_mac</span><span·class="p">,</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="7606507690-23">}</span><span·class="p">,</span><span·class="w">306 ·············</span><span·class="p"·data-group-id="4951359860-23">{</span><span·class="ss">send_mac</span><span·class="p">,</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="4951359860-23">}</span><span·class="p">,</span><span·class="w">
307 ·············</span><span·class="p"·data-group-id="7606507690-24">{</span><span·class="ss">recv_mac</span><span·class="p">,</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="7606507690-24">}</span><span·class="p">,</span><span·class="w">307 ·············</span><span·class="p"·data-group-id="4951359860-24">{</span><span·class="ss">recv_mac</span><span·class="p">,</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="4951359860-24">}</span><span·class="p">,</span><span·class="w">
308 ·············</span><span·class="p"·data-group-id="7606507690-25">{</span><span·class="ss">encrypt</span><span·class="p">,</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="7606507690-25">}</span><span·class="p">,</span><span·class="w">308 ·············</span><span·class="p"·data-group-id="4951359860-25">{</span><span·class="ss">encrypt</span><span·class="p">,</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="4951359860-25">}</span><span·class="p">,</span><span·class="w">
309 ·············</span><span·class="p"·data-group-id="7606507690-26">{</span><span·class="ss">decrypt</span><span·class="p">,</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="7606507690-26">}</span><span·class="p">,</span><span·class="w">309 ·············</span><span·class="p"·data-group-id="4951359860-26">{</span><span·class="ss">decrypt</span><span·class="p">,</span><span·class="ss">&#39;chacha20-poly1305@openssh.com&#39;</span><span·class="p"·data-group-id="4951359860-26">}</span><span·class="p">,</span><span·class="w">
310 ·············</span><span·class="p"·data-group-id="7606507690-27">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="7606507690-27">}</span><span·class="p">,</span><span·class="w">310 ·············</span><span·class="p"·data-group-id="4951359860-27">{</span><span·class="ss">compress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="4951359860-27">}</span><span·class="p">,</span><span·class="w">
311 ·············</span><span·class="p"·data-group-id="7606507690-28">{</span><span·class="ss">decompress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="7606507690-28">}</span><span·class="p">,</span><span·class="w">311 ·············</span><span·class="p"·data-group-id="4951359860-28">{</span><span·class="ss">decompress</span><span·class="p">,</span><span·class="ss">none</span><span·class="p"·data-group-id="4951359860-28">}</span><span·class="p">,</span><span·class="w">
312 ·············</span><span·class="p"·data-group-id="7606507690-29">{</span><span·class="ss">send_ext_info</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="7606507690-29">}</span><span·class="p">,</span><span·class="w">312 ·············</span><span·class="p"·data-group-id="4951359860-29">{</span><span·class="ss">send_ext_info</span><span·class="p">,</span><span·class="ss">false</span><span·class="p"·data-group-id="4951359860-29">}</span><span·class="p">,</span><span·class="w">
313 ·············</span><span·class="p"·data-group-id="7606507690-30">{</span><span·class="ss">recv_ext_info</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="7606507690-30">}</span><span·class="p"·data-group-id="7606507690-20">]</span><span·class="p"·data-group-id="76065[·...·truncated·by·diffoscope;·len:·4,·SHA:·40abee46fdfdb4ea3c1bf6af8c5c250f204071fee486142459d074bb4cf1fa20·...·]0-19">}</span><span·class="w">313 ·············</span><span·class="p"·data-group-id="4951359860-30">{</span><span·class="ss">recv_ext_info</span><span·class="p">,</span><span·class="ss">true</span><span·class="p"·data-group-id="4951359860-30">}</span><span·class="p"·data-group-id="4951359860-20">]</span><span·class="p"·data-group-id="49513[·...·truncated·by·diffoscope;·len:·4,·SHA:·b6b004752453d0a85b509ea0605d19a45f496f09bf701d5ae8fabc60a4772b6c·...·]0-19">}</span><span·class="w">
314 </span><span·class="mi">5</span><span·class="o">&gt;</span></code></pre><p>But·<code·class="inline">'ssh-dss'</code>·is·selected·although·the·call·inserted·<em>only</em>314 </span><span·class="mi">5</span><span·class="o">&gt;</span></code></pre><p>But·<code·class="inline">'ssh-dss'</code>·is·selected·although·the·call·inserted·<em>only</em>
315 <code·class="inline">'ecdsa-sha2-nistp256'</code>·as·acceptable.</p><p>This·example·showed·that·we·could·augment·the·set·of·algorithms·with·a315 <code·class="inline">'ecdsa-sha2-nistp256'</code>·as·acceptable.</p><p>This·example·showed·that·we·could·augment·the·set·of·algorithms·with·a
316 config-file·without·the·need·to·change·the·actual·call.</p><p>For·demonstration·purposes·we·used·<code·class="inline">prepend</code>·instead·of·<code·class="inline">append</code>.·This·forces316 config-file·without·the·need·to·change·the·actual·call.</p><p>For·demonstration·purposes·we·used·<code·class="inline">prepend</code>·instead·of·<code·class="inline">append</code>.·This·forces
317 the·negotiation·to·select·<code·class="inline">ssh-dss</code>·since·the·the·full·list·of·public·key317 the·negotiation·to·select·<code·class="inline">ssh-dss</code>·since·the·the·full·list·of·public·key
Max diff block lines reached; 747/63305 bytes (1.18%) of diff not shown.
753 B
html2text {}
Max HTML report size reached
126 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/configure_algos.html
    
Offset 166, 37 lines modifiedOffset 166, 37 lines modified
166 ··</a>166 ··</a>
167 ··<span·class="text">The·SSH·app's·mechanism</span>167 ··<span·class="text">The·SSH·app's·mechanism</span>
168 </h3>168 </h3>
169 <p>The·set·of·algorithms·that·the·SSH·app·uses·by·default·depends·on·the·algorithms169 <p>The·set·of·algorithms·that·the·SSH·app·uses·by·default·depends·on·the·algorithms
170 supported·by·the:</p><ul><li><a·href="../../../../lib/crypto-5.5/doc/html/crypto.html"><code·class="inline">crypto</code></a>·app,</li><li>The·cryptolib·OTP·is·linked·with,·usually·the·one·the·OS·uses,·probably170 supported·by·the:</p><ul><li><a·href="../../../../lib/crypto-5.5/doc/html/crypto.html"><code·class="inline">crypto</code></a>·app,</li><li>The·cryptolib·OTP·is·linked·with,·usually·the·one·the·OS·uses,·probably
171 OpenSSL,</li><li>and·finally·what·the·SSH·app·implements</li></ul><p>Due·to·this,·it·impossible·to·list·in·documentation·what·algorithms·that·are171 OpenSSL,</li><li>and·finally·what·the·SSH·app·implements</li></ul><p>Due·to·this,·it·impossible·to·list·in·documentation·what·algorithms·that·are
172 available·in·a·certain·installation.</p><p>There·is·an·important·command·to·list·the·actual·algorithms·and·their·ordering:172 available·in·a·certain·installation.</p><p>There·is·an·important·command·to·list·the·actual·algorithms·and·their·ordering:
173 <a·href="ssh.html#default_algorithms/0"><code·class="inline">ssh:default_algorithms/0</code></a>.</p><pre·id="example_default_algorithms"><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">0&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">default_algorithms</span><span·class="p"·data-group-id="0825296666-1">(</span><span·class="p"·data-group-id="0825296666-1">)</span><span·class="p">.</span><span·class="w">173 <a·href="ssh.html#default_algorithms/0"><code·class="inline">ssh:default_algorithms/0</code></a>.</p><pre·id="example_default_algorithms"><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">0&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">default_algorithms</span><span·class="p"·data-group-id="8458088971-1">(</span><span·class="p"·data-group-id="8458088971-1">)</span><span·class="p">.</span><span·class="w">
174 </span><span·class="p"·data-group-id="0825296666-2">[</span><span·class="p"·data-group-id="0825296666-3">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="0825296666-4">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdh-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">174 </span><span·class="p"·data-group-id="8458088971-2">[</span><span·class="p"·data-group-id="8458088971-3">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="8458088971-4">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdh-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">
175 ·······</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha256&#39;</span><span·class="p">,</span><span·class="w">175 ·······</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha256&#39;</span><span·class="p">,</span><span·class="w">
176 ·······</span><span·class="ss">&#39;diffie-hellman-group16-sha512&#39;</span><span·class="p">,</span><span·class="w">176 ·······</span><span·class="ss">&#39;diffie-hellman-group16-sha512&#39;</span><span·class="p">,</span><span·class="w">
177 ·······</span><span·class="ss">&#39;diffie-hellman-group18-sha512&#39;</span><span·class="p">,</span><span·class="w">177 ·······</span><span·class="ss">&#39;diffie-hellman-group18-sha512&#39;</span><span·class="p">,</span><span·class="w">
178 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p">,</span><span·class="w">178 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p">,</span><span·class="w">
179 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha1&#39;</span><span·class="p">,</span><span·class="w">179 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha1&#39;</span><span·class="p">,</span><span·class="w">
180 ·······</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha1&#39;</span><span·class="p"·data-group-id="0825296666-4">]</span><span·class="p"·data-group-id="0825296666-3">}</span><span·class="p">,</span><span·class="w">180 ·······</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha1&#39;</span><span·class="p"·data-group-id="8458088971-4">]</span><span·class="p"·data-group-id="8458088971-3">}</span><span·class="p">,</span><span·class="w">
181 ·</span><span·class="p"·data-group-id="0825296666-5">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="0825296666-6">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">181 ·</span><span·class="p"·data-group-id="8458088971-5">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="8458088971-6">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">
182 ··············</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="w">182 ··············</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="w">
183 ··············</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="0825296666-6">]</span><span·class="p"·data-group-id="0825296666-5">}</span><span·class="p">,</span><span·class="w">183 ··············</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="8458088971-6">]</span><span·class="p"·data-group-id="8458088971-5">}</span><span·class="p">,</span><span·class="w">
184 ·</span><span·class="p"·data-group-id="0825296666-7">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="0825296666-8">[</span><span·class="p"·data-group-id="0825296666-9">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·a83158e2140ddb20de37c30bdca7efaacfd2b50c252b2ffba6e872ad916024a9·...·]-10">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="w">184 ·</span><span·class="p"·data-group-id="8458088971-7">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="8458088971-8">[</span><span·class="p"·data-group-id="8458088971-9">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·c630ebcbec3a38d437605d4aa69347b25a6085cef1dfdf85f244d7ec093cec42·...·]-10">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="w">
185 ··························</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="w">185 ··························</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="w">
186 ··························</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="0825296666-10">]</span><span·class="p"·data-group-id="0825296666-9">}</span><span·class="p">,</span><span·class="w">186 ··························</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="8458088971-10">]</span><span·class="p"·data-group-id="8458088971-9">}</span><span·class="p">,</span><span·class="w">
187 ··········</span><span·class="p"·data-group-id="0825296666-11">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="0825296666-12">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="w">187 ··········</span><span·class="p"·data-group-id="8458088971-11">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8458088971-12">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="w">
188 ··························</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="w">188 ··························</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="w">
189 ··························</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="0825296666-12">]</span><span·class="p"·data-group-id="0825296666-11">}</span><span·class="p"·data-group-id="0825296666-8">]</span><span·class="p"·data-group-id="0825296666-7">}</span><span·class="p">,</span><span·class="w">189 ··························</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="8458088971-12">]</span><span·class="p"·data-group-id="8458088971-11">}</span><span·class="p"·data-group-id="8458088971-8">]</span><span·class="p"·data-group-id="8458088971-7">}</span><span·class="p">,</span><span·class="w">
190 ·</span><span·class="p"·data-group-id="0825296666-13">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="0825296666-14">[</span><span·class="p"·data-group-id="0825296666-15">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·a83158e2140ddb20de37c30bdca7efaacfd2b50c252b2ffba6e872ad916024a9·...·]-16">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">190 ·</span><span·class="p"·data-group-id="8458088971-13">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="8458088971-14">[</span><span·class="p"·data-group-id="8458088971-15">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·c630ebcbec3a38d437605d4aa69347b25a6085cef1dfdf85f244d7ec093cec42·...·]-16">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">
191 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="0825296666-16">]</span><span·class="p"·data-group-id="0825296666-15">}</span><span·class="p">,</span><span·class="w">191 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="8458088971-16">]</span><span·class="p"·data-group-id="8458088971-15">}</span><span·class="p">,</span><span·class="w">
192 ·······</span><span·class="p"·data-group-id="0825296666-17">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="0825296666-18">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">192 ·······</span><span·class="p"·data-group-id="8458088971-17">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8458088971-18">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">
193 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="0825296666-18">]</span><span·class="p"·data-group-id="0825296666-17">}</span><span·class="p"·data-group-id="0825296666-14">]</span><span·class="p"·data-group-id="0825296666-13">}</span><span·class="p">,</span><span·class="w">193 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="8458088971-18">]</span><span·class="p"·data-group-id="8458088971-17">}</span><span·class="p"·data-group-id="8458088971-14">]</span><span·class="p"·data-group-id="8458088971-13">}</span><span·class="p">,</span><span·class="w">
194 ·</span><span·class="p"·data-group-id="0825296666-19">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="0825296666-20">[</span><span·class="p"·data-group-id="0825296666-21">{</span><span·class="ss">client2server</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·298,·SHA:·e39660c8c9df8b9ba5db86f87194930b54699ba0143fbc1fcdaea0cb388907ac·...·]-21">}</span><span·class="p">,</span><span·class="w">194 ·</span><span·class="p"·data-group-id="8458088971-19">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="8458088971-20">[</span><span·class="p"·data-group-id="8458088971-21">{</span><span·class="ss">client2server</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·298,·SHA:·30f42b3f0c72868faeeea0637b4514a7f2904b215190afc5d3acaa90229cf6a1·...·]-21">}</span><span·class="p">,</span><span·class="w">
195 ···············</span><span·class="p"·data-group-id="0825296666-23">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="0825296666-24">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">&#39;zlib@openssh.com&#39;</span><span·class="p">[·...·truncated·by·diffoscope;·len:·293,·SHA:·09fc6f53d09681e8389b974137044e2e872e6e7e6e7d98ca12ead9412ba8bfc5·...·]-2">]</span></code></pre><p>To·change·the·algorithm·list,·there·are·two·options·which·can·be·used·in195 ···············</span><span·class="p"·data-group-id="8458088971-23">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8458088971-24">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">&#39;zlib@openssh.com&#39;</span><span·class="p">[·...·truncated·by·diffoscope;·len:·293,·SHA:·0e46e74f9b1cf157cecfbcf125ead75da34163e7aeeb3971b42b8f832d805962·...·]-2">]</span></code></pre><p>To·change·the·algorithm·list,·there·are·two·options·which·can·be·used·in
196 <a·href="ssh.html#connect/3">ssh:connect/2,3,4</a>·and·<a·href="ssh.html#daemon/2">ssh:daemon/2,3</a>.·The196 <a·href="ssh.html#connect/3">ssh:connect/2,3,4</a>·and·<a·href="ssh.html#daemon/2">ssh:daemon/2,3</a>.·The
197 options·could·of·course·be·used·in·all·other·functions·that·initiates197 options·could·of·course·be·used·in·all·other·functions·that·initiates
198 connections.</p><p>The·options·are198 connections.</p><p>The·options·are
199 <a·href="ssh.html#t:preferred_algorithms_common_option/0">preferred_algorithms</a>·and199 <a·href="ssh.html#t:preferred_algorithms_common_option/0">preferred_algorithms</a>·and
200 <a·href="ssh.html#t:modify_algorithms_common_option/0">modify_algorithms</a>.·The·first·one200 <a·href="ssh.html#t:modify_algorithms_common_option/0">modify_algorithms</a>.·The·first·one
201 replaces·the·default·set,·while·the·latter·modifies·the·default·set.</p><h2·id="replacing-the-default-set-preferred_algorithms"·class="section-heading">201 replaces·the·default·set,·while·the·latter·modifies·the·default·set.</p><h2·id="replacing-the-default-set-preferred_algorithms"·class="section-heading">
202 ··<a·href="#replacing-the-default-set-preferred_algorithms"·class="hover-link">202 ··<a·href="#replacing-the-default-set-preferred_algorithms"·class="hover-link">
Offset 211, 264 lines modifiedOffset 211, 264 lines modified
211 friends·does.</p><h3·id="example-1"·class="section-heading">211 friends·does.</p><h3·id="example-1"·class="section-heading">
212 ··<a·href="#example-1"·class="hover-link">212 ··<a·href="#example-1"·class="hover-link">
213 ····<i·class="ri-link-m"·aria-hidden="true"></i>213 ····<i·class="ri-link-m"·aria-hidden="true"></i>
214 ··</a>214 ··</a>
215 ··<span·class="text">Example·1</span>215 ··<span·class="text">Example·1</span>
216 </h3>216 </h3>
217 <p>Replace·the·kex·algorithms·list·with·the·single·algorithm217 <p>Replace·the·kex·algorithms·list·with·the·single·algorithm
218 <code·class="inline">'diffie-hellman-group14-sha256'</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">chk_algos_opts</span><span·class="p"·data-group-id="1374755998-1">(</span><span·class="w">218 <code·class="inline">'diffie-hellman-group14-sha256'</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">chk_algos_opts</span><span·class="p"·data-group-id="8653201861-1">(</span><span·class="w">
219 ···············</span><span·class="p"·data-group-id="1374755998-2">[</span><span·class="p"·data-group-id="1374755998-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">219 ···············</span><span·class="p"·data-group-id="8653201861-2">[</span><span·class="p"·data-group-id="8653201861-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
220 ·····················</span><span·class="p"·data-group-id="1374755998-4">[</span><span·class="p"·data-group-id="1374755998-5">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1374755998-6">[</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#[·...·truncated·by·diffoscope;·len:·104,·SHA:·a36cc48f34c55c4c677e3411ffbe4caf0a826e7e1ef88f8705ececce1a95e855·...·]-5">}</span><span·class="w">220 ·····················</span><span·class="p"·data-group-id="8653201861-4">[</span><span·class="p"·data-group-id="8653201861-5">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8653201861-6">[</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#[·...·truncated·by·diffoscope;·len:·104,·SHA:·c595bd6f8678f8c31fe52131ff75c04e291c2761de35a74727e57bf577fe0641·...·]-5">}</span><span·class="w">
221 ·····················</span><span·class="p"·data-group-id="1374755998-4">]</span><span·class="w">221 ·····················</span><span·class="p"·data-group-id="8653201861-4">]</span><span·class="w">
222 ················</span><span·class="p"·data-group-id="1374755998-3">}</span><span·class="w">222 ················</span><span·class="p"·data-group-id="8653201861-3">}</span><span·class="w">
223 ··············</span><span·class="p"·data-group-id="1374755998-2">]</span><span·class="p"·data-group-id="1374755998-1">)</span><span·class="p">.</span><span·class="w">223 ··············</span><span·class="p"·data-group-id="8653201861-2">]</span><span·class="p"·data-group-id="8653201861-1">)</span><span·class="p">.</span><span·class="w">
224 </span><span·class="p"·data-group-id="1374755998-7">[</span><span·class="p"·data-group-id="1374755998-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="1374755998-9">[</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p[·...·truncated·by·diffoscope;·len:·80,·SHA:·7bf4060537428b8ab9913375fcbb1607f04c62843865dd0076418b52e70731d3·...·]-8">}</span><span·class="p">,</span><span·class="w">224 </span><span·class="p"·data-group-id="8653201861-7">[</span><span·class="p"·data-group-id="8653201861-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="8653201861-9">[</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p[·...·truncated·by·diffoscope;·len:·80,·SHA:·5aaaf049a59ad1c963a4179ac8115fdac9dc993974c902133923e367d9280dfe·...·]-8">}</span><span·class="p">,</span><span·class="w">
225 ·</span><span·class="p"·data-group-id="1374755998-10">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="1374755998-11">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">225 ·</span><span·class="p"·data-group-id="8653201861-10">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="8653201861-11">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">
226 ··············</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="w">226 ··············</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="w">
227 ··············</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="1374755998-11">]</span><span·class="p"·data-group-id="1374755998-10">}</span><span·class="p">,</span><span·class="w">227 ··············</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="8653201861-11">]</span><span·class="p"·data-group-id="8653201861-10">}</span><span·class="p">,</span><span·class="w">
228 ·</span><span·class="p"·data-group-id="1374755998-12">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="1374755998-13">[</span><span·class="p"·data-group-id="1374755998-14">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·58f1e308d287f18b5045e87fc50d2e29dacb9dc567dd6db64e7d2fae368cf124·...·]-15">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="w">228 ·</span><span·class="p"·data-group-id="8653201861-12">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="8653201861-13">[</span><span·class="p"·data-group-id="8653201861-14">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·ad3fd3c85982a293f3da9d3cc0ce475c6e377c9cdc4e56654ddf6957e02341a1·...·]-15">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="w">
229 ··························</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="w">229 ··························</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="w">
230 ··························</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="1374755998-15">]</span><span·class="p"·data-group-id="1374755998-14">}</span><span·class="p">,</span><span·class="w">230 ··························</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="8653201861-15">]</span><span·class="p"·data-group-id="8653201861-14">}</span><span·class="p">,</span><span·class="w">
231 ··········</span><span·class="p"·data-group-id="1374755998-16">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="1374755998-17">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="w">231 ··········</span><span·class="p"·data-group-id="8653201861-16">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8653201861-17">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="w">
232 ··························</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="w">232 ··························</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="w">
233 ··························</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="1374755998-17">]</span><span·class="p"·data-group-id="1374755998-16">}</span><span·class="p"·data-group-id="1374755998-13">]</span><span·class="p"·data-group-id="1374755998-12">}</span><span·class="p">,</span><span·class="w">233 ··························</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="8653201861-17">]</span><span·class="p"·data-group-id="8653201861-16">}</span><span·class="p"·data-group-id="8653201861-13">]</span><span·class="p"·data-group-id="8653201861-12">}</span><span·class="p">,</span><span·class="w">
234 ·</span><span·class="p"·data-group-id="1374755998-18">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="1374755998-19">[</span><span·class="p"·data-group-id="1374755998-20">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·718020881e0f6e13ce9e072198873d455c2619c48580d4fe3424a95b55a63b93·...·]-21">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">234 ·</span><span·class="p"·data-group-id="8653201861-18">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="8653201861-19">[</span><span·class="p"·data-group-id="8653201861-20">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·ea048c144e21fa1c455064855f1a3c1699f4eaf98e0a2ce624c3c689ae91598c·...·]-21">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">
235 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="1374755998-21">]</span><span·class="p"·data-group-id="1374755998-20">}</span><span·class="p">,</span><span·class="w">235 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="8653201861-21">]</span><span·class="p"·data-group-id="8653201861-20">}</span><span·class="p">,</span><span·class="w">
236 ·······</span><span·class="p"·data-group-id="1374755998-22">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="1374755998-23">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">236 ·······</span><span·class="p"·data-group-id="8653201861-22">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8653201861-23">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">
237 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="1374755998-23">]</span><span·class="p"·data-group-id="1374755998-22">}</span><span·class="p"·data-group-id="1374755998-19">]</span><span·class="p"·data-group-id="1374755998-18">}</span><span·class="p">,</span><span·class="w">237 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="8653201861-23">]</span><span·class="p"·data-group-id="8653201861-22">}</span><span·class="p"·data-group-id="8653201861-19">]</span><span·class="p"·data-group-id="8653201861-18">}</span><span·class="p">,</span><span·class="w">
238 ·</span><span·class="p"·data-group-id="1374755998-24">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="1374755998-25">[</span><span·class="p"·data-group-id="1374755998-26">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="p"·data-group-id="1374755998-27">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">&#39;zlib@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">zlib</span><span·class="p"·data-group-id="1374755998-27">]</span><span·class="p"·data-group-id="1374755998-26">}</span><span·class="p">,</span><span·class="w"> 
239 ···············</span><span·class="p"·data-group-id="1374755998-28">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="1374755998-29">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="s[·...·truncated·by·diffoscope;·len:·517,·SHA:·c5af59f25ff622bba2faace5fd0e1bf183a16dd279f6f357cf0024a2f66c2dd5·...·]238 ·</span><span·class="p"·data-group-id="8653201861-24">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="8653201861-25">[</span><span·class="p"·data-group-id="8653201861-26">{</span><span·class="ss">client2serv[·...·truncated·by·diffoscope;·len:·389,·SHA:·b534206638ba2882d8c036aeb73eafb2ce0eff6884b3a1164ff4c848e9a0af26·...·]
 239 ···············</span><span·class="p"·data-group-id="8653201861-28">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="8653201861-29">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">&#39;zlib@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">zlib</span><span·class="p"·data-group-id="8653201861-29">]</span><span·class="p"·data-group-id="8653201861-28">}</span><span·class="p"·data-group-id="8653201861-25">]</span><span·class="p"·data-group-id="8653201861-24">}</span><span·class="p"·data-group-id="8653201861-7">]</span></code></pre><p>Note·that·the·unmentioned·lists·(<code·class="inline">public_key</code>,·<code·class="inline">cipher</code>,·<code·class="inline">mac</code>·and
240 <code·class="inline">compression</code>)·are·unchanged.</p><h3·id="example-2"·class="section-heading">240 <code·class="inline">compression</code>)·are·unchanged.</p><h3·id="example-2"·class="section-heading">
241 ··<a·href="#example-2"·class="hover-link">241 ··<a·href="#example-2"·class="hover-link">
242 ····<i·class="ri-link-m"·aria-hidden="true"></i>242 ····<i·class="ri-link-m"·aria-hidden="true"></i>
243 ··</a>243 ··</a>
244 ··<span·class="text">Example·2</span>244 ··<span·class="text">Example·2</span>
245 </h3>245 </h3>
246 <p>In·the·lists·that·are·divided·in·two·for·the·two·directions·(for·example·<code·class="inline">cipher</code>)·it·is246 <p>In·the·lists·that·are·divided·in·two·for·the·two·directions·(for·example·<code·class="inline">cipher</code>)·it·is
247 possible·to·change·both·directions·at·once:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">chk_algos_opts</span><span·class="p"·data-group-id="9573755844-1">(</span><span·class="w">247 possible·to·change·both·directions·at·once:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">chk_algos_opts</span><span·class="p"·data-group-id="6969972037-1">(</span><span·class="w">
248 ···············</span><span·class="p"·data-group-id="9573755844-2">[</span><span·class="p"·data-group-id="9573755844-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">248 ···············</span><span·class="p"·data-group-id="6969972037-2">[</span><span·class="p"·data-group-id="6969972037-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
249 ·····················</span><span·class="p"·data-group-id="9573755844-4">[</span><span·class="p"·data-group-id="9573755844-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-6">[</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·64,·SHA:·28d5b47dd2f00eb81b93be1cf10893dd943c8242e58fb27bf9605ac5f02e53e5·...·]-5">}</span><span·class="w">249 ·····················</span><span·class="p"·data-group-id="6969972037-4">[</span><span·class="p"·data-group-id="6969972037-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="6969972037-6">[</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·64,·SHA:·698cb6f4a50534aa63734ed6f82403d844acf82a85fc0fcf1152b0faac19374b·...·]-5">}</span><span·class="w">
250 ·····················</span><span·class="p"·data-group-id="9573755844-4">]</span><span·class="w">250 ·····················</span><span·class="p"·data-group-id="6969972037-4">]</span><span·class="w">
251 ················</span><span·class="p"·data-group-id="9573755844-3">}</span><span·class="w">251 ················</span><span·class="p"·data-group-id="6969972037-3">}</span><span·class="w">
252 ··············</span><span·class="p"·data-group-id="9573755844-2">]</span><span·class="p"·data-group-id="9573755844-1">)</span><span·class="p">.</span><span·class="w">252 ··············</span><span·class="p"·data-group-id="6969972037-2">]</span><span·class="p"·data-group-id="6969972037-1">)</span><span·class="p">.</span><span·class="w">
253 </span><span·class="p"·data-group-id="9573755844-7">[</span><span·class="p"·data-group-id="9573755844-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-9">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdh-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">253 </span><span·class="p"·data-group-id="6969972037-7">[</span><span·class="p"·data-group-id="6969972037-8">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="6969972037-9">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdh-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">
254 ·······</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha256&#39;</span><span·class="p">,</span><span·class="w">254 ·······</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha256&#39;</span><span·class="p">,</span><span·class="w">
255 ·······</span><span·class="ss">&#39;diffie-hellman-group16-sha512&#39;</span><span·class="p">,</span><span·class="w">255 ·······</span><span·class="ss">&#39;diffie-hellman-group16-sha512&#39;</span><span·class="p">,</span><span·class="w">
256 ·······</span><span·class="ss">&#39;diffie-hellman-group18-sha512&#39;</span><span·class="p">,</span><span·class="w">256 ·······</span><span·class="ss">&#39;diffie-hellman-group18-sha512&#39;</span><span·class="p">,</span><span·class="w">
257 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p">,</span><span·class="w">257 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p">,</span><span·class="w">
258 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha1&#39;</span><span·class="p">,</span><span·class="w">258 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha1&#39;</span><span·class="p">,</span><span·class="w">
259 ·······</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha1&#39;</span><span·class="p"·data-group-id="9573755844-9">]</span><span·class="p"·data-group-id="9573755844-8">}</span><span·class="p">,</span><span·class="w">259 ·······</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha1&#39;</span><span·class="p"·data-group-id="6969972037-9">]</span><span·class="p"·data-group-id="6969972037-8">}</span><span·class="p">,</span><span·class="w">
260 ·</span><span·class="p"·data-group-id="9573755844-10">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-11">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">260 ·</span><span·class="p"·data-group-id="6969972037-10">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="6969972037-11">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">
261 ··············</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="w">261 ··············</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="w">
262 ··············</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="9573755844-11">]</span><span·class="p"·data-group-id="9573755844-10">}</span><span·class="p">,</span><span·class="w">262 ··············</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="6969972037-11">]</span><span·class="p"·data-group-id="6969972037-10">}</span><span·class="p">,</span><span·class="w">
263 ·</span><span·class="p"·data-group-id="9573755844-12">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-13">[</span><span·class="p"·data-group-id="9573755844-14">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·183,·SHA:·5b9c4c578361d6b2207f9b524e9b42bb22c2b90a29d08c4f4215d78a99ebb36b·...·]-14">}</span><span·class="p">,</span><span·class="w">263 ·</span><span·class="p"·data-group-id="6969972037-12">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="6969972037-13">[</span><span·class="p"·data-group-id="6969972037-14">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·183,·SHA:·fc096fd61ab273a0c576522c49e97b43f8256fa947f3e45364e48cd032573fde·...·]-14">}</span><span·class="p">,</span><span·class="w">
264 ··········</span><span·class="p"·data-group-id="9573755844-16">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-17">[</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p"·data-group-id="9573755844-17">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·129,·SHA:·797c6077265ba627a3d889310d54a4babc4817b26926ec968a0b87219df09645·...·]-12">}</span><span·class="p">,</span><span·class="w">264 ··········</span><span·class="p"·data-group-id="6969972037-16">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6969972037-17">[</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p"·data-group-id="6969972037-17">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·129,·SHA:·56fad11640ada3fc8144c6dbb32825b7484d8122e9b01bf5e1e3fa3145b05095·...·]-12">}</span><span·class="p">,</span><span·class="w">
265 ·</span><span·class="p"·data-group-id="9573755844-18">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-19">[</span><span·class="p"·data-group-id="9573755844-20">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·b21d6194d3ee328267936fd6fe4458f4ffdab089e5cb113c988b0d090d91f7b1·...·]-21">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">265 ·</span><span·class="p"·data-group-id="6969972037-18">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="6969972037-19">[</span><span·class="p"·data-group-id="6969972037-20">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·28,·SHA:·9eb3927be29cb70007f0c9c9d5b4bd3be283d05fff71ef74ff4e155139e4026b·...·]-21">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">
266 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="9573755844-21">]</span><span·class="p"·data-group-id="9573755844-20">}</span><span·class="p">,</span><span·class="w">266 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="6969972037-21">]</span><span·class="p"·data-group-id="6969972037-20">}</span><span·class="p">,</span><span·class="w">
267 ·······</span><span·class="p"·data-group-id="9573755844-22">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-23">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">267 ·······</span><span·class="p"·data-group-id="6969972037-22">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6969972037-23">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha2-512&#39;</span><span·class="p">,</span><span·class="w">
268 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="9573755844-23">]</span><span·class="p"·data-group-id="9573755844-22">}</span><span·class="p"·data-group-id="9573755844-19">]</span><span·class="p"·data-group-id="9573755844-18">}</span><span·class="p">,</span><span·class="w">268 ·······················</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p"·data-group-id="6969972037-23">]</span><span·class="p"·data-group-id="6969972037-22">}</span><span·class="p"·data-group-id="6969972037-19">]</span><span·class="p"·data-group-id="6969972037-18">}</span><span·class="p">,</span><span·class="w">
269 ·</span><span·class="p"·data-group-id="9573755844-24">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-25">[</span><span·class="p"·data-group-id="9573755844-26">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-27">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">&#39;zlib@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">zlib</span><span·class="p"·data-group-id="9573755844-27">]</span><span·class="p"·data-group-id="9573755844-26">}</span><span·class="p">,</span><span·class="w"> 
270 ···············</span><span·class="p"·data-group-id="9573755844-28">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="9573755844-29">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="s[·...·truncated·by·diffoscope;·len:·470,·SHA:·d81a5b12cc5af32993533b1894d1a661bb180ff7af477a7da39e8fe3e171f0eb·...·]269 ·</span><span·class="p"·data-group-id="6969972037-24">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="6969972037-25">[</span><span·class="p"·data-group-id="6969972037-26">{</span><span·class="ss">client2serv[·...·truncated·by·diffoscope;·len:·389,·SHA:·f8c11c52d0b9decb054d8ec5867e83db648ac500533389b9fc627eb0799c9b30·...·]
 270 ···············</span><span·class="p"·data-group-id="6969972037-28">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6969972037-29">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">&#39;zlib@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">zlib</span><span·class="p"·data-group-id="6969972037-29">]</span><span·class="p"·data-group-id="6969972037-28">}</span><span·class="p"·data-group-id="6969972037-25">]</span><span·class="p"·data-group-id="6969972037-24">}</span><span·class="p"·data-group-id="6969972037-7">]</span></code></pre><p>Note·that·both·lists·in·<code·class="inline">cipher</code>·has·been·changed·to·the·provided·value
271 (<code·class="inline">'aes128-ctr'</code>).</p><h3·id="example-3"·class="section-heading">271 (<code·class="inline">'aes128-ctr'</code>).</p><h3·id="example-3"·class="section-heading">
272 ··<a·href="#example-3"·class="hover-link">272 ··<a·href="#example-3"·class="hover-link">
273 ····<i·class="ri-link-m"·aria-hidden="true"></i>273 ····<i·class="ri-link-m"·aria-hidden="true"></i>
274 ··</a>274 ··</a>
275 ··<span·class="text">Example·3</span>275 ··<span·class="text">Example·3</span>
276 </h3>276 </h3>
277 <p>In·the·lists·that·are·divided·in·two·for·the·two·directions·(for·example·<code·class="inline">cipher</code>)·it·is277 <p>In·the·lists·that·are·divided·in·two·for·the·two·directions·(for·example·<code·class="inline">cipher</code>)·it·is
278 possible·to·change·only·one·of·the·directions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">chk_algos_opts</span><span·class="p"·data-group-id="3704530085-1">(</span><span·class="w">278 possible·to·change·only·one·of·the·directions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">chk_algos_opts</span><span·class="p"·data-group-id="6447280214-1">(</span><span·class="w">
279 ···············</span><span·class="p"·data-group-id="3704530085-2">[</span><span·class="p"·data-group-id="3704530085-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">279 ···············</span><span·class="p"·data-group-id="6447280214-2">[</span><span·class="p"·data-group-id="6447280214-3">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
280 ·····················</span><span·class="p"·data-group-id="3704530085-4">[</span><span·class="p"·data-group-id="3704530085-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="3704530085-6">[</span><span·class="p"·data-group-id="3704530085-7">{</span><span·class="ss">clie[·...·truncated·by·diffoscope;·len:·337,·SHA:·cc259a2fefd2a2808b1b8c5b68faf228e2c3219c1794a25a5c7b869c0a7e723e·...·]-5">}</span><span·class="w">280 ·····················</span><span·class="p"·data-group-id="6447280214-4">[</span><span·class="p"·data-group-id="6447280214-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="6447280214-6">[</span><span·class="p"·data-group-id="6447280214-7">{</span><span·class="ss">clie[·...·truncated·by·diffoscope;·len:·337,·SHA:·4678b1e9b78a0bf66fc4d989da9143aadf9e482a4928f1501e34f61d2d5fd749·...·]-5">}</span><span·class="w">
281 ·····················</span><span·class="p"·data-group-id="3704530085-4">]</span><span·class="w">281 ·····················</span><span·class="p"·data-group-id="6447280214-4">]</span><span·class="w">
282 ················</span><span·class="p"·data-group-id="3704530085-3">}</span><span·class="w">282 ················</span><span·class="p"·data-group-id="6447280214-3">}</span><span·class="w">
283 ··············</span><span·class="p"·data-group-id="3704530085-2">]</span><span·class="p"·data-group-id="3704530085-1">)</span><span·class="p">.</span><span·class="w">283 ··············</span><span·class="p"·data-group-id="6447280214-2">]</span><span·class="p"·data-group-id="6447280214-1">)</span><span·class="p">.</span><span·class="w">
284 </span><span·class="p"·data-group-id="3704530085-9">[</span><span·class="p"·data-group-id="3704530085-10">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="3704530085-11">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdh-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">284 </span><span·class="p"·data-group-id="6447280214-9">[</span><span·class="p"·data-group-id="6447280214-10">{</span><span·class="ss">kex</span><span·class="p">,</span><span·class="p"·data-group-id="6447280214-11">[</span><span·class="ss">&#39;ecdh-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdh-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">
285 ·······</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha256&#39;</span><span·class="p">,</span><span·class="w">285 ·······</span><span·class="ss">&#39;ecdh-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha256&#39;</span><span·class="p">,</span><span·class="w">
286 ·······</span><span·class="ss">&#39;diffie-hellman-group16-sha512&#39;</span><span·class="p">,</span><span·class="w">286 ·······</span><span·class="ss">&#39;diffie-hellman-group16-sha512&#39;</span><span·class="p">,</span><span·class="w">
287 ·······</span><span·class="ss">&#39;diffie-hellman-group18-sha512&#39;</span><span·class="p">,</span><span·class="w">287 ·······</span><span·class="ss">&#39;diffie-hellman-group18-sha512&#39;</span><span·class="p">,</span><span·class="w">
288 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p">,</span><span·class="w">288 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha256&#39;</span><span·class="p">,</span><span·class="w">
289 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha1&#39;</span><span·class="p">,</span><span·class="w">289 ·······</span><span·class="ss">&#39;diffie-hellman-group14-sha1&#39;</span><span·class="p">,</span><span·class="w">
290 ·······</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha1&#39;</span><span·class="p"·data-group-id="3704530085-11">]</span><span·class="p"·data-group-id="3704530085-10">}</span><span·class="p">,</span><span·class="w">290 ·······</span><span·class="ss">&#39;diffie-hellman-group-exchange-sha1&#39;</span><span·class="p"·data-group-id="6447280214-11">]</span><span·class="p"·data-group-id="6447280214-10">}</span><span·class="p">,</span><span·class="w">
291 ·</span><span·class="p"·data-group-id="3704530085-12">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="3704530085-13">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">291 ·</span><span·class="p"·data-group-id="6447280214-12">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="6447280214-13">[</span><span·class="ss">&#39;ecdsa-sha2-nistp384&#39;</span><span·class="p">,</span><span·class="ss">&#39;ecdsa-sha2-nistp521&#39;</span><span·class="p">,</span><span·class="w">
292 ··············</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="w">292 ··············</span><span·class="ss">&#39;ecdsa-sha2-nistp256&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span·class="ss">&#39;rsa-sha2-256&#39;</span><span·class="p">,</span><span·class="w">
293 ··············</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="3704530085-13">]</span><span·class="p"·data-group-id="3704530085-12">}</span><span·class="p">,</span><span·class="w">293 ··············</span><span·class="ss">&#39;rsa-sha2-512&#39;</span><span·class="p">,</span><span·class="ss">&#39;ssh-dss&#39;</span><span·class="p"·data-group-id="6447280214-13">]</span><span·class="p"·data-group-id="6447280214-12">}</span><span·class="p">,</span><span·class="w">
294 ·</span><span·class="p"·data-group-id="3704530085-14">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="3704530085-15">[</span><span·class="p"·data-group-id="3704530085-16">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·183,·SHA:·a6afa046615b2d91733709bff5a3110e1b62aca7c6e25508edc59b8c286ea0dd·...·]-16">}</span><span·class="p">,</span><span·class="w">294 ·</span><span·class="p"·data-group-id="6447280214-14">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="6447280214-15">[</span><span·class="p"·data-group-id="6447280214-16">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·183,·SHA:·790b1244b61182eea6c3dab1cec811687bced3495f541e3a2a53279aa2b30b2b·...·]-16">}</span><span·class="p">,</span><span·class="w">
295 ··········</span><span·class="p"·data-group-id="3704530085-18">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="3704530085-19">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="w">295 ··········</span><span·class="p"·data-group-id="6447280214-18">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="6447280214-19">[</span><span·class="ss">&#39;aes256-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes256-ctr&#39;</span><span·class="p">,</span><span·class="w">
296 ··························</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="w">296 ··························</span><span·class="ss">&#39;aes192-ctr&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-gcm@openssh.com&#39;</span><span·class="p">,</span><span·class="ss">&#39;aes128-ctr&#39;</span><span·class="p">,</span><span·class="w">
297 ··························</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="3704530085-19">]</span><span·class="p"·data-group-id="3704530085-18">}</span><span·class="p"·data-group-id="3704530085-15">]</span><span·class="p"·data-group-id="3704530085-14">}</span><span·class="p">,</span><span·class="w">297 ··························</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·class="p"·data-group-id="6447280214-19">]</span><span·class="p"·data-group-id="6447280214-18">}</span><span·class="p"·data-group-id="6447280214-15">]</span><span·class="p"·data-group-id="6447280214-14">}</span><span·class="p">,</span><span·class="w">
Max diff block lines reached; 69519/128017 bytes (54.30%) of diff not shown.
756 B
html2text {}
Max HTML report size reached
12.6 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/hardening.html
    
Offset 210, 24 lines modifiedOffset 210, 24 lines modified
210 ··<span·class="text">Verifying·the·remote·client·in·a·daemon·(server)</span>210 ··<span·class="text">Verifying·the·remote·client·in·a·daemon·(server)</span>
211 </h2>211 </h2>
212 <ul><li><p><strong>Password·checking</strong>·-·The·default·password·checking·is·with·the·list·in·the212 <ul><li><p><strong>Password·checking</strong>·-·The·default·password·checking·is·with·the·list·in·the
213 <a·href="ssh.html#option-user_passwords">user_passwords</a>·option·in·the·SSH·daemon.·It213 <a·href="ssh.html#option-user_passwords">user_passwords</a>·option·in·the·SSH·daemon.·It
214 could·be·replaced·with·a·<a·href="ssh.html#option-pwdfun">pwdfun</a>·plugin.·The·arity214 could·be·replaced·with·a·<a·href="ssh.html#option-pwdfun">pwdfun</a>·plugin.·The·arity
215 four·variant·(<a·href="ssh.html#t:pwdfun_4/0"><code·class="inline">pwdfun_4()</code></a>)·can·also·be·used·for215 four·variant·(<a·href="ssh.html#t:pwdfun_4/0"><code·class="inline">pwdfun_4()</code></a>)·can·also·be·used·for
216 introducing·delays·after·failed·password·checking·attempts.·Here·is·a·simple216 introducing·delays·after·failed·password·checking·attempts.·Here·is·a·simple
217 example·of·such·a·pwdfun:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="1659707304-1">(</span><span·class="n">User</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">PeerAddress</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·95,·SHA:·ce727ee6ff80bac6cca0aa9b7a0e0cd12bd6a7af506a6b88e152019b91e45023·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">217 example·of·such·a·pwdfun:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="2243604628-1">(</span><span·class="n">User</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">PeerAddress</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·95,·SHA:·2c3b13bc8d7f58f5910dc59c20c194c91e86ddf4d3bcc47c1e9ae107dd7123c8·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
218 ········</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="1659707304-2">(</span><span·class="p"·data-group-id="1659707304-3">{</span><span·class="n">User</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="1659707304-3">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·185,·SHA:·7f987710d67663a0f08cd0501df1b0f05a793e5b0859211907a1b189a5216b17·...·]-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">218 ········</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">member</span><span·class="p"·data-group-id="2243604628-2">(</span><span·class="p"·data-group-id="2243604628-3">{</span><span·class="n">User</span><span·class="p">,</span><span·class="n">Password</span><span·class="p"·data-group-id="2243604628-3">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·185,·SHA:·63c841a860f223a9e17352244e0c1fb5a4df109d18c9d37a4ba889c61b0cd48c·...·]-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
219 ············</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">219 ············</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
220 ················</span><span·class="p"·data-group-id="1659707304-5">{</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p"·data-group-id="1659707304-5">}</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·Reset·delay·time</span><span·class="w">220 ················</span><span·class="p"·data-group-id="2243604628-5">{</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p"·data-group-id="2243604628-5">}</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·Reset·delay·time</span><span·class="w">
221 ············</span><span·class="ss">false</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">State</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">221 ············</span><span·class="ss">false</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">State</span><span·class="w">·</span><span·class="o">==</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
222 ················</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">sleep</span><span·class="p"·data-group-id="1659707304-6">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="1659707304-6">)</span><span·class="p">,</span><span·class="w">222 ················</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">sleep</span><span·class="p"·data-group-id="2243604628-6">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="2243604628-6">)</span><span·class="p">,</span><span·class="w">
223 ················</span><span·class="p"·data-group-id="1659707304-7">{</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2000</span><span·class="p"·data-group-id="1659707304-7">}</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·Next·delay·is·2000·ms</span><span·class="w">223 ················</span><span·class="p"·data-group-id="2243604628-7">{</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2000</span><span·class="p"·data-group-id="2243604628-7">}</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·Next·delay·is·2000·ms</span><span·class="w">
224 ············</span><span·class="ss">false</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="1659707304-8">(</span><span·class="n">State</span><span·class="p"·data-group-id="1659707304-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">224 ············</span><span·class="ss">false</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_integer</span><span·class="p"·data-group-id="2243604628-8">(</span><span·class="n">State</span><span·class="p"·data-group-id="2243604628-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
225 ················</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">sleep</span><span·class="p"·data-group-id="1659707304-9">(</span><span·class="n">State</span><span·class="p"·data-group-id="1659707304-9">)</span><span·class="p">,</span><span·class="w">225 ················</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">sleep</span><span·class="p"·data-group-id="2243604628-9">(</span><span·class="n">State</span><span·class="p"·data-group-id="2243604628-9">)</span><span·class="p">,</span><span·class="w">
226 ················</span><span·class="p"·data-group-id="1659707304-10">{</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="o">*</span><span·class="n">State</span><span·class="p"·data-group-id="1659707304-10">}</span><span·class="w">·</span><span·class="c1">%·Double·the·delay·for·each·failure</span><span·class="w">226 ················</span><span·class="p"·data-group-id="2243604628-10">{</span><span·class="ss">false</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="o">*</span><span·class="n">State</span><span·class="p"·data-group-id="2243604628-10">}</span><span·class="w">·</span><span·class="c1">%·Double·the·delay·for·each·failure</span><span·class="w">
227 ········</span><span·class="k">end</span><span·class="w">227 ········</span><span·class="k">end</span><span·class="w">
228 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>If·a·public·key·is·used·for·logging·in,·there·is·normally·no·checking·of·the228 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>If·a·public·key·is·used·for·logging·in,·there·is·normally·no·checking·of·the
229 user·name.·It·could·be·enabled·by·setting·the·option229 user·name.·It·could·be·enabled·by·setting·the·option
230 <a·href="ssh.html#option-pk_check_user"><code·class="inline">pk_check_user</code></a>·to·<code·class="inline">true</code>.·In·that·case·the230 <a·href="ssh.html#option-pk_check_user"><code·class="inline">pk_check_user</code></a>·to·<code·class="inline">true</code>.·In·that·case·the
231 pwdfun·will·get·the·atom·<code·class="inline">pubkey</code>·in·the·password·argument.</p></li></ul><h2·id="hardening-in-the-cryptographic-area"·class="section-heading">231 pwdfun·will·get·the·atom·<code·class="inline">pubkey</code>·in·the·password·argument.</p></li></ul><h2·id="hardening-in-the-cryptographic-area"·class="section-heading">
232 ··<a·href="#hardening-in-the-cryptographic-area"·class="hover-link">232 ··<a·href="#hardening-in-the-cryptographic-area"·class="hover-link">
233 ····<i·class="ri-link-m"·aria-hidden="true"></i>233 ····<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 288, 15 lines modifiedOffset 288, 15 lines modified
288 ··<span·class="text">The·id·string</span>288 ··<span·class="text">The·id·string</span>
289 </h3>289 </h3>
290 <p>One·way·to·reduce·the·risk·of·intrusion·is·to·not·convey·which·software·and290 <p>One·way·to·reduce·the·risk·of·intrusion·is·to·not·convey·which·software·and
291 which·version·the·intruder·is·connected·to.·This·limits·the·risk·of·an·intruder291 which·version·the·intruder·is·connected·to.·This·limits·the·risk·of·an·intruder
292 exploiting·known·faults·or·peculiarities·learned·by·reading·the·public·code.</p><p>Each·SSH·client·or·daemon·presents·themselves·to·each·other·with·brand·and292 exploiting·known·faults·or·peculiarities·learned·by·reading·the·public·code.</p><p>Each·SSH·client·or·daemon·presents·themselves·to·each·other·with·brand·and
293 version.·This·may·look·like</p><pre><code·class="text">SSH-2.0-Erlang/4.10</code></pre><p>or</p><pre><code·class="text">SSH-2.0-OpenSSH_7.6p1·Ubuntu-4ubuntu0.3</code></pre><p>This·brand·and·version·may·be·changed·with·the·option293 version.·This·may·look·like</p><pre><code·class="text">SSH-2.0-Erlang/4.10</code></pre><p>or</p><pre><code·class="text">SSH-2.0-OpenSSH_7.6p1·Ubuntu-4ubuntu0.3</code></pre><p>This·brand·and·version·may·be·changed·with·the·option
294 <a·href="ssh.html#t:id_string_common_option/0">id_string</a>.·We·start·a·daemon·with·that294 <a·href="ssh.html#t:id_string_common_option/0">id_string</a>.·We·start·a·daemon·with·that
295 option:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">daemon</span><span·class="p"·data-group-id="9752102019-1">(</span><span·class="mi">1234</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9752102019-2">[</span><span·class="p"·data-group-id="9752102019-3">{</span><span·class="ss">id_string</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·339,·SHA:·1a577459613e56d28e139787988822b3a7b2862a99b66adcb0bd4a525353e2ce·...·]-1">)</span><span·class="p">.</span></code></pre><p>and·the·daemon·will·present·itself·as:</p><pre><code·class="text">SSH-2.0-hi·there</code></pre><p>It·is·possible·to·replace·the·string·with·one·randomly·generated·for·each295 option:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">daemon</span><span·class="p"·data-group-id="6430494065-1">(</span><span·class="mi">1234</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6430494065-2">[</span><span·class="p"·data-group-id="6430494065-3">{</span><span·class="ss">id_string</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·339,·SHA:·2a8cb0bfbdfd654a1422c40048278168e44d0ec8dc0c1c5a7a88ec415bedb333·...·]-1">)</span><span·class="p">.</span></code></pre><p>and·the·daemon·will·present·itself·as:</p><pre><code·class="text">SSH-2.0-hi·there</code></pre><p>It·is·possible·to·replace·the·string·with·one·randomly·generated·for·each
296 connection·attempt.·See·the·reference·manual·for296 connection·attempt.·See·the·reference·manual·for
297 <a·href="ssh.html#t:id_string_common_option/0">id_string</a>.</p><h2·id="client-connection-options"·class="section-heading">297 <a·href="ssh.html#t:id_string_common_option/0">id_string</a>.</p><h2·id="client-connection-options"·class="section-heading">
298 ··<a·href="#client-connection-options"·class="hover-link">298 ··<a·href="#client-connection-options"·class="hover-link">
299 ····<i·class="ri-link-m"·aria-hidden="true"></i>299 ····<i·class="ri-link-m"·aria-hidden="true"></i>
300 ··</a>300 ··</a>
301 ··<span·class="text">Client·connection·options</span>301 ··<span·class="text">Client·connection·options</span>
302 </h2>302 </h2>
Offset 342, 15 lines modifiedOffset 342, 15 lines modified
342 ······<p·class="built-using">342 ······<p·class="built-using">
343 ········Built·using343 ········Built·using
344 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the344 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
345 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>345 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
346 ······</p>346 ······</p>
347 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>347 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
348 ····</footer>348 ····</footer>
349 ··</div>349 ··</div>
350 </main>350 </main>
351 </div>351 </div>
352 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>352 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
353 <script>353 <script>
354 ··document.addEventListener("DOMContentLoaded",·function·()·{354 ··document.addEventListener("DOMContentLoaded",·function·()·{
727 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/introduction.html
    
Offset 268, 15 lines modifiedOffset 268, 15 lines modified
268 ······<p·class="built-using">268 ······<p·class="built-using">
269 ········Built·using269 ········Built·using
270 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the270 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
271 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>271 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
272 ······</p>272 ······</p>
273 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>273 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
274 ····</footer>274 ····</footer>
275 ··</div>275 ··</div>
276 </main>276 </main>
277 </div>277 </div>
278 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>278 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
279 <script>279 <script>
280 ··document.addEventListener("DOMContentLoaded",·function·()·{280 ··document.addEventListener("DOMContentLoaded",·function·()·{
706 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/notes.html
    
Offset 3157, 15 lines modifiedOffset 3157, 15 lines modified
3157 ······<p·class="built-using">3157 ······<p·class="built-using">
3158 ········Built·using3158 ········Built·using
3159 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3159 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3160 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3160 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3161 ······</p>3161 ······</p>
3162 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3162 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3163 ····</footer>3163 ····</footer>
3164 ··</div>3164 ··</div>
3165 </main>3165 </main>
3166 </div>3166 </div>
3167 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3167 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3168 <script>3168 <script>
3169 ··document.addEventListener("DOMContentLoaded",·function·()·{3169 ··document.addEventListener("DOMContentLoaded",·function·()·{
695 B
html2text {}
Max HTML report size reached
1.26 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
460 B
html2text {}
Max HTML report size reached
519 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh.epub
4.57 KB
zipinfo {}
Max HTML report size reached
95.2 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
203 KB
OEBPS/using_ssh.xhtml
Max HTML report size reached
4.58 KB
OEBPS/ssh_agent.xhtml
Max HTML report size reached
13.3 KB
OEBPS/ssh.xhtml
Max HTML report size reached
11.1 KB
OEBPS/hardening.xhtml
Max HTML report size reached
1.2 KB
OEBPS/content.opf
1.17 KB
OEBPS/content.opf
Max HTML report size reached
124 KB
OEBPS/configure_algos.xhtml
Max HTML report size reached
61.2 KB
OEBPS/configurations.xhtml
Max HTML report size reached
14.8 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh.html
    
Offset 3651, 22 lines modifiedOffset 3651, 22 lines modified
  
3651 ··········<pre·translate="no"><span·class="attribute">-type</span>·double_algs(AlgType)·::·[{client2server,·[AlgType]}·|·{server2client,·[AlgType]}]·|·[AlgType].</pre>3651 ··········<pre·translate="no"><span·class="attribute">-type</span>·double_algs(AlgType)·::·[{client2server,·[AlgType]}·|·{server2client,·[AlgType]}]·|·[AlgType].</pre>
  
3652 ······</div>3652 ······</div>
  
3653 <p>List·of·algorithms·to·use·in·the·algorithm·negotiation.·The·default3653 <p>List·of·algorithms·to·use·in·the·algorithm·negotiation.·The·default
3654 <a·href="#t:algs_list/0"><code·class="inline">algs_list/0</code></a>·can·be·obtained·from·<a·href="#default_algorithms/0"><code·class="inline">default_algorithms/0</code></a>.</p><p>If·an·alg_entry()·is·missing·in·the·algs_list(),·the·default·value·is·used·for3654 <a·href="#t:algs_list/0"><code·class="inline">algs_list/0</code></a>·can·be·obtained·from·<a·href="#default_algorithms/0"><code·class="inline">default_algorithms/0</code></a>.</p><p>If·an·alg_entry()·is·missing·in·the·algs_list(),·the·default·value·is·used·for
3655 that·entry.</p><p>Here·is·an·example·of·this·option:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»  ··</span><span·class="p"·data-group-id="1411236183-1">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">3655 that·entry.</p><p>Here·is·an·example·of·this·option:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">»  ··</span><span·class="p"·data-group-id="9493020528-1">{</span><span·class="ss">preferred_algorithms</span><span·class="p">,</span><span·class="w">
3656 »       ··</span><span·class="p"·data-group-id="1411236183-2">[</span><span·class="p"·data-group-id="1411236183-3">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="1411236183-4">[</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·130,·SHA:·19b4b8f2c6ea107f368e649e0659fb76fca67cd8b6e9458bff4daf7021a29d02·...·]-3">}</span><span·class="p">,</span><span·class="w">3656 »       ··</span><span·class="p"·data-group-id="9493020528-2">[</span><span·class="p"·data-group-id="9493020528-3">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="p"·data-group-id="9493020528-4">[</span><span·class="ss">&#39;ssh-rsa&#39;</span><span·class="p">,</span><span[·...·truncated·by·diffoscope;·len:·130,·SHA:·d4d67bb0f0ac75356e16d9b516be8b5600c8e23a4ce71339021ab90e5a90fc65·...·]-3">}</span><span·class="p">,</span><span·class="w">
3657 »       ··</span><span·class="p"·data-group-id="1411236183-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="1411236183-6">[</span><span·class="p"·data-group-id="1411236183-7">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·178,·SHA:·5771e3e195904acfddfa303582a18e707cfb722f69598417d2ba052873910a3f·...·]-7">}</span><span·class="p">,</span><span·class="w">3657 »       ··</span><span·class="p"·data-group-id="9493020528-5">{</span><span·class="ss">cipher</span><span·class="p">,</span><span·class="p"·data-group-id="9493020528-6">[</span><span·class="p"·data-group-id="9493020528-7">{</span><span·class="ss">client2server</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·178,·SHA:·dbea29d858b333d9686951e09d66d1c0891aa04eb6a0db70fdcb4399100ffc7a·...·]-7">}</span><span·class="p">,</span><span·class="w">
3658 ··········</span><span·class="p"·data-group-id="1411236183-9">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="1411236183-10">[</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·cla[·...·truncated·by·diffoscope;·len:·192,·SHA:·5d00a3107a94368d75adf541bcc38f14319b5198b5a99e20ff050ff343cc70b8·...·]-5">}</span><span·class="p">,</span><span·class="w">3658 ··········</span><span·class="p"·data-group-id="9493020528-9">{</span><span·class="ss">server2client</span><span·class="p">,</span><span·class="p"·data-group-id="9493020528-10">[</span><span·class="ss">&#39;aes128-cbc&#39;</span><span·class="p">,</span><span·class="ss">&#39;3des-cbc&#39;</span><span·cla[·...·truncated·by·diffoscope;·len:·192,·SHA:·e2c12a488c846006e0ec069addd581dc52531506e4a662546eb834ee129cb1f7·...·]-5">}</span><span·class="p">,</span><span·class="w">
3659 »       ··</span><span·class="p"·data-group-id="1411236183-11">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="1411236183-12">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p[·...·truncated·by·diffoscope;·len:·81,·SHA:·c4b5dbc282c5cc5c458c1c5cbc285a720a3525dd3a54cad4bf5b118ed13b548b·...·]-11">}</span><span·class="p">,</span><span·class="w">3659 »       ··</span><span·class="p"·data-group-id="9493020528-11">{</span><span·class="ss">mac</span><span·class="p">,</span><span·class="p"·data-group-id="9493020528-12">[</span><span·class="ss">&#39;hmac-sha2-256&#39;</span><span·class="p">,</span><span·class="ss">&#39;hmac-sha1&#39;</span><span·class="p[·...·truncated·by·diffoscope;·len:·81,·SHA:·7daca29f8d84c71a301911e2f3d9cac00a97e952c33dbfc874d8c5fe551bb225·...·]-11">}</span><span·class="p">,</span><span·class="w">
3660 »       ··</span><span·class="p"·data-group-id="1411236183-13">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="1411236183-14">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">zlib</span><span·class="p"·data-group-id="141123618[·...·truncated·by·diffoscope;·len:·55,·SHA:·afe2ae50d792b546dcb39fcdd35c93d9342935f8ae92dbab364ed560a9093d91·...·]-13">}</span><span·class="w">3660 »       ··</span><span·class="p"·data-group-id="9493020528-13">{</span><span·class="ss">compression</span><span·class="p">,</span><span·class="p"·data-group-id="9493020528-14">[</span><span·class="ss">none</span><span·class="p">,</span><span·class="ss">zlib</span><span·class="p"·data-group-id="949302052[·...·truncated·by·diffoscope;·len:·55,·SHA:·5f485e12f90c16ca8e4fc542eed740d7a8c61b086c5cdb29c2c384b7d3cafea1·...·]-13">}</span><span·class="w">
3661 »       ··</span><span·class="p"·data-group-id="1411236183-2">]</span><span·class="w">3661 »       ··</span><span·class="p"·data-group-id="9493020528-2">]</span><span·class="w">
3662 »       ··</span><span·class="p"·data-group-id="1411236183-1">}</span></code></pre><p>The·example·specifies·different·algorithms·in·the·two·directions·(client2server3662 »       ··</span><span·class="p"·data-group-id="9493020528-1">}</span></code></pre><p>The·example·specifies·different·algorithms·in·the·two·directions·(client2server
3663 and·server2client),·for·cipher·but·specifies·the·same·algorithms·for·mac·and3663 and·server2client),·for·cipher·but·specifies·the·same·algorithms·for·mac·and
3664 compression·in·both·directions.·The·kex·(key·exchange)·is·implicit·but3664 compression·in·both·directions.·The·kex·(key·exchange)·is·implicit·but
3665 public_key·is·set·explicitly.</p><p>For·background·and·more·examples·see·the3665 public_key·is·set·explicitly.</p><p>For·background·and·more·examples·see·the
3666 <a·href="configure_algos.html#introduction">User's·Guide</a>.</p><p>If·an·algorithm·name·occurs·more·than·once·in·a·list,·the·behaviour·is3666 <a·href="configure_algos.html#introduction">User's·Guide</a>.</p><p>If·an·algorithm·name·occurs·more·than·once·in·a·list,·the·behaviour·is
3667 undefined.·The·tags·in·the·property·lists·are·also·assumed·to·occur·at·most·one3667 undefined.·The·tags·in·the·property·lists·are·also·assumed·to·occur·at·most·one
3668 time.</p><blockquote><h4·class="warning">Warning</h4><p>Changing·the·values·can·make·a·connection·less·secure.·Do·not·change·unless3668 time.</p><blockquote><h4·class="warning">Warning</h4><p>Changing·the·values·can·make·a·connection·less·secure.·Do·not·change·unless
3669 you·know·exactly·what·you·are·doing.·If·you·do·not·understand·the·values·then3669 you·know·exactly·what·you·are·doing.·If·you·do·not·understand·the·values·then
Offset 5555, 29 lines modifiedOffset 5555, 29 lines modified
5555 ·································StringOrString·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·|·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()].</pre>5555 ·································StringOrString·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()·|·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:string/0">string</a>()].</pre>
  
5556 ······</div>5556 ······</div>
  
5557 <p>hostkey_fingerprint([DigestType],·HostKey)·-&gt;5557 <p>hostkey_fingerprint([DigestType],·HostKey)·-&gt;
5558 [string()]hostkey_fingerprint(DigestType,·HostKey)·-&gt;·string()</p><p>Calculates·a·ssh·fingerprint·from·a·public·host·key·as·openssh·does.</p><p>The·algorithm·in·<a·href="#hostkey_fingerprint/1"><code·class="inline">hostkey_fingerprint/1</code></a>·is·md5·to·be5558 [string()]hostkey_fingerprint(DigestType,·HostKey)·-&gt;·string()</p><p>Calculates·a·ssh·fingerprint·from·a·public·host·key·as·openssh·does.</p><p>The·algorithm·in·<a·href="#hostkey_fingerprint/1"><code·class="inline">hostkey_fingerprint/1</code></a>·is·md5·to·be
5559 compatible·with·older·ssh-keygen·commands.·The·string·from·the·second·variant·is5559 compatible·with·older·ssh-keygen·commands.·The·string·from·the·second·variant·is
5560 prepended·by·the·algorithm·name·in·uppercase·as·in·newer·ssh-keygen·commands.</p><p>Examples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="9566957247-1">(</span><span·class="n">Key</span><span·class="p"·data-group-id="9566957247-1">)</span><span·class="p">.</span><span·class="w">5560 prepended·by·the·algorithm·name·in·uppercase·as·in·newer·ssh-keygen·commands.</p><p>Examples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="1002400763-1">(</span><span·class="n">Key</span><span·class="p"·data-group-id="1002400763-1">)</span><span·class="p">.</span><span·class="w">
5561 ·</span><span·class="s">&quot;f5:64:a6:c1:5a:cb:9f:0a:10:46:a2:5c:3e:2f:57:84&quot;</span><span·class="w">5561 ·</span><span·class="s">&quot;f5:64:a6:c1:5a:cb:9f:0a:10:46:a2:5c:3e:2f:57:84&quot;</span><span·class="w">
  
5562 ·</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="9566957247-2">(</span><span·class="nb">md5</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="9566957247-2">)</span><span·class="p">.</span><span·class="w">5562 ·</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="1002400763-2">(</span><span·class="nb">md5</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="1002400763-2">)</span><span·class="p">.</span><span·class="w">
5563 ·</span><span·class="s">&quot;MD5:f5:64:a6:c1:5a:cb:9f:0a:10:46:a2:5c:3e:2f:57:84&quot;</span><span·class="w">5563 ·</span><span·class="s">&quot;MD5:f5:64:a6:c1:5a:cb:9f:0a:10:46:a2:5c:3e:2f:57:84&quot;</span><span·class="w">
  
5564 ·</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="9566957247-3">(</span><span·class="ss">sha</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="9566957247-3">)</span><span·class="p">.</span><span·class="w">5564 ·</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="1002400763-3">(</span><span·class="ss">sha</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="1002400763-3">)</span><span·class="p">.</span><span·class="w">
5565 ·</span><span·class="s">&quot;SHA1:bSLY/C4QXLDL/Iwmhyg0PGW9UbY&quot;</span><span·class="w">5565 ·</span><span·class="s">&quot;SHA1:bSLY/C4QXLDL/Iwmhyg0PGW9UbY&quot;</span><span·class="w">
  
5566 ·</span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="9566957247-4">(</span><span·class="ss">sha256</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="9566957247-4">)</span><span·class="p">.</span><span·class="w">5566 ·</span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="1002400763-4">(</span><span·class="ss">sha256</span><span·class="p">,</span><span·class="n">Key</span><span·class="p"·data-group-id="1002400763-4">)</span><span·class="p">.</span><span·class="w">
5567 ·</span><span·class="s">&quot;SHA256:aZGXhabfbf4oxglxltItWeHU7ub3Dc31NcNw2cMJePQ&quot;</span><span·class="w">5567 ·</span><span·class="s">&quot;SHA256:aZGXhabfbf4oxglxltItWeHU7ub3Dc31NcNw2cMJePQ&quot;</span><span·class="w">
  
5568 ·</span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="9566957247-5">(</span><span·class="p"·data-group-id="9566957247-6">[</span><span·class="ss">sha</span><span·class="p">,</span><span·class="ss">sha256</span><span·class="p"·data-group-id="9566957247-6">]</span><span·class="p">,</span><span·class="n">Key</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·3e18b2012560661e5860b5c31770db18b271ebcca8dec8201f438058571bf1b3·...·]-5">)</span><span·class="p">.</span><span·class="w">5568 ·</span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">ssh</span><span·class="p">:</span><span·class="nf">hostkey_fingerprint</span><span·class="p"·data-group-id="1002400763-5">(</span><span·class="p"·data-group-id="1002400763-6">[</span><span·class="ss">sha</span><span·class="p">,</span><span·class="ss">sha256</span><span·class="p"·data-group-id="1002400763-6">]</span><span·class="p">,</span><span·class="n">Key</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·b76a8c85ee4b4bf1265c02b4e67a094ca6d07a750423521a51c08660cc88c0a3·...·]-5">)</span><span·class="p">.</span><span·class="w">
5569 ·</span><span·class="p"·data-group-id="9566957247-7">[</span><span·class="s">&quot;SHA1:bSLY/C4QXLDL/Iwmhyg0PGW9UbY&quot;</span><span·class="p">,</span><span·class="w">5569 ·</span><span·class="p"·data-group-id="1002400763-7">[</span><span·class="s">&quot;SHA1:bSLY/C4QXLDL/Iwmhyg0PGW9UbY&quot;</span><span·class="p">,</span><span·class="w">
5570 ··</span><span·class="s">&quot;SHA256:aZGXhabfbf4oxglxltItWeHU7ub3Dc31NcNw2cMJePQ&quot;</span><span·class="p"·data-group-id="9566957247-7">]</span></code></pre>5570 ··</span><span·class="s">&quot;SHA256:aZGXhabfbf4oxglxltItWeHU7ub3Dc31NcNw2cMJePQ&quot;</span><span·class="p"·data-group-id="1002400763-7">]</span></code></pre>
5571 ··</section>5571 ··</section>
5572 </section>5572 </section>
5573 <section·class="detail"·id="set_sock_opts/2">5573 <section·class="detail"·id="set_sock_opts/2">
  
5574 ··<div·class="detail-header">5574 ··<div·class="detail-header">
5575 ····<a·href="#set_sock_opts/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">5575 ····<a·href="#set_sock_opts/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
5576 ······<i·class="ri-link-m"·aria-hidden="true"></i>5576 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 6152, 15 lines modifiedOffset 6152, 15 lines modified
6152 ······<p·class="built-using">6152 ······<p·class="built-using">
6153 ········Built·using6153 ········Built·using
6154 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the6154 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
6155 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>6155 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
6156 ······</p>6156 ······</p>
6157 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>6157 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
6158 ····</footer>6158 ····</footer>
6159 ··</div>6159 ··</div>
6160 </main>6160 </main>
6161 </div>6161 </div>
6162 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>6162 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
6163 <script>6163 <script>
6164 ··document.addEventListener("DOMContentLoaded",·function·()·{6164 ··document.addEventListener("DOMContentLoaded",·function·()·{
738 B
html2text {}
Max HTML report size reached
5.92 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_agent.html
    
Offset 131, 19 lines modifiedOffset 131, 19 lines modified
131 <p>Callback·module·for·using·an·SSH·agent·instead·of·the·default·ssh_file·callback.</p><p>This·module·defines·a·callback·handler·for·the·communication·with·an131 <p>Callback·module·for·using·an·SSH·agent·instead·of·the·default·ssh_file·callback.</p><p>This·module·defines·a·callback·handler·for·the·communication·with·an
132 <a·href="https://tools.ietf.org/html/draft-miller-ssh-agent-02">SSH·Agent</a>·and·can·be132 <a·href="https://tools.ietf.org/html/draft-miller-ssh-agent-02">SSH·Agent</a>·and·can·be
133 used·to·replace·the·<a·href="ssh_file.html">default·callback</a>.·This·allows·to·issue133 used·to·replace·the·<a·href="ssh_file.html">default·callback</a>.·This·allows·to·issue
134 signing·requests·to·an·agent·that·stores·SSH·private·keys·to·perform134 signing·requests·to·an·agent·that·stores·SSH·private·keys·to·perform
135 authentication.</p><p>Ssh_agent·implements·the·<a·href="ssh_client_key_api.html"><code·class="inline">ssh_client_key_api</code></a>,·to·allow·it·to·be·used·by135 authentication.</p><p>Ssh_agent·implements·the·<a·href="ssh_client_key_api.html"><code·class="inline">ssh_client_key_api</code></a>,·to·allow·it·to·be·used·by
136 setting·the·option·<a·href="ssh.html#t:key_cb_common_option/0"><code·class="inline">key_cb</code></a>·when·starting·a136 setting·the·option·<a·href="ssh.html#t:key_cb_common_option/0"><code·class="inline">key_cb</code></a>·when·starting·a
137 client·(with·for·example·<a·href="ssh.html#connect/3">ssh:connect</a>,137 client·(with·for·example·<a·href="ssh.html#connect/3">ssh:connect</a>,
138 <a·href="ssh.html#shell/1">ssh:shell</a>·).</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="6870376105-1">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6870376105-2">{</span><span·class="ss">ssh_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·178,·SHA:·efb40ca712ae1cd668fa1cb47cc4b2d57a33cb9aedcb00681fce89019ae33b9f·...·]-1">}</span></code></pre><p>The·agent·communication·is·established·through·a·UNIX·domain·socket.·By·default,138 <a·href="ssh.html#shell/1">ssh:shell</a>·).</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="1265077640-1">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1265077640-2">{</span><span·class="ss">ssh_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·178,·SHA:·70fa0b5bf3841ad851d39ccd5615df3268d3b09af2e94ae9b16561e970c68443·...·]-1">}</span></code></pre><p>The·agent·communication·is·established·through·a·UNIX·domain·socket.·By·default,
139 the·socket·path·will·be·fetched·from·the·<code·class="inline">SSH_AUTH_SOCK</code>·environment·variable,139 the·socket·path·will·be·fetched·from·the·<code·class="inline">SSH_AUTH_SOCK</code>·environment·variable,
140 which·is·the·default·socket·path·in·the·agent·implementation·of140 which·is·the·default·socket·path·in·the·agent·implementation·of
141 <a·href="http://www.openssh.com">OpenSSH</a>.</p><p><a·href=""·id="SOCKET_PATH"></a>·In·order·to·set·a·different·socket·path·the·<code·class="inline">socket_path</code>141 <a·href="http://www.openssh.com">OpenSSH</a>.</p><p><a·href=""·id="SOCKET_PATH"></a>·In·order·to·set·a·different·socket·path·the·<code·class="inline">socket_path</code>
142 option·can·be·set.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="6368878721-1">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6368878721-2">{</span><span·class="ss">ssh_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·400,·SHA:·0b7ef46ca78f0d14cff87778d7890c49cdfc3e493f1cb6b21b76c349381b63c3·...·]-1">}</span></code></pre><blockquote><h4·class="info">Note</h4><p>The·functions·are·<em>Callbacks</em>·for·the·SSH·app.·They·are·not·intended·to·be142 option·can·be·set.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="1613095970-1">{</span><span·class="ss">key_cb</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1613095970-2">{</span><span·class="ss">ssh_agent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·400,·SHA:·334e5dc9234a7011d16edd86fb644099d373cf378002f6e1b3278e7a6e76c2a9·...·]-1">}</span></code></pre><blockquote><h4·class="info">Note</h4><p>The·functions·are·<em>Callbacks</em>·for·the·SSH·app.·They·are·not·intended·to·be
143 called·from·the·user's·code!</p></blockquote>143 called·from·the·user's·code!</p></blockquote>
144 ····</section>144 ····</section>
  
145 </div>145 </div>
  
146 ··<section·id="summary"·class="details-list">146 ··<section·id="summary"·class="details-list">
147 ····<h1·class="section-heading">147 ····<h1·class="section-heading">
Offset 569, 15 lines modifiedOffset 569, 15 lines modified
569 ······<p·class="built-using">569 ······<p·class="built-using">
570 ········Built·using570 ········Built·using
571 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the571 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
572 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>572 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
573 ······</p>573 ······</p>
574 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>574 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
575 ····</footer>575 ····</footer>
576 ··</div>576 ··</div>
577 </main>577 </main>
578 </div>578 </div>
579 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>579 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
580 <script>580 <script>
581 ··document.addEventListener("DOMContentLoaded",·function·()·{581 ··document.addEventListener("DOMContentLoaded",·function·()·{
680 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_app.html
    
Offset 347, 15 lines modifiedOffset 347, 15 lines modified
347 ······<p·class="built-using">347 ······<p·class="built-using">
348 ········Built·using348 ········Built·using
349 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the349 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
350 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>350 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
351 ······</p>351 ······</p>
352 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>352 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
353 ····</footer>353 ····</footer>
354 ··</div>354 ··</div>
355 </main>355 </main>
356 </div>356 </div>
357 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>357 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
358 <script>358 <script>
359 ··document.addEventListener("DOMContentLoaded",·function·()·{359 ··document.addEventListener("DOMContentLoaded",·function·()·{
626 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_client_channel.html
    
Offset 980, 15 lines modifiedOffset 980, 15 lines modified
980 ······<p·class="built-using">980 ······<p·class="built-using">
981 ········Built·using981 ········Built·using
982 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the982 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
983 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>983 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
984 ······</p>984 ······</p>
985 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>985 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
986 ····</footer>986 ····</footer>
987 ··</div>987 ··</div>
988 </main>988 </main>
989 </div>989 </div>
990 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>990 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
991 <script>991 <script>
992 ··document.addEventListener("DOMContentLoaded",·function·()·{992 ··document.addEventListener("DOMContentLoaded",·function·()·{
655 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_client_key_api.html
    
Offset 537, 15 lines modifiedOffset 537, 15 lines modified
537 ······<p·class="built-using">537 ······<p·class="built-using">
538 ········Built·using538 ········Built·using
539 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the539 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
540 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>540 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
541 ······</p>541 ······</p>
542 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>542 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
543 ····</footer>543 ····</footer>
544 ··</div>544 ··</div>
545 </main>545 </main>
546 </div>546 </div>
547 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>547 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
548 <script>548 <script>
549 ··document.addEventListener("DOMContentLoaded",·function·()·{549 ··document.addEventListener("DOMContentLoaded",·function·()·{
656 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_connection.html
    
Offset 2007, 15 lines modifiedOffset 2007, 15 lines modified
2007 ······<p·class="built-using">2007 ······<p·class="built-using">
2008 ········Built·using2008 ········Built·using
2009 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2009 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2010 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2010 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2011 ······</p>2011 ······</p>
2012 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2012 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2013 ····</footer>2013 ····</footer>
2014 ··</div>2014 ··</div>
2015 </main>2015 </main>
2016 </div>2016 </div>
2017 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2017 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2018 <script>2018 <script>
2019 ··document.addEventListener("DOMContentLoaded",·function·()·{2019 ··document.addEventListener("DOMContentLoaded",·function·()·{
679 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_file.html
    
Offset 1050, 15 lines modifiedOffset 1050, 15 lines modified
1050 ······<p·class="built-using">1050 ······<p·class="built-using">
1051 ········Built·using1051 ········Built·using
1052 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1052 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1053 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1053 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1054 ······</p>1054 ······</p>
1055 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1055 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1056 ····</footer>1056 ····</footer>
1057 ··</div>1057 ··</div>
1058 </main>1058 </main>
1059 </div>1059 </div>
1060 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1060 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1061 <script>1061 <script>
1062 ··document.addEventListener("DOMContentLoaded",·function·()·{1062 ··document.addEventListener("DOMContentLoaded",·function·()·{
641 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_server_channel.html
    
Offset 383, 15 lines modifiedOffset 383, 15 lines modified
383 ······<p·class="built-using">383 ······<p·class="built-using">
384 ········Built·using384 ········Built·using
385 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the385 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
386 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>386 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
387 ······</p>387 ······</p>
388 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>388 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
389 ····</footer>389 ····</footer>
390 ··</div>390 ··</div>
391 </main>391 </main>
392 </div>392 </div>
393 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>393 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
394 <script>394 <script>
395 ··document.addEventListener("DOMContentLoaded",·function·()·{395 ··document.addEventListener("DOMContentLoaded",·function·()·{
736 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_server_key_api.html
    
Offset 327, 15 lines modifiedOffset 327, 15 lines modified
327 ······<p·class="built-using">327 ······<p·class="built-using">
328 ········Built·using328 ········Built·using
329 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the329 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
330 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>330 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
331 ······</p>331 ······</p>
332 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>332 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
333 ····</footer>333 ····</footer>
334 ··</div>334 ··</div>
335 </main>335 </main>
336 </div>336 </div>
337 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>337 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
338 <script>338 <script>
339 ··document.addEventListener("DOMContentLoaded",·function·()·{339 ··document.addEventListener("DOMContentLoaded",·function·()·{
732 B
html2text {}
Max HTML report size reached
1.58 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_sftp.html
    
Offset 2964, 15 lines modifiedOffset 2964, 15 lines modified
2964 ······<p·class="built-using">2964 ······<p·class="built-using">
2965 ········Built·using2965 ········Built·using
2966 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2966 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2967 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2967 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2968 ······</p>2968 ······</p>
2969 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2969 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2970 ····</footer>2970 ····</footer>
2971 ··</div>2971 ··</div>
2972 </main>2972 </main>
2973 </div>2973 </div>
2974 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2974 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2975 <script>2975 <script>
2976 ··document.addEventListener("DOMContentLoaded",·function·()·{2976 ··document.addEventListener("DOMContentLoaded",·function·()·{
783 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/ssh_sftpd.html
    
Offset 240, 15 lines modifiedOffset 240, 15 lines modified
240 ······<p·class="built-using">240 ······<p·class="built-using">
241 ········Built·using241 ········Built·using
242 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the242 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
243 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>243 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
244 ······</p>244 ······</p>
245 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>245 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
246 ····</footer>246 ····</footer>
247 ··</div>247 ··</div>
248 </main>248 </main>
249 </div>249 </div>
250 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>250 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
251 <script>251 <script>
252 ··document.addEventListener("DOMContentLoaded",·function·()·{252 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/terminology.html
    
Offset 243, 15 lines modifiedOffset 243, 15 lines modified
243 ······<p·class="built-using">243 ······<p·class="built-using">
244 ········Built·using244 ········Built·using
245 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the245 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
246 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>246 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
247 ······</p>247 ······</p>
248 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>248 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
249 ····</footer>249 ····</footer>
250 ··</div>250 ··</div>
251 </main>251 </main>
252 </div>252 </div>
253 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>253 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
254 <script>254 <script>
255 ··document.addEventListener("DOMContentLoaded",·function·()·{255 ··document.addEventListener("DOMContentLoaded",·function·()·{
657 B
html2text {}
Max HTML report size reached
205 KB
./usr/share/doc/erlang-doc/html/lib/ssh-5.2.1/doc/html/using_ssh.html
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/api-reference.html
    
Offset 209, 15 lines modifiedOffset 209, 15 lines modified
209 ······<p·class="built-using">209 ······<p·class="built-using">
210 ········Built·using210 ········Built·using
211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
213 ······</p>213 ······</p>
214 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>214 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
215 ····</footer>215 ····</footer>
216 ··</div>216 ··</div>
217 </main>217 </main>
218 </div>218 </div>
219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
220 <script>220 <script>
221 ··document.addEventListener("DOMContentLoaded",·function·()·{221 ··document.addEventListener("DOMContentLoaded",·function·()·{
645 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/notes.html
    
Offset 3256, 15 lines modifiedOffset 3256, 15 lines modified
3256 ······<p·class="built-using">3256 ······<p·class="built-using">
3257 ········Built·using3257 ········Built·using
3258 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3258 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3259 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3259 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3260 ······</p>3260 ······</p>
3261 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3261 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3262 ····</footer>3262 ····</footer>
3263 ··</div>3263 ··</div>
3264 </main>3264 </main>
3265 </div>3265 </div>
3266 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3266 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3267 <script>3267 <script>
3268 ··document.addEventListener("DOMContentLoaded",·function·()·{3268 ··document.addEventListener("DOMContentLoaded",·function·()·{
704 B
html2text {}
Max HTML report size reached
1.27 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
461 B
html2text {}
Max HTML report size reached
463 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/ssl.epub
3.2 KB
zipinfo {}
Max HTML report size reached
64.6 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
290 KB
OEBPS/using_ssl.xhtml
Max HTML report size reached
22.8 KB
OEBPS/ssl_distribution.xhtml
Max HTML report size reached
80.4 KB
OEBPS/ssl.xhtml
Max HTML report size reached
1.2 KB
OEBPS/content.opf
1.17 KB
OEBPS/content.opf
Max HTML report size reached
82.1 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/ssl.html
    
Offset 127, 17 lines modifiedOffset 127, 17 lines modified
127 ··</h1>127 ··</h1>
  
  
128 ····<section·id="moduledoc">128 ····<section·id="moduledoc">
129 <p>Interface·functions·for·TLS·(Transport·Layer·Security),129 <p>Interface·functions·for·TLS·(Transport·Layer·Security),
130 and·DTLS·(Datagram·Transport·Layer·Security).</p><blockquote><h4·class="info">Note</h4><p>The·applications·name·is·still·SSL·due·to·the·fact·that·the·first·versions·of·the·TLS·protcol130 and·DTLS·(Datagram·Transport·Layer·Security).</p><blockquote><h4·class="info">Note</h4><p>The·applications·name·is·still·SSL·due·to·the·fact·that·the·first·versions·of·the·TLS·protcol
131 were·named·SSL·(Secure·Socket·Layer),·however,·no·version·of·the·old·SSL·protocol·are·supported,131 were·named·SSL·(Secure·Socket·Layer),·however,·no·version·of·the·old·SSL·protocol·are·supported,
132 by·this·application.</p></blockquote><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ssl</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7339796510-1">(</span><span·class="p"·data-group-id="7339796510-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ssl</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="7339796510-2">(</spa[·...·truncated·by·diffoscope;·len:·430,·SHA:·ba10082291e74cba0c93672c0bc8b36cc894eebb3f1d9d978d1cba812fbd01d4·...·]-4">}</span><span·class="p">,</span><span·class="w">132 by·this·application.</p></blockquote><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ssl</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="9245168979-1">(</span><span·class="p"·data-group-id="9245168979-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ssl</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="9245168979-2">(</spa[·...·truncated·by·diffoscope;·len:·430,·SHA:·d52da73f0b62af6e06973a4cfcddb479ff5015455e030f8250ef9b91cc0c9b16·...·]-4">}</span><span·class="p">,</span><span·class="w">
133 ····</span><span·class="p"·data-group-id="7339796510-5">{</span><span·class="ss">cacerts</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">public_key</span><span·class="p">:</span><span·class="nf">cacerts_get</span><span·class="p"·data-group-id="7339796510-6">(</span><span·cla[·...·truncated·by·diffoscope;·len:·191,·SHA:·087df75da317fc91d7b67b154221163d0a79662f618e624909fd19ee44496286·...·]-2">)</span><span·class="p">.</span><span·class="w">133 ····</span><span·class="p"·data-group-id="9245168979-5">{</span><span·class="ss">cacerts</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">public_key</span><span·class="p">:</span><span·class="nf">cacerts_get</span><span·class="p"·data-group-id="9245168979-6">(</span><span·cla[·...·truncated·by·diffoscope;·len:·191,·SHA:·0ffe6f0f2d8f33f7ffab9fa09eb5564bed43dd072d3d67b0d8e1d4b421b98894·...·]-2">)</span><span·class="p">.</span><span·class="w">
134 </span><span·class="p"·data-group-id="7339796510-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7339796510-8">{</span><span·class="ss">sslsocket</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7339796510-9">[</sp[·...·truncated·by·diffoscope;·len:·222,·SHA:·fa77c77e1954118b78f977008345545c7d0982ccb7b1c77b6f03d231b915ac84·...·]-7">}</span></code></pre><p>See·<a·href="using_ssl.html">Using·SSL</a>·for·detailed·usage·and·more·examples·of·this·API.</p><p>Special·Erlang·node·configuration·for·the·application·can·be·found·in·<a·href="ssl_app.html">ssl·application·reference</a>.</p>134 </span><span·class="p"·data-group-id="9245168979-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9245168979-8">{</span><span·class="ss">sslsocket</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9245168979-9">[</sp[·...·truncated·by·diffoscope;·len:·222,·SHA:·a5583bb0686d6c0eea2fd197be2cf3e00109e37c0404c14aa953fc37867668da·...·]-7">}</span></code></pre><p>See·<a·href="using_ssl.html">Using·SSL</a>·for·detailed·usage·and·more·examples·of·this·API.</p><p>Special·Erlang·node·configuration·for·the·application·can·be·found·in·<a·href="ssl_app.html">ssl·application·reference</a>.</p>
135 ····</section>135 ····</section>
  
136 </div>136 </div>
  
137 ··<section·id="summary"·class="details-list">137 ··<section·id="summary"·class="details-list">
138 ····<h1·class="section-heading">138 ····<h1·class="section-heading">
139 ······<a·class="hover-link"·href="#summary">139 ······<a·class="hover-link"·href="#summary">
Offset 2525, 35 lines modifiedOffset 2525, 35 lines modified
2525 these·algorithms·where·implicitly·chosen·and·partly·derived·from·the·cipher2525 these·algorithms·where·implicitly·chosen·and·partly·derived·from·the·cipher
2526 suite.</p><p>In·TLS-1.2·a·somewhat·more·explicit·negotiation·is·made·possible·using·a·list·of2526 suite.</p><p>In·TLS-1.2·a·somewhat·more·explicit·negotiation·is·made·possible·using·a·list·of
2527 {<a·href="#t:hash/0"><code·class="inline">hash/0</code></a>,·<a·href="#t:sign_algo/0"><code·class="inline">sign_algo/0</code></a>}·pairs.</p><p>In·TLS-1.3·these·algorithm·pairs·are·replaced·by·so·called·signature·schemes2527 {<a·href="#t:hash/0"><code·class="inline">hash/0</code></a>,·<a·href="#t:sign_algo/0"><code·class="inline">sign_algo/0</code></a>}·pairs.</p><p>In·TLS-1.3·these·algorithm·pairs·are·replaced·by·so·called·signature·schemes
2528 <a·href="#t:sign_scheme/0"><code·class="inline">sign_scheme/0</code></a>·and·completely·decoupled·from·the·cipher·suite.</p><p>Signature·algorithms·used·for·certificates·may·be·overridden·by·the2528 <a·href="#t:sign_scheme/0"><code·class="inline">sign_scheme/0</code></a>·and·completely·decoupled·from·the·cipher·suite.</p><p>Signature·algorithms·used·for·certificates·may·be·overridden·by·the
2529 [signature·schemes]·supplied·by·the2529 [signature·schemes]·supplied·by·the
2530 <code·class="inline">signature_algs_cert</code>·option.</p><p>TLS-1.2·default·is·Default_TLS_12_Alg_Pairs·interleaved·with·rsa_pss_schemes2530 <code·class="inline">signature_algs_cert</code>·option.</p><p>TLS-1.2·default·is·Default_TLS_12_Alg_Pairs·interleaved·with·rsa_pss_schemes
2531 since·ssl-11.0·(OTP·25)·pss_pss·is·prefered·over·pss_rsae·that·is·prefered·over2531 since·ssl-11.0·(OTP·25)·pss_pss·is·prefered·over·pss_rsae·that·is·prefered·over
2532 rsa</p><p><code·class="inline">Default_TLS_12_Alg_Pairs·=</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9837956120-1">[</span><span·class="w">2532 rsa</p><p><code·class="inline">Default_TLS_12_Alg_Pairs·=</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4689140054-1">[</span><span·class="w">
2533 </span><span·class="c1">%%·SHA2</span><span·class="w">2533 </span><span·class="c1">%%·SHA2</span><span·class="w">
2534 </span><span·class="p"·data-group-id="9837956120-2">{</span><span·class="ss">sha512</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ecdsa</span><span·class="p"·data-group-id="9837956120-2">}</span><span·class="p">,</span><span·class="w">2534 </span><span·class="p"·data-group-id="4689140054-2">{</span><span·class="ss">sha512</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ecdsa</span><span·class="p"·data-group-id="4689140054-2">}</span><span·class="p">,</span><span·class="w">
2535 </span><span·class="p"·data-group-id="9837956120-3">{</span><span·class="ss">sha512</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">rsa</span><span·class="p"·data-group-id="9837956120-3">}</span><span·class="p">,</span><span·class="w">2535 </span><span·class="p"·data-group-id="4689140054-3">{</span><span·class="ss">sha512</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">rsa</span><span·class="p"·data-group-id="4689140054-3">}</span><span·class="p">,</span><span·class="w">
2536 </span><span·class="p"·data-group-id="9837956120-4">{</span><span·class="ss">sha384</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ecdsa</span><span·class="p"·data-group-id="9837956120-4">}</span><span·class="p">,</span><span·class="w">2536 </span><span·class="p"·data-group-id="4689140054-4">{</span><span·class="ss">sha384</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ecdsa</span><span·class="p"·data-group-id="4689140054-4">}</span><span·class="p">,</span><span·class="w">
2537 </span><span·class="p"·data-group-id="9837956120-5">{</span><span·class="ss">sha384</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">rsa</span><span·class="p"·data-group-id="9837956120-5">}</span><span·class="p">,</span><span·class="w">2537 </span><span·class="p"·data-group-id="4689140054-5">{</span><span·class="ss">sha384</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">rsa</span><span·class="p"·data-group-id="4689140054-5">}</span><span·class="p">,</span><span·class="w">
2538 </span><span·class="p"·data-group-id="9837956120-6">{</span><span·class="ss">sha256</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ecdsa</span><span·class="p"·data-group-id="9837956120-6">}</span><span·class="p">,</span><span·class="w">2538 </span><span·class="p"·data-group-id="4689140054-6">{</span><span·class="ss">sha256</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ecdsa</span><span·class="p"·data-group-id="4689140054-6">}</span><span·class="p">,</span><span·class="w">
2539 </span><span·class="p"·data-group-id="9837956120-7">{</span><span·class="ss">sha256</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">rsa</span><span·class="p"·data-group-id="9837956120-7">}</span><span·class="w">2539 </span><span·class="p"·data-group-id="4689140054-7">{</span><span·class="ss">sha256</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">rsa</span><span·class="p"·data-group-id="4689140054-7">}</span><span·class="w">
2540 </span><span·class="p"·data-group-id="9837956120-1">]</span></code></pre><p>Support·for·{md5,·rsa}·was·removed·from·the·the·TLS-1.2·default·in·ssl-8.02540 </span><span·class="p"·data-group-id="4689140054-1">]</span></code></pre><p>Support·for·{md5,·rsa}·was·removed·from·the·the·TLS-1.2·default·in·ssl-8.0
2541 (OTP·22)·and·support·for·SHA1·{sha,·<em>}·and·SHA224·{sha224,·</em>}·was·removed·in2541 (OTP·22)·and·support·for·SHA1·{sha,·<em>}·and·SHA224·{sha224,·</em>}·was·removed·in
2542 ssl-11.0·(OTP·26)</p><p><code·class="inline">rsa_pss_schemes·=</code></p><pre><code·class="text">[rsa_pss_pss_sha512,2542 ssl-11.0·(OTP·26)</p><p><code·class="inline">rsa_pss_schemes·=</code></p><pre><code·class="text">[rsa_pss_pss_sha512,
2543 rsa_pss_pss_sha384,2543 rsa_pss_pss_sha384,
2544 rsa_pss_pss_sha256,2544 rsa_pss_pss_sha256,
2545 rsa_pss_rsae_sha512,2545 rsa_pss_rsae_sha512,
2546 rsa_pss_rsae_sha384,2546 rsa_pss_rsae_sha384,
2547 rsa_pss_rsae_sha256]</code></pre><p><code·class="inline">TLS_13_Legacy_Schemes·=</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p"·data-group-id="9318544248-1">[</span><span·class="w">2547 rsa_pss_rsae_sha256]</code></pre><p><code·class="inline">TLS_13_Legacy_Schemes·=</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="p"·data-group-id="0484390114-1">[</span><span·class="w">
2548 ·</span><span·class="c1">%%·Legacy·algorithms·only·applicable·to·certificate·signatures</span><span·class="w">2548 ·</span><span·class="c1">%%·Legacy·algorithms·only·applicable·to·certificate·signatures</span><span·class="w">
2549 </span><span·class="ss">rsa_pkcs1_sha512</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%%·Corresponds·to·{sha512,·rsa}</span><span·class="w">2549 </span><span·class="ss">rsa_pkcs1_sha512</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%%·Corresponds·to·{sha512,·rsa}</span><span·class="w">
2550 </span><span·class="ss">rsa_pkcs1_sha384</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%%·Corresponds·to·{sha384,·rsa}</span><span·class="w">2550 </span><span·class="ss">rsa_pkcs1_sha384</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%%·Corresponds·to·{sha384,·rsa}</span><span·class="w">
2551 </span><span·class="ss">rsa_pkcs1_sha256</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%%·Corresponds·to·{sha256,·rsa}</span><span·class="w">2551 </span><span·class="ss">rsa_pkcs1_sha256</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%%·Corresponds·to·{sha256,·rsa}</span><span·class="w">
2552 </span><span·class="p"·data-group-id="9318544248-1">]</span></code></pre><p><code·class="inline">Default_TLS_13_Schemes·=</code></p><pre><code·class="text">·[2552 </span><span·class="p"·data-group-id="0484390114-1">]</span></code></pre><p><code·class="inline">Default_TLS_13_Schemes·=</code></p><pre><code·class="text">·[
2553 ·%%·EDDSA2553 ·%%·EDDSA
2554 eddsa_ed25519,2554 eddsa_ed25519,
2555 eddsa_ed4482555 eddsa_ed448
  
2556 %%·ECDSA2556 %%·ECDSA
2557 ecdsa_secp521r1_sha512,2557 ecdsa_secp521r1_sha512,
2558 ecdsa_secp384r1_sha384,2558 ecdsa_secp384r1_sha384,
Offset 2632, 16 lines modifiedOffset 2632, 16 lines modified
  
2632 ······<div·class="specs">2632 ······<div·class="specs">
  
2633 ··········<pre·translate="no"><span·class="attribute">-type</span>·anchor_fun()·::·fun().</pre>2633 ··········<pre·translate="no"><span·class="attribute">-type</span>·anchor_fun()·::·fun().</pre>
  
2634 ······</div>2634 ······</div>
  
2635 <p>Claim·an·intermediate·CA·in·the·chain·as·trusted.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nf">fun</span><span·class="p"·data-group-id="8799287741-1">(</span><span·class="n">Chain</span><span·class="p">:</span><span·class="p">:</span><span·class="p"·data-group-id="8799287741-2">[</span><span·class="nc">public_key</span><span·class="p">:</span><span·class="nf">der_encoded</span><span·class=[·...·truncated·by·diffoscope;·len:·188,·SHA:·3462648c6a04adf12178ddfbf8b1939743cbf83ce9bc3ef785362e10d517a48d·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">2635 <p>Claim·an·intermediate·CA·in·the·chain·as·trusted.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nf">fun</span><span·class="p"·data-group-id="6123202282-1">(</span><span·class="n">Chain</span><span·class="p">:</span><span·class="p">:</span><span·class="p"·data-group-id="6123202282-2">[</span><span·class="nc">public_key</span><span·class="p">:</span><span·class="nf">der_encoded</span><span·class=[·...·truncated·by·diffoscope;·len:·188,·SHA:·d6153d3e13b74ad6692846ddc5853de300fd26a025248ba3bcad4dce22ab6cf8·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
2636 ····</span><span·class="p"·data-group-id="8799287741-4">{</span><span·class="ss">trusted_ca</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DerCert</span><span·class="p">:</span><span·class="p">:</span><span·class="nc">public_key</span><span·class="p">:</span><span·class="nf"[·...·truncated·by·diffoscope;·len:·166,·SHA:·b9895c5a50690e38239447440fe9b48449cfde66ae4af411220e05cf1e2bdff5·...·]-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">unknown_ca</span><span·class="p">.</span></code></pre><p>··TLS·then·performs·<a·href="../../../../lib/public_key-1.16.1/doc/html/public_key.html#pkix_path_validation/3"><code·class="inline">public_key:pkix_path_validation/3</code></a>·with·the·selected·CA·as·trusted·anchor·and2636 ····</span><span·class="p"·data-group-id="6123202282-4">{</span><span·class="ss">trusted_ca</span><span·class="p">,</span><span·class="w">·</span><span·class="n">DerCert</span><span·class="p">:</span><span·class="p">:</span><span·class="nc">public_key</span><span·class="p">:</span><span·class="nf"[·...·truncated·by·diffoscope;·len:·166,·SHA:·f761e141b5fad579a8754b226601e4d5b51cedee1d5e0ead50a836ae497783db·...·]-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">unknown_ca</span><span·class="p">.</span></code></pre><p>··TLS·then·performs·<a·href="../../../../lib/public_key-1.16.1/doc/html/public_key.html#pkix_path_validation/3"><code·class="inline">public_key:pkix_path_validation/3</code></a>·with·the·selected·CA·as·trusted·anchor·and
2637 ··the·rest·of·the·chain.</p>2637 ··the·rest·of·the·chain.</p>
2638 ··</section>2638 ··</section>
2639 </section>2639 </section>
2640 <section·class="detail"·id="t:cert_key_conf/0">2640 <section·class="detail"·id="t:cert_key_conf/0">
  
2641 ··<div·class="detail-header">2641 ··<div·class="detail-header">
2642 ····<a·href="#t:cert_key_conf/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">2642 ····<a·href="#t:cert_key_conf/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">
Offset 3645, 28 lines modifiedOffset 3645, 28 lines modified
3645 options.·For·examples·see·<a·href="using_ssl.html">the·Users·Guide</a></p><blockquote><h4·class="info">Note</h4><p><code·class="inline">eddsa</code>·certificates·are·only·supported·by·TLS-1.3·that·does·not·support·<code·class="inline">dsa</code>3645 options.·For·examples·see·<a·href="using_ssl.html">the·Users·Guide</a></p><blockquote><h4·class="info">Note</h4><p><code·class="inline">eddsa</code>·certificates·are·only·supported·by·TLS-1.3·that·does·not·support·<code·class="inline">dsa</code>
3646 certificates.·<code·class="inline">rsa_pss_pss</code>·(RSA·certificates·using·Probabilistic·Signature3646 certificates.·<code·class="inline">rsa_pss_pss</code>·(RSA·certificates·using·Probabilistic·Signature
3647 Scheme)·are·supported·in·TLS-1.2·and·TLS-1.3,·but·some·TLS-1.2·implementations3647 Scheme)·are·supported·in·TLS-1.2·and·TLS-1.3,·but·some·TLS-1.2·implementations
3648 may·not·support·<code·class="inline">rsa_pss_pss</code>.</p></blockquote></li><li><p><strong>{depth,·AllowedCertChainLen}</strong>·-·Limits·the·accepted·number·of·certificates·in·the·certificate·chain.</p><p>certificate_revoked··Maximum·number·of·non-self-issued·intermediate·certificates·that·can·follow·the3648 may·not·support·<code·class="inline">rsa_pss_pss</code>.</p></blockquote></li><li><p><strong>{depth,·AllowedCertChainLen}</strong>·-·Limits·the·accepted·number·of·certificates·in·the·certificate·chain.</p><p>certificate_revoked··Maximum·number·of·non-self-issued·intermediate·certificates·that·can·follow·the
3649 peer·certificate·in·a·valid·certification·path.·So,·if·depth·is·0·the·PEER·must3649 peer·certificate·in·a·valid·certification·path.·So,·if·depth·is·0·the·PEER·must
3650 be·signed·by·the·trusted·ROOT-CA·directly;·if·1·the·path·can·be·PEER,·CA,3650 be·signed·by·the·trusted·ROOT-CA·directly;·if·1·the·path·can·be·PEER,·CA,
3651 ROOT-CA;·if·2·the·path·can·be·PEER,·CA,·CA,·ROOT-CA,·and·so·on.·The·default3651 ROOT-CA;·if·2·the·path·can·be·PEER,·CA,·CA,·ROOT-CA,·and·so·on.·The·default
3652 value·is·10.·Used·to·mitigate·DoS·attack·possibilities.</p></li><li><p><strong>{verify_fun,··Verify}</strong>·-·Customize·certificate·path·validation</p><p>The·verification·fun·is·to·be·defined·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="1284302939-1">(</span><span·class="n">OtpCert</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;OTPCertificate&#39;</span><span·class="p"·data-group-id="12843[·...·truncated·by·diffoscope;·len:·57,·SHA:·9a3bd85300f6597cc1885654d7310bb2309b505b3fa5cf2999413c69c9eacf93·...·]9-2">}</span><span·class="p">,</span><span·class="w">3652 value·is·10.·Used·to·mitigate·DoS·attack·possibilities.</p></li><li><p><strong>{verify_fun,··Verify}</strong>·-·Customize·certificate·path·validation</p><p>The·verification·fun·is·to·be·defined·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="4917255449-1">(</span><span·class="n">OtpCert</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;OTPCertificate&#39;</span><span·class="p"·data-group-id="49172[·...·truncated·by·diffoscope;·len:·57,·SHA:·776906575e1f4b35966ef6825535c5a7a044c53a3de6e0f31b82c24f6db0b09e·...·]9-2">}</span><span·class="p">,</span><span·class="w">
3653 ····</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">InitialUserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1284302939-3">(</span><span·class="p"·data-group-id="1284302939-3">)</span><span·class="p"·data-group-id="1284302939-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3653 ····</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">InitialUserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="4917255449-3">(</span><span·class="p"·data-group-id="4917255449-3">)</span><span·class="p"·data-group-id="4917255449-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3654 ··</span><span·class="p"·data-group-id="1284302939-4">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·28518a35f64f02635c2e917d55df967528ad188ef894abcee4974dc78a65ce7c·...·]9-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3654 ··</span><span·class="p"·data-group-id="4917255449-4">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><[·...·truncated·by·diffoscope;·len:·145,·SHA:·dfc015c776bc7d497b5159a0d7596d16aac59ffac2c80833438cd2c5dc6edf86·...·]9-4">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3655 ··</span><span·class="p"·data-group-id="1284302939-6">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span[·...·truncated·by·diffoscope;·len:·660,·SHA:·eab3d7aeb7b6f9965f3749cc8618c299c04dae1f853feeaa613b600105ed219e·...·]9-8">}</span><span·class="p">.</span><span·class="w">3655 ··</span><span·class="p"·data-group-id="4917255449-6">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span[·...·truncated·by·diffoscope;·len:·660,·SHA:·865454c142b7c25d9bfcce2f23b8e5a37271373bdd1f6589475f50d24886ea17·...·]9-8">}</span><span·class="p">.</span><span·class="w">
  
3656 </span><span·class="nf">fun</span><span·class="p"·data-group-id="1284302939-10">(</span><span·class="n">OtpCert</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;OTPCertificate&#39;</span><span·class="p"·data-group-id="1284[·...·truncated·by·diffoscope;·len:·434,·SHA:·4e1749684967012dea46999da396e0cd2bbcb4baaed4ea30488837d96d1931d7·...·]9-12">)</span><span·class="p">,</span><span·class="w">3656 </span><span·class="nf">fun</span><span·class="p"·data-group-id="4917255449-10">(</span><span·class="n">OtpCert</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;OTPCertificate&#39;</span><span·class="p"·data-group-id="4917[·...·truncated·by·diffoscope;·len:·434,·SHA:·91167d4e3a702491dc644713488d96b6b8cfd2eeffcca9bd48de2233fd96fd15·...·]9-12">)</span><span·class="p">,</span><span·class="w">
3657 ····</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">InitialUserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="1284302939-13">(</span><span·class="p"·data-group-id="1284302939-13">)</span><span·class="p"·data-group-id="1284302939-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3657 ····</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">InitialUserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><span·class="p"·data-group-id="4917255449-13">(</span><span·class="p"·data-group-id="4917255449-13">)</span><span·class="p"·data-group-id="4917255449-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3658 ··</span><span·class="p"·data-group-id="1284302939-14">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span>[·...·truncated·by·diffoscope;·len:·148,·SHA:·70fa19a9a800206633ab11fca1e2b610c67fc44fb0fc54ad0766a27ef70bdd33·...·]9-14">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3658 ··</span><span·class="p"·data-group-id="4917255449-14">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span>[·...·truncated·by·diffoscope;·len:·148,·SHA:·6d2be07ef05520722b85c9df459f3cfa012e1203cc8f10c3589d99cdeebf0d15·...·]9-14">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3659 ··</span><span·class="p"·data-group-id="1284302939-16">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><spa[·...·truncated·by·diffoscope;·len:·667,·SHA:·bdce77349c567b6cf73b394d43fe1386540732db44ac3e69542c40829fbbee05·...·]9-18">}</span><span·class="p">.</span><span·class="w">3659 ··</span><span·class="p"·data-group-id="4917255449-16">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">term</span><spa[·...·truncated·by·diffoscope;·len:·667,·SHA:·03fa82db9f9f9fc2ca9d5cd386ccfeb7ceab1597c76b185ee9790aaf7bbf143d·...·]9-18">}</span><span·class="p">.</span><span·class="w">
  
3660 </span><span·class="n">Types</span><span·class="p">:</span><span·class="w">3660 </span><span·class="n">Types</span><span·class="p">:</span><span·class="w">
3661 ······</span><span·class="n">Event</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1284302939-20">{</span><span·class="ss">bad_cert</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span>[·...·truncated·by·diffoscope;·len:·94,·SHA:·76c573ba3c18648d7ae75ac3e95eef4e853e7219e1ebf9192d2f091e2ff3adb1·...·]9-21">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3661 ······</span><span·class="n">Event</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4917255449-20">{</span><span·class="ss">bad_cert</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">atom</span>[·...·truncated·by·diffoscope;·len:·94,·SHA:·15372faa8380ef29a9c66ab951ceaa21313026d1fbde08661a3003cbe0d59f86·...·]9-21">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3662 ··············</span><span·class="p"·data-group-id="1284302939-22">{</span><span·class="ss">revoked</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="1284302939-23">(</span><span·class="p"·data-group-id="1284302939-23">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·1dcb7c6e7fb0498cb453f42d6b15203ab44630f22136b8df4b9d28125e715e8c·...·]9-20">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3662 ··············</span><span·class="p"·data-group-id="4917255449-22">{</span><span·class="ss">revoked</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">atom</span><span·class="p"·data-group-id="4917255449-23">(</span><span·class="p"·data-group-id="4917255449-23">)</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·f707d96113400a99b29e5af900f34ea20b27b2dabc9df1dcbcc1e73d2331f2a8·...·]9-20">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3663 ······</span><span·class="p"·data-group-id="1284302939-24">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="1284302939-25">{</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·3b9bc83346310118f92b49303504166b4bdbe6157048864280ad4e1fb95e384a·...·]9-24">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3663 ······</span><span·class="p"·data-group-id="4917255449-24">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Extension&#39;</span><span·class="p"·data-group-id="4917255449-25">{</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·63,·SHA:·7d12f4473febc216fcbb2f5766349ab0f237acab4c5c0a3c5911e06474e09b0e·...·]9-24">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3664 ··············</span><span·class="ss">valid</span><span·class="w">·</span><span·class="p">|</span><span·class="w">3664 ··············</span><span·class="ss">valid</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
3665 ··············</span><span·class="ss">valid_peer</span></code></pre><p>The·verification·fun·is·called·during·the·X509-path·validation·when·an·error·or3665 ··············</span><span·class="ss">valid_peer</span></code></pre><p>The·verification·fun·is·called·during·the·X509-path·validation·when·an·error·or
3666 an·extension·unknown·to·the·SSL·application·is·encountered.·It·is·also·called3666 an·extension·unknown·to·the·SSL·application·is·encountered.·It·is·also·called
3667 when·a·certificate·is·considered·valid·by·the·path·validation·to·allow·access·to3667 when·a·certificate·is·considered·valid·by·the·path·validation·to·allow·access·to
3668 each·certificate·in·the·path·to·the·user·application.·It·differentiates·between3668 each·certificate·in·the·path·to·the·user·application.·It·differentiates·between
3669 the·peer·certificate·and·the·CA·certificates·by·using·<code·class="inline">valid_peer</code>·or·<code·class="inline">valid</code>·as3669 the·peer·certificate·and·the·CA·certificates·by·using·<code·class="inline">valid_peer</code>·or·<code·class="inline">valid</code>·as
3670 <code·class="inline">Event</code>·argument·to·the·verification·fun.·See·the3670 <code·class="inline">Event</code>·argument·to·the·verification·fun.·See·the
Offset 3674, 33 lines modifiedOffset 3674, 33 lines modified
3674 of·<code·class="inline">#'OTPCertificate'{}</code>·and·<code·class="inline">#'Extension'{}</code>.</p><ul><li>If·the·verify·callback·fun·returns·<code·class="inline">{fail,·Reason}</code>,·the·verification·process3674 of·<code·class="inline">#'OTPCertificate'{}</code>·and·<code·class="inline">#'Extension'{}</code>.</p><ul><li>If·the·verify·callback·fun·returns·<code·class="inline">{fail,·Reason}</code>,·the·verification·process
3675 is·immediately·stopped,·an·alert·is·sent·to·the·peer,·and·the·TLS/DTLS3675 is·immediately·stopped,·an·alert·is·sent·to·the·peer,·and·the·TLS/DTLS
3676 handshake·terminates.</li><li>If·the·verify·callback·fun·returns·<code·class="inline">{valid,·UserState}</code>,·the·verification3676 handshake·terminates.</li><li>If·the·verify·callback·fun·returns·<code·class="inline">{valid,·UserState}</code>,·the·verification
3677 process·continues.</li><li>If·the·verify·callback·fun·always·returns·<code·class="inline">{valid,·UserState}</code>,·the·TLS/DTLS3677 process·continues.</li><li>If·the·verify·callback·fun·always·returns·<code·class="inline">{valid,·UserState}</code>,·the·TLS/DTLS
3678 handshake·does·not·terminate·regarding·verification·failures·and·the3678 handshake·does·not·terminate·regarding·verification·failures·and·the
3679 connection·is·established.</li><li>If·called·with·an·extension·unknown·to·the·user·application,·return·value3679 connection·is·established.</li><li>If·called·with·an·extension·unknown·to·the·user·application,·return·value
3680 <code·class="inline">{unknown,·UserState}</code>·is·to·be·used.</li></ul><p>Note·that·if·the·fun·returns·<code·class="inline">unknown</code>·for·an·extension·marked·as·critical,3680 <code·class="inline">{unknown,·UserState}</code>·is·to·be·used.</li></ul><p>Note·that·if·the·fun·returns·<code·class="inline">unknown</code>·for·an·extension·marked·as·critical,
3681 validation·will·fail.</p><p>Default·option·<code·class="inline">verify_fun</code>·in·<code·class="inline">verify_peer·mode</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4798900716-1">{</span><span·class="nf">fun</span><span·class="p"·data-group-id="4798900716-2">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="4798900716-3">{</span><span·class="ss">bad_cert</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·318,·SHA:·c6443bd316964dc33b5fe5d81f12a9c6208de13f5b91abf855c1e26d8d418db0·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3681 validation·will·fail.</p><p>Default·option·<code·class="inline">verify_fun</code>·in·<code·class="inline">verify_peer·mode</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9545355719-1">{</span><span·class="nf">fun</span><span·class="p"·data-group-id="9545355719-2">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="9545355719-3">{</span><span·class="ss">bad_cert</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·318,·SHA:·416bdafc2ebdc19a685e1c5382779477d649714c4c074b81698278e16950b940·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3682 ···</span><span·class="p"·data-group-id="4798900716-4">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="4798900716-4">}</span><span·class="p">;</span><span·class="w">3682 ···</span><span·class="p"·data-group-id="9545355719-4">{</span><span·class="ss">fail</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="9545355719-4">}</span><span·class="p">;</span><span·class="w">
3683 ····</span><span·class="p"·data-group-id="4798900716-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="4798900716-6">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·146,·SHA:·d048161edbe2145422972e65172da99f907bc44033c706ecbe017783e6e194be·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3683 ····</span><span·class="p"·data-group-id="9545355719-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="9545355719-6">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·146,·SHA:·d0de0a7f7edf6a2238b66017e2f451afacf487886bde22184d056cf89256d618·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3684 ···</span><span·class="p"·data-group-id="4798900716-7">{</span><span·class="ss">unknown</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="4798900716-7">}</span><span·class="p">;</span><span·class="w">3684 ···</span><span·class="p"·data-group-id="9545355719-7">{</span><span·class="ss">unknown</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9545355719-7">}</span><span·class="p">;</span><span·class="w">
3685 ····</span><span·class="p"·data-group-id="4798900716-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="4798900716-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3685 ····</span><span·class="p"·data-group-id="9545355719-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9545355719-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3686 ···</span><span·class="p"·data-group-id="4798900716-9">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="4798900716-9">}</span><span·class="p">;</span><span·class="w">3686 ···</span><span·class="p"·data-group-id="9545355719-9">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9545355719-9">}</span><span·class="p">;</span><span·class="w">
3687 ····</span><span·class="p"·data-group-id="4798900716-10">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">valid_peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="4798900716-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3687 ····</span><span·class="p"·data-group-id="9545355719-10">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">valid_peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9545355719-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3688 ·······</span><span·class="p"·data-group-id="4798900716-11">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="4798900716-11">}</span><span·class="w">3688 ·······</span><span·class="p"·data-group-id="9545355719-11">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9545355719-11">}</span><span·class="w">
3689 ·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4798900716-12">[</span><span·class="p"·data-group-id="4798900716-12">]</span><span·class="p"·data-group-id="4798900716-1">}</span></code></pre><p>Default·option·<code·class="inline">verify_fun</code>·in·mode·<code·class="inline">verify_none</code>:</p><pre[·...·truncated·by·diffoscope;·len:·580,·SHA:·eac2c7d3538a774e2de8c7c2abcb9fd784604c170dd127b32f3943bf797749e5·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3689 ·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9545355719-12">[</span><span·class="p"·data-group-id="9545355719-12">]</span><span·class="p"·data-group-id="9545355719-1">}</span></code></pre><p>Default·option·<code·class="inline">verify_fun</code>·in·mode·<code·class="inline">verify_none</code>:</p><pre[·...·truncated·by·diffoscope;·len:·580,·SHA:·b64a286589962012c6adba5b79d4adc1ef09133defb8d18efa5077f61ded294d·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3690 ···</span><span·class="p"·data-group-id="9814175907-4">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9814175907-4">}</span><span·class="p">;</span><span·class="w">3690 ···</span><span·class="p"·data-group-id="0112185919-4">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="0112185919-4">}</span><span·class="p">;</span><span·class="w">
3691 ····</span><span·class="p"·data-group-id="9814175907-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="9814175907-6">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Extens[·...·truncated·by·diffoscope;·len:·427,·SHA:·994ace2f5e116289450763fd5dd47de9f394613397da74bb1a270926374fe66a·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3691 ····</span><span·class="p"·data-group-id="0112185919-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="0112185919-6">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">&#39;Extens[·...·truncated·by·diffoscope;·len:·427,·SHA:·6b58cbfe5a888bfa5f383d0110c4c29808b6c6af4118e40c9ac4c06faed01ac9·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3692 ···</span><span·class="p"·data-group-id="9814175907-8">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9814175907-8">}</span><span·class="p">;</span><span·class="w">3692 ···</span><span·class="p"·data-group-id="0112185919-8">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="0112185919-8">}</span><span·class="p">;</span><span·class="w">
3693 ····</span><span·class="p"·data-group-id="9814175907-9">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="9814175907-10">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·148,·SHA:·b034928227a2bb65c61f4e2016541673634d8e19786ff0748731493282ea1b80·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3693 ····</span><span·class="p"·data-group-id="0112185919-9">(</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="0112185919-10">{</span><span·class="ss">extension</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·148,·SHA:·3ac723ca7f0e15b78dd1a7ea232424b2262a6f37fd92fd722ec8f6432e0b894c·...·]-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3694 ···</span><span·class="p"·data-group-id="9814175907-11">{</span><span·class="ss">unknown</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9814175907-11">}</span><span·class="p">;</span><span·class="w">3694 ···</span><span·class="p"·data-group-id="0112185919-11">{</span><span·class="ss">unknown</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="0112185919-11">}</span><span·class="p">;</span><span·class="w">
3695 ····</span><span·class="p"·data-group-id="9814175907-12">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9814175907-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3695 ····</span><span·class="p"·data-group-id="0112185919-12">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="0112185919-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3696 ···</span><span·class="p"·data-group-id="9814175907-13">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9814175907-13">}</span><span·class="p">;</span><span·class="w">3696 ···</span><span·class="p"·data-group-id="0112185919-13">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="0112185919-13">}</span><span·class="p">;</span><span·class="w">
3697 ····</span><span·class="p"·data-group-id="9814175907-14">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">valid_peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9814175907-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3697 ····</span><span·class="p"·data-group-id="0112185919-14">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">valid_peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="0112185919-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3698 ·······</span><span·class="p"·data-group-id="9814175907-15">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="9814175907-15">}</span><span·class="w">3698 ·······</span><span·class="p"·data-group-id="0112185919-15">{</span><span·class="ss">valid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">UserState</span><span·class="p"·data-group-id="0112185919-15">}</span><span·class="w">
3699 ·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9814175907-16">[</span><span·class="p"·data-group-id="9814175907-16">]</span><span·class="p"·data-group-id="9814175907-1">}</span></code></pre><p>The·possible·path·validation·errors·are·given·on·form·<code·class="inline">{bad_cert,·Reason}</code>·where3699 ·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0112185919-16">[</span><span·class="p"·data-group-id="0112185919-16">]</span><span·class="p"·data-group-id="0112185919-1">}</span></code></pre><p>The·possible·path·validation·errors·are·given·on·form·<code·class="inline">{bad_cert,·Reason}</code>·where
3700 <code·class="inline">Reason</code>·is:</p></li><li><p><strong><code·class="inline">unknown_ca</code></strong></p><p>No·trusted·CA·was·found·in·the·trusted·store.·The·trusted3700 <code·class="inline">Reason</code>·is:</p></li><li><p><strong><code·class="inline">unknown_ca</code></strong></p><p>No·trusted·CA·was·found·in·the·trusted·store.·The·trusted
Max diff block lines reached; 34805/82972 bytes (41.95%) of diff not shown.
1000 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/ssl_app.html
    
Offset 271, 15 lines modifiedOffset 271, 15 lines modified
271 ······<p·class="built-using">271 ······<p·class="built-using">
272 ········Built·using272 ········Built·using
273 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the273 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
274 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>274 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
275 ······</p>275 ······</p>
276 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>276 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
277 ····</footer>277 ····</footer>
278 ··</div>278 ··</div>
279 </main>279 </main>
280 </div>280 </div>
281 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>281 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
282 <script>282 <script>
283 ··document.addEventListener("DOMContentLoaded",·function·()·{283 ··document.addEventListener("DOMContentLoaded",·function·()·{
674 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/ssl_crl_cache.html
    
Offset 365, 15 lines modifiedOffset 365, 15 lines modified
365 ······<p·class="built-using">365 ······<p·class="built-using">
366 ········Built·using366 ········Built·using
367 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the367 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
368 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>368 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
369 ······</p>369 ······</p>
370 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>370 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
371 ····</footer>371 ····</footer>
372 ··</div>372 ··</div>
373 </main>373 </main>
374 </div>374 </div>
375 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>375 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
376 <script>376 <script>
377 ··document.addEventListener("DOMContentLoaded",·function·()·{377 ··document.addEventListener("DOMContentLoaded",·function·()·{
676 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/ssl_crl_cache_api.html
    
Offset 526, 15 lines modifiedOffset 526, 15 lines modified
526 ······<p·class="built-using">526 ······<p·class="built-using">
527 ········Built·using527 ········Built·using
528 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the528 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
529 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>529 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
530 ······</p>530 ······</p>
531 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>531 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
532 ····</footer>532 ····</footer>
533 ··</div>533 ··</div>
534 </main>534 </main>
535 </div>535 </div>
536 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>536 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
537 <script>537 <script>
538 ··document.addEventListener("DOMContentLoaded",·function·()·{538 ··document.addEventListener("DOMContentLoaded",·function·()·{
703 B
html2text {}
Max HTML report size reached
24.2 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/ssl_distribution.html
    
Offset 143, 22 lines modifiedOffset 143, 22 lines modified
143 </h2>143 </h2>
144 <p>Boot·scripts·are·built·using·the·<code·class="inline">systools</code>·utility·in·the·SASL·application.·For144 <p>Boot·scripts·are·built·using·the·<code·class="inline">systools</code>·utility·in·the·SASL·application.·For
145 more·information·on·<code·class="inline">systools</code>,·see·the·SASL·documentation.·This·is·only·an145 more·information·on·<code·class="inline">systools</code>,·see·the·SASL·documentation.·This·is·only·an
146 example·of·what·can·be·done.</p><p>The·simplest·boot·script·possible·includes·only·the·Kernel·and·STDLIB146 example·of·what·can·be·done.</p><p>The·simplest·boot·script·possible·includes·only·the·Kernel·and·STDLIB
147 applications.·Such·a·script·is·located·in·the·<code·class="inline">bin</code>·directory·of·the·Erlang147 applications.·Such·a·script·is·located·in·the·<code·class="inline">bin</code>·directory·of·the·Erlang
148 distribution.·The·source·for·the·script·is·found·under·the·Erlang·installation148 distribution.·The·source·for·the·script·is·found·under·the·Erlang·installation
149 top·directory·under·<code·class="inline">releases/&lt;OTP·version&gt;/start_clean.rel</code>.</p><p>Do·the·following:</p><ul><li>Copy·that·script·to·another·location·(and·preferably·another·name).</li><li>Add·the·applications·Crypto,·Public·Key,·and·SSL·with·their·current·version149 top·directory·under·<code·class="inline">releases/&lt;OTP·version&gt;/start_clean.rel</code>.</p><p>Do·the·following:</p><ul><li>Copy·that·script·to·another·location·(and·preferably·another·name).</li><li>Add·the·applications·Crypto,·Public·Key,·and·SSL·with·their·current·version
150 numbers·after·the·STDLIB·application.</li></ul><p>The·following·shows·an·example·<code·class="inline">.rel</code>·file·with·TLS·added:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="7394328791-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7394328791-2">{</span><span·class="s">&quot;OTP··APN·181·01&quot;</span><span·class="p">,</span><span·class="s">&quot;R15A&q[·...·truncated·by·diffoscope;·len:·319,·SHA:·27cde197ca5178069c177ded85ea87ec9372632973f5f20cd8c1164ca9a8fec7·...·]1-3">}</span><span·class="p">,</span><span·class="w">150 numbers·after·the·STDLIB·application.</li></ul><p>The·following·shows·an·example·<code·class="inline">.rel</code>·file·with·TLS·added:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="p"·data-group-id="2786288901-1">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2786288901-2">{</span><span·class="s">&quot;OTP··APN·181·01&quot;</span><span·class="p">,</span><span·class="s">&quot;R15A&q[·...·truncated·by·diffoscope;·len:·319,·SHA:·5f3080b8639e7d89985587f2be8286472515fe03adbbe3c2d9f3f92ec6d784c9·...·]1-3">}</span><span·class="p">,</span><span·class="w">
151 ······</span><span·class="p"·data-group-id="7394328791-4">[</span><span·class="p"·data-group-id="7394328791-5">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="s">&quot;2.15&quot;</span><span·class="p"·data-group-id="7394328791-5">}</span><span·class="p">,</span><span·class="w">151 ······</span><span·class="p"·data-group-id="2786288901-4">[</span><span·class="p"·data-group-id="2786288901-5">{</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="s">&quot;2.15&quot;</span><span·class="p"·data-group-id="2786288901-5">}</span><span·class="p">,</span><span·class="w">
152 ······</span><span·class="p"·data-group-id="7394328791-6">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="s">&quot;1.18&quot;</span><span·class="p"·data-group-id="7394328791-6">}</span><span·class="p">,</span><span·class="w">152 ······</span><span·class="p"·data-group-id="2786288901-6">{</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="s">&quot;1.18&quot;</span><span·class="p"·data-group-id="2786288901-6">}</span><span·class="p">,</span><span·class="w">
153 ······</span><span·class="p"·data-group-id="7394328791-7">{</span><span·class="ss">crypto</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;2.0.3&quot;</span><span·class="p"·data-group-id="7394328791-7">}</span><span·class="p">,</span><span·class="w">153 ······</span><span·class="p"·data-group-id="2786288901-7">{</span><span·class="ss">crypto</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;2.0.3&quot;</span><span·class="p"·data-group-id="2786288901-7">}</span><span·class="p">,</span><span·class="w">
154 ······</span><span·class="p"·data-group-id="7394328791-8">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;0.12&quot;</span><span·class="p"·data-group-id="7394328791-8">}</span><span·class="p">,</span><span·class="w">154 ······</span><span·class="p"·data-group-id="2786288901-8">{</span><span·class="ss">public_key</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;0.12&quot;</span><span·class="p"·data-group-id="2786288901-8">}</span><span·class="p">,</span><span·class="w">
155 ······</span><span·class="p"·data-group-id="7394328791-9">{</span><span·class="ss">asn1</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;4.0&quot;</span><span·class="p"·data-group-id="7394328791-9">}</span><span·class="p">,</span><span·class="w">155 ······</span><span·class="p"·data-group-id="2786288901-9">{</span><span·class="ss">asn1</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;4.0&quot;</span><span·class="p"·data-group-id="2786288901-9">}</span><span·class="p">,</span><span·class="w">
156 ······</span><span·class="p"·data-group-id="7394328791-10">{</span><span·class="ss">ssl</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;5.0&quot;</span><span·class="p"·data-group-id="7394328791-10">}</span><span·class="w">156 ······</span><span·class="p"·data-group-id="2786288901-10">{</span><span·class="ss">ssl</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;5.0&quot;</span><span·class="p"·data-group-id="2786288901-10">}</span><span·class="w">
157 ······</span><span·class="p"·data-group-id="7394328791-4">]</span><span·class="p"·data-group-id="7394328791-1">}</span><span·class="p">.</span></code></pre><p>The·version·numbers·differ·in·your·system.·Whenever·one·of·the·applications157 ······</span><span·class="p"·data-group-id="2786288901-4">]</span><span·class="p"·data-group-id="2786288901-1">}</span><span·class="p">.</span></code></pre><p>The·version·numbers·differ·in·your·system.·Whenever·one·of·the·applications
158 included·in·the·script·is·upgraded,·change·the·script.</p><p>Do·the·following:</p><ul><li><p>Build·the·boot·script.</p><p>Assuming·the·<code·class="inline">.rel·file</code>·is·stored·in·a·file·<code·class="inline">start_ssl.rel</code>·in·the·current158 included·in·the·script·is·upgraded,·change·the·script.</p><p>Do·the·following:</p><ul><li><p>Build·the·boot·script.</p><p>Assuming·the·<code·class="inline">.rel·file</code>·is·stored·in·a·file·<code·class="inline">start_ssl.rel</code>·in·the·current
159 directory,·a·boot·script·can·be·built·as·follows:</p></li></ul><pre><code·class="text">···1&gt;·systools:make_script(&quot;start_ssl&quot;,[]).</code></pre><p>There·is·now·a·<code·class="inline">start_ssl.boot</code>·file·in·the·current·directory.</p><p>Do·the·following:</p><ul><li>Test·the·boot·script.·To·do·this,·start·Erlang·with·the·<code·class="inline">-boot</code>·command-line159 directory,·a·boot·script·can·be·built·as·follows:</p></li></ul><pre><code·class="text">···1&gt;·systools:make_script(&quot;start_ssl&quot;,[]).</code></pre><p>There·is·now·a·<code·class="inline">start_ssl.boot</code>·file·in·the·current·directory.</p><p>Do·the·following:</p><ul><li>Test·the·boot·script.·To·do·this,·start·Erlang·with·the·<code·class="inline">-boot</code>·command-line
160 parameter·specifying·this·boot·script·(with·its·full·path,·but·without·the160 parameter·specifying·this·boot·script·(with·its·full·path,·but·without·the
161 <code·class="inline">.boot</code>·suffix).·In·UNIX·it·can·look·as·follows:</li></ul><pre><code·class="text">$·erl·-boot·/home/me/ssl/start_ssl161 <code·class="inline">.boot</code>·suffix).·In·UNIX·it·can·look·as·follows:</li></ul><pre><code·class="text">$·erl·-boot·/home/me/ssl/start_ssl
162 Erlang·(BEAM)·emulator·version·5.0162 Erlang·(BEAM)·emulator·version·5.0
  
163 Eshell·V5.0··(abort·with·^G)163 Eshell·V5.0··(abort·with·^G)
Offset 197, 19 lines modifiedOffset 197, 19 lines modified
197 function·body·cannot·be·compiled·when·consulting·a·file.·Also·the·encoding197 function·body·cannot·be·compiled·when·consulting·a·file.·Also·the·encoding
198 of·the·file·can·be·specified·as·defined·by·module·<a·href="../../../../lib/stdlib-6.0.1/doc/html/epp.html"><code·class="inline">epp</code></a>.</p></blockquote><blockquote><h4·class="warning">Warning</h4><p>Do·not·tamper·with·the·socket·options·<code·class="inline">list</code>,·<code·class="inline">binary</code>,·<code·class="inline">active</code>,·<code·class="inline">packet</code>,198 of·the·file·can·be·specified·as·defined·by·module·<a·href="../../../../lib/stdlib-6.0.1/doc/html/epp.html"><code·class="inline">epp</code></a>.</p></blockquote><blockquote><h4·class="warning">Warning</h4><p>Do·not·tamper·with·the·socket·options·<code·class="inline">list</code>,·<code·class="inline">binary</code>,·<code·class="inline">active</code>,·<code·class="inline">packet</code>,
199 <code·class="inline">nodelay</code>·and·<code·class="inline">deliver</code>·since·they·are·used·by·the·distribution·protocol·handler199 <code·class="inline">nodelay</code>·and·<code·class="inline">deliver</code>·since·they·are·used·by·the·distribution·protocol·handler
200 itself.·Other·raw·socket·options·such·as·<code·class="inline">packet_size</code>·may·interfere·severely,200 itself.·Other·raw·socket·options·such·as·<code·class="inline">packet_size</code>·may·interfere·severely,
201 so·beware!</p></blockquote><p>For·TLS·to·work,·at·least·a·public·key·and·a·certificate·must·be·specified·for201 so·beware!</p></blockquote><p>For·TLS·to·work,·at·least·a·public·key·and·a·certificate·must·be·specified·for
202 the·server·side.·In·the·following·example,·the·PEM·file202 the·server·side.·In·the·following·example,·the·PEM·file
203 <code·class="inline">&quot;/home/me/ssl/erlserver.pem&quot;</code>·contains·both·the·server·certificate·and·its203 <code·class="inline">&quot;/home/me/ssl/erlserver.pem&quot;</code>·contains·both·the·server·certificate·and·its
204 private·key.</p><p>Create·a·file·named·for·example·<code·class="inline">&quot;/home/me/ssl/ssl_test@myhost.conf&quot;</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7742749183-1">[</span><span·class="p"·data-group-id="7742749183-2">{</span><span·class="ss">server</span><span·class="p">,</span><span·class="w">204 private·key.</p><p>Create·a·file·named·for·example·<code·class="inline">&quot;/home/me/ssl/ssl_test@myhost.conf&quot;</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1993256683-1">[</span><span·class="p"·data-group-id="1993256683-2">{</span><span·class="ss">server</span><span·class="p">,</span><span·class="w">
205 ··</span><span·class="p"·data-group-id="7742749183-3">[</span><span·class="p"·data-group-id="7742749183-4">{</span><span·class="ss">certfile</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/me/ssl/erlserver.pem&quot;</span><span·class="p"·data-group-id="7742749183-4">}</span><span·class="p">,</span><span·class="w">205 ··</span><span·class="p"·data-group-id="1993256683-3">[</span><span·class="p"·data-group-id="1993256683-4">{</span><span·class="ss">certfile</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;/home/me/ssl/erlserver.pem&quot;</span><span·class="p"·data-group-id="1993256683-4">}</span><span·class="p">,</span><span·class="w">
206 ···</span><span·class="p"·data-group-id="7742749183-5">{</span><span·class="ss">secure_renegotiate</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="7742749183-5">}</span><span·class="p"·data-group-id="7742749183-3">]</span><span·clas[·...·truncated·by·diffoscope;·len:·29,·SHA:·fb93c928fe8da645c4c517cb2874fa9219e23521662e8635059acdb499c6c371·...·]83-2">}</span><span·class="p">,</span><span·class="w">206 ···</span><span·class="p"·data-group-id="1993256683-5">{</span><span·class="ss">secure_renegotiate</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="1993256683-5">}</span><span·class="p"·data-group-id="1993256683-3">]</span><span·clas[·...·truncated·by·diffoscope;·len:·29,·SHA:·31f8dae09d19f76e84eb3117f4171b7c3af85455c27700a212170dd2796a735e·...·]83-2">}</span><span·class="p">,</span><span·class="w">
207 ·</span><span·class="p"·data-group-id="7742749183-6">{</span><span·class="ss">client</span><span·class="p">,</span><span·class="w">207 ·</span><span·class="p"·data-group-id="1993256683-6">{</span><span·class="ss">client</span><span·class="p">,</span><span·class="w">
208 ··</span><span·class="p"·data-group-id="7742749183-7">[</span><span·class="p"·data-group-id="7742749183-8">{</span><span·class="ss">secure_renegotiate</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="7742749183-8">}</span><span·clas[·...·truncated·by·diffoscope;·len:·135,·SHA:·d2087bebdb15901b6a178d931ecc8d77ad5313cfd6e87a899411c8589ef25065·...·]83-1">]</span><span·class="p">.</span></code></pre><p>And·then·start·the·node·like·this·(line·breaks·in·the·command·are·for208 ··</span><span·class="p"·data-group-id="1993256683-7">[</span><span·class="p"·data-group-id="1993256683-8">{</span><span·class="ss">secure_renegotiate</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="1993256683-8">}</span><span·clas[·...·truncated·by·diffoscope;·len:·135,·SHA:·b01b899a3eee262cec20df1da84c24a4c6b5f13b0a2dd36dc1f3f37167d666ca·...·]83-1">]</span><span·class="p">.</span></code></pre><p>And·then·start·the·node·like·this·(line·breaks·in·the·command·are·for
209 readability,·and·shall·not·be·there·when·typed):</p><pre><code·class="text">$·erl·-boot·/home/me/ssl/start_ssl·-proto_dist·inet_tls209 readability,·and·shall·not·be·there·when·typed):</p><pre><code·class="text">$·erl·-boot·/home/me/ssl/start_ssl·-proto_dist·inet_tls
210 ··-ssl_dist_optfile·&quot;/home/me/ssl/ssl_test@myhost.conf&quot;210 ··-ssl_dist_optfile·&quot;/home/me/ssl/ssl_test@myhost.conf&quot;
211 ··-sname·ssl_test</code></pre><p>The·options·in·the·<code·class="inline">{server,·Opts}</code>·tuple·are·used·when·calling211 ··-sname·ssl_test</code></pre><p>The·options·in·the·<code·class="inline">{server,·Opts}</code>·tuple·are·used·when·calling
212 <a·href="ssl.html#handshake/3"><code·class="inline">ssl:handshake/3</code></a>,·and·the·options·in·the·<code·class="inline">{client,·Opts}</code>·tuple·are·used·when212 <a·href="ssl.html#handshake/3"><code·class="inline">ssl:handshake/3</code></a>,·and·the·options·in·the·<code·class="inline">{client,·Opts}</code>·tuple·are·used·when
213 calling·<a·href="ssl.html#connect/4"><code·class="inline">ssl:connect/4</code></a>.</p><p>For·the·client,·the·option·<code·class="inline">{server_name_indication,·atom_to_list(TargetNode)}</code>213 calling·<a·href="ssl.html#connect/4"><code·class="inline">ssl:connect/4</code></a>.</p><p>For·the·client,·the·option·<code·class="inline">{server_name_indication,·atom_to_list(TargetNode)}</code>
214 is·added·when·connecting.·This·makes·it·possible·to·use·the·client·option214 is·added·when·connecting.·This·makes·it·possible·to·use·the·client·option
215 <code·class="inline">{verify,·verify_peer}</code>,·and·the·client·will·verify·that·the·certificate·matches215 <code·class="inline">{verify,·verify_peer}</code>,·and·the·client·will·verify·that·the·certificate·matches
Offset 257, 27 lines modifiedOffset 257, 27 lines modified
257 in·that·variable·and·are·then·interpreted·as·command-line·arguments·for·all257 in·that·variable·and·are·then·interpreted·as·command-line·arguments·for·all
258 subsequent·invocations·of·Erlang.</p><p>In·a·Unix·(Bourne)·shell,·it·can·look·as·follows·(line·breaks·are·for258 subsequent·invocations·of·Erlang.</p><p>In·a·Unix·(Bourne)·shell,·it·can·look·as·follows·(line·breaks·are·for
259 readability,·they·are·not·to·be·there·when·typed):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="n">ERL_FLAGS</span><span·class="o">=</span><span·class="s">&quot;-boot·/home/me/ssl/start_ssl·-proto_dist·inet_tls259 readability,·they·are·not·to·be·there·when·typed):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="n">ERL_FLAGS</span><span·class="o">=</span><span·class="s">&quot;-boot·/home/me/ssl/start_ssl·-proto_dist·inet_tls
260 ··-ssl_dist_opt·server_certfile·/home/me/ssl/erlserver.pem260 ··-ssl_dist_opt·server_certfile·/home/me/ssl/erlserver.pem
261 ··-ssl_dist_opt·server_secure_renegotiate·true·client_secure_renegotiate·true&quot;</span><span·class="w">261 ··-ssl_dist_opt·server_secure_renegotiate·true·client_secure_renegotiate·true&quot;</span><span·class="w">
262 </span><span·class="sc">$·</span><span·class="ss">export</span><span·class="w">·</span><span·class="n">ERL_FLAGS</span><span·class="w">262 </span><span·class="sc">$·</span><span·class="ss">export</span><span·class="w">·</span><span·class="n">ERL_FLAGS</span><span·class="w">
263 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">sname</span><span·class="w">·</span><span·class="ss">ssl_test</span><span·class="w">263 </span><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">sname</span><span·class="w">·</span><span·class="ss">ssl_test</span><span·class="w">
264 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="4664368841-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="4664368841-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">5.0[·...·truncated·by·diffoscope;·len:·154,·SHA:·aeb26542545645fcc09213d0268230f6c1371d916c7c7738ec88441a590e9e4b·...·]1-2">]</span><span·class="w">264 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="4160690681-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="4160690681-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">5.0[·...·truncated·by·diffoscope;·len:·154,·SHA:·6489efa4000c9425ad64e2231d731bb5f597f63f7a396de622c98a3510745ee0·...·]1-2">]</span><span·class="w">
  
265 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mi">0</span><span·class="w">··</span><span·class="p"·data-group-id="4664368841-3">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="4664368841-3">)</span><span·class="gp·unselectable">265 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mi">0</span><span·class="w">··</span><span·class="p"·data-group-id="4160690681-3">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="4160690681-3">)</span><span·class="gp·unselectable">
266 (ssl_test@myhost)1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_arguments</span><span·class="p"·data-group-id="4664368841-4">(</span><span·class="p"·data-group-id="4664368841-4">)</span><span·class="p">.</span><span·class="w">266 (ssl_test@myhost)1&gt;·</span><span·class="nc">init</span><span·class="p">:</span><span·class="nf">get_arguments</span><span·class="p"·data-group-id="4160690681-4">(</span><span·class="p"·data-group-id="4160690681-4">)</span><span·class="p">.</span><span·class="w">
267 </span><span·class="p"·data-group-id="4664368841-5">[</span><span·class="p"·data-group-id="4664368841-6">{</span><span·class="ss">root</span><span·class="p">,</span><span·class="p"·data-group-id="4664368841-7">[</span><span·class="s">&quot;/usr/local/erlang&quot;</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·68,·SHA:·08fb4c4b2f987907b4ac98716b46aebcadc889034791467eb706f380416db593·...·]1-6">}</span><span·class="p">,</span><span·class="w">267 </span><span·class="p"·data-group-id="4160690681-5">[</span><span·class="p"·data-group-id="4160690681-6">{</span><span·class="ss">root</span><span·class="p">,</span><span·class="p"·data-group-id="4160690681-7">[</span><span·class="s">&quot;/usr/local/erlang&quot;</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·68,·SHA:·baad132282d060d42fdb9cb975acfa35efabcc4b1d25dfb7320d8e09361c197e·...·]1-6">}</span><span·class="p">,</span><span·class="w">
268 ·</span><span·class="p"·data-group-id="4664368841-8">{</span><span·class="ss">progname</span><span·class="p">,</span><span·class="p"·data-group-id="4664368841-9">[</span><span·class="s">&quot;erl·&quot;</span><span·class="p"·data-group-id="4664368841-9">]</span><span·class="p"·data-group-id="466[·...·truncated·by·diffoscope;·len:·6,·SHA:·d8d51804f41ac54cd3c7bc6685a06b6f8e85ada39bffcff89a1890493fe40c48·...·]1-8">}</span><span·class="p">,</span><span·class="w">268 ·</span><span·class="p"·data-group-id="4160690681-8">{</span><span·class="ss">progname</span><span·class="p">,</span><span·class="p"·data-group-id="4160690681-9">[</span><span·class="s">&quot;erl·&quot;</span><span·class="p"·data-group-id="4160690681-9">]</span><span·class="p"·data-group-id="416[·...·truncated·by·diffoscope;·len:·6,·SHA:·197ec6d680b1c1c79ec94506449efee8ca403d2012e8f4b4ff28161c3a1aa458·...·]1-8">}</span><span·class="p">,</span><span·class="w">
269 ·</span><span·class="p"·data-group-id="4664368841-10">{</span><span·class="ss">sname</span><span·class="p">,</span><span·class="p"·data-group-id="4664368841-11">[</span><span·class="s">&quot;ssl_test&quot;</span><span·class="p"·data-group-id="4664368841-11">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·10,·SHA:·eadd12ac20ce8a75f186d52862afa6f8cee66e9368477269217dfba67d1aeb2b·...·]1-10">}</span><span·class="p">,</span><span·class="w">269 ·</span><span·class="p"·data-group-id="4160690681-10">{</span><span·class="ss">sname</span><span·class="p">,</span><span·class="p"·data-group-id="4160690681-11">[</span><span·class="s">&quot;ssl_test&quot;</span><span·class="p"·data-group-id="4160690681-11">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·10,·SHA:·ffd0dee767ac97b2eb4536c6eec895f36e9e504a315d5571a220a91de590d962·...·]1-10">}</span><span·class="p">,</span><span·class="w">
270 ·</span><span·class="p"·data-group-id="4664368841-12">{</span><span·class="ss">boot</span><span·class="p">,</span><span·class="p"·data-group-id="4664368841-13">[</span><span·class="s">&quot;/home/me/ssl/start_ssl&quot;</span><span·class="p"·data-group-id="4664368841-13">]</span><span·class="p"·data-group-id="4664368841-12">}</span><span·class="p">,</span><span·class="w"> 
271 ·</span><span·class="p"·data-group-id="4664368841-14">{</span><span·class="ss">proto_dist</span><span·class="p">,</span><span·class="p"·data-group-id="4664368841-15">[</span><span·class="s">&quot;inet_tls&quot;</span><span·class="p"·data-group-id="4664368841-15">]</span><span·class="p"·data-group-id="4664368841-14">}</span><span·class="p">,</span><span·class="w"> 
272 ·</span><span·class="p"·data-group-id="4664368841-16">{</span><span·class="ss">ssl_dist_opt</span><span·class="p">,</span><span·class="p"·data-group-id="4664368841-17">[</span><span·class="s">&quot;server_certfile&quot;</span><span·class="p">,</span><span·class="s">&quot;/home/me/ssl/erlserver.pem&quot;</span><span·class="p"·data-group-id="4664368841-17">]</span><span·class="p"·data-group-id="4664368841-16">}</span><span·class="p">,</span><span·class="w"> 
273 ·</span><span·class="p"·data-group-id="4664368841-18">{</span><span·class="ss">ssl_dist_opt</span><span·class="p">,</span><span·class="p"·data-group-id="4664368841-19">[</span><span·class="s">&quot;server_secure_renegotiate&quot;</span><span·class="p">,</span><span·class="s">&quot;true&quot;</span><span·class="p">,</span><span·class="w">270 ·</span><span·class="p"·data-group-id="4160690681-12">{</span><span·class="ss">boot</span><span·class="p">,</span><span·class="p"·data-group-id="4160690681-13">[</span><span·class="s">&quot;/home/me/ssl/start_ssl&quot;</span><span·class="p"·data-group-id="4160690681-13">]</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·30,·SHA:·a88c39c4313002054ac68d713a344293b603ac9233ec71eb15e89bccfe5232a9·...·]</span><span·class="p">,</span><span·class="w">
 271 ·</span><span·class="p"·data-group-id="4160690681-14">{</span><span·class="ss">proto_dist</span><span·class="p">,</span><span·class="p"·data-group-id="4160690681-15">[</span><span·class="s">&quot;inet_tls&quot;</span><span·class="p"·data-group-id="4160690681-15">]</span><span·class="p"·data-group-id="4160690681-14">}</span><span·class="p">,</span><span·class="w">
 272 ·</span><span·class="p"·data-group-id="4160690681-16">{</span><span·class="ss">ssl_dist_opt</span><span·class="p">,</span><span·class="p"·data-group-id="4160690681-17">[</span><span·class="s">&quot;server_certfile&quot;</span><span·class="p">,</span><span·class="s">&quot;/home/me/ssl/erlserver.pem&quot;</span><span·class="p"·data-group-id="4160690681-17">]</span><span·class="p"·data-group-id="4160690681-16">}</span><span·class="p">,</span><span·class="w">
 273 ·</span><span·class="p"·data-group-id="4160690681-18">{</span><span·class="ss">ssl_dist_opt</span><span·class="p">,</span><span·class="p"·data-group-id="4160690681-19">[</span><span·class="s">&quot;server_secure_renegotiate&quot;</span><span·class="p">,</span><span·class="s">&quot;true&quot;</span><span·class="p">,</span><span·class="w">
274 ················</span><span·class="s">&quot;client_secure_renegotiate&quot;</span><span·class="p">,</span><span·class="s">&quot;true&quot;</span><span·class="p"·data-group-id="4664368841-19">]</span><span·class="w">274 ················</span><span·class="s">&quot;client_secure_renegotiate&quot;</span><span·class="p">,</span><span·class="s">&quot;true&quot;</span><span·class="p"·data-group-id="4160690681-19">]</span><span·class="w">
275 ·</span><span·class="p"·data-group-id="4664368841-20">{</span><span·class="ss">home</span><span·class="p">,</span><span·class="p"·data-group-id="4664368841-21">[</span><span·class="s">&quot;/home/me&quot;</span><span·class="p"·data-group-id="4664368841-21">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·9,·SHA:·dfdf998448fd29ddf1088b4d20e308c6667b1afa79a29d20c3e5150b780c1eb1·...·]1-20">}</span><span·class="p">]</span></code></pre><p>The·<code·class="inline">init:get_arguments()</code>·call·verifies·that·the·correct·arguments·are·supplied275 ·</span><span·class="p"·data-group-id="4160690681-20">{</span><span·class="ss">home</span><span·class="p">,</span><span·class="p"·data-group-id="4160690681-21">[</span><span·class="s">&quot;/home/me&quot;</span><span·class="p"·data-group-id="4160690681-21">]</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·9,·SHA:·8bd30a615ed627b31586f5278992f7c9bf09f8d85be5ae746063fc4ed72d8b6d·...·]1-20">}</span><span·class="p">]</span></code></pre><p>The·<code·class="inline">init:get_arguments()</code>·call·verifies·that·the·correct·arguments·are·supplied
276 to·the·emulator.</p><h2·id="using-tls-distribution-over-ipv6"·class="section-heading">276 to·the·emulator.</p><h2·id="using-tls-distribution-over-ipv6"·class="section-heading">
277 ··<a·href="#using-tls-distribution-over-ipv6"·class="hover-link">277 ··<a·href="#using-tls-distribution-over-ipv6"·class="hover-link">
278 ····<i·class="ri-link-m"·aria-hidden="true"></i>278 ····<i·class="ri-link-m"·aria-hidden="true"></i>
279 ··</a>279 ··</a>
280 ··<span·class="text">Using·TLS·distribution·over·IPv6</span>280 ··<span·class="text">Using·TLS·distribution·over·IPv6</span>
281 </h2>281 </h2>
282 <p>It·is·possible·to·use·TLS·distribution·over·IPv6·instead·of·IPv4.·To·do·this,282 <p>It·is·possible·to·use·TLS·distribution·over·IPv6·instead·of·IPv4.·To·do·this,
Offset 333, 15 lines modifiedOffset 333, 15 lines modified
333 ······<p·class="built-using">333 ······<p·class="built-using">
334 ········Built·using334 ········Built·using
335 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the335 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
336 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>336 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
337 ······</p>337 ······</p>
338 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>338 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
339 ····</footer>339 ····</footer>
340 ··</div>340 ··</div>
341 </main>341 </main>
342 </div>342 </div>
343 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>343 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
344 <script>344 <script>
345 ··document.addEventListener("DOMContentLoaded",·function·()·{345 ··document.addEventListener("DOMContentLoaded",·function·()·{
671 B
html2text {}
Max HTML report size reached
1.63 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/ssl_protocol.html
    
Offset 275, 15 lines modifiedOffset 275, 15 lines modified
275 ······<p·class="built-using">275 ······<p·class="built-using">
276 ········Built·using276 ········Built·using
277 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the277 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
278 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>278 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
279 ······</p>279 ······</p>
280 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>280 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
281 ····</footer>281 ····</footer>
282 ··</div>282 ··</div>
283 </main>283 </main>
284 </div>284 </div>
285 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>285 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
286 <script>286 <script>
287 ··document.addEventListener("DOMContentLoaded",·function·()·{287 ··document.addEventListener("DOMContentLoaded",·function·()·{
824 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/ssl_session_cache_api.html
    
Offset 719, 15 lines modifiedOffset 719, 15 lines modified
719 ······<p·class="built-using">719 ······<p·class="built-using">
720 ········Built·using720 ········Built·using
721 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the721 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
722 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>722 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
723 ······</p>723 ······</p>
724 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>724 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
725 ····</footer>725 ····</footer>
726 ··</div>726 ··</div>
727 </main>727 </main>
728 </div>728 </div>
729 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>729 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
730 <script>730 <script>
731 ··document.addEventListener("DOMContentLoaded",·function·()·{731 ··document.addEventListener("DOMContentLoaded",·function·()·{
683 B
html2text {}
Max HTML report size reached
1.78 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/standards_compliance.html
    
Offset 256, 15 lines modifiedOffset 256, 15 lines modified
256 ······<p·class="built-using">256 ······<p·class="built-using">
257 ········Built·using257 ········Built·using
258 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the258 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
259 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>259 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
260 ······</p>260 ······</p>
261 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>261 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
262 ····</footer>262 ····</footer>
263 ··</div>263 ··</div>
264 </main>264 </main>
265 </div>265 </div>
266 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>266 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
267 <script>267 <script>
268 ··document.addEventListener("DOMContentLoaded",·function·()·{268 ··document.addEventListener("DOMContentLoaded",·function·()·{
961 B
html2text {}
Max HTML report size reached
292 KB
./usr/share/doc/erlang-doc/html/lib/ssl-11.2.1/doc/html/using_ssl.html
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/api-reference.html
    
Offset 823, 15 lines modifiedOffset 823, 15 lines modified
823 ······<p·class="built-using">823 ······<p·class="built-using">
824 ········Built·using824 ········Built·using
825 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the825 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
826 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>826 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
827 ······</p>827 ······</p>
828 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>828 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
829 ····</footer>829 ····</footer>
830 ··</div>830 ··</div>
831 </main>831 </main>
832 </div>832 </div>
833 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>833 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
834 <script>834 <script>
835 ··document.addEventListener("DOMContentLoaded",·function·()·{835 ··document.addEventListener("DOMContentLoaded",·function·()·{
591 B
html2text {}
Max HTML report size reached
127 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/argparse.html
    
Offset 143, 60 lines modifiedOffset 143, 60 lines modified
143 ··</a>143 ··</a>
144 ··<span·class="text">Quick·start</span>144 ··<span·class="text">Quick·start</span>
145 </h2>145 </h2>
146 <p><code·class="inline">argparse</code>·is·designed·to·work·with·<a·href="../../../../erts-15.0.1/doc/html/escript_cmd.html"><code·class="inline">escript</code></a>.·The146 <p><code·class="inline">argparse</code>·is·designed·to·work·with·<a·href="../../../../erts-15.0.1/doc/html/escript_cmd.html"><code·class="inline">escript</code></a>.·The
147 example·below·is·a·fully·functioning·Erlang·program·accepting·two·command·line147 example·below·is·a·fully·functioning·Erlang·program·accepting·two·command·line
148 arguments·and·printing·their·product.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ch">#!/usr/bin/env·escript148 arguments·and·printing·their·product.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ch">#!/usr/bin/env·escript
149 </span><span·class="w">149 </span><span·class="w">
150 </span><span·class="nf">main</span><span·class="p"·data-group-id="3519919049-1">(</span><span·class="n">Args</span><span·class="p"·data-group-id="3519919049-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">150 </span><span·class="nf">main</span><span·class="p"·data-group-id="8365540573-1">(</span><span·class="n">Args</span><span·class="p"·data-group-id="8365540573-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
151 ····</span><span·class="nc">argparse</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="3519919049-2">(</span><span·class="n">Args</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">cli</span><span·class="p"·data-group-id="3519919049-3">(</span><span·class="p"·data-group-id="3519919049-3">)</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·305,·SHA:·c9ec8a2d092b2e52fc97385b223f045c62455d744abadb32e4511bcabae5aa30·...·]-2">)</span><span·class="p">.</span><span·class="w">151 ····</span><span·class="nc">argparse</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="8365540573-2">(</span><span·class="n">Args</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">cli</span><span·class="p"·data-group-id="8365540573-3">(</span><span·class="p"·data-group-id="8365540573-3">)</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·305,·SHA:·c594b26568c113cf70d991605611bf664aef2a224290f282cc23de56858a734f·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
152 </span><span·class="nf">cli</span><span·class="p"·data-group-id="3519919049-5">(</span><span·class="p"·data-group-id="3519919049-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">152 </span><span·class="nf">cli</span><span·class="p"·data-group-id="8365540573-5">(</span><span·class="p"·data-group-id="8365540573-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
153 ····</span><span·class="p"·data-group-id="3519919049-6">#{</span><span·class="w">153 ····</span><span·class="p"·data-group-id="8365540573-6">#{</span><span·class="w">
154 ········</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3519919049-7">[</span><span·class="w">154 ········</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8365540573-7">[</span><span·class="w">
155 ············</span><span·class="p"·data-group-id="3519919049-8">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">left</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·123,·SHA:·79d9949218d3b326c4e12b86fb64d59472acbc1ae1a2611cdcc51ac4500fa23e·...·]-8">}</span><span·class="p">,</span><span·class="w">155 ············</span><span·class="p"·data-group-id="8365540573-8">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">left</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·123,·SHA:·0f9f03b17b3aff0b0c1fde60f9ba14667a23fb7a937dfff5866b8021b7c4435d·...·]-8">}</span><span·class="p">,</span><span·class="w">
156 ············</span><span·class="p"·data-group-id="3519919049-9">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">right</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·124,·SHA:·76c86e101c4fef16129e9f86e11e59cbd64c3e1f343d419553081039c6a9c592·...·]-9">}</span><span·class="w">156 ············</span><span·class="p"·data-group-id="8365540573-9">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">right</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">type</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·124,·SHA:·8d78d7fa324a73772c81c9620e79237168e887aba5da6cc99fc94d9b580aa3f7·...·]-9">}</span><span·class="w">
157 ········</span><span·class="p"·data-group-id="3519919049-7">]</span><span·class="p">,</span><span·class="w">157 ········</span><span·class="p"·data-group-id="8365540573-7">]</span><span·class="p">,</span><span·class="w">
158 ········</span><span·class="ss">handler</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">158 ········</span><span·class="ss">handler</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">
159 ············</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="3519919049-10">(</span><span·class="p"·data-group-id="3519919049-11">#{</span><span·class="ss">left</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Left</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·223,·SHA:·62230a15bba175c24320757dcf8b4704a55e657ec54214058ae54d451b96c2c9·...·]-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">159 ············</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8365540573-10">(</span><span·class="p"·data-group-id="8365540573-11">#{</span><span·class="ss">left</span><span·class="w">·</span><span·class="p">:=</span><span·class="w">·</span><span·class="n">Left</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·223,·SHA:·d9a7da5a159e1ff7ab403cc441f0afcca32a65364dbf6bcbe4240c761eb7380d·...·]-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
160 ················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3519919049-12">(</span><span·class="s">&quot;</span><span·class="si">~b</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3519919049-13">[</span><span·class="n">Left<[·...·truncated·by·diffoscope;·len:·201,·SHA:·679eb519cfc2bbe42dd4f242649c8aac460d60e6761c9efbf8369d125875ed54·...·]-12">)</span><span·class="w">160 ················</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8365540573-12">(</span><span·class="s">&quot;</span><span·class="si">~b</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8365540573-13">[</span><span·class="n">Left<[·...·truncated·by·diffoscope;·len:·201,·SHA:·5d0f0b3e7e93b866573b9db46c9b5f774280a393cbc3d5b17d623f89725f5cfc·...·]-12">)</span><span·class="w">
161 ············</span><span·class="k">end</span><span·class="w">161 ············</span><span·class="k">end</span><span·class="w">
162 ····</span><span·class="p"·data-group-id="3519919049-6">}</span><span·class="p">.</span></code></pre><p>Running·this·script·with·no·arguments·results·in·an·error,·accompanied·by·the162 ····</span><span·class="p"·data-group-id="8365540573-6">}</span><span·class="p">.</span></code></pre><p>Running·this·script·with·no·arguments·results·in·an·error,·accompanied·by·the
163 usage·information.</p><p>The·<code·class="inline">cli</code>·function·defines·a·single·command·with·embedded·handler·accepting·a163 usage·information.</p><p>The·<code·class="inline">cli</code>·function·defines·a·single·command·with·embedded·handler·accepting·a
164 map.·Keys·of·the·map·are·argument·names·as·defined·by·the·<code·class="inline">argument</code>·field·of164 map.·Keys·of·the·map·are·argument·names·as·defined·by·the·<code·class="inline">argument</code>·field·of
165 the·command,·<code·class="inline">left</code>·and·<code·class="inline">right</code>·in·the·example.·Values·are·taken·from·the165 the·command,·<code·class="inline">left</code>·and·<code·class="inline">right</code>·in·the·example.·Values·are·taken·from·the
166 command·line,·and·converted·into·integers,·as·requested·by·the·type166 command·line,·and·converted·into·integers,·as·requested·by·the·type
167 specification.·Both·arguments·in·the·example·above·are·required·(and·therefore167 specification.·Both·arguments·in·the·example·above·are·required·(and·therefore
168 defined·as·positional).</p><h2·id="module-command-hierarchy"·class="section-heading">168 defined·as·positional).</p><h2·id="module-command-hierarchy"·class="section-heading">
169 ··<a·href="#module-command-hierarchy"·class="hover-link">169 ··<a·href="#module-command-hierarchy"·class="hover-link">
170 ····<i·class="ri-link-m"·aria-hidden="true"></i>170 ····<i·class="ri-link-m"·aria-hidden="true"></i>
171 ··</a>171 ··</a>
172 ··<span·class="text">Command·hierarchy</span>172 ··<span·class="text">Command·hierarchy</span>
173 </h2>173 </h2>
174 <p>A·command·may·contain·nested·commands,·forming·a·hierarchy.·Arguments·defined·at174 <p>A·command·may·contain·nested·commands,·forming·a·hierarchy.·Arguments·defined·at
175 the·upper·level·command·are·automatically·added·to·all·nested·commands.·Nested175 the·upper·level·command·are·automatically·added·to·all·nested·commands.·Nested
176 commands·example·(assuming·<code·class="inline">progname</code>·is·<code·class="inline">nested</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">cli</span><span·class="p"·data-group-id="7957995740-1">(</span><span·class="p"·data-group-id="7957995740-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">176 commands·example·(assuming·<code·class="inline">progname</code>·is·<code·class="inline">nested</code>):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">cli</span><span·class="p"·data-group-id="8913049971-1">(</span><span·class="p"·data-group-id="8913049971-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
177 ··</span><span·class="p"·data-group-id="7957995740-2">#{</span><span·class="w">177 ··</span><span·class="p"·data-group-id="8913049971-2">#{</span><span·class="w">
178 ····</span><span·class="c1">%%·top·level·argument·applicable·to·all·commands</span><span·class="w">178 ····</span><span·class="c1">%%·top·level·argument·applicable·to·all·commands</span><span·class="w">
179 ····</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7957995740-3">[</span><span·class="p"·data-group-id="7957995740-4">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">top</span><span·class="p"·data-group-id="7957995740-4">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·588fc37f74418463567813b78b613c13f95a4f9b7350539539ebc75f3c5e1e4b·...·]-3">]</span><span·class="p">,</span><span·class="w">179 ····</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8913049971-3">[</span><span·class="p"·data-group-id="8913049971-4">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">top</span><span·class="p"·data-group-id="8913049971-4">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·e4cfa1be566d8efac534a50f0275885c708d8b22e34162d975f3d1e176eab05a·...·]-3">]</span><span·class="p">,</span><span·class="w">
180 ······</span><span·class="ss">commands</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7957995740-5">#{</span><span·class="w">180 ······</span><span·class="ss">commands</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8913049971-5">#{</span><span·class="w">
181 ········</span><span·class="s">&quot;first&quot;</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7957995740-6">#{</span><span·class="w">181 ········</span><span·class="s">&quot;first&quot;</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8913049971-6">#{</span><span·class="w">
182 ··········</span><span·class="c1">%%·argument·applicable·to·&quot;first&quot;·command·and</span><span·class="w">182 ··········</span><span·class="c1">%%·argument·applicable·to·&quot;first&quot;·command·and</span><span·class="w">
183 ··········</span><span·class="c1">%%··all·commands·nested·into·&quot;first&quot;</span><span·class="w">183 ··········</span><span·class="c1">%%··all·commands·nested·into·&quot;first&quot;</span><span·class="w">
184 ··········</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7957995740-7">[</span><span·class="p"·data-group-id="7957995740-8">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">mid</span><span·class="p"·data-group-id="7957995740-8">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·588fc37f74418463567813b78b613c13f95a4f9b7350539539ebc75f3c5e1e4b·...·]-7">]</span><span·class="p">,</span><span·class="w">184 ··········</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8913049971-7">[</span><span·class="p"·data-group-id="8913049971-8">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">mid</span><span·class="p"·data-group-id="8913049971-8">}</s[·...·truncated·by·diffoscope;·len:·45,·SHA:·e4cfa1be566d8efac534a50f0275885c708d8b22e34162d975f3d1e176eab05a·...·]-7">]</span><span·class="p">,</span><span·class="w">
185 ··········</span><span·class="ss">commands</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7957995740-9">#{</span><span·class="w">185 ··········</span><span·class="ss">commands</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8913049971-9">#{</span><span·class="w">
186 ············</span><span·class="s">&quot;second&quot;</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7957995740-10">#{</span><span·class="w">186 ············</span><span·class="s">&quot;second&quot;</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8913049971-10">#{</span><span·class="w">
187 ··············</span><span·class="c1">%%·argument·only·applicable·for·&quot;second&quot;·command</span><span·class="w">187 ··············</span><span·class="c1">%%·argument·only·applicable·for·&quot;second&quot;·command</span><span·class="w">
188 ··············</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7957995740-11">[</span><span·class="p"·data-group-id="7957995740-12">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">bottom</span><span·class="p"·data-group-id="7957995740-12[·...·truncated·by·diffoscope;·len:·51,·SHA:·21bdf0d1c9051921d7f2344f9486677d48673d2490a40a803bd6343e05573b74·...·]-11">]</span><span·class="p">,</span><span·class="w">188 ··············</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8913049971-11">[</span><span·class="p"·data-group-id="8913049971-12">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">bottom</span><span·class="p"·data-group-id="8913049971-12[·...·truncated·by·diffoscope;·len:·51,·SHA:·d4b71281ec2b20fb789b77947df611fc1eeb2d93e849e87a32ebe2a52e4ac140·...·]-11">]</span><span·class="p">,</span><span·class="w">
189 ··············</span><span·class="ss">handler</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7957995740-13">(</span><span·class="n">A</span><span·class="p"·data-group-id="7957995740-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span[·...·truncated·by·diffoscope;·len:·386,·SHA:·030c2af0ce00a0b2523f9ff43588d5e9e4ffc05cac56c75f6037dc5963a3d255·...·]-14">)</span><span·class="w">·</span><span·class="k">end</span><span·class="w">189 ··············</span><span·class="ss">handler</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8913049971-13">(</span><span·class="n">A</span><span·class="p"·data-group-id="8913049971-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span[·...·truncated·by·diffoscope;·len:·386,·SHA:·6d83b9059df3f2770923cc2bb26ff6a5ec21696080035b4ce7700c907c705e22·...·]-14">)</span><span·class="w">·</span><span·class="k">end</span><span·class="w">
190 ··········</span><span·class="p"·data-group-id="7957995740-10">}</span><span·class="w">190 ··········</span><span·class="p"·data-group-id="8913049971-10">}</span><span·class="w">
191 ········</span><span·class="p"·data-group-id="7957995740-9">}</span><span·class="w">191 ········</span><span·class="p"·data-group-id="8913049971-9">}</span><span·class="w">
192 ······</span><span·class="p"·data-group-id="7957995740-6">}</span><span·class="w">192 ······</span><span·class="p"·data-group-id="8913049971-6">}</span><span·class="w">
193 ····</span><span·class="p"·data-group-id="7957995740-5">}</span><span·class="w">193 ····</span><span·class="p"·data-group-id="8913049971-5">}</span><span·class="w">
194 ··</span><span·class="p"·data-group-id="7957995740-2">}</span><span·class="p">.</span></code></pre><p>In·the·example·above,·a·3-level·hierarchy·is·defined.·First·is·the·script·itself194 ··</span><span·class="p"·data-group-id="8913049971-2">}</span><span·class="p">.</span></code></pre><p>In·the·example·above,·a·3-level·hierarchy·is·defined.·First·is·the·script·itself
195 (<code·class="inline">nested</code>),·accepting·the·only·argument·<code·class="inline">top</code>.·Since·it·has·no·associated195 (<code·class="inline">nested</code>),·accepting·the·only·argument·<code·class="inline">top</code>.·Since·it·has·no·associated
196 handler,·<a·href="#run/3"><code·class="inline">run/3</code></a>·will·not·accept·user·input·omitting·nested·command·selection.196 handler,·<a·href="#run/3"><code·class="inline">run/3</code></a>·will·not·accept·user·input·omitting·nested·command·selection.
197 For·this·example,·user·has·to·supply·5·arguments·in·the·command·line,·two·being197 For·this·example,·user·has·to·supply·5·arguments·in·the·command·line,·two·being
198 command·names,·and·another·3·-·required·positional·arguments:</p><pre><code·class="text">./nested.erl·one·first·second·two·three198 command·names,·and·another·3·-·required·positional·arguments:</p><pre><code·class="text">./nested.erl·one·first·second·two·three
199 #{top·=&gt;·&quot;one&quot;,mid·=&gt;·&quot;two&quot;,bottom·=&gt;·&quot;three&quot;}</code></pre><p>Commands·have·preference·over·positional·argument·values.·In·the·example·above,199 #{top·=&gt;·&quot;one&quot;,mid·=&gt;·&quot;two&quot;,bottom·=&gt;·&quot;three&quot;}</code></pre><p>Commands·have·preference·over·positional·argument·values.·In·the·example·above,
200 commands·and·positional·arguments·are·interleaving,·and·<code·class="inline">argparse</code>·matches200 commands·and·positional·arguments·are·interleaving,·and·<code·class="inline">argparse</code>·matches
201 command·name·first.</p><h2·id="module-arguments"·class="section-heading">201 command·name·first.</p><h2·id="module-arguments"·class="section-heading">
Offset 206, 22 lines modifiedOffset 206, 22 lines modified
206 ··<span·class="text">Arguments</span>206 ··<span·class="text">Arguments</span>
207 </h2>207 </h2>
208 <p><code·class="inline">argparse</code>·supports·positional·and·optional·arguments.·Optional·arguments,·or208 <p><code·class="inline">argparse</code>·supports·positional·and·optional·arguments.·Optional·arguments,·or
209 options·for·short,·must·be·prefixed·with·a·special·character·(<code·class="inline">-</code>·is·the·default209 options·for·short,·must·be·prefixed·with·a·special·character·(<code·class="inline">-</code>·is·the·default
210 on·all·operating·systems).·Both·options·and·positional·arguments·have·1·or·more210 on·all·operating·systems).·Both·options·and·positional·arguments·have·1·or·more
211 associated·values.·See·<a·href="#t:argument/0"><code·class="inline">argument·specification</code></a>·to·find·more211 associated·values.·See·<a·href="#t:argument/0"><code·class="inline">argument·specification</code></a>·to·find·more
212 details·about·supported·combinations.</p><p>In·the·user·input,·short·options·may·be·concatenated·with·their·values.·Long212 details·about·supported·combinations.</p><p>In·the·user·input,·short·options·may·be·concatenated·with·their·values.·Long
213 options·support·values·separated·by·<code·class="inline">=</code>.·Consider·this·definition:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">cli</span><span·class="p"·data-group-id="3420350768-1">(</span><span·class="p"·data-group-id="3420350768-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">213 options·support·values·separated·by·<code·class="inline">=</code>.·Consider·this·definition:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">cli</span><span·class="p"·data-group-id="5579426247-1">(</span><span·class="p"·data-group-id="5579426247-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
214 ··</span><span·class="p"·data-group-id="3420350768-2">#{</span><span·class="w">214 ··</span><span·class="p"·data-group-id="5579426247-2">#{</span><span·class="w">
215 ····</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3420350768-3">[</span><span·class="w">215 ····</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5579426247-3">[</span><span·class="w">
216 ······</span><span·class="p"·data-group-id="3420350768-4">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">long</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">long</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·132,·SHA:·bff921a72ea678e9a8569e0ef1ca141a27e6174f2c3cc6e5bba23d93f4b701a5·...·]-4">}</span><span·class="p">,</span><span·class="w">216 ······</span><span·class="p"·data-group-id="5579426247-4">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">long</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">long</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·132,·SHA:·4054ebcf80a7d627edfe32296904eac2e20ecad9ef97f0756a957eeb70ba32b0·...·]-4">}</span><span·class="p">,</span><span·class="w">
217 ······</span><span·class="p"·data-group-id="3420350768-5">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">short</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">short</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·120,·SHA:·a3b36337f6c445e25a874a8b83c91065e740e246f49a4fbc357d8ca24fb3c852·...·]-5">}</span><span·class="w">217 ······</span><span·class="p"·data-group-id="5579426247-5">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">short</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">short</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·120,·SHA:·4f9317f254d90b32d6a83ca9d2defc66f50247c84b5e0d94c8ef3b6811139b69·...·]-5">}</span><span·class="w">
218 ····</span><span·class="p"·data-group-id="3420350768-3">]</span><span·class="p">,</span><span·class="w">218 ····</span><span·class="p"·data-group-id="5579426247-3">]</span><span·class="p">,</span><span·class="w">
219 ····</span><span·class="ss">handler</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="3420350768-6">(</span><span·class="n">Args</span><span·class="p"·data-group-id="3420350768-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·bc1cd6b761970b798607ddebd82fc26ffee9548d87a511a02ced1e71ec9ab817·...·]-7">)</span><span·class="w">·</span><span·class="k">end</span><span·class="w">219 ····</span><span·class="ss">handler</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="5579426247-6">(</span><span·class="n">Args</span><span·class="p"·data-group-id="5579426247-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·740faa3faf67581d2201bcb27bc8b9fc5eefd2ea8e5768880ce4e9232e1125d1·...·]-7">)</span><span·class="w">·</span><span·class="k">end</span><span·class="w">
220 ··</span><span·class="p"·data-group-id="3420350768-2">}</span><span·class="p">.</span></code></pre><p>Running·<code·class="inline">./args·--long=VALUE</code>·prints·<code·class="inline">#{long·=&gt;·&quot;VALUE&quot;}</code>,·running220 ··</span><span·class="p"·data-group-id="5579426247-2">}</span><span·class="p">.</span></code></pre><p>Running·<code·class="inline">./args·--long=VALUE</code>·prints·<code·class="inline">#{long·=&gt;·&quot;VALUE&quot;}</code>,·running
221 <code·class="inline">./args·-sVALUE</code>·prints·<code·class="inline">#{short·=&gt;·&quot;VALUE&quot;}</code></p><p><code·class="inline">argparse</code>·supports·boolean·flags·concatenation:·it·is·possible·to·shorten221 <code·class="inline">./args·-sVALUE</code>·prints·<code·class="inline">#{short·=&gt;·&quot;VALUE&quot;}</code></p><p><code·class="inline">argparse</code>·supports·boolean·flags·concatenation:·it·is·possible·to·shorten
222 <code·class="inline">-r·-f·-v</code>·to·<code·class="inline">-rfv</code>.</p><p>Shortened·option·names·are·not·supported:·it·is·not·possible·to·use·<code·class="inline">--my-argum</code>222 <code·class="inline">-r·-f·-v</code>·to·<code·class="inline">-rfv</code>.</p><p>Shortened·option·names·are·not·supported:·it·is·not·possible·to·use·<code·class="inline">--my-argum</code>
223 instead·of·<code·class="inline">--my-argument-name</code>·even·when·such·option·can·be·unambiguously223 instead·of·<code·class="inline">--my-argument-name</code>·even·when·such·option·can·be·unambiguously
224 found.</p>224 found.</p>
225 ····</section>225 ····</section>
  
226 </div>226 </div>
Offset 604, 119 lines modifiedOffset 604, 119 lines modified
604 as·optional.·Optional·arguments·do·not·have·specific·order·and·may·appear604 as·optional.·Optional·arguments·do·not·have·specific·order·and·may·appear
605 anywhere·in·the·command·line.·Positional·arguments·are·ordered·the·same·way·as605 anywhere·in·the·command·line.·Positional·arguments·are·ordered·the·same·way·as
606 they·appear·in·the·arguments·list·of·the·command·specification.</p><p>By·default,·all·positional·arguments·must·be·present·in·the·command·line.·The606 they·appear·in·the·arguments·list·of·the·command·specification.</p><p>By·default,·all·positional·arguments·must·be·present·in·the·command·line.·The
607 parser·will·return·an·error·otherwise.·Options,·however,·may·be·omitted,·in607 parser·will·return·an·error·otherwise.·Options,·however,·may·be·omitted,·in
608 which·case·resulting·argument·map·will·either·contain·the·default·value,·or·not608 which·case·resulting·argument·map·will·either·contain·the·default·value,·or·not
609 have·the·key·at·all.</p><ul><li><p><strong><code·class="inline">name</code></strong>·-·Sets·the·argument·name·in·the·parsed·argument·map.·If·<code·class="inline">help</code>·is609 have·the·key·at·all.</p><ul><li><p><strong><code·class="inline">name</code></strong>·-·Sets·the·argument·name·in·the·parsed·argument·map.·If·<code·class="inline">help</code>·is
610 not·defined,·name·is·also·used·to·generate·the·default·usage·message.</p></li><li><p><strong><code·class="inline">short</code></strong>·-·Defines·a·short·(single·character)·form·of·an·optional·argument.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Define·a·command·accepting·argument·named·myarg,·with·short·form·$a:</span><span·class="gp·unselectable">610 not·defined,·name·is·also·used·to·generate·the·default·usage·message.</p></li><li><p><strong><code·class="inline">short</code></strong>·-·Defines·a·short·(single·character)·form·of·an·optional·argument.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Define·a·command·accepting·argument·named·myarg,·with·short·form·$a:</span><span·class="gp·unselectable">
611 1&gt;·</span><span·class="n">Cmd</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6893785458-1">#{</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6893785458-2">[</span><span·class="p"·data-group-id="6893785458-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·442,·SHA:·933132acfc454edc133111b42c63166c47503e8d191541725d7cfe8f1c43e8f9·...·]-1">}</span><span·class="p">.</span><span·class="w">611 1&gt;·</span><span·class="n">Cmd</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2485099319-1">#{</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2485099319-2">[</span><span·class="p"·data-group-id="2485099319-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·442,·SHA:·8eaad50f4cbc6b2fc2fc7a3afbcbea001c97a96c9ab943c5b28ca477602f1c74·...·]-1">}</span><span·class="p">.</span><span·class="w">
612 </span><span·class="c1">%%·Parse·command·line·&quot;-a·str&quot;:</span><span·class="gp·unselectable">612 </span><span·class="c1">%%·Parse·command·line·&quot;-a·str&quot;:</span><span·class="gp·unselectable">
613 2&gt;·</span><span·class="p"·data-group-id="6893785458-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·620,·SHA:·b2d76c3e7529e401a2fca2f6545a9b1b16da07ad7c44403d728c6b8329fbb683·...·]-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">.</span><span·class="w">613 2&gt;·</span><span·class="p"·data-group-id="2485099319-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·620,·SHA:·137010e09c480bfdc45728a3034d90cb45700abbfd2966bb7f76a53938923bcc·...·]-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">.</span><span·class="w">
  
614 </span><span·class="p"·data-group-id="6893785458-7">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;str&quot;</span><span·class="p"·data-group-id="6893785458-7">}</span><span·class="w">614 </span><span·class="p"·data-group-id="2485099319-7">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;str&quot;</span><span·class="p"·data-group-id="2485099319-7">}</span><span·class="w">
  
615 </span><span·class="c1">%%·Option·value·can·be·concatenated·with·the·switch:·&quot;-astr&quot;</span><span·class="gp·unselectable">615 </span><span·class="c1">%%·Option·value·can·be·concatenated·with·the·switch:·&quot;-astr&quot;</span><span·class="gp·unselectable">
616 3&gt;·</span><span·class="p"·data-group-id="6893785458-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·539,·SHA:·9f26144cb8a0823f3b1b0569517443a94b8808221cfb97ff8fa0110886807d9e·...·]-9">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">.</span><span·class="w">616 3&gt;·</span><span·class="p"·data-group-id="2485099319-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·539,·SHA:·896384a92476d83b2fa8388624a56c44ce50e495e0553fa73450dc4372386453·...·]-9">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">.</span><span·class="w">
  
617 </span><span·class="p"·data-group-id="6893785458-11">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;str&quot;</span><span·class="p"·data-group-id="6893785458-11">}</span></code></pre><p>By·default·all·options·expect·a·single·value·following·the·option·switch.·The617 </span><span·class="p"·data-group-id="2485099319-11">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;str&quot;</span><span·class="p"·data-group-id="2485099319-11">}</span></code></pre><p>By·default·all·options·expect·a·single·value·following·the·option·switch.·The
618 only·exception·is·an·option·of·a·boolean·type.</p></li><li><p><strong><code·class="inline">long</code></strong>·-·Defines·a·long·form·of·an·optional·argument.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Cmd</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2816622397-1">#{</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2816622397-2">[</span><span·class="p"·data-group-id="2816622397-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·454,·SHA:·919af0f75f8a1175164a01d57f4d58b155f8179ed4c4967bcaef356454a1b46e·...·]-1">}</span><span·class="p">.</span><span·class="w">618 only·exception·is·an·option·of·a·boolean·type.</p></li><li><p><strong><code·class="inline">long</code></strong>·-·Defines·a·long·form·of·an·optional·argument.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Cmd</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0754181054-1">#{</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0754181054-2">[</span><span·class="p"·data-group-id="0754181054-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·454,·SHA:·1023a0aa8aaef35d001e7c5dca6e914e25b2c13ce155e8a59aed6cf489bf68b8·...·]-1">}</span><span·class="p">.</span><span·class="w">
619 </span><span·class="c1">%%·Parse·command·line·&quot;-name·Erlang&quot;:</span><span·class="gp·unselectable">619 </span><span·class="c1">%%·Parse·command·line·&quot;-name·Erlang&quot;:</span><span·class="gp·unselectable">
620 2&gt;·</span><span·class="p"·data-group-id="2816622397-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·626,·SHA:·d6d4e22dc5bea27940424e2dc80104bb532e89bd9baa3e02e95f63a4a2011298·...·]-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">.</span><span·class="w">620 2&gt;·</span><span·class="p"·data-group-id="0754181054-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·626,·SHA:·8e1bd2d7e7b87092df1cef87cc53f61ff0cab4da61c9d96eacc162aebd41948a·...·]-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">.</span><span·class="w">
  
621 </span><span·class="p"·data-group-id="2816622397-7">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;Erlang&quot;</span><span·class="p"·data-group-id="2816622397-7">}</span><span·class="w">621 </span><span·class="p"·data-group-id="0754181054-7">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;Erlang&quot;</span><span·class="p"·data-group-id="0754181054-7">}</span><span·class="w">
622 </span><span·class="c1">%%·Or·use·&quot;=&quot;·to·separate·the·switch·and·the·value:</span><span·class="gp·unselectable">622 </span><span·class="c1">%%·Or·use·&quot;=&quot;·to·separate·the·switch·and·the·value:</span><span·class="gp·unselectable">
623 3&gt;·</span><span·class="p"·data-group-id="2816622397-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·546,·SHA:·64e280a164a4bb632bb8dcb71bcda7057bcffe7d90d487ae38fbe30c43a19c16·...·]-9">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">.</span><span·class="w">623 3&gt;·</span><span·class="p"·data-group-id="0754181054-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·546,·SHA:·501be74806e57eb9226a849d4655eabe5669691e040cce2983ac2631b75ae58f·...·]-9">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArgMap</span><span·class="p">.</span><span·class="w">
  
624 </span><span·class="p"·data-group-id="2816622397-11">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;Erlang&quot;</span><span·class="p"·data-group-id="2816622397-11">}</span></code></pre><p>If·neither·<code·class="inline">short</code>·not·<code·class="inline">long</code>·is·defined,·the·argument·is·treated·as624 </span><span·class="p"·data-group-id="0754181054-11">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;Erlang&quot;</span><span·class="p"·data-group-id="0754181054-11">}</span></code></pre><p>If·neither·<code·class="inline">short</code>·not·<code·class="inline">long</code>·is·defined,·the·argument·is·treated·as
625 positional.</p></li><li><p><strong><code·class="inline">required</code></strong>·-·Forces·the·parser·to·expect·the·argument·to·be·present·in·the625 positional.</p></li><li><p><strong><code·class="inline">required</code></strong>·-·Forces·the·parser·to·expect·the·argument·to·be·present·in·the
626 command·line.·By·default,·all·positional·argument·are·required,·and·all626 command·line.·By·default,·all·positional·argument·are·required,·and·all
627 options·are·not.</p></li><li><p><strong><code·class="inline">default</code></strong>·-·Specifies·the·default·value·to·put·in·the·parsed·argument·map627 options·are·not.</p></li><li><p><strong><code·class="inline">default</code></strong>·-·Specifies·the·default·value·to·put·in·the·parsed·argument·map
628 if·the·value·is·not·supplied·in·the·command·line.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">argparse</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="6952833051-1">(</span><span·class="p"·data-group-id="6952833051-2">[</span><span·class="p"·data-group-id="6952833051-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6952833051-3">#{</span><span·class="ss">arguments[·...·truncated·by·diffoscope;·len:·702,·SHA:·8627a9ddc1604cab969d0cbf1c7ced9169564ba8784800c47492580fd93f42ec·...·]-1">)</span><span·class="p">.</span><span·class="w">628 if·the·value·is·not·supplied·in·the·command·line.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">argparse</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="9502675056-1">(</span><span·class="p"·data-group-id="9502675056-2">[</span><span·class="p"·data-group-id="9502675056-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9502675056-3">#{</span><span·class="ss">arguments[·...·truncated·by·diffoscope;·len:·702,·SHA:·2350481026c6114c909717135c57892bc81af81490a5210f624469b63e60c193·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
629 </span><span·class="p"·data-group-id="6952833051-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6952833051-7">#{</span><span·class="p"·data-group-id="6952833051-7">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">629 </span><span·class="p"·data-group-id="9502675056-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9502675056-7">#{</span><span·class="p"·data-group-id="9502675056-7">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">
630 2&gt;·</span><span·class="nc">argparse</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="6952833051-8">(</span><span·class="p"·data-group-id="6952833051-9">[</span><span·class="p"·data-group-id="6952833051-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6952833051-10">#{</span><span·class="ss">argument[·...·truncated·by·diffoscope;·len:·901,·SHA:·69eb09c1d598496fbb8afe54b8e096d8c0b30295bcea450bc2649c5ca47fd3ab·...·]-8">)</span><span·class="p">.</span><span·class="w">630 2&gt;·</span><span·class="nc">argparse</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="9502675056-8">(</span><span·class="p"·data-group-id="9502675056-9">[</span><span·class="p"·data-group-id="9502675056-9">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9502675056-10">#{</span><span·class="ss">argument[·...·truncated·by·diffoscope;·len:·901,·SHA:·05b7bf1e48bfbe116578a6191f62235ce65849154e6d6b0ab06af637f6844616·...·]-8">)</span><span·class="p">.</span><span·class="w">
  
631 </span><span·class="p"·data-group-id="6952833051-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6952833051-14">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;d[·...·truncated·by·diffoscope;·len:·56,·SHA:·8f7c8093b8d55803878923cee2067e36a231f51d66e650725cbb8ecdf618d186·...·]-14">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre></li><li><p><strong><code·class="inline">type</code></strong>·-·Defines·type·conversion·and·validation·routine.·The·default·is631 </span><span·class="p"·data-group-id="9502675056-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9502675056-14">#{</span><span·class="ss">myarg</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;d[·...·truncated·by·diffoscope;·len:·56,·SHA:·0c453b6ebb39f9022928e945c7d789c1f3025828f8138776cf03be0ccdf7f62a·...·]-14">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre></li><li><p><strong><code·class="inline">type</code></strong>·-·Defines·type·conversion·and·validation·routine.·The·default·is
632 <code·class="inline">string</code>,·assuming·no·conversion.</p></li><li><p><strong><code·class="inline">nargs</code></strong>·-·Defines·the·number·of·following·arguments·to·consume·from·the632 <code·class="inline">string</code>,·assuming·no·conversion.</p></li><li><p><strong><code·class="inline">nargs</code></strong>·-·Defines·the·number·of·following·arguments·to·consume·from·the
633 command·line.·By·default,·the·parser·consumes·the·next·argument·and·converts633 command·line.·By·default,·the·parser·consumes·the·next·argument·and·converts
634 it·into·an·Erlang·term·according·to·the·specified·type.</p><ul><li><p><strong><a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:pos_integer/0"><code·class="inline">pos_integer/0</code></a></strong>·-·Consume·exactly·this·number·of·positional·arguments,634 it·into·an·Erlang·term·according·to·the·specified·type.</p><ul><li><p><strong><a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:pos_integer/0"><code·class="inline">pos_integer/0</code></a></strong>·-·Consume·exactly·this·number·of·positional·arguments,
635 fail·if·there·is·not·enough.·Value·in·the·argument·map·contains·a·list·of635 fail·if·there·is·not·enough.·Value·in·the·argument·map·contains·a·list·of
636 exactly·this·length.·Example,·defining·a·positional·argument·expecting·3636 exactly·this·length.·Example,·defining·a·positional·argument·expecting·3
637 integer·values:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Cmd</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9969837683-1">#{</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="9969837683-2">[</span><span·class="p"·data-group-id="9969837683-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·622,·SHA:·5443b939e69a36def647779be862462d3306489baf2652f528f55edd6f81d50d·...·]3-1">}</span><span·class="p">,</span><span·class="w">637 integer·values:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Cmd</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1974163053-1">#{</span><span·class="ss">arguments</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="1974163053-2">[</span><span·class="p"·data-group-id="1974163053-3">#{</span><span·class="ss">[·...·truncated·by·diffoscope;·len:·622,·SHA:·14961a7bac709bbf89960729641080b892b60da1a9a57af4274d84c07b58a210·...·]3-1">}</span><span·class="p">,</span><span·class="w">
638 </span><span·class="nc">argparse</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="9969837683-4">(</span><span·class="p"·data-group-id="9969837683-5">[</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·190,·SHA:·15230c1f33929dfd8cb0b9bbd794a33ce81740b7a4a32ab0d940d9b79f006a51·...·]3-4">)</span><span·class="p">.</span><span·class="w">638 </span><span·class="nc">argparse</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="1974163053-4">(</span><span·class="p"·data-group-id="1974163053-5">[</span><span·class="s">&quot;1&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;2&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·190,·SHA:·aa5d8020323a37a124df94784569d96cce0a98b6e4b4558cf2d88a3527fa6810·...·]3-4">)</span><span·class="p">.</span><span·class="w">
  
Max diff block lines reached; 69084/128717 bytes (53.67%) of diff not shown.
704 B
html2text {}
Max HTML report size reached
26.5 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/array.html
    
Offset 132, 22 lines modifiedOffset 132, 22 lines modified
132 is·used·for·entries·that·have·not·been·explicitly·set.</p><p>Arrays·uses·<em>zero</em>-based·indexing.·This·is·a·deliberate·design·choice·and132 is·used·for·entries·that·have·not·been·explicitly·set.</p><p>Arrays·uses·<em>zero</em>-based·indexing.·This·is·a·deliberate·design·choice·and
133 differs·from·other·Erlang·data·structures,·for·example,·tuples.</p><p>Unless·specified·by·the·user·when·the·array·is·created,·the·default·value·is·the133 differs·from·other·Erlang·data·structures,·for·example,·tuples.</p><p>Unless·specified·by·the·user·when·the·array·is·created,·the·default·value·is·the
134 atom·<code·class="inline">undefined</code>.·There·is·no·difference·between·an·unset·entry·and·an·entry134 atom·<code·class="inline">undefined</code>.·There·is·no·difference·between·an·unset·entry·and·an·entry
135 that·has·been·explicitly·set·to·the·same·value·as·the·default·one·(compare135 that·has·been·explicitly·set·to·the·same·value·as·the·default·one·(compare
136 <a·href="#reset/2"><code·class="inline">reset/2</code></a>).·If·you·need·to·differentiate·between·unset·and·set·entries,·ensure136 <a·href="#reset/2"><code·class="inline">reset/2</code></a>).·If·you·need·to·differentiate·between·unset·and·set·entries,·ensure
137 that·the·default·value·cannot·be·confused·with·the·values·of·set·entries.</p><p>The·array·never·shrinks·automatically.·If·an·index·<code·class="inline">I</code>·has·been·used·to·set·an137 that·the·default·value·cannot·be·confused·with·the·values·of·set·entries.</p><p>The·array·never·shrinks·automatically.·If·an·index·<code·class="inline">I</code>·has·been·used·to·set·an
138 entry·successfully,·all·indices·in·the·range·<code·class="inline">[0,I]</code>·stay·accessible·unless·the138 entry·successfully,·all·indices·in·the·range·<code·class="inline">[0,I]</code>·stay·accessible·unless·the
139 array·size·is·explicitly·changed·by·calling·<a·href="#resize/2"><code·class="inline">resize/2</code></a>.</p><p><em>Examples:</em></p><p>Create·a·fixed-size·array·with·entries·0-9·set·to·<code·class="inline">undefined</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">A0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="9605784360-1">(</span><span·class="mi">10</span><span·class="p"·data-group-id="9605784360-1">)</span><span·class="p">.</span><span·class="w">139 array·size·is·explicitly·changed·by·calling·<a·href="#resize/2"><code·class="inline">resize/2</code></a>.</p><p><em>Examples:</em></p><p>Create·a·fixed-size·array·with·entries·0-9·set·to·<code·class="inline">undefined</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">A0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="7983345746-1">(</span><span·class="mi">10</span><span·class="p"·data-group-id="7983345746-1">)</span><span·class="p">.</span><span·class="w">
140 </span><span·class="mi">10</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">size</span><span·class="p"·data-group-id="9605784360-2">(</span><span·class="n">A0</span><span·class="p"·data-group-id="9605784360-2">)</span><span·class="p">.</span></code></pre><p>Create·an·extendible·array·and·set·entry·17·to·<code·class="inline">true</code>,·causing·the·array·to·grow140 </span><span·class="mi">10</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">size</span><span·class="p"·data-group-id="7983345746-2">(</span><span·class="n">A0</span><span·class="p"·data-group-id="7983345746-2">)</span><span·class="p">.</span></code></pre><p>Create·an·extendible·array·and·set·entry·17·to·<code·class="inline">true</code>,·causing·the·array·to·grow
141 automatically:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">A1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">set</span><span·class="p"·data-group-id="4794279058-1">(</span><span·class="mi">17</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">new</span><span[·...·truncated·by·diffoscope;·len:·142,·SHA:·b5951de6c7b4d0b79f169a53919966a8d8991740e5da07a32e537e4f4a23ff1d·...·]-1">)</span><span·class="p">.</span><span·class="w">141 automatically:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">A1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">set</span><span·class="p"·data-group-id="4226171726-1">(</span><span·class="mi">17</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">new</span><span[·...·truncated·by·diffoscope;·len:·142,·SHA:·72a6264b05f54d075c897c0757f494011e0a2daf8d1242a047a861256fdf9aef·...·]-1">)</span><span·class="p">.</span><span·class="w">
142 </span><span·class="mi">18</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">size</span><span·class="p"·data-group-id="4794279058-3">(</span><span·class="n">A1</span><span·class="p"·data-group-id="4794279058-3">)</span><span·class="p">.</span></code></pre><p>Read·back·a·stored·value:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">true</span><span·class=[·...·truncated·by·diffoscope;·len:·861,·SHA:·37078f81d33fd0835acd4a5d898c3dfd6bc9fe0bfd058ca23723dd389fd6a6c0·...·]-1">)</span></code></pre><p>Accessing·an·entry·beyond·the·last·set·entry·also·returns·the·default·value,·if142 </span><span·class="mi">18</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">size</span><span·class="p"·data-group-id="4226171726-3">(</span><span·class="n">A1</span><span·class="p"·data-group-id="4226171726-3">)</span><span·class="p">.</span></code></pre><p>Read·back·a·stored·value:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">true</span><span·class=[·...·truncated·by·diffoscope;·len:·861,·SHA:·4a9882bcca2ffb5cc720688528b87c68a995b40f66de5aa909d00bca51f0f13d·...·]-1">)</span></code></pre><p>Accessing·an·entry·beyond·the·last·set·entry·also·returns·the·default·value,·if
143 the·array·does·not·have·fixed·size:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">undefined</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="8344663304-1">(</span><span·class="mi">18</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A1</span><span·class="p"·data-group-id="8344663304-1">)</span><span·class="p">.</span></code></pre><p>&quot;Sparse&quot;·functions·ignore·defaul[·...·truncated·by·diffoscope;·len:·513,·SHA:·d13242bbbe3f760b140d78e7991bbc7a0f214056d7da6b28b0c3336dc73e6048·...·]51-1">)</span><span·class="p">.</span><span·class="w">143 the·array·does·not·have·fixed·size:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">undefined</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="2963286089-1">(</span><span·class="mi">18</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A1</span><span·class="p"·data-group-id="2963286089-1">)</span><span·class="p">.</span></code></pre><p>&quot;Sparse&quot;·functions·ignore·defaul[·...·truncated·by·diffoscope;·len:·513,·SHA:·2d8a259985c12b335c917561b0b3779ab84533ffe690233dad9f5cbbbc3cd069·...·]51-1">)</span><span·class="p">.</span><span·class="w">
144 </span><span·class="p"·data-group-id="7469036351-2">[</span><span·class="p"·data-group-id="7469036351-3">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="7469036351-3">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7469036351-4">{</span><span·class="mi">17</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="7469036351-4">}</span><span·class="p"·data-group-id="7469036351-2">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">sparse_to_orddict</span><span·class="p"·data-group-id="7469036351-5">(</span><span·class="n">A2</span><span·class="p"·data-group-id="7469036351-5">)</span><span·class="p">.</span></code></pre><p>An·extendible·array·can·be·made·fixed-size·later:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">A3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">fix</span><span·class="p"·data-group-id="7225685834-1">(</span><span·class="n">A2</span><span·class="p"·data-group-id="7225685834-1">)</span><span·class="p">.</span></code></pre><p>A·fixed-size·array·does·not·grow·automatically·and·does·not·allow·accesses 
145 beyond·the·last·set·entry:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8671910318-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="8671910318-2">{</span><span·clas[·...·truncated·by·diffoscope;·len:·805,·SHA:·1654da439612d7dfdfe6c904be05004c7190bbdc5d0ad699d2114700ff24fa5a·...·]144 </span><span·class="p"·data-group-id="0155617751-2">[</span><span·class="p"·data-group-id="0155617751-3">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="0155617751[·...·truncated·by·diffoscope;·len:·1181,·SHA:·b72c2e6d7f850939c24a1ebbbac1788218e6e2f28f2a2e6e3f13f6426e934f0b·...·]
 145 beyond·the·last·set·entry:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5255050771-1">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="5255050771-2">{</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="5255050771-2">}</span><span·class="p"·data-group-id="5255050771-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5255050771-3">(</span><span·class="k">catch</span><span·class="w">·</span><span·class="nc">array</span><span·class="p">:</span><span·class="nf">set</span><span·class="p"·data-group-id="5255050771-4">(</span><span·class="mi">18</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A3</span><span·class="p"·data-group-id="5255050771-4">)</span><span·class="p"·data-group-id="5255050771-3">)</span><span·class="p">.</span><span·class="w">
146 </span><span·class="p"·data-group-id="8671910318-5">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="8671910318-6">{</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="8671910318[·...·truncated·by·diffoscope;·len:·568,·SHA:·86962f90463c2a1c7a80e1a2ce50721a2dc44a46605620d1029f10fbdb53a370·...·]-7">)</span><span·class="p">.</span></code></pre>146 </span><span·class="p"·data-group-id="5255050771-5">{</span><span·class="ss">&#39;EXIT&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="5255050771-6">{</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="5255050771[·...·truncated·by·diffoscope;·len:·568,·SHA:·139bcbfe55efa0ad5fe2eedb6ebbb6a87a96fac29561d7e8dec60b599b7e1cbf·...·]-7">)</span><span·class="p">.</span></code></pre>
147 ····</section>147 ····</section>
  
148 </div>148 </div>
  
149 ··<section·id="summary"·class="details-list">149 ··<section·id="summary"·class="details-list">
150 ····<h1·class="section-heading">150 ····<h1·class="section-heading">
151 ······<a·class="hover-link"·href="#summary">151 ······<a·class="hover-link"·href="#summary">
Offset 1180, 15 lines modifiedOffset 1180, 15 lines modified
1180 ······</div>1180 ······</div>
  
1181 <p>Creates·a·new·array·according·to·the·specified·options.·By·default,·the·array·is1181 <p>Creates·a·new·array·according·to·the·specified·options.·By·default,·the·array·is
1182 extendible·and·has·initial·size·zero.·Array·indices·start·at·<code·class="inline">0</code>.</p><p><code·class="inline">Options</code>·is·a·single·term·or·a·list·of·terms,·selected·from·the·following:</p><ul><li><p><strong><code·class="inline">N::integer()·&gt;=·0</code>·or·<code·class="inline">{size,·N::integer()·&gt;=·0}</code></strong>·-·Specifies·the·initial1182 extendible·and·has·initial·size·zero.·Array·indices·start·at·<code·class="inline">0</code>.</p><p><code·class="inline">Options</code>·is·a·single·term·or·a·list·of·terms,·selected·from·the·following:</p><ul><li><p><strong><code·class="inline">N::integer()·&gt;=·0</code>·or·<code·class="inline">{size,·N::integer()·&gt;=·0}</code></strong>·-·Specifies·the·initial
1183 array·size;·this·also·implies·<code·class="inline">{fixed,·true}</code>.·If·<code·class="inline">N</code>·is·not·a·non-negative1183 array·size;·this·also·implies·<code·class="inline">{fixed,·true}</code>.·If·<code·class="inline">N</code>·is·not·a·non-negative
1184 integer,·the·call·fails·with·reason·<code·class="inline">badarg</code>.</p></li><li><p><strong><code·class="inline">fixed</code>·or·<code·class="inline">{fixed,·true}</code></strong>·-·Creates·a·fixed-size·array.·See·also·<a·href="#fix/1"><code·class="inline">fix/1</code></a>.</p></li><li><p><strong><code·class="inline">{fixed,·false}</code></strong>·-·Creates·an·extendible·(non-fixed-size)·array.</p></li><li><p><strong><code·class="inline">{default,·Value}</code></strong>·-·Sets·the·default·value·for·the·array·to·<code·class="inline">Value</code>.</p></li></ul><p>Options·are·processed·in·the·order·they·occur·in·the·list,·that·is,·later1184 integer,·the·call·fails·with·reason·<code·class="inline">badarg</code>.</p></li><li><p><strong><code·class="inline">fixed</code>·or·<code·class="inline">{fixed,·true}</code></strong>·-·Creates·a·fixed-size·array.·See·also·<a·href="#fix/1"><code·class="inline">fix/1</code></a>.</p></li><li><p><strong><code·class="inline">{fixed,·false}</code></strong>·-·Creates·an·extendible·(non-fixed-size)·array.</p></li><li><p><strong><code·class="inline">{default,·Value}</code></strong>·-·Sets·the·default·value·for·the·array·to·<code·class="inline">Value</code>.</p></li></ul><p>Options·are·processed·in·the·order·they·occur·in·the·list,·that·is,·later
1185 options·have·higher·precedence.</p><p>The·default·value·is·used·as·the·value·of·uninitialized·entries,·and·cannot·be1185 options·have·higher·precedence.</p><p>The·default·value·is·used·as·the·value·of·uninitialized·entries,·and·cannot·be
1186 changed·once·the·array·has·been·created.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">array</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="9588706124-1">(</span><span·class="mi">100</span><span·class="p"·data-group-id="9588706124-1">)</span></code></pre><p>creates·a·fixed-size·array·of·size·100.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">array</span><span·class="p">:<[·...·truncated·by·diffoscope;·len:·1391,·SHA:·781612feff37f3e664ddf99a42001df7dc92a99729f3e680e5bdd8fb398cde76·...·]-1">)</span></code></pre><p>creates·an·extendible·array·with·initial·size·10·whose·default·value·is·<code·class="inline">-1</code>.</p><p>See·also·<a·href="#fix/1"><code·class="inline">fix/1</code></a>,·<a·href="#from_list/2"><code·class="inline">from_list/2</code></a>,·<a·href="#get/2"><code·class="inline">get/2</code></a>,·<a·href="#new/0"><code·class="inline">new/0</code></a>,·<a·href="#new/2"><code·class="inline">new/2</code></a>,·<a·href="#set/3"><code·class="inline">set/3</code></a>.</p>1186 changed·once·the·array·has·been·created.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">array</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="3866873603-1">(</span><span·class="mi">100</span><span·class="p"·data-group-id="3866873603-1">)</span></code></pre><p>creates·a·fixed-size·array·of·size·100.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">array</span><span·class="p">:<[·...·truncated·by·diffoscope;·len:·1391,·SHA:·d84eba1de986d4bcd62d759a860de7085d447518fe02bb83deb40ec1fc4048ae·...·]-1">)</span></code></pre><p>creates·an·extendible·array·with·initial·size·10·whose·default·value·is·<code·class="inline">-1</code>.</p><p>See·also·<a·href="#fix/1"><code·class="inline">fix/1</code></a>,·<a·href="#from_list/2"><code·class="inline">from_list/2</code></a>,·<a·href="#get/2"><code·class="inline">get/2</code></a>,·<a·href="#new/0"><code·class="inline">new/0</code></a>,·<a·href="#new/2"><code·class="inline">new/2</code></a>,·<a·href="#set/3"><code·class="inline">set/3</code></a>.</p>
1187 ··</section>1187 ··</section>
1188 </section>1188 </section>
1189 <section·class="detail"·id="new/2">1189 <section·class="detail"·id="new/2">
  
1190 ··<div·class="detail-header">1190 ··<div·class="detail-header">
1191 ····<a·href="#new/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1191 ····<a·href="#new/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1192 ······<i·class="ri-link-m"·aria-hidden="true"></i>1192 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1213, 15 lines modifiedOffset 1213, 15 lines modified
1213 ······</div>1213 ······</div>
  
1214 <p>Creates·a·new·array·according·to·the·specified·size·and·options.</p><p>If·<code·class="inline">Size</code>·is·not·a·non-negative·integer,·the·call·fails·with·reason·<code·class="inline">badarg</code>.1214 <p>Creates·a·new·array·according·to·the·specified·size·and·options.</p><p>If·<code·class="inline">Size</code>·is·not·a·non-negative·integer,·the·call·fails·with·reason·<code·class="inline">badarg</code>.
1215 By·default,·the·array·has·fixed·size.·Notice·that·any·size·specifications·in1215 By·default,·the·array·has·fixed·size.·Notice·that·any·size·specifications·in
1216 <code·class="inline">Options</code>·override·parameter·<code·class="inline">Size</code>.</p><p>If·<code·class="inline">Options</code>·is·a·list,·this·is·equivalent·to1216 <code·class="inline">Options</code>·override·parameter·<code·class="inline">Size</code>.</p><p>If·<code·class="inline">Options</code>·is·a·list,·this·is·equivalent·to
1217 <a·href="#new/1"><code·class="inline">new([{size,·Size}·|·Options])</code></a>,·otherwise·it·is·equivalent·to1217 <a·href="#new/1"><code·class="inline">new([{size,·Size}·|·Options])</code></a>,·otherwise·it·is·equivalent·to
1218 <a·href="#new/1"><code·class="inline">new([{size,·Size}·|·[Options]])</code></a>.·However,·using·this·function1218 <a·href="#new/1"><code·class="inline">new([{size,·Size}·|·[Options]])</code></a>.·However,·using·this·function
1219 directly·is·more·efficient.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">array</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="5002971473-1">(</span><span·class="mi">100</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5002971473-2">{</span><span·class="ss">default</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·67,·SHA:·fe051788abb7036f8c8f8564f04d149c25d7a8463b73b239992152ae5b60600c·...·]-1">)</span></code></pre><p>creates·a·fixed-size·array·of·size·100,·whose·default·value·is·<code·class="inline">0</code>.</p><p>See·also·<a·href="#new/1"><code·class="inline">new/1</code></a>.</p>1219 directly·is·more·efficient.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">array</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="5377771966-1">(</span><span·class="mi">100</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5377771966-2">{</span><span·class="ss">default</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·67,·SHA:·b8b644370902cc803956f4e0d2a27c7fd82030939dd10cc172ee174df9ad56b6·...·]-1">)</span></code></pre><p>creates·a·fixed-size·array·of·size·100,·whose·default·value·is·<code·class="inline">0</code>.</p><p>See·also·<a·href="#new/1"><code·class="inline">new/1</code></a>.</p>
1220 ··</section>1220 ··</section>
1221 </section>1221 </section>
1222 <section·class="detail"·id="relax/1">1222 <section·class="detail"·id="relax/1">
  
1223 ··<div·class="detail-header">1223 ··<div·class="detail-header">
1224 ····<a·href="#relax/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1224 ····<a·href="#relax/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1225 ······<i·class="ri-link-m"·aria-hidden="true"></i>1225 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1655, 15 lines modifiedOffset 1655, 15 lines modified
1655 ······<p·class="built-using">1655 ······<p·class="built-using">
1656 ········Built·using1656 ········Built·using
1657 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1657 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1658 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1658 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1659 ······</p>1659 ······</p>
1660 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1660 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1661 ····</footer>1661 ····</footer>
1662 ··</div>1662 ··</div>
1663 </main>1663 </main>
1664 </div>1664 </div>
1665 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1665 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1666 <script>1666 <script>
1667 ··document.addEventListener("DOMContentLoaded",·function·()·{1667 ··document.addEventListener("DOMContentLoaded",·function·()·{
770 B
html2text {}
Max HTML report size reached
8.67 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/assert_hrl.html
    
Offset 128, 15 lines modifiedOffset 128, 15 lines modified
128 <p>Assert·macros.</p><h2·id="description"·class="section-heading">128 <p>Assert·macros.</p><h2·id="description"·class="section-heading">
129 ··<a·href="#description"·class="hover-link">129 ··<a·href="#description"·class="hover-link">
130 ····<i·class="ri-link-m"·aria-hidden="true"></i>130 ····<i·class="ri-link-m"·aria-hidden="true"></i>
131 ··</a>131 ··</a>
132 ··<span·class="text">Description</span>132 ··<span·class="text">Description</span>
133 </h2>133 </h2>
134 <p>The·include·file·<code·class="inline">assert.hrl</code>·provides·macros·for·inserting·assertions·in·your134 <p>The·include·file·<code·class="inline">assert.hrl</code>·provides·macros·for·inserting·assertions·in·your
135 program·code.</p><p>Include·the·following·directive·in·the·module·from·which·the·function·is·called:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7221960016-1">(</span><span·class="s">&quot;stdlib/include/assert.hrl&quot;</span><span·class="p"·data-group-id="7221960016-1">)</span><span·class="p">.</span></code></pre><p>When·an·assertion·succeeds,·the·assert·macro·yields·the·atom·<code·class="inline">ok</code>.·When·an135 program·code.</p><p>Include·the·following·directive·in·the·module·from·which·the·function·is·called:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="7845553854-1">(</span><span·class="s">&quot;stdlib/include/assert.hrl&quot;</span><span·class="p"·data-group-id="7845553854-1">)</span><span·class="p">.</span></code></pre><p>When·an·assertion·succeeds,·the·assert·macro·yields·the·atom·<code·class="inline">ok</code>.·When·an
136 assertion·fails,·an·exception·of·type·<code·class="inline">error</code>·is·generated.·The·associated·error136 assertion·fails,·an·exception·of·type·<code·class="inline">error</code>·is·generated.·The·associated·error
137 term·has·the·form·<code·class="inline">{Macro,·Info}</code>.·<code·class="inline">Macro</code>·is·the·macro·name,·for·example,137 term·has·the·form·<code·class="inline">{Macro,·Info}</code>.·<code·class="inline">Macro</code>·is·the·macro·name,·for·example,
138 <code·class="inline">assertEqual</code>.·<code·class="inline">Info</code>·is·a·list·of·tagged·values,·such·as138 <code·class="inline">assertEqual</code>.·<code·class="inline">Info</code>·is·a·list·of·tagged·values,·such·as
139 <code·class="inline">[{module,·M},·{line,·L},·...]</code>,·which·gives·more·information·about·the·location139 <code·class="inline">[{module,·M},·{line,·L},·...]</code>,·which·gives·more·information·about·the·location
140 and·cause·of·the·exception.·All·entries·in·the·<code·class="inline">Info</code>·list·are·optional;·do·not140 and·cause·of·the·exception.·All·entries·in·the·<code·class="inline">Info</code>·list·are·optional;·do·not
141 rely·programmatically·on·any·of·them·being·present.</p><p>Each·assert·macro·has·a·corresponding·version·with·an·extra·argument,·for·adding141 rely·programmatically·on·any·of·them·being·present.</p><p>Each·assert·macro·has·a·corresponding·version·with·an·extra·argument,·for·adding
142 comments·to·assertions.·These·can·for·example·be·printed·as·part·of·error142 comments·to·assertions.·These·can·for·example·be·printed·as·part·of·error
Offset 156, 15 lines modifiedOffset 156, 15 lines modified
156 ····<i·class="ri-link-m"·aria-hidden="true"></i>156 ····<i·class="ri-link-m"·aria-hidden="true"></i>
157 ··</a>157 ··</a>
158 ··<span·class="text">Macros</span>158 ··<span·class="text">Macros</span>
159 </h2>159 </h2>
160 <ul><li><p><strong><code·class="inline">assert(BoolExpr)</code></strong></p></li><li><p><strong><code·class="inline">assert(BoolExpr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">BoolExpr</code>·completes·normally160 <ul><li><p><strong><code·class="inline">assert(BoolExpr)</code></strong></p></li><li><p><strong><code·class="inline">assert(BoolExpr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">BoolExpr</code>·completes·normally
161 returning·<code·class="inline">true</code>.</p></li><li><p><strong><code·class="inline">assertNot(BoolExpr)</code></strong></p></li><li><p><strong><code·class="inline">assertNot(BoolExpr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">BoolExpr</code>·completes·normally161 returning·<code·class="inline">true</code>.</p></li><li><p><strong><code·class="inline">assertNot(BoolExpr)</code></strong></p></li><li><p><strong><code·class="inline">assertNot(BoolExpr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">BoolExpr</code>·completes·normally
162 returning·<code·class="inline">false</code>.</p></li><li><p><strong><code·class="inline">assertMatch(GuardedPattern,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertMatch(GuardedPattern,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>·completes162 returning·<code·class="inline">false</code>.</p></li><li><p><strong><code·class="inline">assertMatch(GuardedPattern,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertMatch(GuardedPattern,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>·completes
163 normally·yielding·a·value·that·matches·<code·class="inline">GuardedPattern</code>,·for·example:</p><pre><code·class="text">?assertMatch({bork,·_},·f())</code></pre><p>Notice·that·a·guard·<code·class="inline">when·...</code>·can·be·included:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">?</span><span·class="nf">assertMatch</span><span·class="p"·data-group-id="8261676875-1">(</span><span·class="p"·data-group-id="8261676875-2">{</span><span·class="ss">bork</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="8261676875-2">}</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·389,·SHA:·6940e505b79273aa15c84052eca9d4cbfd1a0263837094a97b481e19d135b435·...·]75-1">)</span></code></pre></li><li><p><strong><code·class="inline">assertNotMatch(GuardedPattern,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertNotMatch(GuardedPattern,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>163 normally·yielding·a·value·that·matches·<code·class="inline">GuardedPattern</code>,·for·example:</p><pre><code·class="text">?assertMatch({bork,·_},·f())</code></pre><p>Notice·that·a·guard·<code·class="inline">when·...</code>·can·be·included:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">?</span><span·class="nf">assertMatch</span><span·class="p"·data-group-id="0558102475-1">(</span><span·class="p"·data-group-id="0558102475-2">{</span><span·class="ss">bork</span><span·class="p">,</span><span·class="w">·</span><span·class="n">X</span><span·class="p"·data-group-id="0558102475-2">}</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·389,·SHA:·a565ec7c56827e731dc2eef4d409961ddaf7166f983b59efa3cb8f66d332a44e·...·]75-1">)</span></code></pre></li><li><p><strong><code·class="inline">assertNotMatch(GuardedPattern,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertNotMatch(GuardedPattern,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>
164 completes·normally·yielding·a·value·that·does·not·match·<code·class="inline">GuardedPattern</code>.</p><p>As·in·<code·class="inline">assertMatch</code>,·<code·class="inline">GuardedPattern</code>·can·have·a·<code·class="inline">when</code>·part.</p></li><li><p><strong><code·class="inline">assertEqual(ExpectedValue,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertEqual(ExpectedValue,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>·completes164 completes·normally·yielding·a·value·that·does·not·match·<code·class="inline">GuardedPattern</code>.</p><p>As·in·<code·class="inline">assertMatch</code>,·<code·class="inline">GuardedPattern</code>·can·have·a·<code·class="inline">when</code>·part.</p></li><li><p><strong><code·class="inline">assertEqual(ExpectedValue,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertEqual(ExpectedValue,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>·completes
165 normally·yielding·a·value·that·is·exactly·equal·to·<code·class="inline">ExpectedValue</code>.</p></li><li><p><strong><code·class="inline">assertNotEqual(ExpectedValue,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertNotEqual(ExpectedValue,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>165 normally·yielding·a·value·that·is·exactly·equal·to·<code·class="inline">ExpectedValue</code>.</p></li><li><p><strong><code·class="inline">assertNotEqual(ExpectedValue,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertNotEqual(ExpectedValue,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>
166 completes·normally·yielding·a·value·that·is·not·exactly·equal·to166 completes·normally·yielding·a·value·that·is·not·exactly·equal·to
167 <code·class="inline">ExpectedValue</code>.</p></li><li><p><strong><code·class="inline">assertException(Class,·Term,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertException(Class,·Term,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>167 <code·class="inline">ExpectedValue</code>.</p></li><li><p><strong><code·class="inline">assertException(Class,·Term,·Expr)</code></strong></p></li><li><p><strong><code·class="inline">assertException(Class,·Term,·Expr,·Comment)</code></strong>·-·Tests·that·<code·class="inline">Expr</code>
168 completes·abnormally·with·an·exception·of·type·<code·class="inline">Class</code>·and·with·the·associated168 completes·abnormally·with·an·exception·of·type·<code·class="inline">Class</code>·and·with·the·associated
169 <code·class="inline">Term</code>.·The·assertion·fails·if·<code·class="inline">Expr</code>·raises·a·different·exception·or·if·it169 <code·class="inline">Term</code>.·The·assertion·fails·if·<code·class="inline">Expr</code>·raises·a·different·exception·or·if·it
170 completes·normally·returning·any·value.</p><p>Notice·that·both·<code·class="inline">Class</code>·and·<code·class="inline">Term</code>·can·be·guarded·patterns,·as·in170 completes·normally·returning·any·value.</p><p>Notice·that·both·<code·class="inline">Class</code>·and·<code·class="inline">Term</code>·can·be·guarded·patterns,·as·in
Offset 218, 15 lines modifiedOffset 218, 15 lines modified
218 ······<p·class="built-using">218 ······<p·class="built-using">
219 ········Built·using219 ········Built·using
220 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the220 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
221 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>221 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
222 ······</p>222 ······</p>
223 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>223 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
224 ····</footer>224 ····</footer>
225 ··</div>225 ··</div>
226 </main>226 </main>
227 </div>227 </div>
228 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>228 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
229 <script>229 <script>
230 ··document.addEventListener("DOMContentLoaded",·function·()·{230 ··document.addEventListener("DOMContentLoaded",·function·()·{
727 B
html2text {}
Max HTML report size reached
9.93 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/base64.html
    
Offset 667, 23 lines modifiedOffset 667, 23 lines modified
667 ····················Data·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>667 ····················Data·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>
  
668 ······</div>668 ······</div>
  
669 <p>Decodes·a·base64·string·encoded·using·the·standard·alphabet·according·to669 <p>Decodes·a·base64·string·encoded·using·the·standard·alphabet·according·to
670 <a·href="https://datatracker.ietf.org/doc/html/rfc4648#section-4">RFC·4648·Section·4</a>·to670 <a·href="https://datatracker.ietf.org/doc/html/rfc4648#section-4">RFC·4648·Section·4</a>·to
671 plain·ASCII.</p><p>The·function·will·strips·away·any·whitespace·characters·and·check·for·the671 plain·ASCII.</p><p>The·function·will·strips·away·any·whitespace·characters·and·check·for·the
672 the·correct·number·of·<code·class="inline">=</code>·padding·characters·at·the·end·of·the·encoded·string.</p><p>See·<a·href="#t:decode_options/0"><code·class="inline">decode_options/0</code></a>·for·details·on·which·options·can·be·passed.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="1482367648-1">(</span><span·class="s">&quot;AQIDBA==&quot;</span><span·class="p"·data-group-id="1482367648-1">)</span><span·class="p">.</span><span·class="w">672 the·correct·number·of·<code·class="inline">=</code>·padding·characters·at·the·end·of·the·encoded·string.</p><p>See·<a·href="#t:decode_options/0"><code·class="inline">decode_options/0</code></a>·for·details·on·which·options·can·be·passed.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="1575558644-1">(</span><span·class="s">&quot;AQIDBA==&quot;</span><span·class="p"·data-group-id="1575558644-1">)</span><span·class="p">.</span><span·class="w">
673 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">673 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
674 2&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="1482367648-2">(</span><span·class="s">&quot;AQ·ID·BA==&quot;</span><span·class="p"·data-group-id="1482367648-2">)</span><span·class="p">.</span><span·class="w">674 2&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="1575558644-2">(</span><span·class="s">&quot;AQ·ID·BA==&quot;</span><span·class="p"·data-group-id="1575558644-2">)</span><span·class="p">.</span><span·class="w">
675 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">675 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
676 3&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="1482367648-3">(</span><span·class="s">&quot;AQIDBA=&quot;</span><span·class="p"·data-group-id="1482367648-3">)</span><span·class="p">.</span><span·class="w">676 3&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="1575558644-3">(</span><span·class="s">&quot;AQIDBA=&quot;</span><span·class="p"·data-group-id="1575558644-3">)</span><span·class="p">.</span><span·class="w">
677 </span><span·class="gt">**·exception·error:·missing_padding677 </span><span·class="gt">**·exception·error:·missing_padding
678 ·····in·function··base64:decode_list/7·(base64.erl,·line·734)678 ·····in·function··base64:decode_list/7·(base64.erl,·line·734)
679 ········***·data·to·decode·is·missing·final·=·padding·characters,·if·this·is·intended,·use·the·`padding·=&gt;·false`·option</span><span·class="gp·unselectable">679 ········***·data·to·decode·is·missing·final·=·padding·characters,·if·this·is·intended,·use·the·`padding·=&gt;·false`·option</span><span·class="gp·unselectable">
680 4&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="1482367648-4">(</span><span·class="s">&quot;AQIDBA=&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1482367648-5">#{</span><span·class="w">·</span><span·class="ss">padding</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·187,·SHA:·2cdc3666db1deafbbe64367ddc26712664edb9088c644e2a4568be7fdb1a86c2·...·]-4">)</span><span·class="p">.</span><span·class="w">680 4&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="1575558644-4">(</span><span·class="s">&quot;AQIDBA=&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1575558644-5">#{</span><span·class="w">·</span><span·class="ss">padding</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·187,·SHA:·a711024b5a4686950bec5e013d8423ed782c1bfd78b4e231559208607ad82491·...·]-4">)</span><span·class="p">.</span><span·class="w">
681 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span></code></pre>681 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span></code></pre>
682 ··</section>682 ··</section>
683 </section>683 </section>
684 <section·class="detail"·id="decode_to_string/1">684 <section·class="detail"·id="decode_to_string/1">
  
685 ··<div·class="detail-header">685 ··<div·class="detail-header">
686 ····<a·href="#decode_to_string/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">686 ····<a·href="#decode_to_string/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 930, 17 lines modifiedOffset 930, 17 lines modified
930 ·························Data·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>930 ·························Data·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>
  
931 ······</div>931 ······</div>
  
932 <p>Decodes·a·base64·&quot;mime&quot;·string·encoded·using·the·standard·alphabet·according·to932 <p>Decodes·a·base64·&quot;mime&quot;·string·encoded·using·the·standard·alphabet·according·to
933 <a·href="https://datatracker.ietf.org/doc/html/rfc4648#section-4">RFC·4648·Section·4</a>·to933 <a·href="https://datatracker.ietf.org/doc/html/rfc4648#section-4">RFC·4648·Section·4</a>·to
934 plain·ASCII.</p><p>The·function·will·strips·away·any·illegal·characters.·It·does·<em>not</em>·check·for·the934 plain·ASCII.</p><p>The·function·will·strips·away·any·illegal·characters.·It·does·<em>not</em>·check·for·the
935 the·correct·number·of·<code·class="inline">=</code>·padding·characters·at·the·end·of·the·encoded·string.</p><p>See·<a·href="#t:decode_options/0"><code·class="inline">decode_options/0</code></a>·for·details·on·which·options·can·be·passed.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">mime_decode</span><span·class="p"·data-group-id="9338967319-1">(</span><span·class="s">&quot;AQIDBA==&quot;</span><span·class="p"·data-group-id="9338967319-1">)</span><span·class="p">.</span><span·class="w">935 the·correct·number·of·<code·class="inline">=</code>·padding·characters·at·the·end·of·the·encoded·string.</p><p>See·<a·href="#t:decode_options/0"><code·class="inline">decode_options/0</code></a>·for·details·on·which·options·can·be·passed.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">mime_decode</span><span·class="p"·data-group-id="7455150683-1">(</span><span·class="s">&quot;AQIDBA==&quot;</span><span·class="p"·data-group-id="7455150683-1">)</span><span·class="p">.</span><span·class="w">
936 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">936 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
937 2&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">mime_decode</span><span·class="p"·data-group-id="9338967319-2">(</span><span·class="s">&quot;AQIDB=A=&quot;</span><span·class="p"·data-group-id="9338967319-2">)</span><span·class="p">.</span><span·class="w">937 2&gt;·</span><span·class="nc">base64</span><span·class="p">:</span><span·class="nf">mime_decode</span><span·class="p"·data-group-id="7455150683-2">(</span><span·class="s">&quot;AQIDB=A=&quot;</span><span·class="p"·data-group-id="7455150683-2">)</span><span·class="p">.</span><span·class="w">
938 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span></code></pre>938 </span><span·class="p">&lt;&lt;</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">&gt;&gt;</span></code></pre>
939 ··</section>939 ··</section>
940 </section>940 </section>
941 <section·class="detail"·id="mime_decode_to_string/1">941 <section·class="detail"·id="mime_decode_to_string/1">
  
942 ··<div·class="detail-header">942 ··<div·class="detail-header">
943 ····<a·href="#mime_decode_to_string/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">943 ····<a·href="#mime_decode_to_string/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1029, 15 lines modifiedOffset 1029, 15 lines modified
1029 ······<p·class="built-using">1029 ······<p·class="built-using">
1030 ········Built·using1030 ········Built·using
1031 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1031 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1032 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1032 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1033 ······</p>1033 ······</p>
1034 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1034 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1035 ····</footer>1035 ····</footer>
1036 ··</div>1036 ··</div>
1037 </main>1037 </main>
1038 </div>1038 </div>
1039 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1039 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1040 <script>1040 <script>
1041 ··document.addEventListener("DOMContentLoaded",·function·()·{1041 ··document.addEventListener("DOMContentLoaded",·function·()·{
873 B
html2text {}
Max HTML report size reached
26.5 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/beam_lib.html
    
Offset 147, 16 lines modifiedOffset 147, 16 lines modified
147 <a·href="#strip_files/1"><code·class="inline">strip_files/1</code></a>,·and/or·<a·href="#strip_release/1"><code·class="inline">strip_release/1</code></a>.</p><h2·id="module-reconstruct-source-code"·class="section-heading">147 <a·href="#strip_files/1"><code·class="inline">strip_files/1</code></a>,·and/or·<a·href="#strip_release/1"><code·class="inline">strip_release/1</code></a>.</p><h2·id="module-reconstruct-source-code"·class="section-heading">
148 ··<a·href="#module-reconstruct-source-code"·class="hover-link">148 ··<a·href="#module-reconstruct-source-code"·class="hover-link">
149 ····<i·class="ri-link-m"·aria-hidden="true"></i>149 ····<i·class="ri-link-m"·aria-hidden="true"></i>
150 ··</a>150 ··</a>
151 ··<span·class="text">Reconstruct·Source·Code</span>151 ··<span·class="text">Reconstruct·Source·Code</span>
152 </h2>152 </h2>
153 <p>The·following·example·shows·how·to·reconstruct·Erlang·source·code·from·the·debug153 <p>The·following·example·shows·how·to·reconstruct·Erlang·source·code·from·the·debug
154 information·in·a·BEAM·file·<code·class="inline">Beam</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0672103276-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0672103276-2">{</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="0672103276-3">[</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·921,·SHA:·192986954ad6d8e36d614a1aa5d647098d8b12b970423c65dd32935654bc5031·...·]-6">)</span><span·class="p">.</span><span·class="w">154 information·in·a·BEAM·file·<code·class="inline">Beam</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1517873162-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="1517873162-2">{</span><span·class="p">_</span><span·class="p">,</span><span·class="p"·data-group-id="1517873162-3">[</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·921,·SHA:·38ec4b7ca881807c72c22b9de7e45ea9f72f3fd5ba15a7ae1500123d3c0a23ce·...·]-6">)</span><span·class="p">.</span><span·class="w">
155 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">fwrite</span><span·class="p"·data-group-id="0672103276-8">(</span><span·class="s">&quot;</span><span·class="si">~s</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0672103276-9">[</span><span·class="nc">erl_pr[·...·truncated·by·diffoscope;·len:·493,·SHA:·15ef8e7cd52abbb4793fdc28d3d3bb5214df81afd9a21cb5d267a044646ab8c9·...·]-8">)</span><span·class="p">.</span></code></pre><h2·id="module-encrypted-debug-information"·class="section-heading">155 </span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">fwrite</span><span·class="p"·data-group-id="1517873162-8">(</span><span·class="s">&quot;</span><span·class="si">~s</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1517873162-9">[</span><span·class="nc">erl_pr[·...·truncated·by·diffoscope;·len:·493,·SHA:·17e4963f37e13341a1afd98f2bd217b9ab2b0af007432cac4fb7c0b5c029e225·...·]-8">)</span><span·class="p">.</span></code></pre><h2·id="module-encrypted-debug-information"·class="section-heading">
156 ··<a·href="#module-encrypted-debug-information"·class="hover-link">156 ··<a·href="#module-encrypted-debug-information"·class="hover-link">
157 ····<i·class="ri-link-m"·aria-hidden="true"></i>157 ····<i·class="ri-link-m"·aria-hidden="true"></i>
158 ··</a>158 ··</a>
159 ··<span·class="text">Encrypted·Debug·Information</span>159 ··<span·class="text">Encrypted·Debug·Information</span>
160 </h2>160 </h2>
161 <p>The·debug·information·can·be·encrypted·to·keep·the·source·code·secret,·but·still161 <p>The·debug·information·can·be·encrypted·to·keep·the·source·code·secret,·but·still
162 be·able·to·use·tools·such·as·Debugger·or·Xref.</p><p>To·use·encrypted·debug·information,·a·key·must·be·provided·to·the·compiler·and162 be·able·to·use·tools·such·as·Debugger·or·Xref.</p><p>To·use·encrypted·debug·information,·a·key·must·be·provided·to·the·compiler·and
Offset 178, 21 lines modifiedOffset 178, 21 lines modified
178 ··</a>178 ··</a>
179 ··<span·class="text">.erlang.crypt</span>179 ··<span·class="text">.erlang.crypt</span>
180 </h2>180 </h2>
181 <p><code·class="inline">beam_lib</code>·searches·for·<code·class="inline">.erlang.crypt</code>·in·the·current·directory,·then·the181 <p><code·class="inline">beam_lib</code>·searches·for·<code·class="inline">.erlang.crypt</code>·in·the·current·directory,·then·the
182 <a·href="../../../../erts-15.0.1/doc/html/init.html#home">user's·home·directory</a>·and·then182 <a·href="../../../../erts-15.0.1/doc/html/init.html#home">user's·home·directory</a>·and·then
183 <a·href="filename.html#user_config"><code·class="inline">filename:basedir(user_config,·&quot;erlang&quot;)</code></a>.·If·the183 <a·href="filename.html#user_config"><code·class="inline">filename:basedir(user_config,·&quot;erlang&quot;)</code></a>.·If·the
184 file·is·found·and·contains·a·key,·<code·class="inline">beam_lib</code>·implicitly·creates·a·crypto·key·fun184 file·is·found·and·contains·a·key,·<code·class="inline">beam_lib</code>·implicitly·creates·a·crypto·key·fun
185 and·registers·it.</p><p>File·<code·class="inline">.erlang.crypt</code>·is·to·contain·a·single·list·of·tuples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3635405433-1">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mode</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·67,·SHA:·757c2b103c914acb66e2842efb57ee24a625c1d21b0e3916c7f5e3b40b7c9d60·...·]-1">}</span></code></pre><p><code·class="inline">Mode</code>·is·the·type·of·crypto·algorithm;·currently,·the·only·allowed·value·is185 and·registers·it.</p><p>File·<code·class="inline">.erlang.crypt</code>·is·to·contain·a·single·list·of·tuples:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1245864777-1">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mode</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·67,·SHA:·848c5c5252b95c43eac5a189e5b27b87f7450c881f047a7fba68c4a5a12a9e37·...·]-1">}</span></code></pre><p><code·class="inline">Mode</code>·is·the·type·of·crypto·algorithm;·currently,·the·only·allowed·value·is
186 <code·class="inline">des3_cbc</code>.·<code·class="inline">Module</code>·is·either·an·atom,·in·which·case·<code·class="inline">Key</code>·is·only·used·for·the186 <code·class="inline">des3_cbc</code>.·<code·class="inline">Module</code>·is·either·an·atom,·in·which·case·<code·class="inline">Key</code>·is·only·used·for·the
187 module·<code·class="inline">Module</code>,·or·<code·class="inline">[]</code>,·in·which·case·<code·class="inline">Key</code>·is·used·for·all·modules.·<code·class="inline">Key</code>·is187 module·<code·class="inline">Module</code>,·or·<code·class="inline">[]</code>,·in·which·case·<code·class="inline">Key</code>·is·used·for·all·modules.·<code·class="inline">Key</code>·is
188 the·non-empty·key·string.</p><p><code·class="inline">Key</code>·in·the·first·tuple·where·both·<code·class="inline">Mode</code>·and·<code·class="inline">Module</code>·match·is·used.</p><p>The·following·is·an·example·of·an·<code·class="inline">.erlang.crypt</code>·file·that·returns·the·same·key188 the·non-empty·key·string.</p><p><code·class="inline">Key</code>·in·the·first·tuple·where·both·<code·class="inline">Mode</code>·and·<code·class="inline">Module</code>·match·is·used.</p><p>The·following·is·an·example·of·an·<code·class="inline">.erlang.crypt</code>·file·that·returns·the·same·key
189 for·all·modules:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4237916835-1">[</span><span·class="p"·data-group-id="4237916835-2">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">des3_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·303,·SHA:·58bc955bf779201dbb6df58809bfec5d44ae0e3719653841dce0eaae2911531a·...·]-1">]</span><span·class="p">.</span></code></pre><p>The·following·is·a·slightly·more·complicated·example·of·an·<code·class="inline">.erlang.crypt</code>189 for·all·modules:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6787488923-1">[</span><span·class="p"·data-group-id="6787488923-2">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">des3_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·303,·SHA:·5f99043606eedc91962e846d0bf8068569e79a08ba7c90380c66d1d2c41e3cb7·...·]-1">]</span><span·class="p">.</span></code></pre><p>The·following·is·a·slightly·more·complicated·example·of·an·<code·class="inline">.erlang.crypt</code>
190 providing·one·key·for·module·<code·class="inline">t</code>·and·another·key·for·all·other·modules:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8737126036-1">[</span><span·class="p"·data-group-id="8737126036-2">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">des3_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">t<[·...·truncated·by·diffoscope;·len:·136,·SHA:·848472f72d074d189a06bdde3299d7b6c491daa165a58fbcaca14ebe575def59·...·]-2">}</span><span·class="p">,</span><span·class="w">190 providing·one·key·for·module·<code·class="inline">t</code>·and·another·key·for·all·other·modules:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7957873237-1">[</span><span·class="p"·data-group-id="7957873237-2">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">des3_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">t<[·...·truncated·by·diffoscope;·len:·136,·SHA:·61ac312e134938c1f499aa761bc1e24a4a065ea5a0ce9cf32412722b07c18b36·...·]-2">}</span><span·class="p">,</span><span·class="w">
191 ·</span><span·class="p"·data-group-id="8737126036-3">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">des3_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8737126036-4">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·250,·SHA:·fcc1bc6daf92ddcf385987df0c9a8e340a4ef642abc3a49d2c1017f96ee19387·...·]-1">]</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>Do·not·use·any·of·the·keys·in·these·examples.·Use·your·own·keys.</p></blockquote>191 ·</span><span·class="p"·data-group-id="7957873237-3">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">des3_cbc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7957873237-4">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·250,·SHA:·a315812197a6c5ca5d7b57edf0a3fe17617ee722b8130db2173b10c68d4f9f1e·...·]-1">]</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>Do·not·use·any·of·the·keys·in·these·examples.·Use·your·own·keys.</p></blockquote>
192 ····</section>192 ····</section>
  
193 </div>193 </div>
  
194 ··<section·id="summary"·class="details-list">194 ··<section·id="summary"·class="details-list">
195 ····<h1·class="section-heading">195 ····<h1·class="section-heading">
196 ······<a·class="hover-link"·href="#summary">196 ······<a·class="hover-link"·href="#summary">
Offset 1552, 19 lines modifiedOffset 1552, 19 lines modified
1552 ························when·CryptoKeyFun·::·<a·href="#t:crypto_fun/0">crypto_fun</a>(),·Reason·::·badfun·|·exists·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>1552 ························when·CryptoKeyFun·::·<a·href="#t:crypto_fun/0">crypto_fun</a>(),·Reason·::·badfun·|·exists·|·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
1553 ······</div>1553 ······</div>
  
1554 <p>Registers·an·unary·fun·that·is·called·if·<code·class="inline">beam_lib</code>·must·read·an·<code·class="inline">debug_info</code>1554 <p>Registers·an·unary·fun·that·is·called·if·<code·class="inline">beam_lib</code>·must·read·an·<code·class="inline">debug_info</code>
1555 chunk·that·has·been·encrypted.·The·fun·is·held·in·a·process·that·is·started·by1555 chunk·that·has·been·encrypted.·The·fun·is·held·in·a·process·that·is·started·by
1556 the·function.</p><p>If·a·fun·is·already·registered·when·attempting·to·register·a·fun,1556 the·function.</p><p>If·a·fun·is·already·registered·when·attempting·to·register·a·fun,
1557 <code·class="inline">{error,·exists}</code>·is·returned.</p><p>The·fun·must·handle·the·following·arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">CryptoKeyFun</span><span·class="p"·data-group-id="4681359224-1">(</span><span·class="ss">init</span><span·class="p"·data-group-id="4681359224-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">|</span><sp[·...·truncated·by·diffoscope;·len:·509,·SHA:·138439fcb6c6bfd0dff1c46216d22e8c9cf5393d694d9e401e8eca8500a3ab24·...·]-3">}</span></code></pre><p>Called·when·the·fun·is·registered,·in·the·process·that·holds·the·fun.·Here·the1557 <code·class="inline">{error,·exists}</code>·is·returned.</p><p>The·fun·must·handle·the·following·arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">CryptoKeyFun</span><span·class="p"·data-group-id="0488966028-1">(</span><span·class="ss">init</span><span·class="p"·data-group-id="0488966028-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">|</span><sp[·...·truncated·by·diffoscope;·len:·509,·SHA:·e3151ba31a659fc5ab61277a2ae923899c21dbea82a314a72795c8422b733e34·...·]-3">}</span></code></pre><p>Called·when·the·fun·is·registered,·in·the·process·that·holds·the·fun.·Here·the
1558 crypto·key·fun·can·do·any·necessary·initializations.·If·<code·class="inline">{ok,·NewCryptoKeyFun}</code>1558 crypto·key·fun·can·do·any·necessary·initializations.·If·<code·class="inline">{ok,·NewCryptoKeyFun}</code>
1559 is·returned,·<code·class="inline">NewCryptoKeyFun</code>·is·registered·instead·of·<code·class="inline">CryptoKeyFun</code>.·If1559 is·returned,·<code·class="inline">NewCryptoKeyFun</code>·is·registered·instead·of·<code·class="inline">CryptoKeyFun</code>.·If
1560 <code·class="inline">{error,·Term}</code>·is·returned,·the·registration·is·aborted·and1560 <code·class="inline">{error,·Term}</code>·is·returned,·the·registration·is·aborted·and
1561 <a·href="#crypto_key_fun/1"><code·class="inline">crypto_key_fun/1</code></a>·also·returns·<code·class="inline">{error,·Term}</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">CryptoKeyFun</span><span·class="p"·data-group-id="0116184108-1">(</span><span·class="p"·data-group-id="0116184108-2">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mode</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</[·...·truncated·by·diffoscope;·len:·177,·SHA:·30caf18ef50c8c13f5c9a77428eace7ee4cd48ba4b8299b458a6da579ee8553f·...·]8-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Key</span></code></pre><p>Called·when·the·key·is·needed·for·module·<code·class="inline">Module</code>·in·the·file·named·<code·class="inline">Filename</code>.1561 <a·href="#crypto_key_fun/1"><code·class="inline">crypto_key_fun/1</code></a>·also·returns·<code·class="inline">{error,·Term}</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">CryptoKeyFun</span><span·class="p"·data-group-id="3273614838-1">(</span><span·class="p"·data-group-id="3273614838-2">{</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Mode</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</[·...·truncated·by·diffoscope;·len:·177,·SHA:·1091b4f5a14ac2fd2262ce2e8bcb5bf21dec9e2b23b6a6d7d220f316c48042ff·...·]8-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Key</span></code></pre><p>Called·when·the·key·is·needed·for·module·<code·class="inline">Module</code>·in·the·file·named·<code·class="inline">Filename</code>.
1562 <code·class="inline">Mode</code>·is·the·type·of·crypto·algorithm;·currently,·the·only·possible·value·is1562 <code·class="inline">Mode</code>·is·the·type·of·crypto·algorithm;·currently,·the·only·possible·value·is
1563 <code·class="inline">des3_cbc</code>.·The·call·is·to·fail·(raise·an·exception)·if·no·key·is·available.</p><pre><code·class="text">CryptoKeyFun(clear)·-&gt;·term()</code></pre><p>Called·before·the·fun·is·unregistered.·Here·any·cleaning·up·can·be·done.·The1563 <code·class="inline">des3_cbc</code>.·The·call·is·to·fail·(raise·an·exception)·if·no·key·is·available.</p><pre><code·class="text">CryptoKeyFun(clear)·-&gt;·term()</code></pre><p>Called·before·the·fun·is·unregistered.·Here·any·cleaning·up·can·be·done.·The
1564 return·value·is·not·important,·but·is·passed·back·to·the·caller·of1564 return·value·is·not·important,·but·is·passed·back·to·the·caller·of
1565 <a·href="#clear_crypto_key_fun/0"><code·class="inline">clear_crypto_key_fun/0</code></a>·as·part·of·its·return·value.</p>1565 <a·href="#clear_crypto_key_fun/0"><code·class="inline">clear_crypto_key_fun/0</code></a>·as·part·of·its·return·value.</p>
1566 ··</section>1566 ··</section>
1567 </section>1567 </section>
1568 <section·class="detail"·id="diff_dirs/2">1568 <section·class="detail"·id="diff_dirs/2">
Offset 1923, 22 lines modifiedOffset 1923, 22 lines modified
  
1923 ······</div>1923 ······</div>
  
1924 <p>Returns·the·module·version·or·versions.·A·version·is·defined·by·module·attribute1924 <p>Returns·the·module·version·or·versions.·A·version·is·defined·by·module·attribute
1925 <code·class="inline">-vsn(Vsn)</code>.</p><p>If·this·attribute·is·not·specified,·the·version·defaults·to·the1925 <code·class="inline">-vsn(Vsn)</code>.</p><p>If·this·attribute·is·not·specified,·the·version·defaults·to·the
1926 checksum·of·the·module.·Notice·that·if·version·<code·class="inline">Vsn</code>·is·not·a·list,·it·is·made1926 checksum·of·the·module.·Notice·that·if·version·<code·class="inline">Vsn</code>·is·not·a·list,·it·is·made
1927 into·one,·that·is·<code·class="inline">{ok,{Module,[Vsn]}}</code>·is·returned.·If·there·are·many·<code·class="inline">-vsn</code>1927 into·one,·that·is·<code·class="inline">{ok,{Module,[Vsn]}}</code>·is·returned.·If·there·are·many·<code·class="inline">-vsn</code>
1928 module·attributes,·the·result·is·the·concatenated·list·of·versions.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">beam_lib</span><span·class="p">:</span><span·class="nf">version</span><span·class="p"·data-group-id="3135792038-1">(</span><span·class="ss">a</span><span·class="p"·data-group-id="3135792038-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·-vsn(1).</span><span·class="w">1928 module·attributes,·the·result·is·the·concatenated·list·of·versions.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">beam_lib</span><span·class="p">:</span><span·class="nf">version</span><span·class="p"·data-group-id="3197540181-1">(</span><span·class="ss">a</span><span·class="p"·data-group-id="3197540181-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·-vsn(1).</span><span·class="w">
1929 </span><span·class="p"·data-group-id="3135792038-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3135792038-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="p"·data-group-id="3135792038-4">[</span><span·class="mi">1</span><span·[·...·truncated·by·diffoscope;·len:·141,·SHA:·3ec28a27a0297ff4342ad05ae2f021dfd856ebbd1993d1ab1e9000cfdf839586·...·]-2">}</span><span·class="gp·unselectable">1929 </span><span·class="p"·data-group-id="3197540181-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3197540181-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="p"·data-group-id="3197540181-4">[</span><span·class="mi">1</span><span·[·...·truncated·by·diffoscope;·len:·141,·SHA:·69e31e8473717e10c92bffb1eefafe6e72980628246ef31dee098b112f27afa7·...·]-2">}</span><span·class="gp·unselectable">
1930 2&gt;·</span><span·class="nc">beam_lib</span><span·class="p">:</span><span·class="nf">version</span><span·class="p"·data-group-id="3135792038-5">(</span><span·class="ss">b</span><span·class="p"·data-group-id="3135792038-5">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·-vsn([1]).</span><span·class="w">1930 2&gt;·</span><span·class="nc">beam_lib</span><span·class="p">:</span><span·class="nf">version</span><span·class="p"·data-group-id="3197540181-5">(</span><span·class="ss">b</span><span·class="p"·data-group-id="3197540181-5">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·-vsn([1]).</span><span·class="w">
1931 </span><span·class="p"·data-group-id="3135792038-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3135792038-7">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="3135792038-8">[</span><span·class="mi">1</span><span·[·...·truncated·by·diffoscope;·len:·141,·SHA:·2f303a0876d00c87bad5ad7e40bb1ccc4d220ccf64c3f14f32d98ee4a76bbc2e·...·]-6">}</span><span·class="gp·unselectable">1931 </span><span·class="p"·data-group-id="3197540181-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3197540181-7">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="p"·data-group-id="3197540181-8">[</span><span·class="mi">1</span><span·[·...·truncated·by·diffoscope;·len:·141,·SHA:·3c8803b1d1e4081371d9ede02d1523bd4564fa40677fd17f2634ee69175320b2·...·]-6">}</span><span·class="gp·unselectable">
1932 3&gt;·</span><span·class="nc">beam_lib</span><span·class="p">:</span><span·class="nf">version</span><span·class="p"·data-group-id="3135792038-9">(</span><span·class="ss">c</span><span·class="p"·data-group-id="3135792038-9">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·-vsn([1]).·-vsn(2).</span><span·class="w">1932 3&gt;·</span><span·class="nc">beam_lib</span><span·class="p">:</span><span·class="nf">version</span><span·class="p"·data-group-id="3197540181-9">(</span><span·class="ss">c</span><span·class="p"·data-group-id="3197540181-9">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·-vsn([1]).·-vsn(2).</span><span·class="w">
1933 </span><span·class="p"·data-group-id="3135792038-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3135792038-11">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="p"·data-group-id="3135792038-12">[</span><span·class="mi">1</span><sp[·...·truncated·by·diffoscope;·len:·195,·SHA:·1e8cd8e8b805a5a121c927e23a8ac18b80daf3801dfb0f37b56bdc20ddd14c87·...·]-10">}</span><span·class="gp·unselectable">1933 </span><span·class="p"·data-group-id="3197540181-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3197540181-11">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="p"·data-group-id="3197540181-12">[</span><span·class="mi">1</span><sp[·...·truncated·by·diffoscope;·len:·195,·SHA:·d8990798cf396b3a4b6f15ffc2af72dbbc9ef9baa5bb29a8e712bd690f9b9ca1·...·]-10">}</span><span·class="gp·unselectable">
1934 4&gt;·</span><span·class="nc">beam_lib</span><span·class="p">:</span><span·class="nf">version</span><span·class="p"·data-group-id="3135792038-13">(</span><span·class="ss">d</span><span·class="p"·data-group-id="3135792038-13">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·no·-vsn·attribute</span><span·class="w">1934 4&gt;·</span><span·class="nc">beam_lib</span><span·class="p">:</span><span·class="nf">version</span><span·class="p"·data-group-id="3197540181-13">(</span><span·class="ss">d</span><span·class="p"·data-group-id="3197540181-13">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·no·-vsn·attribute</span><span·class="w">
1935 </span><span·class="p"·data-group-id="3135792038-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3135792038-15">{</span><span·class="ss">d</span><span·class="p">,</span><span·class="p"·data-group-id="3135792038-16">[</span><span·class="mi">27561320817[·...·truncated·by·diffoscope;·len:·184,·SHA:·e87600247768a2d3c90bd185d4967746827e510d863b85374b3fa7e9d2b79ff6·...·]-14">}</span></code></pre>1935 </span><span·class="p"·data-group-id="3197540181-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3197540181-15">{</span><span·class="ss">d</span><span·class="p">,</span><span·class="p"·data-group-id="3197540181-16">[</span><span·class="mi">27561320817[·...·truncated·by·diffoscope;·len:·184,·SHA:·0beef36b9b924b8741d8a2d749893ff9b1750c2919c7bf4e0d62102b6b969ad6·...·]-14">}</span></code></pre>
1936 ··</section>1936 ··</section>
1937 </section>1937 </section>
  
1938 ····</div>1938 ····</div>
1939 ··</section>1939 ··</section>
  
1940 ····<footer·class="footer">1940 ····<footer·class="footer">
Offset 1959, 15 lines modifiedOffset 1959, 15 lines modified
1959 ······<p·class="built-using">1959 ······<p·class="built-using">
1960 ········Built·using1960 ········Built·using
1961 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1961 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1962 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1962 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1963 ······</p>1963 ······</p>
1964 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1964 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1965 ····</footer>1965 ····</footer>
1966 ··</div>1966 ··</div>
1967 </main>1967 </main>
1968 </div>1968 </div>
1969 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1969 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1970 <script>1970 <script>
1971 ··document.addEventListener("DOMContentLoaded",·function·()·{1971 ··document.addEventListener("DOMContentLoaded",·function·()·{
541 B
html2text {}
Max HTML report size reached
93.7 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/binary.html
    
Offset 639, 15 lines modifiedOffset 639, 15 lines modified
  
639 ······<div·class="specs">639 ······<div·class="specs">
  
640 ··········<pre·translate="no"><span·class="attribute">-spec</span>·bin_to_list(Subject)·->·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:byte/0">byte</a>()]·when·Subject·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>640 ··········<pre·translate="no"><span·class="attribute">-spec</span>·bin_to_list(Subject)·->·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:byte/0">byte</a>()]·when·Subject·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>
  
641 ······</div>641 ······</div>
  
642 <p>Converts·<code·class="inline">Subject</code>·to·a·list·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:byte/0"><code·class="inline">byte/0</code></a>s,·each·representing·the·value·of·one·byte.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">bin_to_list</span><span·class="p"·data-group-id="0557145061-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;erlang&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0557145061-1">)</span><span·class="p">.</span><span·class="w">642 <p>Converts·<code·class="inline">Subject</code>·to·a·list·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:byte/0"><code·class="inline">byte/0</code></a>s,·each·representing·the·value·of·one·byte.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">bin_to_list</span><span·class="p"·data-group-id="3974676781-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;erlang&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3974676781-1">)</span><span·class="p">.</span><span·class="w">
643 </span><span·class="s">&quot;erlang&quot;</span><span·class="w">643 </span><span·class="s">&quot;erlang&quot;</span><span·class="w">
644 </span><span·class="c1">%%·or·[101,114,108,97,110,103]·in·list·notation.</span></code></pre>644 </span><span·class="c1">%%·or·[101,114,108,97,110,103]·in·list·notation.</span></code></pre>
645 ··</section>645 ··</section>
646 </section>646 </section>
647 <section·class="detail"·id="bin_to_list/2">647 <section·class="detail"·id="bin_to_list/2">
  
648 ··<div·class="detail-header">648 ··<div·class="detail-header">
Offset 705, 15 lines modifiedOffset 705, 15 lines modified
705 ·····················when·Subject·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),·Pos·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),·Len·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>().</pre>705 ·····················when·Subject·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),·Pos·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),·Len·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>().</pre>
  
706 ······</div>706 ······</div>
  
707 <p>Converts·<code·class="inline">Subject</code>·to·a·list·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:byte/0"><code·class="inline">byte/0</code></a>s,·each·representing·the·value·of·one707 <p>Converts·<code·class="inline">Subject</code>·to·a·list·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:byte/0"><code·class="inline">byte/0</code></a>s,·each·representing·the·value·of·one
708 byte.·<code·class="inline">PosLen</code>·or·alternatively·<code·class="inline">Pos</code>·and·<code·class="inline">Len</code>·denote·which·part·of·the708 byte.·<code·class="inline">PosLen</code>·or·alternatively·<code·class="inline">Pos</code>·and·<code·class="inline">Len</code>·denote·which·part·of·the
709 <code·class="inline">Subject</code>·binary·to·convert.·By·default,·the·entire·<code·class="inline">Subject</code>·binary·is709 <code·class="inline">Subject</code>·binary·to·convert.·By·default,·the·entire·<code·class="inline">Subject</code>·binary·is
710 converted.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">bin_to_list</span><span·class="p"·data-group-id="8857510647-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;erlang&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8857510647-2">{</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·138,·SHA:·6beb61193e700343dc512db4f80e5b0d01b220e6d4702cab8b75bc4668f70e8a·...·]-1">)</span><span·class="p">.</span><span·class="w">710 converted.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">bin_to_list</span><span·class="p"·data-group-id="3156745301-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;erlang&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3156745301-2">{</span><span·class="mi">1</span><span[·...·truncated·by·diffoscope;·len:·138,·SHA:·17e267f6fab9b34e5827ba8f0831296bea6999508d48dc7f6a022bec8eb7e93d·...·]-1">)</span><span·class="p">.</span><span·class="w">
711 </span><span·class="s">&quot;rla&quot;</span><span·class="w">711 </span><span·class="s">&quot;rla&quot;</span><span·class="w">
712 </span><span·class="c1">%%·or·[114,108,97]·in·list·notation.</span></code></pre><p>If·<code·class="inline">PosLen</code>·or·alternatively·<code·class="inline">Pos</code>·and·<code·class="inline">Len</code>·in·any·way·reference·outside·the712 </span><span·class="c1">%%·or·[114,108,97]·in·list·notation.</span></code></pre><p>If·<code·class="inline">PosLen</code>·or·alternatively·<code·class="inline">Pos</code>·and·<code·class="inline">Len</code>·in·any·way·reference·outside·the
713 binary,·a·<code·class="inline">badarg</code>·exception·is·raised.</p>713 binary,·a·<code·class="inline">badarg</code>·exception·is·raised.</p>
714 ··</section>714 ··</section>
715 </section>715 </section>
716 <section·class="detail"·id="compile_pattern/1">716 <section·class="detail"·id="compile_pattern/1">
  
Offset 847, 15 lines modifiedOffset 847, 15 lines modified
  
847 ······<div·class="specs">847 ······<div·class="specs">
  
848 ··········<pre·translate="no"><span·class="attribute">-spec</span>·decode_hex(Bin)·->·Bin2·when·Bin·::·<<_:_*16>>,·Bin2·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>848 ··········<pre·translate="no"><span·class="attribute">-spec</span>·decode_hex(Bin)·->·Bin2·when·Bin·::·<<_:_*16>>,·Bin2·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>().</pre>
  
849 ······</div>849 ······</div>
  
850 <p>Decodes·a·hex·encoded·binary·into·a·binary.</p><p><em>Example</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">decode_hex</span><span·class="p"·data-group-id="1346896670-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;66&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1346896670-1">)</span><span·class="p">.</span><span·class="w">850 <p>Decodes·a·hex·encoded·binary·into·a·binary.</p><p><em>Example</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">decode_hex</span><span·class="p"·data-group-id="1122057355-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;66&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1122057355-1">)</span><span·class="p">.</span><span·class="w">
851 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;f&quot;</span><span·class="p">&gt;&gt;</span></code></pre>851 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;f&quot;</span><span·class="p">&gt;&gt;</span></code></pre>
852 ··</section>852 ··</section>
853 </section>853 </section>
854 <section·class="detail"·id="decode_unsigned/1">854 <section·class="detail"·id="decode_unsigned/1">
  
855 ··<div·class="detail-header">855 ··<div·class="detail-header">
856 ····<a·href="#decode_unsigned/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">856 ····<a·href="#decode_unsigned/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 913, 19 lines modifiedOffset 913, 19 lines modified
913 ·····························Subject·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),913 ·····························Subject·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),
914 ·····························Endianness·::·big·|·little,914 ·····························Endianness·::·big·|·little,
915 ·····························Unsigned·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>().</pre>915 ·····························Unsigned·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>().</pre>
  
916 ······</div>916 ······</div>
  
917 <p>Converts·the·binary·digit·representation,·in·big·endian·or·little·endian,·of·a917 <p>Converts·the·binary·digit·representation,·in·big·endian·or·little·endian,·of·a
918 positive·integer·in·<code·class="inline">Subject</code>·to·an·Erlang·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">decode_unsigned</span><span·class="p"·data-group-id="6613270340-1">(</span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6613270340-1">)</span><span·class="p">.</span><span·class="w">918 positive·integer·in·<code·class="inline">Subject</code>·to·an·Erlang·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0"><code·class="inline">integer/0</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">decode_unsigned</span><span·class="p"·data-group-id="1266340975-1">(</span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="1266340975-1">)</span><span·class="p">.</span><span·class="w">
919 </span><span·class="mi">11111111</span><span·class="gp·unselectable">919 </span><span·class="mi">11111111</span><span·class="gp·unselectable">
920 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">decode_unsigned</span><span·class="p"·data-group-id="6613270340-2">(</span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·73,·SHA:·2dd74e3866247f4e5e5afe57687e41822a3c4d47a02de751c76c2906a65a0e43·...·]-2">)</span><span·class="p">.</span><span·class="w">920 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">decode_unsigned</span><span·class="p"·data-group-id="1266340975-2">(</span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·73,·SHA:·14542c197bddb84e0e9a78ed35a457c8c1a6dbaa8c4f1cdd2866f853d95bde91·...·]-2">)</span><span·class="p">.</span><span·class="w">
921 </span><span·class="mi">11111111</span><span·class="gp·unselectable">921 </span><span·class="mi">11111111</span><span·class="gp·unselectable">
922 3&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">decode_unsigned</span><span·class="p"·data-group-id="6613270340-3">(</span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·76,·SHA:·2b892040e813a6b52d72daf2092c0d3a7388a7b45b16e0f610697f273a88890e·...·]-3">)</span><span·class="p">.</span><span·class="w">922 3&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">decode_unsigned</span><span·class="p"·data-group-id="1266340975-3">(</span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·76,·SHA:·3fab3ab7d0264844e6415f900268c85a469c0812236f22ed5856014ac9321739·...·]-3">)</span><span·class="p">.</span><span·class="w">
923 </span><span·class="mi">13077161</span></code></pre>923 </span><span·class="mi">13077161</span></code></pre>
924 ··</section>924 ··</section>
925 </section>925 </section>
926 <section·class="detail"·id="encode_hex/1">926 <section·class="detail"·id="encode_hex/1">
  
927 ··<div·class="detail-header">927 ··<div·class="detail-header">
928 ····<a·href="#encode_hex/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">928 ····<a·href="#encode_hex/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 980, 21 lines modifiedOffset 980, 21 lines modified
  
980 ··········<pre·translate="no"><span·class="attribute">-spec</span>·encode_hex(Bin,·Case)·->·Bin2980 ··········<pre·translate="no"><span·class="attribute">-spec</span>·encode_hex(Bin,·Case)·->·Bin2
981 ····················when·Bin·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),·Case·::·lowercase·|·uppercase,·Bin2·::·<<_:_*16>>.</pre>981 ····················when·Bin·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),·Case·::·lowercase·|·uppercase,·Bin2·::·<<_:_*16>>.</pre>
  
982 ······</div>982 ······</div>
  
983 <p>Encodes·a·binary·into·a·hex·encoded·binary·using·the·specified·case·for·the983 <p>Encodes·a·binary·into·a·hex·encoded·binary·using·the·specified·case·for·the
984 hexadecimal·digits·&quot;a&quot;·to·&quot;f&quot;.</p><p>The·default·case·is·<code·class="inline">uppercase</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_hex</span><span·class="p"·data-group-id="0150872706-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;f&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0150872706-1">)</span><span·class="p">.</span><span·class="w">984 hexadecimal·digits·&quot;a&quot;·to·&quot;f&quot;.</p><p>The·default·case·is·<code·class="inline">uppercase</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_hex</span><span·class="p"·data-group-id="4622604119-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;f&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4622604119-1">)</span><span·class="p">.</span><span·class="w">
985 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;66&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">985 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;66&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
986 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_hex</span><span·class="p"·data-group-id="0150872706-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0150872706-2">)</span><span·class="p">.</span><span·class="w">986 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_hex</span><span·class="p"·data-group-id="4622604119-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4622604119-2">)</span><span·class="p">.</span><span·class="w">
987 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;2F&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">987 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;2F&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
988 3&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_hex</span><span·class="p"·data-group-id="0150872706-3">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">lowercase</span><span·class="p"·data-group-id="0150872706-3">)</span><span·class="p">.</span><span·class="w">988 3&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_hex</span><span·class="p"·data-group-id="4622604119-3">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">lowercase</span><span·class="p"·data-group-id="4622604119-3">)</span><span·class="p">.</span><span·class="w">
989 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;2f&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">989 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;2f&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
990 4&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_hex</span><span·class="p"·data-group-id="0150872706-4">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">uppercase</span><span·class="p"·data-group-id="0150872706-4">)</span><span·class="p">.</span><span·class="w">990 4&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_hex</span><span·class="p"·data-group-id="4622604119-4">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">uppercase</span><span·class="p"·data-group-id="4622604119-4">)</span><span·class="p">.</span><span·class="w">
991 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;2F&quot;</span><span·class="p">&gt;&gt;</span></code></pre>991 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;2F&quot;</span><span·class="p">&gt;&gt;</span></code></pre>
992 ··</section>992 ··</section>
993 </section>993 </section>
994 <section·class="detail"·id="encode_unsigned/1">994 <section·class="detail"·id="encode_unsigned/1">
  
995 ··<div·class="detail-header">995 ··<div·class="detail-header">
996 ····<a·href="#encode_unsigned/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">996 ····<a·href="#encode_unsigned/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1049, 19 lines modifiedOffset 1049, 19 lines modified
  
1049 ··········<pre·translate="no"><span·class="attribute">-spec</span>·encode_unsigned(Unsigned,·Endianness)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()1049 ··········<pre·translate="no"><span·class="attribute">-spec</span>·encode_unsigned(Unsigned,·Endianness)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()
1050 ·························when·Unsigned·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),·Endianness·::·big·|·little.</pre>1050 ·························when·Unsigned·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>(),·Endianness·::·big·|·little.</pre>
  
1051 ······</div>1051 ······</div>
  
1052 <p>Converts·a·positive·integer·to·the·smallest·possible·representation·in·a·binary1052 <p>Converts·a·positive·integer·to·the·smallest·possible·representation·in·a·binary
1053 digit·representation,·either·big·endian·or·little·endian.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_unsigned</span><span·class="p"·data-group-id="0510038349-1">(</span><span·class="mi">11111111</span><span·class="p"·data-group-id="0510038349-1">)</span><span·class="p">.</span><span·class="w">1053 digit·representation,·either·big·endian·or·little·endian.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_unsigned</span><span·class="p"·data-group-id="5665536306-1">(</span><span·class="mi">11111111</span><span·class="p"·data-group-id="5665536306-1">)</span><span·class="p">.</span><span·class="w">
1054 </span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">1054 </span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
1055 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_unsigned</span><span·class="p"·data-group-id="0510038349-2">(</span><span·class="mi">11111111</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">big</span><span·class="p"·data-group-id="0510038349-2">)</span><span·class="p">.</span><span·class="w">1055 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_unsigned</span><span·class="p"·data-group-id="5665536306-2">(</span><span·class="mi">11111111</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">big</span><span·class="p"·data-group-id="5665536306-2">)</span><span·class="p">.</span><span·class="w">
1056 </span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">1056 </span><span·class="p">&lt;&lt;</span><span·class="mi">169</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">199</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
1057 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_unsigned</span><span·class="p"·data-group-id="0510038349-3">(</span><span·class="mi">11111111</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">little</span><span·class="p"·data-group-id="0510038349-3">)</span><span·class="p">.</span><span·class="w">1057 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">encode_unsigned</span><span·class="p"·data-group-id="5665536306-3">(</span><span·class="mi">11111111</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">little</span><span·class="p"·data-group-id="5665536306-3">)</span><span·class="p">.</span><span·class="w">
1058 </span><span·class="p">&lt;&lt;</span><span·class="mi">199</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">169</span><span·class="p">&gt;&gt;</span></code></pre>1058 </span><span·class="p">&lt;&lt;</span><span·class="mi">199</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">169</span><span·class="p">&gt;&gt;</span></code></pre>
1059 ··</section>1059 ··</section>
1060 </section>1060 </section>
1061 <section·class="detail"·id="first/1">1061 <section·class="detail"·id="first/1">
  
1062 ··<div·class="detail-header">1062 ··<div·class="detail-header">
1063 ····<a·href="#first/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1063 ····<a·href="#first/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1177, 17 lines modifiedOffset 1177, 17 lines modified
1177 ······<div·class="specs">1177 ······<div·class="specs">
  
1178 ··········<pre·translate="no"><span·class="attribute">-spec</span>·longest_common_prefix(Binaries)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>()·when·Binaries·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),·...].</pre>1178 ··········<pre·translate="no"><span·class="attribute">-spec</span>·longest_common_prefix(Binaries)·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>()·when·Binaries·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>(),·...].</pre>
  
1179 ······</div>1179 ······</div>
  
1180 <p>Returns·the·length·of·the·longest·common·prefix·of·the·binaries·in·list1180 <p>Returns·the·length·of·the·longest·common·prefix·of·the·binaries·in·list
1181 <code·class="inline">Binaries</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">longest_common_prefix</span><span·class="p"·data-group-id="9275632686-1">(</span><span·class="p"·data-group-id="9275632686-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;erlang&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span[·...·truncated·by·diffoscope;·len:·169,·SHA:·da9494f80d33c23750a6ec8cb06e589f17ef8cc8795fa2118d670ca899f26b4c·...·]-1">)</span><span·class="p">.</span><span·class="w">1181 <code·class="inline">Binaries</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">longest_common_prefix</span><span·class="p"·data-group-id="8680248188-1">(</span><span·class="p"·data-group-id="8680248188-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;erlang&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span[·...·truncated·by·diffoscope;·len:·169,·SHA:·b1448c078159a655faf5cad816c7c5a21729e4b26a02baa6ad6103771600d204·...·]-1">)</span><span·class="p">.</span><span·class="w">
1182 </span><span·class="mi">2</span><span·class="gp·unselectable">1182 </span><span·class="mi">2</span><span·class="gp·unselectable">
1183 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">longest_common_prefix</span><span·class="p"·data-group-id="9275632686-3">(</span><span·class="p"·data-group-id="9275632686-4">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;erlang&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span[·...·truncated·by·diffoscope;·len:·165,·SHA:·7af8340261a493b8baf36c045ffe4dfd52e3620849a3937c802abea416e37009·...·]-3">)</span><span·class="p">.</span><span·class="w">1183 2&gt;·</span><span·class="nc">binary</span><span·class="p">:</span><span·class="nf">longest_common_prefix</span><span·class="p"·data-group-id="8680248188-3">(</span><span·class="p"·data-group-id="8680248188-4">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;erlang&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span[·...·truncated·by·diffoscope;·len:·165,·SHA:·61a64aee80e3ec6e293ca2c019e0599b2b99cd803e0b22476a165513c6921faa·...·]-3">)</span><span·class="p">.</span><span·class="w">
1184 </span><span·class="mi">0</span></code></pre><p>If·<code·class="inline">Binaries</code>·is·not·a·flat·non-empty·list·of·binaries,·a·<code·class="inline">badarg</code>·exception·is1184 </span><span·class="mi">0</span></code></pre><p>If·<code·class="inline">Binaries</code>·is·not·a·flat·non-empty·list·of·binaries,·a·<code·class="inline">badarg</code>·exception·is
1185 raised.</p>1185 raised.</p>
1186 ··</section>1186 ··</section>
1187 </section>1187 </section>
1188 <section·class="detail"·id="longest_common_suffix/1">1188 <section·class="detail"·id="longest_common_suffix/1">
  
1189 ··<div·class="detail-header">1189 ··<div·class="detail-header">
Max diff block lines reached; 72527/95136 bytes (76.24%) of diff not shown.
707 B
html2text {}
Max HTML report size reached
3.49 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/c.html
    
Offset 1751, 15 lines modifiedOffset 1751, 15 lines modified
1751 ················Options·::·[Option]·|·Option,1751 ················Options·::·[Option]·|·Option,
1752 ················Option·::·<a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html#t:option/0">compile:option</a>(),1752 ················Option·::·<a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html#t:option/0">compile:option</a>(),
1753 ················Module·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:module/0">module</a>().</pre>1753 ················Module·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:module/0">module</a>().</pre>
  
1754 ······</div>1754 ······</div>
  
1755 <p>Compiles·and·then·loads·the·code·for·a·file·on·all·nodes.·<code·class="inline">Options</code>·defaults·to1755 <p>Compiles·and·then·loads·the·code·for·a·file·on·all·nodes.·<code·class="inline">Options</code>·defaults·to
1756 <code·class="inline">[]</code>.·Compilation·is·equivalent·to:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">compile</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="4572077923-1">(</span><span·class="n">File</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Options</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="4572077923-2">[</span><sp[·...·truncated·by·diffoscope;·len:·215,·SHA:·b8afb2edbaf0103e9cd89fccdaf6e6bd94ce56632e38beb13138f009b7ef2a02·...·]-1">)</span></code></pre>1756 <code·class="inline">[]</code>.·Compilation·is·equivalent·to:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">compile</span><span·class="p">:</span><span·class="nf">file</span><span·class="p"·data-group-id="8858108454-1">(</span><span·class="n">File</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Options</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="p"·data-group-id="8858108454-2">[</span><sp[·...·truncated·by·diffoscope;·len:·215,·SHA:·236bce05696cf5de1ffb5085ae8ca241341f72eb11cbe2cbddb03b6d7d58864c·...·]-1">)</span></code></pre>
1757 ··</section>1757 ··</section>
1758 </section>1758 </section>
1759 <section·class="detail"·id="ni/0">1759 <section·class="detail"·id="ni/0">
  
1760 ··<div·class="detail-header">1760 ··<div·class="detail-header">
1761 ····<a·href="#ni/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1761 ····<a·href="#ni/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1762 ······<i·class="ri-link-m"·aria-hidden="true"></i>1762 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 2098, 15 lines modifiedOffset 2098, 15 lines modified
2098 ······<p·class="built-using">2098 ······<p·class="built-using">
2099 ········Built·using2099 ········Built·using
2100 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2100 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2101 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2101 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2102 ······</p>2102 ······</p>
2103 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2103 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2104 ····</footer>2104 ····</footer>
2105 ··</div>2105 ··</div>
2106 </main>2106 </main>
2107 </div>2107 </div>
2108 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2108 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2109 <script>2109 <script>
2110 ··document.addEventListener("DOMContentLoaded",·function·()·{2110 ··document.addEventListener("DOMContentLoaded",·function·()·{
617 B
html2text {}
Max HTML report size reached
13.6 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/calendar.html
    
Offset 1841, 18 lines modifiedOffset 1841, 18 lines modified
1841 ····································Option·::·{unit,·<a·href="#t:rfc3339_time_unit/0">rfc3339_time_unit</a>()}.</pre>1841 ····································Option·::·{unit,·<a·href="#t:rfc3339_time_unit/0">rfc3339_time_unit</a>()}.</pre>
  
1842 ······</div>1842 ······</div>
  
1843 <p>Converts·an·RFC·3339·timestamp·into·system·time.·The·data·format·of·RFC·33391843 <p>Converts·an·RFC·3339·timestamp·into·system·time.·The·data·format·of·RFC·3339
1844 timestamps·is·described·by·<a·href="https://www.ietf.org/rfc/rfc3339.txt">RFC·3339</a>.1844 timestamps·is·described·by·<a·href="https://www.ietf.org/rfc/rfc3339.txt">RFC·3339</a>.
1845 Starting·from·OTP·25.1,·the·minutes·part·of·the·time·zone·is·optional.</p><p>Valid·option:</p><ul><li><strong><code·class="inline">{unit,·Unit}</code></strong>·-·The·time·unit·of·the·return·value.·The·default·is1845 Starting·from·OTP·25.1,·the·minutes·part·of·the·time·zone·is·optional.</p><p>Valid·option:</p><ul><li><strong><code·class="inline">{unit,·Unit}</code></strong>·-·The·time·unit·of·the·return·value.·The·default·is
1846 <code·class="inline">second</code>.</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">rfc3339_to_system_time</span><span·class="p"·data-group-id="9139169872-1">(</span><span·class="s">&quot;2018-02-01T16:17:58+01:00&quot;</span><span·class="p"·data-group-id="9139169872-1">)</span><span·class="p">.</span><span·class="w">1846 <code·class="inline">second</code>.</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">rfc3339_to_system_time</span><span·class="p"·data-group-id="8347590315-1">(</span><span·class="s">&quot;2018-02-01T16:17:58+01:00&quot;</span><span·class="p"·data-group-id="8347590315-1">)</span><span·class="p">.</span><span·class="w">
1847 </span><span·class="mi">1517498278</span><span·class="gp·unselectable">1847 </span><span·class="mi">1517498278</span><span·class="gp·unselectable">
1848 2&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">rfc3339_to_system_time</span><span·class="p"·data-group-id="9139169872-2">(</span><span·class="s">&quot;2018-02-01·15:18:02.088Z&quot;</span><span·class="p">,</span><span·class="w">1848 2&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">rfc3339_to_system_time</span><span·class="p"·data-group-id="8347590315-2">(</span><span·class="s">&quot;2018-02-01·15:18:02.088Z&quot;</span><span·class="p">,</span><span·class="w">
1849 ···</span><span·class="p"·data-group-id="9139169872-3">[</span><span·class="p"·data-group-id="9139169872-4">{</span><span·class="ss">unit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">nanosecond</span><span·class="p"·data-group-id="9139169872-4">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·10e3ae9371c6571c38e3177abf524d321dc05b0327a2e79472b212abe5215e7b·...·]-2">)</span><span·class="p">.</span><span·class="w">1849 ···</span><span·class="p"·data-group-id="8347590315-3">[</span><span·class="p"·data-group-id="8347590315-4">{</span><span·class="ss">unit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">nanosecond</span><span·class="p"·data-group-id="8347590315-4">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·503504ed7d42578b7b8bccb73dce8d790f53aeb4ae2b0cf4ecd430b0c84c9c95·...·]-2">)</span><span·class="p">.</span><span·class="w">
1850 </span><span·class="mi">1517498282088000000</span></code></pre>1850 </span><span·class="mi">1517498282088000000</span></code></pre>
1851 ··</section>1851 ··</section>
1852 </section>1852 </section>
1853 <section·class="detail"·id="seconds_to_daystime/1">1853 <section·class="detail"·id="seconds_to_daystime/1">
  
1854 ··<div·class="detail-header">1854 ··<div·class="detail-header">
1855 ····<a·href="#seconds_to_daystime/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1855 ····<a·href="#seconds_to_daystime/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 2014, 24 lines modifiedOffset 2014, 24 lines modified
2014 interpreted·as·local·time.·A·non-empty·string·is·included·as·is.·The·time·unit2014 interpreted·as·local·time.·A·non-empty·string·is·included·as·is.·The·time·unit
2015 of·the·integer·is·the·same·as·the·one·of·<code·class="inline">Time</code>.</p></li><li><p><strong><code·class="inline">{time_designator,·Character}</code></strong>·-·The·character·used·as·time·designator,2015 of·the·integer·is·the·same·as·the·one·of·<code·class="inline">Time</code>.</p></li><li><p><strong><code·class="inline">{time_designator,·Character}</code></strong>·-·The·character·used·as·time·designator,
2016 that·is,·the·date·and·time·separator.·The·default·is·<code·class="inline">$T</code>.</p></li><li><p><strong><code·class="inline">{unit,·Unit}</code></strong>·-·The·time·unit·of·<code·class="inline">Time</code>.·The·default·is·<code·class="inline">second</code>.·If·some2016 that·is,·the·date·and·time·separator.·The·default·is·<code·class="inline">$T</code>.</p></li><li><p><strong><code·class="inline">{unit,·Unit}</code></strong>·-·The·time·unit·of·<code·class="inline">Time</code>.·The·default·is·<code·class="inline">second</code>.·If·some
2017 other·unit·is·given·(<code·class="inline">millisecond</code>,·<code·class="inline">microsecond</code>,·<code·class="inline">nanosecond</code>,·or·<code·class="inline">native</code>),2017 other·unit·is·given·(<code·class="inline">millisecond</code>,·<code·class="inline">microsecond</code>,·<code·class="inline">nanosecond</code>,·or·<code·class="inline">native</code>),
2018 the·formatted·string·includes·a·fraction·of·a·second.·The·number·of·fractional2018 the·formatted·string·includes·a·fraction·of·a·second.·The·number·of·fractional
2019 second·digits·is·three,·six,·or·nine·depending·on·what·time·unit·is·chosen.2019 second·digits·is·three,·six,·or·nine·depending·on·what·time·unit·is·chosen.
2020 For·<code·class="inline">native</code>·three·fractional·digits·are·included.·Notice·that·trailing·zeros2020 For·<code·class="inline">native</code>·three·fractional·digits·are·included.·Notice·that·trailing·zeros
2021 are·not·removed·from·the·fraction.</p></li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">system_time_to_rfc3339</span><span·class="p"·data-group-id="6548137968-1">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="6548137968-2">(</span><span·class="ss">second</span><span·class="p"·data-group-id="6548137968-2">)</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·22ff09511f538c08b5bf7ede22ec6bfa529cbafe872dfd2069c38341d8a03414·...·]-1">)</span><span·class="p">.</span><span·class="w">2021 are·not·removed·from·the·fraction.</p></li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">system_time_to_rfc3339</span><span·class="p"·data-group-id="1759386764-1">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="1759386764-2">(</span><span·class="ss">second</span><span·class="p"·data-group-id="1759386764-2">)</span><span·cla[·...·truncated·by·diffoscope;·len:·32,·SHA:·3c15aad528de21f7a316b06d3afedd0899d9a84d638f7b54846812547c0b3ab1·...·]-1">)</span><span·class="p">.</span><span·class="w">
2022 </span><span·class="s">&quot;2018-04-23T14:56:28+02:00&quot;</span><span·class="gp·unselectable">2022 </span><span·class="s">&quot;2018-04-23T14:56:28+02:00&quot;</span><span·class="gp·unselectable">
2023 2&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">system_time_to_rfc3339</span><span·class="p"·data-group-id="6548137968-3">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="6548137968-4">(</span><span·class="ss">second</span><span·class="p"·data-group-id="6548137968-4">)</span><span·class="p">,</span><span·class="w">2023 2&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">system_time_to_rfc3339</span><span·class="p"·data-group-id="1759386764-3">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="1759386764-4">(</span><span·class="ss">second</span><span·class="p"·data-group-id="1759386764-4">)</span><span·class="p">,</span><span·class="w">
2024 ···</span><span·class="p"·data-group-id="6548137968-5">[</span><span·class="p"·data-group-id="6548137968-6">{</span><span·class="ss">offset</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;-02:00&quot;</span><span·class="p"·data-group-id="6548137968-6">}</span><span·cla[·...·truncated·by·diffoscope;·len:·85,·SHA:·49f9f6e11d5a0760eeb09d2819705c5796c65b8608901eeb1a538bee78774dfc·...·]-3">)</span><span·class="p">.</span><span·class="w">2024 ···</span><span·class="p"·data-group-id="1759386764-5">[</span><span·class="p"·data-group-id="1759386764-6">{</span><span·class="ss">offset</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;-02:00&quot;</span><span·class="p"·data-group-id="1759386764-6">}</span><span·cla[·...·truncated·by·diffoscope;·len:·85,·SHA:·c57086c82c2b39e05fd124aa95ff1f4f0f4c8ee2cd9d4d7b40ae13fa0f385689·...·]-3">)</span><span·class="p">.</span><span·class="w">
2025 </span><span·class="s">&quot;2018-04-23T10:56:52-02:00&quot;</span><span·class="gp·unselectable">2025 </span><span·class="s">&quot;2018-04-23T10:56:52-02:00&quot;</span><span·class="gp·unselectable">
2026 3&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">system_time_to_rfc3339</span><span·class="p"·data-group-id="6548137968-7">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="6548137968-8">(</span><span·class="ss">second</span><span·class="p"·data-group-id="6548137968-8">)</span><span·class="p">,</span><span·class="w">2026 3&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">system_time_to_rfc3339</span><span·class="p"·data-group-id="1759386764-7">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="1759386764-8">(</span><span·class="ss">second</span><span·class="p"·data-group-id="1759386764-8">)</span><span·class="p">,</span><span·class="w">
2027 ···</span><span·class="p"·data-group-id="6548137968-9">[</span><span·class="p"·data-group-id="6548137968-10">{</span><span·class="ss">offset</span><span·class="p">,</span><span·class="w">·</span><span·class="o">-</span><span·class="mi">7200</span><span·class="p"·data-group-id="6548137968-10">}</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·0ff012b74dc446e1c2cf2a7b88c0ab7efdeb802037950b34ec01c497b1740098·...·]-7">)</span><span·class="p">.</span><span·class="w">2027 ···</span><span·class="p"·data-group-id="1759386764-9">[</span><span·class="p"·data-group-id="1759386764-10">{</span><span·class="ss">offset</span><span·class="p">,</span><span·class="w">·</span><span·class="o">-</span><span·class="mi">7200</span><span·class="p"·data-group-id="1759386764-10">}</s[·...·truncated·by·diffoscope;·len:·98,·SHA:·c4bfeb8b824e49c4b7d8fd62591f2a56c002786c4d64e65f39be1cf7f013bab1·...·]-7">)</span><span·class="p">.</span><span·class="w">
2028 </span><span·class="s">&quot;2018-04-23T10:57:05-02:00&quot;</span><span·class="gp·unselectable">2028 </span><span·class="s">&quot;2018-04-23T10:57:05-02:00&quot;</span><span·class="gp·unselectable">
2029 4&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">system_time_to_rfc3339</span><span·class="p"·data-group-id="6548137968-11">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="6548137968-12">(</span><span·class="ss">millisecond</span><span·class="p"·data-group-id="6548137968-12">)</span><span·class="p">,</span><span·class="w">2029 4&gt;·</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">system_time_to_rfc3339</span><span·class="p"·data-group-id="1759386764-11">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_time</span><span·class="p"·data-group-id="1759386764-12">(</span><span·class="ss">millisecond</span><span·class="p"·data-group-id="1759386764-12">)</span><span·class="p">,</span><span·class="w">
2030 ···</span><span·class="p"·data-group-id="6548137968-13">[</span><span·class="p"·data-group-id="6548137968-14">{</span><span·class="ss">unit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">millisecond</span><span·class="p"·data-group-id="6548137968-14">}</span><span·class="p[·...·truncated·by·diffoscope;·len:·621,·SHA:·9cf9ae24254cc411d739ed4275ed6ae05d9bd9b0ed044eab682ab15783ddfd51·...·]-11">)</span><span·class="p">.</span><span·class="w">2030 ···</span><span·class="p"·data-group-id="1759386764-13">[</span><span·class="p"·data-group-id="1759386764-14">{</span><span·class="ss">unit</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">millisecond</span><span·class="p"·data-group-id="1759386764-14">}</span><span·class="p[·...·truncated·by·diffoscope;·len:·621,·SHA:·b21289d29eab429d2747a3eceee810d32fb259a486fe554784248bdcb26b7658·...·]-11">)</span><span·class="p">.</span><span·class="w">
2031 </span><span·class="s">&quot;2018-04-23·12:57:20.482Z&quot;</span></code></pre>2031 </span><span·class="s">&quot;2018-04-23·12:57:20.482Z&quot;</span></code></pre>
2032 ··</section>2032 ··</section>
2033 </section>2033 </section>
2034 <section·class="detail"·id="system_time_to_universal_time/2">2034 <section·class="detail"·id="system_time_to_universal_time/2">
  
2035 ··<div·class="detail-header">2035 ··<div·class="detail-header">
2036 ····<a·href="#system_time_to_universal_time/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2036 ····<a·href="#system_time_to_universal_time/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 2258, 15 lines modifiedOffset 2258, 15 lines modified
2258 ······<p·class="built-using">2258 ······<p·class="built-using">
2259 ········Built·using2259 ········Built·using
2260 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2260 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2261 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2261 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2262 ······</p>2262 ······</p>
2263 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2263 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2264 ····</footer>2264 ····</footer>
2265 ··</div>2265 ··</div>
2266 </main>2266 </main>
2267 </div>2267 </div>
2268 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2268 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2269 <script>2269 <script>
2270 ··document.addEventListener("DOMContentLoaded",·function·()·{2270 ··document.addEventListener("DOMContentLoaded",·function·()·{
699 B
html2text {}
Max HTML report size reached
26.7 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/dets.html
    
Offset 1910, 22 lines modifiedOffset 1910, 22 lines modified
  
1910 ··········<pre·translate="no"><span·class="attribute">-spec</span>·lookup(Name,·Key)·->·Objects·|·{error,·Reason}1910 ··········<pre·translate="no"><span·class="attribute">-spec</span>·lookup(Name,·Key)·->·Objects·|·{error,·Reason}
1911 ················when·Name·::·<a·href="#t:tab_name/0">tab_name</a>(),·Key·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),·Objects·::·[<a·href="#t:object/0">object</a>()],·Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>1911 ················when·Name·::·<a·href="#t:tab_name/0">tab_name</a>(),·Key·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),·Objects·::·[<a·href="#t:object/0">object</a>()],·Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
1912 ······</div>1912 ······</div>
  
1913 <p>Returns·a·list·of·all·objects·with·key·<code·class="inline">Key</code>·stored·in·table·<code·class="inline">Name</code>,·for1913 <p>Returns·a·list·of·all·objects·with·key·<code·class="inline">Key</code>·stored·in·table·<code·class="inline">Name</code>,·for
1914 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">open_file</span><span·class="p"·data-group-id="6982956214-1">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6982956214-2">[</span><span·class="p"·data-group-id="6982956214-3">{</span><span·class="ss">type</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·197,·SHA:·a46945dc6ec6e7309043341d7846e6cefd8176bba9f71f727d8031924282236b·...·]-1">)</span><span·class="p">.</span><span·class="w">1914 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">open_file</span><span·class="p"·data-group-id="2441591709-1">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2441591709-2">[</span><span·class="p"·data-group-id="2441591709-3">{</span><span·class="ss">type</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·197,·SHA:·cf2a343b13b8d719f7b683b32a8d5a93e1a6b48698a025671f3d6c2c8fbc548f·...·]-1">)</span><span·class="p">.</span><span·class="w">
1915 </span><span·class="p"·data-group-id="6982956214-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">abc</span><span·class="p"·data-group-id="6982956214-4">}</span><span·class="gp·unselectable">1915 </span><span·class="p"·data-group-id="2441591709-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">abc</span><span·class="p"·data-group-id="2441591709-4">}</span><span·class="gp·unselectable">
1916 3&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="6982956214-5">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6982956214-6">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·111,·SHA:·a5dbdfb7e392324b701d5545bb75eb043e4a516135cc333b70aba93d1a63caee·...·]-5">)</span><span·class="p">.</span><span·class="w">1916 3&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="2441591709-5">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2441591709-6">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·111,·SHA:·df6e1806a227184ab9cabfe92d186521d07fb3b7053c868c21365699d3887aaa·...·]-5">)</span><span·class="p">.</span><span·class="w">
1917 </span><span·class="ss">ok</span><span·class="gp·unselectable">1917 </span><span·class="ss">ok</span><span·class="gp·unselectable">
1918 4&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="6982956214-7">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6982956214-8">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·111,·SHA:·513a59357f69cffe81e149489189a0b41547f4c025d714a9d7a709103f442344·...·]-7">)</span><span·class="p">.</span><span·class="w">1918 4&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="2441591709-7">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2441591709-8">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·111,·SHA:·c5126c826ced4a9a5a0d39e898110a47f157168884248c3b3a2d49e991e32068·...·]-7">)</span><span·class="p">.</span><span·class="w">
1919 </span><span·class="ss">ok</span><span·class="gp·unselectable">1919 </span><span·class="ss">ok</span><span·class="gp·unselectable">
1920 5&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="6982956214-9">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="6982956214-9">)</span><span·class="p">.</span><span·class="w">1920 5&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">lookup</span><span·class="p"·data-group-id="2441591709-9">(</span><span·class="ss">abc</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="2441591709-9">)</span><span·class="p">.</span><span·class="w">
1921 </span><span·class="p"·data-group-id="6982956214-10">[</span><span·class="p"·data-group-id="6982956214-11">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="6982956214-11">}</span><s[·...·truncated·by·diffoscope;·len:·294,·SHA:·aca9063b13887fc70da4a17faacd5498333735c23cd2457466549bc6fdad73c7·...·]-10">]</span></code></pre><p>If·the·table·type·is·<code·class="inline">set</code>,·the·function·returns·either·the·empty·list·or·a·list1921 </span><span·class="p"·data-group-id="2441591709-10">[</span><span·class="p"·data-group-id="2441591709-11">{</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="2441591709-11">}</span><s[·...·truncated·by·diffoscope;·len:·294,·SHA:·f444601e179623f0147cabc77279af3de4dbdd66da055eb26fab1037fa991651·...·]-10">]</span></code></pre><p>If·the·table·type·is·<code·class="inline">set</code>,·the·function·returns·either·the·empty·list·or·a·list
1922 with·one·object,·as·there·cannot·be·more·than·one·object·with·a·given·key.·If1922 with·one·object,·as·there·cannot·be·more·than·one·object·with·a·given·key.·If
1923 the·table·type·is·<code·class="inline">bag</code>·or·<code·class="inline">duplicate_bag</code>,·the·function·returns·a·list·of1923 the·table·type·is·<code·class="inline">bag</code>·or·<code·class="inline">duplicate_bag</code>,·the·function·returns·a·list·of
1924 arbitrary·length.</p><p>Notice·that·the·order·of·objects·returned·is·unspecified.·In·particular,·the1924 arbitrary·length.</p><p>Notice·that·the·order·of·objects·returned·is·unspecified.·In·particular,·the
1925 order·in·which·objects·were·inserted·is·not·reflected.</p>1925 order·in·which·objects·were·inserted·is·not·reflected.</p>
1926 ··</section>1926 ··</section>
1927 </section>1927 </section>
1928 <section·class="detail"·id="match/1">1928 <section·class="detail"·id="match/1">
Offset 2774, 19 lines modifiedOffset 2774, 19 lines modified
2774 by·<code·class="inline">qlc</code>:</p><ul><li>Simple·filters·are·translated·into·equivalent·match·specifications.</li><li>More·complicated·filters·must·be·applied·to·all·objects·returned·by2774 by·<code·class="inline">qlc</code>:</p><ul><li>Simple·filters·are·translated·into·equivalent·match·specifications.</li><li>More·complicated·filters·must·be·applied·to·all·objects·returned·by
2775 <a·href="#select/3"><code·class="inline">select/3</code></a>·given·a·match·specification·that·matches·all2775 <a·href="#select/3"><code·class="inline">select/3</code></a>·given·a·match·specification·that·matches·all
2776 objects.</li></ul></li><li><p><code·class="inline">{select,·``t:match_spec/0``}</code>·-·As·for·<code·class="inline">select</code>,·the·table·is·traversed·by2776 objects.</li></ul></li><li><p><code·class="inline">{select,·``t:match_spec/0``}</code>·-·As·for·<code·class="inline">select</code>,·the·table·is·traversed·by
2777 calling·<a·href="#select/3"><code·class="inline">dets:select/3</code></a>·and·<a·href="#select/1"><code·class="inline">dets:select/1</code></a>.·The·difference·is·that·the·match2777 calling·<a·href="#select/3"><code·class="inline">dets:select/3</code></a>·and·<a·href="#select/1"><code·class="inline">dets:select/1</code></a>.·The·difference·is·that·the·match
2778 specification·is·specified·explicitly.·This·is·how·to·state·match2778 specification·is·specified·explicitly.·This·is·how·to·state·match
2779 specifications·that·cannot·easily·be·expressed·within·the·syntax·provided·by2779 specifications·that·cannot·easily·be·expressed·within·the·syntax·provided·by
2780 <code·class="inline">qlc</code>.</p></li></ul><p>The·following·example·uses·an·explicit·match·specification·to·traverse·the2780 <code·class="inline">qlc</code>.</p></li></ul><p>The·following·example·uses·an·explicit·match·specification·to·traverse·the
2781 table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">open_file</span><span·class="p"·data-group-id="8586959628-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8586959628-2">[</span><span·class="p"·data-group-id="8586959628-2">]</span><span·class="p"·data-group-id="8586959628-1">)</span><span·class="p">,</span><span·class="w">2781 table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">open_file</span><span·class="p"·data-group-id="4311505156-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4311505156-2">[</span><span·class="p"·data-group-id="4311505156-2">]</span><span·class="p"·data-group-id="4311505156-1">)</span><span·class="p">,</span><span·class="w">
2782 </span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="8586959628-3">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8586959628-4">[</span><span·class="p"·data-group-id="8586959628-5">{</span><span·class="mi">1</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·778,·SHA:·adefcce1c8d76d759298ee39e6c55edaf0367d5cab7b35c893b349264f72e8d4·...·]-3">)</span><span·class="p">,</span><span·class="w">2782 </span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="4311505156-3">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4311505156-4">[</span><span·class="p"·data-group-id="4311505156-5">{</span><span·class="mi">1</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·778,·SHA:·3e4a851a982394ca62b328c1e1ffb1ed3586679a8b9820c7c7bfb77584155f6a·...·]-3">)</span><span·class="p">,</span><span·class="w">
2783 </span><span·class="n">MS</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="8586959628-9">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8586959628-10">(</span><span·class="p"·data-group-id="8586959628-11">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·994,·SHA:·c7cd66d4c7550630729a56324a2f237e4c153f58d22091b6659f39d1538740ae·...·]-9">)</span><span·class="p">,</span><span·class="w">2783 </span><span·class="n">MS</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="4311505156-9">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4311505156-10">(</span><span·class="p"·data-group-id="4311505156-11">{</span><span·class="n">X</span><span·class="p">,</span><span·class="n">Y</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·994,·SHA:·df12184452140f359cfe677d17e9b6b03c41897fba899537f1e5399a1acdb540·...·]-9">)</span><span·class="p">,</span><span·class="w">
2784 </span><span·class="n">QH1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">table</span><span·class="p"·data-group-id="8586959628-15">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8586959628-16">[</span><span·class="p"·data-group-id="8586959628-17">{</span><span·class="ss">traverse</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·2206,·SHA:·66170095a89d0e05e1d55e28dd9f86ddbb8b43b0375097734770482b5972fe8b·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·latter·example·is·equivalent·to·the·former,·which·can·be·verified·using2784 </span><span·class="n">QH1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dets</span><span·class="p">:</span><span·class="nf">table</span><span·class="p"·data-group-id="4311505156-15">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4311505156-16">[</span><span·class="p"·data-group-id="4311505156-17">{</span><span·class="ss">traverse</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·2206,·SHA:·b91af48b1a53d9c321c7ff42bb07f792132f45561761fa8d77b4a649c6eec953·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·latter·example·is·equivalent·to·the·former,·which·can·be·verified·using
2785 function·<a·href="qlc.html#info/1"><code·class="inline">qlc:info/1</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">qlc</span><span·class="p">:</span><span·class="nf">info</span><span·class="p"·data-group-id="3464143091-1">(</span><span·class="n">QH1</span><span·class="p"·data-group-id="3464143091-1">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="nc">qlc</span><span·class="p">:</span><span·class="nf">info</span><s[·...·truncated·by·diffoscope;·len:·118,·SHA:·488a30faa93e86c6b5205066b2cd8f541472a406002918054416279727bf583f·...·]-2">)</span><span·class="p">.</span><span·class="w">2785 function·<a·href="qlc.html#info/1"><code·class="inline">qlc:info/1</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">qlc</span><span·class="p">:</span><span·class="nf">info</span><span·class="p"·data-group-id="8787313396-1">(</span><span·class="n">QH1</span><span·class="p"·data-group-id="8787313396-1">)</span><span·class="w">·</span><span·class="o">=:=</span><span·class="w">·</span><span·class="nc">qlc</span><span·class="p">:</span><span·class="nf">info</span><s[·...·truncated·by·diffoscope;·len:·118,·SHA:·2dbcff6a202b6e1ede3421b0623c5a9cfc14746e637abe8fa354d5e45fcf7768·...·]-2">)</span><span·class="p">.</span><span·class="w">
2786 </span><span·class="ss">true</span></code></pre><p><a·href="qlc.html#info/1"><code·class="inline">qlc:info/1</code></a>·returns·information·about·a·query·handle.·In·this·case·identical2786 </span><span·class="ss">true</span></code></pre><p><a·href="qlc.html#info/1"><code·class="inline">qlc:info/1</code></a>·returns·information·about·a·query·handle.·In·this·case·identical
2787 information·is·returned·for·the·two·query·handles.</p>2787 information·is·returned·for·the·two·query·handles.</p>
2788 ··</section>2788 ··</section>
2789 </section>2789 </section>
2790 <section·class="detail"·id="to_ets/2">2790 <section·class="detail"·id="to_ets/2">
  
2791 ··<div·class="detail-header">2791 ··<div·class="detail-header">
Offset 2852, 15 lines modifiedOffset 2852, 15 lines modified
2852 ······················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>2852 ······················Reason·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>().</pre>
  
2853 ······</div>2853 ······</div>
  
2854 <p>Applies·<code·class="inline">Fun</code>·to·each·object·stored·in·table·<code·class="inline">Name</code>·in·some·unspecified·order.2854 <p>Applies·<code·class="inline">Fun</code>·to·each·object·stored·in·table·<code·class="inline">Name</code>·in·some·unspecified·order.
2855 Different·actions·are·taken·depending·on·the·return·value·of·<code·class="inline">Fun</code>.·The2855 Different·actions·are·taken·depending·on·the·return·value·of·<code·class="inline">Fun</code>.·The
2856 following·<code·class="inline">Fun</code>·return·values·are·allowed:</p><ul><li><p><strong><code·class="inline">continue</code></strong>·-·Continue·to·perform·the·traversal.·For·example,·the·following2856 following·<code·class="inline">Fun</code>·return·values·are·allowed:</p><ul><li><p><strong><code·class="inline">continue</code></strong>·-·Continue·to·perform·the·traversal.·For·example,·the·following
2857 function·can·be·used·to·print·the·contents·of·a·table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="7853516585-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="7853516585-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><[·...·truncated·by·diffoscope;·len:·381,·SHA:·e3ff87d3b1f1fa8249b262fac2eae77b2b4c57b4b2872d040e0166762aec204f·...·]-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">continue</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span></code></pre></li><li><p><strong><code·class="inline">{continue,·Val}</code></strong>·-·Continue·the·traversal·and·accumulate·<code·class="inline">Val</code>.·The2857 function·can·be·used·to·print·the·contents·of·a·table:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="5896050047-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="5896050047-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><[·...·truncated·by·diffoscope;·len:·381,·SHA:·4a0ad9de7b97a72f527d8ee0c22672ddf42863066f24875815ae6a23f5b4b6d3·...·]-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">continue</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span></code></pre></li><li><p><strong><code·class="inline">{continue,·Val}</code></strong>·-·Continue·the·traversal·and·accumulate·<code·class="inline">Val</code>.·The
2858 following·function·is·supplied·to·collect·all·objects·of·a·table·in·a·list:</p><pre><code·class="text">fun(X)·-&gt;·{continue,·X}·end.</code></pre></li><li><p><strong><code·class="inline">{done,·Value}</code></strong>·-·Terminate·the·traversal·and·return·<code·class="inline">[Value·|·Acc]</code>.</p></li></ul><p>Any·other·value·<code·class="inline">OtherValue</code>·returned·by·<code·class="inline">Fun</code>·terminates·the·traversal·and·is2858 following·function·is·supplied·to·collect·all·objects·of·a·table·in·a·list:</p><pre><code·class="text">fun(X)·-&gt;·{continue,·X}·end.</code></pre></li><li><p><strong><code·class="inline">{done,·Value}</code></strong>·-·Terminate·the·traversal·and·return·<code·class="inline">[Value·|·Acc]</code>.</p></li></ul><p>Any·other·value·<code·class="inline">OtherValue</code>·returned·by·<code·class="inline">Fun</code>·terminates·the·traversal·and·is
2859 returned·immediately.</p>2859 returned·immediately.</p>
2860 ··</section>2860 ··</section>
2861 </section>2861 </section>
2862 <section·class="detail"·id="update_counter/3">2862 <section·class="detail"·id="update_counter/3">
  
2863 ··<div·class="detail-header">2863 ··<div·class="detail-header">
Offset 2923, 15 lines modifiedOffset 2923, 15 lines modified
2923 ······<p·class="built-using">2923 ······<p·class="built-using">
2924 ········Built·using2924 ········Built·using
2925 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2925 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2926 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2926 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2927 ······</p>2927 ······</p>
2928 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2928 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2929 ····</footer>2929 ····</footer>
2930 ··</div>2930 ··</div>
2931 </main>2931 </main>
2932 </div>2932 </div>
2933 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2933 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2934 <script>2934 <script>
2935 ··document.addEventListener("DOMContentLoaded",·function·()·{2935 ··document.addEventListener("DOMContentLoaded",·function·()·{
718 B
html2text {}
Max HTML report size reached
20.8 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/dict.html
    
Offset 134, 21 lines modifiedOffset 134, 21 lines modified
134 do·not·compare·equal·(<code·class="inline">==</code>).</p><h2·id="module-notes"·class="section-heading">134 do·not·compare·equal·(<code·class="inline">==</code>).</p><h2·id="module-notes"·class="section-heading">
135 ··<a·href="#module-notes"·class="hover-link">135 ··<a·href="#module-notes"·class="hover-link">
136 ····<i·class="ri-link-m"·aria-hidden="true"></i>136 ····<i·class="ri-link-m"·aria-hidden="true"></i>
137 ··</a>137 ··</a>
138 ··<span·class="text">Notes</span>138 ··<span·class="text">Notes</span>
139 </h2>139 </h2>
140 <p><a·href=""·id="notes"></a></p><p>Functions·<code·class="inline">append</code>·and·<code·class="inline">append_list</code>·are·included·so·that·keyed·values·can·be140 <p><a·href=""·id="notes"></a></p><p>Functions·<code·class="inline">append</code>·and·<code·class="inline">append_list</code>·are·included·so·that·keyed·values·can·be
141 stored·in·a·list·<em>accumulator</em>,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">D0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="1881784508-1">(</span><span·class="p"·data-group-id="1881784508-1">)</span><span·class="p">,</span><span·class="w">141 stored·in·a·list·<em>accumulator</em>,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">D0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="5641768413-1">(</span><span·class="p"·data-group-id="5641768413-1">)</span><span·class="p">,</span><span·class="w">
142 ··</span><span·class="n">D1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">store</span><span·class="p"·data-group-id="1881784508-2">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1881784508-3">[</span><span·class="p"·data-group-id="1881784508-3">]</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·63,·SHA:·60d2ad0027fb359c6d333191c3fb8a273d4466e5aa48e6ba06ffa0bfcdbe4c19·...·]-2">)</span><span·class="p">,</span><span·class="w">142 ··</span><span·class="n">D1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">store</span><span·class="p"·data-group-id="5641768413-2">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5641768413-3">[</span><span·class="p"·data-group-id="5641768413-3">]</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·63,·SHA:·58d371f5cf40fb0324aceae0ae92b54f9c14bd81e80dfe903357543470a5a7a4·...·]-2">)</span><span·class="p">,</span><span·class="w">
143 ··</span><span·class="n">D2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="1881784508-4">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D1</span><span·class="p"·data-group-id="1881784508-4">)</span><span·class="p">,</span><span·class="w">143 ··</span><span·class="n">D2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="5641768413-4">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D1</span><span·class="p"·data-group-id="5641768413-4">)</span><span·class="p">,</span><span·class="w">
144 ··</span><span·class="n">D3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="1881784508-5">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D2</span><span·class="p"·data-group-id="1881784508-5">)</span><span·class="p">,</span><span·class="w">144 ··</span><span·class="n">D3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="5641768413-5">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D2</span><span·class="p"·data-group-id="5641768413-5">)</span><span·class="p">,</span><span·class="w">
145 ··</span><span·class="n">D4</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="1881784508-6">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D3</span><span·class="p"·data-group-id="1881784508-6">)</span><span·class="p">,</span><span·class="w">145 ··</span><span·class="n">D4</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="5641768413-6">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D3</span><span·class="p"·data-group-id="5641768413-6">)</span><span·class="p">,</span><span·class="w">
146 ··</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">fetch</span><span·class="p"·data-group-id="1881784508-7">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D4</span><span·class="p"·data-group-id="1881784508-7">)</span><span·class="p">.</span><span·class="w">146 ··</span><span·class="nc">dict</span><span·class="p">:</span><span·class="nf">fetch</span><span·class="p"·data-group-id="5641768413-7">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D4</span><span·class="p"·data-group-id="5641768413-7">)</span><span·class="p">.</span><span·class="w">
147 </span><span·class="p"·data-group-id="1881784508-8">[</span><span·class="ss">f1</span><span·class="p">,</span><span·class="ss">f2</span><span·class="p">,</span><span·class="ss">f3</span><span·class="p"·data-group-id="1881784508-8">]</span></code></pre><p>This·saves·the·trouble·of·first·fetching·a·keyed·value,·appending·a·new·value·to147 </span><span·class="p"·data-group-id="5641768413-8">[</span><span·class="ss">f1</span><span·class="p">,</span><span·class="ss">f2</span><span·class="p">,</span><span·class="ss">f3</span><span·class="p"·data-group-id="5641768413-8">]</span></code></pre><p>This·saves·the·trouble·of·first·fetching·a·keyed·value,·appending·a·new·value·to
148 the·list·of·stored·values,·and·storing·the·result.</p><p>Function·<code·class="inline">fetch</code>·is·to·be·used·if·the·key·is·known·to·be·in·the·dictionary,148 the·list·of·stored·values,·and·storing·the·result.</p><p>Function·<code·class="inline">fetch</code>·is·to·be·used·if·the·key·is·known·to·be·in·the·dictionary,
149 otherwise·function·<code·class="inline">find</code>.</p><h2·id="module-see-also"·class="section-heading">149 otherwise·function·<code·class="inline">find</code>.</p><h2·id="module-see-also"·class="section-heading">
150 ··<a·href="#module-see-also"·class="hover-link">150 ··<a·href="#module-see-also"·class="hover-link">
151 ····<i·class="ri-link-m"·aria-hidden="true"></i>151 ····<i·class="ri-link-m"·aria-hidden="true"></i>
152 ··</a>152 ··</a>
153 ··<span·class="text">See·Also</span>153 ··<span·class="text">See·Also</span>
154 </h2>154 </h2>
Offset 901, 18 lines modifiedOffset 901, 18 lines modified
  
901 ······</div>901 ······</div>
  
902 <p>Merges·two·dictionaries,·<code·class="inline">Dict1</code>·and·<code·class="inline">Dict2</code>,·to·create·a·new·dictionary.·All902 <p>Merges·two·dictionaries,·<code·class="inline">Dict1</code>·and·<code·class="inline">Dict2</code>,·to·create·a·new·dictionary.·All
903 the·<code·class="inline">Key</code>-<code·class="inline">Value</code>·pairs·from·both·dictionaries·are·included·in·the·new903 the·<code·class="inline">Key</code>-<code·class="inline">Value</code>·pairs·from·both·dictionaries·are·included·in·the·new
904 dictionary.·If·a·key·occurs·in·both·dictionaries,·<code·class="inline">Fun</code>·is·called·with·the·key904 dictionary.·If·a·key·occurs·in·both·dictionaries,·<code·class="inline">Fun</code>·is·called·with·the·key
905 and·both·values·to·return·a·new·value.·<code·class="inline">merge</code>·can·be·defined·as·follows,·but·is905 and·both·values·to·return·a·new·value.·<code·class="inline">merge</code>·can·be·defined·as·follows,·but·is
906 faster:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">merge</span><span·class="p"·data-group-id="8620222617-1">(</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D2</span><span·class="p"·data-group-id="8620222617-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">906 faster:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">merge</span><span·class="p"·data-group-id="6965104296-1">(</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D2</span><span·class="p"·data-group-id="6965104296-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
907 ····</span><span·class="nf">fold</span><span·class="p"·data-group-id="8620222617-2">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8620222617-3">(</span><span·class="n">K</span><span·class="p">,</span><span·class="w">·</span><span·class="n">V1</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·80,·SHA:·e2afb51a1589eae8020f435807d5a01fc6e0496644ccb308711c987b9bfc4cb3·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">907 ····</span><span·class="nf">fold</span><span·class="p"·data-group-id="6965104296-2">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="6965104296-3">(</span><span·class="n">K</span><span·class="p">,</span><span·class="w">·</span><span·class="n">V1</span><span·class="p">,</span><span·cla[·...·truncated·by·diffoscope;·len:·80,·SHA:·d7a290de16743762fbc9022f16e2faf58c9968b02d46e90c459b088380ce3748·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
908 ·················</span><span·class="nf">update</span><span·class="p"·data-group-id="8620222617-4">(</span><span·class="n">K</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8620222617-5">(</span><span·class="n">V2</span><span·class="p"·data-group-id="86[·...·truncated·by·diffoscope;·len:·634,·SHA:·614a00fa8310f7a56cee0a056e3d4b0176c0c22b835eafe01587f813e4f7f7cf·...·]-4">)</span><span·class="w">908 ·················</span><span·class="nf">update</span><span·class="p"·data-group-id="6965104296-4">(</span><span·class="n">K</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="6965104296-5">(</span><span·class="n">V2</span><span·class="p"·data-group-id="69[·...·truncated·by·diffoscope;·len:·634,·SHA:·99a9f5f9602dcf34eac36e6736c83941afcf7afda9fe9b3cac6d4f8eff493858·...·]-4">)</span><span·class="w">
909 ·········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D1</span><span·class="p"·data-group-id="8620222617-2">)</span><span·class="p">.</span></code></pre>909 ·········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D1</span><span·class="p"·data-group-id="6965104296-2">)</span><span·class="p">.</span></code></pre>
910 ··</section>910 ··</section>
911 </section>911 </section>
912 <section·class="detail"·id="new/0">912 <section·class="detail"·id="new/0">
  
913 ··<div·class="detail-header">913 ··<div·class="detail-header">
914 ····<a·href="#new/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">914 ····<a·href="#new/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
915 ······<i·class="ri-link-m"·aria-hidden="true"></i>915 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1117, 16 lines modifiedOffset 1117, 16 lines modified
1117 ····················Fun·::·fun((Value1·::·Value)·->·Value2·::·Value),1117 ····················Fun·::·fun((Value1·::·Value)·->·Value2·::·Value),
1118 ····················Initial·::·Value.</pre>1118 ····················Initial·::·Value.</pre>
  
1119 ······</div>1119 ······</div>
  
1120 <p>Updates·a·value·in·a·dictionary·by·calling·<code·class="inline">Fun</code>·on·the·value·to·get·a·new1120 <p>Updates·a·value·in·a·dictionary·by·calling·<code·class="inline">Fun</code>·on·the·value·to·get·a·new
1121 value.·If·<code·class="inline">Key</code>·is·not·present·in·the·dictionary,·<code·class="inline">Initial</code>·is·stored·as·the1121 value.·If·<code·class="inline">Key</code>·is·not·present·in·the·dictionary,·<code·class="inline">Initial</code>·is·stored·as·the
1122 first·value.·For·example,·<a·href="#append/3"><code·class="inline">append/3</code></a>·can·be·defined·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">append</span><span·class="p"·data-group-id="4593836896-1">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Val</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D</span><span·class="p"·data-group-id="4593836896-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1122 first·value.·For·example,·<a·href="#append/3"><code·class="inline">append/3</code></a>·can·be·defined·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">append</span><span·class="p"·data-group-id="4899051023-1">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Val</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D</span><span·class="p"·data-group-id="4899051023-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1123 ····</span><span·class="nf">update</span><span·class="p"·data-group-id="4593836896-2">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="4593836896-3">(</span><span·class="n">Old</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·672,·SHA:·e2164cb10fe60cb791ef987bf842ef1f49c77e8385042fbb0a6937b0b9991fac·...·]-2">)</span><span·class="p">.</span></code></pre>1123 ····</span><span·class="nf">update</span><span·class="p"·data-group-id="4899051023-2">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="4899051023-3">(</span><span·class="n">Old</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·672,·SHA:·4cc1175c287ef32dce28c189a7d9d7826a3a5283721637b1cd5f6ae06707a4d7·...·]-2">)</span><span·class="p">.</span></code></pre>
1124 ··</section>1124 ··</section>
1125 </section>1125 </section>
1126 <section·class="detail"·id="update_counter/3">1126 <section·class="detail"·id="update_counter/3">
  
1127 ··<div·class="detail-header">1127 ··<div·class="detail-header">
1128 ····<a·href="#update_counter/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1128 ····<a·href="#update_counter/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1129 ······<i·class="ri-link-m"·aria-hidden="true"></i>1129 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1149, 16 lines modifiedOffset 1149, 16 lines modified
1149 ··········<pre·translate="no"><span·class="attribute">-spec</span>·update_counter(Key,·Increment,·Dict1)·->·Dict21149 ··········<pre·translate="no"><span·class="attribute">-spec</span>·update_counter(Key,·Increment,·Dict1)·->·Dict2
1150 ························when·Dict1·::·<a·href="#t:dict/2">dict</a>(Key,·Value),·Dict2·::·<a·href="#t:dict/2">dict</a>(Key,·Value),·Increment·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:number/0">number</a>().</pre>1150 ························when·Dict1·::·<a·href="#t:dict/2">dict</a>(Key,·Value),·Dict2·::·<a·href="#t:dict/2">dict</a>(Key,·Value),·Increment·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:number/0">number</a>().</pre>
  
1151 ······</div>1151 ······</div>
  
1152 <p>Adds·<code·class="inline">Increment</code>·to·the·value·associated·with·<code·class="inline">Key</code>·and·stores·this·value.·If1152 <p>Adds·<code·class="inline">Increment</code>·to·the·value·associated·with·<code·class="inline">Key</code>·and·stores·this·value.·If
1153 <code·class="inline">Key</code>·is·not·present·in·the·dictionary,·<code·class="inline">Increment</code>·is·stored·as·the·first1153 <code·class="inline">Key</code>·is·not·present·in·the·dictionary,·<code·class="inline">Increment</code>·is·stored·as·the·first
1154 value.</p><p>This·can·be·defined·as·follows,·but·is·faster:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">update_counter</span><span·class="p"·data-group-id="3803673892-1">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Incr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D</span><span·class="p"·data-group-id="3803673892-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1154 value.</p><p>This·can·be·defined·as·follows,·but·is·faster:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">update_counter</span><span·class="p"·data-group-id="1637340258-1">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Incr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D</span><span·class="p"·data-group-id="1637340258-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1155 ····</span><span·class="nf">update</span><span·class="p"·data-group-id="3803673892-2">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="3803673892-3">(</span><span·class="n">Old</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·462,·SHA:·4b1fa07b8b08ea45570ff534e45f972b785905b724c6fd8dd077b35227e6994a·...·]-2">)</span><span·class="p">.</span></code></pre>1155 ····</span><span·class="nf">update</span><span·class="p"·data-group-id="1637340258-2">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="1637340258-3">(</span><span·class="n">Old</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·462,·SHA:·2aefec8623288cfae5c2c15e13d692c7d30917d85886d5d0e4274ed727a2a403·...·]-2">)</span><span·class="p">.</span></code></pre>
1156 ··</section>1156 ··</section>
1157 </section>1157 </section>
  
1158 ····</div>1158 ····</div>
1159 ··</section>1159 ··</section>
  
1160 ····<footer·class="footer">1160 ····<footer·class="footer">
Offset 1179, 15 lines modifiedOffset 1179, 15 lines modified
1179 ······<p·class="built-using">1179 ······<p·class="built-using">
1180 ········Built·using1180 ········Built·using
1181 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1181 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1182 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1182 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1183 ······</p>1183 ······</p>
1184 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1184 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1185 ····</footer>1185 ····</footer>
1186 ··</div>1186 ··</div>
1187 </main>1187 </main>
1188 </div>1188 </div>
1189 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1189 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1190 <script>1190 <script>
1191 ··document.addEventListener("DOMContentLoaded",·function·()·{1191 ··document.addEventListener("DOMContentLoaded",·function·()·{
658 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/digraph.html
    
Offset 1838, 15 lines modifiedOffset 1838, 15 lines modified
1838 ······<p·class="built-using">1838 ······<p·class="built-using">
1839 ········Built·using1839 ········Built·using
1840 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1840 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1841 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1841 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1842 ······</p>1842 ······</p>
1843 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1843 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1844 ····</footer>1844 ····</footer>
1845 ··</div>1845 ··</div>
1846 </main>1846 </main>
1847 </div>1847 </div>
1848 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1848 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1849 <script>1849 <script>
1850 ··document.addEventListener("DOMContentLoaded",·function·()·{1850 ··document.addEventListener("DOMContentLoaded",·function·()·{
709 B
html2text {}
Max HTML report size reached
1.59 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/digraph_utils.html
    
Offset 1040, 15 lines modifiedOffset 1040, 15 lines modified
1040 ······<p·class="built-using">1040 ······<p·class="built-using">
1041 ········Built·using1041 ········Built·using
1042 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1042 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1043 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1043 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1044 ······</p>1044 ······</p>
1045 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1045 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1046 ····</footer>1046 ····</footer>
1047 ··</div>1047 ··</div>
1048 </main>1048 </main>
1049 </div>1049 </div>
1050 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1050 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1051 <script>1051 <script>
1052 ··document.addEventListener("DOMContentLoaded",·function·()·{1052 ··document.addEventListener("DOMContentLoaded",·function·()·{
769 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/edlin.html
    
Offset 339, 15 lines modifiedOffset 339, 15 lines modified
339 ······<p·class="built-using">339 ······<p·class="built-using">
340 ········Built·using340 ········Built·using
341 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the341 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
342 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>342 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
343 ······</p>343 ······</p>
344 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>344 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
345 ····</footer>345 ····</footer>
346 ··</div>346 ··</div>
347 </main>347 </main>
348 </div>348 </div>
349 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>349 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
350 <script>350 <script>
351 ··document.addEventListener("DOMContentLoaded",·function·()·{351 ··document.addEventListener("DOMContentLoaded",·function·()·{
764 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/edlin_expand.html
    
Offset 332, 15 lines modifiedOffset 332, 15 lines modified
332 ······<p·class="built-using">332 ······<p·class="built-using">
333 ········Built·using333 ········Built·using
334 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the334 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
335 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>335 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
336 ······</p>336 ······</p>
337 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>337 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
338 ····</footer>338 ····</footer>
339 ··</div>339 ··</div>
340 </main>340 </main>
341 </div>341 </div>
342 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>342 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
343 <script>343 <script>
344 ··document.addEventListener("DOMContentLoaded",·function·()·{344 ··document.addEventListener("DOMContentLoaded",·function·()·{
683 B
html2text {}
Max HTML report size reached
4.26 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/epp.html
    
Offset 136, 15 lines modifiedOffset 136, 15 lines modified
136 <code·class="inline">Latin-1</code>·and·<code·class="inline">UTF-8</code>,·where·the·case·of·the·characters·can·be·chosen·freely.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·coding:·utf-8</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·For·this·file·we·have·chosen·encoding·=·Latin-1</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·-*-·coding:·latin-1·-*-</span></code></pre><h2·id="module-error-information"·class="section-heading">136 <code·class="inline">Latin-1</code>·and·<code·class="inline">UTF-8</code>,·where·the·case·of·the·characters·can·be·chosen·freely.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·coding:·utf-8</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·For·this·file·we·have·chosen·encoding·=·Latin-1</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·-*-·coding:·latin-1·-*-</span></code></pre><h2·id="module-error-information"·class="section-heading">
137 ··<a·href="#module-error-information"·class="hover-link">137 ··<a·href="#module-error-information"·class="hover-link">
138 ····<i·class="ri-link-m"·aria-hidden="true"></i>138 ····<i·class="ri-link-m"·aria-hidden="true"></i>
139 ··</a>139 ··</a>
140 ··<span·class="text">Error·Information</span>140 ··<span·class="text">Error·Information</span>
141 </h2>141 </h2>
142 <p><code·class="inline">ErrorInfo</code>·is·the·standard·<code·class="inline">ErrorInfo</code>·structure·that·is·returned·from·all·I/O142 <p><code·class="inline">ErrorInfo</code>·is·the·standard·<code·class="inline">ErrorInfo</code>·structure·that·is·returned·from·all·I/O
143 modules.·The·format·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6816944953-1">{</span><span·class="n">ErrorLine</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorDescriptor</span><span·class="p"·data-group-id="68169449[·...·truncated·by·diffoscope;·len:·369,·SHA:·8f10e26b18967fdb9bf268a5288cacbb1500420fe40cf57d6e8b5f86d2edc4fb·...·]-1">)</span></code></pre><h2·id="module-see-also"·class="section-heading">143 modules.·The·format·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5516444713-1">{</span><span·class="n">ErrorLine</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorDescriptor</span><span·class="p"·data-group-id="55164447[·...·truncated·by·diffoscope;·len:·369,·SHA:·c3ac38736e58d97c3282f6aecc6ebabaac0a59c8da7e67b50f3d1e3d2752a79e·...·]-1">)</span></code></pre><h2·id="module-see-also"·class="section-heading">
144 ··<a·href="#module-see-also"·class="hover-link">144 ··<a·href="#module-see-also"·class="hover-link">
145 ····<i·class="ri-link-m"·aria-hidden="true"></i>145 ····<i·class="ri-link-m"·aria-hidden="true"></i>
146 ··</a>146 ··</a>
147 ··<span·class="text">See·Also</span>147 ··<span·class="text">See·Also</span>
148 </h2>148 </h2>
149 <p><a·href="erl_parse.html"><code·class="inline">erl_parse</code></a></p>149 <p><a·href="erl_parse.html"><code·class="inline">erl_parse</code></a></p>
150 ····</section>150 ····</section>
Offset 1229, 15 lines modifiedOffset 1229, 15 lines modified
1229 ······<p·class="built-using">1229 ······<p·class="built-using">
1230 ········Built·using1230 ········Built·using
1231 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1231 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1232 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1232 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1233 ······</p>1233 ······</p>
1234 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1234 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1235 ····</footer>1235 ····</footer>
1236 ··</div>1236 ··</div>
1237 </main>1237 </main>
1238 </div>1238 </div>
1239 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1239 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1240 <script>1240 <script>
1241 ··document.addEventListener("DOMContentLoaded",·function·()·{1241 ··document.addEventListener("DOMContentLoaded",·function·()·{
755 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_anno.html
    
Offset 1263, 15 lines modifiedOffset 1263, 15 lines modified
1263 ······<p·class="built-using">1263 ······<p·class="built-using">
1264 ········Built·using1264 ········Built·using
1265 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1265 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1266 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1266 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1267 ······</p>1267 ······</p>
1268 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1268 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1269 ····</footer>1269 ····</footer>
1270 ··</div>1270 ··</div>
1271 </main>1271 </main>
1272 </div>1272 </div>
1273 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1273 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1274 <script>1274 <script>
1275 ··document.addEventListener("DOMContentLoaded",·function·()·{1275 ··document.addEventListener("DOMContentLoaded",·function·()·{
601 B
html2text {}
Max HTML report size reached
27.0 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_error.html
    
Offset 313, 15 lines modifiedOffset 313, 15 lines modified
313 ······<div·class="specs">313 ······<div·class="specs">
  
314 ··········<pre·translate="no"><span·class="attribute">-type</span>·format_fun()·::·fun((<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),·<a·href="#t:column/0">column</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:iolist/0">iolist</a>()).</pre>314 ··········<pre·translate="no"><span·class="attribute">-type</span>·format_fun()·::·fun((<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),·<a·href="#t:column/0">column</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:iolist/0">iolist</a>()).</pre>
  
315 ······</div>315 ······</div>
  
316 <p>A·fun·used·to·format·function·arguments·for·BIF·and·function·calls.·By·default316 <p>A·fun·used·to·format·function·arguments·for·BIF·and·function·calls.·By·default
317 the·following·fun·will·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="5120372377-1">(</span><span·class="n">Term</span><span·class="p">,</span><span·class="w">·</span><span·class="n">I</span><span·class="p"·data-group-id="5120372377-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·418,·SHA:·586323f1d82004593e5ab78569f22dd541f301bc7e0d08858c2561857394c3c1·...·]-2">)</span><span·class="w">·</span><span·class="k">end</span></code></pre>317 the·following·fun·will·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="4562544941-1">(</span><span·class="n">Term</span><span·class="p">,</span><span·class="w">·</span><span·class="n">I</span><span·class="p"·data-group-id="4562544941-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·418,·SHA:·d0adfd246f64d2fafc8d386f754ccd8c4c542095e2c5ae31cfaaf3ff3c12e767·...·]-2">)</span><span·class="w">·</span><span·class="k">end</span></code></pre>
318 ··</section>318 ··</section>
319 </section>319 </section>
320 <section·class="detail"·id="t:format_options/0">320 <section·class="detail"·id="t:format_options/0">
  
321 ··<div·class="detail-header">321 ··<div·class="detail-header">
322 ····<a·href="#t:format_options/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">322 ····<a·href="#t:format_options/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·type">
323 ······<i·class="ri-link-m"·aria-hidden="true"></i>323 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 434, 31 lines modifiedOffset 434, 31 lines modified
434 <p>This·callback·is·called·when·<a·href="#format_exception/4"><code·class="inline">format_exception/4</code></a>·or·similar·functionality·wants434 <p>This·callback·is·called·when·<a·href="#format_exception/4"><code·class="inline">format_exception/4</code></a>·or·similar·functionality·wants
435 to·provide·extra·information·about·an·error.·The·<code·class="inline">Module</code>:<code·class="inline">Function</code>·called·is435 to·provide·extra·information·about·an·error.·The·<code·class="inline">Module</code>:<code·class="inline">Function</code>·called·is
436 the·one·specificed·by·the·<code·class="inline">error_info</code>·map.</p><p>The·function·should·return·a·map·with·additional·information·about·what·have436 the·one·specificed·by·the·<code·class="inline">error_info</code>·map.</p><p>The·function·should·return·a·map·with·additional·information·about·what·have
437 caused·the·exception.·The·possible·keys·of·the·map·are:</p><ul><li><p><strong><code·class="inline">ArgumentPosition·=·pos_integer()</code></strong>·-·The·position·of·the·argument·that437 caused·the·exception.·The·possible·keys·of·the·map·are:</p><ul><li><p><strong><code·class="inline">ArgumentPosition·=·pos_integer()</code></strong>·-·The·position·of·the·argument·that
438 caused·the·error·starting·at·1.</p></li><li><p><strong><code·class="inline">general</code></strong>·-·An·error·that·is·not·associated·with·any·argument·caused·the438 caused·the·error·starting·at·1.</p></li><li><p><strong><code·class="inline">general</code></strong>·-·An·error·that·is·not·associated·with·any·argument·caused·the
439 error.</p></li><li><p><strong><code·class="inline">reason</code></strong>·-·If·the·<code·class="inline">Reason</code>·should·be·printed·differently·than·the·default439 error.</p></li><li><p><strong><code·class="inline">reason</code></strong>·-·If·the·<code·class="inline">Reason</code>·should·be·printed·differently·than·the·default
440 way.</p></li></ul><p>If·the·text·returned·includes·new-lines,·<a·href="#format_exception/4"><code·class="inline">format_exception/4</code></a>·will·indent·the440 way.</p></li></ul><p>If·the·text·returned·includes·new-lines,·<a·href="#format_exception/4"><code·class="inline">format_exception/4</code></a>·will·indent·the
441 text·correctly.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8966918343-1">(</span><span·class="ss">my_error_module</span><span·class="p"·data-group-id="8966918343-1">)</span><span·class="p">.</span><span·class="w">441 text·correctly.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7230979794-1">(</span><span·class="ss">my_error_module</span><span·class="p"·data-group-id="7230979794-1">)</span><span·class="p">.</span><span·class="w">
442 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8966918343-2">(</span><span·class="p"·data-group-id="8966918343-3">[</span><span·class="ss">atom_to_string</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">format_error</span><span·clas[·...·truncated·by·diffoscope;·len:·133,·SHA:·126ce32141ee0f6df7b4aade8bc7c3c546bd2a3d9c889fd7c3d97d56508daa48·...·]-2">)</span><span·class="p">.</span><span·class="w">442 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7230979794-2">(</span><span·class="p"·data-group-id="7230979794-3">[</span><span·class="ss">atom_to_string</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">format_error</span><span·clas[·...·truncated·by·diffoscope;·len:·133,·SHA:·e8937916d8141fb3aff57afdd97784594230e21c6f5bac2000b17c458dec5336·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
443 </span><span·class="nf">atom_to_string</span><span·class="p"·data-group-id="8966918343-4">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="8966918343-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_atom</span><span·class="p"·data-group-id="8966918343-5">(</s[·...·truncated·by·diffoscope;·len:·71,·SHA:·fc4f609cf59a8d42a51cd1b6b2dd2878bee8ef16285cacabd49a62b5e76c07ef·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">443 </span><span·class="nf">atom_to_string</span><span·class="p"·data-group-id="7230979794-4">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="7230979794-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_atom</span><span·class="p"·data-group-id="7230979794-5">(</s[·...·truncated·by·diffoscope;·len:·71,·SHA:·5cb954b1286407c3be2e00f483ceff48352de598cbda343b84b3cbd9ec385234·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
444 ··</span><span·class="nf">atom_to_list</span><span·class="p"·data-group-id="8966918343-6">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="8966918343-6">)</span><span·class="p">;</span><span·class="w">444 ··</span><span·class="nf">atom_to_list</span><span·class="p"·data-group-id="7230979794-6">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="7230979794-6">)</span><span·class="p">;</span><span·class="w">
445 </span><span·class="nf">atom_to_string</span><span·class="p"·data-group-id="8966918343-7">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="8966918343-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">445 </span><span·class="nf">atom_to_string</span><span·class="p"·data-group-id="7230979794-7">(</span><span·class="n">Arg</span><span·class="p"·data-group-id="7230979794-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
446 ··</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="8966918343-8">(</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p"·data-group-id="8966918343-9">[</span><span·class="n">Arg</span><span·class="p"·data-group-id="8966918343-9">]</span><span·class="p">,</span><span·class="w">446 ··</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">error</span><span·class="p"·data-group-id="7230979794-8">(</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p"·data-group-id="7230979794-9">[</span><span·class="n">Arg</span><span·class="p"·data-group-id="7230979794-9">]</span><span·class="p">,</span><span·class="w">
447 ···············</span><span·class="p"·data-group-id="8966918343-10">[</span><span·class="p"·data-group-id="8966918343-11">{</span><span·class="ss">error_info</span><span·class="p">,</span><span·class="p"·data-group-id="8966918343-12">#{</span><span·class="w">·</span><span·class="ss">module</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">447 ···············</span><span·class="p"·data-group-id="7230979794-10">[</span><span·class="p"·data-group-id="7230979794-11">{</span><span·class="ss">error_info</span><span·class="p">,</span><span·class="p"·data-group-id="7230979794-12">#{</span><span·class="w">·</span><span·class="ss">module</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">
448 ·······························</span><span·class="ss">cause</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="8966918343-13">#{</span><span·class="w">·</span><span·class="mi">1</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;should·be·an·atom&quot;</span><span·class="w">·</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·226,·SHA:·81f274d45fe706143ca181d90cdd3d9b406dc0588601151b75afb27b6ad5996c·...·]-8">)</span><span·class="p">.</span><span·class="w">448 ·······························</span><span·class="ss">cause</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="7230979794-13">#{</span><span·class="w">·</span><span·class="mi">1</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;should·be·an·atom&quot;</span><span·class="w">·</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·226,·SHA:·15ac6f7c09abb1780d24ac0f3479710c87e6d9eb3228ecb5656897a38aa738af·...·]-8">)</span><span·class="p">.</span><span·class="w">
  
449 </span><span·class="nf">format_error</span><span·class="p"·data-group-id="8966918343-14">(</span><span·class="n">Reason</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8966918343-15">[</span><span·class="p"·data-group-id="8966918343-16">{</span><span·class="p">_</span><span·class="n">M</span>[·...·truncated·by·diffoscope;·len:·393,·SHA:·e5732a5ec4abadf03a04db9bf79ef921e19716d1fe2a8d51e7989290ab811f48·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">449 </span><span·class="nf">format_error</span><span·class="p"·data-group-id="7230979794-14">(</span><span·class="n">Reason</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7230979794-15">[</span><span·class="p"·data-group-id="7230979794-16">{</span><span·class="p">_</span><span·class="n">M</span>[·...·truncated·by·diffoscope;·len:·393,·SHA:·e81bd9cf8d81e7bdeec3c27934eb303ad766241735516aae35cc988c29022d0e·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
450 ··</span><span·class="n">ErrorInfo</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="8966918343-17">(</span><span·class="ss">error_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8966918343-18">#{</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·74,·SHA:·48f2bfc454929ecf76fbbc8bb4a3b93cbb89e4e70cd115a515266aac6d55e006·...·]-17">)</span><span·class="p">,</span><span·class="w">450 ··</span><span·class="n">ErrorInfo</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="7230979794-17">(</span><span·class="ss">error_info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7230979794-18">#{</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·74,·SHA:·e5952409eea3976ddd6ac1a4c774cc27e572e5df84fe61874952f69d0f2cfbdb·...·]-17">)</span><span·class="p">,</span><span·class="w">
451 ··</span><span·class="n">ErrorMap</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="8966918343-19">(</span><span·class="ss">cause</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorInfo</span><span·class="p"·data-group-id="8966918343-19">)</span><span·class="p">,</span><span·class="w">451 ··</span><span·class="n">ErrorMap</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">get</span><span·class="p"·data-group-id="7230979794-19">(</span><span·class="ss">cause</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorInfo</span><span·class="p"·data-group-id="7230979794-19">)</span><span·class="p">,</span><span·class="w">
452 ··</span><span·class="n">ErrorMap</span><span·class="p"·data-group-id="8966918343-20">#{</span><span·class="w">·</span><span·class="ss">general</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;optional·general·information&quot;</span><span·class="p">,</span><span·class="w">452 ··</span><span·class="n">ErrorMap</span><span·class="p"·data-group-id="7230979794-20">#{</span><span·class="w">·</span><span·class="ss">general</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;optional·general·information&quot;</span><span·class="p">,</span><span·class="w">
453 ·············</span><span·class="ss">reason</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8966918343-21">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">:·</span><span·class="si">~p</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="8966918343-22">[</span><span·class="o">?</s[·...·truncated·by·diffoscope;·len:·582,·SHA:·3c4407b8e5214976e4b7d56978fab441ba3060b341c562ddb074f346c7b8f021·...·]-1">)</span><span·class="p">.</span><span·class="w">453 ·············</span><span·class="ss">reason</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="7230979794-21">(</span><span·class="s">&quot;</span><span·class="si">~p</span><span·class="s">:·</span><span·class="si">~p</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="7230979794-22">[</span><span·class="o">?</s[·...·truncated·by·diffoscope;·len:·582,·SHA:·13ee102bab568aa07d1c67f7b1122baea0d727e7f6d1bba0da9b51baed133093·...·]-1">)</span><span·class="p">.</span><span·class="w">
454 </span><span·class="p"·data-group-id="9028421179-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">my_error_module</span><span·class="p"·data-group-id="9028421179-2">}</span><span·class="gp·unselectable">454 </span><span·class="p"·data-group-id="6378246267-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">my_error_module</span><span·class="p"·data-group-id="6378246267-2">}</span><span·class="gp·unselectable">
455 2&gt;·</span><span·class="nc">my_error_module</span><span·class="p">:</span><span·class="nf">atom_to_string</span><span·class="p"·data-group-id="9028421179-3">(</span><span·class="mi">1</span><span·class="p"·data-group-id="9028421179-3">)</span><span·class="p">.</span><span·class="w">455 2&gt;·</span><span·class="nc">my_error_module</span><span·class="p">:</span><span·class="nf">atom_to_string</span><span·class="p"·data-group-id="6378246267-3">(</span><span·class="mi">1</span><span·class="p"·data-group-id="6378246267-3">)</span><span·class="p">.</span><span·class="w">
456 </span><span·class="gt">**·exception·error:·my_error_module:·badarg456 </span><span·class="gt">**·exception·error:·my_error_module:·badarg
457 ·····in·function··my_error_module:atom_to_string/1457 ·····in·function··my_error_module:atom_to_string/1
458 ········called·as·my_error_module:atom_to_string(1)458 ········called·as·my_error_module:atom_to_string(1)
459 ········***·argument·1:·should·be·an·atom459 ········***·argument·1:·should·be·an·atom
460 ········***·optional·general·information</span></code></pre>460 ········***·optional·general·information</span></code></pre>
461 ··</section>461 ··</section>
462 </section>462 </section>
Offset 538, 26 lines modifiedOffset 538, 26 lines modified
538 ······························StackTrace·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:stacktrace/0">erlang:stacktrace</a>(),538 ······························StackTrace·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:stacktrace/0">erlang:stacktrace</a>(),
539 ······························Options·::·<a·href="#t:format_options/0">format_options</a>().</pre>539 ······························Options·::·<a·href="#t:format_options/0">format_options</a>().</pre>
  
540 ······</div>540 ······</div>
  
541 <p>Format·the·error·reason·and·stack·back-trace·caught·using·<code·class="inline">try</code>·...·<code·class="inline">catch</code>·in541 <p>Format·the·error·reason·and·stack·back-trace·caught·using·<code·class="inline">try</code>·...·<code·class="inline">catch</code>·in
542 the·same·style·as·the·shell·formats·them.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">try</span><span·class="w">542 the·same·style·as·the·shell·formats·them.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">try</span><span·class="w">
543 ····</span><span·class="nf">do_something</span><span·class="p"·data-group-id="8994622681-1">(</span><span·class="p"·data-group-id="8994622681-1">)</span><span·class="w">543 ····</span><span·class="nf">do_something</span><span·class="p"·data-group-id="9963530630-1">(</span><span·class="p"·data-group-id="9963530630-1">)</span><span·class="w">
544 </span><span·class="k">catch</span><span·class="w">544 </span><span·class="k">catch</span><span·class="w">
545 ····</span><span·class="n">C</span><span·class="p">:</span><span·class="n">R</span><span·class="p">:</span><span·class="n">Stk</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">545 ····</span><span·class="n">C</span><span·class="p">:</span><span·class="n">R</span><span·class="p">:</span><span·class="n">Stk</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
546 ········</span><span·class="n">Message</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erl_error</span><span·class="p">:</span><span·class="nf">format_exception</span><span·class="p"·data-group-id="8994622681-2">(</span><span·class="n">C</span><span·class="p">,</span><span·class="w">·</span><span·class="n">R</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Stk</span><span·class="p"·data-group-id="8994622681-2">)</span><span·class="p">,</span><span·class="w">546 ········</span><span·class="n">Message</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erl_error</span><span·class="p">:</span><span·class="nf">format_exception</span><span·class="p"·data-group-id="9963530630-2">(</span><span·class="n">C</span><span·class="p">,</span><span·class="w">·</span><span·class="n">R</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Stk</span><span·class="p"·data-group-id="9963530630-2">)</span><span·class="p">,</span><span·class="w">
547 ········</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8994622681-3">(</span><span·class="n">LogFile</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;~ts\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8994622681-4">[</span><span·class="n"[·...·truncated·by·diffoscope;·len:·109,·SHA:·564ec66e3c92148b6ff6b5df1f9d52d300868e399ac4b7b409331b6782390854·...·]-3">)</span><span·class="w">547 ········</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9963530630-3">(</span><span·class="n">LogFile</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;~ts\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9963530630-4">[</span><span·class="n"[·...·truncated·by·diffoscope;·len:·109,·SHA:·3486ccff5ac71053d0e9fa53963801cbb5db28289cc5adb1b4babc37083d6336·...·]-3">)</span><span·class="w">
548 </span><span·class="k">end</span></code></pre><p>If·<code·class="inline">error_info</code>·is·provided·with·the·exception,·<code·class="inline">format_exception</code>·will·use·that548 </span><span·class="k">end</span></code></pre><p>If·<code·class="inline">error_info</code>·is·provided·with·the·exception,·<code·class="inline">format_exception</code>·will·use·that
549 information·to·provide·additional·information·about·the·exception.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">try</span><span·class="w">549 information·to·provide·additional·information·about·the·exception.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="k">try</span><span·class="w">
550 ··</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">raise</span><span·class="p"·data-group-id="9973224117-1">(</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p"·data-group-id="9973224117-2">[</span><span·class="p"·data-group-id="9973224117-2">]</span><span·class="p">,</span><span·class="p"·data-group-id="9973224117-3">[</sp[·...·truncated·by·diffoscope;·len:·368,·SHA:·51517f3e4d279ed0eb18849818ff1d3ed5632e4054b3d0403b7c37e23993d598·...·]-1">)</span><span·class="w">550 ··</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">raise</span><span·class="p"·data-group-id="7038034601-1">(</span><span·class="ss">badarg</span><span·class="p">,</span><span·class="p"·data-group-id="7038034601-2">[</span><span·class="p"·data-group-id="7038034601-2">]</span><span·class="p">,</span><span·class="p"·data-group-id="7038034601-3">[</sp[·...·truncated·by·diffoscope;·len:·368,·SHA:·734b27f99eb92aec39d2c41edbed0a2c6f42e1b1245f9fd50a107a1c0f023637·...·]-1">)</span><span·class="w">
551 </span><span·class="k">catch</span><span·class="w">551 </span><span·class="k">catch</span><span·class="w">
552 ····</span><span·class="n">C</span><span·class="p">:</span><span·class="n">R</span><span·class="p">:</span><span·class="n">Stk</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">552 ····</span><span·class="n">C</span><span·class="p">:</span><span·class="n">R</span><span·class="p">:</span><span·class="n">Stk</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
553 ········</span><span·class="n">Message</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erl_error</span><span·class="p">:</span><span·class="nf">format_exception</span><span·class="p"·data-group-id="9973224117-6">(</span><span·class="n">C</span><span·class="p">,</span><span·class="w">·</span><span·class="n">R</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Stk</span><span·class="p"·data-group-id="9973224117-6">)</span><span·class="p">,</span><span·class="w">553 ········</span><span·class="n">Message</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erl_error</span><span·class="p">:</span><span·class="nf">format_exception</span><span·class="p"·data-group-id="7038034601-6">(</span><span·class="n">C</span><span·class="p">,</span><span·class="w">·</span><span·class="n">R</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Stk</span><span·class="p"·data-group-id="7038034601-6">)</span><span·class="p">,</span><span·class="w">
554 ········</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="9973224117-7">(</span><span·class="n">LogFile</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;~ts\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9973224117-8">[</span><span·class="n"[·...·truncated·by·diffoscope;·len:·109,·SHA:·9a241996e98a095b0a2f96bab67e2d96f39b439874cf294b1eebb27bc38d1e1f·...·]-7">)</span><span·class="w">554 ········</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="7038034601-7">(</span><span·class="n">LogFile</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;~ts\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7038034601-8">[</span><span·class="n"[·...·truncated·by·diffoscope;·len:·109,·SHA:·2e020354610f993248ac7f67379e11e0962ee451d2c0f2e86be93d925bee7300·...·]-7">)</span><span·class="w">
555 </span><span·class="k">end</span></code></pre><p>See·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#error/3"><code·class="inline">erlang:error/3</code></a>·for·details·on·how·to·raise·an·exception·with·<code·class="inline">error_info</code>555 </span><span·class="k">end</span></code></pre><p>See·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#error/3"><code·class="inline">erlang:error/3</code></a>·for·details·on·how·to·raise·an·exception·with·<code·class="inline">error_info</code>
556 included.</p>556 included.</p>
557 ··</section>557 ··</section>
558 </section>558 </section>
  
559 ····</div>559 ····</div>
560 ··</section>560 ··</section>
Offset 580, 15 lines modifiedOffset 580, 15 lines modified
580 ······<p·class="built-using">580 ······<p·class="built-using">
581 ········Built·using581 ········Built·using
582 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the582 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
583 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>583 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
584 ······</p>584 ······</p>
585 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>585 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
586 ····</footer>586 ····</footer>
587 ··</div>587 ··</div>
588 </main>588 </main>
589 </div>589 </div>
590 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>590 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
591 <script>591 <script>
592 ··document.addEventListener("DOMContentLoaded",·function·()·{592 ··document.addEventListener("DOMContentLoaded",·function·()·{
594 B
html2text {}
Max HTML report size reached
9.73 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_eval.html
    
Offset 137, 35 lines modifiedOffset 137, 35 lines modified
137 ··<span·class="text">Local·Function·Handler</span>137 ··<span·class="text">Local·Function·Handler</span>
138 </h2>138 </h2>
139 <p>During·evaluation·of·a·function,·no·calls·can·be·made·to·local·functions.·An139 <p>During·evaluation·of·a·function,·no·calls·can·be·made·to·local·functions.·An
140 undefined·function·error·would·be·generated.·However,·the·optional·argument140 undefined·function·error·would·be·generated.·However,·the·optional·argument
141 <code·class="inline">LocalFunctionHandler</code>·can·be·used·to·define·a·function·that·is·called·when141 <code·class="inline">LocalFunctionHandler</code>·can·be·used·to·define·a·function·that·is·called·when
142 there·is·a·call·to·a·local·function.·The·argument·can·have·the·following142 there·is·a·call·to·a·local·function.·The·argument·can·have·the·following
143 formats:</p><ul><li><p><strong><code·class="inline">{value,Func}</code></strong>·-·This·defines·a·local·function·handler·that·is·called143 formats:</p><ul><li><p><strong><code·class="inline">{value,Func}</code></strong>·-·This·defines·a·local·function·handler·that·is·called
144 with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Func</span><span·class="p"·data-group-id="3610601089-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arguments</span><span·class="p"·data-group-id="3610601089-1">)</span></code></pre><p><code·class="inline">Name</code>·is·the·name·of·the·local·function·(an·atom)·and·<code·class="inline">Arguments</code>·is·a·list144 with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Func</span><span·class="p"·data-group-id="6836548337-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arguments</span><span·class="p"·data-group-id="6836548337-1">)</span></code></pre><p><code·class="inline">Name</code>·is·the·name·of·the·local·function·(an·atom)·and·<code·class="inline">Arguments</code>·is·a·list
145 of·the·<em>evaluated</em>·arguments.·The·function·handler·returns·the·value·of·the145 of·the·<em>evaluated</em>·arguments.·The·function·handler·returns·the·value·of·the
146 local·function.·In·this·case,·the·current·bindings·cannot·be·accessed.·To146 local·function.·In·this·case,·the·current·bindings·cannot·be·accessed.·To
147 signal·an·error,·the·function·handler·calls·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit/1</code></a>·with·a147 signal·an·error,·the·function·handler·calls·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit/1</code></a>·with·a
148 suitable·exit·value.</p></li><li><p><strong><code·class="inline">{eval,Func}</code></strong>·-·This·defines·a·local·function·handler·that·is·called·with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Func</span><span·class="p"·data-group-id="8103409044-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arguments</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bindings</span><span·class="p"·data-group-id="8103409044-1">)</span></code></pre><p><code·class="inline">Name</code>·is·the·name·of·the·local·function·(an·atom),·<code·class="inline">Arguments</code>·is·a·list·of148 suitable·exit·value.</p></li><li><p><strong><code·class="inline">{eval,Func}</code></strong>·-·This·defines·a·local·function·handler·that·is·called·with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Func</span><span·class="p"·data-group-id="0521065978-1">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arguments</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bindings</span><span·class="p"·data-group-id="0521065978-1">)</span></code></pre><p><code·class="inline">Name</code>·is·the·name·of·the·local·function·(an·atom),·<code·class="inline">Arguments</code>·is·a·list·of
149 the·<em>unevaluated</em>·arguments,·and·<code·class="inline">Bindings</code>·are·the·current·variable·bindings.149 the·<em>unevaluated</em>·arguments,·and·<code·class="inline">Bindings</code>·are·the·current·variable·bindings.
150 The·function·handler·returns:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6462048176-1">{</span><span·class="ss">value</span><span·class="p">,</span><span·class="n">Value</span><span·class="p">,</span><span·class="n">NewBindings</span><span·class="p"·data-group-id="6462048176-1">}</span></code></pre><p><code·class="inline">Value</code>·is·the·value·of·the·local·function·and·<code·class="inline">NewBindings</code>·are·the·updated150 The·function·handler·returns:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1622670034-1">{</span><span·class="ss">value</span><span·class="p">,</span><span·class="n">Value</span><span·class="p">,</span><span·class="n">NewBindings</span><span·class="p"·data-group-id="1622670034-1">}</span></code></pre><p><code·class="inline">Value</code>·is·the·value·of·the·local·function·and·<code·class="inline">NewBindings</code>·are·the·updated
151 variable·bindings.·In·this·case,·the·function·handler·must·itself·evaluate·all151 variable·bindings.·In·this·case,·the·function·handler·must·itself·evaluate·all
152 the·function·arguments·and·manage·the·bindings.·To·signal·an·error,·the152 the·function·arguments·and·manage·the·bindings.·To·signal·an·error,·the
153 function·handler·calls·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit/1</code></a>·with·a·suitable·exit·value.</p></li><li><p><strong><code·class="inline">none</code></strong>·-·There·is·no·local·function·handler.</p></li></ul><h2·id="module-non-local-function-handler"·class="section-heading">153 function·handler·calls·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit/1</code></a>·with·a·suitable·exit·value.</p></li><li><p><strong><code·class="inline">none</code></strong>·-·There·is·no·local·function·handler.</p></li></ul><h2·id="module-non-local-function-handler"·class="section-heading">
154 ··<a·href="#module-non-local-function-handler"·class="hover-link">154 ··<a·href="#module-non-local-function-handler"·class="hover-link">
155 ····<i·class="ri-link-m"·aria-hidden="true"></i>155 ····<i·class="ri-link-m"·aria-hidden="true"></i>
156 ··</a>156 ··</a>
157 ··<span·class="text">Non-Local·Function·Handler</span>157 ··<span·class="text">Non-Local·Function·Handler</span>
158 </h2>158 </h2>
159 <p>The·optional·argument·<code·class="inline">NonLocalFunctionHandler</code>·can·be·used·to·define·a·function159 <p>The·optional·argument·<code·class="inline">NonLocalFunctionHandler</code>·can·be·used·to·define·a·function
160 that·is·called·in·the·following·cases:</p><ul><li>A·functional·object·(fun)·is·called.</li><li>A·built-in·function·is·called.</li><li>A·function·is·called·using·the·<code·class="inline">M:F</code>·syntax,·where·<code·class="inline">M</code>·and·<code·class="inline">F</code>·are·atoms·or160 that·is·called·in·the·following·cases:</p><ul><li>A·functional·object·(fun)·is·called.</li><li>A·built-in·function·is·called.</li><li>A·function·is·called·using·the·<code·class="inline">M:F</code>·syntax,·where·<code·class="inline">M</code>·and·<code·class="inline">F</code>·are·atoms·or
161 expressions.</li><li>An·operator·<code·class="inline">Op/A</code>·is·called·(this·is·handled·as·a·call·to·function161 expressions.</li><li>An·operator·<code·class="inline">Op/A</code>·is·called·(this·is·handled·as·a·call·to·function
162 <code·class="inline">erlang:Op/A</code>).</li></ul><p>Exceptions·are·calls·to·<code·class="inline">erlang:apply/2,3</code>;·neither·of·the·function·handlers·are162 <code·class="inline">erlang:Op/A</code>).</li></ul><p>Exceptions·are·calls·to·<code·class="inline">erlang:apply/2,3</code>;·neither·of·the·function·handlers·are
163 called·for·such·calls.·The·argument·can·have·the·following·formats:</p><ul><li><p><strong><code·class="inline">{value,Func}</code></strong>·-·This·defines·a·non-local·function·handler.·The·function163 called·for·such·calls.·The·argument·can·have·the·following·formats:</p><ul><li><p><strong><code·class="inline">{value,Func}</code></strong>·-·This·defines·a·non-local·function·handler.·The·function
164 may·be·called·with·two·arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Func</span><span·class="p"·data-group-id="2490416281-1">(</span><span·class="n">FuncSpec</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arguments</span><span·class="p"·data-group-id="2490416281-1">)</span></code></pre><p>or·three·arguments:</p><pre><code·class="makeup·erlang[·...·truncated·by·diffoscope;·len:·324,·SHA:·92d4421238f03694f29f131c3d67506966e60fabd126a812e75f26a6d15d02f2·...·]-1">)</span></code></pre><p><code·class="inline">Anno</code>·is·the·<a·href="erl_anno.html#t:anno/0"><code·class="inline">erl_anno:anno()</code></a>·of·the·node,·<code·class="inline">FuncSpec</code>164 may·be·called·with·two·arguments:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Func</span><span·class="p"·data-group-id="1798066233-1">(</span><span·class="n">FuncSpec</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arguments</span><span·class="p"·data-group-id="1798066233-1">)</span></code></pre><p>or·three·arguments:</p><pre><code·class="makeup·erlang[·...·truncated·by·diffoscope;·len:·324,·SHA:·d20617ca0b4012fcc025f8c2c513bd20ecdf999199530c059f484f63c74620d1·...·]-1">)</span></code></pre><p><code·class="inline">Anno</code>·is·the·<a·href="erl_anno.html#t:anno/0"><code·class="inline">erl_anno:anno()</code></a>·of·the·node,·<code·class="inline">FuncSpec</code>
165 is·the·name·of·the·function·on·the·form·<code·class="inline">{Module,Function}</code>·or·a·fun,·and165 is·the·name·of·the·function·on·the·form·<code·class="inline">{Module,Function}</code>·or·a·fun,·and
166 <code·class="inline">Arguments</code>·is·a·list·of·the·<em>evaluated</em>·arguments.·The·function·handler166 <code·class="inline">Arguments</code>·is·a·list·of·the·<em>evaluated</em>·arguments.·The·function·handler
167 returns·the·value·of·the·function.·To·signal·an·error,·the·function·handler167 returns·the·value·of·the·function.·To·signal·an·error,·the·function·handler
168 calls·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit/1</code></a>·with·a·suitable·exit·value.</p></li><li><p><strong><code·class="inline">none</code></strong>·-·There·is·no·non-local·function·handler.</p></li></ul><blockquote><h4·class="info">Note</h4><p>For·calls·such·as·<code·class="inline">erlang:apply(Fun,·Args)</code>·or168 calls·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#exit/1"><code·class="inline">exit/1</code></a>·with·a·suitable·exit·value.</p></li><li><p><strong><code·class="inline">none</code></strong>·-·There·is·no·non-local·function·handler.</p></li></ul><blockquote><h4·class="info">Note</h4><p>For·calls·such·as·<code·class="inline">erlang:apply(Fun,·Args)</code>·or
169 <code·class="inline">erlang:apply(Module,·Function,·Args)</code>,·the·call·of·the·non-local·function169 <code·class="inline">erlang:apply(Module,·Function,·Args)</code>,·the·call·of·the·non-local·function
170 handler·corresponding·to·the·call·to·<code·class="inline">erlang:apply/2,3</code>·itself170 handler·corresponding·to·the·call·to·<code·class="inline">erlang:apply/2,3</code>·itself
171 (<code·class="inline">Func({erlang,·apply},·[Fun,·Args])</code>·or171 (<code·class="inline">Func({erlang,·apply},·[Fun,·Args])</code>·or
Offset 1421, 15 lines modifiedOffset 1421, 15 lines modified
1421 ······<p·class="built-using">1421 ······<p·class="built-using">
1422 ········Built·using1422 ········Built·using
1423 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1423 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1424 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1424 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1425 ······</p>1425 ······</p>
1426 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1426 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1427 ····</footer>1427 ····</footer>
1428 ··</div>1428 ··</div>
1429 </main>1429 </main>
1430 </div>1430 </div>
1431 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1431 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1432 <script>1432 <script>
1433 ··document.addEventListener("DOMContentLoaded",·function·()·{1433 ··document.addEventListener("DOMContentLoaded",·function·()·{
657 B
html2text {}
Max HTML report size reached
1.6 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_expand_records.html
    
Offset 232, 15 lines modifiedOffset 232, 15 lines modified
232 ······<p·class="built-using">232 ······<p·class="built-using">
233 ········Built·using233 ········Built·using
234 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the234 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
235 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>235 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
236 ······</p>236 ······</p>
237 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>237 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
238 ····</footer>238 ····</footer>
239 ··</div>239 ··</div>
240 </main>240 </main>
241 </div>241 </div>
242 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>242 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
243 <script>243 <script>
244 ··document.addEventListener("DOMContentLoaded",·function·()·{244 ··document.addEventListener("DOMContentLoaded",·function·()·{
772 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_features.html
    
Offset 588, 15 lines modifiedOffset 588, 15 lines modified
588 ······<p·class="built-using">588 ······<p·class="built-using">
589 ········Built·using589 ········Built·using
590 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the590 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
591 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>591 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
592 ······</p>592 ······</p>
593 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>593 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
594 ····</footer>594 ····</footer>
595 ··</div>595 ··</div>
596 </main>596 </main>
597 </div>597 </div>
598 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>598 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
599 <script>599 <script>
600 ··document.addEventListener("DOMContentLoaded",·function·()·{600 ··document.addEventListener("DOMContentLoaded",·function·()·{
718 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_id_trans.html
    
Offset 287, 15 lines modifiedOffset 287, 15 lines modified
287 ······<p·class="built-using">287 ······<p·class="built-using">
288 ········Built·using288 ········Built·using
289 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the289 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
290 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>290 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
291 ······</p>291 ······</p>
292 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>292 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
293 ····</footer>293 ····</footer>
294 ··</div>294 ··</div>
295 </main>295 </main>
296 </div>296 </div>
297 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>297 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
298 <script>298 <script>
299 ··document.addEventListener("DOMContentLoaded",·function·()·{299 ··document.addEventListener("DOMContentLoaded",·function·()·{
648 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_internal.html
    
Offset 576, 15 lines modifiedOffset 576, 15 lines modified
576 ······<p·class="built-using">576 ······<p·class="built-using">
577 ········Built·using577 ········Built·using
578 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the578 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
579 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>579 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
580 ······</p>580 ······</p>
581 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>581 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
582 ····</footer>582 ····</footer>
583 ··</div>583 ··</div>
584 </main>584 </main>
585 </div>585 </div>
586 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>586 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
587 <script>587 <script>
588 ··document.addEventListener("DOMContentLoaded",·function·()·{588 ··document.addEventListener("DOMContentLoaded",·function·()·{
696 B
html2text {}
Max HTML report size reached
3.79 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_lint.html
    
Offset 135, 15 lines modifiedOffset 135, 15 lines modified
135 your·own·Erlang·compiler.</p><h2·id="module-error-information"·class="section-heading">135 your·own·Erlang·compiler.</p><h2·id="module-error-information"·class="section-heading">
136 ··<a·href="#module-error-information"·class="hover-link">136 ··<a·href="#module-error-information"·class="hover-link">
137 ····<i·class="ri-link-m"·aria-hidden="true"></i>137 ····<i·class="ri-link-m"·aria-hidden="true"></i>
138 ··</a>138 ··</a>
139 ··<span·class="text">Error·Information</span>139 ··<span·class="text">Error·Information</span>
140 </h2>140 </h2>
141 <p><code·class="inline">ErrorInfo</code>·is·the·standard·<code·class="inline">ErrorInfo</code>·structure·that·is·returned·from·all·I/O141 <p><code·class="inline">ErrorInfo</code>·is·the·standard·<code·class="inline">ErrorInfo</code>·structure·that·is·returned·from·all·I/O
142 modules.·The·format·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5418693738-1">{</span><span·class="n">ErrorLine</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorDescriptor</span><span·class="p"·data-group-id="54186937[·...·truncated·by·diffoscope;·len:·369,·SHA:·2c1ac8a5db8cc92ba6c26b842c8f42d64fd0ecf81feeffa9a06ee999890f6912·...·]-1">)</span></code></pre><h2·id="module-see-also"·class="section-heading">142 modules.·The·format·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3507036815-1">{</span><span·class="n">ErrorLine</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorDescriptor</span><span·class="p"·data-group-id="35070368[·...·truncated·by·diffoscope;·len:·369,·SHA:·760f5cda2dfa4c29326eea2e3a132bb45113db2f05fa8bdfb336939763eed27a·...·]-1">)</span></code></pre><h2·id="module-see-also"·class="section-heading">
143 ··<a·href="#module-see-also"·class="hover-link">143 ··<a·href="#module-see-also"·class="hover-link">
144 ····<i·class="ri-link-m"·aria-hidden="true"></i>144 ····<i·class="ri-link-m"·aria-hidden="true"></i>
145 ··</a>145 ··</a>
146 ··<span·class="text">See·Also</span>146 ··<span·class="text">See·Also</span>
147 </h2>147 </h2>
148 <p><a·href="epp.html"><code·class="inline">epp</code></a>,·<a·href="erl_parse.html"><code·class="inline">erl_parse</code></a></p>148 <p><a·href="epp.html"><code·class="inline">epp</code></a>,·<a·href="erl_parse.html"><code·class="inline">erl_parse</code></a></p>
149 ····</section>149 ····</section>
Offset 591, 15 lines modifiedOffset 591, 15 lines modified
591 ······<p·class="built-using">591 ······<p·class="built-using">
592 ········Built·using592 ········Built·using
593 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the593 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
594 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>594 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
595 ······</p>595 ······</p>
596 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>596 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
597 ····</footer>597 ····</footer>
598 ··</div>598 ··</div>
599 </main>599 </main>
600 </div>600 </div>
601 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>601 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
602 <script>602 <script>
603 ··document.addEventListener("DOMContentLoaded",·function·()·{603 ··document.addEventListener("DOMContentLoaded",·function·()·{
682 B
html2text {}
Max HTML report size reached
3.94 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_parse.html
    
Offset 134, 15 lines modifiedOffset 134, 15 lines modified
134 (see·the·<a·href="erl_scan.html"><code·class="inline">erl_scan</code></a>)·module.</p><h2·id="module-error-information"·class="section-heading">134 (see·the·<a·href="erl_scan.html"><code·class="inline">erl_scan</code></a>)·module.</p><h2·id="module-error-information"·class="section-heading">
135 ··<a·href="#module-error-information"·class="hover-link">135 ··<a·href="#module-error-information"·class="hover-link">
136 ····<i·class="ri-link-m"·aria-hidden="true"></i>136 ····<i·class="ri-link-m"·aria-hidden="true"></i>
137 ··</a>137 ··</a>
138 ··<span·class="text">Error·Information</span>138 ··<span·class="text">Error·Information</span>
139 </h2>139 </h2>
140 <p>ErrorInfo·is·the·standard·ErrorInfo·structure·that·is·returned·from·all·I/O·modules.140 <p>ErrorInfo·is·the·standard·ErrorInfo·structure·that·is·returned·from·all·I/O·modules.
141 The·format·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2606134442-1">{</span><span·class="n">ErrorLine</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorDescriptor</span><span·class="p"·data-group-id="26061344[·...·truncated·by·diffoscope;·len:·369,·SHA:·bb2e9e6b8235dec860040b7000485db8fc02b0e760644b42b48428cdac042628·...·]-1">)</span></code></pre><h2·id="module-see-also"·class="section-heading">141 The·format·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8297367978-1">{</span><span·class="n">ErrorLine</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorDescriptor</span><span·class="p"·data-group-id="82973679[·...·truncated·by·diffoscope;·len:·369,·SHA:·ed572fc9eb84288bc54ee496b732b6e215b17699b04d2027d7f20a11350316ea·...·]-1">)</span></code></pre><h2·id="module-see-also"·class="section-heading">
142 ··<a·href="#module-see-also"·class="hover-link">142 ··<a·href="#module-see-also"·class="hover-link">
143 ····<i·class="ri-link-m"·aria-hidden="true"></i>143 ····<i·class="ri-link-m"·aria-hidden="true"></i>
144 ··</a>144 ··</a>
145 ··<span·class="text">See·Also</span>145 ··<span·class="text">See·Also</span>
146 </h2>146 </h2>
147 <p><a·href="erl_anno.html"><code·class="inline">erl_anno</code></a>,·<a·href="erl_scan.html"><code·class="inline">erl_scan</code></a>,·<a·href="io.html"><code·class="inline">io</code></a>,·section·<a·href="../../../../erts-15.0.1/doc/html/absform.html">The·Abstract·Format</a>147 <p><a·href="erl_anno.html"><code·class="inline">erl_anno</code></a>,·<a·href="erl_scan.html"><code·class="inline">erl_scan</code></a>,·<a·href="io.html"><code·class="inline">io</code></a>,·section·<a·href="../../../../erts-15.0.1/doc/html/absform.html">The·Abstract·Format</a>
148 in·the·ERTS·User's·Guide.</p>148 in·the·ERTS·User's·Guide.</p>
Offset 5916, 15 lines modifiedOffset 5916, 15 lines modified
5916 ······<p·class="built-using">5916 ······<p·class="built-using">
5917 ········Built·using5917 ········Built·using
5918 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the5918 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
5919 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>5919 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
5920 ······</p>5920 ······</p>
5921 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>5921 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
5922 ····</footer>5922 ····</footer>
5923 ··</div>5923 ··</div>
5924 </main>5924 </main>
5925 </div>5925 </div>
5926 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>5926 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
5927 <script>5927 <script>
5928 ··document.addEventListener("DOMContentLoaded",·function·()·{5928 ··document.addEventListener("DOMContentLoaded",·function·()·{
679 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_pp.html
    
Offset 1001, 15 lines modifiedOffset 1001, 15 lines modified
1001 ······<p·class="built-using">1001 ······<p·class="built-using">
1002 ········Built·using1002 ········Built·using
1003 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1003 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1004 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1004 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1005 ······</p>1005 ······</p>
1006 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1006 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1007 ····</footer>1007 ····</footer>
1008 ··</div>1008 ··</div>
1009 </main>1009 </main>
1010 </div>1010 </div>
1011 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1011 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1012 <script>1012 <script>
1013 ··document.addEventListener("DOMContentLoaded",·function·()·{1013 ··document.addEventListener("DOMContentLoaded",·function·()·{
759 B
html2text {}
Max HTML report size reached
3.75 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_scan.html
    
Offset 132, 15 lines modifiedOffset 132, 15 lines modified
132 tokens.</p><h2·id="module-error-information"·class="section-heading">132 tokens.</p><h2·id="module-error-information"·class="section-heading">
133 ··<a·href="#module-error-information"·class="hover-link">133 ··<a·href="#module-error-information"·class="hover-link">
134 ····<i·class="ri-link-m"·aria-hidden="true"></i>134 ····<i·class="ri-link-m"·aria-hidden="true"></i>
135 ··</a>135 ··</a>
136 ··<span·class="text">Error·Information</span>136 ··<span·class="text">Error·Information</span>
137 </h2>137 </h2>
138 <p><code·class="inline">ErrorInfo</code>·is·the·standard·<code·class="inline">ErrorInfo</code>·structure·that·is·returned·from·all·I/O138 <p><code·class="inline">ErrorInfo</code>·is·the·standard·<code·class="inline">ErrorInfo</code>·structure·that·is·returned·from·all·I/O
139 modules.·The·format·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4175938001-1">{</span><span·class="n">ErrorLocation</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorDescriptor</span><span·class="p"·data-group-id="4175[·...·truncated·by·diffoscope;·len:·373,·SHA:·f11a1adf7c20719ab6a345599c70573f30001176352c8d9098c16185924f8ebb·...·]-1">)</span></code></pre><h2·id="module-notes"·class="section-heading">139 modules.·The·format·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9578822872-1">{</span><span·class="n">ErrorLocation</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ErrorDescriptor</span><span·class="p"·data-group-id="9578[·...·truncated·by·diffoscope;·len:·373,·SHA:·83eecdff5edc936dea4a4bb02a77eb099b547f3f88633fe50cdf20ec16a96de1·...·]-1">)</span></code></pre><h2·id="module-notes"·class="section-heading">
140 ··<a·href="#module-notes"·class="hover-link">140 ··<a·href="#module-notes"·class="hover-link">
141 ····<i·class="ri-link-m"·aria-hidden="true"></i>141 ····<i·class="ri-link-m"·aria-hidden="true"></i>
142 ··</a>142 ··</a>
143 ··<span·class="text">Notes</span>143 ··<span·class="text">Notes</span>
144 </h2>144 </h2>
145 <p>The·continuation·of·the·first·call·to·the·re-entrant·input·functions·must·be145 <p>The·continuation·of·the·first·call·to·the·re-entrant·input·functions·must·be
146 <code·class="inline">[]</code>.·For·a·complete·description·of·how·the·re-entrant·input·scheme·works,·see146 <code·class="inline">[]</code>.·For·a·complete·description·of·how·the·re-entrant·input·scheme·works,·see
Offset 1341, 15 lines modifiedOffset 1341, 15 lines modified
1341 ······<p·class="built-using">1341 ······<p·class="built-using">
1342 ········Built·using1342 ········Built·using
1343 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1343 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1344 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1344 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1345 ······</p>1345 ······</p>
1346 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1346 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1347 ····</footer>1347 ····</footer>
1348 ··</div>1348 ··</div>
1349 </main>1349 </main>
1350 </div>1350 </div>
1351 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1351 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1352 <script>1352 <script>
1353 ··document.addEventListener("DOMContentLoaded",·function·()·{1353 ··document.addEventListener("DOMContentLoaded",·function·()·{
620 B
html2text {}
Max HTML report size reached
14.5 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/erl_tar.html
    
Offset 1287, 22 lines modifiedOffset 1287, 22 lines modified
1287 storage·handling·function.</p><p>Parameter·<code·class="inline">UserData</code>·is·typically·the·result·of·opening·a·low-level·structure1287 storage·handling·function.</p><p>Parameter·<code·class="inline">UserData</code>·is·typically·the·result·of·opening·a·low-level·structure
1288 like·a·file·descriptor·or·an·SFTP·channel·id.·The·different·<code·class="inline">Fun</code>·clauses1288 like·a·file·descriptor·or·an·SFTP·channel·id.·The·different·<code·class="inline">Fun</code>·clauses
1289 operate·on·that·very·term.</p><p>The·following·are·the·fun·clauses·parameter·lists:</p><ul><li><p><strong><code·class="inline">(write,·{UserData,DataToWrite})</code></strong>·-·Writes·term·<code·class="inline">DataToWrite</code>·using1289 operate·on·that·very·term.</p><p>The·following·are·the·fun·clauses·parameter·lists:</p><ul><li><p><strong><code·class="inline">(write,·{UserData,DataToWrite})</code></strong>·-·Writes·term·<code·class="inline">DataToWrite</code>·using
1290 <code·class="inline">UserData</code>.</p></li><li><p><strong><code·class="inline">(close,·UserData)</code></strong>·-·Closes·the·access.</p></li><li><p><strong><code·class="inline">(read2,·{UserData,Size})</code></strong>·-·Reads·using·<code·class="inline">UserData</code>·but·only·<code·class="inline">Size</code>·bytes.1290 <code·class="inline">UserData</code>.</p></li><li><p><strong><code·class="inline">(close,·UserData)</code></strong>·-·Closes·the·access.</p></li><li><p><strong><code·class="inline">(read2,·{UserData,Size})</code></strong>·-·Reads·using·<code·class="inline">UserData</code>·but·only·<code·class="inline">Size</code>·bytes.
1291 Notice·that·there·is·only·an·arity-2·read·function,·not·an·arity-1·function.</p></li><li><p><strong><code·class="inline">(position,{UserData,Position})</code></strong>·-·Sets·the·position·of·<code·class="inline">UserData</code>·as1291 Notice·that·there·is·only·an·arity-2·read·function,·not·an·arity-1·function.</p></li><li><p><strong><code·class="inline">(position,{UserData,Position})</code></strong>·-·Sets·the·position·of·<code·class="inline">UserData</code>·as
1292 defined·for·files·in·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#position/2"><code·class="inline">file:position/2</code></a></p></li></ul><p><em>Example:</em></p><p>The·following·is·a·complete·<code·class="inline">Fun</code>·parameter·for·reading·and·writing·on·files1292 defined·for·files·in·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#position/2"><code·class="inline">file:position/2</code></a></p></li></ul><p><em>Example:</em></p><p>The·following·is·a·complete·<code·class="inline">Fun</code>·parameter·for·reading·and·writing·on·files
1293 using·the·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html"><code·class="inline">file</code></a>·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">ExampleFun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">1293 using·the·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html"><code·class="inline">file</code></a>·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">ExampleFun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
1294 ···</span><span·class="nf">fun</span><span·class="p"·data-group-id="6206306230-1">(</span><span·class="ss">write</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206306230-2">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·430,·SHA:·43045723cda547382769c8459b5079cbe728a628c9e0a00b5d7ac145f70f1822·...·]-3">)</span><span·class="p">;</span><span·class="w">1294 ···</span><span·class="nf">fun</span><span·class="p"·data-group-id="0168084231-1">(</span><span·class="ss">write</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0168084231-2">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·430,·SHA:·dc5975f0bbfc4dd0a83838f403eb67168a71ff4750f2ac0995bacafc405c9787·...·]-3">)</span><span·class="p">;</span><span·class="w">
1295 ······</span><span·class="p"·data-group-id="6206306230-4">(</span><span·class="ss">position</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206306230-5">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Pos</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·433,·SHA:·ba7e81f96064f46488cb5a70645df9579f743aafba3059dc9fdff18ebc6271db·...·]-6">)</span><span·class="p">;</span><span·class="w">1295 ······</span><span·class="p"·data-group-id="0168084231-4">(</span><span·class="ss">position</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0168084231-5">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Pos</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·433,·SHA:·d568dac7c78a65645ed9e2d64233900c78bc3da8e8ff6a7a6ced2c702fbaebf1·...·]-6">)</span><span·class="p">;</span><span·class="w">
1296 ······</span><span·class="p"·data-group-id="6206306230-7">(</span><span·class="ss">read2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6206306230-8">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Size</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·428,·SHA:·7bec2248b167814a309ec7666e7be1de4842c2273e15d65ffe18a052ad9b75c7·...·]-9">)</span><span·class="p">;</span><span·class="w">1296 ······</span><span·class="p"·data-group-id="0168084231-7">(</span><span·class="ss">read2</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0168084231-8">{</span><span·class="n">Fd</span><span·class="p">,</span><span·class="n">Size</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·428,·SHA:·bfe1ef1369bc1aadd9a7ac8dc70de2705ab3b7dd3c2db552a3728ee4005cbd9f·...·]-9">)</span><span·class="p">;</span><span·class="w">
1297 ······</span><span·class="p"·data-group-id="6206306230-10">(</span><span·class="ss">close</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="6206306230-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·200,·SHA:·c335d4ff40ff2c85d3d27b7f338d78e7b15a3507eda4b86ba0de7505587ce54b·...·]-11">)</span><span·class="w">1297 ······</span><span·class="p"·data-group-id="0168084231-10">(</span><span·class="ss">close</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Fd</span><span·class="p"·data-group-id="0168084231-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·200,·SHA:·20b23b64c0fc8e4fd85d7c1a52559a3d8dedf022bf48d96467d8f616946e11ab·...·]-11">)</span><span·class="w">
1298 ···</span><span·class="k">end</span></code></pre><p>Here·<code·class="inline">Fd</code>·was·specified·to·function·<a·href="#init/3"><code·class="inline">init/3</code></a>·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6239368715-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">Fd</span><span·class="p"·data-group-id="6239368715-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="6239368715-2">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="6239368715-2">)</span><span·class="p">.</span><span·class="w"> 
1299 </span><span·class="p"·data-group-id="6239368715-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TarDesc</span><span·class="p"·data-group-id="6239368715-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w"[·...·truncated·by·diffoscope;·len:·1041,·SHA:·2a8d27107e2b649873f2f10e492179b15a376c5275be25879fb37c80f36ea82f·...·]</span><span·class="w">1298 ···</span><span·class="k">end</span></code></pre><p>Here·<code·class="inline">Fd</code>·was·specified·to·function·<a·href="#init/3"><code·class="inline">init/3</code></a>·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·573,·SHA:·ae45b39c69fcb484247c31d0b3323a619ecb7b68f088c2b5ecf31bc3407538e1·...·]</span><span·class="w">
 1299 </span><span·class="p"·data-group-id="4224450305-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TarDesc</span><span·class="p"·data-group-id="4224450305-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">erl_tar</span><span·class="p">:</span><span·class="nf">init</span><span·class="p"·data-group-id="4224450305-4">(</span><span·class="n">Fd</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4224450305-5">[</span><span·class="ss">write</span><span·class="p"·data-group-id="4224450305-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ExampleFun</span><span·class="p"·data-group-id="4224450305-4">)</span><span·class="p">,</span></code></pre><p><code·class="inline">TarDesc</code>·is·then·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">erl_tar</span><span·class="p">:</span><span·class="nf">add</span><span·class="p"·data-group-id="7605978647-1">(</span><span·class="n">TarDesc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SomeValueIwantToAdd</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FileNameInTarFile</span><span·class="p"·data-group-id="7605978647-1">)</span><span·class="p">,</span><span·class="w">
1300 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">1300 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">,</span><span·class="w">
1301 </span><span·class="nc">erl_tar</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="0190666541-2">(</span><span·class="n">TarDesc</span><span·class="p"·data-group-id="0190666541-2">)</span></code></pre><p>When·the·<code·class="inline">erl_tar</code>·core·wants·to,·for·example,·write·a·piece·of·<code·class="inline">Data</code>,·it·would1301 </span><span·class="nc">erl_tar</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="7605978647-2">(</span><span·class="n">TarDesc</span><span·class="p"·data-group-id="7605978647-2">)</span></code></pre><p>When·the·<code·class="inline">erl_tar</code>·core·wants·to,·for·example,·write·a·piece·of·<code·class="inline">Data</code>,·it·would
1302 call·<code·class="inline">ExampleFun(write,·{UserData,Data})</code>.</p><blockquote><h4·class="info">Note</h4><p>This·example·with·the·<code·class="inline">file</code>·module·operations·is·not·necessary·to·use1302 call·<code·class="inline">ExampleFun(write,·{UserData,Data})</code>.</p><blockquote><h4·class="info">Note</h4><p>This·example·with·the·<code·class="inline">file</code>·module·operations·is·not·necessary·to·use
1303 directly,·as·that·is·what·function·<a·href="#open/2"><code·class="inline">open/2</code></a>·in·principle·does.</p></blockquote><blockquote><h4·class="warning">Warning</h4><p>The·<code·class="inline">TarDescriptor</code>·term·is·not·a·file·descriptor.·You·are·advised·not·to·rely1303 directly,·as·that·is·what·function·<a·href="#open/2"><code·class="inline">open/2</code></a>·in·principle·does.</p></blockquote><blockquote><h4·class="warning">Warning</h4><p>The·<code·class="inline">TarDescriptor</code>·term·is·not·a·file·descriptor.·You·are·advised·not·to·rely
1304 on·the·specific·contents·of·this·term,·as·it·can·change·in·future·Erlang/OTP1304 on·the·specific·contents·of·this·term,·as·it·can·change·in·future·Erlang/OTP
1305 releases·when·more·features·are·added·to·this·module.</p></blockquote>1305 releases·when·more·features·are·added·to·this·module.</p></blockquote>
1306 ··</section>1306 ··</section>
1307 </section>1307 </section>
1308 <section·class="detail"·id="open/2">1308 <section·class="detail"·id="open/2">
Offset 1483, 15 lines modifiedOffset 1483, 15 lines modified
1483 ······<p·class="built-using">1483 ······<p·class="built-using">
1484 ········Built·using1484 ········Built·using
1485 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1485 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1486 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1486 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1487 ······</p>1487 ······</p>
1488 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1488 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1489 ····</footer>1489 ····</footer>
1490 ··</div>1490 ··</div>
1491 </main>1491 </main>
1492 </div>1492 </div>
1493 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1493 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1494 <script>1494 <script>
1495 ··document.addEventListener("DOMContentLoaded",·function·()·{1495 ··document.addEventListener("DOMContentLoaded",·function·()·{
651 B
html2text {}
Max HTML report size reached
72.2 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/escript.html
    
Offset 518, 75 lines modifiedOffset 518, 75 lines modified
518 <code·class="inline">shebang</code>·defaults·to·<code·class="inline">&quot;/usr/bin/env·escript&quot;</code>.·The·<code·class="inline">comment</code>·defaults·to518 <code·class="inline">shebang</code>·defaults·to·<code·class="inline">&quot;/usr/bin/env·escript&quot;</code>.·The·<code·class="inline">comment</code>·defaults·to
519 <code·class="inline">&quot;This·is·an·-*-·erlang·-*-·file&quot;</code>.·The·created·escript·can·either·be·returned519 <code·class="inline">&quot;This·is·an·-*-·erlang·-*-·file&quot;</code>.·The·created·escript·can·either·be·returned
520 as·a·binary·or·written·to·file.</p><p>As·an·example·of·how·the·function·can·be·used,·we·create·an·interpreted·escript520 as·a·binary·or·written·to·file.</p><p>As·an·example·of·how·the·function·can·be·used,·we·create·an·interpreted·escript
521 that·uses·<code·class="inline">emu_args</code>·to·set·some·emulator·flag.·In·this·case,·it·happens·to·set521 that·uses·<code·class="inline">emu_args</code>·to·set·some·emulator·flag.·In·this·case,·it·happens·to·set
522 number·of·schedulers·with·<code·class="inline">+S3</code>.·We·also·extract·the·different·sections·from·the522 number·of·schedulers·with·<code·class="inline">+S3</code>.·We·also·extract·the·different·sections·from·the
523 newly·created·script:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">Source</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;%%·Demo\nmain(_Args)·-&gt;\n····io:format(\&quot;</span><span·class="si">~p</span><span·class="s">\&quot;,[erlang:system_info(schedulers)]).\n&quot;</span><span·class="p">.</span><span·class="w">523 newly·created·script:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">Source</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;%%·Demo\nmain(_Args)·-&gt;\n····io:format(\&quot;</span><span·class="si">~p</span><span·class="s">\&quot;,[erlang:system_info(schedulers)]).\n&quot;</span><span·class="p">.</span><span·class="w">
524 </span><span·class="s">&quot;%%·Demo\nmain(_Args)·-&gt;\n····io:format(erlang:system_info(schedulers)).\n&quot;</span><span·class="gp·unselectable">524 </span><span·class="s">&quot;%%·Demo\nmain(_Args)·-&gt;\n····io:format(erlang:system_info(schedulers)).\n&quot;</span><span·class="gp·unselectable">
525 &gt;·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3159446790-1">(</span><span·class="s">&quot;</span><span·class="si">~s</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3159446790-2">[</span><span·class="n">Source</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·1b7c9ef3759d2b131f2b2be7b9876be1c8e70ca0e89ed32358212b4e7ff341b7·...·]-1">)</span><span·class="p">.</span><span·class="w">525 &gt;·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5025898799-1">(</span><span·class="s">&quot;</span><span·class="si">~s</span><span·class="s">\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5025898799-2">[</span><span·class="n">Source</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·684360cf72d71e1932ebeb5f2b4a9dbced001bf79b889d4ca14bb2e73d0f2611·...·]-1">)</span><span·class="p">.</span><span·class="w">
526 </span><span·class="c1">%%·Demo</span><span·class="w">526 </span><span·class="c1">%%·Demo</span><span·class="w">
527 </span><span·class="nf">main</span><span·class="p"·data-group-id="3159446790-3">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="3159446790-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">527 </span><span·class="nf">main</span><span·class="p"·data-group-id="5025898799-3">(</span><span·class="p">_</span><span·class="n">Args</span><span·class="p"·data-group-id="5025898799-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
528 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3159446790-4">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="3159446790-5">(</span><span·class="ss">schedulers</span><span·class="p"·data-group-id="3159446790-5">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·6c9eb7c408c5fa7f155a57f8c0e01d9294e5b179da1b29d06852a67309ea83de·...·]-4">)</span><span·class="p">.</span><span·class="w">528 ····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5025898799-4">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="5025898799-5">(</span><span·class="ss">schedulers</span><span·class="p"·data-group-id="5025898799-5">)</span><span[·...·truncated·by·diffoscope;·len:·36,·SHA:·43404b2c5f4b89bdae842cd0078bc1088781e68c69c2863eb28796ff9f9e268d·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
529 </span><span·class="ss">ok</span><span·class="gp·unselectable">529 </span><span·class="ss">ok</span><span·class="gp·unselectable">
530 &gt;·</span><span·class="p"·data-group-id="3159446790-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p"·data-group-id="3159446790-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·630,·SHA:·52002a409da166d057817e8c17ea6728a7552f5562dd65dd78fa0d06b7e98f7f·...·]-9">}</span><span·class="p">,</span><span·class="w">530 &gt;·</span><span·class="p"·data-group-id="5025898799-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p"·data-group-id="5025898799-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·630,·SHA:·92cc658d1c175075c964c576ca119529c12b748441c3eb9500bc463fb489c677·...·]-9">}</span><span·class="p">,</span><span·class="w">
531 ······································</span><span·class="p"·data-group-id="3159446790-10">{</span><span·class="ss">source</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="3159446790-11">(</span><span·class="n">Source</span><span·class="p"·data-group-id="315[·...·truncated·by·diffoscope;·len:·168,·SHA:·1881daf474547a5ab637b69f02d0ddee1be53e6a67d4c2add3334deedd971e80·...·]-7">)</span><span·class="p">.</span><span·class="w">531 ······································</span><span·class="p"·data-group-id="5025898799-10">{</span><span·class="ss">source</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="5025898799-11">(</span><span·class="n">Source</span><span·class="p"·data-group-id="502[·...·truncated·by·diffoscope;·len:·168,·SHA:·a3e1507b9d8a46dfba22bf6918974751ce49da3293e6ca838d036226e12b4f07·...·]-7">)</span><span·class="p">.</span><span·class="w">
532 </span><span·class="p"·data-group-id="3159446790-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;#!/usr/bin/env·escript\n%%·This·is·an·-*-·erlang·-*-·file\n%%!+S3&quot;</span><span·class="p">.</span><span·class="p">.</span><spa[·...·truncated·by·diffoscope;·len:·92,·SHA:·2c7ee072b79d5d1266780d0b8b68bd92ea22ae4c978eeb1b35607380cd1b419b·...·]-12">}</span><span·class="gp·unselectable">532 </span><span·class="p"·data-group-id="5025898799-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;#!/usr/bin/env·escript\n%%·This·is·an·-*-·erlang·-*-·file\n%%!+S3&quot;</span><span·class="p">.</span><span·class="p">.</span><spa[·...·truncated·by·diffoscope;·len:·92,·SHA:·b2083d2a1511dc29eabeaa1564f68264c9b6cbd0908de684719f1f4bcc06f3cf·...·]-12">}</span><span·class="gp·unselectable">
533 &gt;·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write_file</span><span·class="p"·data-group-id="3159446790-13">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p"·data-group-id="3159446790-13">)</span><span·class="p">.</span><span·class="w">533 &gt;·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write_file</span><span·class="p"·data-group-id="5025898799-13">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·class="p"·data-group-id="5025898799-13">)</span><span·class="p">.</span><span·class="w">
534 </span><span·class="ss">ok</span><span·class="gp·unselectable">534 </span><span·class="ss">ok</span><span·class="gp·unselectable">
535 &gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="3159446790-14">(</span><span·class="s">&quot;escript·demo.escript&quot;</span><span·class="p"·data-group-id="3159446790-14">)</span><span·class="p">.</span><span·class="w">535 &gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="5025898799-14">(</span><span·class="s">&quot;escript·demo.escript&quot;</span><span·class="p"·data-group-id="5025898799-14">)</span><span·class="p">.</span><span·class="w">
536 </span><span·class="s">&quot;3&quot;</span><span·class="gp·unselectable">536 </span><span·class="s">&quot;3&quot;</span><span·class="gp·unselectable">
537 &gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">extract</span><span·class="p"·data-group-id="3159446790-15">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3159446790-16">[</span><span·class="p"·data-group-id="3159446790-16">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·7b3569325c2992f82e817281441a15477c35ab574d585dd3fd1138afe54b9442·...·]-15">)</span><span·class="p">.</span><span·class="w">537 &gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">extract</span><span·class="p"·data-group-id="5025898799-15">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5025898799-16">[</span><span·class="p"·data-group-id="5025898799-16">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·748e9056cb331e29a6f42e550c0383b8a5bfba15eebb5af1f96420618fc4610d·...·]-15">)</span><span·class="p">.</span><span·class="w">
538 </span><span·class="p"·data-group-id="3159446790-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3159446790-18">[</span><span·class="p"·data-group-id="3159446790-19">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">def[·...·truncated·by·diffoscope;·len:·544,·SHA:·9b74cbba0fc29b646210567088f600ecab98a1dbbf6df7f27a5eaf3bc9065e06·...·]-21">}</span><span·class="p">,</span><span·class="w">538 </span><span·class="p"·data-group-id="5025898799-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5025898799-18">[</span><span·class="p"·data-group-id="5025898799-19">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">def[·...·truncated·by·diffoscope;·len:·544,·SHA:·9a2c6237c987750599026f23baf45ca6b7afe6cc0ca7801dd0bf1eedf24c6b61·...·]-21">}</span><span·class="p">,</span><span·class="w">
539 ·····</span><span·class="p"·data-group-id="3159446790-22">{</span><span·class="ss">source</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;%%·Demo\nmain(_Args)·-&gt;\n····io:format(erlang:system_info(schedu&quot;</span><span·class="p">.</span><span·class="p">.</spa[·...·truncated·by·diffoscope;·len:·508,·SHA:·24e872a6941a90afe7d421afe5e17a5bad8d69acc221f7b0703d4eb889b83eb9·...·]-1">(</span><span·class="s">&quot;demo.erl&quot;</span><span·class="p">,</span><span·class="w">539 ·····</span><span·class="p"·data-group-id="5025898799-22">{</span><span·class="ss">source</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;%%·Demo\nmain(_Args)·-&gt;\n····io:format(erlang:system_info(schedu&quot;</span><span·class="p">.</span><span·class="p">.</spa[·...·truncated·by·diffoscope;·len:·508,·SHA:·99e50838374696f019a399622f3d9bb08941aa30a7646edbb0b3e6f44fe05de8·...·]-1">(</span><span·class="s">&quot;demo.erl&quot;</span><span·class="p">,</span><span·class="w">
540 ··················</span><span·class="p"·data-group-id="4739340016-2">[</span><span·class="s">&quot;%%·demo.erl\n-module(demo).\n-export([main/1]).\n\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Source</span><span·class="p"·data-group-id="4739340016-2">]</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·6edbbe892dc87dc207d64c6ba787fa490d7adf44b37869e2808195ee33533f9a·...·]-1">)</span><span·class="p">.</span><span·class="w">540 ··················</span><span·class="p"·data-group-id="7010326335-2">[</span><span·class="s">&quot;%%·demo.erl\n-module(demo).\n-export([main/1]).\n\n&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Source</span><span·class="p"·data-group-id="7010326335-2">]</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·23,·SHA:·d8a08bfec8d462b5cd1b0444be45e3138421dd37e11b440e89cf72c32f6ecff6·...·]-1">)</span><span·class="p">.</span><span·class="w">
541 </span><span·class="ss">ok</span><span·class="gp·unselectable">541 </span><span·class="ss">ok</span><span·class="gp·unselectable">
542 &gt;·</span><span·class="p"·data-group-id="4739340016-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BeamCode</span><span·class="p"·data-group-id="4739340016-3">}</span><spa[·...·truncated·by·diffoscope;·len:·554,·SHA:·2a91ca308f1281346d9db460aabe5efb48c71496cb0ca352b65fdf2955875800·...·]-4">)</span><span·class="p">.</span><span·class="w">542 &gt;·</span><span·class="p"·data-group-id="7010326335-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BeamCode</span><span·class="p"·data-group-id="7010326335-3">}</span><spa[·...·truncated·by·diffoscope;·len:·554,·SHA:·b4caf7b293d67781df412aa7f6ef9aebdb02c3d6a7be7187f455a4580c64d7a4·...·]-4">)</span><span·class="p">.</span><span·class="w">
543 </span><span·class="p"·data-group-id="4739340016-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">demo</span><span·class="p">,</span><span·class="w">543 </span><span·class="p"·data-group-id="7010326335-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">demo</span><span·class="p">,</span><span·class="w">
544 ····</span><span·class="p">&lt;&lt;</span><span·class="mi">70</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">49</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">116</span><span·class="p">,</span><span·class="mi">111</span><span·class="p">,</span><span·class="mi">109</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">544 ····</span><span·class="p">&lt;&lt;</span><span·class="mi">70</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">49</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">116</span><span·class="p">,</span><span·class="mi">111</span><span·class="p">,</span><span·class="mi">109</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
545 ······</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">100</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4739340016-6">}</span><span·class="gp·unselectable">545 ······</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">100</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7010326335-6">}</span><span·class="gp·unselectable">
546 &gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">create</span><span·class="p"·data-group-id="4739340016-7">(</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4739340016-8">[</span><span·class="p"·data-group-id="4739340016-9">{</span><span·class="ss">beam</span><span·cl[·...·truncated·by·diffoscope;·len:·218,·SHA:·b46a618a9d8facb1acf649403c84e143f38ba69d925e257ba4ead611dd358bb4·...·]-7">)</span><span·class="p">.</span><span·class="w">546 &gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">create</span><span·class="p"·data-group-id="7010326335-7">(</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7010326335-8">[</span><span·class="p"·data-group-id="7010326335-9">{</span><span·class="ss">beam</span><span·cl[·...·truncated·by·diffoscope;·len:·218,·SHA:·84f60ab6643b00a77e4dc2817b241398edf103078293b82980ba1a60bb6e7213·...·]-7">)</span><span·class="p">.</span><span·class="w">
547 </span><span·class="ss">ok</span><span·class="gp·unselectable">547 </span><span·class="ss">ok</span><span·class="gp·unselectable">
548 &gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">extract</span><span·class="p"·data-group-id="4739340016-10">(</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4739340016-11">[</span><span·class="p"·data-group-id="4739340016-11">]</span><span·class="p"·data-group-id="47[·...·truncated·by·diffoscope;·len:·8,·SHA:·32e4d8a0979ebfacae450b82c42e9a511ab15a44162a5472a48e617f9559b856·...·]-10">)</span><span·class="p">.</span><span·class="w">548 &gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">extract</span><span·class="p"·data-group-id="7010326335-10">(</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7010326335-11">[</span><span·class="p"·data-group-id="7010326335-11">]</span><span·class="p"·data-group-id="70[·...·truncated·by·diffoscope;·len:·8,·SHA:·aa1a5f9b17ca83241ae980ec2aad7bfc574ead111b69027967c8d1d2899071f9·...·]-10">)</span><span·class="p">.</span><span·class="w">
549 </span><span·class="p"·data-group-id="4739340016-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4739340016-13">[</span><span·class="p"·data-group-id="4739340016-14">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">und[·...·truncated·by·diffoscope;·len:·543,·SHA:·92aed96d6029eea1851ab392240fed3d3178d2c9faa8c9267471c67513613309·...·]-16">}</span><span·class="p">,</span><span·class="w">549 </span><span·class="p"·data-group-id="7010326335-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7010326335-13">[</span><span·class="p"·data-group-id="7010326335-14">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">und[·...·truncated·by·diffoscope;·len:·543,·SHA:·d0957c5d1b65a88d5f8193fc4a62d167d9e3c949a742e3b76cd41ecc12bc1cb3·...·]-16">}</span><span·class="p">,</span><span·class="w">
550 ·····</span><span·class="p"·data-group-id="4739340016-17">{</span><span·class="ss">beam</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">70</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">49</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">68</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">116</span><span·class="p">,</span><span·class="w">550 ·····</span><span·class="p"·data-group-id="7010326335-17">{</span><span·class="ss">beam</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">70</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">49</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">68</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">116</span><span·class="p">,</span><span·class="w">
551 ·············</span><span·class="mi">111</span><span·class="p">,</span><span·class="mi">109</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">83</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4739340016-17">}</span><span·class="p"·data-group-id="4739340016-13">]</span><span·class="p"·data-group-id="4739340016-12">}</span><span·class="gp·unselectable">551 ·············</span><span·class="mi">111</span><span·class="p">,</span><span·class="mi">109</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">83</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7010326335-17">}</span><span·class="p"·data-group-id="7010326335-13">]</span><span·class="p"·data-group-id="7010326335-12">}</span><span·class="gp·unselectable">
552 &gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="4739340016-18">(</span><span·class="s">&quot;escript·demo.beam&quot;</span><span·class="p"·data-group-id="4739340016-18">)</span><span·class="p">.</span><span·class="w">552 &gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">cmd</span><span·class="p"·data-group-id="7010326335-18">(</span><span·class="s">&quot;escript·demo.beam&quot;</span><span·class="p"·data-group-id="7010326335-18">)</span><span·class="p">.</span><span·class="w">
553 </span><span·class="s">&quot;true&quot;</span></code></pre><p>Here·we·create·an·archive·script·containing·both·Erlang·code·and·Beam·code,·then553 </span><span·class="s">&quot;true&quot;</span></code></pre><p>Here·we·create·an·archive·script·containing·both·Erlang·code·and·Beam·code,·then
554 we·iterate·over·all·files·in·the·archive·and·collect·their·contents·and·some554 we·iterate·over·all·files·in·the·archive·and·collect·their·contents·and·some
555 information·about·them:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="4125359484-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SourceCode</span><span·class="p"·data-group-id="4125359484-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·220,·SHA:·02010e2c09780cc4db4b2e9db423ba0308a7cdde02aee4f53237a015974052e7·...·]-2">)</span><span·class="p">.</span><span·class="w">555 information·about·them:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="5800315523-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">SourceCode</span><span·class="p"·data-group-id="5800315523-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·220,·SHA:·873c9dc7f941ebe4cba54768772d1ff31f9dca0df2767f862ecc608eec18f4d1·...·]-2">)</span><span·class="p">.</span><span·class="w">
556 </span><span·class="p"·data-group-id="4125359484-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;%%·demo.erl\n-module(demo).\n-export([main/1]).\n\n%%·Demo\nmain(_Arg&quot;</span><span·class="p">.</span><span·class="p">.</span><[·...·truncated·by·diffoscope;·len:·95,·SHA:·cefb2ea4c225e45347db8deb70594c0ad6ced624db1ecc941357a029620ea1f2·...·]-3">}</span><span·class="gp·unselectable">556 </span><span·class="p"·data-group-id="5800315523-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;%%·demo.erl\n-module(demo).\n-export([main/1]).\n\n%%·Demo\nmain(_Arg&quot;</span><span·class="p">.</span><span·class="p">.</span><[·...·truncated·by·diffoscope;·len:·95,·SHA:·a99bfb4d1d96847f8732b9248253aa568068c684d8420350135fb957f261c7ff·...·]-3">}</span><span·class="gp·unselectable">
557 &gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">create</span><span·class="p"·data-group-id="4125359484-4">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">557 &gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">create</span><span·class="p"·data-group-id="5800315523-4">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">
558 ·················</span><span·class="p"·data-group-id="4125359484-5">[</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="w">558 ·················</span><span·class="p"·data-group-id="5800315523-5">[</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="w">
559 ··················</span><span·class="p"·data-group-id="4125359484-6">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4125359484-7">[</span><span·class="p"·data-group-id="4125359484-8">{</span><span·class="s">&quot;demo.erl&quot;</span><span·[·...·truncated·by·diffoscope;·len:·116,·SHA:·0f66d34bb55612f6555e389588abe6b1935306a238d60723e94f07a5ad763001·...·]-8">}</span><span·class="p">,</span><span·class="w">559 ··················</span><span·class="p"·data-group-id="5800315523-6">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5800315523-7">[</span><span·class="p"·data-group-id="5800315523-8">{</span><span·class="s">&quot;demo.erl&quot;</span><span·[·...·truncated·by·diffoscope;·len:·116,·SHA:·e2b608c0e661902205871e01a0e168445716a733f7ea9955e0104b6829fc4cd7·...·]-8">}</span><span·class="p">,</span><span·class="w">
560 ·····························</span><span·class="p"·data-group-id="4125359484-9">{</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BeamCode</span><span·class="p"·data-group-id="4125359484-9">}</span><span·class="p"·data-group-id="4125359484-7">]</span><span[·...·truncated·by·diffoscope;·len:·298,·SHA:·35285c966752c690fc1a983a87b419c32c8133bcc0165a9b12438bc013b59ac5·...·]-4">)</span><span·class="p">.</span><span·class="w">560 ·····························</span><span·class="p"·data-group-id="5800315523-9">{</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BeamCode</span><span·class="p"·data-group-id="5800315523-9">}</span><span·class="p"·data-group-id="5800315523-7">]</span><span[·...·truncated·by·diffoscope;·len:·298,·SHA:·cc67a41a733cdc9c734ed321c3313ff6ec30108b60ea9bd7217df090bfca923d·...·]-4">)</span><span·class="p">.</span><span·class="w">
561 </span><span·class="ss">ok</span><span·class="gp·unselectable">561 </span><span·class="ss">ok</span><span·class="gp·unselectable">
562 &gt;·</span><span·class="p"·data-group-id="4125359484-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4125359484-12">[</span><span·class="p"·data-group-id="4125359484-13">{</span><span·class="ss">shebang</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·565,·SHA:·c93db6c74be058745dedf18e7756578cd76b28693be11001e8ef70796ed7e154·...·]-15">}</span><span·class="p">,</span><span·class="w">562 &gt;·</span><span·class="p"·data-group-id="5800315523-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5800315523-12">[</span><span·class="p"·data-group-id="5800315523-13">{</span><span·class="ss">shebang</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·565,·SHA:·2624643b0192b04486eda6c3ee6d90c35bc143150cfed39da20eea0e1d914a51·...·]-15">}</span><span·class="p">,</span><span·class="w">
563 ·····</span><span·class="p"·data-group-id="4125359484-16">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArchiveBin</span><span·class="p"·data-group-id="4125359484-16">}</span><span·class="p"·data-group-id="4125359484-12">]</span><span·class="[·...·truncated·by·diffoscope;·len:·497,·SHA:·35a0875c501f32413d693d49a859f416fc107804270fa657a54028b1c7343c55·...·]-17">)</span><span·class="p">.</span><span·class="w">563 ·····</span><span·class="p"·data-group-id="5800315523-16">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArchiveBin</span><span·class="p"·data-group-id="5800315523-16">}</span><span·class="p"·data-group-id="5800315523-12">]</span><span·class="[·...·truncated·by·diffoscope;·len:·497,·SHA:·f0d27c660ed4827f9cdf3b630182fc1a7b417540311648ee4b3def1c2e166d8e·...·]-17">)</span><span·class="p">.</span><span·class="w">
564 </span><span·class="p"·data-group-id="4125359484-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4125359484-20">[</span><span·class="p"·data-group-id="4125359484-21">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">def[·...·truncated·by·diffoscope;·len:·541,·SHA:·a54bfd2d5a2adc47722563aecff208e859d019536e1c5a3a4ea5757d374fc943·...·]-23">}</span><span·class="p">,</span><span·class="w">564 </span><span·class="p"·data-group-id="5800315523-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5800315523-20">[</span><span·class="p"·data-group-id="5800315523-21">{</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="ss">def[·...·truncated·by·diffoscope;·len:·541,·SHA:·249ca1da926e67bf151f143802816458dc5e675ffaedb68f1ede7d682acb8ce3·...·]-23">}</span><span·class="p">,</span><span·class="w">
565 ·····</span><span·class="p"·data-group-id="4125359484-24">{</span><span·class="p"·data-group-id="4125359484-25">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">75</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">20</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">60</span><span·class="p">,</span><span·class="mi">105</span><span·class="p">,</span><span·class="w">565 ·····</span><span·class="p"·data-group-id="5800315523-24">{</span><span·class="p"·data-group-id="5800315523-25">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">75</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">20</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">60</span><span·class="p">,</span><span·class="mi">105</span><span·class="p">,</span><span·class="w">
566 ················</span><span·class="mi">152</span><span·class="p">,</span><span·class="mi">61</span><span·class="p">,</span><span·class="mi">93</span><span·class="p">,</span><span·class="mi">107</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4125359484-25">}</span><span·class="p">]</span><span·class="p"·data-group-id="4125359484-24">}</span><span·class="gp·unselectable">566 ················</span><span·class="mi">152</span><span·class="p">,</span><span·class="mi">61</span><span·class="p">,</span><span·class="mi">93</span><span·class="p">,</span><span·class="mi">107</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="5800315523-25">}</span><span·class="p">]</span><span·class="p"·data-group-id="5800315523-24">}</span><span·class="gp·unselectable">
567 &gt;·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write_file</span><span·class="p"·data-group-id="4125359484-26">(</span><span·class="s">&quot;demo.zip&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArchiveBin</span><span·class="p"·data-group-id="4125359484-26">)</span><span·class="p">.</span><span·class="w">567 &gt;·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write_file</span><span·class="p"·data-group-id="5800315523-26">(</span><span·class="s">&quot;demo.zip&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArchiveBin</span><span·class="p"·data-group-id="5800315523-26">)</span><span·class="p">.</span><span·class="w">
568 </span><span·class="ss">ok</span><span·class="gp·unselectable">568 </span><span·class="ss">ok</span><span·class="gp·unselectable">
569 &gt;·</span><span·class="nc">zip</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="4125359484-27">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4125359484-28">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">I</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·1252,·SHA:·b9c0de1b7b500132e83af5f15da2af01f12c63fb1da15b09740c1e7d919c3a67·...·]-27">)</span><span·class="p">.</span><span·class="w">569 &gt;·</span><span·class="nc">zip</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="5800315523-27">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5800315523-28">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">I</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·1252,·SHA:·b30912b8ccc3e1039ae5607db7b9b7e2f7d289bbd7d631ac7e4bebd3df1f0532·...·]-27">)</span><span·class="p">.</span><span·class="w">
570 </span><span·class="p"·data-group-id="4125359484-34">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4125359484-35">[</span><span·class="p"·data-group-id="4125359484-36">{</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">570 </span><span·class="p"·data-group-id="5800315523-34">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5800315523-35">[</span><span·class="p"·data-group-id="5800315523-36">{</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">
571 ······</span><span·class="p"·data-group-id="4125359484-37">{</span><span·class="ss">file_info</span><span·class="p">,</span><span·class="mi">748</span><span·class="p">,</span><span·class="ss">regular</span><span·class="p">,</span><span·class="ss">read_write</span><span·class="p">,</span><span·class="w">571 ······</span><span·class="p"·data-group-id="5800315523-37">{</span><span·class="ss">file_info</span><span·class="p">,</span><span·class="mi">748</span><span·class="p">,</span><span·class="ss">regular</span><span·class="p">,</span><span·class="ss">read_write</span><span·class="p">,</span><span·class="w">
572 ·················</span><span·class="p"·data-group-id="4125359484-38">{</span><span·class="p"·data-group-id="4125359484-39">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4125359484-39">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·d0797413990b014cdf3d46feb1cd656f8fd14119fcbe364582a77ab0878f81c6·...·]-38">}</span><span·class="p">,</span><span·class="w">572 ·················</span><span·class="p"·data-group-id="5800315523-38">{</span><span·class="p"·data-group-id="5800315523-39">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5800315523-39">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·4688feb0c5ff9e250b94f520726f05674249aff179cd816dbc4123530f01601d·...·]-38">}</span><span·class="p">,</span><span·class="w">
573 ·················</span><span·class="p"·data-group-id="4125359484-41">{</span><span·class="p"·data-group-id="4125359484-42">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4125359484-42">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·8f9cf4a8ef768d9fbdf629da7492ccabc9d98d85578293a3ea832c4d5951100b·...·]-41">}</span><span·class="p">,</span><span·class="w">573 ·················</span><span·class="p"·data-group-id="5800315523-41">{</span><span·class="p"·data-group-id="5800315523-42">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5800315523-42">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·746ddbcc621d3e99ead273aa7a96dea0b9b704bec5944f10c0945a2ea270f56e·...·]-41">}</span><span·class="p">,</span><span·class="w">
574 ·················</span><span·class="p"·data-group-id="4125359484-44">{</span><span·class="p"·data-group-id="4125359484-45">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4125359484-45">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·23285edd4cab9eb7064f18af1f26ab85229246a57cf66d546d26b396372de11e·...·]-44">}</span><span·class="p">,</span><span·class="w">574 ·················</span><span·class="p"·data-group-id="5800315523-44">{</span><span·class="p"·data-group-id="5800315523-45">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5800315523-45">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·3245ad171f9dd401d5db3bc5efb354887f6a73b965cf5bae0a869b36090a6ce2·...·]-44">}</span><span·class="p">,</span><span·class="w">
575 ·················</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="4125359484-37">}</span><span·class="p">,</span><span·class="w">575 ·················</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="5800315523-37">}</span><span·class="p">,</span><span·class="w">
576 ······</span><span·class="p">&lt;&lt;</span><span·class="mi">70</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">49</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">228</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">116</span><span·class="p">,</span><span·class="mi">111</span><span·class="p">,</span><span·class="mi">109</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">576 ······</span><span·class="p">&lt;&lt;</span><span·class="mi">70</span><span·class="p">,</span><span·class="mi">79</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">49</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="mi">228</span><span·class="p">,</span><span·class="mi">66</span><span·class="p">,</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">77</span><span·class="p">,</span><span·class="mi">65</span><span·class="p">,</span><span·class="mi">116</span><span·class="p">,</span><span·class="mi">111</span><span·class="p">,</span><span·class="mi">109</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
577 ········</span><span·class="mi">83</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4125359484-36">}</span><span·class="p">,</span><span·class="w">577 ········</span><span·class="mi">83</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="5800315523-36">}</span><span·class="p">,</span><span·class="w">
578 ·····</span><span·class="p"·data-group-id="4125359484-47">{</span><span·class="s">&quot;demo.erl&quot;</span><span·class="p">,</span><span·class="w">578 ·····</span><span·class="p"·data-group-id="5800315523-47">{</span><span·class="s">&quot;demo.erl&quot;</span><span·class="p">,</span><span·class="w">
579 ······</span><span·class="p"·data-group-id="4125359484-48">{</span><span·class="ss">file_info</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="ss">regular</span><span·class="p">,</span><span·class="ss">read_write</span><span·class="p">,</span><span·class="w">579 ······</span><span·class="p"·data-group-id="5800315523-48">{</span><span·class="ss">file_info</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="ss">regular</span><span·class="p">,</span><span·class="ss">read_write</span><span·class="p">,</span><span·class="w">
580 ·················</span><span·class="p"·data-group-id="4125359484-49">{</span><span·class="p"·data-group-id="4125359484-50">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4125359484-50">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·34c44cadd5a9cc5c9ea9273207322c7d2424dc97c1e10500ebb9e6c927617d78·...·]-49">}</span><span·class="p">,</span><span·class="w">580 ·················</span><span·class="p"·data-group-id="5800315523-49">{</span><span·class="p"·data-group-id="5800315523-50">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5800315523-50">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·62568425f7e66e91e7b5d8ecb335d1032cc11d43b8e0a21c948569f1d048961c·...·]-49">}</span><span·class="p">,</span><span·class="w">
581 ·················</span><span·class="p"·data-group-id="4125359484-52">{</span><span·class="p"·data-group-id="4125359484-53">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4125359484-53">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·a2ceab54e0d9caae4cff6cc7f12f2721649df99b39603d1caeb6ae9919d4378f·...·]-52">}</span><span·class="p">,</span><span·class="w">581 ·················</span><span·class="p"·data-group-id="5800315523-52">{</span><span·class="p"·data-group-id="5800315523-53">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5800315523-53">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·c2028a149b0c62cbba837d7682193a6c538e10a60e1039bc48f997fe5094b740·...·]-52">}</span><span·class="p">,</span><span·class="w">
582 ·················</span><span·class="p"·data-group-id="4125359484-55">{</span><span·class="p"·data-group-id="4125359484-56">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4125359484-56">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·7b81c794fed2b894c460965c6a9f87eafc45565a205ed20cd1394d34c64514e7·...·]-55">}</span><span·class="p">,</span><span·class="w">582 ·················</span><span·class="p"·data-group-id="5800315523-55">{</span><span·class="p"·data-group-id="5800315523-56">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5800315523-56">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·b6840f5e20e142552460959ac7bfeaa42f35448a4260bb6b42c180a6758f5a13·...·]-55">}</span><span·class="p">,</span><span·class="w">
583 ·················</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="4125359484-48">}</span><span·class="p">,</span><span·class="w">583 ·················</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="5800315523-48">}</span><span·class="p">,</span><span·class="w">
584 ······</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;%%·demo.erl\n-module(demo).\n-export([main/1]).\n\n%%·Demo\nmain(_Arg&quot;</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4125359484-47">}</span><span·class="p"·data-group-id="4125359484-35">]</span><span·class="p"·data-group-id="4125359484-34">}</span></code></pre>584 ······</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;%%·demo.erl\n-module(demo).\n-export([main/1]).\n\n%%·Demo\nmain(_Arg&quot;</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="5800315523-47">}</span><span·class="p"·data-group-id="5800315523-35">]</span><span·class="p"·data-group-id="5800315523-34">}</span></code></pre>
585 ··</section>585 ··</section>
586 </section>586 </section>
587 <section·class="detail"·id="extract/2">587 <section·class="detail"·id="extract/2">
  
588 ··<div·class="detail-header">588 ··<div·class="detail-header">
589 ····<a·href="#extract/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">589 ····<a·href="#extract/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
590 ······<i·class="ri-link-m"·aria-hidden="true"></i>590 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 611, 24 lines modifiedOffset 611, 24 lines modified
611 ······</div>611 ······</div>
  
612 <p>Parses·an·escript·and·extracts·its·sections.·This·is·the·reverse·of·<a·href="#create/2"><code·class="inline">create/2</code></a>.</p><p>All·sections·are·returned·even·if·they·do·not·exist·in·the·escript.·If·a612 <p>Parses·an·escript·and·extracts·its·sections.·This·is·the·reverse·of·<a·href="#create/2"><code·class="inline">create/2</code></a>.</p><p>All·sections·are·returned·even·if·they·do·not·exist·in·the·escript.·If·a
613 particular·section·happens·to·have·the·same·value·as·the·default·value,·the613 particular·section·happens·to·have·the·same·value·as·the·default·value,·the
614 extracted·value·is·set·to·the·atom·<code·class="inline">default</code>.·If·a·section·is·missing,·the614 extracted·value·is·set·to·the·atom·<code·class="inline">default</code>.·If·a·section·is·missing,·the
615 extracted·value·is·set·to·the·atom·<code·class="inline">undefined</code>.</p><p>Option·<code·class="inline">compile_source</code>·only·affects·the·result·if·the·escript·contains·<code·class="inline">source</code>615 extracted·value·is·set·to·the·atom·<code·class="inline">undefined</code>.</p><p>Option·<code·class="inline">compile_source</code>·only·affects·the·result·if·the·escript·contains·<code·class="inline">source</code>
616 code.·In·this·case·the·Erlang·code·is·automatically·compiled·and616 code.·In·this·case·the·Erlang·code·is·automatically·compiled·and
617 <code·class="inline">{source,·BeamCode}</code>·is·returned·instead·of·<code·class="inline">{source,·SourceCode}</code>.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">create</span><span·class="p"·data-group-id="0936279017-1">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">617 <code·class="inline">{source,·BeamCode}</code>·is·returned·instead·of·<code·class="inline">{source,·SourceCode}</code>.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">create</span><span·class="p"·data-group-id="7653431770-1">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">
618 ·················</span><span·class="p"·data-group-id="0936279017-2">[</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0936279017-3">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·248,·SHA:·280db4af92a4a4181d26c904af84ea6bdcfa1efcb3daa17181ec7ed58f236c24·...·]-5">}</span><span·class="p">,</span><span·class="w">618 ·················</span><span·class="p"·data-group-id="7653431770-2">[</span><span·class="ss">shebang</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7653431770-3">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·248,·SHA:·99d0468b60b93a69447f69ab81781032fb8ecab404f16a35ae4c4169bf7891fc·...·]-5">}</span><span·class="p">,</span><span·class="w">
619 ······································</span><span·class="p"·data-group-id="0936279017-6">{</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BeamCode</span><span·class="p"·data-group-id="0936279017-6">}</span><span·class="p"·data-group-id="0936279017-4">]</span><span[·...·truncated·by·diffoscope;·len:·296,·SHA:·6a1d940e74fa4353d1bf333a177a50014bf95fba179c150377e29cbff9639fb1·...·]-1">)</span><span·class="p">.</span><span·class="w">619 ······································</span><span·class="p"·data-group-id="7653431770-6">{</span><span·class="s">&quot;demo.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">BeamCode</span><span·class="p"·data-group-id="7653431770-6">}</span><span·class="p"·data-group-id="7653431770-4">]</span><span[·...·truncated·by·diffoscope;·len:·296,·SHA:·0b932440ca4972ac325ef35464e1fbcc96387cfce7dd277080599e3f0c82ce0f·...·]-1">)</span><span·class="p">.</span><span·class="w">
620 </span><span·class="ss">ok</span><span·class="gp·unselectable">620 </span><span·class="ss">ok</span><span·class="gp·unselectable">
621 &gt;·</span><span·class="p"·data-group-id="0936279017-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0936279017-9">[</span><span·class="p"·data-group-id="0936279017-10">{</span><span·class="ss">shebang</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·563,·SHA:·64523f2cbc954e1aff3935c04d164a22f7077bd551c392334bb66634f62e1c9b·...·]-12">}</span><span·class="p">,</span><span·class="w">621 &gt;·</span><span·class="p"·data-group-id="7653431770-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7653431770-9">[</span><span·class="p"·data-group-id="7653431770-10">{</span><span·class="ss">shebang</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·563,·SHA:·dc98cb96e6a379eec60143a49d16f49f4b762636a5d7d2542555a6afafc3b671·...·]-12">}</span><span·class="p">,</span><span·class="w">
622 ·····</span><span·class="p"·data-group-id="0936279017-13">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArchiveBin</span><span·class="p"·data-group-id="0936279017-13">}</span><span·class="p"·data-group-id="0936279017-9">]</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·b6d7d30639d3d6774daa73909442dd7ef41e97d634ec8d38d7815c8774415490·...·]-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">622 ·····</span><span·class="p"·data-group-id="7653431770-13">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ArchiveBin</span><span·class="p"·data-group-id="7653431770-13">}</span><span·class="p"·data-group-id="7653431770-9">]</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·b8630936fe79a05f8e76ae6ab1069a36fa2c26cdfb2b0660d0cd17fa89570130·...·]-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
623 ··············</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">extract</span><span·class="p"·data-group-id="0936279017-14">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0936279017-15">[</span><span·class="p"·data-group-id="0936279017-15">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·a6bbe6c16745fcf1423153bd7e2d672ebb1a6edd791d65884b8264f7f5b62e4c·...·]-14">)</span><span·class="p">.</span><span·class="w">623 ··············</span><span·class="nc">escript</span><span·class="p">:</span><span·class="nf">extract</span><span·class="p"·data-group-id="7653431770-14">(</span><span·class="s">&quot;demo.escript&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7653431770-15">[</span><span·class="p"·data-group-id="7653431770-15">]</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·f7984cdf57a7f599ce387faef390adfc630fa62538956404dc1bb815059180b0·...·]-14">)</span><span·class="p">.</span><span·class="w">
624 </span><span·class="p"·data-group-id="0936279017-16">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0936279017-17">[</span><span·class="p"·data-group-id="0936279017-18">{</span><span·class="p"·data-group-id="0936279017-19">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">75</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">20</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">60</span><span·class="p">,</span><span·class="mi">105</span><span·class="p">,</span><span·class="w">624 </span><span·class="p"·data-group-id="7653431770-16">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7653431770-17">[</span><span·class="p"·data-group-id="7653431770-18">{</span><span·class="p"·data-group-id="7653431770-19">{</span><span·class="ss">archive</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">75</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">20</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="mi">7</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">60</span><span·class="p">,</span><span·class="mi">105</span><span·class="p">,</span><span·class="w">
625 ················</span><span·class="mi">152</span><span·class="p">,</span><span·class="mi">61</span><span·class="p">,</span><span·class="mi">93</span><span·class="p">,</span><span·class="mi">107</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0936279017-19">}</span><span·class="w">625 ················</span><span·class="mi">152</span><span·class="p">,</span><span·class="mi">61</span><span·class="p">,</span><span·class="mi">93</span><span·class="p">,</span><span·class="mi">107</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">118</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7653431770-19">}</span><span·class="w">
626 ·····</span><span·class="p"·data-group-id="0936279017-20">{</span><span·class="ss">emu_args</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="0936279017-20">}</span><span·class="p">]</span><span·class="p"·data-group-id="0936279017-18">}</span></code></pre>626 ·····</span><span·class="p"·data-group-id="7653431770-20">{</span><span·class="ss">emu_args</span><span·class="p">,</span><span·class="ss">undefined</span><span·class="p"·data-group-id="7653431770-20">}</span><span·class="p">]</span><span·class="p"·data-group-id="7653431770-18">}</span></code></pre>
627 ··</section>627 ··</section>
628 </section>628 </section>
629 <section·class="detail"·id="script_name/0">629 <section·class="detail"·id="script_name/0">
  
630 ··<div·class="detail-header">630 ··<div·class="detail-header">
631 ····<a·href="#script_name/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">631 ····<a·href="#script_name/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
632 ······<i·class="ri-link-m"·aria-hidden="true"></i>632 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 678, 15 lines modifiedOffset 678, 15 lines modified
678 ······<p·class="built-using">678 ······<p·class="built-using">
679 ········Built·using679 ········Built·using
680 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the680 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
681 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>681 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
682 ······</p>682 ······</p>
683 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>683 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
684 ····</footer>684 ····</footer>
685 ··</div>685 ··</div>
686 </main>686 </main>
687 </div>687 </div>
688 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>688 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
689 <script>689 <script>
690 ··document.addEventListener("DOMContentLoaded",·function·()·{690 ··document.addEventListener("DOMContentLoaded",·function·()·{
590 B
html2text {}
Max HTML report size reached
121 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/ets.html
    
Offset 216, 35 lines modifiedOffset 216, 35 lines modified
216 disallow·concurrent·updates·during·the·entire·traversal.</p><p>Moreover,·traversals·not·done·in·a·<em>safe</em>·way,·on·tables·where·keys·are·inserted216 disallow·concurrent·updates·during·the·entire·traversal.</p><p>Moreover,·traversals·not·done·in·a·<em>safe</em>·way,·on·tables·where·keys·are·inserted
217 or·deleted·during·the·traversal,·may·yield·the·following·undesired·effects:</p><ul><li>Any·key·may·be·missed.</li><li>Any·key·may·be·found·more·than·once.</li><li>The·traversal·may·fail·with·<code·class="inline">badarg</code>·exception·if·keys·are·deleted.</li></ul><p>A·table·traversal·is·<em>safe</em>·if·either</p><ul><li>the·table·is·of·type·<code·class="inline">ordered_set</code>.</li><li>the·entire·table·traversal·is·done·within·one·ETS·function·call.</li><li>function·<a·href="#safe_fixtable/2"><code·class="inline">safe_fixtable/2</code></a>·is·used·to·keep·the·table·fixated·during·the·entire217 or·deleted·during·the·traversal,·may·yield·the·following·undesired·effects:</p><ul><li>Any·key·may·be·missed.</li><li>Any·key·may·be·found·more·than·once.</li><li>The·traversal·may·fail·with·<code·class="inline">badarg</code>·exception·if·keys·are·deleted.</li></ul><p>A·table·traversal·is·<em>safe</em>·if·either</p><ul><li>the·table·is·of·type·<code·class="inline">ordered_set</code>.</li><li>the·entire·table·traversal·is·done·within·one·ETS·function·call.</li><li>function·<a·href="#safe_fixtable/2"><code·class="inline">safe_fixtable/2</code></a>·is·used·to·keep·the·table·fixated·during·the·entire
218 traversal.</li></ul><blockquote><h4·class="info">Note</h4><p>Even·though·the·access·of·a·single·object·is·always·guaranteed·to·be218 traversal.</li></ul><blockquote><h4·class="info">Note</h4><p>Even·though·the·access·of·a·single·object·is·always·guaranteed·to·be
219 <a·href="ets.html#module-concurrency">atomic·and·isolated</a>,·each·traversal·through·a·table·to219 <a·href="ets.html#module-concurrency">atomic·and·isolated</a>,·each·traversal·through·a·table·to
220 find·the·next·key·is·not·done·with·such·guarantees.·This·is·often·not·a220 find·the·next·key·is·not·done·with·such·guarantees.·This·is·often·not·a
221 problem,·but·may·cause·rare·subtle·&quot;unexpected&quot;·effects·if·a·concurrent221 problem,·but·may·cause·rare·subtle·&quot;unexpected&quot;·effects·if·a·concurrent
222 process·inserts·objects·during·a·traversal.·For·example,·consider·one·process222 process·inserts·objects·during·a·traversal.·For·example,·consider·one·process
223 doing</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="8325869300-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8325869300-2">[</span><span·class="ss">ordered_set</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">named_ta[·...·truncated·by·diffoscope;·len:·104,·SHA:·6e257e67bd34fc3d00c98f05a6d44243283f908849a6a515b23f0f39ef671421·...·]-1">)</span><span·class="p">,</span><span·class="w">223 doing</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="0854706126-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0854706126-2">[</span><span·class="ss">ordered_set</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">named_ta[·...·truncated·by·diffoscope;·len:·104,·SHA:·c1ae0c131a9150486a7699867f7464585199b9efd2e1839c9c39baef6db1e337·...·]-1">)</span><span·class="p">,</span><span·class="w">
224 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="8325869300-3">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8325869300-4">{</span><span·class="mi">1</span><span·class="p"·data-group-id="8325869300-4">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·1ca979305128f00ba45d0e3319d9b6709e25f63500af29d6042d01d806b001ad·...·]-3">)</span><span·class="p">,</span><span·class="w">224 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="0854706126-3">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0854706126-4">{</span><span·class="mi">1</span><span·class="p"·data-group-id="0854706126-4">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·b0cec6ac24188b75b55fc7271a67bf676620b53f3333a92023c5627b747ff9f5·...·]-3">)</span><span·class="p">,</span><span·class="w">
225 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="8325869300-5">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8325869300-6">{</span><span·class="mi">2</span><span·class="p"·data-group-id="8325869300-6">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·1ca979305128f00ba45d0e3319d9b6709e25f63500af29d6042d01d806b001ad·...·]-5">)</span><span·class="p">,</span><span·class="w">225 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="0854706126-5">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0854706126-6">{</span><span·class="mi">2</span><span·class="p"·data-group-id="0854706126-6">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·b0cec6ac24188b75b55fc7271a67bf676620b53f3333a92023c5627b747ff9f5·...·]-5">)</span><span·class="p">,</span><span·class="w">
226 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="8325869300-7">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8325869300-8">{</span><span·class="mi">3</span><span·class="p"·data-group-id="8325869300-8">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·1ca979305128f00ba45d0e3319d9b6709e25f63500af29d6042d01d806b001ad·...·]-7">)</span><span·class="p">,</span></code></pre><p>A·concurrent·call·to·<code·class="inline">ets:first(t)</code>,·done·by·another·process,·may·then·in·rare226 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">insert</span><span·class="p"·data-group-id="0854706126-7">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0854706126-8">{</span><span·class="mi">3</span><span·class="p"·data-group-id="0854706126-8">}</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·b0cec6ac24188b75b55fc7271a67bf676620b53f3333a92023c5627b747ff9f5·...·]-7">)</span><span·class="p">,</span></code></pre><p>A·concurrent·call·to·<code·class="inline">ets:first(t)</code>,·done·by·another·process,·may·then·in·rare
227 cases·return·<code·class="inline">2</code>·even·though·<code·class="inline">2</code>·has·never·existed·in·the·table·ordered·as·the227 cases·return·<code·class="inline">2</code>·even·though·<code·class="inline">2</code>·has·never·existed·in·the·table·ordered·as·the
228 first·key.·In·the·same·way,·a·concurrent·call·to·<code·class="inline">ets:next(t,·1)</code>·may·return228 first·key.·In·the·same·way,·a·concurrent·call·to·<code·class="inline">ets:next(t,·1)</code>·may·return
229 <code·class="inline">3</code>·even·though·<code·class="inline">3</code>·never·existed·in·the·table·ordered·directly·after·<code·class="inline">1</code>.</p><p>Effects·like·this·are·improbable·but·possible.·The·probability·will·further·be229 <code·class="inline">3</code>·even·though·<code·class="inline">3</code>·never·existed·in·the·table·ordered·directly·after·<code·class="inline">1</code>.</p><p>Effects·like·this·are·improbable·but·possible.·The·probability·will·further·be
230 reduced·(if·not·vanish)·if·table·option230 reduced·(if·not·vanish)·if·table·option
231 <a·href="ets.html#new_2_write_concurrency"><code·class="inline">write_concurrency</code></a>·is·not·enabled.·This231 <a·href="ets.html#new_2_write_concurrency"><code·class="inline">write_concurrency</code></a>·is·not·enabled.·This
232 can·also·only·be·a·potential·concern·for·<code·class="inline">ordered_set</code>·where·the·traversal232 can·also·only·be·a·potential·concern·for·<code·class="inline">ordered_set</code>·where·the·traversal
233 order·is·defined.</p></blockquote><p>Traversals·using·<code·class="inline">match</code>·and·<code·class="inline">select</code>·functions·may·not·need·to·scan·the·entire233 order·is·defined.</p></blockquote><p>Traversals·using·<code·class="inline">match</code>·and·<code·class="inline">select</code>·functions·may·not·need·to·scan·the·entire
234 table·depending·on·how·the·key·is·specified.·A·match·pattern·with·a·<em>fully·bound234 table·depending·on·how·the·key·is·specified.·A·match·pattern·with·a·<em>fully·bound
235 key</em>·(without·any·match·variables)·will·optimize·the·operation·to·a·single·key235 key</em>·(without·any·match·variables)·will·optimize·the·operation·to·a·single·key
236 lookup·without·any·table·traversal·at·all.·For·<code·class="inline">ordered_set</code>·a·<em>partially·bound236 lookup·without·any·table·traversal·at·all.·For·<code·class="inline">ordered_set</code>·a·<em>partially·bound
237 key</em>·will·limit·the·traversal·to·only·scan·a·subset·of·the·table·based·on·term237 key</em>·will·limit·the·traversal·to·only·scan·a·subset·of·the·table·based·on·term
238 order.·A·partially·bound·key·is·either·a·list·or·a·tuple·with·a·prefix·that·is238 order.·A·partially·bound·key·is·either·a·list·or·a·tuple·with·a·prefix·that·is
239 fully·bound.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">T</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="2417011772-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="p"·data-group-id="2417011772-2">[</span><span·class="ss">ordered_set</span><span·class="p"·data-group-id="2417011772-2">]</span><span·class="p"·data-group-id="2417011772-1"[·...·truncated·by·diffoscope;·len:·546,·SHA:·dc64c636f22460d24f77138cfb3ab46f02eaeb6b410b9725cb8e1d7002c9a7fa·...·]-3">)</span><span·class="p">.</span><span·class="w">239 fully·bound.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">T</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="5288341733-1">(</span><span·class="ss">t</span><span·class="p">,</span><span·class="p"·data-group-id="5288341733-2">[</span><span·class="ss">ordered_set</span><span·class="p"·data-group-id="5288341733-2">]</span><span·class="p"·data-group-id="5288341733-1"[·...·truncated·by·diffoscope;·len:·546,·SHA:·ca658425ecf9898e2aeb75ef4923ab8c77c70fbc314f6bd18a0c4882074384e1·...·]-3">)</span><span·class="p">.</span><span·class="w">
240 </span><span·class="ss">true</span><span·class="gp·unselectable">240 </span><span·class="ss">true</span><span·class="gp·unselectable">
241 2&gt;·</span><span·class="c1">%%·Efficient·search·of·all·with·area·code·555</span><span·class="gp·unselectable">241 2&gt;·</span><span·class="c1">%%·Efficient·search·of·all·with·area·code·555</span><span·class="gp·unselectable">
242 2&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="2417011772-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="p"·data-group-id="2417011772-6">{</span><span·class="p"·data-group-id="2417011772-7">[</span><span·class="sc">$5</span><span·class="p">,</span><span·class="sc">$5</span><spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·aa5d20e69683668ecfa0b0c74525a2d3d16a4152f6682b7409e38fb32d805188·...·]-5">)</span><span·class="p">.</span><span·class="w">242 2&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="5288341733-5">(</span><span·class="n">T</span><span·class="p">,</span><span·class="p"·data-group-id="5288341733-6">{</span><span·class="p"·data-group-id="5288341733-7">[</span><span·class="sc">$5</span><span·class="p">,</span><span·class="sc">$5</span><spa[·...·truncated·by·diffoscope;·len:·387,·SHA:·1c4394944feeb8422b36c528e311e1feeb7b0ca409c6b9c3ff63597288355033·...·]-5">)</span><span·class="p">.</span><span·class="w">
243 </span><span·class="p"·data-group-id="2417011772-8">[</span><span·class="p"·data-group-id="2417011772-9">[</span><span·class="s">&quot;1234&quot;</span><span·class="p">,</span><span·class="s">&quot;John·Smith&quot;</span><span·class="p"·data-group-id="2417011772-9">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·8c61c7672e1544228c6b2caf988562995adbe56b1b54c88bdcf9be88107ab13a·...·]-8">]</span></code></pre><p><a·href=""·id="match_spec"></a></p><h2·id="module-match-specifications"·class="section-heading">243 </span><span·class="p"·data-group-id="5288341733-8">[</span><span·class="p"·data-group-id="5288341733-9">[</span><span·class="s">&quot;1234&quot;</span><span·class="p">,</span><span·class="s">&quot;John·Smith&quot;</span><span·class="p"·data-group-id="5288341733-9">]</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·21,·SHA:·fea62a4749263295ac2fb4798383696e2e4555b0f08c04417b0be730cdd3f835·...·]-8">]</span></code></pre><p><a·href=""·id="match_spec"></a></p><h2·id="module-match-specifications"·class="section-heading">
244 ··<a·href="#module-match-specifications"·class="hover-link">244 ··<a·href="#module-match-specifications"·class="hover-link">
245 ····<i·class="ri-link-m"·aria-hidden="true"></i>245 ····<i·class="ri-link-m"·aria-hidden="true"></i>
246 ··</a>246 ··</a>
247 ··<span·class="text">Match·Specifications</span>247 ··<span·class="text">Match·Specifications</span>
248 </h2>248 </h2>
249 <p>Some·of·the·functions·use·a·<em>match·specification</em>,·<code·class="inline">match_spec</code>.·For·a·brief249 <p>Some·of·the·functions·use·a·<em>match·specification</em>,·<code·class="inline">match_spec</code>.·For·a·brief
250 explanation,·see·<a·href="#select/2"><code·class="inline">select/2</code></a>.·For·a·detailed·description,·see·section250 explanation,·see·<a·href="#select/2"><code·class="inline">select/2</code></a>.·For·a·detailed·description,·see·section
Offset 1932, 27 lines modifiedOffset 1932, 27 lines modified
1932 function.</p><p>The·parse·transform·is·provided·in·the·<code·class="inline">ms_transform</code>·module·and·the·source1932 function.</p><p>The·parse·transform·is·provided·in·the·<code·class="inline">ms_transform</code>·module·and·the·source
1933 <em>must</em>·include·file·<code·class="inline">ms_transform.hrl</code>·in·STDLIB·for·this·pseudo·function·to1933 <em>must</em>·include·file·<code·class="inline">ms_transform.hrl</code>·in·STDLIB·for·this·pseudo·function·to
1934 work.·Failing·to·include·the·hrl·file·in·the·source·results·in·a·runtime·error,1934 work.·Failing·to·include·the·hrl·file·in·the·source·results·in·a·runtime·error,
1935 not·a·compile·time·error.·The·include·file·is·easiest·included·by·adding·line1935 not·a·compile·time·error.·The·include·file·is·easiest·included·by·adding·line
1936 <code·class="inline">-include_lib(&quot;stdlib/include/ms_transform.hrl&quot;).</code>·to·the·source·file.</p><p>The·fun·is·very·restricted,·it·can·take·only·a·single·parameter·(the·object·to1936 <code·class="inline">-include_lib(&quot;stdlib/include/ms_transform.hrl&quot;).</code>·to·the·source·file.</p><p>The·fun·is·very·restricted,·it·can·take·only·a·single·parameter·(the·object·to
1937 match):·a·sole·variable·or·a·tuple.·It·must·use·the·<code·class="inline">is_</code>·guard·tests.·Language1937 match):·a·sole·variable·or·a·tuple.·It·must·use·the·<code·class="inline">is_</code>·guard·tests.·Language
1938 constructs·that·have·no·representation·in·a·match·specification·(<code·class="inline">if</code>,·<code·class="inline">case</code>,1938 constructs·that·have·no·representation·in·a·match·specification·(<code·class="inline">if</code>,·<code·class="inline">case</code>,
1939 <code·class="inline">receive</code>,·and·so·on)·are·not·allowed.</p><p>The·return·value·is·the·resulting·match·specification.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="4305659028-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="4305659028-2">(</span><span·class="p"·data-group-id="4305659028-3">{</span><span·class="n">M</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·467,·SHA:·1b3521343db67f2f1ce66d2f304206e5250b6f8982f75a0140bd29f1bc9899aa·...·]-1">)</span><span·class="p">.</span><span·class="w">1939 <code·class="inline">receive</code>,·and·so·on)·are·not·allowed.</p><p>The·return·value·is·the·resulting·match·specification.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="5628877890-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5628877890-2">(</span><span·class="p"·data-group-id="5628877890-3">{</span><span·class="n">M</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·467,·SHA:·72c9573a179a56301158baabd688413f0b409b81e133e6a2c46406e9c796487b·...·]-1">)</span><span·class="p">.</span><span·class="w">
1940 </span><span·class="p"·data-group-id="4305659028-4">[</span><span·class="p"·data-group-id="4305659028-5">{</span><span·class="p"·data-group-id="4305659028-6">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="4[·...·truncated·by·diffoscope;·len:·664,·SHA:·796b1cd9133369b837c65d1a89b8242b536c21d41ff0ade09fa8c21e8c8a4ef2·...·]-4">]</span></code></pre><p>Variables·from·the·environment·can·be·imported,·so·that·the·following·works:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="n">X</span><span·class="o">=</span><span·class="mi">3</span><span·class="p">.</span><span·class="w">1940 </span><span·class="p"·data-group-id="5628877890-4">[</span><span·class="p"·data-group-id="5628877890-5">{</span><span·class="p"·data-group-id="5628877890-6">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="5[·...·truncated·by·diffoscope;·len:·664,·SHA:·75cf2647c8f8db465c2ed5bc5430024f0bdc47f213017e66922868dafc0df26f·...·]-4">]</span></code></pre><p>Variables·from·the·environment·can·be·imported,·so·that·the·following·works:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="n">X</span><span·class="o">=</span><span·class="mi">3</span><span·class="p">.</span><span·class="w">
1941 </span><span·class="mi">3</span><span·class="gp·unselectable">1941 </span><span·class="mi">3</span><span·class="gp·unselectable">
1942 3&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="2202239372-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2202239372-2">(</span><span·class="p"·data-group-id="2202239372-3">{</span><span·class="n">M</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·466,·SHA:·7dc92a582f26d356c7eb7923de21b77fa247147009f5165b3707dd61cba25bbe·...·]-1">)</span><span·class="p">.</span><span·class="w">1942 3&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="1125277253-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1125277253-2">(</span><span·class="p"·data-group-id="1125277253-3">{</span><span·class="n">M</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·466,·SHA:·bd684124f0341f8ef197756049ca3d4402185e9df53f2464a6e0221a528b146d·...·]-1">)</span><span·class="p">.</span><span·class="w">
1943 </span><span·class="p"·data-group-id="2202239372-4">[</span><span·class="p"·data-group-id="2202239372-5">{</span><span·class="p"·data-group-id="2202239372-6">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="2[·...·truncated·by·diffoscope;·len:·825,·SHA:·b45381f257302f1dfff85c2778915c3b5d370a30008752f53a6d14de87aea2c6·...·]-4">]</span></code></pre><p>The·imported·variables·are·replaced·by·match·specification·<code·class="inline">const</code>·expressions,1943 </span><span·class="p"·data-group-id="1125277253-4">[</span><span·class="p"·data-group-id="1125277253-5">{</span><span·class="p"·data-group-id="1125277253-6">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·825,·SHA:·5268ad166b23cc9fad7798fda291b9536bafcb4dd7050ab5592067d225f68898·...·]-4">]</span></code></pre><p>The·imported·variables·are·replaced·by·match·specification·<code·class="inline">const</code>·expressions,
1944 which·is·consistent·with·the·static·scoping·for·Erlang·funs.·However,·local·or1944 which·is·consistent·with·the·static·scoping·for·Erlang·funs.·However,·local·or
1945 global·function·calls·cannot·be·in·the·guard·or·body·of·the·fun.·Calls·to1945 global·function·calls·cannot·be·in·the·guard·or·body·of·the·fun.·Calls·to
1946 built-in·match·specification·functions·is·of·course·allowed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="2180246541-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2180246541-2">(</span><span·class="p"·data-group-id="2180246541-3">{</span><span·class="n">M</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·674,·SHA:·0ebd0fb1827e245422711c4675c3d5120f9debd7ce39f0deca6fecf942838245·...·]-1">)</span><span·class="p">.</span><span·class="w">1946 built-in·match·specification·functions·is·of·course·allowed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="3000899656-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3000899656-2">(</span><span·class="p"·data-group-id="3000899656-3">{</span><span·class="n">M</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·674,·SHA:·131087758a8ba48c2788556ef586036f1bc2b01f22ccbc685aa1de56885898c2·...·]-1">)</span><span·class="p">.</span><span·class="w">
1947 </span><span·class="n">Error</span><span·class="p">:</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">containing</span><span·class="w">·</span><span·class="ss">local</span><span·class="w">·</span><span·class="n">Erlang</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="nf">calls</span><span·class="w">1947 </span><span·class="n">Error</span><span·class="p">:</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">containing</span><span·class="w">·</span><span·class="ss">local</span><span·class="w">·</span><span·class="n">Erlang</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="nf">calls</span><span·class="w">
1948 </span><span·class="p"·data-group-id="2180246541-5">(</span><span·class="ss">&#39;my_fun&#39;</span><span·class="w">·</span><span·class="ss">called</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">guard</span><span·class="p"·data-group-id="218024[·...·truncated·by·diffoscope;·len:·4,·SHA:·3171371a75e685f1b6b56db90ff2ff32d396c31938e95fe9235a72de9b25ef89·...·]-5">)</span><span·class="w">·</span><span·class="ss">cannot</span><span·class="w">·</span><span·class="ss">be</span><span·class="w">·</span><span·class="ss">translated</span><span·class="w">·</span><span·class="ss">into</span><span·class="w">·</span><span·class="ss">match_spec</span><span·class="w">1948 </span><span·class="p"·data-group-id="3000899656-5">(</span><span·class="ss">&#39;my_fun&#39;</span><span·class="w">·</span><span·class="ss">called</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">guard</span><span·class="p"·data-group-id="300089[·...·truncated·by·diffoscope;·len:·4,·SHA:·5bd563f1f52bfc4a7e494b0d40cf93eb5c8db538f866b189de765dbe895a27fc·...·]-5">)</span><span·class="w">·</span><span·class="ss">cannot</span><span·class="w">·</span><span·class="ss">be</span><span·class="w">·</span><span·class="ss">translated</span><span·class="w">·</span><span·class="ss">into</span><span·class="w">·</span><span·class="ss">match_spec</span><span·class="w">
1949 </span><span·class="p"·data-group-id="2180246541-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">transform_error</span><span·class="p"·data-group-id="2180246541-6">}</span><span·class="gp·unselectable">1949 </span><span·class="p"·data-group-id="3000899656-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">transform_error</span><span·class="p"·data-group-id="3000899656-6">}</span><span·class="gp·unselectable">
1950 5&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="2180246541-7">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2180246541-8">(</span><span·class="p"·data-group-id="2180246541-9">{</span><span·class="n">M</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·677,·SHA:·76ccecfc3e069566aa74a758c01f082a9f1de6c8c3c622dac76a91e65da52c4a·...·]-7">)</span><span·class="p">.</span><span·class="w">1950 5&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="3000899656-7">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3000899656-8">(</span><span·class="p"·data-group-id="3000899656-9">{</span><span·class="n">M</span><span·class="p">,</span><span·class="n">N</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·677,·SHA:·f9dacfa4ffe7cd61b55a950ac37894abaa8f8aa3eee0ed125e4010fcd2875244·...·]-7">)</span><span·class="p">.</span><span·class="w">
1951 </span><span·class="p"·data-group-id="2180246541-11">[</span><span·class="p"·data-group-id="2180246541-12">{</span><span·class="p"·data-group-id="2180246541-13">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1059,·SHA:·c9b251a2b26bb636844d407a1757eb8010d35e6a8174f70087e9a2a213ec0da0·...·]-11">]</span></code></pre><p>As·shown·by·the·example,·the·function·can·be·called·from·the·shell·also.·The·fun1951 </span><span·class="p"·data-group-id="3000899656-11">[</span><span·class="p"·data-group-id="3000899656-12">{</span><span·class="p"·data-group-id="3000899656-13">{</span><span·class="ss">&#39;$1&#39;</span><span·class="p">,</span><span·class="ss">&#39;$2&#39;</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·1059,·SHA:·86cfa9fdb6b96ca792e5782ad4ac4300ddafdd7c43613bf5be72ded98a5f7a18·...·]-11">]</span></code></pre><p>As·shown·by·the·example,·the·function·can·be·called·from·the·shell·also.·The·fun
1952 must·be·literally·in·the·call·when·used·from·the·shell·as·well.</p><blockquote><h4·class="warning">Warning</h4><p>If·the·<code·class="inline">parse_transform</code>·is·not·applied·to·a·module·that·calls·this·pseudo1952 must·be·literally·in·the·call·when·used·from·the·shell·as·well.</p><blockquote><h4·class="warning">Warning</h4><p>If·the·<code·class="inline">parse_transform</code>·is·not·applied·to·a·module·that·calls·this·pseudo
1953 function,·the·call·fails·in·runtime·(with·a·<code·class="inline">badarg</code>).·The·<code·class="inline">ets</code>·module1953 function,·the·call·fails·in·runtime·(with·a·<code·class="inline">badarg</code>).·The·<code·class="inline">ets</code>·module
1954 exports·a·function·with·this·name,·but·it·is·never·to·be·called·except·when1954 exports·a·function·with·this·name,·but·it·is·never·to·be·called·except·when
1955 using·the·function·in·the·shell.·If·the·<code·class="inline">parse_transform</code>·is·properly·applied1955 using·the·function·in·the·shell.·If·the·<code·class="inline">parse_transform</code>·is·properly·applied
1956 by·including·header·file·<code·class="inline">ms_transform.hrl</code>,·compiled·code·never·calls·the1956 by·including·header·file·<code·class="inline">ms_transform.hrl</code>,·compiled·code·never·calls·the
1957 function,·but·the·function·call·is·replaced·by·a·literal·match·specification.</p></blockquote><p>For·more·information,·see·<a·href="ms_transform.html"><code·class="inline">ms_transform</code></a>.</p>1957 function,·but·the·function·call·is·replaced·by·a·literal·match·specification.</p></blockquote><p>For·more·information,·see·<a·href="ms_transform.html"><code·class="inline">ms_transform</code></a>.</p>
1958 ··</section>1958 ··</section>
Offset 2569, 20 lines modifiedOffset 2569, 20 lines modified
  
2569 ··········<pre·translate="no"><span·class="attribute">-spec</span>·match(Table,·Pattern)·->·[Match]2569 ··········<pre·translate="no"><span·class="attribute">-spec</span>·match(Table,·Pattern)·->·[Match]
2570 ···············when·Table·::·<a·href="#t:table/0">table</a>(),·Pattern·::·<a·href="#t:match_pattern/0">match_pattern</a>(),·Match·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()].</pre>2570 ···············when·Table·::·<a·href="#t:table/0">table</a>(),·Pattern·::·<a·href="#t:match_pattern/0">match_pattern</a>(),·Match·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()].</pre>
  
2571 ······</div>2571 ······</div>
  
2572 <p>Matches·the·objects·in·table·<code·class="inline">Table</code>·against·pattern·<code·class="inline">Pattern</code>.</p><p>A·pattern·is·a·term·that·can·contain:</p><ul><li>Bound·parts·(Erlang·terms)</li><li><code·class="inline">'_'</code>·that·matches·any·Erlang·term</li><li>Pattern·variables·<code·class="inline">'$N'</code>,·where·<code·class="inline">N</code>=0,1,...</li></ul><p>The·function·returns·a·list·with·one·element·for·each·matching·object,·where2572 <p>Matches·the·objects·in·table·<code·class="inline">Table</code>·against·pattern·<code·class="inline">Pattern</code>.</p><p>A·pattern·is·a·term·that·can·contain:</p><ul><li>Bound·parts·(Erlang·terms)</li><li><code·class="inline">'_'</code>·that·matches·any·Erlang·term</li><li>Pattern·variables·<code·class="inline">'$N'</code>,·where·<code·class="inline">N</code>=0,1,...</li></ul><p>The·function·returns·a·list·with·one·element·for·each·matching·object,·where
2573 each·element·is·an·ordered·list·of·pattern·variable·bindings,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">6&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="5418710061-1">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="5418710061-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·Matches·every·object·in·table</span><span·class="w">2573 each·element·is·an·ordered·list·of·pattern·variable·bindings,·for·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">6&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="0578152782-1">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="0578152782-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·Matches·every·object·in·table</span><span·class="w">
2574 </span><span·class="p"·data-group-id="5418710061-2">[</span><span·class="p"·data-group-id="5418710061-3">[</span><span·class="p"·data-group-id="5418710061-4">{</span><span·class="ss">rufsen</span><span·class="p">,</span><span·class="ss">dog</span><span·class="p">,</span><span·class="mi">7</spa[·...·truncated·by·diffoscope;·len:·882,·SHA:·a537456cc1ae37a365c214d4a49c745571d4258ec66a750a0ce1584756f4555f·...·]-2">]</span><span·class="gp·unselectable">2574 </span><span·class="p"·data-group-id="0578152782-2">[</span><span·class="p"·data-group-id="0578152782-3">[</span><span·class="p"·data-group-id="0578152782-4">{</span><span·class="ss">rufsen</span><span·class="p">,</span><span·class="ss">dog</span><span·class="p">,</span><span·class="mi">7</spa[·...·truncated·by·diffoscope;·len:·882,·SHA:·95af6884a8cba378c5476c16423389dc561b9aa032bf3b2f7d04a7680c33e8f6·...·]-2">]</span><span·class="gp·unselectable">
2575 7&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="5418710061-9">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5418710061-10">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">dog</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·133,·SHA:·dc9c7e0faff9f200efa60746ba92123597f23023c311cddc613df0b0691b87e9·...·]-9">)</span><span·class="p">.</span><span·class="w">2575 7&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="0578152782-9">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0578152782-10">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">dog</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·133,·SHA:·993e30c08899bdc19cdb440738decd7227c646793ad77b1af50ce32b1fc5a7f1·...·]-9">)</span><span·class="p">.</span><span·class="w">
2576 </span><span·class="p"·data-group-id="5418710061-11">[</span><span·class="p"·data-group-id="5418710061-12">[</span><span·class="mi">7</span><span·class="p"·data-group-id="5418710061-12">]</span><span·class="p">,</span><span·class="p"·data-group-id="5418710061-13">[</span><span·class="mi">5</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·e65b730175e93a1ffc6fad6aaa3e282bb9c592d1bee325ca62a8c13a7556c6de·...·]-11">]</span><span·class="gp·unselectable">2576 </span><span·class="p"·data-group-id="0578152782-11">[</span><span·class="p"·data-group-id="0578152782-12">[</span><span·class="mi">7</span><span·class="p"·data-group-id="0578152782-12">]</span><span·class="p">,</span><span·class="p"·data-group-id="0578152782-13">[</span><span·class="mi">5</sp[·...·truncated·by·diffoscope;·len:·98,·SHA:·43ac2b57bc5395598d83032fcf8eb7a621c1f232be3e975055bf394a11e02840·...·]-11">]</span><span·class="gp·unselectable">
2577 8&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="5418710061-14">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5418710061-15">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">cow</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·134,·SHA:·3ec1f1235147f61e06d7165315e419bba63db403deb99cffa24cb5641b3d6b1d·...·]-14">)</span><span·class="p">.</span><span·class="w">2577 8&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="0578152782-14">(</span><span·class="n">T</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0578152782-15">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="ss">cow</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·134,·SHA:·30a593f52a11e08fdc903088e106ee1bd0aac46c997713ce991547304134b2db·...·]-14">)</span><span·class="p">.</span><span·class="w">
2578 </span><span·class="p"·data-group-id="5418710061-16">[</span><span·class="p"·data-group-id="5418710061-16">]</span></code></pre><p>If·the·key·is·specified·in·the·pattern,·the·match·is·very·efficient.·If·the·key2578 </span><span·class="p"·data-group-id="0578152782-16">[</span><span·class="p"·data-group-id="0578152782-16">]</span></code></pre><p>If·the·key·is·specified·in·the·pattern,·the·match·is·very·efficient.·If·the·key
2579 is·not·specified,·that·is,·if·it·is·a·variable·or·an·underscore,·the·entire2579 is·not·specified,·that·is,·if·it·is·a·variable·or·an·underscore,·the·entire
2580 table·must·be·searched.·The·search·time·can·be·substantial·if·the·table·is·very2580 table·must·be·searched.·The·search·time·can·be·substantial·if·the·table·is·very
2581 large.</p><p>For·tables·of·type·<code·class="inline">ordered_set</code>,·the·result·is·in·the·same·order·as·in·a2581 large.</p><p>For·tables·of·type·<code·class="inline">ordered_set</code>,·the·result·is·in·the·same·order·as·in·a
2582 <code·class="inline">first</code>/<code·class="inline">next</code>·traversal.</p>2582 <code·class="inline">first</code>/<code·class="inline">next</code>·traversal.</p>
2583 ··</section>2583 ··</section>
2584 </section>2584 </section>
2585 <section·class="detail"·id="match/3">2585 <section·class="detail"·id="match/3">
Offset 2826, 18 lines modifiedOffset 2826, 18 lines modified
2826 use.</p><p>The·matching·is·executed·on·each·element·in·<code·class="inline">List</code>·and·the·function·returns·a2826 use.</p><p>The·matching·is·executed·on·each·element·in·<code·class="inline">List</code>·and·the·function·returns·a
2827 list·containing·all·results.·If·an·element·in·<code·class="inline">List</code>·does·not·match,·nothing·is2827 list·containing·all·results.·If·an·element·in·<code·class="inline">List</code>·does·not·match,·nothing·is
2828 returned·for·that·element.·The·length·of·the·result·list·is·therefore·equal·or2828 returned·for·that·element.·The·length·of·the·result·list·is·therefore·equal·or
2829 less·than·the·length·of·parameter·<code·class="inline">List</code>.</p><p><em>Example:</em></p><p>The·following·two·calls·give·the·same·result·(but·certainly·not·the·same2829 less·than·the·length·of·parameter·<code·class="inline">List</code>.</p><p><em>Example:</em></p><p>The·following·two·calls·give·the·same·result·(but·certainly·not·the·same
2830 execution·time):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Table</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="ss">new</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">2830 execution·time):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Table</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="ss">new</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
2831 </span><span·class="n">MatchSpec</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">2831 </span><span·class="n">MatchSpec</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
2832 </span><span·class="c1">%·The·following·call...</span><span·class="w">2832 </span><span·class="c1">%·The·following·call...</span><span·class="w">
2833 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_spec_run</span><span·class="p"·data-group-id="4889464251-1">(</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">tab2list</span><span·class="p"·data-group-id="4889464251-2">(</span><span·class="n">Table</span><span·class="p"·data-group-id="4889464251-2">)</span><span·class="p">,</span><span·class="w">2833 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_spec_run</span><span·class="p"·data-group-id="8085746468-1">(</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">tab2list</span><span·class="p"·data-group-id="8085746468-2">(</span><span·class="n">Table</span><span·class="p"·data-group-id="8085746468-2">)</span><span·class="p">,</span><span·class="w">
2834 ···················</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_spec_compile</span><span·class="p"·data-group-id="4889464251-3">(</span><span·class="n">MatchSpec</span><span·class="p"·data-group-id="4889464251-3">)</span><span·class="p"·data-group-id="4889464251-1">)</span><span·class="p">,</span><span·class="w">2834 ···················</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match_spec_compile</span><span·class="p"·data-group-id="8085746468-3">(</span><span·class="n">MatchSpec</span><span·class="p"·data-group-id="8085746468-3">)</span><span·class="p"·data-group-id="8085746468-1">)</span><span·class="p">,</span><span·class="w">
2835 </span><span·class="c1">%·...gives·the·same·result·as·the·more·common·(and·more·efficient)</span><span·class="w">2835 </span><span·class="c1">%·...gives·the·same·result·as·the·more·common·(and·more·efficient)</span><span·class="w">
2836 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="4889464251-4">(</span><span·class="n">Table</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MatchSpec</span><span·class="p"·data-group-id="4889464251-4">)</span><span·class="p">,</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·function·has·limited·use·in·normal·code.·It·is·used·by·the·<a·href="dets.html"><code·class="inline">dets</code></a>2836 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="8085746468-4">(</span><span·class="n">Table</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MatchSpec</span><span·class="p"·data-group-id="8085746468-4">)</span><span·class="p">,</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·function·has·limited·use·in·normal·code.·It·is·used·by·the·<a·href="dets.html"><code·class="inline">dets</code></a>
2837 module·to·perform·the·<a·href="dets.html#select/1"><code·class="inline">dets:select/1</code></a>·operations·and·by·Mnesia·during2837 module·to·perform·the·<a·href="dets.html#select/1"><code·class="inline">dets:select/1</code></a>·operations·and·by·Mnesia·during
2838 transactions.</p></blockquote>2838 transactions.</p></blockquote>
2839 ··</section>2839 ··</section>
2840 </section>2840 </section>
2841 <section·class="detail"·id="member/2">2841 <section·class="detail"·id="member/2">
  
2842 ··<div·class="detail-header">2842 ··<div·class="detail-header">
Offset 3192, 27 lines modifiedOffset 3192, 27 lines modified
3192 <p>Restores·an·opaque·continuation·returned·by·<a·href="#select/3"><code·class="inline">select/3</code></a>·or·<a·href="#select/1"><code·class="inline">select/1</code></a>·if·the3192 <p>Restores·an·opaque·continuation·returned·by·<a·href="#select/3"><code·class="inline">select/3</code></a>·or·<a·href="#select/1"><code·class="inline">select/1</code></a>·if·the
3193 continuation·has·passed·through·external·term·format·(been·sent·between·nodes·or3193 continuation·has·passed·through·external·term·format·(been·sent·between·nodes·or
3194 stored·on·disk).</p><p>The·reason·for·this·function·is·that·continuation·terms·contain·compiled·match3194 stored·on·disk).</p><p>The·reason·for·this·function·is·that·continuation·terms·contain·compiled·match
3195 specifications·and·may·therefore·be·invalidated·if·converted·to·external·term3195 specifications·and·may·therefore·be·invalidated·if·converted·to·external·term
3196 format.·Given·that·the·original·match·specification·is·kept·intact,·the3196 format.·Given·that·the·original·match·specification·is·kept·intact,·the
3197 continuation·can·be·restored,·meaning·it·can·once·again·be·used·in·subsequent3197 continuation·can·be·restored,·meaning·it·can·once·again·be·used·in·subsequent
3198 <a·href="#select/1"><code·class="inline">select/1</code></a>·calls·even·though·it·has·been·stored·on·disk·or·on3198 <a·href="#select/1"><code·class="inline">select/1</code></a>·calls·even·though·it·has·been·stored·on·disk·or·on
3199 another·node.</p><p><em>Examples:</em></p><p>The·following·sequence·of·calls·may·fail:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">T</span><span·class="o">=</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="3923456333-1">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="3923456333-2">[</span><span·class="p"·data-group-id="3923456333-2">]</span><span·class="p"·data-group-id="3923456333-1">)</span><span·class="p">,</span><span·class="w">3199 another·node.</p><p><em>Examples:</em></p><p>The·following·sequence·of·calls·may·fail:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">T</span><span·class="o">=</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="3302872046-1">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="3302872046-2">[</span><span·class="p"·data-group-id="3302872046-2">]</span><span·class="p"·data-group-id="3302872046-1">)</span><span·class="p">,</span><span·class="w">
3200 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">3200 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
3201 </span><span·class="n">MS</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="3923456333-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3923456333-4">(</span><span·class="p"·data-group-id="3923456333-5">{</span><span·class="n">N</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·721,·SHA:·2079fcaf8b14a53c87503d3ab05b69201e3784ff9f7989da52c78750dda2d2b9·...·]-3">)</span><span·class="p">,</span><span·class="w">3201 </span><span·class="n">MS</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="3302872046-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3302872046-4">(</span><span·class="p"·data-group-id="3302872046-5">{</span><span·class="n">N</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·721,·SHA:·c0767ebffc6543a7b2e6e79162117c9163aa04f0b6a9a02a8ad29ed4269046a0·...·]-3">)</span><span·class="p">,</span><span·class="w">
3202 </span><span·class="p"·data-group-id="3923456333-7">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="3923456333-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class[·...·truncated·by·diffoscope;·len:·308,·SHA:·771634469f51b91fb83fe89f6dd3412b8ad2d9dba3689c86816abe5cae199de8·...·]-8">)</span><span·class="p">,</span><span·class="w">3202 </span><span·class="p"·data-group-id="3302872046-7">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="3302872046-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class[·...·truncated·by·diffoscope;·len:·308,·SHA:·fa3a01d88dd0da97514115ef3d2062f17bde78bbf94851e7f976dd6579a4433a·...·]-8">)</span><span·class="p">,</span><span·class="w">
3203 </span><span·class="n">MaybeBroken</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="3923456333-9">(</span><span·class="nf">term_to_binary</span><span·class="p"·data-group-id="3923456333-10">(</span><span·class="n">C</span><span·class="p"·data-group-id="3923456333-10">)</span><span·class="p"·data-group-id="3923456333-9">)</span><span·class="p">,</span><span·class="w">3203 </span><span·class="n">MaybeBroken</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="3302872046-9">(</span><span·class="nf">term_to_binary</span><span·class="p"·data-group-id="3302872046-10">(</span><span·class="n">C</span><span·class="p"·data-group-id="3302872046-10">)</span><span·class="p"·data-group-id="3302872046-9">)</span><span·class="p">,</span><span·class="w">
3204 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="3923456333-11">(</span><span·class="n">MaybeBroken</span><span·class="p"·data-group-id="3923456333-11">)</span><span·class="p">.</span></code></pre><p>The·following·sequence·works,·as·the·call·to3204 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="3302872046-11">(</span><span·class="n">MaybeBroken</span><span·class="p"·data-group-id="3302872046-11">)</span><span·class="p">.</span></code></pre><p>The·following·sequence·works,·as·the·call·to
3205 <a·href="#repair_continuation/2"><code·class="inline">repair_continuation/2</code></a>·reestablishes·the3205 <a·href="#repair_continuation/2"><code·class="inline">repair_continuation/2</code></a>·reestablishes·the
3206 <code·class="inline">MaybeBroken</code>·continuation.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">T</span><span·class="o">=</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="3813054534-1">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="3813054534-2">[</span><span·class="p"·data-group-id="3813054534-2">]</span><span·class="p"·data-group-id="3813054534-1">)</span><span·class="p">,</span><span·class="w">3206 <code·class="inline">MaybeBroken</code>·continuation.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">T</span><span·class="o">=</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="5988436277-1">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="5988436277-2">[</span><span·class="p"·data-group-id="5988436277-2">]</span><span·class="p"·data-group-id="5988436277-1">)</span><span·class="p">,</span><span·class="w">
3207 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">3207 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
3208 </span><span·class="n">MS</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="3813054534-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3813054534-4">(</span><span·class="p"·data-group-id="3813054534-5">{</span><span·class="n">N</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·722,·SHA:·04977854159a1e1a18e326abdea964623ba0d9e20dbfdfa5cc445f6acc3e434c·...·]-3">)</span><span·class="p">,</span><span·class="w">3208 </span><span·class="n">MS</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="5988436277-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5988436277-4">(</span><span·class="p"·data-group-id="5988436277-5">{</span><span·class="n">N</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·722,·SHA:·ab5da6935e6d5f5a232efc4168f69d1bd3af8108b9e713bca11c42fc8fba830e·...·]-3">)</span><span·class="p">,</span><span·class="w">
3209 </span><span·class="p"·data-group-id="3813054534-7">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="3813054534-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·clas[·...·truncated·by·diffoscope;·len:·261,·SHA:·c3a6709f0fe3391df5ee582758ce2858f0aeb71283a05eaee3472e695a77b700·...·]-8">)</span><span·class="p">,</span><span·class="w">3209 </span><span·class="p"·data-group-id="5988436277-7">{</span><span·class="p">_</span><span·class="p">,</span><span·class="n">C</span><span·class="p"·data-group-id="5988436277-7">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">ets</span><span·clas[·...·truncated·by·diffoscope;·len:·261,·SHA:·b45d685f91bac0d2007a230be172b9c780a8a1f1c26f978170562871c68fd1e6·...·]-8">)</span><span·class="p">,</span><span·class="w">
3210 </span><span·class="n">MaybeBroken</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="3813054534-9">(</span><span·class="nf">term_to_binary</span><span·class="p"·data-group-id="3813054534-10">(</span><span·class="n">C</span><span·class="p"·data-group-id="3813054534-10">)</span><span·class="p"·data-group-id="3813054534-9">)</span><span·class="p">,</span><span·class="w">3210 </span><span·class="n">MaybeBroken</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary_to_term</span><span·class="p"·data-group-id="5988436277-9">(</span><span·class="nf">term_to_binary</span><span·class="p"·data-group-id="5988436277-10">(</span><span·class="n">C</span><span·class="p"·data-group-id="5988436277-10">)</span><span·class="p"·data-group-id="5988436277-9">)</span><span·class="p">,</span><span·class="w">
3211 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="3813054534-11">(</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">repair_continuation</span><span·class="p"·data-group-id="3813054534-12">(</span><span·class="n">MaybeBroken</span><span·class="p">,</span><span·class="n">MS</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·00ac3c6267be42e7ebc7a9778138f2362fe6ee5f13421595987ea06bf5eafc91·...·]-11">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·function·is·rarely·needed·in·application·code.·It·is·used·by·Mnesia·to3211 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="5988436277-11">(</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">repair_continuation</span><span·class="p"·data-group-id="5988436277-12">(</span><span·class="n">MaybeBroken</span><span·class="p">,</span><span·class="n">MS</span><s[·...·truncated·by·diffoscope;·len:·93,·SHA:·c65fbf79215cbca1cef39565075dd8c56378f30488c12be95d24d5c36aa37580·...·]-11">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·function·is·rarely·needed·in·application·code.·It·is·used·by·Mnesia·to
3212 provide·distributed·<a·href="#select/3"><code·class="inline">select/3</code></a>·and·<a·href="#select/1"><code·class="inline">select/1</code></a>3212 provide·distributed·<a·href="#select/3"><code·class="inline">select/3</code></a>·and·<a·href="#select/1"><code·class="inline">select/1</code></a>
3213 sequences.·A·normal·application·would·either·use·Mnesia·or·keep·the3213 sequences.·A·normal·application·would·either·use·Mnesia·or·keep·the
3214 continuation·from·being·converted·to·external·format.</p><p>The·actual·behavior·of·compiled·match·specifications·when·recreated·from3214 continuation·from·being·converted·to·external·format.</p><p>The·actual·behavior·of·compiled·match·specifications·when·recreated·from
Max diff block lines reached; 62737/122953 bytes (51.03%) of diff not shown.
690 B
html2text {}
Max HTML report size reached
20.1 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/file_sorter.html
    
Offset 191, 43 lines modifiedOffset 191, 43 lines modified
191 function·has·been·applied·to·all·of·the·results·or·an·error·occurs,·the·last191 function·has·been·applied·to·all·of·the·results·or·an·error·occurs,·the·last
192 function·is·called·with·argument·<code·class="inline">close</code>,·and·the·reply·is·returned·as·value·of192 function·is·called·with·argument·<code·class="inline">close</code>,·and·the·reply·is·returned·as·value·of
193 the·current·call·to·the·sort·or·merge·function.</p><p>If·a·function·is·specified·as·input·and·the·last·input·function·returns193 the·current·call·to·the·sort·or·merge·function.</p><p>If·a·function·is·specified·as·input·and·the·last·input·function·returns
194 <code·class="inline">{end_of_input,·Value}</code>,·the·function·specified·as·output·is·called·with194 <code·class="inline">{end_of_input,·Value}</code>,·the·function·specified·as·output·is·called·with
195 argument·<code·class="inline">{value,·Value}</code>.·This·makes·it·easy·to·initiate·the·sequence·of·output195 argument·<code·class="inline">{value,·Value}</code>.·This·makes·it·easy·to·initiate·the·sequence·of·output
196 functions·with·a·value·calculated·by·the·input·functions.</p><p>As·an·example,·consider·sorting·the·terms·on·a·disk·log·file.·A·function·that196 functions·with·a·value·calculated·by·the·input·functions.</p><p>As·an·example,·consider·sorting·the·terms·on·a·disk·log·file.·A·function·that
197 reads·chunks·from·the·disk·log·and·returns·a·list·of·binaries·is·used·as·input.197 reads·chunks·from·the·disk·log·and·returns·a·list·of·binaries·is·used·as·input.
198 The·results·are·collected·in·a·list·of·terms.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">sort</span><span·class="p"·data-group-id="1572127261-1">(</span><span·class="n">Log</span><span·class="p"·data-group-id="1572127261-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
199 ····</span><span·class="p"·data-group-id="1572127261-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="1572127261-2">}</span><span·class="w">·</span><span·class="o">=[·...·truncated·by·diffoscope;·len:·767,·SHA:·5530078f9a57a63e615e7ac27ffa37f280aa77c60ca58e5dcac00772a6979c2f·...·]</span><span·class="w">198 The·results·are·collected·in·a·list·of·terms.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">sort</span><span·class="p"·data-group-id="6622847895-1">(</span><span·class="n">Log</span><span·class="p"·data-group-id="6622847895-1">)</span[·...·truncated·by·diffoscope;·len:·46,·SHA:·1097a0bea68d65a431edcb4038943364caa12d307d0cd39d47cedc89a660f4e0·...·]</span><span·class="w">
 199 ····</span><span·class="p"·data-group-id="6622847895-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="6622847895-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="6622847895-3">(</span><span·class="p"·data-group-id="6622847895-4">[</span><span·class="p"·data-group-id="6622847895-5">{</span><span·class="ss">name</span><span·class="p">,</span><span·class="n">Log</span><span·class="p"·data-group-id="6622847895-5">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6622847895-6">{</span><span·class="ss">mode</span><span·class="p">,</span><span·class="ss">read_only</span><span·class="p"·data-group-id="6622847895-6">}</span><span·class="p"·data-group-id="6622847895-4">]</span><span·class="p"·data-group-id="6622847895-3">)</span><span·class="p">,</span><span·class="w">
200 ····</span><span·class="n">Input</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">input</span><span·class="p"·data-group-id="1572127261-7">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start</span><span·class="p"·data-group-id="1572127261-7">)</span><span·class="p">,</span><span·class="w">200 ····</span><span·class="n">Input</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">input</span><span·class="p"·data-group-id="6622847895-7">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">start</span><span·class="p"·data-group-id="6622847895-7">)</span><span·class="p">,</span><span·class="w">
201 ····</span><span·class="n">Output</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">output</span><span·class="p"·data-group-id="1572127261-8">(</span><span·class="p"·data-group-id="1572127261-9">[</span><span·class="p"·data-group-id="1572127261-9">]</span><span·class="p"·data-group-id="1572127261-8">)</span><span·class="p">,</span><span·class="w">201 ····</span><span·class="n">Output</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">output</span><span·class="p"·data-group-id="6622847895-8">(</span><span·class="p"·data-group-id="6622847895-9">[</span><span·class="p"·data-group-id="6622847895-9">]</span><span·class="p"·data-group-id="6622847895-8">)</span><span·class="p">,</span><span·class="w">
202 ····</span><span·class="n">Reply</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file_sorter</span><span·class="p">:</span><span·class="nf">sort</span><span·class="p"·data-group-id="1572127261-10">(</span><span·class="n">Input</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Output</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1572127261-11">{</span><span·class="ss">format</s[·...·truncated·by·diffoscope;·len:·151,·SHA:·0fae5f0795838d18a716db60238dd81f3e354fc59c7c3d3ee8199ef7f9075315·...·]-10">)</span><span·class="p">,</span><span·class="w">202 ····</span><span·class="n">Reply</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file_sorter</span><span·class="p">:</span><span·class="nf">sort</span><span·class="p"·data-group-id="6622847895-10">(</span><span·class="n">Input</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Output</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6622847895-11">{</span><span·class="ss">format</s[·...·truncated·by·diffoscope;·len:·151,·SHA:·bf63467ed26f844f4ad042829861dfd986b1cf83dc56176053e4897d757fc194·...·]-10">)</span><span·class="p">,</span><span·class="w">
203 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="1572127261-12">(</span><span·class="n">Log</span><span·class="p"·data-group-id="1572127261-12">)</span><span·class="p">,</span><span·class="w">203 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="6622847895-12">(</span><span·class="n">Log</span><span·class="p"·data-group-id="6622847895-12">)</span><span·class="p">,</span><span·class="w">
204 ····</span><span·class="n">Reply</span><span·class="p">.</span><span·class="w">204 ····</span><span·class="n">Reply</span><span·class="p">.</span><span·class="w">
  
205 </span><span·class="nf">input</span><span·class="p"·data-group-id="1572127261-13">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cont</span><span·class="p"·data-group-id="1572127261-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">205 </span><span·class="nf">input</span><span·class="p"·data-group-id="6622847895-13">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cont</span><span·class="p"·data-group-id="6622847895-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="1572127261-14">(</span><span·class="ss">close</span><span·class="p"·data-group-id="1572127261-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">206 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="6622847895-14">(</span><span·class="ss">close</span><span·class="p"·data-group-id="6622847895-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
207 ············</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">207 ············</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
208 ·······</span><span·class="p"·data-group-id="1572127261-15">(</span><span·class="ss">read</span><span·class="p"·data-group-id="1572127261-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 ·······</span><span·class="p"·data-group-id="6622847895-15">(</span><span·class="ss">read</span><span·class="p"·data-group-id="6622847895-15">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
209 ············</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">chunk</span><span·class="p"·data-group-id="1572127261-16">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cont</span><span·class="p"·data-group-id="1572127261-16">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">209 ············</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">disk_log</span><span·class="p">:</span><span·class="nf">chunk</span><span·class="p"·data-group-id="6622847895-16">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cont</span><span·class="p"·data-group-id="6622847895-16">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
210 ················</span><span·class="p"·data-group-id="1572127261-17">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="1572127261-17">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">210 ················</span><span·class="p"·data-group-id="6622847895-17">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="6622847895-17">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
211 ····················</span><span·class="p"·data-group-id="1572127261-18">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="1572127261-18">}</span><span·class="p">;</span><span·class="w">211 ····················</span><span·class="p"·data-group-id="6622847895-18">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="6622847895-18">}</span><span·class="p">;</span><span·class="w">
212 ················</span><span·class="p"·data-group-id="1572127261-19">{</span><span·class="n">Cont2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Terms</span><span·class="p"·data-group-id="1572127261-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">212 ················</span><span·class="p"·data-group-id="6622847895-19">{</span><span·class="n">Cont2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Terms</span><span·class="p"·data-group-id="6622847895-19">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
213 ····················</span><span·class="p"·data-group-id="1572127261-20">{</span><span·class="n">Terms</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">input</span><span·class="p"·data-group-id="1572127261-21">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·123,·SHA:·0b565a292bb51d547ee2497afe87c3b4a842b01d8cc3fa45f07a79d4584fc4f7·...·]-20">}</span><span·class="p">;</span><span·class="w">213 ····················</span><span·class="p"·data-group-id="6622847895-20">{</span><span·class="n">Terms</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">input</span><span·class="p"·data-group-id="6622847895-21">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·123,·SHA:·cb02d8121c77213e5ee1e32b4837914f492803ee7f18e6d7d6af2e29142c148e·...·]-20">}</span><span·class="p">;</span><span·class="w">
214 ················</span><span·class="p"·data-group-id="1572127261-22">{</span><span·class="n">Cont2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Terms</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Badbytes</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·dd686b1674b3693b36d63876f707c77844ce78979da94a50887c4e9e59f3f504·...·]-22">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 ················</span><span·class="p"·data-group-id="6622847895-22">{</span><span·class="n">Cont2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Terms</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Badbytes</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·ed4909500e2c6cd1bb5d0bbec142f6422ed577939a7fda553c94300624a8474d·...·]-22">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 ····················</span><span·class="p"·data-group-id="1572127261-23">{</span><span·class="n">Terms</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">input</span><span·class="p"·data-group-id="1572127261-24">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·123,·SHA:·82a7257686d8c390c0207d2291608ee914810db2dbb3b83ffbada078c282b3e2·...·]-23">}</span><span·class="p">;</span><span·class="w">215 ····················</span><span·class="p"·data-group-id="6622847895-23">{</span><span·class="n">Terms</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">input</span><span·class="p"·data-group-id="6622847895-24">(</span><span·class="n">Log</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·123,·SHA:·7aebe48e5052d69c1072a9bcf3f76f55f74e53cae095926f5a1ed87e0a5bb9dc·...·]-23">}</span><span·class="p">;</span><span·class="w">
216 ················</span><span·class="ss">eof</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">216 ················</span><span·class="ss">eof</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
217 ····················</span><span·class="ss">end_of_input</span><span·class="w">217 ····················</span><span·class="ss">end_of_input</span><span·class="w">
218 ············</span><span·class="k">end</span><span·class="w">218 ············</span><span·class="k">end</span><span·class="w">
219 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">219 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
220 </span><span·class="nf">output</span><span·class="p"·data-group-id="1572127261-25">(</span><span·class="n">L</span><span·class="p"·data-group-id="1572127261-25">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">220 </span><span·class="nf">output</span><span·class="p"·data-group-id="6622847895-25">(</span><span·class="n">L</span><span·class="p"·data-group-id="6622847895-25">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
221 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="1572127261-26">(</span><span·class="ss">close</span><span·class="p"·data-group-id="1572127261-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">221 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="6622847895-26">(</span><span·class="ss">close</span><span·class="p"·data-group-id="6622847895-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
222 ············</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="1572127261-27">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="1572127261-28">(</span><span·class="n">L</span><span·class="p"·data-group-id="1572127261-28">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·c2b66ae8c2d84c7c0ffbb6565b0a0b110de598c1012baf08bf18c8cafa1f2bda·...·]-27">)</span><span·class="p">;</span><span·class="w">222 ············</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="6622847895-27">(</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="6622847895-28">(</span><span·class="n">L</span><span·class="p"·data-group-id="6622847895-28">)</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·bc4f672807afea8d1ba8bd68e2706023799f5bd7c93139accbdda001d61c5d26·...·]-27">)</span><span·class="p">;</span><span·class="w">
223 ·······</span><span·class="p"·data-group-id="1572127261-29">(</span><span·class="n">Terms</span><span·class="p"·data-group-id="1572127261-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">223 ·······</span><span·class="p"·data-group-id="6622847895-29">(</span><span·class="n">Terms</span><span·class="p"·data-group-id="6622847895-29">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
224 ············</span><span·class="nf">output</span><span·class="p"·data-group-id="1572127261-30">(</span><span·class="p"·data-group-id="1572127261-31">[</span><span·class="n">Terms</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="1572127261-31">]</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·d2dce77a910b12eb3621b7ce5e4fdacb629af9e06c67b8d5e525fa4c661ba697·...·]-30">)</span><span·class="w">224 ············</span><span·class="nf">output</span><span·class="p"·data-group-id="6622847895-30">(</span><span·class="p"·data-group-id="6622847895-31">[</span><span·class="n">Terms</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="6622847895-31">]</span><[·...·truncated·by·diffoscope;·len:·40,·SHA:·4a27d1120fbb5d9414e60c61315e42ee97243e81db18680f6fe820f36010da4d·...·]-30">)</span><span·class="w">
225 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>For·more·examples·of·functions·as·input·and·output,·see·the·end·of·the225 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>For·more·examples·of·functions·as·input·and·output,·see·the·end·of·the
226 <code·class="inline">file_sorter</code>·module;·the·<code·class="inline">term</code>·format·is·implemented·with·functions.</p><p>The·possible·values·of·<code·class="inline">Reason</code>·returned·when·an·error·occurs·are:</p><ul><li><code·class="inline">bad_object</code>,·<code·class="inline">{bad_object,·FileName}</code>·-·Applying·the·format·function·failed226 <code·class="inline">file_sorter</code>·module;·the·<code·class="inline">term</code>·format·is·implemented·with·functions.</p><p>The·possible·values·of·<code·class="inline">Reason</code>·returned·when·an·error·occurs·are:</p><ul><li><code·class="inline">bad_object</code>,·<code·class="inline">{bad_object,·FileName}</code>·-·Applying·the·format·function·failed
227 for·some·binary,·or·the·key(s)·could·not·be·extracted·from·some·term.</li><li><code·class="inline">{bad_term,·FileName}</code>·-·<a·href="io.html#read/2"><code·class="inline">io:read/2</code></a>·failed·to·read·some·term.</li><li><code·class="inline">{file_error,·FileName,·file:posix()}</code>·-·For·an·explanation·of227 for·some·binary,·or·the·key(s)·could·not·be·extracted·from·some·term.</li><li><code·class="inline">{bad_term,·FileName}</code>·-·<a·href="io.html#read/2"><code·class="inline">io:read/2</code></a>·failed·to·read·some·term.</li><li><code·class="inline">{file_error,·FileName,·file:posix()}</code>·-·For·an·explanation·of
228 <a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:posix/0"><code·class="inline">file:posix()</code></a>,·see·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html"><code·class="inline">file</code></a>.</li><li><code·class="inline">{premature_eof,·FileName}</code>·-·End-of-file·was·encountered·inside·some·binary228 <a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:posix/0"><code·class="inline">file:posix()</code></a>,·see·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html"><code·class="inline">file</code></a>.</li><li><code·class="inline">{premature_eof,·FileName}</code>·-·End-of-file·was·encountered·inside·some·binary
229 term.</li></ul>229 term.</li></ul>
230 ····</section>230 ····</section>
  
Offset 1910, 15 lines modifiedOffset 1910, 15 lines modified
1910 ······<p·class="built-using">1910 ······<p·class="built-using">
1911 ········Built·using1911 ········Built·using
1912 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1912 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1913 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1913 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1914 ······</p>1914 ······</p>
1915 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1915 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1916 ····</footer>1916 ····</footer>
1917 ··</div>1917 ··</div>
1918 </main>1918 </main>
1919 </div>1919 </div>
1920 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1920 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1921 <script>1921 <script>
1922 ··document.addEventListener("DOMContentLoaded",·function·()·{1922 ··document.addEventListener("DOMContentLoaded",·function·()·{
640 B
html2text {}
Max HTML report size reached
7.57 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/filelib.html
    
Offset 1026, 23 lines modifiedOffset 1026, 23 lines modified
1026 ································Cwd·::·<a·href="#t:filename_all/0">filename_all</a>(),1026 ································Cwd·::·<a·href="#t:filename_all/0">filename_all</a>(),
1027 ································SafeFilename·::·<a·href="#t:filename_all/0">filename_all</a>().</pre>1027 ································SafeFilename·::·<a·href="#t:filename_all/0">filename_all</a>().</pre>
  
1028 ······</div>1028 ······</div>
  
1029 <p>Sanitizes·the·relative·path·by·eliminating·&quot;..&quot;·and·&quot;.&quot;·components·to·protect1029 <p>Sanitizes·the·relative·path·by·eliminating·&quot;..&quot;·and·&quot;.&quot;·components·to·protect
1030 against·directory·traversal·attacks.</p><p>Either·returns·the·sanitized·path·name,·or·the·atom·<code·class="inline">unsafe</code>·if·the·path·is·unsafe.1030 against·directory·traversal·attacks.</p><p>Either·returns·the·sanitized·path·name,·or·the·atom·<code·class="inline">unsafe</code>·if·the·path·is·unsafe.
1031 The·path·is·considered·unsafe·in·the·following·circumstances:</p><ul><li>The·path·is·not·relative.</li><li>A·&quot;..&quot;·component·would·climb·up·above·the·root·of·the·relative·path.</li><li>A·symbolic·link·in·the·path·points·above·the·root·of·the·relative·path.</li></ul><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="8354689071-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="8354689071-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·168,·SHA:·a64a44040e3a2c04401eb0bf224a1b328dfb03ebae967f18ceb1402227d13ddd·...·]-2">)</span><span·class="p">.</span><span·class="w">1031 The·path·is·considered·unsafe·in·the·following·circumstances:</p><ul><li>The·path·is·not·relative.</li><li>A·&quot;..&quot;·component·would·climb·up·above·the·root·of·the·relative·path.</li><li>A·symbolic·link·in·the·path·points·above·the·root·of·the·relative·path.</li></ul><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="1793556825-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="1793556825-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·168,·SHA:·def7cf36a10ac11f0f467af61c77f3bea86d3a49df494427ac040d4878616835·...·]-2">)</span><span·class="p">.</span><span·class="w">
1032 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">1032 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="gp·unselectable">
1033 2&gt;·</span><span·class="nc">filelib</span><span·class="p">:</span><span·class="nf">safe_relative_path</span><span·class="p"·data-group-id="8354689071-3">(</span><span·class="s">&quot;dir/sub_dir/..&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="8354689071-3">)</span><span·class="p">.</span><span·class="w">1033 2&gt;·</span><span·class="nc">filelib</span><span·class="p">:</span><span·class="nf">safe_relative_path</span><span·class="p"·data-group-id="1793556825-3">(</span><span·class="s">&quot;dir/sub_dir/..&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="1793556825-3">)</span><span·class="p">.</span><span·class="w">
1034 </span><span·class="s">&quot;dir&quot;</span><span·class="gp·unselectable">1034 </span><span·class="s">&quot;dir&quot;</span><span·class="gp·unselectable">
1035 3&gt;·</span><span·class="nc">filelib</span><span·class="p">:</span><span·class="nf">safe_relative_path</span><span·class="p"·data-group-id="8354689071-4">(</span><span·class="s">&quot;dir/..&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="8354689071-4">)</span><span·class="p">.</span><span·class="w">1035 3&gt;·</span><span·class="nc">filelib</span><span·class="p">:</span><span·class="nf">safe_relative_path</span><span·class="p"·data-group-id="1793556825-4">(</span><span·class="s">&quot;dir/..&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="1793556825-4">)</span><span·class="p">.</span><span·class="w">
1036 </span><span·class="p"·data-group-id="8354689071-5">[</span><span·class="p"·data-group-id="8354689071-5">]</span><span·class="gp·unselectable">1036 </span><span·class="p"·data-group-id="1793556825-5">[</span><span·class="p"·data-group-id="1793556825-5">]</span><span·class="gp·unselectable">
1037 4&gt;·</span><span·class="nc">filelib</span><span·class="p">:</span><span·class="nf">safe_relative_path</span><span·class="p"·data-group-id="8354689071-6">(</span><span·class="s">&quot;dir/../..&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="8354689071-6">)</span><span·class="p">.</span><span·class="w">1037 4&gt;·</span><span·class="nc">filelib</span><span·class="p">:</span><span·class="nf">safe_relative_path</span><span·class="p"·data-group-id="1793556825-6">(</span><span·class="s">&quot;dir/../..&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="1793556825-6">)</span><span·class="p">.</span><span·class="w">
1038 </span><span·class="ss">unsafe</span><span·class="gp·unselectable">1038 </span><span·class="ss">unsafe</span><span·class="gp·unselectable">
1039 5&gt;·</span><span·class="nc">filelib</span><span·class="p">:</span><span·class="nf">safe_relative_path</span><span·class="p"·data-group-id="8354689071-7">(</span><span·class="s">&quot;/abs/path&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="8354689071-7">)</span><span·class="p">.</span><span·class="w">1039 5&gt;·</span><span·class="nc">filelib</span><span·class="p">:</span><span·class="nf">safe_relative_path</span><span·class="p"·data-group-id="1793556825-7">(</span><span·class="s">&quot;/abs/path&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Cwd</span><span·class="p"·data-group-id="1793556825-7">)</span><span·class="p">.</span><span·class="w">
1040 </span><span·class="ss">unsafe</span></code></pre>1040 </span><span·class="ss">unsafe</span></code></pre>
1041 ··</section>1041 ··</section>
1042 </section>1042 </section>
1043 <section·class="detail"·id="wildcard/1">1043 <section·class="detail"·id="wildcard/1">
  
1044 ··<div·class="detail-header">1044 ··<div·class="detail-header">
1045 ····<a·href="#wildcard/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1045 ····<a·href="#wildcard/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1134, 15 lines modifiedOffset 1134, 15 lines modified
1134 ······<p·class="built-using">1134 ······<p·class="built-using">
1135 ········Built·using1135 ········Built·using
1136 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1136 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1137 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1137 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1138 ······</p>1138 ······</p>
1139 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1139 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1140 ····</footer>1140 ····</footer>
1141 ··</div>1141 ··</div>
1142 </main>1142 </main>
1143 </div>1143 </div>
1144 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1144 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1145 <script>1145 <script>
1146 ··document.addEventListener("DOMContentLoaded",·function·()·{1146 ··document.addEventListener("DOMContentLoaded",·function·()·{
808 B
html2text {}
Max HTML report size reached
84.7 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/filename.html
    
Offset 522, 28 lines modifiedOffset 522, 28 lines modified
  
522 ··········<pre·translate="no"><span·class="attribute">-spec</span>·absname(Filename)·->·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename_all/0">file:filename_all</a>()·when·Filename·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:name_all/0">file:name_all</a>().</pre>522 ··········<pre·translate="no"><span·class="attribute">-spec</span>·absname(Filename)·->·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename_all/0">file:filename_all</a>()·when·Filename·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:name_all/0">file:name_all</a>().</pre>
  
523 ······</div>523 ······</div>
  
524 <p>Converts·a·relative·<code·class="inline">Filename</code>·and·returns·an·absolute·name.·No·attempt·is·made524 <p>Converts·a·relative·<code·class="inline">Filename</code>·and·returns·an·absolute·name.·No·attempt·is·made
525 to·create·the·shortest·absolute·name,·as·this·can·give·incorrect·results·on·file525 to·create·the·shortest·absolute·name,·as·this·can·give·incorrect·results·on·file
526 systems·that·allow·links.</p><p><em>Unix·examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">pwd</span><span·class="p"·data-group-id="6573449260-1">(</span><span·class="p"·data-group-id="6573449260-1">)</span><span·class="p">.</span><span·class="w">526 systems·that·allow·links.</p><p><em>Unix·examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">pwd</span><span·class="p"·data-group-id="4821636368-1">(</span><span·class="p"·data-group-id="4821636368-1">)</span><span·class="p">.</span><span·class="w">
527 </span><span·class="s">&quot;/usr/local&quot;</span><span·class="gp·unselectable">527 </span><span·class="s">&quot;/usr/local&quot;</span><span·class="gp·unselectable">
528 2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="6573449260-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="6573449260-2">)</span><span·class="p">.</span><span·class="w">528 2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="4821636368-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="4821636368-2">)</span><span·class="p">.</span><span·class="w">
529 </span><span·class="s">&quot;/usr/local/foo&quot;</span><span·class="gp·unselectable">529 </span><span·class="s">&quot;/usr/local/foo&quot;</span><span·class="gp·unselectable">
530 3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="6573449260-3">(</span><span·class="s">&quot;../x&quot;</span><span·class="p"·data-group-id="6573449260-3">)</span><span·class="p">.</span><span·class="w">530 3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="4821636368-3">(</span><span·class="s">&quot;../x&quot;</span><span·class="p"·data-group-id="4821636368-3">)</span><span·class="p">.</span><span·class="w">
531 </span><span·class="s">&quot;/usr/local/../x&quot;</span><span·class="gp·unselectable">531 </span><span·class="s">&quot;/usr/local/../x&quot;</span><span·class="gp·unselectable">
532 4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="6573449260-4">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="6573449260-4">)</span><span·class="p">.</span><span·class="w">532 4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="4821636368-4">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="4821636368-4">)</span><span·class="p">.</span><span·class="w">
533 </span><span·class="s">&quot;/&quot;</span></code></pre><p><em>Windows·examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">pwd</span><span·class="p"·data-group-id="4401268453-1">(</span><span·class="p"·data-group-id="4401268453-1">)</span><span·class="p">.</span><span·class="w">533 </span><span·class="s">&quot;/&quot;</span></code></pre><p><em>Windows·examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">pwd</span><span·class="p"·data-group-id="7263372690-1">(</span><span·class="p"·data-group-id="7263372690-1">)</span><span·class="p">.</span><span·class="w">
534 </span><span·class="s">&quot;D:/usr/local&quot;</span><span·class="gp·unselectable">534 </span><span·class="s">&quot;D:/usr/local&quot;</span><span·class="gp·unselectable">
535 2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="4401268453-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="4401268453-2">)</span><span·class="p">.</span><span·class="w">535 2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="7263372690-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="7263372690-2">)</span><span·class="p">.</span><span·class="w">
536 </span><span·class="s">&quot;D:/usr/local/foo&quot;</span><span·class="gp·unselectable">536 </span><span·class="s">&quot;D:/usr/local/foo&quot;</span><span·class="gp·unselectable">
537 3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="4401268453-3">(</span><span·class="s">&quot;../x&quot;</span><span·class="p"·data-group-id="4401268453-3">)</span><span·class="p">.</span><span·class="w">537 3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="7263372690-3">(</span><span·class="s">&quot;../x&quot;</span><span·class="p"·data-group-id="7263372690-3">)</span><span·class="p">.</span><span·class="w">
538 </span><span·class="s">&quot;D:/usr/local/../x&quot;</span><span·class="gp·unselectable">538 </span><span·class="s">&quot;D:/usr/local/../x&quot;</span><span·class="gp·unselectable">
539 4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="4401268453-4">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="4401268453-4">)</span><span·class="p">.</span><span·class="w">539 4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">absname</span><span·class="p"·data-group-id="7263372690-4">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="7263372690-4">)</span><span·class="p">.</span><span·class="w">
540 </span><span·class="s">&quot;D:/&quot;</span></code></pre>540 </span><span·class="s">&quot;D:/&quot;</span></code></pre>
541 ··</section>541 ··</section>
542 </section>542 </section>
543 <section·class="detail"·id="absname/2">543 <section·class="detail"·id="absname/2">
  
544 ··<div·class="detail-header">544 ··<div·class="detail-header">
545 ····<a·href="#absname/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">545 ····<a·href="#absname/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 675, 66 lines modifiedOffset 675, 66 lines modified
  
675 ······</div>675 ······</div>
  
676 <p><a·href=""·id="basedir_3_1"></a>·<a·href=""·id="basedir_3_2"></a></p><p>Returns·a·suitable·path,·or·paths,·for·a·given·type.·If·<code·class="inline">os</code>·is·not·set·in676 <p><a·href=""·id="basedir_3_1"></a>·<a·href=""·id="basedir_3_2"></a></p><p>Returns·a·suitable·path,·or·paths,·for·a·given·type.·If·<code·class="inline">os</code>·is·not·set·in
677 <code·class="inline">Opts</code>·the·function·will·default·to·the·native·option,·that·is·<code·class="inline">'linux'</code>,677 <code·class="inline">Opts</code>·the·function·will·default·to·the·native·option,·that·is·<code·class="inline">'linux'</code>,
678 <code·class="inline">'darwin'</code>·or·<code·class="inline">'windows'</code>,·as·understood·by·<a·href="../../../../lib/kernel-10.0.1/doc/html/os.html#type/0"><code·class="inline">os:type/0</code></a>.·Anything·not·recognized678 <code·class="inline">'darwin'</code>·or·<code·class="inline">'windows'</code>,·as·understood·by·<a·href="../../../../lib/kernel-10.0.1/doc/html/os.html#type/0"><code·class="inline">os:type/0</code></a>.·Anything·not·recognized
679 as·<code·class="inline">'darwin'</code>·or·<code·class="inline">'windows'</code>·is·interpreted·as·<code·class="inline">'linux'</code>.</p><p>The·options·<code·class="inline">'author'</code>·and·<code·class="inline">'version'</code>·are·only·used·with·<code·class="inline">'windows'</code>·option679 as·<code·class="inline">'darwin'</code>·or·<code·class="inline">'windows'</code>·is·interpreted·as·<code·class="inline">'linux'</code>.</p><p>The·options·<code·class="inline">'author'</code>·and·<code·class="inline">'version'</code>·are·only·used·with·<code·class="inline">'windows'</code>·option
680 mode.</p><ul><li><p><code·class="inline"·id="user_cache">user_cache</code></p><p>The·path·location·is·intended·for·transient·data·files·on·a·local·machine.</p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_CACHE_HOME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="1429960220-1">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1429960220-2">#{</span><[·...·truncated·by·diffoscope;·len:·176,·SHA:·ffba86db1f4c5c31b4988ee15dcad38684e2351f2f7f13aaca286e5588d399ac·...·]-1">)</span><span·class="p">.</span><span·class="w">680 mode.</p><ul><li><p><code·class="inline"·id="user_cache">user_cache</code></p><p>The·path·location·is·intended·for·transient·data·files·on·a·local·machine.</p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_CACHE_HOME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="7561558953-1">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7561558953-2">#{</span><[·...·truncated·by·diffoscope;·len:·176,·SHA:·0fec9611401bc54906d49d18cbca41ca3699f19f8092f01900aa839006696c0a·...·]-1">)</span><span·class="p">.</span><span·class="w">
681 </span><span·class="s">&quot;/home/otptest/.cache/my_application&quot;</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="3051224405-1">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3051224405-2">#{</span><[·...·truncated·by·diffoscope;·len:·177,·SHA:·94f2a4fe042ae75a7a32398464a1295b5d1ab86dec9b01845d620221372f7625·...·]-1">)</span><span·class="p">.</span><span·class="w">681 </span><span·class="s">&quot;/home/otptest/.cache/my_application&quot;</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="2036626300-1">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2036626300-2">#{</span><[·...·truncated·by·diffoscope;·len:·177,·SHA:·2d825608c9137d14edcf6886682bcd427da4229d50913dda1e766681795e33f9·...·]-1">)</span><span·class="p">.</span><span·class="w">
682 </span><span·class="s">&quot;/home/otptest/Library/Caches/my_application&quot;</span></code></pre><p>On·Windows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="2592668438-1">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="2592668438-1">)</span><span·class="p">.</span><span·class="w">682 </span><span·class="s">&quot;/home/otptest/Library/Caches/my_application&quot;</span></code></pre><p>On·Windows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="8115072750-1">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="8115072750-1">)</span><span·class="p">.</span><span·class="w">
683 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App/Cache&quot;</span><span·class="gp·unselectable">683 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App/Cache&quot;</span><span·class="gp·unselectable">
684 2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="2592668438-2">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="2592668438-2">)</span><span·class="p">.</span><span·class="w">684 2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="8115072750-2">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="8115072750-2">)</span><span·class="p">.</span><span·class="w">
685 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App/Cache&quot;</span><span·class="gp·unselectable">685 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App/Cache&quot;</span><span·class="gp·unselectable">
686 3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="2592668438-3">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2592668438-4">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·184,·SHA:·86db6f3b3837dd40a96b5a502fd5e012df53f26c82215aa0d51b83ee3995ff10·...·]-3">)</span><span·class="p">.</span><span·class="w">686 3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="8115072750-3">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8115072750-4">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·184,·SHA:·2968c1b3f32cb8e2d18d9d7777d70abd8ace5fc85b77c1eb217d1e392af0a745·...·]-3">)</span><span·class="p">.</span><span·class="w">
687 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/Erlang/My·App/Cache&quot;</span><span·class="gp·unselectable">687 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/Erlang/My·App/Cache&quot;</span><span·class="gp·unselectable">
688 4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="2592668438-5">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2592668438-6">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·182,·SHA:·512e46ed305637a5b3d9936c58de895c900facd9f02c076ce1e84b3d3bc02ecc·...·]-5">)</span><span·class="p">.</span><span·class="w">688 4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="8115072750-5">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8115072750-6">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·182,·SHA:·2acdf62d54bc3dba138b5212d97cafbd7a63b1772ea00309e399746766d63da1·...·]-5">)</span><span·class="p">.</span><span·class="w">
689 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App/1.2/Cache&quot;</span><span·class="gp·unselectable">689 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App/1.2/Cache&quot;</span><span·class="gp·unselectable">
690 5&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="2592668438-7">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2592668438-8">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·305,·SHA:·538f4b468ac912590b5ec1883e57649f59ad87c71104f6d19c9be876affdc787·...·]-7">)</span><span·class="p">.</span><span·class="w">690 5&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="8115072750-7">(</span><span·class="ss">user_cache</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8115072750-8">#{</span><span·cla[·...·truncated·by·diffoscope;·len:·305,·SHA:·704c571a641f66d6723b07a47221e14885d83869530b882e132f14c6e2692265·...·]-7">)</span><span·class="p">.</span><span·class="w">
691 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/Erlang/My·App/1.2/Cache&quot;</span></code></pre></li><li><p><code·class="inline"·id="user_config">user_config</code></p><p>The·path·location·is·intended·for·persistent·configuration·files.</p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_CONFIG_HOME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="1863200064-1">(</span><span·class="ss">user_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1863200064-2">#{</span>[·...·truncated·by·diffoscope;·len:·175,·SHA:·482f70865bf515419e62ee1cdbc5736e424e60a721e84997dc9125d58a2ea749·...·]64-1">)</span><span·class="p">.</span><span·class="w">691 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/Erlang/My·App/1.2/Cache&quot;</span></code></pre></li><li><p><code·class="inline"·id="user_config">user_config</code></p><p>The·path·location·is·intended·for·persistent·configuration·files.</p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_CONFIG_HOME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="8101624964-1">(</span><span·class="ss">user_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8101624964-2">#{</span>[·...·truncated·by·diffoscope;·len:·175,·SHA:·4de90d78d1768d3fe5c198bc0b833c545a6cf418dcc86b85942fee48bd8485fd·...·]64-1">)</span><span·class="p">.</span><span·class="w">
692 </span><span·class="s">&quot;/home/otptest/.config/my_application&quot;</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="6606959436-1">(</span><span·class="ss">user_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6606959436-2">#{</span>[·...·truncated·by·diffoscope;·len:·178,·SHA:·75163cf31a5e0bc58766c070d29cbd52c759218fd0b809b51b13056c22d37e1b·...·]-1">)</span><span·class="p">.</span><span·class="w">692 </span><span·class="s">&quot;/home/otptest/.config/my_application&quot;</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="0004136023-1">(</span><span·class="ss">user_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0004136023-2">#{</span>[·...·truncated·by·diffoscope;·len:·178,·SHA:·da021f1c2acc506f38bc837183f30a501ac6962d509d9a33ea69f4e8ce995b43·...·]-1">)</span><span·class="p">.</span><span·class="w">
693 </span><span·class="s">&quot;/home/otptest/Library/Application·Support/my_application&quot;</span></code></pre><p>On·Windows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="3448250574-1">(</span><span·class="ss">user_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="3448250574-1">)</span><span·class="p">.</span><span·class="w">693 </span><span·class="s">&quot;/home/otptest/Library/Application·Support/my_application&quot;</span></code></pre><p>On·Windows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="4194756302-1">(</span><span·class="ss">user_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="4194756302-1">)</span><span·class="p">.</span><span·class="w">
694 </span><span·class="s">&quot;c:/Users/otptest/AppData/Roaming/My·App&quot;</span><span·class="gp·unselectable">694 </span><span·class="s">&quot;c:/Users/otptest/AppData/Roaming/My·App&quot;</span><span·class="gp·unselectable">
695 2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="3448250574-2">(</span><span·class="ss">user_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3448250574-3">#{</span><span·cl[·...·truncated·by·diffoscope;·len:·330,·SHA:·cff49c4f1768344453339b99e35e188c0301e5c0477cb1545f77bd879328818d·...·]-2">)</span><span·class="p">.</span><span·class="w">695 2&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="4194756302-2">(</span><span·class="ss">user_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4194756302-3">#{</span><span·cl[·...·truncated·by·diffoscope;·len:·330,·SHA:·d03a78f07b932e721cdabb4e6c2e3ad35693d99402f05974937c4aa9b5e5fd88·...·]-2">)</span><span·class="p">.</span><span·class="w">
696 </span><span·class="s">&quot;c:/Users/otptest/AppData/Roaming/Erlang/My·App/1.2&quot;</span></code></pre></li><li><p><code·class="inline"·id="user_data">user_data</code></p><p>The·path·location·is·intended·for·persistent·data·files.</p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_DATA_HOME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="5697874588-1">(</span><span·class="ss">user_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5697874588-2">#{</span><s[·...·truncated·by·diffoscope;·len:·175,·SHA:·bf7422ec453600171688579ec1ee9f88d971c69b368b2ba404777e5900f7feb8·...·]-1">)</span><span·class="p">.</span><span·class="w">696 </span><span·class="s">&quot;c:/Users/otptest/AppData/Roaming/Erlang/My·App/1.2&quot;</span></code></pre></li><li><p><code·class="inline"·id="user_data">user_data</code></p><p>The·path·location·is·intended·for·persistent·data·files.</p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_DATA_HOME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="1190673245-1">(</span><span·class="ss">user_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1190673245-2">#{</span><s[·...·truncated·by·diffoscope;·len:·175,·SHA:·5eee64affcf20d13106e34a3244e39cec1e24af7efc2a51834ad5bb4a7a2d02c·...·]-1">)</span><span·class="p">.</span><span·class="w">
697 </span><span·class="s">&quot;/home/otptest/.local/my_application&quot;</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="3442055910-1">(</span><span·class="ss">user_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3442055910-2">#{</span><s[·...·truncated·by·diffoscope;·len:·176,·SHA:·5fccf06727f28b130e354adf49b6339535200505dfc74f054e88f5fce54e1dad·...·]-1">)</span><span·class="p">.</span><span·class="w">697 </span><span·class="s">&quot;/home/otptest/.local/my_application&quot;</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="2888373064-1">(</span><span·class="ss">user_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2888373064-2">#{</span><s[·...·truncated·by·diffoscope;·len:·176,·SHA:·a664000d07977e1f82551c2f934c211230357a4fa3c1e6e9a8d4bb0fc4406665·...·]-1">)</span><span·class="p">.</span><span·class="w">
698 </span><span·class="s">&quot;/home/otptest/Library/Application·Support/my_application&quot;</span></code></pre><p>On·Windows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">8&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="1623642121-1">(</span><span·class="ss">user_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="1623642121-1">)</span><span·class="p">.</span><span·class="w">698 </span><span·class="s">&quot;/home/otptest/Library/Application·Support/my_application&quot;</span></code></pre><p>On·Windows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">8&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="9783467360-1">(</span><span·class="ss">user_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="9783467360-1">)</span><span·class="p">.</span><span·class="w">
699 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App&quot;</span><span·class="gp·unselectable">699 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App&quot;</span><span·class="gp·unselectable">
700 9&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="1623642121-2">(</span><span·class="ss">user_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1623642121-3">#{</span><span·class="ss">author</span><spa[·...·truncated·by·diffoscope;·len:·280,·SHA:·a26c9a29fb157faefe959d02d5f92a4eb7d342145b7015211205a0cb7e0edb73·...·]-2">)</span><span·class="p">.</span><span·class="w">700 9&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="9783467360-2">(</span><span·class="ss">user_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="9783467360-3">#{</span><span·class="ss">author</span><spa[·...·truncated·by·diffoscope;·len:·280,·SHA:·4afcdfaf3baacb6127836dbb71f958ec5823dd8ce669cf629d32bd318bdb764f·...·]-2">)</span><span·class="p">.</span><span·class="w">
701 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/Erlang/My·App/1.2&quot;</span></code></pre></li><li><p><code·class="inline"·id="user_log">user_log</code></p><p>The·path·location·is·intended·for·transient·log·files·on·a·local·machine.</p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_CACHE_HOME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="3023683089-1">(</span><span·class="ss">user_log</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3023683089-2">#{</span><sp[·...·truncated·by·diffoscope;·len:·173,·SHA:·c8c78c61ee3b7ee85408ba5da13c52219f30901286b80cb9adc2ba8141b0c439·...·]9-1">)</span><span·class="p">.</span><span·class="w">701 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/Erlang/My·App/1.2&quot;</span></code></pre></li><li><p><code·class="inline"·id="user_log">user_log</code></p><p>The·path·location·is·intended·for·transient·log·files·on·a·local·machine.</p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_CACHE_HOME</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="7652503799-1">(</span><span·class="ss">user_log</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7652503799-2">#{</span><sp[·...·truncated·by·diffoscope;·len:·173,·SHA:·012bdab06eb5056172ac88873d55ff5ff28cca71255d05cb86ec3c7efdbdbb4c·...·]9-1">)</span><span·class="p">.</span><span·class="w">
702 </span><span·class="s">&quot;/home/otptest/.cache/my_application/log&quot;</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="6816392933-1">(</span><span·class="ss">user_log</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6816392933-2">#{</span><sp[·...·truncated·by·diffoscope;·len:·175,·SHA:·831693fb5fd017da50cf6b0214ceb3589cbb296783059435491089a990a16773·...·]-1">)</span><span·class="p">.</span><span·class="w">702 </span><span·class="s">&quot;/home/otptest/.cache/my_application/log&quot;</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="4069989781-1">(</span><span·class="ss">user_log</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4069989781-2">#{</span><sp[·...·truncated·by·diffoscope;·len:·175,·SHA:·cfb44b18b37bcb807806aac10b4fc0e393fbee84e83f564ccbf664fbc0d54be2·...·]-1">)</span><span·class="p">.</span><span·class="w">
703 </span><span·class="s">&quot;/home/otptest/Library/Logs/my_application&quot;</span></code></pre><p>On·Windows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">12&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="2763782948-1">(</span><span·class="ss">user_log</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="2763782948-1">)</span><span·class="p">.</span><span·class="w">703 </span><span·class="s">&quot;/home/otptest/Library/Logs/my_application&quot;</span></code></pre><p>On·Windows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">12&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="8427086302-1">(</span><span·class="ss">user_log</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p"·data-group-id="8427086302-1">)</span><span·class="p">.</span><span·class="w">
704 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App/Logs&quot;</span><span·class="gp·unselectable">704 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/My·App/Logs&quot;</span><span·class="gp·unselectable">
705 13&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="2763782948-2">(</span><span·class="ss">user_log</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="2763782948-3">#{</span><span·class="ss">author</span><span[·...·truncated·by·diffoscope;·len:·279,·SHA:·3faeb5235f07fb7ac316c36fae66f4220e21faf0dd4ff3ae6e425c441d9b6272·...·]-2">)</span><span·class="p">.</span><span·class="w">705 13&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="8427086302-2">(</span><span·class="ss">user_log</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;My·App&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="8427086302-3">#{</span><span·class="ss">author</span><span[·...·truncated·by·diffoscope;·len:·279,·SHA:·8a02cb2d75a19a597f6c6690236d20365bf118015040a1c5b1360fbea347d5f6·...·]-2">)</span><span·class="p">.</span><span·class="w">
706 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/Erlang/My·App/1.2/Logs&quot;</span></code></pre></li><li><p><code·class="inline"·id="site_config">site_config</code></p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_CONFIG_DIRS</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="7014598493-1">(</span><span·class="ss">site_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7014598493-2">#{</span>[·...·truncated·by·diffoscope;·len:·176,·SHA:·e507cc9bacb8c026e1c957a70eb3dedf8142d6ec7063139e58e4f38727900553·...·]3-1">)</span><span·class="p">.</span><span·class="w">706 </span><span·class="s">&quot;c:/Users/otptest/AppData/Local/Erlang/My·App/1.2/Logs&quot;</span></code></pre></li><li><p><code·class="inline"·id="site_config">site_config</code></p><p>On·Linux:·Respects·the·os·environment·variable·<code·class="inline">XDG_CONFIG_DIRS</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="3901972483-1">(</span><span·class="ss">site_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3901972483-2">#{</span>[·...·truncated·by·diffoscope;·len:·176,·SHA:·48d17da81a0821026374f959971a1f2423fcd69707c3be2be8653c272b9f5ecf·...·]3-1">)</span><span·class="p">.</span><span·class="w">
707 </span><span·class="p"·data-group-id="7014598493-3">[</span><span·class="s">&quot;/usr/local/share/my_application&quot;</span><span·class="p">,</span><span·class="w">707 </span><span·class="p"·data-group-id="3901972483-3">[</span><span·class="s">&quot;/usr/local/share/my_application&quot;</span><span·class="p">,</span><span·class="w">
708 ·</span><span·class="s">&quot;/usr/share/my_application&quot;</span><span·class="p"·data-group-id="7014598493-3">]</span><span·class="gp·unselectable">708 ·</span><span·class="s">&quot;/usr/share/my_application&quot;</span><span·class="p"·data-group-id="3901972483-3">]</span><span·class="gp·unselectable">
709 6&gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">getenv</span><span·class="p"·data-group-id="7014598493-4">(</span><span·class="s">&quot;XDG_CONFIG_DIRS&quot;</span><span·class="p"·data-group-id="7014598493-4">)</span><span·class="p">.</span><span·class="w">709 6&gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">getenv</span><span·class="p"·data-group-id="3901972483-4">(</span><span·class="s">&quot;XDG_CONFIG_DIRS&quot;</span><span·class="p"·data-group-id="3901972483-4">)</span><span·class="p">.</span><span·class="w">
710 </span><span·class="s">&quot;/etc/xdg/xdg-ubuntu:/usr/share/upstart/xdg:/etc/xdg&quot;</span><span·class="gp·unselectable">710 </span><span·class="s">&quot;/etc/xdg/xdg-ubuntu:/usr/share/upstart/xdg:/etc/xdg&quot;</span><span·class="gp·unselectable">
711 7&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="7014598493-5">(</span><span·class="ss">site_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7014598493-6">#{</span>[·...·truncated·by·diffoscope;·len:·176,·SHA:·4bcd3f8fdc64b9b3a4ae339f8087349fa8577dac30055667071d0326392e1748·...·]3-5">)</span><span·class="p">.</span><span·class="w">711 7&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="3901972483-5">(</span><span·class="ss">site_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3901972483-6">#{</span>[·...·truncated·by·diffoscope;·len:·176,·SHA:·d3a672782419584b92b7b316ea48a2f954a40fb78b6f25543bece34b0df89de8·...·]3-5">)</span><span·class="p">.</span><span·class="w">
712 </span><span·class="p"·data-group-id="7014598493-7">[</span><span·class="s">&quot;/etc/xdg/xdg-ubuntu/my_application&quot;</span><span·class="p">,</span><span·class="w">712 </span><span·class="p"·data-group-id="3901972483-7">[</span><span·class="s">&quot;/etc/xdg/xdg-ubuntu/my_application&quot;</span><span·class="p">,</span><span·class="w">
713 ·</span><span·class="s">&quot;/usr/share/upstart/xdg/my_application&quot;</span><span·class="p">,</span><span·class="w">713 ·</span><span·class="s">&quot;/usr/share/upstart/xdg/my_application&quot;</span><span·class="p">,</span><span·class="w">
714 ·</span><span·class="s">&quot;/etc/xdg/my_application&quot;</span><span·class="p"·data-group-id="7014598493-7">]</span><span·class="gp·unselectable">714 ·</span><span·class="s">&quot;/etc/xdg/my_application&quot;</span><span·class="p"·data-group-id="3901972483-7">]</span><span·class="gp·unselectable">
715 8&gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">unsetenv</span><span·class="p"·data-group-id="7014598493-8">(</span><span·class="s">&quot;XDG_CONFIG_DIRS&quot;</span><span·class="p"·data-group-id="7014598493-8">)</span><span·class="p">.</span><span·class="w">715 8&gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">unsetenv</span><span·class="p"·data-group-id="3901972483-8">(</span><span·class="s">&quot;XDG_CONFIG_DIRS&quot;</span><span·class="p"·data-group-id="3901972483-8">)</span><span·class="p">.</span><span·class="w">
716 </span><span·class="ss">true</span><span·class="gp·unselectable">716 </span><span·class="ss">true</span><span·class="gp·unselectable">
717 9&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="7014598493-9">(</span><span·class="ss">site_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7014598493-10">#{</span[·...·truncated·by·diffoscope;·len:·178,·SHA:·1c277f1dcfc64e85be3b4a942db546062c9901f8549dbf63e902b048ed1a6f8d·...·]3-9">)</span><span·class="p">.</span><span·class="w">717 9&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="3901972483-9">(</span><span·class="ss">site_config</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3901972483-10">#{</span[·...·truncated·by·diffoscope;·len:·178,·SHA:·6f1e7eebfc57623d8ea9879ddeb19e2013255b2e950c62e209443d00242901a5·...·]3-9">)</span><span·class="p">.</span><span·class="w">
718 </span><span·class="p"·data-group-id="7014598493-11">[</span><span·class="s">&quot;/etc/xdg/my_application&quot;</span><span·class="p"·data-group-id="7014598493-11">]</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span>[·...·truncated·by·diffoscope;·len:·552,·SHA:·71024d7042a27915084e89d2d3483e6a4e16f6009b16dca1105dd3f023a66c7e·...·]-1">)</span><span·class="p">.</span><span·class="w">718 </span><span·class="p"·data-group-id="3901972483-11">[</span><span·class="s">&quot;/etc/xdg/my_application&quot;</span><span·class="p"·data-group-id="3901972483-11">]</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span>[·...·truncated·by·diffoscope;·len:·552,·SHA:·5ad2aad3ea17e04f99acbe7acca00d698436d05e6ce8fbb85004a2ace7c69a69·...·]-1">)</span><span·class="p">.</span><span·class="w">
719 </span><span·class="p"·data-group-id="4199526127-3">[</span><span·class="s">&quot;/Library/Application·Support/my_application&quot;</span><span·class="p"·data-group-id="4199526127-3">]</span></code></pre></li><li><p><code·class="inline"·id="site_data">site_data</code></p><p>On·Linux:·Respects·[·...·truncated·by·diffoscope;·len:·388,·SHA:·16b9bb19d2146b77be4878498d94b679390cfedcfe59269d8be810d7b5894585·...·]-1">)</span><span·class="p">.</span><span·class="w">719 </span><span·class="p"·data-group-id="8390792293-3">[</span><span·class="s">&quot;/Library/Application·Support/my_application&quot;</span><span·class="p"·data-group-id="8390792293-3">]</span></code></pre></li><li><p><code·class="inline"·id="site_data">site_data</code></p><p>On·Linux:·Respects·[·...·truncated·by·diffoscope;·len:·388,·SHA:·b862b8ca9f85ae08d5a80273ab2563cb1aaefde27f50ee87b55f4e752a304e80·...·]-1">)</span><span·class="p">.</span><span·class="w">
720 </span><span·class="s">&quot;/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/&quot;</span><span·class="gp·unselectable">720 </span><span·class="s">&quot;/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/&quot;</span><span·class="gp·unselectable">
721 11&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="5400958494-2">(</span><span·class="ss">site_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5400958494-3">#{</span><s[·...·truncated·by·diffoscope;·len:·175,·SHA:·e2783a79af43365a53f63b6da4696ff09a1e434e907a933e667d80b4c6b50ea1·...·]-2">)</span><span·class="p">.</span><span·class="w">721 11&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="1820943396-2">(</span><span·class="ss">site_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1820943396-3">#{</span><s[·...·truncated·by·diffoscope;·len:·175,·SHA:·35763ada782fb25fd4cb0ed05fe5b1fb567ddfb50072ce50e42164a0185e192b·...·]-2">)</span><span·class="p">.</span><span·class="w">
722 </span><span·class="p"·data-group-id="5400958494-4">[</span><span·class="s">&quot;/usr/share/ubuntu/my_application&quot;</span><span·class="p">,</span><span·class="w">722 </span><span·class="p"·data-group-id="1820943396-4">[</span><span·class="s">&quot;/usr/share/ubuntu/my_application&quot;</span><span·class="p">,</span><span·class="w">
723 ·</span><span·class="s">&quot;/usr/share/gnome/my_application&quot;</span><span·class="p">,</span><span·class="w">723 ·</span><span·class="s">&quot;/usr/share/gnome/my_application&quot;</span><span·class="p">,</span><span·class="w">
724 ·</span><span·class="s">&quot;/usr/local/share/my_application&quot;</span><span·class="p">,</span><span·class="w">724 ·</span><span·class="s">&quot;/usr/local/share/my_application&quot;</span><span·class="p">,</span><span·class="w">
725 ·</span><span·class="s">&quot;/usr/share/my_application&quot;</span><span·class="p"·data-group-id="5400958494-4">]</span><span·class="gp·unselectable">725 ·</span><span·class="s">&quot;/usr/share/my_application&quot;</span><span·class="p"·data-group-id="1820943396-4">]</span><span·class="gp·unselectable">
726 12&gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">unsetenv</span><span·class="p"·data-group-id="5400958494-5">(</span><span·class="s">&quot;XDG_DATA_DIRS&quot;</span><span·class="p"·data-group-id="5400958494-5">)</span><span·class="p">.</span><span·class="w">726 12&gt;·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">unsetenv</span><span·class="p"·data-group-id="1820943396-5">(</span><span·class="s">&quot;XDG_DATA_DIRS&quot;</span><span·class="p"·data-group-id="1820943396-5">)</span><span·class="p">.</span><span·class="w">
727 </span><span·class="ss">true</span><span·class="gp·unselectable">727 </span><span·class="ss">true</span><span·class="gp·unselectable">
728 13&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="5400958494-6">(</span><span·class="ss">site_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5400958494-7">#{</span><s[·...·truncated·by·diffoscope;·len:·175,·SHA:·79869ddf5c7bec5f08e69725a4376cd967d414c733ce9ffa319e20ccdc270451·...·]-6">)</span><span·class="p">.</span><span·class="w">728 13&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group-id="1820943396-6">(</span><span·class="ss">site_data</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;my_application&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1820943396-7">#{</span><s[·...·truncated·by·diffoscope;·len:·175,·SHA:·009a2be7ddee6a6752f532130505f9921cb1614d8bb85031a2d81be737bccbd6·...·]-6">)</span><span·class="p">.</span><span·class="w">
729 </span><span·class="p"·data-group-id="5400958494-8">[</span><span·class="s">&quot;/usr/local/share/my_application&quot;</span><span·class="p">,</span><span·class="w">729 </span><span·class="p"·data-group-id="1820943396-8">[</span><span·class="s">&quot;/usr/local/share/my_application&quot;</span><span·class="p">,</span><span·class="w">
730 ·</span><span·class="s">&quot;/usr/share/my_application&quot;</span><span·class="p"·data-group-id="5400958494-8">]</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·435,·SHA:·aaf30611d5ad6b756b8c6d24b39fd8f6884f7d4b627e529de19d77b807ab7294·...·]92-1">)</span><span·class="p">.</span><span·class="w">730 ·</span><span·class="s">&quot;/usr/share/my_application&quot;</span><span·class="p"·data-group-id="1820943396-8">]</span></code></pre><p>On·Darwin:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basedir</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·435,·SHA:·b8af6a904e5bf9e585f786519ee7de086aaa489de76078111b309a33a00ea17e·...·]92-1">)</span><span·class="p">.</span><span·class="w">
731 </span><span·class="p"·data-group-id="9005639292-3">[</span><span·class="s">&quot;/Library/Application·Support/my_application&quot;</span><span·class="p"·data-group-id="9005639292-3">]</span></code></pre></li></ul>731 </span><span·class="p"·data-group-id="5403013192-3">[</span><span·class="s">&quot;/Library/Application·Support/my_application&quot;</span><span·class="p"·data-group-id="5403013192-3">]</span></code></pre></li></ul>
732 ··</section>732 ··</section>
733 </section>733 </section>
734 <section·class="detail"·id="basename/1">734 <section·class="detail"·id="basename/1">
  
735 ··<div·class="detail-header">735 ··<div·class="detail-header">
736 ····<a·href="#basename/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">736 ····<a·href="#basename/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
737 ······<i·class="ri-link-m"·aria-hidden="true"></i>737 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 755, 20 lines modifiedOffset 755, 20 lines modified
755 ······<div·class="specs">755 ······<div·class="specs">
  
756 ··········<pre·translate="no"><span·class="attribute">-spec</span>·basename(Filename)·->·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename_all/0">file:filename_all</a>()·when·Filename·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:name_all/0">file:name_all</a>().</pre>756 ··········<pre·translate="no"><span·class="attribute">-spec</span>·basename(Filename)·->·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename_all/0">file:filename_all</a>()·when·Filename·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:name_all/0">file:name_all</a>().</pre>
  
757 ······</div>757 ······</div>
  
758 <p>Returns·the·last·component·of·<code·class="inline">Filename</code>,·or·<code·class="inline">Filename</code>·itself·if·it·does·not758 <p>Returns·the·last·component·of·<code·class="inline">Filename</code>,·or·<code·class="inline">Filename</code>·itself·if·it·does·not
759 contain·any·directory·separators.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="2802042785-1">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="2802042785-1">)</span><span·class="p">.</span><span·class="w">759 contain·any·directory·separators.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="3135226308-1">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="3135226308-1">)</span><span·class="p">.</span><span·class="w">
760 </span><span·class="s">&quot;foo&quot;</span><span·class="gp·unselectable">760 </span><span·class="s">&quot;foo&quot;</span><span·class="gp·unselectable">
761 6&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="2802042785-2">(</span><span·class="s">&quot;/usr/foo&quot;</span><span·class="p"·data-group-id="2802042785-2">)</span><span·class="p">.</span><span·class="w">761 6&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="3135226308-2">(</span><span·class="s">&quot;/usr/foo&quot;</span><span·class="p"·data-group-id="3135226308-2">)</span><span·class="p">.</span><span·class="w">
762 </span><span·class="s">&quot;foo&quot;</span><span·class="gp·unselectable">762 </span><span·class="s">&quot;foo&quot;</span><span·class="gp·unselectable">
763 7&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="2802042785-3">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="2802042785-3">)</span><span·class="p">.</span><span·class="w">763 7&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="3135226308-3">(</span><span·class="s">&quot;/&quot;</span><span·class="p"·data-group-id="3135226308-3">)</span><span·class="p">.</span><span·class="w">
764 </span><span·class="p"·data-group-id="2802042785-4">[</span><span·class="p"·data-group-id="2802042785-4">]</span></code></pre>764 </span><span·class="p"·data-group-id="3135226308-4">[</span><span·class="p"·data-group-id="3135226308-4">]</span></code></pre>
765 ··</section>765 ··</section>
766 </section>766 </section>
767 <section·class="detail"·id="basename/2">767 <section·class="detail"·id="basename/2">
  
768 ··<div·class="detail-header">768 ··<div·class="detail-header">
769 ····<a·href="#basename/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">769 ····<a·href="#basename/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
770 ······<i·class="ri-link-m"·aria-hidden="true"></i>770 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 791, 23 lines modifiedOffset 791, 23 lines modified
791 ··········<pre·translate="no"><span·class="attribute">-spec</span>·basename(Filename,·Ext)·->·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename_all/0">file:filename_all</a>()791 ··········<pre·translate="no"><span·class="attribute">-spec</span>·basename(Filename,·Ext)·->·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:filename_all/0">file:filename_all</a>()
792 ··················when·Filename·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:name_all/0">file:name_all</a>(),·Ext·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:name_all/0">file:name_all</a>().</pre>792 ··················when·Filename·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:name_all/0">file:name_all</a>(),·Ext·::·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#t:name_all/0">file:name_all</a>().</pre>
  
793 ······</div>793 ······</div>
  
794 <p>Returns·the·last·component·of·<code·class="inline">Filename</code>·with·extension·<code·class="inline">Ext</code>·stripped.</p><p>This·function·is·to·be·used·to·remove·a·(possible)·specific·extension.794 <p>Returns·the·last·component·of·<code·class="inline">Filename</code>·with·extension·<code·class="inline">Ext</code>·stripped.</p><p>This·function·is·to·be·used·to·remove·a·(possible)·specific·extension.
795 To·remove·an·existing·extension·when·you·are·unsure·which·one·it·is,·use795 To·remove·an·existing·extension·when·you·are·unsure·which·one·it·is,·use
796 <a·href="#rootname/1"><code·class="inline">rootname(basename(Filename))</code></a>.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">8&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="4041854990-1">(</span><span·class="s">&quot;~/src/kalle.erl&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.erl&quot;</span><span·class="p"·data-group-id="4041854990-1">)</span><span·class="p">.</span><span·class="w">796 <a·href="#rootname/1"><code·class="inline">rootname(basename(Filename))</code></a>.</p><p><em>Examples:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">8&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="5256571850-1">(</span><span·class="s">&quot;~/src/kalle.erl&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.erl&quot;</span><span·class="p"·data-group-id="5256571850-1">)</span><span·class="p">.</span><span·class="w">
797 </span><span·class="s">&quot;kalle&quot;</span><span·class="gp·unselectable">797 </span><span·class="s">&quot;kalle&quot;</span><span·class="gp·unselectable">
798 9&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="4041854990-2">(</span><span·class="s">&quot;~/src/kalle.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.erl&quot;</span><span·class="p"·data-group-id="4041854990-2">)</span><span·class="p">.</span><span·class="w">798 9&gt;·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">basename</span><span·class="p"·data-group-id="5256571850-2">(</span><span·class="s">&quot;~/src/kalle.beam&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.erl&quot;</span><span·class="p"·data-group-id="5256571850-2">)</span><span·class="p">.</span><span·class="w">
Max diff block lines reached; 26702/86093 bytes (31.02%) of diff not shown.
511 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/gb_sets.html
    
Offset 2072, 15 lines modifiedOffset 2072, 15 lines modified
2072 ······<p·class="built-using">2072 ······<p·class="built-using">
2073 ········Built·using2073 ········Built·using
2074 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2074 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2075 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2075 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2076 ······</p>2076 ······</p>
2077 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2077 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2078 ····</footer>2078 ····</footer>
2079 ··</div>2079 ··</div>
2080 </main>2080 </main>
2081 </div>2081 </div>
2082 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2082 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2083 <script>2083 <script>
2084 ··document.addEventListener("DOMContentLoaded",·function·()·{2084 ··document.addEventListener("DOMContentLoaded",·function·()·{
665 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/gb_trees.html
    
Offset 1605, 15 lines modifiedOffset 1605, 15 lines modified
1605 ······<p·class="built-using">1605 ······<p·class="built-using">
1606 ········Built·using1606 ········Built·using
1607 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1607 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1608 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1608 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1609 ······</p>1609 ······</p>
1610 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1610 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1611 ····</footer>1611 ····</footer>
1612 ··</div>1612 ··</div>
1613 </main>1613 </main>
1614 </div>1614 </div>
1615 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1615 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1616 <script>1616 <script>
1617 ··document.addEventListener("DOMContentLoaded",·function·()·{1617 ··document.addEventListener("DOMContentLoaded",·function·()·{
679 B
html2text {}
Max HTML report size reached
8.21 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/gen_event.html
    
Offset 1350, 23 lines modifiedOffset 1350, 23 lines modified
  
1350 <p>This·function·is·called·by·a·<code·class="inline">gen_event</code>·process·in·in·order·to·format/limit·the1350 <p>This·function·is·called·by·a·<code·class="inline">gen_event</code>·process·in·in·order·to·format/limit·the
1351 server·state·for·debugging·and·logging·purposes.</p><p>It·is·called·in·the·following·situations:</p><ul><li>One·of·<a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·is·invoked·to·get·the1351 server·state·for·debugging·and·logging·purposes.</p><p>It·is·called·in·the·following·situations:</p><ul><li>One·of·<a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·is·invoked·to·get·the
1352 <code·class="inline">gen_event</code>·status.</li><li>The·event·handler·terminates·abnormally·and·<code·class="inline">gen_event</code>·logs·an·error.</li></ul><p>This·callback·is·used·to·limit·the·status·of·the·event·handler·returned·by1352 <code·class="inline">gen_event</code>·status.</li><li>The·event·handler·terminates·abnormally·and·<code·class="inline">gen_event</code>·logs·an·error.</li></ul><p>This·callback·is·used·to·limit·the·status·of·the·event·handler·returned·by
1353 <a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·or·sent·to·<a·href="../../../../lib/kernel-10.0.1/doc/html/logger.html"><code·class="inline">logger</code></a>.</p><p>The·callback·gets·a·map·<code·class="inline">Status</code>·describing·the·current·status·and·shall·return1353 <a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·or·sent·to·<a·href="../../../../lib/kernel-10.0.1/doc/html/logger.html"><code·class="inline">logger</code></a>.</p><p>The·callback·gets·a·map·<code·class="inline">Status</code>·describing·the·current·status·and·shall·return
1354 a·map·<code·class="inline">NewStatus</code>·with·the·same·keys,·but·it·may·transform·some·values.</p><p>Two·possible·use·cases·for·this·callback·is·to·remove·sensitive·information·from1354 a·map·<code·class="inline">NewStatus</code>·with·the·same·keys,·but·it·may·transform·some·values.</p><p>Two·possible·use·cases·for·this·callback·is·to·remove·sensitive·information·from
1355 the·state·to·prevent·it·from·being·printed·in·log·files,·or·to·compact·large1355 the·state·to·prevent·it·from·being·printed·in·log·files,·or·to·compact·large
1356 irrelevant·status·items·that·would·only·clutter·the·logs.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">format_status</span><span·class="p"·data-group-id="0339035612-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="0339035612-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1356 irrelevant·status·items·that·would·only·clutter·the·logs.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">format_status</span><span·class="p"·data-group-id="8787686476-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="8787686476-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1357 ··</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="0339035612-2">(</span><span·class="w">1357 ··</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="8787686476-2">(</span><span·class="w">
1358 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="0339035612-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="0339035612-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1358 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="8787686476-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="8787686476-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1359 ············</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">remove</span><span·class="p"·data-group-id="0339035612-4">(</span><span·class="ss">private_key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="0339035612-4">)</span><span·class="p">;</span><span·class="w">1359 ············</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">remove</span><span·class="p"·data-group-id="8787686476-4">(</span><span·class="ss">private_key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="8787686476-4">)</span><span·class="p">;</span><span·class="w">
1360 ·······</span><span·class="p"·data-group-id="0339035612-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="0339035612-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Pass</[·...·truncated·by·diffoscope;·len:·99,·SHA:·1479b36785533d4fb2ce967ee47478cc53ad1c3c68ea76387570b5926acf3d54·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1360 ·······</span><span·class="p"·data-group-id="8787686476-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="8787686476-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Pass</[·...·truncated·by·diffoscope;·len:·99,·SHA:·9a9ee7c5b8319e62ca4a8236a42ce5e07bb0828e3aa3b183b6023f511aeaa809·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1361 ············</span><span·class="p"·data-group-id="0339035612-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">removed</span><span·class="p"·data-group-id="0339035612-7">}</span><span·class="p">;</span><span·class="w">1361 ············</span><span·class="p"·data-group-id="8787686476-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">removed</span><span·class="p"·data-group-id="8787686476-7">}</span><span·class="p">;</span><span·class="w">
1362 ·······</span><span·class="p"·data-group-id="0339035612-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="0339035612-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1362 ·······</span><span·class="p"·data-group-id="8787686476-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="8787686476-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1363 ············</span><span·class="n">Value</span><span·class="w">1363 ············</span><span·class="n">Value</span><span·class="w">
1364 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Status</span><span·class="p"·data-group-id="0339035612-2">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·callback·is·optional,·so·event·handler·modules·need·not·export·it.·If·a1364 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Status</span><span·class="p"·data-group-id="8787686476-2">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·callback·is·optional,·so·event·handler·modules·need·not·export·it.·If·a
1365 handler·does·not·export·this·function,·the·<code·class="inline">gen_event</code>·module·uses·the·handler1365 handler·does·not·export·this·function,·the·<code·class="inline">gen_event</code>·module·uses·the·handler
1366 state·directly·for·the·purposes·described·below.</p><p>If·this·callback·is·exported·but·fails,·to·hide·possibly·sensitive·data,·the1366 state·directly·for·the·purposes·described·below.</p><p>If·this·callback·is·exported·but·fails,·to·hide·possibly·sensitive·data,·the
1367 default·function·will·instead·return·the·fact·that1367 default·function·will·instead·return·the·fact·that
1368 <a·href="#c:format_status/1"><code·class="inline">format_status/1</code></a>·has·crashed.</p></blockquote>1368 <a·href="#c:format_status/1"><code·class="inline">format_status/1</code></a>·has·crashed.</p></blockquote>
1369 ··</section>1369 ··</section>
1370 </section>1370 </section>
1371 <section·class="detail"·id="c:format_status/2">1371 <section·class="detail"·id="c:format_status/2">
Offset 2987, 15 lines modifiedOffset 2987, 15 lines modified
2987 ······<p·class="built-using">2987 ······<p·class="built-using">
2988 ········Built·using2988 ········Built·using
2989 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2989 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2990 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2990 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2991 ······</p>2991 ······</p>
2992 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2992 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2993 ····</footer>2993 ····</footer>
2994 ··</div>2994 ··</div>
2995 </main>2995 </main>
2996 </div>2996 </div>
2997 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2997 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2998 <script>2998 <script>
2999 ··document.addEventListener("DOMContentLoaded",·function·()·{2999 ··document.addEventListener("DOMContentLoaded",·function·()·{
774 B
html2text {}
Max HTML report size reached
79.1 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/gen_fsm.html
    
Offset 131, 170 lines modifiedOffset 131, 170 lines modified
131 <p>Deprecated·and·replaced·by·<a·href="gen_statem.html"><code·class="inline">gen_statem</code></a>.</p><h2·id="module-migration-to-gen_statem"·class="section-heading">131 <p>Deprecated·and·replaced·by·<a·href="gen_statem.html"><code·class="inline">gen_statem</code></a>.</p><h2·id="module-migration-to-gen_statem"·class="section-heading">
132 ··<a·href="#module-migration-to-gen_statem"·class="hover-link">132 ··<a·href="#module-migration-to-gen_statem"·class="hover-link">
133 ····<i·class="ri-link-m"·aria-hidden="true"></i>133 ····<i·class="ri-link-m"·aria-hidden="true"></i>
134 ··</a>134 ··</a>
135 ··<span·class="text">Migration·to·gen_statem</span>135 ··<span·class="text">Migration·to·gen_statem</span>
136 </h2>136 </h2>
137 <p>Here·follows·a·simple·example·of·turning·a·gen_fsm·into·a·<a·href="gen_statem.html"><code·class="inline">gen_statem</code></a>.·The137 <p>Here·follows·a·simple·example·of·turning·a·gen_fsm·into·a·<a·href="gen_statem.html"><code·class="inline">gen_statem</code></a>.·The
138 example·comes·from·the·previous·Users·Guide·for·<code·class="inline">gen_fsm</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="3726419154-1">(</span><span·class="ss">code_lock</span><span·class="p"·data-group-id="3726419154-1">)</span><span·class="p">.</span><span·class="w">138 example·comes·from·the·previous·Users·Guide·for·<code·class="inline">gen_fsm</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7543670040-1">(</span><span·class="ss">code_lock</span><span·class="p"·data-group-id="7543670040-1">)</span><span·class="p">.</span><span·class="w">
139 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="3726419154-2">(</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">code_lock</span><span·class="p"·data-group-id="3726419154-2">)</span><span·class="p">.</span><span·class="w">139 </span><span·class="p">-</span><span·class="na">define</span><span·class="p"·data-group-id="7543670040-2">(</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">code_lock</span><span·class="p"·data-group-id="7543670040-2">)</span><span·class="p">.</span><span·class="w">
140 </span><span·class="c1">%-define(BEFORE_REWRITE,·true).</span><span·class="w">140 </span><span·class="c1">%-define(BEFORE_REWRITE,·true).</span><span·class="w">
141 </span><span·class="w">141 </span><span·class="w">
142 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="3726419154-3">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3726419154-3">)</span><span·class="p">.</span><span·class="w">142 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="7543670040-3">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="7543670040-3">)</span><span·class="p">.</span><span·class="w">
143 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="3726419154-4">(</span><span·class="ss">gen_fsm</span><span·class="p"·data-group-id="3726419154-4">)</span><span·class="p">.</span><span·class="w">143 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="7543670040-4">(</span><span·class="ss">gen_fsm</span><span·class="p"·data-group-id="7543670040-4">)</span><span·class="p">.</span><span·class="w">
144 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">144 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
145 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="3726419154-5">(</span><span·class="ss">gen_statem</span><span·class="p"·data-group-id="3726419154-5">)</span><span·class="p">.</span><span·class="w">145 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="7543670040-5">(</span><span·class="ss">gen_statem</span><span·class="p"·data-group-id="7543670040-5">)</span><span·class="p">.</span><span·class="w">
146 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">146 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
147 </span><span·class="w">147 </span><span·class="w">
148 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3726419154-6">(</span><span·class="p"·data-group-id="3726419154-7">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">button</span><span·class="p">/</s[·...·truncated·by·diffoscope;·len:·248,·SHA:·41ff0a3cdcf75625ff2dba10575ee66ccabe35e5eb2ae1515fa5a9dea7ab9283·...·]-6">)</span><span·class="p">.</span><span·class="w">148 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7543670040-6">(</span><span·class="p"·data-group-id="7543670040-7">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">button</span><span·class="p">/</s[·...·truncated·by·diffoscope;·len:·248,·SHA:·e815b8610f53054645e1d3f0854dbd9d46f0a1a5557b092b4ffe1b3f3426a90b·...·]-6">)</span><span·class="p">.</span><span·class="w">
149 </span><span·class="w">149 </span><span·class="w">
150 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="3726419154-8">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3726419154-8">)</span><span·class="p">.</span><span·class="w">150 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="7543670040-8">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="7543670040-8">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3726419154-9">(</span><span·class="p"·data-group-id="3726419154-10">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">open</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_sync_event</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_event</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">151 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7543670040-9">(</span><span·class="p"·data-group-id="7543670040-10">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">open</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_sync_event</span><span·class="p">/</span><span·class="mi">4</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_event</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">
152 »       ·</span><span·class="ss">handle_info</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="3726419154-10">]</span><span·class="p"·data-group-id="3726419154-9">)</span><span·class="p">.</span><span·class="w">152 »       ·</span><span·class="ss">handle_info</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi">4</span><span·class="p"·data-group-id="7543670040-10">]</span><span·class="p"·data-group-id="7543670040-9">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">153 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
154 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3726419154-11">(</span><span·class="p"·data-group-id="3726419154-12">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">callback_mode</span><span·class="p">/[·...·truncated·by·diffoscope;·len:·641,·SHA:·f7d04640aa019799931b8badaff7739cbecb06a45dceee2ca511a6a8f095050e·...·]-11">)</span><span·class="p">.</span><span·class="w">154 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7543670040-11">(</span><span·class="p"·data-group-id="7543670040-12">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">callback_mode</span><span·class="p">/[·...·truncated·by·diffoscope;·len:·641,·SHA:·c408c44f4877372527f49dedd06f4a9436855086528844dec90ff617e7285cb2·...·]-11">)</span><span·class="p">.</span><span·class="w">
155 </span><span·class="c1">%%·Add·callback__mode/0</span><span·class="w">155 </span><span·class="c1">%%·Add·callback__mode/0</span><span·class="w">
156 </span><span·class="c1">%%·Change·arity·of·the·state·functions</span><span·class="w">156 </span><span·class="c1">%%·Change·arity·of·the·state·functions</span><span·class="w">
157 </span><span·class="c1">%%·Remove·handle_info/3</span><span·class="w">157 </span><span·class="c1">%%·Remove·handle_info/3</span><span·class="w">
158 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">158 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
159 </span><span·class="w">159 </span><span·class="w">
160 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="3726419154-13">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3726419154-13">)</span><span·class="p">.</span><span·class="w">160 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="7543670040-13">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="7543670040-13">)</span><span·class="p">.</span><span·class="w">
161 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="3726419154-14">(</span><span·class="n">Code</span><span·class="p"·data-group-id="3726419154-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">161 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="7543670040-14">(</span><span·class="n">Code</span><span·class="p"·data-group-id="7543670040-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 ····</span><span·class="nc">gen_fsm</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="3726419154-15">(</span><span·class="p"·data-group-id="3726419154-16">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p"·data-group-id="3726419154-16">}</sp[·...·truncated·by·diffoscope;·len:·376,·SHA:·6ea0f65e1eaba2c219e07f1ce995df6efa218f6a2b61a6b64eea8bad744a523d·...·]-15">)</span><span·class="p">.</span><span·class="w">162 ····</span><span·class="nc">gen_fsm</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="7543670040-15">(</span><span·class="p"·data-group-id="7543670040-16">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="w">·</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p"·data-group-id="7543670040-16">}</sp[·...·truncated·by·diffoscope;·len:·376,·SHA:·81b7edbd17e8a078d5f81571a41e2ef8f53f4c41fb40445e0c7e70397c46b5d7·...·]-15">)</span><span·class="p">.</span><span·class="w">
163 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">163 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
164 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="3726419154-18">(</span><span·class="n">Code</span><span·class="p"·data-group-id="3726419154-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">164 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="7543670040-18">(</span><span·class="n">Code</span><span·class="p"·data-group-id="7543670040-18">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
165 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="3726419154-19">(</span><span·class="p"·data-group-id="3726419154-20">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p"·data-group-id="3726419154-20">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·352,·SHA:·554aba278f2cf044ca8b2428fc42000ea669845c28cbf56ea6c7d832b02e34e3·...·]-19">)</span><span·class="p">.</span><span·class="w">165 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="7543670040-19">(</span><span·class="p"·data-group-id="7543670040-20">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p"·data-group-id="7543670040-20">}</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·352,·SHA:·194c30482413b96a0eb66a4491c1fc4441d5aa16efbbe53bc0fac9337a0ffbad·...·]-19">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">166 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
167 </span><span·class="w">167 </span><span·class="w">
168 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="3726419154-22">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3726419154-22">)</span><span·class="p">.</span><span·class="w">168 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="7543670040-22">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="7543670040-22">)</span><span·class="p">.</span><span·class="w">
169 </span><span·class="nf">button</span><span·class="p"·data-group-id="3726419154-23">(</span><span·class="n">Digit</span><span·class="p"·data-group-id="3726419154-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">169 </span><span·class="nf">button</span><span·class="p"·data-group-id="7543670040-23">(</span><span·class="n">Digit</span><span·class="p"·data-group-id="7543670040-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
170 ····</span><span·class="nc">gen_fsm</span><span·class="p">:</span><span·class="nf">send_event</span><span·class="p"·data-group-id="3726419154-24">(</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3726419154-25">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·121,·SHA:·b5a325e0ae3be772ac76810e5beee077ce637425b9413efce91ca365a842d0b8·...·]-24">)</span><span·class="p">.</span><span·class="w">170 ····</span><span·class="nc">gen_fsm</span><span·class="p">:</span><span·class="nf">send_event</span><span·class="p"·data-group-id="7543670040-24">(</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7543670040-25">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·121,·SHA:·7f8493f2c936491489e171bb7578f37a599ae4a046d864a2680f1556105578c7·...·]-24">)</span><span·class="p">.</span><span·class="w">
171 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">171 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
172 </span><span·class="nf">button</span><span·class="p"·data-group-id="3726419154-26">(</span><span·class="n">Digit</span><span·class="p"·data-group-id="3726419154-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">172 </span><span·class="nf">button</span><span·class="p"·data-group-id="7543670040-26">(</span><span·class="n">Digit</span><span·class="p"·data-group-id="7543670040-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
173 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="3726419154-27">(</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3726419154-28">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="n">Digit</spa[·...·truncated·by·diffoscope;·len:·97,·SHA:·00b566ca17e3ef53c760b7dbf52f2e220f5c3757d88392e09ef18db1cb7fca9b·...·]-27">)</span><span·class="p">.</span><span·class="w">173 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">cast</span><span·class="p"·data-group-id="7543670040-27">(</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7543670040-28">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="n">Digit</spa[·...·truncated·by·diffoscope;·len:·97,·SHA:·b4ab7ec1eaa9d7efd389f1a84c2a6a24b21c230530219de6c9d6c42a3c41f549·...·]-27">)</span><span·class="p">.</span><span·class="w">
174 ····</span><span·class="c1">%%·send_event·is·asynchronous·and·becomes·a·cast</span><span·class="w">174 ····</span><span·class="c1">%%·send_event·is·asynchronous·and·becomes·a·cast</span><span·class="w">
175 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">175 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
176 </span><span·class="w">176 </span><span·class="w">
177 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="3726419154-29">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3726419154-29">)</span><span·class="p">.</span><span·class="w">177 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="7543670040-29">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="7543670040-29">)</span><span·class="p">.</span><span·class="w">
178 </span><span·class="nf">stop</span><span·class="p"·data-group-id="3726419154-30">(</span><span·class="p"·data-group-id="3726419154-30">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 </span><span·class="nf">stop</span><span·class="p"·data-group-id="7543670040-30">(</span><span·class="p"·data-group-id="7543670040-30">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ····</span><span·class="nc">gen_fsm</span><span·class="p">:</span><span·class="nf">sync_send_all_state_event</span><span·class="p"·data-group-id="3726419154-31">(</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p"·data-group-id="3726419154-31">)</span><span·class="p">.</span><span·class="w">179 ····</span><span·class="nc">gen_fsm</span><span·class="p">:</span><span·class="nf">sync_send_all_state_event</span><span·class="p"·data-group-id="7543670040-31">(</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p"·data-group-id="7543670040-31">)</span><span·class="p">.</span><span·class="w">
180 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">180 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
181 </span><span·class="nf">stop</span><span·class="p"·data-group-id="3726419154-32">(</span><span·class="p"·data-group-id="3726419154-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">181 </span><span·class="nf">stop</span><span·class="p"·data-group-id="7543670040-32">(</span><span·class="p"·data-group-id="7543670040-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
182 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="3726419154-33">(</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p"·data-group-id="3726419154-33">)</span><span·class="p">.</span><span·class="w">182 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="7543670040-33">(</span><span·class="o">?</span><span·class="n">NAME</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stop</span><span·class="p"·data-group-id="7543670040-33">)</span><span·class="p">.</span><span·class="w">
183 ····</span><span·class="c1">%%·sync_send·is·synchronous·and·becomes·call</span><span·class="w">183 ····</span><span·class="c1">%%·sync_send·is·synchronous·and·becomes·call</span><span·class="w">
184 ····</span><span·class="c1">%%·all_state·is·handled·by·callback·code·in·gen_statem</span><span·class="w">184 ····</span><span·class="c1">%%·all_state·is·handled·by·callback·code·in·gen_statem</span><span·class="w">
185 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">185 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
  
186 </span><span·class="nf">init</span><span·class="p"·data-group-id="3726419154-34">(</span><span·class="n">Code</span><span·class="p"·data-group-id="3726419154-34">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">186 </span><span·class="nf">init</span><span·class="p"·data-group-id="7543670040-34">(</span><span·class="n">Code</span><span·class="p"·data-group-id="7543670040-34">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
187 ····</span><span·class="nf">do_lock</span><span·class="p"·data-group-id="3726419154-35">(</span><span·class="p"·data-group-id="3726419154-35">)</span><span·class="p">,</span><span·class="w">187 ····</span><span·class="nf">do_lock</span><span·class="p"·data-group-id="7543670040-35">(</span><span·class="p"·data-group-id="7543670040-35">)</span><span·class="p">,</span><span·class="w">
188 ····</span><span·class="n">Data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3726419154-36">#{</span><span·class="ss">code</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Code</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">remaining</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·124,·SHA:·78821f220666e3242d47ef94d0e62ed484fe167ed542ce3eac50ed31856f3406·...·]-36">}</span><span·class="p">,</span><span·class="w">188 ····</span><span·class="n">Data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7543670040-36">#{</span><span·class="ss">code</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="n">Code</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">remaining</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·124,·SHA:·b6ca4e344bb14b83aca785adc0d6bd11994d8391a77154a4d200ec2bb930e474·...·]-36">}</span><span·class="p">,</span><span·class="w">
189 ····</span><span·class="p"·data-group-id="3726419154-37">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-37">}</span><span·class="p">.</span><span·class="w">189 ····</span><span·class="p"·data-group-id="7543670040-37">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-37">}</span><span·class="p">.</span><span·class="w">
190 </span><span·class="w">190 </span><span·class="w">
191 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="3726419154-38">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3726419154-38">)</span><span·class="p">.</span><span·class="w">191 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="7543670040-38">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="7543670040-38">)</span><span·class="p">.</span><span·class="w">
192 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">192 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
193 </span><span·class="nf">callback_mode</span><span·class="p"·data-group-id="3726419154-39">(</span><span·class="p"·data-group-id="3726419154-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">193 </span><span·class="nf">callback_mode</span><span·class="p"·data-group-id="7543670040-39">(</span><span·class="p"·data-group-id="7543670040-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
194 ····</span><span·class="ss">state_functions</span><span·class="p">.</span><span·class="w">194 ····</span><span·class="ss">state_functions</span><span·class="p">.</span><span·class="w">
195 </span><span·class="c1">%%·state_functions·mode·is·the·mode·most·similar·to</span><span·class="w">195 </span><span·class="c1">%%·state_functions·mode·is·the·mode·most·similar·to</span><span·class="w">
196 </span><span·class="c1">%%·gen_fsm.·There·is·also·handle_event·mode·which·is</span><span·class="w">196 </span><span·class="c1">%%·gen_fsm.·There·is·also·handle_event·mode·which·is</span><span·class="w">
197 </span><span·class="c1">%%·a·fairly·different·concept.</span><span·class="w">197 </span><span·class="c1">%%·a·fairly·different·concept.</span><span·class="w">
198 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">198 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
199 </span><span·class="w">199 </span><span·class="w">
200 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="3726419154-40">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3726419154-40">)</span><span·class="p">.</span><span·class="w">200 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="7543670040-40">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="7543670040-40">)</span><span·class="p">.</span><span·class="w">
201 </span><span·class="nf">locked</span><span·class="p"·data-group-id="3726419154-41">(</span><span·class="p"·data-group-id="3726419154-42">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Digit</span><span·class="p"·data-group-id="3726419154-42">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·98,·SHA:·fe86062f9fbac8eb936df5ccf0ca56cf04735ea2b889e4cc78170c71c2225c8f·...·]-41">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">201 </span><span·class="nf">locked</span><span·class="p"·data-group-id="7543670040-41">(</span><span·class="p"·data-group-id="7543670040-42">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Digit</span><span·class="p"·data-group-id="7543670040-42">}</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·98,·SHA:·b248a05f92769d4a620c0ca7ad9e2709ee8bbfbd539b8b67fc63819293cd33ba·...·]-41">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
202 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">analyze_lock</span><span·class="p"·data-group-id="3726419154-43">(</span><span·class="n">Digit</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data0</span><span·class="p"·data-group-id="3726419154-43">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">202 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">analyze_lock</span><span·class="p"·data-group-id="7543670040-43">(</span><span·class="n">Digit</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data0</span><span·class="p"·data-group-id="7543670040-43">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
203 »       </span><span·class="p"·data-group-id="3726419154-44">{</span><span·class="ss">open</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·0afa0d89d5302d485a2bcfaaab48c123b49a5ba0e5b7f82bcff615f313a1cc93·...·]-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">203 »       </span><span·class="p"·data-group-id="7543670040-44">{</span><span·class="ss">open</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·edb1b4e98df16aadf29416ec296f26bb2b985406ec85d17d73989f943fda11a8·...·]-44">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
204 »       ····</span><span·class="p"·data-group-id="3726419154-45">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·74,·SHA:·36c0264d94993aa56e4553fc2f31bf147c7564c4f166874fbc85c6d56bb89197·...·]-45">}</span><span·class="p">;</span><span·class="w">204 »       ····</span><span·class="p"·data-group-id="7543670040-45">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·74,·SHA:·10d27a530bd4c2676bfe2d75c614d3b18e043017e1f84f54e95372eb8a25ae3c·...·]-45">}</span><span·class="p">;</span><span·class="w">
205 »       </span><span·class="p"·data-group-id="3726419154-46">{</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">205 »       </span><span·class="p"·data-group-id="7543670040-46">{</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-46">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 »       ····</span><span·class="p"·data-group-id="3726419154-47">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-47">}</span><span·class="w">206 »       ····</span><span·class="p"·data-group-id="7543670040-47">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-47">}</span><span·class="w">
207 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">207 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
208 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">208 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
209 </span><span·class="nf">locked</span><span·class="p"·data-group-id="3726419154-48">(</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3726419154-49">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="n">Digit</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·150,·SHA:·e1cf2cbca182a26d009cb3cb9c037e6bd5319a6be890657fa08a10b806d4a333·...·]-48">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">209 </span><span·class="nf">locked</span><span·class="p"·data-group-id="7543670040-48">(</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7543670040-49">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="n">Digit</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·150,·SHA:·f23b117b0ae374502d066ecf665d5d7fac0403eeb485b6fdeab719893007f333·...·]-48">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
210 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">analyze_lock</span><span·class="p"·data-group-id="3726419154-50">(</span><span·class="n">Digit</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data0</span><span·class="p"·data-group-id="3726419154-50">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">210 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">analyze_lock</span><span·class="p"·data-group-id="7543670040-50">(</span><span·class="n">Digit</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data0</span><span·class="p"·data-group-id="7543670040-50">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
211 »       </span><span·class="p"·data-group-id="3726419154-51">{</span><span·class="ss">open</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·0afa0d89d5302d485a2bcfaaab48c123b49a5ba0e5b7f82bcff615f313a1cc93·...·]-51">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">211 »       </span><span·class="p"·data-group-id="7543670040-51">{</span><span·class="ss">open</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·edb1b4e98df16aadf29416ec296f26bb2b985406ec85d17d73989f943fda11a8·...·]-51">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
212 »       ····</span><span·class="p"·data-group-id="3726419154-52">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·74,·SHA:·36c0264d94993aa56e4553fc2f31bf147c7564c4f166874fbc85c6d56bb89197·...·]-52">}</span><span·class="p">;</span><span·class="w">212 »       ····</span><span·class="p"·data-group-id="7543670040-52">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·74,·SHA:·10d27a530bd4c2676bfe2d75c614d3b18e043017e1f84f54e95372eb8a25ae3c·...·]-52">}</span><span·class="p">;</span><span·class="w">
213 »       </span><span·class="p"·data-group-id="3726419154-53">{</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-53">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">213 »       </span><span·class="p"·data-group-id="7543670040-53">{</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-53">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
214 »       ····</span><span·class="p"·data-group-id="3726419154-54">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-54">}</span><span·class="w">214 »       ····</span><span·class="p"·data-group-id="7543670040-54">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-54">}</span><span·class="w">
215 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">215 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
216 </span><span·class="nf">locked</span><span·class="p"·data-group-id="3726419154-55">(</span><span·class="p"·data-group-id="3726419154-56">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="3726419154-56">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·168,·SHA:·e785e36c152cd2d822906eb997c2085d8ebb60ab39fc8e3dc18a41c65cb2f5b1·...·]-55">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">216 </span><span·class="nf">locked</span><span·class="p"·data-group-id="7543670040-55">(</span><span·class="p"·data-group-id="7543670040-56">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="7543670040-56">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·168,·SHA:·5e56eb568c6206c8497f7e1161b74546aceaa9e58f15a6b57da01d08c648c4a0·...·]-55">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
217 ····</span><span·class="nf">handle_call</span><span·class="p"·data-group-id="3726419154-57">(</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-57">)</span><span·class="p">;</span><span·class="w">217 ····</span><span·class="nf">handle_call</span><span·class="p"·data-group-id="7543670040-57">(</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-57">)</span><span·class="p">;</span><span·class="w">
218 </span><span·class="nf">locked</span><span·class="p"·data-group-id="3726419154-58">(</span><span·class="p"·data-group-id="3726419154-59">{</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="3726419154-59">}</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·173,·SHA:·f3e1900e81cd62b7a6d0d7ed81a01143845d98902497807a9b985c2bade6ab69·...·]-58">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">218 </span><span·class="nf">locked</span><span·class="p"·data-group-id="7543670040-58">(</span><span·class="p"·data-group-id="7543670040-59">{</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="7543670040-59">}</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·173,·SHA:·2a0c7f09856ae4cca85c28af4017da52aaa485226121b3aef234a9b35f198bf5·...·]-58">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
219 ····</span><span·class="nf">handle_info</span><span·class="p"·data-group-id="3726419154-60">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-60">)</span><span·class="p">.</span><span·class="w">219 ····</span><span·class="nf">handle_info</span><span·class="p"·data-group-id="7543670040-60">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-60">)</span><span·class="p">.</span><span·class="w">
220 </span><span·class="c1">%%·Arity·differs</span><span·class="w">220 </span><span·class="c1">%%·Arity·differs</span><span·class="w">
221 </span><span·class="c1">%%·All·state·events·are·dispatched·to·handle_call·and·handle_info·help</span><span·class="w">221 </span><span·class="c1">%%·All·state·events·are·dispatched·to·handle_call·and·handle_info·help</span><span·class="w">
222 </span><span·class="c1">%%·functions.·If·you·want·to·handle·a·call·or·cast·event·specifically</span><span·class="w">222 </span><span·class="c1">%%·functions.·If·you·want·to·handle·a·call·or·cast·event·specifically</span><span·class="w">
223 </span><span·class="c1">%%·for·this·state·you·would·add·a·special·clause·for·it·above.</span><span·class="w">223 </span><span·class="c1">%%·for·this·state·you·would·add·a·special·clause·for·it·above.</span><span·class="w">
224 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">224 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
225 </span><span·class="w">225 </span><span·class="w">
226 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="3726419154-61">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3726419154-61">)</span><span·class="p">.</span><span·class="w">226 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="7543670040-61">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="7543670040-61">)</span><span·class="p">.</span><span·class="w">
227 </span><span·class="nf">open</span><span·class="p"·data-group-id="3726419154-62">(</span><span·class="ss">timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="3726419154-62">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 </span><span·class="nf">open</span><span·class="p"·data-group-id="7543670040-62">(</span><span·class="ss">timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="7543670040-62">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 ·····</span><span·class="nf">do_lock</span><span·class="p"·data-group-id="3726419154-63">(</span><span·class="p"·data-group-id="3726419154-63">)</span><span·class="p">,</span><span·class="w">228 ·····</span><span·class="nf">do_lock</span><span·class="p"·data-group-id="7543670040-63">(</span><span·class="p"·data-group-id="7543670040-63">)</span><span·class="p">,</span><span·class="w">
229 ····</span><span·class="p"·data-group-id="3726419154-64">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="3726419154-64">}</span><span·class="p">;</span><span·class="w">229 ····</span><span·class="p"·data-group-id="7543670040-64">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="7543670040-64">}</span><span·class="p">;</span><span·class="w">
230 </span><span·class="nf">open</span><span·class="p"·data-group-id="3726419154-65">(</span><span·class="p"·data-group-id="3726419154-66">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="3726419154-66">}</span><span·class="p">,</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·69,·SHA:·e34fed1c9fe60add020eff98123f29a36bf26fd16b485a1c4bbaa95992c2ac0b·...·]-65">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">230 </span><span·class="nf">open</span><span·class="p"·data-group-id="7543670040-65">(</span><span·class="p"·data-group-id="7543670040-66">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="7543670040-66">}</span><span·class="p">,</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·69,·SHA:·0f778195fd68f395622601291191eba1f1a4d78d40ed4ac43eed0d6b94b47d04·...·]-65">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
231 ····</span><span·class="p"·data-group-id="3726419154-67">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-67">}</span><span·class="p">.</span><span·class="w">231 ····</span><span·class="p"·data-group-id="7543670040-67">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-67">}</span><span·class="p">.</span><span·class="w">
232 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">232 </span><span·class="p">-</span><span·class="na">else</span><span·class="p">.</span><span·class="w">
233 </span><span·class="nf">open</span><span·class="p"·data-group-id="3726419154-68">(</span><span·class="ss">timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-68">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">233 </span><span·class="nf">open</span><span·class="p"·data-group-id="7543670040-68">(</span><span·class="ss">timeout</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-68">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
234 ····</span><span·class="nf">do_lock</span><span·class="p"·data-group-id="3726419154-69">(</span><span·class="p"·data-group-id="3726419154-69">)</span><span·class="p">,</span><span·class="w">234 ····</span><span·class="nf">do_lock</span><span·class="p"·data-group-id="7543670040-69">(</span><span·class="p"·data-group-id="7543670040-69">)</span><span·class="p">,</span><span·class="w">
235 ····</span><span·class="p"·data-group-id="3726419154-70">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-70">}</span><span·class="p">;</span><span·class="w">235 ····</span><span·class="p"·data-group-id="7543670040-70">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-70">}</span><span·class="p">;</span><span·class="w">
236 </span><span·class="nf">open</span><span·class="p"·data-group-id="3726419154-71">(</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3726419154-72">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·145,·SHA:·3b3e1e85d2977b10fb8b2717c77ac1949df47420abecd7944f0becb6eec7d579·...·]-71">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">236 </span><span·class="nf">open</span><span·class="p"·data-group-id="7543670040-71">(</span><span·class="ss">cast</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7543670040-72">{</span><span·class="ss">button</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·145,·SHA:·6dab2e9d3eb8a62ab6457c41f7cd88881340989898b643828699131bac31dc72·...·]-71">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
237 ····</span><span·class="p"·data-group-id="3726419154-73">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-73">}</span><span·class="p">;</span><span·class="w">237 ····</span><span·class="p"·data-group-id="7543670040-73">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">locked</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-73">}</span><span·class="p">;</span><span·class="w">
238 </span><span·class="nf">open</span><span·class="p"·data-group-id="3726419154-74">(</span><span·class="p"·data-group-id="3726419154-75">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="3726419154-75">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·168,·SHA:·e785e36c152cd2d822906eb997c2085d8ebb60ab39fc8e3dc18a41c65cb2f5b1·...·]-74">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">238 </span><span·class="nf">open</span><span·class="p"·data-group-id="7543670040-74">(</span><span·class="p"·data-group-id="7543670040-75">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="7543670040-75">}</span><span·class="p">,</spa[·...·truncated·by·diffoscope;·len:·168,·SHA:·5e56eb568c6206c8497f7e1161b74546aceaa9e58f15a6b57da01d08c648c4a0·...·]-74">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
239 ····</span><span·class="nf">handle_call</span><span·class="p"·data-group-id="3726419154-76">(</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-76">)</span><span·class="p">;</span><span·class="w">239 ····</span><span·class="nf">handle_call</span><span·class="p"·data-group-id="7543670040-76">(</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-76">)</span><span·class="p">;</span><span·class="w">
240 </span><span·class="nf">open</span><span·class="p"·data-group-id="3726419154-77">(</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-77">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">240 </span><span·class="nf">open</span><span·class="p"·data-group-id="7543670040-77">(</span><span·class="ss">info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-77">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
241 ····</span><span·class="nf">handle_info</span><span·class="p"·data-group-id="3726419154-78">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">open</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-78">)</span><span·class="p">.</span><span·class="w">241 ····</span><span·class="nf">handle_info</span><span·class="p"·data-group-id="7543670040-78">(</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">open</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-78">)</span><span·class="p">.</span><span·class="w">
242 </span><span·class="c1">%%·Arity·differs</span><span·class="w">242 </span><span·class="c1">%%·Arity·differs</span><span·class="w">
243 </span><span·class="c1">%%·All·state·events·are·dispatched·to·handle_call·and·handle_info·help</span><span·class="w">243 </span><span·class="c1">%%·All·state·events·are·dispatched·to·handle_call·and·handle_info·help</span><span·class="w">
244 </span><span·class="c1">%%·functions.·If·you·want·to·handle·a·call·or·cast·event·specifically</span><span·class="w">244 </span><span·class="c1">%%·functions.·If·you·want·to·handle·a·call·or·cast·event·specifically</span><span·class="w">
245 </span><span·class="c1">%%·for·this·state·you·would·add·a·special·clause·for·it·above.</span><span·class="w">245 </span><span·class="c1">%%·for·this·state·you·would·add·a·special·clause·for·it·above.</span><span·class="w">
246 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">246 </span><span·class="p">-</span><span·class="na">endif</span><span·class="p">.</span><span·class="w">
247 </span><span·class="w">247 </span><span·class="w">
248 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="3726419154-79">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="3726419154-79">)</span><span·class="p">.</span><span·class="w">248 </span><span·class="p">-</span><span·class="na">ifdef</span><span·class="p"·data-group-id="7543670040-79">(</span><span·class="n">BEFORE_REWRITE</span><span·class="p"·data-group-id="7543670040-79">)</span><span·class="p">.</span><span·class="w">
249 </span><span·class="nf">handle_sync_event</span><span·class="p"·data-group-id="3726419154-80">(</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">StateName</span><s[·...·truncated·by·diffoscope;·len:·114,·SHA:·82590524e52e6c6d04e15635a286523642dcf0da6b353d7418564952efc5f14b·...·]-80">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">249 </span><span·class="nf">handle_sync_event</span><span·class="p"·data-group-id="7543670040-80">(</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">StateName</span><s[·...·truncated·by·diffoscope;·len:·114,·SHA:·448939a39304f52c485b5e57b56a762c0adf979aca1e7f8f312e39dc07ec7598·...·]-80">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
250 ····</span><span·class="p"·data-group-id="3726419154-81">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·63,·SHA:·d823f2d7b936cac379b9d4d58b088b6d145268e632414d8bcd7b7d47fec17aef·...·]-81">}</span><span·class="p">.</span><span·class="w">250 ····</span><span·class="p"·data-group-id="7543670040-81">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">normal</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·63,·SHA:·48cb9ebcc3cf1a2e5fac5ab6e10803269006177574923c407c12c19cbbd964e7·...·]-81">}</span><span·class="p">.</span><span·class="w">
  
251 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="3726419154-82">(</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-82">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">251 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="7543670040-82">(</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-82">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
252 ····</span><span·class="p"·data-group-id="3726419154-83">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3726419154-84">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·445,·SHA:·1ef0fd336a6c4b395d315be34e176741a229f809927ecf7eac60508a4d9e59ce·...·]-83">}</span><span·class="p">.</span><span·class="w">252 ····</span><span·class="p"·data-group-id="7543670040-83">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7543670040-84">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·445,·SHA:·559cb1fe999f06d7868575d563869d91c5dd86273c09aa8ffe2bb6a463e4109e·...·]-83">}</span><span·class="p">.</span><span·class="w">
  
253 </span><span·class="nf">handle_info</span><span·class="p"·data-group-id="3726419154-86">(</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="3726419154-86">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">253 </span><span·class="nf">handle_info</span><span·class="p"·data-group-id="7543670040-86">(</span><span·class="n">Info</span><span·class="p">,</span><span·class="w">·</span><span·class="n">StateName</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="7543670040-86">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
254 ····</span><span·class="p"·data-group-id="3726419154-87">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3726419154-88">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·524,·SHA:·77c1019ffbde15a6f6531add4182d212e165d08df5360b9c351b300c70cf4e97·...·]-87">}</span><span·class="p">.</span><span·class="w">254 ····</span><span·class="p"·data-group-id="7543670040-87">{</span><span·class="ss">stop</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7543670040-88">{</span><span·class="ss">shutdown</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·524,·SHA:·25d79183967a5ca5685218850df7ff581ae9064a6e8e651efbe17355adebcbff·...·]-87">}</span><span·class="p">.</span><span·class="w">
Max diff block lines reached; 19604/80287 bytes (24.42%) of diff not shown.
618 B
html2text {}
Max HTML report size reached
8.13 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/gen_server.html
    
Offset 1342, 23 lines modifiedOffset 1342, 23 lines modified
  
1342 <p>This·function·is·called·by·a·<code·class="inline">gen_server</code>·process·in·in·order·to·format/limit·the1342 <p>This·function·is·called·by·a·<code·class="inline">gen_server</code>·process·in·in·order·to·format/limit·the
1343 server·state·for·debugging·and·logging·purposes.</p><p>It·is·called·in·the·following·situations:</p><ul><li><a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·is·invoked·to·get·the·<code·class="inline">gen_server</code>1343 server·state·for·debugging·and·logging·purposes.</p><p>It·is·called·in·the·following·situations:</p><ul><li><a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·is·invoked·to·get·the·<code·class="inline">gen_server</code>
1344 status.</li><li>The·<code·class="inline">gen_server</code>·process·terminates·abnormally·and·logs·an·error.</li></ul><p>This·callback·is·used·to·limit·the·status·of·the·process·returned·by1344 status.</li><li>The·<code·class="inline">gen_server</code>·process·terminates·abnormally·and·logs·an·error.</li></ul><p>This·callback·is·used·to·limit·the·status·of·the·process·returned·by
1345 <a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·or·sent·to·<a·href="../../../../lib/kernel-10.0.1/doc/html/logger.html"><code·class="inline">logger</code></a>.</p><p>The·callback·gets·a·map·<code·class="inline">Status</code>·describing·the·current·status·and·shall·return1345 <a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·or·sent·to·<a·href="../../../../lib/kernel-10.0.1/doc/html/logger.html"><code·class="inline">logger</code></a>.</p><p>The·callback·gets·a·map·<code·class="inline">Status</code>·describing·the·current·status·and·shall·return
1346 a·map·<code·class="inline">NewStatus</code>·with·the·same·keys,·but·it·may·transform·some·values.</p><p>Two·possible·use·cases·for·this·callback·is·to·remove·sensitive·information·from1346 a·map·<code·class="inline">NewStatus</code>·with·the·same·keys,·but·it·may·transform·some·values.</p><p>Two·possible·use·cases·for·this·callback·is·to·remove·sensitive·information·from
1347 the·state·to·prevent·it·from·being·printed·in·log·files,·or·to·compact·large1347 the·state·to·prevent·it·from·being·printed·in·log·files,·or·to·compact·large
1348 irrelevant·status·items·that·would·only·clutter·the·logs.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">format_status</span><span·class="p"·data-group-id="9250358094-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="9250358094-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1348 irrelevant·status·items·that·would·only·clutter·the·logs.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">format_status</span><span·class="p"·data-group-id="6571015652-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="6571015652-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1349 ··</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="9250358094-2">(</span><span·class="w">1349 ··</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="6571015652-2">(</span><span·class="w">
1350 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="9250358094-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="9250358094-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1350 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="6571015652-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="6571015652-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1351 ············</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">remove</span><span·class="p"·data-group-id="9250358094-4">(</span><span·class="ss">private_key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="9250358094-4">)</span><span·class="p">;</span><span·class="w">1351 ············</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">remove</span><span·class="p"·data-group-id="6571015652-4">(</span><span·class="ss">private_key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="6571015652-4">)</span><span·class="p">;</span><span·class="w">
1352 ·······</span><span·class="p"·data-group-id="9250358094-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="9250358094-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Pass</[·...·truncated·by·diffoscope;·len:·99,·SHA:·1002a184562582e01e73d7d54dfe888b0ef20f55152aeed5a9cf3ecd3c4943ed·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1352 ·······</span><span·class="p"·data-group-id="6571015652-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="6571015652-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Pass</[·...·truncated·by·diffoscope;·len:·99,·SHA:·5c1acf7aca33acfee496433a7c29a0ade598ba06c4a08e5f7928fc831dfc0a9d·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1353 ············</span><span·class="p"·data-group-id="9250358094-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">removed</span><span·class="p"·data-group-id="9250358094-7">}</span><span·class="p">;</span><span·class="w">1353 ············</span><span·class="p"·data-group-id="6571015652-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">removed</span><span·class="p"·data-group-id="6571015652-7">}</span><span·class="p">;</span><span·class="w">
1354 ·······</span><span·class="p"·data-group-id="9250358094-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="9250358094-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1354 ·······</span><span·class="p"·data-group-id="6571015652-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="6571015652-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1355 ············</span><span·class="n">Value</span><span·class="w">1355 ············</span><span·class="n">Value</span><span·class="w">
1356 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Status</span><span·class="p"·data-group-id="9250358094-2">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·callback·is·optional,·so·callback·modules·need·not·export·it.·The1356 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Status</span><span·class="p"·data-group-id="6571015652-2">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·callback·is·optional,·so·callback·modules·need·not·export·it.·The
1357 <code·class="inline">gen_server</code>·module·provides·a·default·implementation·of·this·function·that1357 <code·class="inline">gen_server</code>·module·provides·a·default·implementation·of·this·function·that
1358 returns·the·callback·module·state.</p><p>If·this·callback·is·exported·but·fails,·to·hide·possibly·sensitive·data,·the1358 returns·the·callback·module·state.</p><p>If·this·callback·is·exported·but·fails,·to·hide·possibly·sensitive·data,·the
1359 default·function·will·instead·return·the·fact·that1359 default·function·will·instead·return·the·fact·that
1360 <a·href="#c:format_status/1"><code·class="inline">format_status/1</code></a>·has·crashed.</p></blockquote>1360 <a·href="#c:format_status/1"><code·class="inline">format_status/1</code></a>·has·crashed.</p></blockquote>
1361 ··</section>1361 ··</section>
1362 </section>1362 </section>
1363 <section·class="detail"·id="c:format_status/2">1363 <section·class="detail"·id="c:format_status/2">
Offset 3002, 15 lines modifiedOffset 3002, 15 lines modified
3002 ······<p·class="built-using">3002 ······<p·class="built-using">
3003 ········Built·using3003 ········Built·using
3004 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3004 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3005 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3005 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3006 ······</p>3006 ······</p>
3007 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3007 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3008 ····</footer>3008 ····</footer>
3009 ··</div>3009 ··</div>
3010 </main>3010 </main>
3011 </div>3011 </div>
3012 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3012 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3013 <script>3013 <script>
3014 ··document.addEventListener("DOMContentLoaded",·function·()·{3014 ··document.addEventListener("DOMContentLoaded",·function·()·{
751 B
html2text {}
Max HTML report size reached
58.0 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/gen_statem.html
    
Offset 251, 105 lines modifiedOffset 251, 105 lines modified
251 ····<i·class="ri-link-m"·aria-hidden="true"></i>251 ····<i·class="ri-link-m"·aria-hidden="true"></i>
252 ··</a>252 ··</a>
253 ··<span·class="text">Example</span>253 ··<span·class="text">Example</span>
254 </h2>254 </h2>
255 <p>The·following·example·shows·a·simple·pushbutton·model·for·a·toggling·pushbutton255 <p>The·following·example·shows·a·simple·pushbutton·model·for·a·toggling·pushbutton
256 implemented·with·<a·href="#t:callback_mode/0"><em>callback·mode</em></a>·<code·class="inline">state_functions</code>.·You256 implemented·with·<a·href="#t:callback_mode/0"><em>callback·mode</em></a>·<code·class="inline">state_functions</code>.·You
257 can·push·the·button·and·it·replies·if·it·went·on·or·off,·and·you·can·ask·for·a257 can·push·the·button·and·it·replies·if·it·went·on·or·off,·and·you·can·ask·for·a
258 count·of·how·many·times·it·has·been·pushed·to·switch·on.</p><p>The·following·is·the·complete·callback·module·file·<code·class="inline">pushbutton.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2411340335-1">(</span><span·class="ss">pushbutton</span><span·class="p"·data-group-id="2411340335-1">)</span><span·class="p">.</span><span·class="w">258 count·of·how·many·times·it·has·been·pushed·to·switch·on.</p><p>The·following·is·the·complete·callback·module·file·<code·class="inline">pushbutton.erl</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4320203946-1">(</span><span·class="ss">pushbutton</span><span·class="p"·data-group-id="4320203946-1">)</span><span·class="p">.</span><span·class="w">
259 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="2411340335-2">(</span><span·class="ss">gen_statem</span><span·class="p"·data-group-id="2411340335-2">)</span><span·class="p">.</span><span·class="w">259 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="4320203946-2">(</span><span·class="ss">gen_statem</span><span·class="p"·data-group-id="4320203946-2">)</span><span·class="p">.</span><span·class="w">
260 </span><span·class="w">260 </span><span·class="w">
261 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2411340335-3">(</span><span·class="p"·data-group-id="2411340335-4">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="ss">push</span><span·class="p">/</span><span·class="mi">0</span><s[·...·truncated·by·diffoscope;·len:·299,·SHA:·31de38bdc47cd8e0e58fb354f3a24a58d31c80d5637f34aa0d8cf09096876999·...·]-3">)</span><span·class="p">.</span><span·class="w">261 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4320203946-3">(</span><span·class="p"·data-group-id="4320203946-4">[</span><span·class="ss">start</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="ss">push</span><span·class="p">/</span><span·class="mi">0</span><s[·...·truncated·by·diffoscope;·len:·299,·SHA:·5d03f47a19c86edbd57b91b8e976acf703d05ee039ac9a2489ed19520774e3c2·...·]-3">)</span><span·class="p">.</span><span·class="w">
262 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2411340335-5">(</span><span·class="p"·data-group-id="2411340335-6">[</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi"[·...·truncated·by·diffoscope;·len:·314,·SHA:·f70862f764590b7c11eb22e8a58c59581a2623130d080bfbe54a6da568e268d0·...·]-5">)</span><span·class="p">.</span><span·class="w">262 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4320203946-5">(</span><span·class="p"·data-group-id="4320203946-6">[</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi"[·...·truncated·by·diffoscope;·len:·314,·SHA:·111a486a74f26ec8f4b365455485a299a35102317091c3571c99558297b4e6a4·...·]-5">)</span><span·class="p">.</span><span·class="w">
263 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2411340335-7">(</span><span·class="p"·data-group-id="2411340335-8">[</span><span·class="ss">on</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">off</span><span·class="p">/</span><span·class="mi">3</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·3e23ee138a94169248c8c5b1aceb2c2dc1059c37d1fbf77acfc5a2ff4ccf5f44·...·]-7">)</span><span·class="p">.</span><span·class="w">263 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4320203946-7">(</span><span·class="p"·data-group-id="4320203946-8">[</span><span·class="ss">on</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">off</span><span·class="p">/</span><span·class="mi">3</span><span·[·...·truncated·by·diffoscope;·len:·88,·SHA:·3df8cae84b35c670bd25761be9605934f64defaf5e4b9c6bb7a605343d53fb11·...·]-7">)</span><span·class="p">.</span><span·class="w">
  
264 </span><span·class="nf">name</span><span·class="p"·data-group-id="2411340335-9">(</span><span·class="p"·data-group-id="2411340335-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">pushbutton_statem</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·The·registered·server·name</span><span·class="w">264 </span><span·class="nf">name</span><span·class="p"·data-group-id="4320203946-9">(</span><span·class="p"·data-group-id="4320203946-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">pushbutton_statem</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·The·registered·server·name</span><span·class="w">
  
265 </span><span·class="c1">%%·API.··This·example·uses·a·registered·name·name()</span><span·class="w">265 </span><span·class="c1">%%·API.··This·example·uses·a·registered·name·name()</span><span·class="w">
266 </span><span·class="c1">%%·and·does·not·link·to·the·caller.</span><span·class="w">266 </span><span·class="c1">%%·and·does·not·link·to·the·caller.</span><span·class="w">
267 </span><span·class="nf">start</span><span·class="p"·data-group-id="2411340335-10">(</span><span·class="p"·data-group-id="2411340335-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">267 </span><span·class="nf">start</span><span·class="p"·data-group-id="4320203946-10">(</span><span·class="p"·data-group-id="4320203946-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
268 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="2411340335-11">(</span><span·class="p"·data-group-id="2411340335-12">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="nf">name</span><span·class="p"·data-group-id="2411340335-13">(</span><span·class="p"·data-group-id="2411340335-13[·...·truncated·by·diffoscope;·len:·518,·SHA:·84e38e18e6e9e7f4cfe14187ee7b132481ad143b96554230fa57f2134687686f·...·]-11">)</span><span·class="p">.</span><span·class="w">268 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="4320203946-11">(</span><span·class="p"·data-group-id="4320203946-12">{</span><span·class="ss">local</span><span·class="p">,</span><span·class="nf">name</span><span·class="p"·data-group-id="4320203946-13">(</span><span·class="p"·data-group-id="4320203946-13[·...·truncated·by·diffoscope;·len:·518,·SHA:·cb1b665467ed2b9181ba5404a25d1576c1edee1391f7ce1fb43617ee664928f6·...·]-11">)</span><span·class="p">.</span><span·class="w">
269 </span><span·class="nf">push</span><span·class="p"·data-group-id="2411340335-16">(</span><span·class="p"·data-group-id="2411340335-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">269 </span><span·class="nf">push</span><span·class="p"·data-group-id="4320203946-16">(</span><span·class="p"·data-group-id="4320203946-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
270 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="2411340335-17">(</span><span·class="nf">name</span><span·class="p"·data-group-id="2411340335-18">(</span><span·class="p"·data-group-id="2411340335-18">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">push</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·0d07a1df78e72be6c55dc8e383993862b254c3e5244aa25aefd091968999db69·...·]-17">)</span><span·class="p">.</span><span·class="w">270 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="4320203946-17">(</span><span·class="nf">name</span><span·class="p"·data-group-id="4320203946-18">(</span><span·class="p"·data-group-id="4320203946-18">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">push</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·ab245b7c10a5f040c2f2401400af0253a3c701050511aa0335fdc7f112fa6bbc·...·]-17">)</span><span·class="p">.</span><span·class="w">
271 </span><span·class="nf">get_count</span><span·class="p"·data-group-id="2411340335-19">(</span><span·class="p"·data-group-id="2411340335-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">271 </span><span·class="nf">get_count</span><span·class="p"·data-group-id="4320203946-19">(</span><span·class="p"·data-group-id="4320203946-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
272 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="2411340335-20">(</span><span·class="nf">name</span><span·class="p"·data-group-id="2411340335-21">(</span><span·class="p"·data-group-id="2411340335-21">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">get_count</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·91418cd8fb77b315af61e0719d5393807ae3087aae8e35c9832fbc613f3ba37c·...·]-20">)</span><span·class="p">.</span><span·class="w">272 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="4320203946-20">(</span><span·class="nf">name</span><span·class="p"·data-group-id="4320203946-21">(</span><span·class="p"·data-group-id="4320203946-21">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">get_count</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·25,·SHA:·0d91b3042557d40fb6d6d135ccfdbfa9c272a039e4d8b590ca4916cb8a9036ba·...·]-20">)</span><span·class="p">.</span><span·class="w">
273 </span><span·class="nf">stop</span><span·class="p"·data-group-id="2411340335-22">(</span><span·class="p"·data-group-id="2411340335-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">273 </span><span·class="nf">stop</span><span·class="p"·data-group-id="4320203946-22">(</span><span·class="p"·data-group-id="4320203946-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
274 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="2411340335-23">(</span><span·class="nf">name</span><span·class="p"·data-group-id="2411340335-24">(</span><span·class="p"·data-group-id="2411340335-24">)</span><span·class="p"·data-group-id="2411340335-23">)</span><span·class="p">.</span><span·class="w">274 ····</span><span·class="nc">gen_statem</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="4320203946-23">(</span><span·class="nf">name</span><span·class="p"·data-group-id="4320203946-24">(</span><span·class="p"·data-group-id="4320203946-24">)</span><span·class="p"·data-group-id="4320203946-23">)</span><span·class="p">.</span><span·class="w">
  
275 </span><span·class="c1">%%·Mandatory·callback·functions</span><span·class="w">275 </span><span·class="c1">%%·Mandatory·callback·functions</span><span·class="w">
276 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="2411340335-25">(</span><span·class="p">_</span><span·class="n">Reason</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·7bab113df296b392476974caaf24bf5da80a15709610825716932174febc4591·...·]-25">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">276 </span><span·class="nf">terminate</span><span·class="p"·data-group-id="4320203946-25">(</span><span·class="p">_</span><span·class="n">Reason</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·cl[·...·truncated·by·diffoscope;·len:·60,·SHA:·0fd21219b368b5f4ffe8c82638b499a3dae6f29627b99abf868e050d0508a5e1·...·]-25">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
277 ····</span><span·class="ss">void</span><span·class="p">.</span><span·class="w">277 ····</span><span·class="ss">void</span><span·class="p">.</span><span·class="w">
278 </span><span·class="nf">code_change</span><span·class="p"·data-group-id="2411340335-26">(</span><span·class="p">_</span><span·class="n">Vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·109,·SHA:·aa3f1cc39f23f7d9123c76fdb6c2096301fc96bc41ed83d07d405e3f36c24ff7·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">278 </span><span·class="nf">code_change</span><span·class="p"·data-group-id="4320203946-26">(</span><span·class="p">_</span><span·class="n">Vsn</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p">,</span><span·cl[·...·truncated·by·diffoscope;·len:·109,·SHA:·5d7843e706b9d8cff5822ec3eebeb3995de26e95228d21223d5b7aa7621f1d3e·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
279 ····</span><span·class="p"·data-group-id="2411340335-27">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">State</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="2411340335-27">}</span><span·class="p">.</span><span·class="w">279 ····</span><span·class="p"·data-group-id="4320203946-27">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">State</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="4320203946-27">}</span><span·class="p">.</span><span·class="w">
280 </span><span·class="nf">init</span><span·class="p"·data-group-id="2411340335-28">(</span><span·class="p"·data-group-id="2411340335-29">[</span><span·class="p"·data-group-id="2411340335-29">]</span><span·class="p"·data-group-id="2411340335-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">280 </span><span·class="nf">init</span><span·class="p"·data-group-id="4320203946-28">(</span><span·class="p"·data-group-id="4320203946-29">[</span><span·class="p"·data-group-id="4320203946-29">]</span><span·class="p"·data-group-id="4320203946-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
281 ····</span><span·class="c1">%%·Set·the·initial·state·+·data.··Data·is·used·only·as·a·counter.</span><span·class="w">281 ····</span><span·class="c1">%%·Set·the·initial·state·+·data.··Data·is·used·only·as·a·counter.</span><span·class="w">
282 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">off</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">282 ····</span><span·class="n">State</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">off</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
283 ····</span><span·class="p"·data-group-id="2411340335-30">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">State</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="2411340335-30">}</span><span·class="p">.</span><span·class="w">283 ····</span><span·class="p"·data-group-id="4320203946-30">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">State</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="4320203946-30">}</span><span·class="p">.</span><span·class="w">
284 </span><span·class="nf">callback_mode</span><span·class="p"·data-group-id="2411340335-31">(</span><span·class="p"·data-group-id="2411340335-31">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">state_functions</span><span·class="p">.</span><span·class="w">284 </span><span·class="nf">callback_mode</span><span·class="p"·data-group-id="4320203946-31">(</span><span·class="p"·data-group-id="4320203946-31">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">state_functions</span><span·class="p">.</span><span·class="w">
  
285 </span><span·class="c1">%%%·state·callback(s)</span><span·class="w">285 </span><span·class="c1">%%%·state·callback(s)</span><span·class="w">
  
286 </span><span·class="nf">off</span><span·class="p"·data-group-id="2411340335-32">(</span><span·class="p"·data-group-id="2411340335-33">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="2411340335-33">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·146,·SHA:·cfbf410837ebf38de7efa6f35e28e84052d2c3e9dd3011dccd7a2f2f2389356e·...·]-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">286 </span><span·class="nf">off</span><span·class="p"·data-group-id="4320203946-32">(</span><span·class="p"·data-group-id="4320203946-33">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="4320203946-33">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·146,·SHA:·136fff302bc2061ef0ac8ea8b500e5e7510e24ffe4304b7b7d8d2268d95d026a·...·]-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
287 ····</span><span·class="c1">%%·Go·to·&#39;on&#39;,·increment·count·and·reply</span><span·class="w">287 ····</span><span·class="c1">%%·Go·to·&#39;on&#39;,·increment·count·and·reply</span><span·class="w">
288 ····</span><span·class="c1">%%·that·the·resulting·status·is·&#39;on&#39;</span><span·class="w">288 ····</span><span·class="c1">%%·that·the·resulting·status·is·&#39;on&#39;</span><span·class="w">
289 ····</span><span·class="p"·data-group-id="2411340335-34">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="ss">on</span><span·class="p">,</span><span·class="n">Data</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·362,·SHA:·5f3b56e4e75525988603cf321463b1df423f041aaaa3e7ff53e208c615ea570f·...·]-34">}</span><span·class="p">;</span><span·class="w">289 ····</span><span·class="p"·data-group-id="4320203946-34">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="ss">on</span><span·class="p">,</span><span·class="n">Data</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·362,·SHA:·a1925d330c7eb7dc11669b63bc90cc05698746b0ff3b9be11f3029a61cb1351a·...·]-34">}</span><span·class="p">;</span><span·class="w">
290 </span><span·class="nf">off</span><span·class="p"·data-group-id="2411340335-37">(</span><span·class="n">EventType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventContent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="2411340335-37">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">290 </span><span·class="nf">off</span><span·class="p"·data-group-id="4320203946-37">(</span><span·class="n">EventType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventContent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="4320203946-37">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
291 ····</span><span·class="nf">handle_event</span><span·class="p"·data-group-id="2411340335-38">(</span><span·class="n">EventType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventContent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="2411340335-38">)</span><span·class="p">.</span><span·class="w">291 ····</span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4320203946-38">(</span><span·class="n">EventType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventContent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="4320203946-38">)</span><span·class="p">.</span><span·class="w">
  
292 </span><span·class="nf">on</span><span·class="p"·data-group-id="2411340335-39">(</span><span·class="p"·data-group-id="2411340335-40">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="2411340335-40">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·146,·SHA:·cfbf410837ebf38de7efa6f35e28e84052d2c3e9dd3011dccd7a2f2f2389356e·...·]-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">292 </span><span·class="nf">on</span><span·class="p"·data-group-id="4320203946-39">(</span><span·class="p"·data-group-id="4320203946-40">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="4320203946-40">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·146,·SHA:·136fff302bc2061ef0ac8ea8b500e5e7510e24ffe4304b7b7d8d2268d95d026a·...·]-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
293 ····</span><span·class="c1">%%·Go·to·&#39;off&#39;·and·reply·that·the·resulting·status·is·&#39;off&#39;</span><span·class="w">293 ····</span><span·class="c1">%%·Go·to·&#39;off&#39;·and·reply·that·the·resulting·status·is·&#39;off&#39;</span><span·class="w">
294 ····</span><span·class="p"·data-group-id="2411340335-41">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="ss">off</span><span·class="p">,</span><span·class="n">Data</span><span·class="p">,</span><span·class="p"·data-group-id="2411340335-42">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·315,·SHA:·53dcc15f988850202bb1f7555d7778d9ffa48cd6369fdcf5afdb3d613cc38beb·...·]-41">}</span><span·class="p">;</span><span·class="w">294 ····</span><span·class="p"·data-group-id="4320203946-41">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="ss">off</span><span·class="p">,</span><span·class="n">Data</span><span·class="p">,</span><span·class="p"·data-group-id="4320203946-42">[</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·315,·SHA:·755ea1cf3879f11693db407f06bde6307b6f2c6e4b08dd30a056239452c7a1ce·...·]-41">}</span><span·class="p">;</span><span·class="w">
295 </span><span·class="nf">on</span><span·class="p"·data-group-id="2411340335-44">(</span><span·class="n">EventType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventContent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="2411340335-44">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">295 </span><span·class="nf">on</span><span·class="p"·data-group-id="4320203946-44">(</span><span·class="n">EventType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventContent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="4320203946-44">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
296 ····</span><span·class="nf">handle_event</span><span·class="p"·data-group-id="2411340335-45">(</span><span·class="n">EventType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventContent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="2411340335-45">)</span><span·class="p">.</span><span·class="w">296 ····</span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4320203946-45">(</span><span·class="n">EventType</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventContent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="4320203946-45">)</span><span·class="p">.</span><span·class="w">
  
297 </span><span·class="c1">%%·Handle·events·common·to·all·states</span><span·class="w">297 </span><span·class="c1">%%·Handle·events·common·to·all·states</span><span·class="w">
298 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="2411340335-46">(</span><span·class="p"·data-group-id="2411340335-47">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="2411340335-47">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·151,·SHA:·21873936d20bb4668cee455071e61668d35f5c1c68e09cfbb808d879209ef3e3·...·]-46">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">298 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4320203946-46">(</span><span·class="p"·data-group-id="4320203946-47">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="4320203946-47">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·151,·SHA:·ee512943d3029c38afaf651dfe2954968994e3e30b1c93ce085cc1f5d38648f4·...·]-46">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
299 ····</span><span·class="c1">%%·Reply·with·the·current·count</span><span·class="w">299 ····</span><span·class="c1">%%·Reply·with·the·current·count</span><span·class="w">
300 ····</span><span·class="p"·data-group-id="2411340335-48">{</span><span·class="ss">keep_state</span><span·class="p">,</span><span·class="n">Data</span><span·class="p">,</span><span·class="p"·data-group-id="2411340335-49">[</span><span·class="p"·data-group-id="2411340335-50">{</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·264,·SHA:·dd291dd7e564660e611142cb40def0c1f14713d6dd0939bd08ee296574b4f380·...·]-48">}</span><span·class="p">;</span><span·class="w">300 ····</span><span·class="p"·data-group-id="4320203946-48">{</span><span·class="ss">keep_state</span><span·class="p">,</span><span·class="n">Data</span><span·class="p">,</span><span·class="p"·data-group-id="4320203946-49">[</span><span·class="p"·data-group-id="4320203946-50">{</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·264,·SHA:·858d09a4be6f7f7be1fd9075f5b484efb79684b27e48d2f5b7c821372848914a·...·]-48">}</span><span·class="p">;</span><span·class="w">
301 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="2411340335-51">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="2411340335-51">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">301 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4320203946-51">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Data</span><span·class="p"·data-group-id="4320203946-51">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
302 ····</span><span·class="c1">%%·Ignore·all·other·events</span><span·class="w">302 ····</span><span·class="c1">%%·Ignore·all·other·events</span><span·class="w">
303 ····</span><span·class="p"·data-group-id="2411340335-52">{</span><span·class="ss">keep_state</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="2411340335-52">}</span><span·class="p">.</span></code></pre><p>The·following·is·a·shell·session·when·running·it:</p><[·...·truncated·by·diffoscope;·len:·271,·SHA:·82f99ed4bc2cc7533d555d4b914d26c6e6cd7eecd9734d321d3a93f0a609e185·...·]-1">)</span><span·class="p">.</span><span·class="w">303 ····</span><span·class="p"·data-group-id="4320203946-52">{</span><span·class="ss">keep_state</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="4320203946-52">}</span><span·class="p">.</span></code></pre><p>The·following·is·a·shell·session·when·running·it:</p><[·...·truncated·by·diffoscope;·len:·271,·SHA:·a90bb4bb798a16bf75d482c00c1b29cd5a054dec9671668ba6d022fbc025c4ea·...·]-1">)</span><span·class="p">.</span><span·class="w">
304 </span><span·class="p"·data-group-id="4921097254-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.36</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="4921097254-2">}</span><span·class="gp·unselectable">304 </span><span·class="p"·data-group-id="0306295085-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.36</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="0306295085-2">}</span><span·class="gp·unselectable">
305 2&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">get_count</span><span·class="p"·data-group-id="4921097254-3">(</span><span·class="p"·data-group-id="4921097254-3">)</span><span·class="p">.</span><span·class="w">305 2&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">get_count</span><span·class="p"·data-group-id="0306295085-3">(</span><span·class="p"·data-group-id="0306295085-3">)</span><span·class="p">.</span><span·class="w">
306 </span><span·class="mi">0</span><span·class="gp·unselectable">306 </span><span·class="mi">0</span><span·class="gp·unselectable">
307 3&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">push</span><span·class="p"·data-group-id="4921097254-4">(</span><span·class="p"·data-group-id="4921097254-4">)</span><span·class="p">.</span><span·class="w">307 3&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">push</span><span·class="p"·data-group-id="0306295085-4">(</span><span·class="p"·data-group-id="0306295085-4">)</span><span·class="p">.</span><span·class="w">
308 </span><span·class="ss">on</span><span·class="gp·unselectable">308 </span><span·class="ss">on</span><span·class="gp·unselectable">
309 4&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">get_count</span><span·class="p"·data-group-id="4921097254-5">(</span><span·class="p"·data-group-id="4921097254-5">)</span><span·class="p">.</span><span·class="w">309 4&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">get_count</span><span·class="p"·data-group-id="0306295085-5">(</span><span·class="p"·data-group-id="0306295085-5">)</span><span·class="p">.</span><span·class="w">
310 </span><span·class="mi">1</span><span·class="gp·unselectable">310 </span><span·class="mi">1</span><span·class="gp·unselectable">
311 5&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">push</span><span·class="p"·data-group-id="4921097254-6">(</span><span·class="p"·data-group-id="4921097254-6">)</span><span·class="p">.</span><span·class="w">311 5&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">push</span><span·class="p"·data-group-id="0306295085-6">(</span><span·class="p"·data-group-id="0306295085-6">)</span><span·class="p">.</span><span·class="w">
312 </span><span·class="ss">off</span><span·class="gp·unselectable">312 </span><span·class="ss">off</span><span·class="gp·unselectable">
313 6&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">get_count</span><span·class="p"·data-group-id="4921097254-7">(</span><span·class="p"·data-group-id="4921097254-7">)</span><span·class="p">.</span><span·class="w">313 6&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">get_count</span><span·class="p"·data-group-id="0306295085-7">(</span><span·class="p"·data-group-id="0306295085-7">)</span><span·class="p">.</span><span·class="w">
314 </span><span·class="mi">1</span><span·class="gp·unselectable">314 </span><span·class="mi">1</span><span·class="gp·unselectable">
315 7&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="4921097254-8">(</span><span·class="p"·data-group-id="4921097254-8">)</span><span·class="p">.</span><span·class="w">315 7&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="0306295085-8">(</span><span·class="p"·data-group-id="0306295085-8">)</span><span·class="p">.</span><span·class="w">
316 </span><span·class="ss">ok</span><span·class="gp·unselectable">316 </span><span·class="ss">ok</span><span·class="gp·unselectable">
317 8&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">push</span><span·class="p"·data-group-id="4921097254-9">(</span><span·class="p"·data-group-id="4921097254-9">)</span><span·class="p">.</span><span·class="w">317 8&gt;·</span><span·class="nc">pushbutton</span><span·class="p">:</span><span·class="nf">push</span><span·class="p"·data-group-id="0306295085-9">(</span><span·class="p"·data-group-id="0306295085-9">)</span><span·class="p">.</span><span·class="w">
318 </span><span·class="gt">**·exception·exit:·{noproc,{gen_statem,call,[pushbutton_statem,push,infinity]}}318 </span><span·class="gt">**·exception·exit:·{noproc,{gen_statem,call,[pushbutton_statem,push,infinity]}}
319 ·····in·function··gen:do_for_proc/2·(gen.erl,·line·261)319 ·····in·function··gen:do_for_proc/2·(gen.erl,·line·261)
320 ·····in·call·from·gen_statem:call/3·(gen_statem.erl,·line·386)</span></code></pre><p>To·compare·styles,·here·follows·the·same·example·using320 ·····in·call·from·gen_statem:call/3·(gen_statem.erl,·line·386)</span></code></pre><p>To·compare·styles,·here·follows·the·same·example·using
321 <a·href="#t:callback_mode/0"><em>callback·mode</em></a>·<code·class="inline">handle_event_function</code>,·or·rather·the321 <a·href="#t:callback_mode/0"><em>callback·mode</em></a>·<code·class="inline">handle_event_function</code>,·or·rather·the
322 code·to·replace·after·function·<a·href="#c:init/1"><code·class="inline">init/1</code></a>·of·the·<code·class="inline">pushbutton.erl</code>322 code·to·replace·after·function·<a·href="#c:init/1"><code·class="inline">init/1</code></a>·of·the·<code·class="inline">pushbutton.erl</code>
323 example·file·above:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">callback_mode</span><span·class="p"·data-group-id="4037986591-1">(</span><span·class="p"·data-group-id="4037986591-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">handle_event_function</span><span·class="p">.</span><span·class="w">323 example·file·above:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">callback_mode</span><span·class="p"·data-group-id="3180755616-1">(</span><span·class="p"·data-group-id="3180755616-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">handle_event_function</span><span·class="p">.</span><span·class="w">
  
324 </span><span·class="c1">%%%·state·callback(s)</span><span·class="w">324 </span><span·class="c1">%%%·state·callback(s)</span><span·class="w">
  
325 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4037986591-2">(</span><span·class="p"·data-group-id="4037986591-3">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="4037986591-3">}</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·218,·SHA:·2627173e1489120ceff46bb8fc99a8ce8deec316a39db182bfc31a6f7ed65bc2·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">325 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="3180755616-2">(</span><span·class="p"·data-group-id="3180755616-3">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="3180755616-3">}</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·218,·SHA:·a9963b352bfc14efb228729c4d0f8eb3cf5bd2340fb56e693b0075fbdfed3367·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
326 ····</span><span·class="c1">%%·Go·to·&#39;on&#39;,·increment·count·and·reply</span><span·class="w">326 ····</span><span·class="c1">%%·Go·to·&#39;on&#39;,·increment·count·and·reply</span><span·class="w">
327 ····</span><span·class="c1">%%·that·the·resulting·status·is·&#39;on&#39;</span><span·class="w">327 ····</span><span·class="c1">%%·that·the·resulting·status·is·&#39;on&#39;</span><span·class="w">
328 ····</span><span·class="p"·data-group-id="4037986591-4">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="ss">on</span><span·class="p">,</span><span·class="n">Data</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·357,·SHA:·37d2c7bb14c7e423df40943d7a691c68204277d92b10686b14074e733a79f307·...·]-4">}</span><span·class="p">;</span><span·class="w">328 ····</span><span·class="p"·data-group-id="3180755616-4">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="ss">on</span><span·class="p">,</span><span·class="n">Data</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·357,·SHA:·c9d9364dc47117327f423574e50c9b72d649531fe4a212f6b281eaf8c5674fb3·...·]-4">}</span><span·class="p">;</span><span·class="w">
329 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4037986591-7">(</span><span·class="p"·data-group-id="4037986591-8">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="4037986591-8">}</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·217,·SHA:·30abf3d24504953e602f22e458f35e27cb4ff15feb9635424fa9d4642b6e5e7c·...·]-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">329 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="3180755616-7">(</span><span·class="p"·data-group-id="3180755616-8">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="3180755616-8">}</span><span·class="p">,</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·217,·SHA:·cd39e3c5a447009c567de4c5b7eaeb8b8ce90df2e2b97f35c50b7bb6107b3eed·...·]-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
330 ····</span><span·class="c1">%%·Go·to·&#39;off&#39;·and·reply·that·the·resulting·status·is·&#39;off&#39;</span><span·class="w">330 ····</span><span·class="c1">%%·Go·to·&#39;off&#39;·and·reply·that·the·resulting·status·is·&#39;off&#39;</span><span·class="w">
331 ····</span><span·class="p"·data-group-id="4037986591-9">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="ss">off</span><span·class="p">,</span><span·class="n">Data</span><span·class="p">,</span><span·class="p"·data-group-id="4037986591-10">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·314,·SHA:·435f4e8db0d53ba71999d05f8f56831692c1e0cd946dc69450d41b1a3dbba84c·...·]-9">}</span><span·class="p">;</span><span·class="w">331 ····</span><span·class="p"·data-group-id="3180755616-9">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="ss">off</span><span·class="p">,</span><span·class="n">Data</span><span·class="p">,</span><span·class="p"·data-group-id="3180755616-10">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·314,·SHA:·2c111f082cba4c7da84aa856fdd6bedd9877b24e016de296540b33fde5e819cf·...·]-9">}</span><span·class="p">;</span><span·class="w">
332 </span><span·class="c1">%%</span><span·class="w">332 </span><span·class="c1">%%</span><span·class="w">
333 </span><span·class="c1">%%·Event·handling·common·to·all·states</span><span·class="w">333 </span><span·class="c1">%%·Event·handling·common·to·all·states</span><span·class="w">
334 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4037986591-12">(</span><span·class="p"·data-group-id="4037986591-13">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="4037986591-13">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·227,·SHA:·9d124163cb843c114b7df33d8cdfd3799db21a39179f70806828e2c9da373983·...·]-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">334 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="3180755616-12">(</span><span·class="p"·data-group-id="3180755616-13">{</span><span·class="ss">call</span><span·class="p">,</span><span·class="n">From</span><span·class="p"·data-group-id="3180755616-13">}</span><span·class="p">,</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·227,·SHA:·3d0f05547aee7e7a415fc162f3558a67406033499c784e91d16a83335f5c89f3·...·]-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
335 ····</span><span·class="c1">%%·Reply·with·the·current·count</span><span·class="w">335 ····</span><span·class="c1">%%·Reply·with·the·current·count</span><span·class="w">
336 ····</span><span·class="p"·data-group-id="4037986591-14">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="n">State</span><span·class="p">,</span><span·class="n">Data</span><span·class="p">,</span><span·class="p"·data-group-id="4037986591-15">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·316,·SHA:·84391759e2f414b3869e68b062bbef3351586959b0eb00df5ff258537ca97b7d·...·]-14">}</span><span·class="p">;</span><span·class="w">336 ····</span><span·class="p"·data-group-id="3180755616-14">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="n">State</span><span·class="p">,</span><span·class="n">Data</span><span·class="p">,</span><span·class="p"·data-group-id="3180755616-15">[</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·316,·SHA:·a5819f97daeea22608faae0d608f6d3e9242ce7a7274a18b7e1911dc41c33376·...·]-14">}</span><span·class="p">;</span><span·class="w">
337 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="4037986591-17">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·55,·SHA:·fea96304d8ac854d90b5419bfd729e7a9219ec3f7699d8d8f14c1d03bdf4117e·...·]-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">337 </span><span·class="nf">handle_event</span><span·class="p"·data-group-id="3180755616-17">(</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·55,·SHA:·77315a118ded64c25eeee4ded5d2e0d5d5d01009bd7c1bba1e880c745fdd0f2e·...·]-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
338 ····</span><span·class="c1">%%·Ignore·all·other·events</span><span·class="w">338 ····</span><span·class="c1">%%·Ignore·all·other·events</span><span·class="w">
339 ····</span><span·class="p"·data-group-id="4037986591-18">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="n">State</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="4037986591-18">}</span><span·class="p">.</span></code></pre><h2·id="module-see-also"·class="section-heading">339 ····</span><span·class="p"·data-group-id="3180755616-18">{</span><span·class="ss">next_state</span><span·class="p">,</span><span·class="n">State</span><span·class="p">,</span><span·class="n">Data</span><span·class="p"·data-group-id="3180755616-18">}</span><span·class="p">.</span></code></pre><h2·id="module-see-also"·class="section-heading">
340 ··<a·href="#module-see-also"·class="hover-link">340 ··<a·href="#module-see-also"·class="hover-link">
341 ····<i·class="ri-link-m"·aria-hidden="true"></i>341 ····<i·class="ri-link-m"·aria-hidden="true"></i>
342 ··</a>342 ··</a>
343 ··<span·class="text">See·Also</span>343 ··<span·class="text">See·Also</span>
344 </h2>344 </h2>
345 <p><a·href="gen_event.html"><code·class="inline">gen_event</code></a>,·<a·href="gen_fsm.html"><code·class="inline">gen_fsm</code></a>,·<a·href="gen_server.html"><code·class="inline">gen_server</code></a>,·<a·href="proc_lib.html"><code·class="inline">proc_lib</code></a>,·<a·href="supervisor.html"><code·class="inline">supervisor</code></a>,345 <p><a·href="gen_event.html"><code·class="inline">gen_event</code></a>,·<a·href="gen_fsm.html"><code·class="inline">gen_fsm</code></a>,·<a·href="gen_server.html"><code·class="inline">gen_server</code></a>,·<a·href="proc_lib.html"><code·class="inline">proc_lib</code></a>,·<a·href="supervisor.html"><code·class="inline">supervisor</code></a>,
346 <a·href="sys.html"><code·class="inline">sys</code></a>.</p>346 <a·href="sys.html"><code·class="inline">sys</code></a>.</p>
Offset 3213, 23 lines modifiedOffset 3213, 23 lines modified
3213 <a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·return·value·and·how·its·status3213 <a·href="sys.html#get_status/1"><code·class="inline">sys:get_status/1,2</code></a>·return·value·and·how·its·status
3214 appears·in·termination·error·logs·exports·an·instance·of3214 appears·in·termination·error·logs·exports·an·instance·of
3215 <a·href="#c:format_status/1"><code·class="inline">format_status/1</code></a>,·which·will·get·a·map·<code·class="inline">Status</code>·that3215 <a·href="#c:format_status/1"><code·class="inline">format_status/1</code></a>,·which·will·get·a·map·<code·class="inline">Status</code>·that
3216 describes·the·current·states·of·the·<code·class="inline">gen_statem</code>,·and·shall·return·a·map3216 describes·the·current·states·of·the·<code·class="inline">gen_statem</code>,·and·shall·return·a·map
3217 <code·class="inline">NewStatus</code>·containing·the·same·keys·as·the·input·map,·but·it·may·transform·some3217 <code·class="inline">NewStatus</code>·containing·the·same·keys·as·the·input·map,·but·it·may·transform·some
3218 values.</p><p>One·use·case·for·this·function·is·to·return·compact·alternative·state3218 values.</p><p>One·use·case·for·this·function·is·to·return·compact·alternative·state
3219 representations·to·avoid·having·large·state·terms·printed·in·log·files.·Another3219 representations·to·avoid·having·large·state·terms·printed·in·log·files.·Another
3220 is·to·hide·sensitive·data·from·being·written·to·the·error·log.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">format_status</span><span·class="p"·data-group-id="9505322055-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="9505322055-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3220 is·to·hide·sensitive·data·from·being·written·to·the·error·log.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">format_status</span><span·class="p"·data-group-id="4032723189-1">(</span><span·class="n">Status</span><span·class="p"·data-group-id="4032723189-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3221 ··</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="9505322055-2">(</span><span·class="w">3221 ··</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="4032723189-2">(</span><span·class="w">
3222 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="9505322055-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="9505322055-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3222 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="4032723189-3">(</span><span·class="ss">state</span><span·class="p">,</span><span·class="n">State</span><span·class="p"·data-group-id="4032723189-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3223 ············</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">remove</span><span·class="p"·data-group-id="9505322055-4">(</span><span·class="ss">private_key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="9505322055-4">)</span><span·class="p">;</span><span·class="w">3223 ············</span><span·class="nc">maps</span><span·class="p">:</span><span·class="nf">remove</span><span·class="p"·data-group-id="4032723189-4">(</span><span·class="ss">private_key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="4032723189-4">)</span><span·class="p">;</span><span·class="w">
3224 ·······</span><span·class="p"·data-group-id="9505322055-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="9505322055-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Pass</[·...·truncated·by·diffoscope;·len:·99,·SHA:·3211780b5751d8cf10cf28c9c665ef92683b613aacae874e84f9131b17c2b1f5·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3224 ·······</span><span·class="p"·data-group-id="4032723189-5">(</span><span·class="ss">message</span><span·class="p">,</span><span·class="p"·data-group-id="4032723189-6">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Pass</[·...·truncated·by·diffoscope;·len:·99,·SHA:·6dc94fa7c37f071d69d0ea4ac5df4035cd116e29e869315f5306f056f7d4226d·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3225 ············</span><span·class="p"·data-group-id="9505322055-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">removed</span><span·class="p"·data-group-id="9505322055-7">}</span><span·class="p">;</span><span·class="w">3225 ············</span><span·class="p"·data-group-id="4032723189-7">{</span><span·class="ss">password</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">removed</span><span·class="p"·data-group-id="4032723189-7">}</span><span·class="p">;</span><span·class="w">
3226 ·······</span><span·class="p"·data-group-id="9505322055-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="9505322055-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">3226 ·······</span><span·class="p"·data-group-id="4032723189-8">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Value</span><span·class="p"·data-group-id="4032723189-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
3227 ············</span><span·class="n">Value</span><span·class="w">3227 ············</span><span·class="n">Value</span><span·class="w">
3228 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Status</span><span·class="p"·data-group-id="9505322055-2">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·callback·is·optional,·so·a·callback·module·does·not·need·to·export·it.3228 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Status</span><span·class="p"·data-group-id="4032723189-2">)</span><span·class="p">.</span></code></pre><blockquote><h4·class="info">Note</h4><p>This·callback·is·optional,·so·a·callback·module·does·not·need·to·export·it.
3229 The·<code·class="inline">gen_statem</code>·module·provides·a·default·implementation·of·this·function3229 The·<code·class="inline">gen_statem</code>·module·provides·a·default·implementation·of·this·function
3230 that·returns·<code·class="inline">{State,Data}</code>.</p><p>If·this·callback·is·exported·but·fails,·to·hide·possibly·sensitive·data,·the3230 that·returns·<code·class="inline">{State,Data}</code>.</p><p>If·this·callback·is·exported·but·fails,·to·hide·possibly·sensitive·data,·the
3231 default·function·will·instead·return·<code·class="inline">{State,Info}</code>,·where·<code·class="inline">Info</code>·says·nothing3231 default·function·will·instead·return·<code·class="inline">{State,Info}</code>,·where·<code·class="inline">Info</code>·says·nothing
3232 but·the·fact·that·<a·href="#c:format_status/2"><code·class="inline">format_status/2</code></a>·has·crashed.</p></blockquote>3232 but·the·fact·that·<a·href="#c:format_status/2"><code·class="inline">format_status/2</code></a>·has·crashed.</p></blockquote>
3233 ··</section>3233 ··</section>
Max diff block lines reached; 4490/58489 bytes (7.68%) of diff not shown.
751 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/introduction.html
    
Offset 185, 15 lines modifiedOffset 185, 15 lines modified
185 ······<p·class="built-using">185 ······<p·class="built-using">
186 ········Built·using186 ········Built·using
187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the187 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>188 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
189 ······</p>189 ······</p>
190 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>190 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
191 ····</footer>191 ····</footer>
192 ··</div>192 ··</div>
193 </main>193 </main>
194 </div>194 </div>
195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>195 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
196 <script>196 <script>
197 ··document.addEventListener("DOMContentLoaded",·function·()·{197 ··document.addEventListener("DOMContentLoaded",·function·()·{
727 B
html2text {}
Max HTML report size reached
176 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/io.html
Max HTML report size reached
14.6 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/io_lib.html
    
Offset 1028, 16 lines modifiedOffset 1028, 16 lines modified
1028 <p>Tries·to·read·<code·class="inline">String</code>·in·accordance·with·the·control·sequences·in·<code·class="inline">Format</code>.</p><p>For·a·detailed·description·of·the·available·formatting·options,·see·<a·href="io.html#fread/3"><code·class="inline">io:fread/3</code></a>.1028 <p>Tries·to·read·<code·class="inline">String</code>·in·accordance·with·the·control·sequences·in·<code·class="inline">Format</code>.</p><p>For·a·detailed·description·of·the·available·formatting·options,·see·<a·href="io.html#fread/3"><code·class="inline">io:fread/3</code></a>.
1029 It·is·assumed·that·<code·class="inline">String</code>·contains·whole·lines.</p><p>The·function·returns:</p><ul><li><p><strong><code·class="inline">{ok,·InputList,·LeftOverChars}</code></strong>·-·The·string·was·read.·<code·class="inline">InputList</code>·is·the1029 It·is·assumed·that·<code·class="inline">String</code>·contains·whole·lines.</p><p>The·function·returns:</p><ul><li><p><strong><code·class="inline">{ok,·InputList,·LeftOverChars}</code></strong>·-·The·string·was·read.·<code·class="inline">InputList</code>·is·the
1030 list·of·successfully·matched·and·read·items,·and·<code·class="inline">LeftOverChars</code>·are·the·input1030 list·of·successfully·matched·and·read·items,·and·<code·class="inline">LeftOverChars</code>·are·the·input
1031 characters·not·used.</p></li><li><p><strong><code·class="inline">{more,·RestFormat,·Nchars,·InputStack}</code></strong>·-·The·string·was·read,·but·more1031 characters·not·used.</p></li><li><p><strong><code·class="inline">{more,·RestFormat,·Nchars,·InputStack}</code></strong>·-·The·string·was·read,·but·more
1032 input·is·needed·to·complete·the·original·format·string.·<code·class="inline">RestFormat</code>·is·the1032 input·is·needed·to·complete·the·original·format·string.·<code·class="inline">RestFormat</code>·is·the
1033 remaining·format·string,·<code·class="inline">Nchars</code>·is·the·number·of·characters·scanned,·and1033 remaining·format·string,·<code·class="inline">Nchars</code>·is·the·number·of·characters·scanned,·and
1034 <code·class="inline">InputStack</code>·is·the·reversed·list·of·inputs·matched·up·to·that·point.</p></li><li><p><strong><code·class="inline">{error,·What}</code></strong>·-·The·read·operation·failed·and·parameter·<code·class="inline">What</code>·gives·a1034 <code·class="inline">InputStack</code>·is·the·reversed·list·of·inputs·matched·up·to·that·point.</p></li><li><p><strong><code·class="inline">{error,·What}</code></strong>·-·The·read·operation·failed·and·parameter·<code·class="inline">What</code>·gives·a
1035 hint·about·the·error.</p></li></ul><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">fread</span><span·class="p"·data-group-id="8125682468-1">(</span><span·class="s">&quot;~f~f~f&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;15.6·17.3e-6·24.5&quot;</span><span·class="p"·data-group-id="8125682468-1">)</span><span·class="p">.</span><span·class="w">1035 hint·about·the·error.</p></li></ul><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">fread</span><span·class="p"·data-group-id="0809475456-1">(</span><span·class="s">&quot;~f~f~f&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;15.6·17.3e-6·24.5&quot;</span><span·class="p"·data-group-id="0809475456-1">)</span><span·class="p">.</span><span·class="w">
1036 </span><span·class="p"·data-group-id="8125682468-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8125682468-3">[</span><span·class="mf">15.6</span><span·class="p">,</span><span·class="mf">1.73e-5</span><span·class="p">,</span><span·class="mf">24.5</s[·...·truncated·by·diffoscope;·len:·228,·SHA:·61611c9e00862fc5c93b49b4004bada76849bf1bb67ced6bee97a2052ee7e437·...·]-2">}</span></code></pre>1036 </span><span·class="p"·data-group-id="0809475456-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0809475456-3">[</span><span·class="mf">15.6</span><span·class="p">,</span><span·class="mf">1.73e-5</span><span·class="p">,</span><span·class="mf">24.5</s[·...·truncated·by·diffoscope;·len:·228,·SHA:·0c0379b3d157b506a9bda0328bb1ad0550be98f87321e6567c098f47ce2fad4c·...·]-2">}</span></code></pre>
1037 ··</section>1037 ··</section>
1038 </section>1038 </section>
1039 <section·class="detail"·id="fread/3">1039 <section·class="detail"·id="fread/3">
  
1040 ··<div·class="detail-header">1040 ··<div·class="detail-header">
1041 ····<a·href="#fread/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1041 ····<a·href="#fread/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1042 ······<i·class="ri-link-m"·aria-hidden="true"></i>1042 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1534, 19 lines modifiedOffset 1534, 19 lines modified
1534 ······</div>1534 ······</div>
  
1535 <p>Returns·a·character·list·that·represents·<code·class="inline">Term</code>.·Option·<code·class="inline">Depth</code>·controls·the1535 <p>Returns·a·character·list·that·represents·<code·class="inline">Term</code>.·Option·<code·class="inline">Depth</code>·controls·the
1536 depth·of·the·structures·written.</p><p>When·the·specified·depth·is·reached,·everything·below·this·level·is·replaced·by1536 depth·of·the·structures·written.</p><p>When·the·specified·depth·is·reached,·everything·below·this·level·is·replaced·by
1537 &quot;<code·class="inline">...</code>&quot;.</p><p><code·class="inline">Depth</code>·defaults·to·-1,·which·means·no·limitation.·Option·<code·class="inline">CharsLimit</code>·puts·a1537 &quot;<code·class="inline">...</code>&quot;.</p><p><code·class="inline">Depth</code>·defaults·to·-1,·which·means·no·limitation.·Option·<code·class="inline">CharsLimit</code>·puts·a
1538 soft·limit·on·the·number·of·characters·returned.·When·the·number·of·characters·is1538 soft·limit·on·the·number·of·characters·returned.·When·the·number·of·characters·is
1539 reached,·remaining·structures·are·replaced·by·&quot;<code·class="inline">...</code>&quot;.·<code·class="inline">CharsLimit</code>·defaults·to·-1,1539 reached,·remaining·structures·are·replaced·by·&quot;<code·class="inline">...</code>&quot;.·<code·class="inline">CharsLimit</code>·defaults·to·-1,
1540 which·means·no·limit·on·the·number·of·characters·returned.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">flatten</span><span·class="p"·data-group-id="8026243483-1">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8026243483-2">(</span><span·class="p"·data-group-id="8026243483-3">{</span><span·class="mi">1</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·836,·SHA:·7eb752fb333c0be4f7f8ac11e0c91457fa2509c564e1df96aa8edb78d43a096a·...·]3-1">)</span><span·class="p">.</span><span·class="w">1540 which·means·no·limit·on·the·number·of·characters·returned.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">flatten</span><span·class="p"·data-group-id="9605570413-1">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="9605570413-2">(</span><span·class="p"·data-group-id="9605570413-3">{</span><span·class="mi">1</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·836,·SHA:·20483832d3ff84936a5760f1bbf8ab1f06a62f30b4895583da844d8b10b1c8f4·...·]3-1">)</span><span·class="p">.</span><span·class="w">
1541 </span><span·class="s">&quot;{1,[2],[3],[4,5],6,7,8,9}&quot;</span><span·class="gp·unselectable">1541 </span><span·class="s">&quot;{1,[2],[3],[4,5],6,7,8,9}&quot;</span><span·class="gp·unselectable">
1542 2&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">flatten</span><span·class="p"·data-group-id="8026243483-7">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8026243483-8">(</span><span·class="p"·data-group-id="8026243483-9">{</span><span·class="mi">1</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·915,·SHA:·137cc2f658ef7f4a184d3573759b7a1d752e1e7c2f33b5c896c345e3fe6ddad9·...·]3-7">)</span><span·class="p">.</span><span·class="w">1542 2&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">flatten</span><span·class="p"·data-group-id="9605570413-7">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="9605570413-8">(</span><span·class="p"·data-group-id="9605570413-9">{</span><span·class="mi">1</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·915,·SHA:·0eedc5837d3e6a129c07be51e3789d1b5babb838fa114add761ed6edc7014f94·...·]3-7">)</span><span·class="p">.</span><span·class="w">
1543 </span><span·class="s">&quot;{1,[2],[3],[...],...}&quot;</span><span·class="gp·unselectable">1543 </span><span·class="s">&quot;{1,[2],[3],[...],...}&quot;</span><span·class="gp·unselectable">
1544 3&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">flatten</span><span·class="p"·data-group-id="8026243483-13">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8026243483-14">(</span><span·class="p"·data-group-id="8026243483-15">{</span><span·class="p"·data-group-id="8026243483-[·...·truncated·by·diffoscope;·len:·1088,·SHA:·b8eab534a0ec2371107781c5d7db3c5b27ba0d48e3bcf71342249f9c8678cb6e·...·]3-13">)</span><span·class="p">.</span><span·class="w">1544 3&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">flatten</span><span·class="p"·data-group-id="9605570413-13">(</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="9605570413-14">(</span><span·class="p"·data-group-id="9605570413-15">{</span><span·class="p"·data-group-id="9605570413-[·...·truncated·by·diffoscope;·len:·1088,·SHA:·6851c096542110eb69fdb4f3c159476a852442037346f7a0732b1b1983ca8d7c·...·]3-13">)</span><span·class="p">.</span><span·class="w">
1545 </span><span·class="s">&quot;{[1,2|...],[4|...],...}&quot;</span></code></pre>1545 </span><span·class="s">&quot;{[1,2|...],[4|...],...}&quot;</span></code></pre>
1546 ··</section>1546 ··</section>
1547 </section>1547 </section>
1548 <section·class="detail"·id="write_atom/1">1548 <section·class="detail"·id="write_atom/1">
  
1549 ··<div·class="detail-header">1549 ··<div·class="detail-header">
1550 ····<a·href="#write_atom/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1550 ····<a·href="#write_atom/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1807, 15 lines modifiedOffset 1807, 15 lines modified
1807 ······<p·class="built-using">1807 ······<p·class="built-using">
1808 ········Built·using1808 ········Built·using
1809 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1809 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1810 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1810 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1811 ······</p>1811 ······</p>
1812 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1812 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1813 ····</footer>1813 ····</footer>
1814 ··</div>1814 ··</div>
1815 </main>1815 </main>
1816 </div>1816 </div>
1817 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1817 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1818 <script>1818 <script>
1819 ··document.addEventListener("DOMContentLoaded",·function·()·{1819 ··document.addEventListener("DOMContentLoaded",·function·()·{
613 B
html2text {}
Max HTML report size reached
186 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/io_protocol.html
Max HTML report size reached
30.1 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/json.html
    
Offset 909, 16 lines modifiedOffset 909, 16 lines modified
909 </h2>909 </h2>
910 <ul><li><code·class="inline">error(unexpected_end)</code>·if·<code·class="inline">Binary</code>·contains·incomplete·JSON·value</li><li><code·class="inline">error({invalid_byte,·Byte})</code>·if·<code·class="inline">Binary</code>·contains·unexpected·byte·or·invalid·UTF-8·byte</li><li><code·class="inline">error({invalid_sequence,·Bytes})</code>·if·<code·class="inline">Binary</code>·contains·invalid·UTF-8·escape</li></ul><h2·id="decode/1-example"·class="section-heading">910 <ul><li><code·class="inline">error(unexpected_end)</code>·if·<code·class="inline">Binary</code>·contains·incomplete·JSON·value</li><li><code·class="inline">error({invalid_byte,·Byte})</code>·if·<code·class="inline">Binary</code>·contains·unexpected·byte·or·invalid·UTF-8·byte</li><li><code·class="inline">error({invalid_sequence,·Bytes})</code>·if·<code·class="inline">Binary</code>·contains·invalid·UTF-8·escape</li></ul><h2·id="decode/1-example"·class="section-heading">
911 ··<a·href="#decode/1-example"·class="hover-link">911 ··<a·href="#decode/1-example"·class="hover-link">
912 ····<i·class="ri-link-m"·aria-hidden="true"></i>912 ····<i·class="ri-link-m"·aria-hidden="true"></i>
913 ··</a>913 ··</a>
914 ··<span·class="text">Example</span>914 ··<span·class="text">Example</span>
915 </h2>915 </h2>
916 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="0948498786-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;{\&quot;foo\&quot;:·1}&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0948498786-1">)</span><span·class="p">.</span><span·class="w">916 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="7333917479-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;{\&quot;foo\&quot;:·1}&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7333917479-1">)</span><span·class="p">.</span><span·class="w">
917 </span><span·class="p"·data-group-id="0948498786-2">#{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0[·...·truncated·by·diffoscope;·len:·9,·SHA:·99a06a18a3d37931e5feb8b200b479e046b7ad562ede7e73e920fd79160a3f39·...·]-2">}</span></code></pre>917 </span><span·class="p"·data-group-id="7333917479-2">#{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo&quot;</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="7[·...·truncated·by·diffoscope;·len:·9,·SHA:·a83a23256fc6cc6c67c5ee594f3620e4eeff46dec7e1b19d9b94fd7413bbff7b·...·]-2">}</span></code></pre>
918 ··</section>918 ··</section>
919 </section>919 </section>
920 <section·class="detail"·id="decode/3">920 <section·class="detail"·id="decode/3">
  
921 ··<div·class="detail-header">921 ··<div·class="detail-header">
922 ····<a·href="#decode/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">922 ····<a·href="#decode/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
923 ······<i·class="ri-link-m"·aria-hidden="true"></i>923 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 962, 17 lines modifiedOffset 962, 17 lines modified
962 </h2>962 </h2>
963 <ul><li><code·class="inline">error({invalid_byte,·Byte})</code>·if·<code·class="inline">Binary</code>·contains·unexpected·byte·or·invalid·UTF-8·byte</li><li><code·class="inline">error({invalid_sequence,·Bytes})</code>·if·<code·class="inline">Binary</code>·contains·invalid·UTF-8·escape</li><li><code·class="inline">error(unexpected_end)</code>·if·<code·class="inline">Binary</code>·contains·incomplete·JSON·value</li></ul><h2·id="decode/3-example"·class="section-heading">963 <ul><li><code·class="inline">error({invalid_byte,·Byte})</code>·if·<code·class="inline">Binary</code>·contains·unexpected·byte·or·invalid·UTF-8·byte</li><li><code·class="inline">error({invalid_sequence,·Bytes})</code>·if·<code·class="inline">Binary</code>·contains·invalid·UTF-8·escape</li><li><code·class="inline">error(unexpected_end)</code>·if·<code·class="inline">Binary</code>·contains·incomplete·JSON·value</li></ul><h2·id="decode/3-example"·class="section-heading">
964 ··<a·href="#decode/3-example"·class="hover-link">964 ··<a·href="#decode/3-example"·class="hover-link">
965 ····<i·class="ri-link-m"·aria-hidden="true"></i>965 ····<i·class="ri-link-m"·aria-hidden="true"></i>
966 ··</a>966 ··</a>
967 ··<span·class="text">Example</span>967 ··<span·class="text">Example</span>
968 </h2>968 </h2>
969 <p>Decoding·object·keys·as·atoms:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">Push</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="1752315264-1">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Value</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="1752315264-1">)</span><span[·...·truncated·by·diffoscope;·len:·624,·SHA:·96c88c1550ffd1c7e61233bda11ad67dc73193495560fdc0488ccbd6e0421ec9·...·]-2">]</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="gp·unselectable">969 <p>Decoding·object·keys·as·atoms:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">Push</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="0402955093-1">(</span><span·class="n">Key</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Value</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p"·data-group-id="0402955093-1">)</span><span[·...·truncated·by·diffoscope;·len:·624,·SHA:·66859cd4894c1793d7801357ab383e72b795591196802aabac03233b160e568f·...·]-2">]</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="gp·unselectable">
970 &gt;·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="1752315264-5">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;{\&quot;foo\&quot;:·1}&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·293,·SHA:·0e614c048b7946963c98e905f554dc94be7d5b37b38b10f7a549b308a9e48d83·...·]-5">)</span><span·class="p">.</span><span·class="w">970 &gt;·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">decode</span><span·class="p"·data-group-id="0402955093-5">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;{\&quot;foo\&quot;:·1}&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·293,·SHA:·5ff07908a9502819c6af7551a8b0ebe1bb67875b6cc3cb310892d540ee92cc0b·...·]-5">)</span><span·class="p">.</span><span·class="w">
971 </span><span·class="p"·data-group-id="1752315264-7">{</span><span·class="p"·data-group-id="1752315264-8">#{</span><span·class="ss">foo</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="1752315264-8">}</span[·...·truncated·by·diffoscope;·len:·178,·SHA:·df1250152ee023e562049bd0fdc38da2174f52f6016f510fadce601f4b6e2120·...·]-7">}</span></code></pre>971 </span><span·class="p"·data-group-id="0402955093-7">{</span><span·class="p"·data-group-id="0402955093-8">#{</span><span·class="ss">foo</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="0402955093-8">}</span[·...·truncated·by·diffoscope;·len:·178,·SHA:·82f4d8c7c8b36b308193ef69a959218b075b2ac8a9d2e78f7c204bcd7bac0372·...·]-7">}</span></code></pre>
972 ··</section>972 ··</section>
973 </section>973 </section>
974 <section·class="detail"·id="decode_continue/2">974 <section·class="detail"·id="decode_continue/2">
  
975 ··<div·class="detail-header">975 ··<div·class="detail-header">
976 ····<a·href="#decode_continue/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">976 ····<a·href="#decode_continue/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
977 ······<i·class="ri-link-m"·aria-hidden="true"></i>977 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 997, 19 lines modifiedOffset 997, 19 lines modified
997 ··········<pre·translate="no"><span·class="attribute">-spec</span>·decode_continue(<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()·|·end_of_input,·Opaque·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->997 ··········<pre·translate="no"><span·class="attribute">-spec</span>·decode_continue(<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()·|·end_of_input,·Opaque·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>())·->
998 ·························{Result·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:dynamic/0">dynamic</a>(),·Acc·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:dynamic/0">dynamic</a>(),·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()}·|998 ·························{Result·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:dynamic/0">dynamic</a>(),·Acc·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:dynamic/0">dynamic</a>(),·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()}·|
999 ·························{continue,·<a·href="#t:continuation_state/0">continuation_state</a>()}.</pre>999 ·························{continue,·<a·href="#t:continuation_state/0">continuation_state</a>()}.</pre>
  
1000 ······</div>1000 ······</div>
  
1001 <p>Continue·parsing·a·stream·of·bytes·of·a·JSON·value.</p><p>Similar·to·<a·href="#decode_start/3"><code·class="inline">decode_start/3</code></a>,·if·the·function·returns·<code·class="inline">{continue,·State}</code>·and1001 <p>Continue·parsing·a·stream·of·bytes·of·a·JSON·value.</p><p>Similar·to·<a·href="#decode_start/3"><code·class="inline">decode_start/3</code></a>,·if·the·function·returns·<code·class="inline">{continue,·State}</code>·and
1002 there·is·no·more·data,·use·<code·class="inline">end_of_input</code>·instead·of·a·binary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="9424711644-1">{</span><span·class="ss">continue</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="9424711644-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·525,·SHA:·f54f9eef3ddbee3f60eb9b5da5ab7507e9851a78ccaf4e7191565f0a6336637f·...·]-2">)</span><span·class="p">.</span><span·class="gp·unselectable">1002 there·is·no·more·data,·use·<code·class="inline">end_of_input</code>·instead·of·a·binary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="p"·data-group-id="9610508637-1">{</span><span·class="ss">continue</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="9610508637-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·525,·SHA:·771bd0255528fc7298b92c5468e68b9871b98d89c355375d4f4eef1f5e6e556f·...·]-2">)</span><span·class="p">.</span><span·class="gp·unselectable">
1003 &gt;·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">decode_continue</span><span·class="p"·data-group-id="9424711644-4">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;1}&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="9424711644-4">)</span><span·class="p">.</span><span·class="w">1003 &gt;·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">decode_continue</span><span·class="p"·data-group-id="9610508637-4">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;1}&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="9610508637-4">)</span><span·class="p">.</span><span·class="w">
1004 </span><span·class="p"·data-group-id="9424711644-5">{</span><span·class="p"·data-group-id="9424711644-6">#{</span><span·class="ss">foo</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="9424711644-6">}</span>[·...·truncated·by·diffoscope;·len:·1089,·SHA:·386e2b1b8274ad248761d15d5a272f5db5cd0a798d989131129788a8b46fc6b2·...·]-2">)</span><span·class="p">.</span><span·class="gp·unselectable">1004 </span><span·class="p"·data-group-id="9610508637-5">{</span><span·class="p"·data-group-id="9610508637-6">#{</span><span·class="ss">foo</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id="9610508637-6">}</span>[·...·truncated·by·diffoscope;·len:·1089,·SHA:·472474bffcf548427da028946b034424373e89bd0ac0c0848bbbe12da5257f6e·...·]-2">)</span><span·class="p">.</span><span·class="gp·unselectable">
1005 &gt;·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">decode_continue</span><span·class="p"·data-group-id="7701413697-4">(</span><span·class="ss">end_of_input</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="7701413697-4">)</span><span·class="p">.</span><span·class="w">1005 &gt;·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">decode_continue</span><span·class="p"·data-group-id="8574716015-4">(</span><span·class="ss">end_of_input</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="8574716015-4">)</span><span·class="p">.</span><span·class="w">
1006 </span><span·class="p"·data-group-id="7701413697-5">{</span><span·class="mi">123</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7701413697-5">}</span></code></pre>1006 </span><span·class="p"·data-group-id="8574716015-5">{</span><span·class="mi">123</span><span·class="p">,</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8574716015-5">}</span></code></pre>
1007 ··</section>1007 ··</section>
1008 </section>1008 </section>
1009 <section·class="detail"·id="decode_start/3">1009 <section·class="detail"·id="decode_start/3">
  
1010 ··<div·class="detail-header">1010 ··<div·class="detail-header">
1011 ····<a·href="#decode_start/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1011 ····<a·href="#decode_start/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1012 ······<i·class="ri-link-m"·aria-hidden="true"></i>1012 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1071, 15 lines modifiedOffset 1071, 15 lines modified
  
1071 <p>Generates·JSON·corresponding·to·<code·class="inline">Term</code>.</p><p>Supports·basic·data·mapping:</p><table><thead><tr><th·style="text-align:·left;"><strong>Erlang</strong></th><th·style="text-align:·left;"><strong>JSON</strong></th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">integer()·|·float()</code></td><td·style="text-align:·left;">Number</td></tr><tr><td·style="text-align:·left;"><code·class="inline">true·|·false</code></td><td·style="text-align:·left;">Boolean</td></tr><tr><td·style="text-align:·left;"><code·class="inline">null</code></td><td·style="text-align:·left;">Null</td></tr><tr><td·style="text-align:·left;"><code·class="inline">binary()</code></td><td·style="text-align:·left;">String</td></tr><tr><td·style="text-align:·left;"><code·class="inline">atom()</code></td><td·style="text-align:·left;">String</td></tr><tr><td·style="text-align:·left;"><code·class="inline">list()</code></td><td·style="text-align:·left;">Array</td></tr><tr><td·style="text-align:·left;"><code·class="inline">#{binary()·=&gt;·_}</code></td><td·style="text-align:·left;">Object</td></tr><tr><td·style="text-align:·left;"><code·class="inline">#{atom()·=&gt;·_}</code></td><td·style="text-align:·left;">Object</td></tr><tr><td·style="text-align:·left;"><code·class="inline">#{integer()·=&gt;·_}</code></td><td·style="text-align:·left;">Object</td></tr></tbody></table><p>This·is·equivalent·to·<code·class="inline">encode(Term,·fun·json:encode_value/2)</code>.</p><h2·id="encode/1-examples"·class="section-heading">1071 <p>Generates·JSON·corresponding·to·<code·class="inline">Term</code>.</p><p>Supports·basic·data·mapping:</p><table><thead><tr><th·style="text-align:·left;"><strong>Erlang</strong></th><th·style="text-align:·left;"><strong>JSON</strong></th></tr></thead><tbody><tr><td·style="text-align:·left;"><code·class="inline">integer()·|·float()</code></td><td·style="text-align:·left;">Number</td></tr><tr><td·style="text-align:·left;"><code·class="inline">true·|·false</code></td><td·style="text-align:·left;">Boolean</td></tr><tr><td·style="text-align:·left;"><code·class="inline">null</code></td><td·style="text-align:·left;">Null</td></tr><tr><td·style="text-align:·left;"><code·class="inline">binary()</code></td><td·style="text-align:·left;">String</td></tr><tr><td·style="text-align:·left;"><code·class="inline">atom()</code></td><td·style="text-align:·left;">String</td></tr><tr><td·style="text-align:·left;"><code·class="inline">list()</code></td><td·style="text-align:·left;">Array</td></tr><tr><td·style="text-align:·left;"><code·class="inline">#{binary()·=&gt;·_}</code></td><td·style="text-align:·left;">Object</td></tr><tr><td·style="text-align:·left;"><code·class="inline">#{atom()·=&gt;·_}</code></td><td·style="text-align:·left;">Object</td></tr><tr><td·style="text-align:·left;"><code·class="inline">#{integer()·=&gt;·_}</code></td><td·style="text-align:·left;">Object</td></tr></tbody></table><p>This·is·equivalent·to·<code·class="inline">encode(Term,·fun·json:encode_value/2)</code>.</p><h2·id="encode/1-examples"·class="section-heading">
1072 ··<a·href="#encode/1-examples"·class="hover-link">1072 ··<a·href="#encode/1-examples"·class="hover-link">
1073 ····<i·class="ri-link-m"·aria-hidden="true"></i>1073 ····<i·class="ri-link-m"·aria-hidden="true"></i>
1074 ··</a>1074 ··</a>
1075 ··<span·class="text">Examples</span>1075 ··<span·class="text">Examples</span>
1076 </h2>1076 </h2>
1077 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">iolist_to_binary</span><span·class="p"·data-group-id="5991277884-1">(</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">encode</span><span·class="p"·data-group-id="5991277884-2">(</span><span·class="p"·data-group-id="5991277884-3">#{</span><span·class="ss">foo</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·305,·SHA:·3b126479ebf595117a66617b28100019bb8fd3e218647ecdd0352e0f98b64bf4·...·]-1">)</span><span·class="p">.</span><span·class="w">1077 <pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">iolist_to_binary</span><span·class="p"·data-group-id="1162826918-1">(</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">encode</span><span·class="p"·data-group-id="1162826918-2">(</span><span·class="p"·data-group-id="1162826918-3">#{</span><span·class="ss">foo</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·305,·SHA:·4bc67fe4f03dbc22ee121bf0604697dcd581b94317dd50c3ba98831ad75ca907·...·]-1">)</span><span·class="p">.</span><span·class="w">
1078 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;{\&quot;foo\&quot;:\&quot;bar\&quot;}&quot;</span><span·class="p">&gt;&gt;</span></code></pre>1078 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;{\&quot;foo\&quot;:\&quot;bar\&quot;}&quot;</span><span·class="p">&gt;&gt;</span></code></pre>
1079 ··</section>1079 ··</section>
1080 </section>1080 </section>
1081 <section·class="detail"·id="encode/2">1081 <section·class="detail"·id="encode/2">
  
1082 ··<div·class="detail-header">1082 ··<div·class="detail-header">
1083 ····<a·href="#encode/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1083 ····<a·href="#encode/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1113, 18 lines modifiedOffset 1113, 18 lines modified
1113 to·help·in·constructing·such·callbacks.</p><h2·id="encode/2-examples"·class="section-heading">1113 to·help·in·constructing·such·callbacks.</p><h2·id="encode/2-examples"·class="section-heading">
1114 ··<a·href="#encode/2-examples"·class="hover-link">1114 ··<a·href="#encode/2-examples"·class="hover-link">
1115 ····<i·class="ri-link-m"·aria-hidden="true"></i>1115 ····<i·class="ri-link-m"·aria-hidden="true"></i>
1116 ··</a>1116 ··</a>
1117 ··<span·class="text">Examples</span>1117 ··<span·class="text">Examples</span>
1118 </h2>1118 </h2>
1119 <p>An·encoder·that·uses·a·heuristic·to·differentiate·object-like1119 <p>An·encoder·that·uses·a·heuristic·to·differentiate·object-like
1120 lists·of·key-value·pairs·from·plain·lists:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">encoder</span><span·class="p"·data-group-id="1577065442-1">(</span><span·class="p"·data-group-id="1577065442-2">[</span><span·class="p"·data-group-id="1577065442-3">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="1[·...·truncated·by·diffoscope;·len:·772,·SHA:·fd5d09c28bba1883297f515f9ae7233a928674e0ebe8fa770ee50b92f352a415·...·]-4">)</span><span·class="p">;</span><span·class="gp·unselectable">1120 lists·of·key-value·pairs·from·plain·lists:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="nf">encoder</span><span·class="p"·data-group-id="4204072198-1">(</span><span·class="p"·data-group-id="4204072198-2">[</span><span·class="p"·data-group-id="4204072198-3">{</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="4[·...·truncated·by·diffoscope;·len:·772,·SHA:·2a13828130cd6b2a8d11bb4d98a8675ba396f51ed1cb771aacb8722eb3bfdbc3·...·]-4">)</span><span·class="p">;</span><span·class="gp·unselectable">
1121 &gt;·</span><span·class="nf">encoder</span><span·class="p"·data-group-id="1577065442-5">(</span><span·class="n">Other</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Encode</span><span·class="p"·data-group-id="1577065442-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·287,·SHA:·4ef10cd53650c10b7dbd007f470e7f4f140728327f52a621363b3d59b8e7f9dd·...·]-6">)</span><span·class="p">.</span><span·class="gp·unselectable">1121 &gt;·</span><span·class="nf">encoder</span><span·class="p"·data-group-id="4204072198-5">(</span><span·class="n">Other</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Encode</span><span·class="p"·data-group-id="4204072198-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·287,·SHA:·a2181af53212e35da77dfb92d8f4cb784e60de29f224d9f98f0b7f4e4a1186d0·...·]-6">)</span><span·class="p">.</span><span·class="gp·unselectable">
1122 &gt;·</span><span·class="nf">custom_encode</span><span·class="p"·data-group-id="1577065442-7">(</span><span·class="n">Value</span><span·class="p"·data-group-id="1577065442-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">encode</[·...·truncated·by·diffoscope;·len:·783,·SHA:·b73b1e3e5a33abd03f19c2d2450a7b5d382ca4a672cf9cbfbc5fa0eaae619f16·...·]-8">)</span><span·class="p">.</span><span·class="gp·unselectable">1122 &gt;·</span><span·class="nf">custom_encode</span><span·class="p"·data-group-id="4204072198-7">(</span><span·class="n">Value</span><span·class="p"·data-group-id="4204072198-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">json</span><span·class="p">:</span><span·class="nf">encode</[·...·truncated·by·diffoscope;·len:·783,·SHA:·b8fffca95041a847b46b518dea1f21c05e14f1d9611d578fdc6486d3577cf64a·...·]-8">)</span><span·class="p">.</span><span·class="gp·unselectable">
1123 &gt;·</span><span·class="nf">iolist_to_binary</span><span·class="p"·data-group-id="1577065442-11">(</span><span·class="nf">custom_encode</span><span·class="p"·data-group-id="1577065442-12">(</span><span·class="p"·data-group-id="1577065442-13">[</span><span·class="p"·data-group-id="1577065442-14">{</span><span·class="ss">a</span><span·cla[·...·truncated·by·diffoscope;·len:·604,·SHA:·648934ffdae44a1b1c438c78ab77819a91c13b230b83125f9ca75bf699cfddf2·...·]-11">)</span><span·class="p">.</span><span·class="w">1123 &gt;·</span><span·class="nf">iolist_to_binary</span><span·class="p"·data-group-id="4204072198-11">(</span><span·class="nf">custom_encode</span><span·class="p"·data-group-id="4204072198-12">(</span><span·class="p"·data-group-id="4204072198-13">[</span><span·class="p"·data-group-id="4204072198-14">{</span><span·class="ss">a</span><span·cla[·...·truncated·by·diffoscope;·len:·604,·SHA:·fc943295532a57e587148671933cfff9a4409591ee91a7d129df0722ad0fca0b·...·]-11">)</span><span·class="p">.</span><span·class="w">
1124 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;{\&quot;a\&quot;:[],\&quot;b\&quot;:1}&quot;</span><span·class="p">&gt;&gt;</span></code></pre>1124 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;{\&quot;a\&quot;:[],\&quot;b\&quot;:1}&quot;</span><span·class="p">&gt;&gt;</span></code></pre>
1125 ··</section>1125 ··</section>
1126 </section>1126 </section>
1127 <section·class="detail"·id="encode_atom/2">1127 <section·class="detail"·id="encode_atom/2">
  
1128 ··<div·class="detail-header">1128 ··<div·class="detail-header">
1129 ····<a·href="#encode_atom/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1129 ····<a·href="#encode_atom/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1507, 15 lines modifiedOffset 1507, 15 lines modified
1507 ······<p·class="built-using">1507 ······<p·class="built-using">
1508 ········Built·using1508 ········Built·using
1509 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1509 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1510 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1510 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1511 ······</p>1511 ······</p>
1512 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1512 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1513 ····</footer>1513 ····</footer>
1514 ··</div>1514 ··</div>
1515 </main>1515 </main>
1516 </div>1516 </div>
1517 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1517 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1518 <script>1518 <script>
1519 ··document.addEventListener("DOMContentLoaded",·function·()·{1519 ··document.addEventListener("DOMContentLoaded",·function·()·{
635 B
html2text {}
Max HTML report size reached
165 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/lists.html
Max HTML report size reached
1.59 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/log_mf_h.html
    
Offset 455, 15 lines modifiedOffset 455, 15 lines modified
455 ······<p·class="built-using">455 ······<p·class="built-using">
456 ········Built·using456 ········Built·using
457 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the457 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
458 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>458 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
459 ······</p>459 ······</p>
460 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>460 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
461 ····</footer>461 ····</footer>
462 ··</div>462 ··</div>
463 </main>463 </main>
464 </div>464 </div>
465 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>465 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
466 <script>466 <script>
467 ··document.addEventListener("DOMContentLoaded",·function·()·{467 ··document.addEventListener("DOMContentLoaded",·function·()·{
784 B
html2text {}
Max HTML report size reached
206 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/maps.html
Max HTML report size reached
1.37 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/math.html
    
Offset 1190, 15 lines modifiedOffset 1190, 15 lines modified
1190 ······<p·class="built-using">1190 ······<p·class="built-using">
1191 ········Built·using1191 ········Built·using
1192 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1192 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1193 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1193 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1194 ······</p>1194 ······</p>
1195 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1195 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1196 ····</footer>1196 ····</footer>
1197 ··</div>1197 ··</div>
1198 </main>1198 </main>
1199 </div>1199 </div>
1200 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1200 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1201 <script>1201 <script>
1202 ··document.addEventListener("DOMContentLoaded",·function·()·{1202 ··document.addEventListener("DOMContentLoaded",·function·()·{
569 B
html2text {}
Max HTML report size reached
141 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/ms_transform.html
    
Offset 150, 55 lines modifiedOffset 150, 55 lines modified
150 ··</a>150 ··</a>
151 ··<span·class="text">Example·1</span>151 ··<span·class="text">Example·1</span>
152 </h2>152 </h2>
153 <p>Using·<a·href="ets.html#select/2"><code·class="inline">ets:select/2</code></a>·and·a·match·specification,·one·can·filter·out·rows·of·a153 <p>Using·<a·href="ets.html#select/2"><code·class="inline">ets:select/2</code></a>·and·a·match·specification,·one·can·filter·out·rows·of·a
154 table·and·construct·a·list·of·tuples·containing·relevant·parts·of·the·data·in154 table·and·construct·a·list·of·tuples·containing·relevant·parts·of·the·data·in
155 these·rows.·One·can·use·<a·href="ets.html#foldl/3"><code·class="inline">ets:foldl/3</code></a>·instead,·but·the·<a·href="ets.html#select/2"><code·class="inline">ets:select/2</code></a>·call·is155 these·rows.·One·can·use·<a·href="ets.html#foldl/3"><code·class="inline">ets:foldl/3</code></a>·instead,·but·the·<a·href="ets.html#select/2"><code·class="inline">ets:select/2</code></a>·call·is
156 far·more·efficient.·Without·the·translation·provided·by·<code·class="inline">ms_transform</code>,·one·must156 far·more·efficient.·Without·the·translation·provided·by·<code·class="inline">ms_transform</code>,·one·must
157 struggle·with·writing·match·specifications·terms·to·accommodate·this.</p><p>Consider·a·simple·table·of·employees:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4263370844-1">(</span><span·class="ss">emp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4263370844-2">{</span><span·class="ss">empno</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%Employee·number·as·a·string,·the·key</span><span·class="w">157 struggle·with·writing·match·specifications·terms·to·accommodate·this.</p><p>Consider·a·simple·table·of·employees:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="7066755864-1">(</span><span·class="ss">emp</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7066755864-2">{</span><span·class="ss">empno</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%Employee·number·as·a·string,·the·key</span><span·class="w">
158 ··············</span><span·class="ss">surname</span><span·class="p">,</span><span·class="w">···</span><span·class="c1">%Surname·of·the·employee</span><span·class="w">158 ··············</span><span·class="ss">surname</span><span·class="p">,</span><span·class="w">···</span><span·class="c1">%Surname·of·the·employee</span><span·class="w">
159 ··············</span><span·class="ss">givenname</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%Given·name·of·employee</span><span·class="w">159 ··············</span><span·class="ss">givenname</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%Given·name·of·employee</span><span·class="w">
160 ··············</span><span·class="ss">dept</span><span·class="p">,</span><span·class="w">······</span><span·class="c1">%Department,·one·of·{dev,sales,prod,adm}</span><span·class="w">160 ··············</span><span·class="ss">dept</span><span·class="p">,</span><span·class="w">······</span><span·class="c1">%Department,·one·of·{dev,sales,prod,adm}</span><span·class="w">
161 ··············</span><span·class="ss">empyear</span><span·class="p"·data-group-id="4263370844-2">}</span><span·class="p"·data-group-id="4263370844-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%Year·the·employee·was·employed</span></code></pre><p>We·create·the·table·using:</p><pre><code·class="text">ets:new([·...·truncated·by·diffoscope;·len:·641,·SHA:·4368e1d0dcdaafa6e96d9acc0eb111080f6312143aedd17648ecf575f2ee7077·...·]-2">}</span><span·class="p">,</span><span·class="w">161 ··············</span><span·class="ss">empyear</span><span·class="p"·data-group-id="7066755864-2">}</span><span·class="p"·data-group-id="7066755864-1">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%Year·the·employee·was·employed</span></code></pre><p>We·create·the·table·using:</p><pre><code·class="text">ets:new([·...·truncated·by·diffoscope;·len:·641,·SHA:·491086cfda406def1b2964e4ddf4abc94764b4d3fc3bce69f3cac04a06b17b09·...·]-2">}</span><span·class="p">,</span><span·class="w">
162 ·</span><span·class="p"·data-group-id="6327720178-3">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;041231&quot;</span><span·class="p">,</span><span·class="s">&quot;Doe&quot;</span><span·class="p">,</span><span·class="s">&quot;John&quot;</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·127,·SHA:·3483ac4c142df25121c0d1819be668a309ede017c8ef15862173235d4c596b67·...·]-3">}</span><span·class="p">,</span><span·class="w">162 ·</span><span·class="p"·data-group-id="6667758653-3">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;041231&quot;</span><span·class="p">,</span><span·class="s">&quot;Doe&quot;</span><span·class="p">,</span><span·class="s">&quot;John&quot;</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·127,·SHA:·255f1135d660c820c9d6aa670ff2d1f2764b4488e0a2f04bb5e32d0e96a1db98·...·]-3">}</span><span·class="p">,</span><span·class="w">
163 ·</span><span·class="p"·data-group-id="6327720178-4">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;052341&quot;</span><span·class="p">,</span><span·class="s">&quot;Smith&quot;</span><span·class="p">,</span><span·class="s">&quot;John&quot;</span><span·class="p">[·...·truncated·by·diffoscope;·len:·128,·SHA:·8b6b81cc910fc270e031c2becbce3339dd686db732e4856932da1f4370b2295f·...·]-4">}</span><span·class="p">,</span><span·class="w">163 ·</span><span·class="p"·data-group-id="6667758653-4">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;052341&quot;</span><span·class="p">,</span><span·class="s">&quot;Smith&quot;</span><span·class="p">,</span><span·class="s">&quot;John&quot;</span><span·class="p">[·...·truncated·by·diffoscope;·len:·128,·SHA:·ea4529914fdc1aa6b08536caa29a320f1360c163148dd43bfccac0d342b24db8·...·]-4">}</span><span·class="p">,</span><span·class="w">
164 ·</span><span·class="p"·data-group-id="6327720178-5">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;076324&quot;</span><span·class="p">,</span><span·class="s">&quot;Smith&quot;</span><span·class="p">,</span><span·class="s">&quot;Ella&quot;</span><span·class="p">[·...·truncated·by·diffoscope;·len:·130,·SHA:·eb78698b94dbc1928b799826e19c4b2c4527733f60009b25ed3d08d642aca9e7·...·]-5">}</span><span·class="p">,</span><span·class="w">164 ·</span><span·class="p"·data-group-id="6667758653-5">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;076324&quot;</span><span·class="p">,</span><span·class="s">&quot;Smith&quot;</span><span·class="p">,</span><span·class="s">&quot;Ella&quot;</span><span·class="p">[·...·truncated·by·diffoscope;·len:·130,·SHA:·f59a8ab8a6835fc1d75271a1e3436dd9877dd8e75296635ee08015da716aafd1·...·]-5">}</span><span·class="p">,</span><span·class="w">
165 ·</span><span·class="p"·data-group-id="6327720178-6">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;122334&quot;</span><span·class="p">,</span><span·class="s">&quot;Weston&quot;</span><span·class="p">,</span><span·class="s">&quot;Anna&quot;</span><span·class="p"[·...·truncated·by·diffoscope;·len:·130,·SHA:·74ceef328faa22414ca09f1759dd284f329f8aefe277349b8f590842e7631291·...·]-6">}</span><span·class="p">,</span><span·class="w">165 ·</span><span·class="p"·data-group-id="6667758653-6">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;122334&quot;</span><span·class="p">,</span><span·class="s">&quot;Weston&quot;</span><span·class="p">,</span><span·class="s">&quot;Anna&quot;</span><span·class="p"[·...·truncated·by·diffoscope;·len:·130,·SHA:·2b480a614f0e86d07d1df6f61f7927e0a07f29a7d4af64b154d6509c9c063344·...·]-6">}</span><span·class="p">,</span><span·class="w">
166 ·</span><span·class="p"·data-group-id="6327720178-7">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;535216&quot;</span><span·class="p">,</span><span·class="s">&quot;Chalker&quot;</span><span·class="p">,</span><span·class="s">&quot;Samuel&quot;</span><span·class=[·...·truncated·by·diffoscope;·len:·132,·SHA:·c37ac7befb20a3d6f75dc016a500d051e76cbca2136cc976289927e218065587·...·]-7">}</span><span·class="p">,</span><span·class="w">166 ·</span><span·class="p"·data-group-id="6667758653-7">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;535216&quot;</span><span·class="p">,</span><span·class="s">&quot;Chalker&quot;</span><span·class="p">,</span><span·class="s">&quot;Samuel&quot;</span><span·class=[·...·truncated·by·diffoscope;·len:·132,·SHA:·9c9d94c0aac5f34bb983aafb2910da388664eceb9c8a2368e91d899bd4237afc·...·]-7">}</span><span·class="p">,</span><span·class="w">
167 ·</span><span·class="p"·data-group-id="6327720178-8">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;789789&quot;</span><span·class="p">,</span><span·class="s">&quot;Harrysson&quot;</span><span·class="p">,</span><span·class="s">&quot;Joe&quot;</span><span·class="[·...·truncated·by·diffoscope;·len:·131,·SHA:·d64df301dc6852b802b978db4c208bc6ad7395a3b55a727bee09158c4a623b70·...·]-8">}</span><span·class="p">,</span><span·class="w">167 ·</span><span·class="p"·data-group-id="6667758653-8">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;789789&quot;</span><span·class="p">,</span><span·class="s">&quot;Harrysson&quot;</span><span·class="p">,</span><span·class="s">&quot;Joe&quot;</span><span·class="[·...·truncated·by·diffoscope;·len:·131,·SHA:·6a8bc48001654ee59f768cc0d3e49e3b9047015affc5993b76dec2be34829107·...·]-8">}</span><span·class="p">,</span><span·class="w">
168 ·</span><span·class="p"·data-group-id="6327720178-9">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;963721&quot;</span><span·class="p">,</span><span·class="s">&quot;Scott&quot;</span><span·class="p">,</span><span·class="s">&quot;Juliana&quot;</span><span·class="[·...·truncated·by·diffoscope;·len:·131,·SHA:·ccd4a41598356983f5c36b4636c28e4e8d34d4735ccbb7b9ef099e2aef40c97a·...·]-9">}</span><span·class="p">,</span><span·class="w">168 ·</span><span·class="p"·data-group-id="6667758653-9">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;963721&quot;</span><span·class="p">,</span><span·class="s">&quot;Scott&quot;</span><span·class="p">,</span><span·class="s">&quot;Juliana&quot;</span><span·class="[·...·truncated·by·diffoscope;·len:·131,·SHA:·2355a99e1bb1bc63f4be5f6309ad9664ad40960e1a07eb831f42b85d66608891·...·]-9">}</span><span·class="p">,</span><span·class="w">
169 ·</span><span·class="p"·data-group-id="6327720178-10">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;989891&quot;</span><span·class="p">,</span><span·class="s">&quot;Brown&quot;</span><span·class="p">,</span><span·class="s">&quot;Gabriel&quot;</span><span·class=[·...·truncated·by·diffoscope;·len:·187,·SHA:·686e7803816e52665f8186873cb0ae38c2f6836cb72f6e5486e1fdec33c1b611·...·]-1">]</span></code></pre><p>Assuming·that·we·want·the·employee·numbers·of·everyone·in·the·sales·department,169 ·</span><span·class="p"·data-group-id="6667758653-10">{</span><span·class="ss">emp</span><span·class="p">,</span><span·class="s">&quot;989891&quot;</span><span·class="p">,</span><span·class="s">&quot;Brown&quot;</span><span·class="p">,</span><span·class="s">&quot;Gabriel&quot;</span><span·class=[·...·truncated·by·diffoscope;·len:·187,·SHA:·d1fc8df5737f4ad0f41cfbbe69c97f924a100cfba7773125b0a2dbb492610936·...·]-1">]</span></code></pre><p>Assuming·that·we·want·the·employee·numbers·of·everyone·in·the·sales·department,
170 there·are·several·ways.</p><p><a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·can·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="4907358669-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4907358669-2">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#[·...·truncated·by·diffoscope;·len:·437,·SHA:·0ae071d35514fbe4167a36a622c88e7e148d51b23c7a05730d8521eeec332ec4·...·]-1">)</span><span·class="p">.</span><span·class="w">170 there·are·several·ways.</p><p><a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·can·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">match</span><span·class="p"·data-group-id="8697523601-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8697523601-2">{</span><span·class="ss">&#39;_&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#[·...·truncated·by·diffoscope;·len:·437,·SHA:·6da80f893aa41a004d1e72647955b2f3f2eb01c8cbf8d83d139ea90fbb70ebe0·...·]-1">)</span><span·class="p">.</span><span·class="w">
171 </span><span·class="p"·data-group-id="4907358669-3">[</span><span·class="p"·data-group-id="4907358669-4">[</span><span·class="s">&quot;011103&quot;</span><span·class="p"·data-group-id="4907358669-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="4907358669-5">[</span><span·clas[·...·truncated·by·diffoscope;·len:·125,·SHA:·905fa84911894e1863c5bee79b55fd1c0bf9948aaa6a9b5b08d96ec773e325c8·...·]-3">]</span></code></pre><p><a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·uses·a·simpler·type·of·match·specification,·but·it·is·still171 </span><span·class="p"·data-group-id="8697523601-3">[</span><span·class="p"·data-group-id="8697523601-4">[</span><span·class="s">&quot;011103&quot;</span><span·class="p"·data-group-id="8697523601-4">]</span><span·class="p">,</span><span·class="p"·data-group-id="8697523601-5">[</span><span·clas[·...·truncated·by·diffoscope;·len:·125,·SHA:·9a728e87179130b07562cad76a562ac6ede7e0070ebaea6afeeca9d83084c6f7·...·]-3">]</span></code></pre><p><a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·uses·a·simpler·type·of·match·specification,·but·it·is·still
172 unreadable,·and·one·has·little·control·over·the·returned·result.·It·is·always·a172 unreadable,·and·one·has·little·control·over·the·returned·result.·It·is·always·a
173 list·of·lists.</p><p><a·href="ets.html#foldl/3"><code·class="inline">ets:foldl/3</code></a>·or·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·can·be·used·to·avoid·the·nested·lists:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">foldr</span><span·class="p"·data-group-id="3897059925-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3897059925-2">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="3897059925-3">{</span><span·class="ss">empno</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·699,·SHA:·642b44c1f85626255a95edefd57df779d9bf8ac33f33adf097d24c4ecdfab69d·...·]-4">]</span><span·class="p">;</span><span·class="w">173 list·of·lists.</p><p><a·href="ets.html#foldl/3"><code·class="inline">ets:foldl/3</code></a>·or·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·can·be·used·to·avoid·the·nested·lists:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">foldr</span><span·class="p"·data-group-id="3236784294-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3236784294-2">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="3236784294-3">{</span><span·class="ss">empno</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·699,·SHA:·e0014799e0f8f3fa7a2c70a4361b78ce7751d6e4034089d9b199ca867eb389bb·...·]-4">]</span><span·class="p">;</span><span·class="w">
174 ·············</span><span·class="p"·data-group-id="3897059925-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Acc</span><span·class="p"·data-group-id="3897059925-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">174 ·············</span><span·class="p"·data-group-id="3236784294-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Acc</span><span·class="p"·data-group-id="3236784294-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">
175 ··········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">175 ··········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
176 ··········</span><span·class="p"·data-group-id="3897059925-6">[</span><span·class="p"·data-group-id="3897059925-6">]</span><span·class="p">,</span><span·class="w">176 ··········</span><span·class="p"·data-group-id="3236784294-6">[</span><span·class="p"·data-group-id="3236784294-6">]</span><span·class="p">,</span><span·class="w">
177 ··········</span><span·class="ss">emp_tab</span><span·class="p"·data-group-id="3897059925-1">)</span><span·class="p">.</span></code></pre><p>The·result·is·<code·class="inline">[&quot;011103&quot;,&quot;076324&quot;]</code>.·The·fun·is·straightforward,·so·the·only177 ··········</span><span·class="ss">emp_tab</span><span·class="p"·data-group-id="3236784294-1">)</span><span·class="p">.</span></code></pre><p>The·result·is·<code·class="inline">[&quot;011103&quot;,&quot;076324&quot;]</code>.·The·fun·is·straightforward,·so·the·only
178 problem·is·that·all·the·data·from·the·table·must·be·transferred·from·the·table178 problem·is·that·all·the·data·from·the·table·must·be·transferred·from·the·table
179 to·the·calling·process·for·filtering.·That·is·inefficient·compared·to·the179 to·the·calling·process·for·filtering.·That·is·inefficient·compared·to·the
180 <a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·call·where·the·filtering·can·be·done·&quot;inside&quot;·the·emulator·and180 <a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·call·where·the·filtering·can·be·done·&quot;inside&quot;·the·emulator·and
181 only·the·result·is·transferred·to·the·process.</p><p>Consider·a·&quot;pure&quot;·<a·href="ets.html#select/2"><code·class="inline">ets:select/2</code></a>·call·that·does·what·<code·class="inline">ets:foldr</code>·does:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="4850929157-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4850929157-2">[</span><span·class="p"·data-group-id="4850929157-3">{</span><span·class="o">#</span><span·class="ss">emp</span[·...·truncated·by·diffoscope;·len:·995,·SHA:·3912d7194c8cfb60d437f44e86c795cdd2a16e75b3930deaa0cde4455c898a53·...·]-1">)</span><span·class="p">.</span></code></pre><p>Although·the·record·syntax·is·used,·it·is·still·hard·to·read·and·even·harder·to181 only·the·result·is·transferred·to·the·process.</p><p>Consider·a·&quot;pure&quot;·<a·href="ets.html#select/2"><code·class="inline">ets:select/2</code></a>·call·that·does·what·<code·class="inline">ets:foldr</code>·does:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="4191412965-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4191412965-2">[</span><span·class="p"·data-group-id="4191412965-3">{</span><span·class="o">#</span><span·class="ss">emp</span[·...·truncated·by·diffoscope;·len:·995,·SHA:·7b671febc381879781fcefd189baf98c5132ae3c9a889a0838347f5dbdf6d417·...·]-1">)</span><span·class="p">.</span></code></pre><p>Although·the·record·syntax·is·used,·it·is·still·hard·to·read·and·even·harder·to
182 write.·The·first·element·of·the·tuple,182 write.·The·first·element·of·the·tuple,
183 <code·class="inline">#emp{empno·=·'$1',·dept·=·sales,·_='_'}</code>,·tells·what·to·match.·Elements·not183 <code·class="inline">#emp{empno·=·'$1',·dept·=·sales,·_='_'}</code>,·tells·what·to·match.·Elements·not
184 matching·this·are·not·returned,·as·in·the·<a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·example.·The·second184 matching·this·are·not·returned,·as·in·the·<a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·example.·The·second
185 element,·the·empty·list,·is·a·list·of·guard·expressions,·which·we·do·not·need.185 element,·the·empty·list,·is·a·list·of·guard·expressions,·which·we·do·not·need.
186 The·third·element·is·the·list·of·expressions·constructing·the·return·value·(in186 The·third·element·is·the·list·of·expressions·constructing·the·return·value·(in
187 ETS·this·is·almost·always·a·list·containing·one·single·term).·In·our·case·<code·class="inline">'$1'</code>187 ETS·this·is·almost·always·a·list·containing·one·single·term).·In·our·case·<code·class="inline">'$1'</code>
188 is·bound·to·the·employee·number·in·the·head·(first·element·of·the·tuple),·and188 is·bound·to·the·employee·number·in·the·head·(first·element·of·the·tuple),·and
189 hence·the·employee·number·is·returned.·The·result·is·<code·class="inline">[&quot;011103&quot;,&quot;076324&quot;]</code>,·as189 hence·the·employee·number·is·returned.·The·result·is·<code·class="inline">[&quot;011103&quot;,&quot;076324&quot;]</code>,·as
190 in·the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·example,·but·the·result·is·retrieved·much·more·efficiently190 in·the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·example,·but·the·result·is·retrieved·much·more·efficiently
191 in·terms·of·execution·speed·and·memory·consumption.</p><p>Using·<a·href="ets.html#fun2ms/1"><code·class="inline">ets:fun2ms/1</code></a>,·we·can·combine·the·ease·of·use·of·the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·and191 in·terms·of·execution·speed·and·memory·consumption.</p><p>Using·<a·href="ets.html#fun2ms/1"><code·class="inline">ets:fun2ms/1</code></a>,·we·can·combine·the·ease·of·use·of·the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·and
192 the·efficiency·of·the·pure·<a·href="ets.html#select/2"><code·class="inline">ets:select/2</code></a>·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="1387335655-1">(</span><span·class="s">&quot;stdlib/include/ms_transform.hrl&quot;</span><span·class="p"·data-group-id="1387335655-1">)</span><span·class="p">.</span><span·class="w">192 the·efficiency·of·the·pure·<a·href="ets.html#select/2"><code·class="inline">ets:select/2</code></a>·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="2081607490-1">(</span><span·class="s">&quot;stdlib/include/ms_transform.hrl&quot;</span><span·class="p"·data-group-id="2081607490-1">)</span><span·class="p">.</span><span·class="w">
  
193 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="1387335655-2">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="1387335655-3">(</span><span·class="w">193 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="2081607490-2">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="2081607490-3">(</span><span·class="w">
194 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="1387335655-4">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="1387335655-5">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span[·...·truncated·by·diffoscope;·len:·266,·SHA:·b937530912899022e09d6b9e91cd16fc054f3e829fe2aef4300f94e2fece0038·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">194 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="2081607490-4">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="2081607490-5">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span[·...·truncated·by·diffoscope;·len:·266,·SHA:·382717cad9c6bcfca69383c1af7f908a59c3c5ac5d4aec91edc20c366a7bdf96·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
195 ······························</span><span·class="n">E</span><span·class="w">195 ······························</span><span·class="n">E</span><span·class="w">
196 ······················</span><span·class="k">end</span><span·class="p"·data-group-id="1387335655-3">)</span><span·class="p"·data-group-id="1387335655-2">)</span><span·class="p">.</span></code></pre><p>This·example·requires·no·special·knowledge·of·match·specifications·to196 ······················</span><span·class="k">end</span><span·class="p"·data-group-id="2081607490-3">)</span><span·class="p"·data-group-id="2081607490-2">)</span><span·class="p">.</span></code></pre><p>This·example·requires·no·special·knowledge·of·match·specifications·to
197 understand.·The·head·of·the·fun·matches·what·you·want·to·filter·out·and·the·body197 understand.·The·head·of·the·fun·matches·what·you·want·to·filter·out·and·the·body
198 returns·what·you·want·returned.·As·long·as·the·fun·can·be·kept·within·the·limits198 returns·what·you·want·returned.·As·long·as·the·fun·can·be·kept·within·the·limits
199 of·the·match·specifications,·there·is·no·need·to·transfer·all·table·data·to·the199 of·the·match·specifications,·there·is·no·need·to·transfer·all·table·data·to·the
200 process·for·filtering·as·in·the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·example.·It·is·easier·to·read·than200 process·for·filtering·as·in·the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·example.·It·is·easier·to·read·than
201 the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·example,·as·the·select·call·in·itself·discards·anything·that201 the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·example,·as·the·select·call·in·itself·discards·anything·that
202 does·not·match,·while·the·fun·of·the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·call·needs·to·handle·both·the202 does·not·match,·while·the·fun·of·the·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·call·needs·to·handle·both·the
203 elements·matching·and·the·ones·not·matching.</p><p>In·the·<a·href="ets.html#fun2ms/1"><code·class="inline">ets:fun2ms/1</code></a>·example·above,·it·is·needed·to·include·<code·class="inline">ms_transform.hrl</code>203 elements·matching·and·the·ones·not·matching.</p><p>In·the·<a·href="ets.html#fun2ms/1"><code·class="inline">ets:fun2ms/1</code></a>·example·above,·it·is·needed·to·include·<code·class="inline">ms_transform.hrl</code>
Offset 212, 90 lines modifiedOffset 212, 90 lines modified
212 ····<i·class="ri-link-m"·aria-hidden="true"></i>212 ····<i·class="ri-link-m"·aria-hidden="true"></i>
213 ··</a>213 ··</a>
214 ··<span·class="text">Example·2</span>214 ··<span·class="text">Example·2</span>
215 </h2>215 </h2>
216 <p>Assume·that·we·want·to·get·all·the·employee·numbers·of·employees·hired·before216 <p>Assume·that·we·want·to·get·all·the·employee·numbers·of·employees·hired·before
217 year·2000.·Using·<a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·is·not·an·alternative·here,·as·relational217 year·2000.·Using·<a·href="ets.html#match/2"><code·class="inline">ets:match/2</code></a>·is·not·an·alternative·here,·as·relational
218 operators·cannot·be·expressed·there.·Once·again,·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·can·do·it218 operators·cannot·be·expressed·there.·Once·again,·<a·href="ets.html#foldr/3"><code·class="inline">ets:foldr/3</code></a>·can·do·it
219 (slowly,·but·correct):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">foldr</span><span·class="p"·data-group-id="8115497894-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8115497894-2">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="8115497894-3">{</span><span·class="ss">empno</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·900,·SHA:·203f56a9eb6556c8b7398b8e102a9bff0ceb4632ee6c33fcb325f3691e24103b·...·]-4">]</span><span·class="p">;</span><span·class="w">219 (slowly,·but·correct):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">foldr</span><span·class="p"·data-group-id="9599637123-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="9599637123-2">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="9599637123-3">{</span><span·class="ss">empno</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·900,·SHA:·88c36f58fba1079af484c2ed38ed283d834578235c96f1b42a270a3d6f9f3abe·...·]-4">]</span><span·class="p">;</span><span·class="w">
220 ··················</span><span·class="p"·data-group-id="8115497894-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Acc</span><span·class="p"·data-group-id="8115497894-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">220 ··················</span><span·class="p"·data-group-id="9599637123-5">(</span><span·class="p">_</span><span·class="p">,</span><span·class="n">Acc</span><span·class="p"·data-group-id="9599637123-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">
221 ··········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">221 ··········</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
222 ··········</span><span·class="p"·data-group-id="8115497894-6">[</span><span·class="p"·data-group-id="8115497894-6">]</span><span·class="p">,</span><span·class="w">222 ··········</span><span·class="p"·data-group-id="9599637123-6">[</span><span·class="p"·data-group-id="9599637123-6">]</span><span·class="p">,</span><span·class="w">
223 ··········</span><span·class="ss">emp_tab</span><span·class="p"·data-group-id="8115497894-1">)</span><span·class="p">.</span></code></pre><p>The·result·is·<code·class="inline">[&quot;052341&quot;,&quot;076324&quot;,&quot;535216&quot;,&quot;789789&quot;,&quot;989891&quot;]</code>,·as·expected.·The223 ··········</span><span·class="ss">emp_tab</span><span·class="p"·data-group-id="9599637123-1">)</span><span·class="p">.</span></code></pre><p>The·result·is·<code·class="inline">[&quot;052341&quot;,&quot;076324&quot;,&quot;535216&quot;,&quot;789789&quot;,&quot;989891&quot;]</code>,·as·expected.·The
224 equivalent·expression·using·a·handwritten·match·specification·would·look·like224 equivalent·expression·using·a·handwritten·match·specification·would·look·like
225 this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="1428612350-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1428612350-2">[</span><span·class="p"·data-group-id="1428612350-3">{</span><span·class="o">#</span><span·class="ss">emp</spa[·...·truncated·by·diffoscope;·len:·551,·SHA:·a7e53b4033002a7ee3e88979a6835bb21e2c3d009381eb0fb1d50827afdf919d·...·]-4">}</span><span·class="p">,</span><span·class="w">225 this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="5604656603-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5604656603-2">[</span><span·class="p"·data-group-id="5604656603-3">{</span><span·class="o">#</span><span·class="ss">emp</spa[·...·truncated·by·diffoscope;·len:·551,·SHA:·c3eb4076b7ab16be92cafc9181c55339eda304255c0e1a97bcf5b35d5b0bacca·...·]-4">}</span><span·class="p">,</span><span·class="w">
226 ·····················</span><span·class="p"·data-group-id="1428612350-5">[</span><span·class="p"·data-group-id="1428612350-6">{</span><span·class="ss">&#39;&lt;&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·111,·SHA:·c4b1e5a96c351d82d03fe095becb432e134a36874814bf36842e3c1dc254b85f·...·]-5">]</span><span·class="p">,</span><span·class="w">226 ·····················</span><span·class="p"·data-group-id="5604656603-5">[</span><span·class="p"·data-group-id="5604656603-6">{</span><span·class="ss">&#39;&lt;&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;$2&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·111,·SHA:·3d52cb45af85a1e6ea76c7034d563b47af87cc9100e8426a553eed58626dbc18·...·]-5">]</span><span·class="p">,</span><span·class="w">
227 ·····················</span><span·class="p"·data-group-id="1428612350-7">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="1428612350-7">]</span><span·class="p"·data-group-id="1428612350-3">}</span><span·class="p"·data-group-id="1428612350-2">]</span><span·class="p"·data-group-id="14286123[·...·truncated·by·diffoscope;·len:·2,·SHA:·1a6562590ef19d1045d06c4055742d38288e9e6dcd71ccde5cee80f1d5a774eb·...·]-1">)</span><span·class="p">.</span></code></pre><p>This·gives·the·same·result.·<code·class="inline">[{'&lt;',·'$2',·2000}]</code>·is·in·the·guard·part·and227 ·····················</span><span·class="p"·data-group-id="5604656603-7">[</span><span·class="ss">&#39;$1&#39;</span><span·class="p"·data-group-id="5604656603-7">]</span><span·class="p"·data-group-id="5604656603-3">}</span><span·class="p"·data-group-id="5604656603-2">]</span><span·class="p"·data-group-id="56046566[·...·truncated·by·diffoscope;·len:·2,·SHA:·0b8efa5a3bf104413a725c6ff0459a6be12b1fd33314cbb138745baf39504ae5·...·]-1">)</span><span·class="p">.</span></code></pre><p>This·gives·the·same·result.·<code·class="inline">[{'&lt;',·'$2',·2000}]</code>·is·in·the·guard·part·and
228 therefore·discards·anything·that·does·not·have·an·<code·class="inline">empyear</code>·(bound·to·<code·class="inline">'$2'</code>·in228 therefore·discards·anything·that·does·not·have·an·<code·class="inline">empyear</code>·(bound·to·<code·class="inline">'$2'</code>·in
229 the·head)·less·than·2000,·as·the·guard·in·the·<code·class="inline">foldr/3</code>·example.</p><p>We·write·it·using·<a·href="ets.html#fun2ms/1"><code·class="inline">ets:fun2ms/1</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="6385599055-1">(</span><span·class="s">&quot;stdlib/include/ms_transform.hrl&quot;</span><span·class="p"·data-group-id="6385599055-1">)</span><span·class="p">.</span><span·class="w">229 the·head)·less·than·2000,·as·the·guard·in·the·<code·class="inline">foldr/3</code>·example.</p><p>We·write·it·using·<a·href="ets.html#fun2ms/1"><code·class="inline">ets:fun2ms/1</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="5386427555-1">(</span><span·class="s">&quot;stdlib/include/ms_transform.hrl&quot;</span><span·class="p"·data-group-id="5386427555-1">)</span><span·class="p">.</span><span·class="w">
  
230 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="6385599055-2">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="6385599055-3">(</span><span·class="w">230 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="5386427555-2">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="5386427555-3">(</span><span·class="w">
231 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="6385599055-4">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="6385599055-5">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span[·...·truncated·by·diffoscope;·len:·262,·SHA:·8c300208107b9e8d455009ae2c075bcd22b012ed46d68c5771641df1c2a49b00·...·]55-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">2000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="5386427555-4">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="5386427555-5">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span[·...·truncated·by·diffoscope;·len:·262,·SHA:·bbca70256707d96510632bdf649c05c87ec9aaa2b17f9490149e03fd05c4f025·...·]55-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">2000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 ···························</span><span·class="n">E</span><span·class="w">232 ···························</span><span·class="n">E</span><span·class="w">
233 ······················</span><span·class="k">end</span><span·class="p"·data-group-id="6385599055-3">)</span><span·class="p"·data-group-id="6385599055-2">)</span><span·class="p">.</span></code></pre><h2·id="module-example-3"·class="section-heading">233 ······················</span><span·class="k">end</span><span·class="p"·data-group-id="5386427555-3">)</span><span·class="p"·data-group-id="5386427555-2">)</span><span·class="p">.</span></code></pre><h2·id="module-example-3"·class="section-heading">
234 ··<a·href="#module-example-3"·class="hover-link">234 ··<a·href="#module-example-3"·class="hover-link">
235 ····<i·class="ri-link-m"·aria-hidden="true"></i>235 ····<i·class="ri-link-m"·aria-hidden="true"></i>
236 ··</a>236 ··</a>
237 ··<span·class="text">Example·3</span>237 ··<span·class="text">Example·3</span>
238 </h2>238 </h2>
239 <p>Assume·that·we·want·the·whole·object·matching·instead·of·only·one·element.·One239 <p>Assume·that·we·want·the·whole·object·matching·instead·of·only·one·element.·One
240 alternative·is·to·assign·a·variable·to·every·part·of·the·record·and·build·it·up240 alternative·is·to·assign·a·variable·to·every·part·of·the·record·and·build·it·up
241 once·again·in·the·body·of·the·fun,·but·the·following·is·easier:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="7133887241-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="7133887241-2">(</span><span·class="w">241 once·again·in·the·body·of·the·fun,·but·the·following·is·easier:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="3499552671-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="3499552671-2">(</span><span·class="w">
242 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="7133887241-3">(</span><span·class="n">Obj</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="7133887241-4">{</span><span·class="ss">empno</span><sp[·...·truncated·by·diffoscope;·len:·361,·SHA:·c328abc538baa99de1fe1c325cf66a5cb977433211e60cac3f36a1bd91c8e517·...·]1-3">)</span><span·class="w">242 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="3499552671-3">(</span><span·class="n">Obj</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="3499552671-4">{</span><span·class="ss">empno</span><sp[·...·truncated·by·diffoscope;·len:·361,·SHA:·9506151a58d3db6c11a13c4212a107c8ebcc49d3b608daeb1657ee03b5487eb5·...·]1-3">)</span><span·class="w">
243 ·························</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">2000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">243 ·························</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">2000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
244 ······························</span><span·class="n">Obj</span><span·class="w">244 ······························</span><span·class="n">Obj</span><span·class="w">
245 ······················</span><span·class="k">end</span><span·class="p"·data-group-id="7133887241-2">)</span><span·class="p"·data-group-id="7133887241-1">)</span><span·class="p">.</span></code></pre><p>As·in·ordinary·Erlang·matching,·you·can·bind·a·variable·to·the·whole·matched245 ······················</span><span·class="k">end</span><span·class="p"·data-group-id="3499552671-2">)</span><span·class="p"·data-group-id="3499552671-1">)</span><span·class="p">.</span></code></pre><p>As·in·ordinary·Erlang·matching,·you·can·bind·a·variable·to·the·whole·matched
246 object·using·a·&quot;match·inside·the·match&quot;,·that·is,·a·<code·class="inline">=</code>.·Unfortunately·in·funs246 object·using·a·&quot;match·inside·the·match&quot;,·that·is,·a·<code·class="inline">=</code>.·Unfortunately·in·funs
247 translated·to·match·specifications,·it·is·allowed·only·at·the·&quot;top-level&quot;,·that247 translated·to·match·specifications,·it·is·allowed·only·at·the·&quot;top-level&quot;,·that
248 is,·matching·the·<em>whole</em>·object·arriving·to·be·matched·into·a·separate·variable.248 is,·matching·the·<em>whole</em>·object·arriving·to·be·matched·into·a·separate·variable.
249 If·you·are·used·to·writing·match·specifications·by·hand,·we·mention·that249 If·you·are·used·to·writing·match·specifications·by·hand,·we·mention·that
250 variable·A·is·simply·translated·into·'$_'.·Alternatively,·pseudo·function250 variable·A·is·simply·translated·into·'$_'.·Alternatively,·pseudo·function
251 <code·class="inline">object/0</code>·also·returns·the·whole·matched·object,·see·section251 <code·class="inline">object/0</code>·also·returns·the·whole·matched·object,·see·section
252 <a·href="ms_transform.html#warnings_and_restrictions">Warnings·and·Restrictions</a>.</p><h2·id="module-example-4"·class="section-heading">252 <a·href="ms_transform.html#warnings_and_restrictions">Warnings·and·Restrictions</a>.</p><h2·id="module-example-4"·class="section-heading">
253 ··<a·href="#module-example-4"·class="hover-link">253 ··<a·href="#module-example-4"·class="hover-link">
254 ····<i·class="ri-link-m"·aria-hidden="true"></i>254 ····<i·class="ri-link-m"·aria-hidden="true"></i>
255 ··</a>255 ··</a>
256 ··<span·class="text">Example·4</span>256 ··<span·class="text">Example·4</span>
257 </h2>257 </h2>
258 <p>This·example·concerns·the·body·of·the·fun.·Assume·that·all·employee·numbers258 <p>This·example·concerns·the·body·of·the·fun.·Assume·that·all·employee·numbers
259 beginning·with·zero·(<code·class="inline">0</code>)·must·be·changed·to·begin·with·one·(<code·class="inline">1</code>)·instead,·and259 beginning·with·zero·(<code·class="inline">0</code>)·must·be·changed·to·begin·with·one·(<code·class="inline">1</code>)·instead,·and
260 that·we·want·to·create·the·list·<code·class="inline">[{&lt;Old·empno&gt;,&lt;New·empno&gt;}]</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="7043592699-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="7043592699-2">(</span><span·class="w">260 that·we·want·to·create·the·list·<code·class="inline">[{&lt;Old·empno&gt;,&lt;New·empno&gt;}]</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="6995535946-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="6995535946-2">(</span><span·class="w">
261 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="7043592699-3">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="7043592699-4">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·320,·SHA:·ff597abe5f0342669e9ad3eac1f90c946ed48c68a8b9d5b416832b5c81d79271·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">261 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="6995535946-3">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="6995535946-4">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·320,·SHA:·b105f9c47208a7b7f836f60f6af34d6d42d59db7907299523377c0f21d1709cd·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
262 ······························</span><span·class="p"·data-group-id="7043592699-6">{</span><span·class="p"·data-group-id="7043592699-7">[</span><span·class="sc">$0</span><span·class="p">|</span><span·class="n">Rest</span><span·class="p"·data-group-id="7043592699-7">]</span><span·class="p">,</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·197,·SHA:·231ab1c1b7d26dfd2c1c3c5a7166bfc40d367e5b18820bb7764e021c08fe05b6·...·]-6">}</span><span·class="w">262 ······························</span><span·class="p"·data-group-id="6995535946-6">{</span><span·class="p"·data-group-id="6995535946-7">[</span><span·class="sc">$0</span><span·class="p">|</span><span·class="n">Rest</span><span·class="p"·data-group-id="6995535946-7">]</span><span·class="p">,</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·197,·SHA:·a277360f21877c0b59841b4f38c8f6f90c65b0b3dce40aa38d00b8a26bc3bf74·...·]-6">}</span><span·class="w">
263 ······················</span><span·class="k">end</span><span·class="p"·data-group-id="7043592699-2">)</span><span·class="p"·data-group-id="7043592699-1">)</span><span·class="p">.</span></code></pre><p>This·query·hits·the·feature·of·partially·bound·keys·in·table·type·<code·class="inline">ordered_set</code>,263 ······················</span><span·class="k">end</span><span·class="p"·data-group-id="6995535946-2">)</span><span·class="p"·data-group-id="6995535946-1">)</span><span·class="p">.</span></code></pre><p>This·query·hits·the·feature·of·partially·bound·keys·in·table·type·<code·class="inline">ordered_set</code>,
264 so·that·not·the·whole·table·needs·to·be·searched,·only·the·part·containing·keys264 so·that·not·the·whole·table·needs·to·be·searched,·only·the·part·containing·keys
265 beginning·with·<code·class="inline">0</code>·is·looked·into.</p><h2·id="module-example-5"·class="section-heading">265 beginning·with·<code·class="inline">0</code>·is·looked·into.</p><h2·id="module-example-5"·class="section-heading">
266 ··<a·href="#module-example-5"·class="hover-link">266 ··<a·href="#module-example-5"·class="hover-link">
267 ····<i·class="ri-link-m"·aria-hidden="true"></i>267 ····<i·class="ri-link-m"·aria-hidden="true"></i>
268 ··</a>268 ··</a>
269 ··<span·class="text">Example·5</span>269 ··<span·class="text">Example·5</span>
270 </h2>270 </h2>
271 <p>The·fun·can·have·many·clauses.·Assume·that·we·want·to·do·the·following:</p><ul><li>If·an·employee·started·before·1997,·return·the·tuple271 <p>The·fun·can·have·many·clauses.·Assume·that·we·want·to·do·the·following:</p><ul><li>If·an·employee·started·before·1997,·return·the·tuple
272 <code·class="inline">{inventory,·&lt;employee·number&gt;}</code>.</li><li>If·an·employee·started·1997·or·later,·but·before·2001,·return272 <code·class="inline">{inventory,·&lt;employee·number&gt;}</code>.</li><li>If·an·employee·started·1997·or·later,·but·before·2001,·return
273 <code·class="inline">{rookie,·&lt;employee·number&gt;}</code>.</li><li>For·all·other·employees,·return·<code·class="inline">{newbie,·&lt;employee·number&gt;}</code>,·except·for273 <code·class="inline">{rookie,·&lt;employee·number&gt;}</code>.</li><li>For·all·other·employees,·return·<code·class="inline">{newbie,·&lt;employee·number&gt;}</code>,·except·for
274 those·named·<code·class="inline">Smith</code>·as·they·would·be·affronted·by·anything·other·than·the·tag274 those·named·<code·class="inline">Smith</code>·as·they·would·be·affronted·by·anything·other·than·the·tag
275 <code·class="inline">guru</code>·and·that·is·also·what·is·returned·for·their·numbers:275 <code·class="inline">guru</code>·and·that·is·also·what·is·returned·for·their·numbers:
276 <code·class="inline">{guru,·&lt;employee·number&gt;}</code>.</li></ul><p>This·is·accomplished·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="8855776243-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="8855776243-2">(</span><span·class="w">276 <code·class="inline">{guru,·&lt;employee·number&gt;}</code>.</li></ul><p>This·is·accomplished·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">select</span><span·class="p"·data-group-id="0442699012-1">(</span><span·class="ss">emp_tab</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ets</span><span·class="p">:</span><span·class="nf">fun2ms</span><span·class="p"·data-group-id="0442699012-2">(</span><span·class="w">
277 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="8855776243-3">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="8855776243-4">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span[·...·truncated·by·diffoscope;·len:·304,·SHA:·5f879ffc933c9243e83977871490052620213a2682de1ffe0f26b5ab8369bcd8·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">277 ······················</span><span·class="nf">fun</span><span·class="p"·data-group-id="0442699012-3">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="0442699012-4">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span[·...·truncated·by·diffoscope;·len:·304,·SHA:·8b3d4324caf15dc0c1d3a15827ade73b4f37c61ab367b8f7c1d0c0caeec8114c·...·]-3">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
278 ······························</span><span·class="p"·data-group-id="8855776243-5">{</span><span·class="ss">guru</span><span·class="p">,</span><span·class="n">E</span><span·class="p"·data-group-id="8855776243-5">}</span><span·class="p">;</span><span·class="w">278 ······························</span><span·class="p"·data-group-id="0442699012-5">{</span><span·class="ss">guru</span><span·class="p">,</span><span·class="n">E</span><span·class="p"·data-group-id="0442699012-5">}</span><span·class="p">;</span><span·class="w">
279 ·························</span><span·class="p"·data-group-id="8855776243-6">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="8855776243-7">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span[·...·truncated·by·diffoscope;·len:·264,·SHA:·7adc29db05cf2b3b001d74ddca439868cb16ad383f8e8fe544fff5bcca6de8fc·...·]-6">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">1997</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">279 ·························</span><span·class="p"·data-group-id="0442699012-6">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="0442699012-7">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><span[·...·truncated·by·diffoscope;·len:·264,·SHA:·2b54428b3b56c0c0d81b7e960c6862d88c86714d6c45242eab7f03fcc8ba26d9·...·]-6">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="mi">1997</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">
280 ······························</span><span·class="p"·data-group-id="8855776243-8">{</span><span·class="ss">inventory</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="p"·data-group-id="8855776243-8">}</span><span·class="p">;</span><span·class="w">280 ······························</span><span·class="p"·data-group-id="0442699012-8">{</span><span·class="ss">inventory</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="p"·data-group-id="0442699012-8">}</span><span·class="p">;</span><span·class="w">
281 ·························</span><span·class="p"·data-group-id="8855776243-9">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="8855776243-10">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><spa[·...·truncated·by·diffoscope;·len:·266,·SHA:·34e0d6502929276196e4ac386881ffce3f79c3a1d80228413290b55e1614b6f6·...·]-9">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">2001</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">281 ·························</span><span·class="p"·data-group-id="0442699012-9">(</span><span·class="o">#</span><span·class="ss">emp</span><span·class="p"·data-group-id="0442699012-10">{</span><span·class="ss">empno</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">E</span><spa[·...·truncated·by·diffoscope;·len:·266,·SHA:·a222ee29d717237d9c651a4066070b2b5571eba8edbfa0f5919f3449ea2b921e·...·]-9">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">2001</span><span·class="w">··</span><span·class="p">-&gt;</span><span·class="w">
Max diff block lines reached; 75996/143587 bytes (52.93%) of diff not shown.
691 B
html2text {}
Max HTML report size reached
25.7 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/notes.html
    
Offset 156, 16 lines modifiedOffset 156, 16 lines modified
156 <a·href="binary.html#split/2"><code·class="inline">binary:split/2,3</code></a></p><p>The·call·<code·class="inline">binary:copy(&lt;&lt;1:1&gt;&gt;,·0)</code>·would·return·an·empty·binary·instead·of·raising·an·exception.·Similarly,·calls·to·<a·href="binary.html#part/2"><code·class="inline">binary:part/2,3</code></a>·attempting·to·extract·0·bytes·at·position·0·of·a·bitstring·would·return·an·empty·binary·instead·of·raising·an·exception.</p><p>Own·Id:·OTP-18743·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7607"·title="">PR-7607</a>,·<a·href="https://github.com/erlang/otp/pull/7628"·title="">PR-7628</a></p></li><li><p>The·documentation·for·the·preprocessor·now·mentions·that·<code·class="inline">defined(Name)</code>·can·be·called·in·the·condition·for·an·<code·class="inline">-if</code>·or·<code·class="inline">-elif</code>·directive·to·test·whether·<code·class="inline">Name</code>·is·the·name·of·a·defined·macro.·(This·feature·was·implemented·in·OTP·21.)</p><p>If·a·function·call·in·an·<code·class="inline">-if</code>·or·<code·class="inline">-elif</code>·with·a·name·that·is·not·the·name·of·a·guard·BIF,·there·would·not·be·a·compilation·error,·but·would·instead·cause·the·lines·following·the·directive·to·be·skipped.·This·has·now·been·changed·to·be·a·compilation·error.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18784·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/7706"·title="">GH-7706</a>,·<a·href="https://github.com/erlang/otp/pull/7726"·title="">PR-7726</a></p></li><li><p><code·class="inline">get_until</code>·requests·using·the·I/O·protocol·now·correctly·return·a·binary·or·list·when·<code·class="inline">eof</code>·is·the·last·item·returned·by·the·callback.</p><p>Own·Id:·OTP-18930·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7993"·title="">PR-7993</a>,·<a·href="https://github.com/erlang/otp/issues/4992"·title="">GH-4992</a></p></li><li><p>The·error·handling·the·<code·class="inline">simple_one_for_one</code>·supervisor·has·been·enhanced.·A·transient·child·returning·<code·class="inline">ignore</code>·will·no·longer·cause·a·crash.</p><p>Also,·automatic·shutdown·has·been·disabled·because·it·does·not·make·sense·for·this·supervisor·type.·That·is·was·allowed·is·considered·a·bug.·Therefore,·we·don't·consider·this·an·incompatible·change.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-19029·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8230"·title="">PR-8230</a></p></li><li><p>Fix·shell·expansion·to·not·crash·when·expanding·a·map·with·non-atom·keys·and·to·not·list·zero·arity·functions·when·an·argument·has·been·given.</p><p>Own·Id:·OTP-19073·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/8366"·title="">PR-8375</a>·<a·href="https://github.com/erlang/otp/issues/8364"·title="">GH-8365</a></p></li></ul><h3·id="improvements-and-new-features"·class="section-heading">156 <a·href="binary.html#split/2"><code·class="inline">binary:split/2,3</code></a></p><p>The·call·<code·class="inline">binary:copy(&lt;&lt;1:1&gt;&gt;,·0)</code>·would·return·an·empty·binary·instead·of·raising·an·exception.·Similarly,·calls·to·<a·href="binary.html#part/2"><code·class="inline">binary:part/2,3</code></a>·attempting·to·extract·0·bytes·at·position·0·of·a·bitstring·would·return·an·empty·binary·instead·of·raising·an·exception.</p><p>Own·Id:·OTP-18743·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7607"·title="">PR-7607</a>,·<a·href="https://github.com/erlang/otp/pull/7628"·title="">PR-7628</a></p></li><li><p>The·documentation·for·the·preprocessor·now·mentions·that·<code·class="inline">defined(Name)</code>·can·be·called·in·the·condition·for·an·<code·class="inline">-if</code>·or·<code·class="inline">-elif</code>·directive·to·test·whether·<code·class="inline">Name</code>·is·the·name·of·a·defined·macro.·(This·feature·was·implemented·in·OTP·21.)</p><p>If·a·function·call·in·an·<code·class="inline">-if</code>·or·<code·class="inline">-elif</code>·with·a·name·that·is·not·the·name·of·a·guard·BIF,·there·would·not·be·a·compilation·error,·but·would·instead·cause·the·lines·following·the·directive·to·be·skipped.·This·has·now·been·changed·to·be·a·compilation·error.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18784·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/7706"·title="">GH-7706</a>,·<a·href="https://github.com/erlang/otp/pull/7726"·title="">PR-7726</a></p></li><li><p><code·class="inline">get_until</code>·requests·using·the·I/O·protocol·now·correctly·return·a·binary·or·list·when·<code·class="inline">eof</code>·is·the·last·item·returned·by·the·callback.</p><p>Own·Id:·OTP-18930·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7993"·title="">PR-7993</a>,·<a·href="https://github.com/erlang/otp/issues/4992"·title="">GH-4992</a></p></li><li><p>The·error·handling·the·<code·class="inline">simple_one_for_one</code>·supervisor·has·been·enhanced.·A·transient·child·returning·<code·class="inline">ignore</code>·will·no·longer·cause·a·crash.</p><p>Also,·automatic·shutdown·has·been·disabled·because·it·does·not·make·sense·for·this·supervisor·type.·That·is·was·allowed·is·considered·a·bug.·Therefore,·we·don't·consider·this·an·incompatible·change.</p><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-19029·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8230"·title="">PR-8230</a></p></li><li><p>Fix·shell·expansion·to·not·crash·when·expanding·a·map·with·non-atom·keys·and·to·not·list·zero·arity·functions·when·an·argument·has·been·given.</p><p>Own·Id:·OTP-19073·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/8366"·title="">PR-8375</a>·<a·href="https://github.com/erlang/otp/issues/8364"·title="">GH-8365</a></p></li></ul><h3·id="improvements-and-new-features"·class="section-heading">
157 ··<a·href="#improvements-and-new-features"·class="hover-link">157 ··<a·href="#improvements-and-new-features"·class="hover-link">
158 ····<i·class="ri-link-m"·aria-hidden="true"></i>158 ····<i·class="ri-link-m"·aria-hidden="true"></i>
159 ··</a>159 ··</a>
160 ··<span·class="text">Improvements·and·New·Features</span>160 ··<span·class="text">Improvements·and·New·Features</span>
161 </h3>161 </h3>
162 <ul><li><p>The·functions·<a·href="sets.html#is_equal/2"><code·class="inline">is_equal/2</code></a>,·<a·href="sets.html#map/2"><code·class="inline">map/2</code></a>,·and·<a·href="sets.html#filtermap/2"><code·class="inline">filtermap/2</code></a>·have·been·added·to·the·modules·<a·href="sets.html"><code·class="inline">sets</code></a>,·<a·href="ordsets.html"><code·class="inline">ordsets</code></a>,·and·<a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>.</p><p>Own·Id:·OTP-18622·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7183"·title="">PR-7183</a>,·<a·href="https://github.com/erlang/otp/pull/7232"·title="">PR-7232</a></p></li><li><p>The·compiler·now·emits·nicer·error·message·for·function·head·mismatches.162 <ul><li><p>The·functions·<a·href="sets.html#is_equal/2"><code·class="inline">is_equal/2</code></a>,·<a·href="sets.html#map/2"><code·class="inline">map/2</code></a>,·and·<a·href="sets.html#filtermap/2"><code·class="inline">filtermap/2</code></a>·have·been·added·to·the·modules·<a·href="sets.html"><code·class="inline">sets</code></a>,·<a·href="ordsets.html"><code·class="inline">ordsets</code></a>,·and·<a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>.</p><p>Own·Id:·OTP-18622·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7183"·title="">PR-7183</a>,·<a·href="https://github.com/erlang/otp/pull/7232"·title="">PR-7232</a></p></li><li><p>The·compiler·now·emits·nicer·error·message·for·function·head·mismatches.
163 For·example,·given:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">a</span><span·class="p"·data-group-id="0460137410-1">(</span><span·class="p"·data-group-id="0460137410-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">163 For·example,·given:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">a</span><span·class="p"·data-group-id="4668965712-1">(</span><span·class="p"·data-group-id="4668965712-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
164 </span><span·class="nf">a</span><span·class="p"·data-group-id="0460137410-2">(</span><span·class="p">_</span><span·class="p"·data-group-id="0460137410-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="p">.</span></code></pre><p>Erlang/OTP·26·and·earlier·would·emit·a·diagnostic·similar·to:</p><pre><code·class="text">t.erl:6:1:·head·mismatch164 </span><span·class="nf">a</span><span·class="p"·data-group-id="4668965712-2">(</span><span·class="p">_</span><span·class="p"·data-group-id="4668965712-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">error</span><span·class="p">.</span></code></pre><p>Erlang/OTP·26·and·earlier·would·emit·a·diagnostic·similar·to:</p><pre><code·class="text">t.erl:6:1:·head·mismatch
165 %····6|·a(_)·-&gt;·error.165 %····6|·a(_)·-&gt;·error.
166 %·····|·^</code></pre><p>while·in·Erlang/OTP·27·the·diagnostic·is·similar·to:</p><pre><code·class="text">t.erl:6:1:·head·mismatch:·function·a·with·arities·0·and·1·is·regarded·as·two·distinct·functions.·Is·the·number·of·arguments·incorrect·or·is·the·semicolon·in·a/0·unwanted?166 %·····|·^</code></pre><p>while·in·Erlang/OTP·27·the·diagnostic·is·similar·to:</p><pre><code·class="text">t.erl:6:1:·head·mismatch:·function·a·with·arities·0·and·1·is·regarded·as·two·distinct·functions.·Is·the·number·of·arguments·incorrect·or·is·the·semicolon·in·a/0·unwanted?
167 %····6|·a(_)·-&gt;·error.167 %····6|·a(_)·-&gt;·error.
168 %·····|·^</code></pre><p>Own·Id:·OTP-18648·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7383"·title="">PR-7383</a></p></li><li><p><a·href="zip.html#create/2"><code·class="inline">zip:create/2,3</code></a>·will·now·tolerate·POSIX·timestamps·in·the·provided·<code·class="inline">file_info</code>·records.</p><p>Own·Id:·OTP-18668</p></li><li><p>The·callback·function·<a·href="gen_statem.html#c:handle_event/4"><code·class="inline">gen_statem:handle_event/4</code></a>·has·been·cached·in·the·<code·class="inline">gen_statem</code>·engine·to·optimize·callback·call·speed.</p><p>Own·Id:·OTP-18671·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7419"·title="">PR-7419</a></p></li><li><p>The·type·<code·class="inline">beam_lib:beam/0</code>·is·now·exported.</p><p>Own·Id:·OTP-18716·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7534"·title="">PR-7534</a></p></li><li><p>The·documentation·for·the·<a·href="binary.html"><code·class="inline">binary</code></a>·module·has·been·improved.</p><p>Own·Id:·OTP-18741·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7585"·title="">PR-7585</a></p></li><li><p><a·href="binary.html#replace/3"><code·class="inline">binary:replace/3,4</code></a>·now·supports·using·a·fun·for·supplying·the·replacement·binary.</p><p>Own·Id:·OTP-18742·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7590"·title="">PR-7590</a></p></li><li><p>Triple-Quoted·Strings·has·been·implemented·as·per·<a·href="https://www.erlang.org/eeps/eep-0064">EEP·64</a>.·See·<a·href="../../../../doc/system/data_types.html#string">String</a>·in·the·Reference·Manual.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="s">&quot;&quot;</span><span·class="s">&quot;168 %·····|·^</code></pre><p>Own·Id:·OTP-18648·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7383"·title="">PR-7383</a></p></li><li><p><a·href="zip.html#create/2"><code·class="inline">zip:create/2,3</code></a>·will·now·tolerate·POSIX·timestamps·in·the·provided·<code·class="inline">file_info</code>·records.</p><p>Own·Id:·OTP-18668</p></li><li><p>The·callback·function·<a·href="gen_statem.html#c:handle_event/4"><code·class="inline">gen_statem:handle_event/4</code></a>·has·been·cached·in·the·<code·class="inline">gen_statem</code>·engine·to·optimize·callback·call·speed.</p><p>Own·Id:·OTP-18671·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7419"·title="">PR-7419</a></p></li><li><p>The·type·<code·class="inline">beam_lib:beam/0</code>·is·now·exported.</p><p>Own·Id:·OTP-18716·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7534"·title="">PR-7534</a></p></li><li><p>The·documentation·for·the·<a·href="binary.html"><code·class="inline">binary</code></a>·module·has·been·improved.</p><p>Own·Id:·OTP-18741·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7585"·title="">PR-7585</a></p></li><li><p><a·href="binary.html#replace/3"><code·class="inline">binary:replace/3,4</code></a>·now·supports·using·a·fun·for·supplying·the·replacement·binary.</p><p>Own·Id:·OTP-18742·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7590"·title="">PR-7590</a></p></li><li><p>Triple-Quoted·Strings·has·been·implemented·as·per·<a·href="https://www.erlang.org/eeps/eep-0064">EEP·64</a>.·See·<a·href="../../../../doc/system/data_types.html#string">String</a>·in·the·Reference·Manual.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="s">&quot;&quot;</span><span·class="s">&quot;
169 ···a169 ···a
170 ···b170 ···b
171 ···c171 ···c
Offset 190, 20 lines modifiedOffset 190, 20 lines modified
190 3&gt;·</span><span·class="s">~S&quot;\s*(\w+)&quot;</span><span·class="p">.</span><span·class="w">190 3&gt;·</span><span·class="s">~S&quot;\s*(\w+)&quot;</span><span·class="p">.</span><span·class="w">
191 </span><span·class="s">&quot;\\s*(\\w+)&quot;</span><span·class="gp·unselectable">191 </span><span·class="s">&quot;\\s*(\\w+)&quot;</span><span·class="gp·unselectable">
192 4&gt;·</span><span·class="s">~B&quot;\s*(\w+)&quot;</span><span·class="p">.</span><span·class="w">192 4&gt;·</span><span·class="s">~B&quot;\s*(\w+)&quot;</span><span·class="p">.</span><span·class="w">
193 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;\\s*(\\w+)&quot;</span><span·class="p">&gt;&gt;</span></code></pre><p>Own·Id:·OTP-18825·Aux·Id:·OTP-18750,·<a·href="https://github.com/erlang/otp/pull/7684"·title="">PR-7684</a></p></li><li><p>Functions·<a·href="shell.html#default_multiline_prompt/1"><code·class="inline">shell:default_multiline_prompt/1</code></a>,·<a·href="shell.html#inverted_space_prompt/1"><code·class="inline">shell:inverted_space_prompt/1</code></a>,·and·193 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;\\s*(\\w+)&quot;</span><span·class="p">&gt;&gt;</span></code></pre><p>Own·Id:·OTP-18825·Aux·Id:·OTP-18750,·<a·href="https://github.com/erlang/otp/pull/7684"·title="">PR-7684</a></p></li><li><p>Functions·<a·href="shell.html#default_multiline_prompt/1"><code·class="inline">shell:default_multiline_prompt/1</code></a>,·<a·href="shell.html#inverted_space_prompt/1"><code·class="inline">shell:inverted_space_prompt/1</code></a>,·and·
194 <a·href="shell.html#prompt_width/1"><code·class="inline">shell:prompt_width/1</code></a>·have·been·exported·to·help·with·custom·prompt·implementations.</p><p>Own·Id:·OTP-18834·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7816"·title="">PR-7675</a></p></li><li><p>The·shell·now·pages·long·output·from·the·documentation·help·command·(<code·class="inline">h(Module)</code>),·auto·completions·and·the·search·command.</p><p>Own·Id:·OTP-18846·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7845"·title="">PR-7845</a></p></li><li><p>The·<code·class="inline">M-h</code>·hotkey·(Alt/Option-h)·now·outputs·help·for·the·module·or·function·directly·before·the·cursor.</p><p>Own·Id:·OTP-18847·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7846"·title="">PR-7846</a></p></li><li><p>Added·support·for·adding·a·custom·code·formatter·that·formats·your·multi-line·shell·commands·in·your·preferred·formatting·on·submission.·See·<code·class="inline">shell:format_shell_func/</code>·and·<a·href="shell.html#erl_pp_format_func/1"><code·class="inline">shell:erl_pp_format_func/1</code></a>.</p><p>Own·Id:·OTP-18848·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7847"·title="">PR-7847</a></p></li><li><p>Added·shell·functions·for·viewing,·forgetting·and·saving·locally·defined·functions,·types·and·records.</p><p>Own·Id:·OTP-18852·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7844"·title="">PR-7844</a></p></li><li><p>Added·<a·href="string.html#jaro_similarity/2"><code·class="inline">string:jaro_similarity/2</code></a>,·which·can·be·used·to·calculate·the·similarity·between·two·strings.</p><p>Own·Id:·OTP-18865·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7879"·title="">PR-7879</a></p></li><li><p>The·new·function·<a·href="ets.html#update_element/4"><code·class="inline">ets:update_element/4</code></a>·is·similar·to·<a·href="ets.html#update_element/3"><code·class="inline">ets:update_element/3</code></a>,·but·takes·a·default·tuple·as·the·fourth·argument,·which·will·be·inserted·if·no·previous·record·with·that·key·exists.</p><p>Own·Id:·OTP-18870·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7857"·title="">PR-7857</a></p></li><li><p>Added·functions·to·retrieve·the·next·higher·or·lower·key/element·from·<a·href="gb_trees.html"><code·class="inline">gb_trees</code></a>·and·<a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>,·as·well·as·returning·iterators·that·start·at·given·keys/elements.</p><p>Own·Id:·OTP-18874·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7745"·title="">PR-7745</a></p></li><li><p>When·the·shell·built-in·function·<a·href="c.html#c/1"·title=""><code·class="inline">c/1,2</code></a>·is·used·to·re-compile·a·module,·the·current·working·directory·of·the·original·compilation·is·now·added·to·the·include·path.</p><p>Own·Id:·OTP-18908·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7957"·title="">PR-7957</a></p></li><li><p>The·<code·class="inline">timer</code>·module·now·uses·a·private·table·for·its·internal·state,·slightly·improving·its·performance.</p><p>Own·Id:·OTP-18914·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7973"·title="">PR-7973</a></p></li><li><p><a·href="https://www.erlang.org/eeps/eep-0059">EEP-59·-·Documentation·Attributes</a>·has·been·implemented.</p><p>Documentation·attributes·can·be·used·to·document·functions,·types,·callbacks,·and·modules.194 <a·href="shell.html#prompt_width/1"><code·class="inline">shell:prompt_width/1</code></a>·have·been·exported·to·help·with·custom·prompt·implementations.</p><p>Own·Id:·OTP-18834·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7816"·title="">PR-7675</a></p></li><li><p>The·shell·now·pages·long·output·from·the·documentation·help·command·(<code·class="inline">h(Module)</code>),·auto·completions·and·the·search·command.</p><p>Own·Id:·OTP-18846·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7845"·title="">PR-7845</a></p></li><li><p>The·<code·class="inline">M-h</code>·hotkey·(Alt/Option-h)·now·outputs·help·for·the·module·or·function·directly·before·the·cursor.</p><p>Own·Id:·OTP-18847·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7846"·title="">PR-7846</a></p></li><li><p>Added·support·for·adding·a·custom·code·formatter·that·formats·your·multi-line·shell·commands·in·your·preferred·formatting·on·submission.·See·<code·class="inline">shell:format_shell_func/</code>·and·<a·href="shell.html#erl_pp_format_func/1"><code·class="inline">shell:erl_pp_format_func/1</code></a>.</p><p>Own·Id:·OTP-18848·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7847"·title="">PR-7847</a></p></li><li><p>Added·shell·functions·for·viewing,·forgetting·and·saving·locally·defined·functions,·types·and·records.</p><p>Own·Id:·OTP-18852·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7844"·title="">PR-7844</a></p></li><li><p>Added·<a·href="string.html#jaro_similarity/2"><code·class="inline">string:jaro_similarity/2</code></a>,·which·can·be·used·to·calculate·the·similarity·between·two·strings.</p><p>Own·Id:·OTP-18865·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7879"·title="">PR-7879</a></p></li><li><p>The·new·function·<a·href="ets.html#update_element/4"><code·class="inline">ets:update_element/4</code></a>·is·similar·to·<a·href="ets.html#update_element/3"><code·class="inline">ets:update_element/3</code></a>,·but·takes·a·default·tuple·as·the·fourth·argument,·which·will·be·inserted·if·no·previous·record·with·that·key·exists.</p><p>Own·Id:·OTP-18870·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7857"·title="">PR-7857</a></p></li><li><p>Added·functions·to·retrieve·the·next·higher·or·lower·key/element·from·<a·href="gb_trees.html"><code·class="inline">gb_trees</code></a>·and·<a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>,·as·well·as·returning·iterators·that·start·at·given·keys/elements.</p><p>Own·Id:·OTP-18874·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7745"·title="">PR-7745</a></p></li><li><p>When·the·shell·built-in·function·<a·href="c.html#c/1"·title=""><code·class="inline">c/1,2</code></a>·is·used·to·re-compile·a·module,·the·current·working·directory·of·the·original·compilation·is·now·added·to·the·include·path.</p><p>Own·Id:·OTP-18908·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7957"·title="">PR-7957</a></p></li><li><p>The·<code·class="inline">timer</code>·module·now·uses·a·private·table·for·its·internal·state,·slightly·improving·its·performance.</p><p>Own·Id:·OTP-18914·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7973"·title="">PR-7973</a></p></li><li><p><a·href="https://www.erlang.org/eeps/eep-0059">EEP-59·-·Documentation·Attributes</a>·has·been·implemented.</p><p>Documentation·attributes·can·be·used·to·document·functions,·types,·callbacks,·and·modules.
195 The·keyword·<code·class="inline">-moduledoc·&quot;Documentation·here&quot;.</code>·is·used·to·document·modules,·while·<code·class="inline">-doc·&quot;Documentation·here&quot;.</code>·can·be·used·on·top·of·functions,·types,·and·callbacks·to·document·them,·respectively.</p><ul><li><p>Types,·callbacks,·and·function·documentation·can·be·set·to·<code·class="inline">hidden</code>·either·via·<code·class="inline">-doc·false</code>·or·<code·class="inline">-doc·hidden</code>.·When·documentation·attributes·mark·a·type·as·hidden,·they·will·not·be·part·of·the·documentation.</p></li><li><p>The·documentation·from·<code·class="inline">moduledoc</code>·and·<code·class="inline">doc</code>·gets·added·by·default·to·the·binary·beam·file,·following·the·format·of·<a·href="https://www.erlang.org/eeps/eep-0048">EEP-48</a>.</p></li><li><p>Using·the·compiler·flag·<code·class="inline">warn_missing_doc</code>·will·raise·a·warning·when195 The·keyword·<code·class="inline">-moduledoc·&quot;Documentation·here&quot;.</code>·is·used·to·document·modules,·while·<code·class="inline">-doc·&quot;Documentation·here&quot;.</code>·can·be·used·on·top·of·functions,·types,·and·callbacks·to·document·them,·respectively.</p><ul><li><p>Types,·callbacks,·and·function·documentation·can·be·set·to·<code·class="inline">hidden</code>·either·via·<code·class="inline">-doc·false</code>·or·<code·class="inline">-doc·hidden</code>.·When·documentation·attributes·mark·a·type·as·hidden,·they·will·not·be·part·of·the·documentation.</p></li><li><p>The·documentation·from·<code·class="inline">moduledoc</code>·and·<code·class="inline">doc</code>·gets·added·by·default·to·the·binary·beam·file,·following·the·format·of·<a·href="https://www.erlang.org/eeps/eep-0048">EEP-48</a>.</p></li><li><p>Using·the·compiler·flag·<code·class="inline">warn_missing_doc</code>·will·raise·a·warning·when
196 <code·class="inline">-doc</code>·attributes·are·missing·in·exported·functions,·types,·and·callbacks.</p></li><li><p>Using·the·compiler·flag·<code·class="inline">warn_missing_spec_documented</code>·will·raise·a·warning·when196 <code·class="inline">-doc</code>·attributes·are·missing·in·exported·functions,·types,·and·callbacks.</p></li><li><p>Using·the·compiler·flag·<code·class="inline">warn_missing_spec_documented</code>·will·raise·a·warning·when
197 spec·attributes·are·missing·in·documented·functions,·types,·and·callbacks.</p></li><li><p><code·class="inline">moduledoc</code>s·and·<code·class="inline">doc</code>s·may·refer·to·external·files·to·be·embedded,·such·as·<code·class="inline">-doc·{file,·&quot;README.md&quot;}.</code>,·which·refers·to·the·file·<code·class="inline">README.md</code>·found·in·the·current·working·directory.</p></li><li><p>The·compiler·warns·about·exported·functions·whose·specs·refer·to·hidden·types.·Thus,·there·will·be·warnings·when·a·hidden·type·(meaning,·the·type·is·not·part·of·the·documentation)·gets·used·in·an·exported·function.</p></li></ul><p>Own·Id:·OTP-18916·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7936"·title="">PR-7936</a></p></li><li><p>New·<a·href="ets.html"><code·class="inline">ets</code></a>·functions·<a·href="ets.html#first_lookup/1"><code·class="inline">ets:first_lookup/1</code></a>,·<a·href="ets.html#next_lookup/2"><code·class="inline">ets:next_lookup/2</code></a>,·<a·href="ets.html#prev_lookup/2"><code·class="inline">ets:prev_lookup/2</code></a>·and·<a·href="ets.html#last_lookup/1"><code·class="inline">ets:last_lookup/1</code></a>.·Example:·<code·class="inline">ets:next_lookup/1</code>·is·equivalent·to·<a·href="ets.html#next/2"><code·class="inline">ets:next/2</code></a>·followed·by·<a·href="ets.html#lookup/2"><code·class="inline">ets:lookup/2</code></a>·with·the·next·key.·The·new·combined·functions·are·more·efficient·and·with·guaranteed·atomicity.</p><p>Own·Id:·OTP-18923·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/6791"·title="">PR-6791</a></p></li><li><p>The·<code·class="inline">maybe</code>·expression·is·now·enabled·by·default.</p><p>To·use·<code·class="inline">maybe</code>·as·an·atom,·it·needs·to·be·single-quoted.·Alternatively,·the·<code·class="inline">maybe</code>·expression·can·be·disabled·by·disabling·the·<code·class="inline">maybe_expr</code>·feature.·That·can·be·done·by·placing·the·following·the·line·at·the·beginning·of·an·Erlang·source·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">feature</span><span·class="p"·data-group-id="7203140245-1">(</span><span·class="ss">maybe_expr</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disable</span><span·class="p"·data-group-id="7203140245-1">)</span><span·class="p">.</span></code></pre><p>Another·way·to·disable·the·<[·...·truncated·by·diffoscope;·len:·688,·SHA:·e925d758a76ff7f22daa3ee3b5f3d6fa0f3eb3899bfedf6e7bf8a0721f9c1440·...·]-1">)</span><span·class="p">.</span><span·class="w">197 spec·attributes·are·missing·in·documented·functions,·types,·and·callbacks.</p></li><li><p><code·class="inline">moduledoc</code>s·and·<code·class="inline">doc</code>s·may·refer·to·external·files·to·be·embedded,·such·as·<code·class="inline">-doc·{file,·&quot;README.md&quot;}.</code>,·which·refers·to·the·file·<code·class="inline">README.md</code>·found·in·the·current·working·directory.</p></li><li><p>The·compiler·warns·about·exported·functions·whose·specs·refer·to·hidden·types.·Thus,·there·will·be·warnings·when·a·hidden·type·(meaning,·the·type·is·not·part·of·the·documentation)·gets·used·in·an·exported·function.</p></li></ul><p>Own·Id:·OTP-18916·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7936"·title="">PR-7936</a></p></li><li><p>New·<a·href="ets.html"><code·class="inline">ets</code></a>·functions·<a·href="ets.html#first_lookup/1"><code·class="inline">ets:first_lookup/1</code></a>,·<a·href="ets.html#next_lookup/2"><code·class="inline">ets:next_lookup/2</code></a>,·<a·href="ets.html#prev_lookup/2"><code·class="inline">ets:prev_lookup/2</code></a>·and·<a·href="ets.html#last_lookup/1"><code·class="inline">ets:last_lookup/1</code></a>.·Example:·<code·class="inline">ets:next_lookup/1</code>·is·equivalent·to·<a·href="ets.html#next/2"><code·class="inline">ets:next/2</code></a>·followed·by·<a·href="ets.html#lookup/2"><code·class="inline">ets:lookup/2</code></a>·with·the·next·key.·The·new·combined·functions·are·more·efficient·and·with·guaranteed·atomicity.</p><p>Own·Id:·OTP-18923·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/6791"·title="">PR-6791</a></p></li><li><p>The·<code·class="inline">maybe</code>·expression·is·now·enabled·by·default.</p><p>To·use·<code·class="inline">maybe</code>·as·an·atom,·it·needs·to·be·single-quoted.·Alternatively,·the·<code·class="inline">maybe</code>·expression·can·be·disabled·by·disabling·the·<code·class="inline">maybe_expr</code>·feature.·That·can·be·done·by·placing·the·following·the·line·at·the·beginning·of·an·Erlang·source·file:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">feature</span><span·class="p"·data-group-id="6384712570-1">(</span><span·class="ss">maybe_expr</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">disable</span><span·class="p"·data-group-id="6384712570-1">)</span><span·class="p">.</span></code></pre><p>Another·way·to·disable·the·<[·...·truncated·by·diffoscope;·len:·688,·SHA:·68705426b006450500d8014d35c814276f472fdb2364e0929f9a1817f17522f8·...·]-1">)</span><span·class="p">.</span><span·class="w">
198 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3964336072-2">(</span><span·class="p"·data-group-id="3964336072-3">[</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="3964336072-3">]</span><span·class="p"·data-group-id="3964336072-2">)</span><span·class="p">.</span><span·class="w">198 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0257010235-2">(</span><span·class="p"·data-group-id="0257010235-3">[</span><span·class="ss">f</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="0257010235-3">]</span><span·class="p"·data-group-id="0257010235-2">)</span><span·class="p">.</span><span·class="w">
199 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="3964336072-4">(</span><span·class="ss">r</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3964336072-5">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·109,·SHA:·01aec2f17e72a0eb1e820f18ba8b1520843a34172c0aadb6da9ecbb32a0f4fcd·...·]-4">)</span><span·class="p">.</span><span·class="w">199 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="0257010235-4">(</span><span·class="ss">r</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0257010235-5">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·109,·SHA:·368a995287a684eea3cd92645ad5e8d5abe0933b518b3bd89f809aee95775d95·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
200 </span><span·class="nf">f</span><span·class="p"·data-group-id="3964336072-6">(</span><span·class="p"·data-group-id="3964336072-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">200 </span><span·class="nf">f</span><span·class="p"·data-group-id="0257010235-6">(</span><span·class="p"·data-group-id="0257010235-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
201 ····</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="3964336072-7">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="mi">1</span><span·class="p"·data-group-id="3964336072-7">}</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="3964336072-8">{</span><span[·...·truncated·by·diffoscope;·len:·110,·SHA:·8127cf873f067440ca4e315105faeaf6a2825bc631937aaa92c6d3936c2b115a·...·]-8">}</span><span·class="p">.</span></code></pre><p>The·compiler·raises·the·following·warning:</p><pre><code·class="text">1&gt;·c(t).201 ····</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="0257010235-7">{</span><span·class="ss">a</span><span·class="o">=</span><span·class="mi">1</span><span·class="p"·data-group-id="0257010235-7">}</span><span·class="o">#</span><span·class="ss">r</span><span·class="p"·data-group-id="0257010235-8">{</span><span[·...·truncated·by·diffoscope;·len:·110,·SHA:·4f2d586d4226ccd5a5901ef81016cb31351f0d85a2ae9b9d86dddb2b7344cfdf·...·]-8">}</span><span·class="p">.</span></code></pre><p>The·compiler·raises·the·following·warning:</p><pre><code·class="text">1&gt;·c(t).
202 t.erl:6:12:·Warning:·expression·updates·a·literal202 t.erl:6:12:·Warning:·expression·updates·a·literal
203 %····6|·····#r{a=1}#r{b=2}.203 %····6|·····#r{a=1}#r{b=2}.
204 %·····|············^</code></pre><p>Own·Id:·OTP-18951·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8069"·title="">PR-8069</a></p></li><li><p>The·documentation·has·been·migrated·to·use·Markdown·and·ExDoc.</p><p>Own·Id:·OTP-18955·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8026"·title="">PR-8026</a></p></li><li><p>Optimized·<code·class="inline">ets:foldl</code>·and·<code·class="inline">ets:foldr</code>·to·use·new·<code·class="inline">ets:next_lookup</code>.·Also·made·them·immune·against·table·renaming.</p><p>Own·Id:·OTP-18993·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8048"·title="">PR-8048</a></p></li><li><p>Windows·now·supports·all·functions·in·<a·href="math.html"><code·class="inline">math</code></a>.</p><p>Own·Id:·OTP-19001·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8164"·title="">PR-8164</a></p></li><li><p><a·href="erl_lint.html"><code·class="inline">erl_lint</code></a>·(and·by·extension·the·<a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html"><code·class="inline">compiler</code></a>)·will·now·warn·for·code·using·deprecated·callbacks.</p><p>The·only·callback·currenly·deprecated·is·<code·class="inline">format_status/2</code>·in·<a·href="gen_server.html#c:format_status/2"><code·class="inline">gen_server</code></a>,·<a·href="gen_event.html#c:format_status/2"><code·class="inline">gen_event</code></a>·and·<a·href="gen_server.html#c:format_status/2"><code·class="inline">gen_statem</code></a>.</p><p>You·can·use·<code·class="inline">nowarn_deprecated_callback</code>·to·silence·the·warning.</p><p>Own·Id:·OTP-19010·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8205"·title="">PR-8205</a></p></li><li><p>There·is·a·new·module·<a·href="json.html"><code·class="inline">json</code></a>·for·encoding·and·decoding·<a·href="https://en.wikipedia.org/wiki/JSON">JSON</a>.</p><p>Both·encoding·and·decoding·can·be·customized.·Decoding·can·be·done·in·a·SAX-like·fashion·and·handle·multiple·documents·and·streams·of·data.</p><p>Own·Id:·OTP-19020·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8111"·title="">PR-8111</a></p></li></ul><h2·id="stdlib-5-2-3"·class="section-heading">204 %·····|············^</code></pre><p>Own·Id:·OTP-18951·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8069"·title="">PR-8069</a></p></li><li><p>The·documentation·has·been·migrated·to·use·Markdown·and·ExDoc.</p><p>Own·Id:·OTP-18955·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8026"·title="">PR-8026</a></p></li><li><p>Optimized·<code·class="inline">ets:foldl</code>·and·<code·class="inline">ets:foldr</code>·to·use·new·<code·class="inline">ets:next_lookup</code>.·Also·made·them·immune·against·table·renaming.</p><p>Own·Id:·OTP-18993·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8048"·title="">PR-8048</a></p></li><li><p>Windows·now·supports·all·functions·in·<a·href="math.html"><code·class="inline">math</code></a>.</p><p>Own·Id:·OTP-19001·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8164"·title="">PR-8164</a></p></li><li><p><a·href="erl_lint.html"><code·class="inline">erl_lint</code></a>·(and·by·extension·the·<a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html"><code·class="inline">compiler</code></a>)·will·now·warn·for·code·using·deprecated·callbacks.</p><p>The·only·callback·currenly·deprecated·is·<code·class="inline">format_status/2</code>·in·<a·href="gen_server.html#c:format_status/2"><code·class="inline">gen_server</code></a>,·<a·href="gen_event.html#c:format_status/2"><code·class="inline">gen_event</code></a>·and·<a·href="gen_server.html#c:format_status/2"><code·class="inline">gen_statem</code></a>.</p><p>You·can·use·<code·class="inline">nowarn_deprecated_callback</code>·to·silence·the·warning.</p><p>Own·Id:·OTP-19010·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8205"·title="">PR-8205</a></p></li><li><p>There·is·a·new·module·<a·href="json.html"><code·class="inline">json</code></a>·for·encoding·and·decoding·<a·href="https://en.wikipedia.org/wiki/JSON">JSON</a>.</p><p>Both·encoding·and·decoding·can·be·customized.·Decoding·can·be·done·in·a·SAX-like·fashion·and·handle·multiple·documents·and·streams·of·data.</p><p>Own·Id:·OTP-19020·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8111"·title="">PR-8111</a></p></li></ul><h2·id="stdlib-5-2-3"·class="section-heading">
205 ··<a·href="#stdlib-5-2-3"·class="hover-link">205 ··<a·href="#stdlib-5-2-3"·class="hover-link">
206 ····<i·class="ri-link-m"·aria-hidden="true"></i>206 ····<i·class="ri-link-m"·aria-hidden="true"></i>
207 ··</a>207 ··</a>
208 ··<span·class="text">STDLIB·5.2.3</span>208 ··<span·class="text">STDLIB·5.2.3</span>
Offset 4474, 15 lines modifiedOffset 4474, 15 lines modified
4474 ······<p·class="built-using">4474 ······<p·class="built-using">
4475 ········Built·using4475 ········Built·using
4476 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the4476 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
4477 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>4477 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
4478 ······</p>4478 ······</p>
4479 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4479 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
4480 ····</footer>4480 ····</footer>
4481 ··</div>4481 ··</div>
4482 </main>4482 </main>
4483 </div>4483 </div>
4484 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>4484 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
4485 <script>4485 <script>
4486 ··document.addEventListener("DOMContentLoaded",·function·()·{4486 ··document.addEventListener("DOMContentLoaded",·function·()·{
684 B
html2text {}
Max HTML report size reached
125 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/orddict.html
    
Offset 138, 21 lines modifiedOffset 138, 21 lines modified
138 ··<a·href="#module-notes"·class="hover-link">138 ··<a·href="#module-notes"·class="hover-link">
139 ····<i·class="ri-link-m"·aria-hidden="true"></i>139 ····<i·class="ri-link-m"·aria-hidden="true"></i>
140 ··</a>140 ··</a>
141 ··<span·class="text">Notes</span>141 ··<span·class="text">Notes</span>
142 </h2>142 </h2>
143 <p><a·href=""·id="notes"></a></p><p>Functions·<a·href="#append/3"><code·class="inline">append/3</code></a>·and·<a·href="#append_list/3"><code·class="inline">append_list/3</code></a>·are143 <p><a·href=""·id="notes"></a></p><p>Functions·<a·href="#append/3"><code·class="inline">append/3</code></a>·and·<a·href="#append_list/3"><code·class="inline">append_list/3</code></a>·are
144 included·so·that·keyed·values·can·be·stored·in·a·list·<em>accumulator</em>,·for144 included·so·that·keyed·values·can·be·stored·in·a·list·<em>accumulator</em>,·for
145 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">D0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="0068678920-1">(</span><span·class="p"·data-group-id="0068678920-1">)</span><span·class="p">,</span><span·class="w">145 example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">D0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="2838076484-1">(</span><span·class="p"·data-group-id="2838076484-1">)</span><span·class="p">,</span><span·class="w">
146 ··</span><span·class="n">D1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">store</span><span·class="p"·data-group-id="0068678920-2">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0068678920-3">[</span><span·class="p"·data-group-id="0068678920-3">]</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·63,·SHA:·b2f3e95533980e5a369eb90deab9084a0c1dc2b5a5526293eeb807b245e525a8·...·]-2">)</span><span·class="p">,</span><span·class="w">146 ··</span><span·class="n">D1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">store</span><span·class="p"·data-group-id="2838076484-2">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2838076484-3">[</span><span·class="p"·data-group-id="2838076484-3">]</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·63,·SHA:·66db3bf7287846d737d7c4431c1723dff8bf460eda1faab3c2fa635f9978b621·...·]-2">)</span><span·class="p">,</span><span·class="w">
147 ··</span><span·class="n">D2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="0068678920-4">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D1</span><span·class="p"·data-group-id="0068678920-4">)</span><span·class="p">,</span><span·class="w">147 ··</span><span·class="n">D2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="2838076484-4">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D1</span><span·class="p"·data-group-id="2838076484-4">)</span><span·class="p">,</span><span·class="w">
148 ··</span><span·class="n">D3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="0068678920-5">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D2</span><span·class="p"·data-group-id="0068678920-5">)</span><span·class="p">,</span><span·class="w">148 ··</span><span·class="n">D3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="2838076484-5">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D2</span><span·class="p"·data-group-id="2838076484-5">)</span><span·class="p">,</span><span·class="w">
149 ··</span><span·class="n">D4</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="0068678920-6">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D3</span><span·class="p"·data-group-id="0068678920-6">)</span><span·class="p">,</span><span·class="w">149 ··</span><span·class="n">D4</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="2838076484-6">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">f3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D3</span><span·class="p"·data-group-id="2838076484-6">)</span><span·class="p">,</span><span·class="w">
150 ··</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">fetch</span><span·class="p"·data-group-id="0068678920-7">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D4</span><span·class="p"·data-group-id="0068678920-7">)</span><span·class="p">.</span><span·class="w">150 ··</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">fetch</span><span·class="p"·data-group-id="2838076484-7">(</span><span·class="ss">files</span><span·class="p">,</span><span·class="w">·</span><span·class="n">D4</span><span·class="p"·data-group-id="2838076484-7">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p"·data-group-id="0068678920-8">[</span><span·class="ss">f1</span><span·class="p">,</span><span·class="ss">f2</span><span·class="p">,</span><span·class="ss">f3</span><span·class="p"·data-group-id="0068678920-8">]</span></code></pre><p>This·saves·the·trouble·of·first·fetching·a·keyed·value,·appending·a·new·value·to151 </span><span·class="p"·data-group-id="2838076484-8">[</span><span·class="ss">f1</span><span·class="p">,</span><span·class="ss">f2</span><span·class="p">,</span><span·class="ss">f3</span><span·class="p"·data-group-id="2838076484-8">]</span></code></pre><p>This·saves·the·trouble·of·first·fetching·a·keyed·value,·appending·a·new·value·to
152 the·list·of·stored·values,·and·storing·the·result.</p><p>Function·<a·href="#fetch/2"><code·class="inline">fetch/2</code></a>·is·to·be·used·if·the·key·is·known·to·be·in·the152 the·list·of·stored·values,·and·storing·the·result.</p><p>Function·<a·href="#fetch/2"><code·class="inline">fetch/2</code></a>·is·to·be·used·if·the·key·is·known·to·be·in·the
153 dictionary,·otherwise·function·<a·href="#find/2"><code·class="inline">find/2</code></a>.</p><h2·id="module-see-also"·class="section-heading">153 dictionary,·otherwise·function·<a·href="#find/2"><code·class="inline">find/2</code></a>.</p><h2·id="module-see-also"·class="section-heading">
154 ··<a·href="#module-see-also"·class="hover-link">154 ··<a·href="#module-see-also"·class="hover-link">
155 ····<i·class="ri-link-m"·aria-hidden="true"></i>155 ····<i·class="ri-link-m"·aria-hidden="true"></i>
156 ··</a>156 ··</a>
157 ··<span·class="text">See·Also</span>157 ··<span·class="text">See·Also</span>
158 </h2>158 </h2>
Offset 533, 24 lines modifiedOffset 533, 24 lines modified
533 ··········<pre·translate="no"><span·class="attribute">-spec</span>·append(Key,·Value,·Orddict1)·->·Orddict2533 ··········<pre·translate="no"><span·class="attribute">-spec</span>·append(Key,·Value,·Orddict1)·->·Orddict2
534 ················when·Orddict1·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value),·Orddict2·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value).</pre>534 ················when·Orddict1·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value),·Orddict2·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value).</pre>
  
535 ······</div>535 ······</div>
  
536 <p>Appends·a·new·<code·class="inline">Value</code>·to·the·current·list·of·values·associated·with·<code·class="inline">Key</code>.·An536 <p>Appends·a·new·<code·class="inline">Value</code>·to·the·current·list·of·values·associated·with·<code·class="inline">Key</code>.·An
537 exception·is·generated·if·the·initial·value·associated·with·<code·class="inline">Key</code>·is·not·a·list537 exception·is·generated·if·the·initial·value·associated·with·<code·class="inline">Key</code>·is·not·a·list
538 of·values.</p><p>See·also·section·<a·href="orddict.html#module-notes">Notes</a>.</p><p><em>Example·1:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="7773434298-1">(</span><span·class="p"·data-group-id="7773434298-2">[</span><span·class="p"·data-group-id="7773434298-3">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7773434298-4">[</span><s[·...·truncated·by·diffoscope;·len:·198,·SHA:·1cdc57356cbdc8df20d1c8cd825a745210cf112900228931e95c6af6fe09fbe1·...·]-1">)</span><span·class="p">.</span><span·class="w">538 of·values.</p><p>See·also·section·<a·href="orddict.html#module-notes">Notes</a>.</p><p><em>Example·1:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="6217447431-1">(</span><span·class="p"·data-group-id="6217447431-2">[</span><span·class="p"·data-group-id="6217447431-3">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6217447431-4">[</span><s[·...·truncated·by·diffoscope;·len:·198,·SHA:·ff7768e28e50e4b2d76e556305a7a009464a319dcb1c2f397eb53a1c18f753c1·...·]-1">)</span><span·class="p">.</span><span·class="w">
539 </span><span·class="p"·data-group-id="7773434298-5">[</span><span·class="p"·data-group-id="7773434298-6">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="7773434298-7">[</span><span·class="p"·data-group-id="7773434298-7">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·a70aba692345336f154bf5f3a963f6cd82ed52b776327b6fb34111a3525b2c9e·...·]-5">]</span><span·class="gp·unselectable">539 </span><span·class="p"·data-group-id="6217447431-5">[</span><span·class="p"·data-group-id="6217447431-6">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="6217447431-7">[</span><span·class="p"·data-group-id="6217447431-7">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·9fd683d3624df34678c19d025acbbd13e9485e5a60469493c9dfd2fdc909f88e·...·]-5">]</span><span·class="gp·unselectable">
540 2&gt;·</span><span·class="n">OrdDict2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="7773434298-8">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="7773434298-8">)</span><span·class="p">.</span><span·class="w">540 2&gt;·</span><span·class="n">OrdDict2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="6217447431-8">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="6217447431-8">)</span><span·class="p">.</span><span·class="w">
541 </span><span·class="p"·data-group-id="7773434298-9">[</span><span·class="p"·data-group-id="7773434298-10">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="7773434298-11">[</span><span·class="mi">1</span><span·class="p"·data-group-id="7773434298-11">]</spa[·...·truncated·by·diffoscope;·len:·97,·SHA:·4e82e9b14120ce5fe307b19716f5ee14ff95172c0021851ab541290739e84d01·...·]-9">]</span><span·class="gp·unselectable">541 </span><span·class="p"·data-group-id="6217447431-9">[</span><span·class="p"·data-group-id="6217447431-10">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="6217447431-11">[</span><span·class="mi">1</span><span·class="p"·data-group-id="6217447431-11">]</spa[·...·truncated·by·diffoscope;·len:·97,·SHA:·edcb345a1eb947d66fdad8b8c6708f84753a0d0fe2b206d7ece9611a4a8e63b3·...·]-9">]</span><span·class="gp·unselectable">
542 3&gt;·</span><span·class="n">OrdDict3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="7773434298-12">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict2</span><span·class="p"·data-group-id="7773434298-12">)</span><span·class="p">.</span><span·class="w">542 3&gt;·</span><span·class="n">OrdDict3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="6217447431-12">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict2</span><span·class="p"·data-group-id="6217447431-12">)</span><span·class="p">.</span><span·class="w">
543 </span><span·class="p"·data-group-id="7773434298-13">[</span><span·class="p"·data-group-id="7773434298-14">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="7773434298-15">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·147,·SHA:·ebb5e9286aa93e2355cbcbb3992c5a50b6c45d8986fbf0a5c843cf59ef4373a5·...·]-13">]</span><span·class="gp·unselectable">543 </span><span·class="p"·data-group-id="6217447431-13">[</span><span·class="p"·data-group-id="6217447431-14">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="6217447431-15">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·147,·SHA:·977ce89faf79fd31c566863639040c82b2557f7911c351766a51a164da26bebf·...·]-13">]</span><span·class="gp·unselectable">
544 4&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="7773434298-16">(</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict3</span><span·class="p"·data-group-id="7773434298-16">)</span><span·class="p">.</span><span·class="w">544 4&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="6217447431-16">(</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict3</span><span·class="p"·data-group-id="6217447431-16">)</span><span·class="p">.</span><span·class="w">
545 </span><span·class="p"·data-group-id="7773434298-17">[</span><span·class="p"·data-group-id="7773434298-18">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="7773434298-19">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="7773434298-19">]</span><span·class="p"·data-group-id="7773434298-18">}</span><span·class="p">,</span><span·class="p"·data-group-id="7773434298-20">{</span><span·class="ss">y</span><span·class="p">,</span><span·class="p"·data-group-id="7773434298-21">[</span><span·class="mi">3</span><span·class="p"·data-group-id="7773434298-21">]</span><span·class="p"·data-group-id="7773434298-20">}</span><span·class="p"·data-group-id="7773434298-17">]</span></code></pre><p><em>Example·2:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="1536206979-1">(</span><span·class="p"·data-group-id="1536206979-2">[</span><span·class="p"·data-group-id="1536206979-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">no_list</span><span·class="p"·data-group-id="1536206979-3">}</span><span·class="p"·data-group-id="1536206979-2">]</span><span·class="p"·data-group-id="1536206979-1">)</span><span·class="p">.</span><span·class="w"> 
546 </span><span·class="p"·data-group-id="1536206979-4">[</span><span·class="p"·data-group-id="1536206979-5">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">no_list</span><span·class="p"·data-group-id="1536206979-5">}</span><span·class="p"·data-group-id="1536206979-4">]</[·...·truncated·by·diffoscope;·len:·33,·SHA:·b2e352d8309445f25b55be1913f1379d4d74b8b1a31e1190b1cf594ab0bdcba8·...·]">545 </span><span·class="p"·data-group-id="6217447431-17">[</span><span·class="p"·data-group-id="6217447431-18">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="6217447431-19">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·1255,·SHA:·0220e6d128cf39c480d4cb52d3b9760c8ab215887a2c7aabfe743d85b8fdac7a·...·]">
 546 </span><span·class="p"·data-group-id="3170098248-4">[</span><span·class="p"·data-group-id="3170098248-5">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">no_list</span><span·class="p"·data-group-id="3170098248-5">}</span><span·class="p"·data-group-id="3170098248-4">]</span><span·class="gp·unselectable">
547 2&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="1536206979-6">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="1536206979-6">)</span><span·class="p">.</span><span·class="w">547 2&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append</span><span·class="p"·data-group-id="3170098248-6">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="3170098248-6">)</span><span·class="p">.</span><span·class="w">
548 </span><span·class="gt">**·exception·error:·bad·argument548 </span><span·class="gt">**·exception·error:·bad·argument
549 ·····in·operator··++/2549 ·····in·operator··++/2
550 ········called·as·no_list·++·[1]</span></code></pre>550 ········called·as·no_list·++·[1]</span></code></pre>
551 ··</section>551 ··</section>
552 </section>552 </section>
553 <section·class="detail"·id="append_list/3">553 <section·class="detail"·id="append_list/3">
  
Offset 579, 20 lines modifiedOffset 579, 20 lines modified
579 ·························Orddict1·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value),579 ·························Orddict1·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value),
580 ·························Orddict2·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value).</pre>580 ·························Orddict2·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value).</pre>
  
581 ······</div>581 ······</div>
  
582 <p>Appends·a·list·of·values·<code·class="inline">ValList</code>·to·the·current·list·of·values·associated·with582 <p>Appends·a·list·of·values·<code·class="inline">ValList</code>·to·the·current·list·of·values·associated·with
583 <code·class="inline">Key</code>.·An·exception·is·generated·if·the·initial·value·associated·with·<code·class="inline">Key</code>·is583 <code·class="inline">Key</code>.·An·exception·is·generated·if·the·initial·value·associated·with·<code·class="inline">Key</code>·is
584 not·a·list·of·values.</p><p>See·also·section·<a·href="orddict.html#module-notes">Notes</a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="2479427948-1">(</span><span·class="p"·data-group-id="2479427948-2">[</span><span·class="p"·data-group-id="2479427948-3">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2479427948-4">[</span><s[·...·truncated·by·diffoscope;·len:·198,·SHA:·b745398ee9cc01bdc22b8560310b90b40f13e6c93829be4f81f0b7f89ec62000·...·]-1">)</span><span·class="p">.</span><span·class="w">584 not·a·list·of·values.</p><p>See·also·section·<a·href="orddict.html#module-notes">Notes</a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="9834255730-1">(</span><span·class="p"·data-group-id="9834255730-2">[</span><span·class="p"·data-group-id="9834255730-3">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9834255730-4">[</span><s[·...·truncated·by·diffoscope;·len:·198,·SHA:·4619ab03ef4cbf867d85f67d30e049372658503f19ac39838e9ce75f711349c6·...·]-1">)</span><span·class="p">.</span><span·class="w">
585 </span><span·class="p"·data-group-id="2479427948-5">[</span><span·class="p"·data-group-id="2479427948-6">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="2479427948-7">[</span><span·class="p"·data-group-id="2479427948-7">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·b96b347f632762098fb6cb54c90765023a6763cc82f27a38bcfbd043beabf9e8·...·]-5">]</span><span·class="gp·unselectable">585 </span><span·class="p"·data-group-id="9834255730-5">[</span><span·class="p"·data-group-id="9834255730-6">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="9834255730-7">[</span><span·class="p"·data-group-id="9834255730-7">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·00d2a995825f7d2777236d8c73b47996d62723b47bbc322537fdb35468f342dc·...·]-5">]</span><span·class="gp·unselectable">
586 2&gt;·</span><span·class="n">OrdDict2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append_list</span><span·class="p"·data-group-id="2479427948-8">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2479427948-9">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="247[·...·truncated·by·diffoscope;·len:·139,·SHA:·9432deaf8907b83102b0440c8e4b98261895d066555e059cd9f20af8c9b9b14f·...·]-8">)</span><span·class="p">.</span><span·class="w">586 2&gt;·</span><span·class="n">OrdDict2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append_list</span><span·class="p"·data-group-id="9834255730-8">(</span><span·class="ss">x</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9834255730-9">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="983[·...·truncated·by·diffoscope;·len:·139,·SHA:·5d5a3f1542f306c3d250acbd2ec9bf6de2b835e211365f37419d44acc34c5d88·...·]-8">)</span><span·class="p">.</span><span·class="w">
587 </span><span·class="p"·data-group-id="2479427948-10">[</span><span·class="p"·data-group-id="2479427948-11">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="2479427948-12">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·147,·SHA:·3d9761b2bea642abfc91e8bc9a9a88f40f7cdc88e010b3c4ea08718180e884ff·...·]-10">]</span><span·class="gp·unselectable">587 </span><span·class="p"·data-group-id="9834255730-10">[</span><span·class="p"·data-group-id="9834255730-11">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="9834255730-12">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·147,·SHA:·54e4c6e341b69f7a0f39a72bf37ae67f12ac19a305c0d930b04bffac217fdc4a·...·]-10">]</span><span·class="gp·unselectable">
588 3&gt;·</span><span·class="n">OrdDict3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append_list</span><span·class="p"·data-group-id="2479427948-13">(</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2479427948-14">[</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="2[·...·truncated·by·diffoscope;·len:·142,·SHA:·2ad15ef4881a406db6c1bc0f1a425b04ddcc2473bd2b86b2146d2f864c905b82·...·]-13">)</span><span·class="p">.</span><span·class="w">588 3&gt;·</span><span·class="n">OrdDict3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">append_list</span><span·class="p"·data-group-id="9834255730-13">(</span><span·class="ss">y</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9834255730-14">[</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="9[·...·truncated·by·diffoscope;·len:·142,·SHA:·017a1ce7471dd16124456c46b21415b66650656c60750444c967f7102cdbf16f·...·]-13">)</span><span·class="p">.</span><span·class="w">
589 </span><span·class="p"·data-group-id="2479427948-15">[</span><span·class="p"·data-group-id="2479427948-16">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="2479427948-17">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·510,·SHA:·7b819b9ee28425e845f8305bc9711cb5463cb9145439ba0f7780c647b6a37e07·...·]-15">]</span></code></pre>589 </span><span·class="p"·data-group-id="9834255730-15">[</span><span·class="p"·data-group-id="9834255730-16">{</span><span·class="ss">x</span><span·class="p">,</span><span·class="p"·data-group-id="9834255730-17">[</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">2</span><s[·...·truncated·by·diffoscope;·len:·510,·SHA:·aaefe5a61eb1ab729ad4e9b502ec5880a7780a522753137ac1aeb19c6b1ab877·...·]-15">]</span></code></pre>
590 ··</section>590 ··</section>
591 </section>591 </section>
592 <section·class="detail"·id="erase/2">592 <section·class="detail"·id="erase/2">
  
593 ··<div·class="detail-header">593 ··<div·class="detail-header">
594 ····<a·href="#erase/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">594 ····<a·href="#erase/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
595 ······<i·class="ri-link-m"·aria-hidden="true"></i>595 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 613, 18 lines modifiedOffset 613, 18 lines modified
613 ······<div·class="specs">613 ······<div·class="specs">
  
614 ··········<pre·translate="no"><span·class="attribute">-spec</span>·erase(Key,·Orddict1)·->·Orddict2614 ··········<pre·translate="no"><span·class="attribute">-spec</span>·erase(Key,·Orddict1)·->·Orddict2
615 ···············when·Orddict1·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value),·Orddict2·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value).</pre>615 ···············when·Orddict1·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value),·Orddict2·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value).</pre>
  
616 ······</div>616 ······</div>
  
617 <p>Erases·all·items·with·a·specified·key·from·a·dictionary.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="1556136669-1">(</span><span·class="p"·data-group-id="1556136669-2">[</span><span·class="p"·data-group-id="1556136669-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·369,·SHA:·450d65c82f0cd0451a948813ba6fdfaad15190cf6cf8916c6b7fde5e8a627455·...·]-1">)</span><span·class="p">.</span><span·class="w">617 <p>Erases·all·items·with·a·specified·key·from·a·dictionary.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="8723803331-1">(</span><span·class="p"·data-group-id="8723803331-2">[</span><span·class="p"·data-group-id="8723803331-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·369,·SHA:·be5ebb06b84c9aa693bf338f070f77aeb29234eafd0c86a96f19710820bc0ad1·...·]-1">)</span><span·class="p">.</span><span·class="w">
618 </span><span·class="p"·data-group-id="1556136669-5">[</span><span·class="p"·data-group-id="1556136669-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="1556136669-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·fbd152e857817bdeba323883fc1cc2f550b3433e2adea764d95e2e2396dabd85·...·]-5">]</span><span·class="gp·unselectable">618 </span><span·class="p"·data-group-id="8723803331-5">[</span><span·class="p"·data-group-id="8723803331-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8723803331-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·c9129353b93e626c4194df86b0a35308d10ce718ea24bf4fb7e4c57b64e04086·...·]-5">]</span><span·class="gp·unselectable">
619 2&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">erase</span><span·class="p"·data-group-id="1556136669-8">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="1556136669-8">)</span><span·class="p">.</span><span·class="w">619 2&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">erase</span><span·class="p"·data-group-id="8723803331-8">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="8723803331-8">)</span><span·class="p">.</span><span·class="w">
620 </span><span·class="p"·data-group-id="1556136669-9">[</span><span·class="p"·data-group-id="1556136669-10">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1556136669-10">}</span><span·class="p"·data-group-id="1556136669-9">]</span></code></pre>620 </span><span·class="p"·data-group-id="8723803331-9">[</span><span·class="p"·data-group-id="8723803331-10">{</span><span·class="ss">b</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="8723803331-10">}</span><span·class="p"·data-group-id="8723803331-9">]</span></code></pre>
621 ··</section>621 ··</section>
622 </section>622 </section>
623 <section·class="detail"·id="fetch/2">623 <section·class="detail"·id="fetch/2">
  
624 ··<div·class="detail-header">624 ··<div·class="detail-header">
625 ····<a·href="#fetch/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">625 ····<a·href="#fetch/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
626 ······<i·class="ri-link-m"·aria-hidden="true"></i>626 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 646, 19 lines modifiedOffset 646, 19 lines modified
  
646 ··········<pre·translate="no"><span·class="attribute">-spec</span>·fetch(Key,·Orddict)·->·Value·when·Orddict·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value).</pre>646 ··········<pre·translate="no"><span·class="attribute">-spec</span>·fetch(Key,·Orddict)·->·Value·when·Orddict·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value).</pre>
  
647 ······</div>647 ······</div>
  
648 <p>Returns·the·value·associated·with·<code·class="inline">Key</code>·in·dictionary·<code·class="inline">Orddict</code>.·This·function648 <p>Returns·the·value·associated·with·<code·class="inline">Key</code>·in·dictionary·<code·class="inline">Orddict</code>.·This·function
649 assumes·that·the·<code·class="inline">Key</code>·is·present·in·the·dictionary.·An·exception·is·generated649 assumes·that·the·<code·class="inline">Key</code>·is·present·in·the·dictionary.·An·exception·is·generated
650 if·<code·class="inline">Key</code>·is·not·in·the·dictionary.</p><p>See·also·section·<a·href="orddict.html#module-notes">Notes</a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="2866971840-1">(</span><span·class="p"·data-group-id="2866971840-2">[</span><span·class="p"·data-group-id="2866971840-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·369,·SHA:·d828fb4e61eef62c5a905fbbec48b8642a113ddd26a393fe8cd5fffc5f7c181f·...·]-1">)</span><span·class="p">.</span><span·class="w">650 if·<code·class="inline">Key</code>·is·not·in·the·dictionary.</p><p>See·also·section·<a·href="orddict.html#module-notes">Notes</a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="3488836463-1">(</span><span·class="p"·data-group-id="3488836463-2">[</span><span·class="p"·data-group-id="3488836463-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·369,·SHA:·656e55050fdcb5230399a03474ac7954ac29799c129a868648f072633832b8c8·...·]-1">)</span><span·class="p">.</span><span·class="w">
651 </span><span·class="p"·data-group-id="2866971840-5">[</span><span·class="p"·data-group-id="2866971840-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2866971840-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·ddedf70bf3d4976818b9fadebceeeb560f8315f68b3413f56210ef5af2f15d57·...·]-5">]</span><span·class="gp·unselectable">651 </span><span·class="p"·data-group-id="3488836463-5">[</span><span·class="p"·data-group-id="3488836463-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="3488836463-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·765d6fd7af2475fe32b5844f6e81596a2d75caa6b84d26145a9b791959c0b8b9·...·]-5">]</span><span·class="gp·unselectable">
652 2&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">fetch</span><span·class="p"·data-group-id="2866971840-8">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="2866971840-8">)</span><span·class="p">.</span><span·class="w">652 2&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">fetch</span><span·class="p"·data-group-id="3488836463-8">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="3488836463-8">)</span><span·class="p">.</span><span·class="w">
653 </span><span·class="mi">1</span><span·class="gp·unselectable">653 </span><span·class="mi">1</span><span·class="gp·unselectable">
654 3&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">fetch</span><span·class="p"·data-group-id="2866971840-9">(</span><span·class="ss">missing</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="2866971840-9">)</span><span·class="p">.</span><span·class="w">654 3&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">fetch</span><span·class="p"·data-group-id="3488836463-9">(</span><span·class="ss">missing</span><span·class="p">,</span><span·class="w">·</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="3488836463-9">)</span><span·class="p">.</span><span·class="w">
655 </span><span·class="gt">**·exception·error:·no·function·clause·matching·orddict:fetch(missing,[])</span></code></pre>655 </span><span·class="gt">**·exception·error:·no·function·clause·matching·orddict:fetch(missing,[])</span></code></pre>
656 ··</section>656 ··</section>
657 </section>657 </section>
658 <section·class="detail"·id="fetch_keys/1">658 <section·class="detail"·id="fetch_keys/1">
  
659 ··<div·class="detail-header">659 ··<div·class="detail-header">
660 ····<a·href="#fetch_keys/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">660 ····<a·href="#fetch_keys/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 679, 18 lines modifiedOffset 679, 18 lines modified
  
679 ······<div·class="specs">679 ······<div·class="specs">
  
680 ··········<pre·translate="no"><span·class="attribute">-spec</span>·fetch_keys(Orddict)·->·Keys·when·Orddict·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()),·Keys·::·[Key].</pre>680 ··········<pre·translate="no"><span·class="attribute">-spec</span>·fetch_keys(Orddict)·->·Keys·when·Orddict·::·<a·href="#t:orddict/2">orddict</a>(Key,·Value·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()),·Keys·::·[Key].</pre>
  
681 ······</div>681 ······</div>
  
682 <p>Returns·a·list·of·all·keys·in·a·dictionary.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="5087545127-1">(</span><span·class="p"·data-group-id="5087545127-2">[</span><span·class="p"·data-group-id="5087545127-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·369,·SHA:·8958aff8752e9fef56ecefae59fd11e3fd7431a6a2a5cac62c0ec92ae0b5098b·...·]-1">)</span><span·class="p">.</span><span·class="w">682 <p>Returns·a·list·of·all·keys·in·a·dictionary.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">OrdDict1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="8303202373-1">(</span><span·class="p"·data-group-id="8303202373-2">[</span><span·class="p"·data-group-id="8303202373-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·369,·SHA:·bac3b6a172a5e231a301907407893a6d05f1bb04da785dacb670cacf58056199·...·]-1">)</span><span·class="p">.</span><span·class="w">
683 </span><span·class="p"·data-group-id="5087545127-5">[</span><span·class="p"·data-group-id="5087545127-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="5087545127-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·0f607c94f50ca0b7a5388514b7966cf467510678358de38e0d1fe978b304cf51·...·]-5">]</span><span·class="gp·unselectable">683 </span><span·class="p"·data-group-id="8303202373-5">[</span><span·class="p"·data-group-id="8303202373-6">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8303202373-6">}</span><span·class="p">,</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·191,·SHA:·072e713bece5a8b35a56495a189cd5e23d75ef2eb72deafc28008dcedc25a1ff·...·]-5">]</span><span·class="gp·unselectable">
684 2&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">fetch_keys</span><span·class="p"·data-group-id="5087545127-8">(</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="5087545127-8">)</span><span·class="p">.</span><span·class="w">684 2&gt;·</span><span·class="nc">orddict</span><span·class="p">:</span><span·class="nf">fetch_keys</span><span·class="p"·data-group-id="8303202373-8">(</span><span·class="n">OrdDict1</span><span·class="p"·data-group-id="8303202373-8">)</span><span·class="p">.</span><span·class="w">
685 </span><span·class="p"·data-group-id="5087545127-9">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="5087545127-9">]</span></code></pre>685 </span><span·class="p"·data-group-id="8303202373-9">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="p"·data-group-id="8303202373-9">]</span></code></pre>
686 ··</section>686 ··</section>
687 </section>687 </section>
688 <section·class="detail"·id="filter/2">688 <section·class="detail"·id="filter/2">
  
689 ··<div·class="detail-header">689 ··<div·class="detail-header">
690 ····<a·href="#filter/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">690 ····<a·href="#filter/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
691 ······<i·class="ri-link-m"·aria-hidden="true"></i>691 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 715, 18 lines modifiedOffset 715, 18 lines modified
Max diff block lines reached; 82469/126929 bytes (64.97%) of diff not shown.
657 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/ordsets.html
    
Offset 1088, 15 lines modifiedOffset 1088, 15 lines modified
1088 ······<p·class="built-using">1088 ······<p·class="built-using">
1089 ········Built·using1089 ········Built·using
1090 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1090 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1091 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1091 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1092 ······</p>1092 ······</p>
1093 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1093 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1094 ····</footer>1094 ····</footer>
1095 ··</div>1095 ··</div>
1096 </main>1096 </main>
1097 </div>1097 </div>
1098 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1098 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1099 <script>1099 <script>
1100 ··document.addEventListener("DOMContentLoaded",·function·()·{1100 ··document.addEventListener("DOMContentLoaded",·function·()·{
632 B
html2text {}
Max HTML report size reached
91.7 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/peer.html
    
Offset 157, 135 lines modifiedOffset 157, 135 lines modified
157 employs·a·number·of·techniques·to·speed·up·testing·and·reliably·shut·down·peer157 employs·a·number·of·techniques·to·speed·up·testing·and·reliably·shut·down·peer
158 nodes:</p><ul><li>peers·start·linked·to·test·runner·process.·If·the·test·case·fails,·the·peer158 nodes:</p><ul><li>peers·start·linked·to·test·runner·process.·If·the·test·case·fails,·the·peer
159 node·is·stopped·automatically,·leaving·no·rogue·nodes·running·in·the159 node·is·stopped·automatically,·leaving·no·rogue·nodes·running·in·the
160 background</li><li>arguments·used·to·start·the·peer·are·saved·in·the·control·process·state·for160 background</li><li>arguments·used·to·start·the·peer·are·saved·in·the·control·process·state·for
161 manual·analysis.·If·the·test·case·fails,·the·CRASH·REPORT·contains·these161 manual·analysis.·If·the·test·case·fails,·the·CRASH·REPORT·contains·these
162 arguments</li><li>multiple·test·cases·can·run·concurrently·speeding·up·overall·testing·process,162 arguments</li><li>multiple·test·cases·can·run·concurrently·speeding·up·overall·testing·process,
163 peer·node·names·are·unique·even·when·there·are·multiple·instances·of·the·same163 peer·node·names·are·unique·even·when·there·are·multiple·instances·of·the·same
164 test·suite·running·in·parallel</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9701096236-1">(</span><span·class="ss">my_SUITE</span><span·class="p"·data-group-id="9701096236-1">)</span><span·class="p">.</span><span·class="w">164 test·suite·running·in·parallel</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="3144067807-1">(</span><span·class="ss">my_SUITE</span><span·class="p"·data-group-id="3144067807-1">)</span><span·class="p">.</span><span·class="w">
165 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="9701096236-2">(</span><span·class="ss">ct_suite</span><span·class="p"·data-group-id="9701096236-2">)</span><span·class="p">.</span><span·class="w">165 </span><span·class="p">-</span><span·class="na">behaviour</span><span·class="p"·data-group-id="3144067807-2">(</span><span·class="ss">ct_suite</span><span·class="p"·data-group-id="3144067807-2">)</span><span·class="p">.</span><span·class="w">
166 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9701096236-3">(</span><span·class="p"·data-group-id="9701096236-4">[</span><span·class="ss">all</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">groups</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·1f806c89fbd8b777ba4986872b0cde0bed97bde92de23014ac2dfd9ad7bb645f·...·]-3">)</span><span·class="p">.</span><span·class="w">166 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3144067807-3">(</span><span·class="p"·data-group-id="3144067807-4">[</span><span·class="ss">all</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">groups</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·116,·SHA:·44868b49b8205dc0d41e188791ba1c3a0bd18b0c24ffb2848d492249cf04b369·...·]-3">)</span><span·class="p">.</span><span·class="w">
167 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9701096236-5">(</span><span·class="p"·data-group-id="9701096236-6">[</span><span·class="ss">basic</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">args</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·506,·SHA:·7a41e6ce2fafdd9fa96e526cab1a8c451f4c2e309833c4ab8db74727d462cc58·...·]-5">)</span><span·class="p">.</span><span·class="w">167 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="3144067807-5">(</span><span·class="p"·data-group-id="3144067807-6">[</span><span·class="ss">basic</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">args</span><span·class="p">/</span><sp[·...·truncated·by·diffoscope;·len:·506,·SHA:·ab450d08528bbff47832beca370ef8840959b3f756f5b784e9ac2e92ebc7e41e·...·]-5">)</span><span·class="p">.</span><span·class="w">
168 </span><span·class="w">168 </span><span·class="w">
169 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="9701096236-7">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="9701096236-7">)</span><span·class="p">.</span><span·class="w">169 </span><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="3144067807-7">(</span><span·class="s">&quot;common_test/include/ct.hrl&quot;</span><span·class="p"·data-group-id="3144067807-7">)</span><span·class="p">.</span><span·class="w">
  
170 </span><span·class="nf">groups</span><span·class="p"·data-group-id="9701096236-8">(</span><span·class="p"·data-group-id="9701096236-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">170 </span><span·class="nf">groups</span><span·class="p"·data-group-id="3144067807-8">(</span><span·class="p"·data-group-id="3144067807-8">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
171 ····</span><span·class="p"·data-group-id="9701096236-9">[</span><span·class="p"·data-group-id="9701096236-10">{</span><span·class="ss">quick</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9701096236-11">[</span><span·class="ss">parallel</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·c9cf18bd3c452732f073afecfbf09e764086b261c8f51e1971528b8bf5510912·...·]-11">]</span><span·class="p">,</span><span·class="w">171 ····</span><span·class="p"·data-group-id="3144067807-9">[</span><span·class="p"·data-group-id="3144067807-10">{</span><span·class="ss">quick</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3144067807-11">[</span><span·class="ss">parallel</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·a34649987006a8c3e7d597066c9e9138b70028038723f56c76bf701611256311·...·]-11">]</span><span·class="p">,</span><span·class="w">
172 ········</span><span·class="p"·data-group-id="9701096236-12">[</span><span·class="ss">basic</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">args</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">named</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·264,·SHA:·2b9e405f3147dcef32c8eb0b25afac1721388b99fb179791fcebf759a0c41802·...·]-9">]</span><span·class="p">.</span><span·class="w">172 ········</span><span·class="p"·data-group-id="3144067807-12">[</span><span·class="ss">basic</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">args</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">named</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·264,·SHA:·c85c822557754a6340acd43e20c003c06c41a7da54ac390c8ebae97c37655c7b·...·]-9">]</span><span·class="p">.</span><span·class="w">
  
173 </span><span·class="nf">all</span><span·class="p"·data-group-id="9701096236-13">(</span><span·class="p"·data-group-id="9701096236-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">173 </span><span·class="nf">all</span><span·class="p"·data-group-id="3144067807-13">(</span><span·class="p"·data-group-id="3144067807-13">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
174 ····</span><span·class="p"·data-group-id="9701096236-14">[</span><span·class="p"·data-group-id="9701096236-15">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">quick</span><span·class="p"·data-group-id="9701096236-15">}</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·9a184cebb8e3ac6ee9b42b8250944257b5bbfe3328f4a063d069c207b4f33443·...·]-14">]</span><span·class="p">.</span><span·class="w">174 ····</span><span·class="p"·data-group-id="3144067807-14">[</span><span·class="p"·data-group-id="3144067807-15">{</span><span·class="ss">group</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">quick</span><span·class="p"·data-group-id="3144067807-15">}</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·d6b8a780447e799aa34d7980f26f7ee301b09bf8ede69d19d4b66d2c1ab28d51·...·]-14">]</span><span·class="p">.</span><span·class="w">
  
175 </span><span·class="nf">basic</span><span·class="p"·data-group-id="9701096236-16">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9701096236-16">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="9701096236-17[·...·truncated·by·diffoscope;·len:·80,·SHA:·3f77d956f7bf6da234b18f8d72712840642215eee90e914742f5bc782dcda753·...·]-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 </span><span·class="nf">basic</span><span·class="p"·data-group-id="3144067807-16">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3144067807-16">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="3144067807-17[·...·truncated·by·diffoscope;·len:·80,·SHA:·3af8dae76e79cfcfde5d1a4ca5ff484fabd19c1bb69ddf25dbe9aafd298690cf·...·]-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
176 ····</span><span·class="p"·data-group-id="9701096236-18">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Node</span><span·class="p"·data-group-id="97[·...·truncated·by·diffoscope;·len:·242,·SHA:·36b721d2769c53fe9c8dec3c9d5e0338b6ddd922cf032bae2ef65459f9b4ff4f·...·]-19">)</span><span·class="p">,</span><span·class="w">176 ····</span><span·class="p"·data-group-id="3144067807-18">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Node</span><span·class="p"·data-group-id="31[·...·truncated·by·diffoscope;·len:·242,·SHA:·9dc5bf94f399a23596de046894c243734f2ae39e3138774df05be1dc03032b8a·...·]-19">)</span><span·class="p">,</span><span·class="w">
177 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="9701096236-20">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="9701096236-20">)</span><span·class="p">.</span><span·class="w">177 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="3144067807-20">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="3144067807-20">)</span><span·class="p">.</span><span·class="w">
  
178 </span><span·class="nf">args</span><span·class="p"·data-group-id="9701096236-21">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9701096236-21">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="9701096236-22[·...·truncated·by·diffoscope;·len:·80,·SHA:·3f77d956f7bf6da234b18f8d72712840642215eee90e914742f5bc782dcda753·...·]-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 </span><span·class="nf">args</span><span·class="p"·data-group-id="3144067807-21">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3144067807-21">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="3144067807-22[·...·truncated·by·diffoscope;·len:·80,·SHA:·3af8dae76e79cfcfde5d1a4ca5ff484fabd19c1bb69ddf25dbe9aafd298690cf·...·]-22">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ····</span><span·class="c1">%%·specify·additional·arguments·to·the·new·node</span><span·class="w">179 ····</span><span·class="c1">%%·specify·additional·arguments·to·the·new·node</span><span·class="w">
180 ····</span><span·class="p"·data-group-id="9701096236-23">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Node</span><span·class="p"·data-group-id="97[·...·truncated·by·diffoscope;·len:·482,·SHA:·9d0998ab33430aed6d8c0ca0d36b13926d1c2518c848e415b9be5991a003d908·...·]-24">)</span><span·class="p">,</span><span·class="w">180 ····</span><span·class="p"·data-group-id="3144067807-23">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">Node</span><span·class="p"·data-group-id="31[·...·truncated·by·diffoscope;·len:·482,·SHA:·b9af67acdfc0de988c6913de5e9c93e10efbdbcac1f6d9dfb02faa6fe427814e·...·]-24">)</span><span·class="p">,</span><span·class="w">
181 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="9701096236-26">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="9701096236-26">)</span><span·class="p">.</span><span·class="w">181 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="3144067807-26">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="3144067807-26">)</span><span·class="p">.</span><span·class="w">
  
182 </span><span·class="nf">named</span><span·class="p"·data-group-id="9701096236-27">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9701096236-27">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="9701096236-28[·...·truncated·by·diffoscope;·len:·80,·SHA:·3f77d956f7bf6da234b18f8d72712840642215eee90e914742f5bc782dcda753·...·]-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">182 </span><span·class="nf">named</span><span·class="p"·data-group-id="3144067807-27">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3144067807-27">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="3144067807-28[·...·truncated·by·diffoscope;·len:·80,·SHA:·3af8dae76e79cfcfde5d1a4ca5ff484fabd19c1bb69ddf25dbe9aafd298690cf·...·]-28">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
183 ····</span><span·class="c1">%%·pass·test·case·name·down·to·function·starting·nodes</span><span·class="w">183 ····</span><span·class="c1">%%·pass·test·case·name·down·to·function·starting·nodes</span><span·class="w">
184 ····</span><span·class="n">Peer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_node_impl</span><span·class="p"·data-group-id="9701096236-29">(</span><span·class="ss">named_test</span><span·class="p"·data-group-id="9701096236-29">)</span><span·class="p">,</span><span·class="w">184 ····</span><span·class="n">Peer</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">start_node_impl</span><span·class="p"·data-group-id="3144067807-29">(</span><span·class="ss">named_test</span><span·class="p"·data-group-id="3144067807-29">)</span><span·class="p">,</span><span·class="w">
185 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="9701096236-30">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="9701096236-30">)</span><span·class="p">.</span><span·class="w">185 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="3144067807-30">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="3144067807-30">)</span><span·class="p">.</span><span·class="w">
  
186 </span><span·class="nf">start_node_impl</span><span·class="p"·data-group-id="9701096236-31">(</span><span·class="n">ActualTestCase</span><span·class="p"·data-group-id="9701096236-31">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">186 </span><span·class="nf">start_node_impl</span><span·class="p"·data-group-id="3144067807-31">(</span><span·class="n">ActualTestCase</span><span·class="p"·data-group-id="3144067807-31">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
187 ····</span><span·class="p"·data-group-id="9701096236-32">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="9701096236-32">}</span><sp[·...·truncated·by·diffoscope;·len:·635,·SHA:·4ddbb9851a9f8fded73b50eebc5fcb51ff305d6e9f43264e2fef9282b60e5cbc·...·]-33">)</span><span·class="p">,</span><span·class="w">187 ····</span><span·class="p"·data-group-id="3144067807-32">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="3144067807-32">}</span><sp[·...·truncated·by·diffoscope;·len:·635,·SHA:·acc9f56ac11632e74e7d4c54c3b12f9222fe584410566b6ec28c13c108f82a70·...·]-33">)</span><span·class="p">,</span><span·class="w">
188 ····</span><span·class="c1">%%·extra·setup·needed·for·multiple·test·cases</span><span·class="w">188 ····</span><span·class="c1">%%·extra·setup·needed·for·multiple·test·cases</span><span·class="w">
189 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rpc</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="9701096236-36">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">set_env</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·335,·SHA:·b6b63a3bdae52e168fba05548666f4fb7f18bd5abf1a3f9f7bd5c5ef0edec104·...·]-36">)</span><span·class="p">,</span><span·class="w">189 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rpc</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="3144067807-36">(</span><span·class="n">Node</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">application</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">set_env</span><span·class="p">,</span><span·class="w">·</s[·...·truncated·by·diffoscope;·len:·335,·SHA:·e5bf8f20d995088f5f8d4e2757b763d39b77d49cb6efa22f3dafaf4f0c2e39dd·...·]-36">)</span><span·class="p">,</span><span·class="w">
190 ····</span><span·class="n">Peer</span><span·class="p">.</span><span·class="w">190 ····</span><span·class="n">Peer</span><span·class="p">.</span><span·class="w">
  
191 </span><span·class="nf">restart_node</span><span·class="p"·data-group-id="9701096236-38">(</span><span·class="n">Config</span><span·class="p"·data-group-id="9701096236-38">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="9701096236-39[·...·truncated·by·diffoscope;·len:·80,·SHA:·3f77d956f7bf6da234b18f8d72712840642215eee90e914742f5bc782dcda753·...·]-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">191 </span><span·class="nf">restart_node</span><span·class="p"·data-group-id="3144067807-38">(</span><span·class="n">Config</span><span·class="p"·data-group-id="3144067807-38">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="3144067807-39[·...·truncated·by·diffoscope;·len:·80,·SHA:·3af8dae76e79cfcfde5d1a4ca5ff484fabd19c1bb69ddf25dbe9aafd298690cf·...·]-39">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
192 ····</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="n">CT_PEER_NAME</span><span·class="p"·data-group-id="9701096236-40">(</span><span·class="p"·data-group-id="9701096236-40">)</span><span·class="p">,</span><span·class="w">192 ····</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">?</span><span·class="n">CT_PEER_NAME</span><span·class="p"·data-group-id="3144067807-40">(</span><span·class="p"·data-group-id="3144067807-40">)</span><span·class="p">,</span><span·class="w">
193 ····</span><span·class="p"·data-group-id="9701096236-41">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="9701096236-41">}</span><sp[·...·truncated·by·diffoscope;·len:·458,·SHA:·de527e69cf17a4494d9bd07a41c52de30210a271d9037d5aa3f81bac78b5e17d·...·]-42">)</span><span·class="p">,</span><span·class="w">193 ····</span><span·class="p"·data-group-id="3144067807-41">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="3144067807-41">}</span><sp[·...·truncated·by·diffoscope;·len:·458,·SHA:·8408a78b434d454ab4dd7172e1abc065115f768e6abc552598fba5dc0c21dfc0·...·]-42">)</span><span·class="p">,</span><span·class="w">
194 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="9701096236-44">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="9701096236-44">)</span><span·class="p">,</span><span·class="w">194 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="3144067807-44">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="3144067807-44">)</span><span·class="p">,</span><span·class="w">
195 ····</span><span·class="c1">%%·restart·the·node·with·the·same·name·as·before</span><span·class="w">195 ····</span><span·class="c1">%%·restart·the·node·with·the·same·name·as·before</span><span·class="w">
196 ····</span><span·class="p"·data-group-id="9701096236-45">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="9701096236-45">}</span><s[·...·truncated·by·diffoscope;·len:·758,·SHA:·928580b77e5e2353435bebb8a4ae4b36f16ca918771334f99b9849fd47fe7d35·...·]-46">)</span><span·class="p">,</span><span·class="w">196 ····</span><span·class="p"·data-group-id="3144067807-45">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="3144067807-45">}</span><s[·...·truncated·by·diffoscope;·len:·758,·SHA:·8161d96c270b547a04e4632aa8272656512ec8be6a5a9f7353caded0934f6e43·...·]-46">)</span><span·class="p">,</span><span·class="w">
197 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="9701096236-49">(</span><span·class="n">Peer2</span><span·class="p"·data-group-id="9701096236-49">)</span><span·class="p">.</span></code></pre><p>The·next·example·demonstrates·how·to·start·multiple·nodes·concurrently:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">multi_node</span><span·class="p"·data-group-id="6772637742-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6772637742-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="6772637742-2">(</span><span·class="n">Config</span><span·class="p"·data-group-id="6772637742-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
198 ····</span><span·class="n">Peers</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6772637742-3">[</span><span·class="o">?</span><span·class="n">CT_PEER</span><span·class="p"·data-group-id="6772637742-4">(</span><span·clas[·...·truncated·by·diffoscope;·len:·567,·SHA:·20492611a3e959d072e6da01e137a501a44222455550557555b90370d9ef9f49·...·]</span><span·class="w">197 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="3144067807-49">(</span><span·class="n">Peer2</span><span·class="p"·data-group-id="3144067807-49">)</span><span·class="p">.</span></code></pre><p>The·next·examp[·...·truncated·by·diffoscope;·len:·564,·SHA:·1cca22e6cd277e7ea1d4e770d899d6de4531ece08d20dfee41f3728721a236eb·...·]</span><span·class="w">
 198 ····</span><span·class="n">Peers</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2539593106-3">[</span><span·class="o">?</span><span·class="n">CT_PEER</span><span·class="p"·data-group-id="2539593106-4">(</span><span·class="p"·data-group-id="2539593106-5">#{</span><span·class="ss">wait_boot</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="2539593106-6">{</span><span·class="nf">self</span><span·class="p"·data-group-id="2539593106-7">(</span><span·class="p"·data-group-id="2539593106-7">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">tag</span><span·class="p"·data-group-id="2539593106-6">}</span><span·class="p"·data-group-id="2539593106-5">}</span><span·class="p"·data-group-id="2539593106-4">)</span><span·class="w">
199 ········</span><span·class="p">||</span><span·class="w">·</span><span·class="p">_</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="6772637742-8">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="p"·data-group-id="6772637742-8">)</span><span·class="p"·data-group-id="6772637742-3">]</span><span·class="p">,</span><span·class="w">199 ········</span><span·class="p">||</span><span·class="w">·</span><span·class="p">_</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="2539593106-8">(</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">4</span><span·class="p"·data-group-id="2539593106-8">)</span><span·class="p"·data-group-id="2539593106-3">]</span><span·class="p">,</span><span·class="w">
200 ····</span><span·class="c1">%%·wait·for·all·nodes·to·complete·boot·process,·get·their·names:</span><span·class="w">200 ····</span><span·class="c1">%%·wait·for·all·nodes·to·complete·boot·process,·get·their·names:</span><span·class="w">
201 ····</span><span·class="p">_</span><span·class="n">Nodes</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="6772637742-9">[</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="6772637742-10">{</span><span·class="ss">tag</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6772637742-11">{</sp[·...·truncated·by·diffoscope;·len:·279,·SHA:·5022eaa1139189ff8b53b6fa33d52087677e23303a8aa86f4920b44dfd54cbff·...·]-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Node</span><span·class="w">·</span><span·class="k">end</span><span·class="w">201 ····</span><span·class="p">_</span><span·class="n">Nodes</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="2539593106-9">[</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="2539593106-10">{</span><span·class="ss">tag</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2539593106-11">{</sp[·...·truncated·by·diffoscope;·len:·279,·SHA:·5146aa4675ca8155cfd0f1f027800e5f45ab7767597245de07dbfddd8b015dc3·...·]-10">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Node</span><span·class="w">·</span><span·class="k">end</span><span·class="w">
202 ········</span><span·class="p">||</span><span·class="w">·</span><span·class="p"·data-group-id="6772637742-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p"·data-group-id="6772637742-12">}</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·67,·SHA:·e1c628738d981cf28935462990ed40d81836a8a9a0609479cf8914fb650e0a50·...·]-9">]</span><span·class="p">,</span><span·class="w">202 ········</span><span·class="p">||</span><span·class="w">·</span><span·class="p"·data-group-id="2539593106-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p"·data-group-id="2539593106-12">}</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·67,·SHA:·b1eb3e0e1d91c5a5391a3bd07fb6dd1b4e3c80939073c5e2255d2c3ca0385d1e·...·]-9">]</span><span·class="p">,</span><span·class="w">
203 ····</span><span·class="p"·data-group-id="6772637742-13">[</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="6772637742-14">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="6772637742-14">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·409,·SHA:·fc8f5609ea69e4a42795f5ec267c7ade7a77cbfd8efdbc943407785d1bad3379·...·]-13">]</span><span·class="p">.</span></code></pre><p>Start·a·peer·on·a·different·host.·Requires·<code·class="inline">ssh</code>·key-based·authentication·set203 ····</span><span·class="p"·data-group-id="2539593106-13">[</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="2539593106-14">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="2539593106-14">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·409,·SHA:·203988f04294b3c740d6c1d83637218718a7bf862e9a9328e5092f7a0b64f029·...·]-13">]</span><span·class="p">.</span></code></pre><p>Start·a·peer·on·a·different·host.·Requires·<code·class="inline">ssh</code>·key-based·authentication·set
204 up,·allowing·&quot;another_host&quot;·connection·without·password·prompt.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Ssh</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">find_executable</span><span·class="p"·data-group-id="6551969274-1">(</span><span·class="s">&quot;ssh&quot;</span><span·class="p"·data-group-id="6551969274-1">)</span><span·class="p">,</span><span·class="w">204 up,·allowing·&quot;another_host&quot;·connection·without·password·prompt.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Ssh</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">find_executable</span><span·class="p"·data-group-id="5305675855-1">(</span><span·class="s">&quot;ssh&quot;</span><span·class="p"·data-group-id="5305675855-1">)</span><span·class="p">,</span><span·class="w">
205 </span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="6551969274-2">(</span><span·class="p"·data-group-id="6551969274-3">#{</span><span·class="ss">exec</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="6551969274-4">{</span><span·class="n">Ssh</sp[·...·truncated·by·diffoscope;·len:·331,·SHA:·78c0e5d7291a96a4c7504f8f3ba73ca8edca5a91172d80f11e0528216ee939ca·...·]-4">}</span><span·class="p">,</span><span·class="w">205 </span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="5305675855-2">(</span><span·class="p"·data-group-id="5305675855-3">#{</span><span·class="ss">exec</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5305675855-4">{</span><span·class="n">Ssh</sp[·...·truncated·by·diffoscope;·len:·331,·SHA:·ddbfb4761f927109988a6bda47390108282c0fe38b2b86a1f40fe91dcff02d6d·...·]-4">}</span><span·class="p">,</span><span·class="w">
206 ····</span><span·class="ss">connection</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">standard_io</span><span·class="p"·data-group-id="6551969274-3">}</span><span·class="p"·data-group-id="6551969274-2">)</span><span·class="p">,</span></code></pre><p>The·following·Common·Test·case·demonstrates·Docker·integration,·starting·two206 ····</span><span·class="ss">connection</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">standard_io</span><span·class="p"·data-group-id="5305675855-3">}</span><span·class="p"·data-group-id="5305675855-2">)</span><span·class="p">,</span></code></pre><p>The·following·Common·Test·case·demonstrates·Docker·integration,·starting·two
207 containers·with·hostnames·&quot;one&quot;·and·&quot;two&quot;.·In·this·example·Erlang·nodes·running207 containers·with·hostnames·&quot;one&quot;·and·&quot;two&quot;.·In·this·example·Erlang·nodes·running
208 inside·containers·form·an·Erlang·cluster.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">docker</span><span·class="p"·data-group-id="5565182491-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="5565182491-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="5565182491-2">([·...·truncated·by·diffoscope;·len:·77,·SHA:·69e8acf7ee954f3c41232c0d8531072048f40d4cdc20667793ae9642054a2684·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 inside·containers·form·an·Erlang·cluster.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">docker</span><span·class="p"·data-group-id="0300722260-1">(</span><span·class="n">Config</span><span·class="p"·data-group-id="0300722260-1">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">is_list</span><span·class="p"·data-group-id="0300722260-2">([·...·truncated·by·diffoscope;·len:·77,·SHA:·d56ffd02a028075131efed6f12fa9b723f3da53b73d3c62f7748d970d19efa6b·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
209 ····</span><span·class="n">Docker</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">find_executable</span><span·class="p"·data-group-id="5565182491-3">(</span><span·class="s">&quot;docker&quot;</span><span·class="p"·data-group-id="5565182491-3">)</span><span·class="p">,</span><span·class="w">209 ····</span><span·class="n">Docker</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">os</span><span·class="p">:</span><span·class="nf">find_executable</span><span·class="p"·data-group-id="0300722260-3">(</span><span·class="s">&quot;docker&quot;</span><span·class="p"·data-group-id="0300722260-3">)</span><span·class="p">,</span><span·class="w">
210 ····</span><span·class="n">PrivDir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="5565182491-4">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="5565182491-4">)</span><span·class="p">,</span><span·class="w">210 ····</span><span·class="n">PrivDir</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">proplists</span><span·class="p">:</span><span·class="nf">get_value</span><span·class="p"·data-group-id="0300722260-4">(</span><span·class="ss">priv_dir</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Config</span><span·class="p"·data-group-id="0300722260-4">)</span><span·class="p">,</span><span·class="w">
211 ····</span><span·class="nf">build_release</span><span·class="p"·data-group-id="5565182491-5">(</span><span·class="n">PrivDir</span><span·class="p"·data-group-id="5565182491-5">)</span><span·class="p">,</span><span·class="w">211 ····</span><span·class="nf">build_release</span><span·class="p"·data-group-id="0300722260-5">(</span><span·class="n">PrivDir</span><span·class="p"·data-group-id="0300722260-5">)</span><span·class="p">,</span><span·class="w">
212 ····</span><span·class="nf">build_image</span><span·class="p"·data-group-id="5565182491-6">(</span><span·class="n">PrivDir</span><span·class="p"·data-group-id="5565182491-6">)</span><span·class="p">,</span><span·class="w">212 ····</span><span·class="nf">build_image</span><span·class="p"·data-group-id="0300722260-6">(</span><span·class="n">PrivDir</span><span·class="p"·data-group-id="0300722260-6">)</span><span·class="p">,</span><span·class="w">
  
213 ····</span><span·class="c1">%%·start·two·Docker·containers</span><span·class="w">213 ····</span><span·class="c1">%%·start·two·Docker·containers</span><span·class="w">
214 ····</span><span·class="p"·data-group-id="5565182491-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="5565182491-7">}</span><span[·...·truncated·by·diffoscope;·len:·247,·SHA:·a9f519cd1a55221c418957cf7d96aa2d7d13d89e819bc8e685413da3f4aa649b·...·]-9">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">lambda</span><span·class="p">,</span><span·class="w">214 ····</span><span·class="p"·data-group-id="0300722260-7">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node</span><span·class="p"·data-group-id="0300722260-7">}</span><span[·...·truncated·by·diffoscope;·len:·247,·SHA:·c9b6337700847fb8a1821a6571a1695e2fc643384f222574df6d8edeca70bfc9·...·]-9">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">lambda</span><span·class="p">,</span><span·class="w">
215 ········</span><span·class="ss">connection</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">standard_io</span><span·class="p">,</span><span·class="w">215 ········</span><span·class="ss">connection</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">standard_io</span><span·class="p">,</span><span·class="w">
216 ········</span><span·class="ss">exec</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-10">{</span><span·class="n">Docker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-11">[</span><span·class="s">&quot;run&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">[·...·truncated·by·diffoscope;·len:·483,·SHA:·fa34ddd2edae99db08e9692d52dfcc57a6b1b74d61efb8deeeec0bdb90584232·...·]-8">)</span><span·class="p">,</span><span·class="w">216 ········</span><span·class="ss">exec</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-10">{</span><span·class="n">Docker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-11">[</span><span·class="s">&quot;run&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">[·...·truncated·by·diffoscope;·len:·483,·SHA:·dc5d92b7d42cd8454eb1ea845fd6d86b748a98d59510c52e88896d4704159119·...·]-8">)</span><span·class="p">,</span><span·class="w">
217 ····</span><span·class="p"·data-group-id="5565182491-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node2</span><span·class="p"·data-group-id="5565182491-12">}</span><[·...·truncated·by·diffoscope;·len:·252,·SHA:·26e3a798dc08ceee46243cd41a828387e3e01c3c66f9b111f68dcd5021e10c75·...·]-14">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">lambda</span><span·class="p">,</span><span·class="w">217 ····</span><span·class="p"·data-group-id="0300722260-12">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Peer2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Node2</span><span·class="p"·data-group-id="0300722260-12">}</span><[·...·truncated·by·diffoscope;·len:·252,·SHA:·090204a51d0003b256e1e1fff2f84ed04ee7a27f04903b5eb9ead6338522382f·...·]-14">#{</span><span·class="ss">name</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">lambda</span><span·class="p">,</span><span·class="w">
218 ········</span><span·class="ss">connection</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">standard_io</span><span·class="p">,</span><span·class="w">218 ········</span><span·class="ss">connection</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">standard_io</span><span·class="p">,</span><span·class="w">
219 ········</span><span·class="ss">exec</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-15">{</span><span·class="n">Docker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-16">[</span><span·class="s">&quot;run&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">[·...·truncated·by·diffoscope;·len:·484,·SHA:·f7e1677f7af245532cdf385ac59005027c496d5de423049ba5f89a50d531a161·...·]-13">)</span><span·class="p">,</span><span·class="w">219 ········</span><span·class="ss">exec</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-15">{</span><span·class="n">Docker</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-16">[</span><span·class="s">&quot;run&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">[·...·truncated·by·diffoscope;·len:·484,·SHA:·9a2eee36d914bd3e424edd42e5077e79dbd416e23ddd62a294ab00da3c1a53b9·...·]-13">)</span><span·class="p">,</span><span·class="w">
  
220 ····</span><span·class="c1">%%·find·IP·address·of·the·second·node·using·alternative·connection·RPC</span><span·class="w">220 ····</span><span·class="c1">%%·find·IP·address·of·the·second·node·using·alternative·connection·RPC</span><span·class="w">
221 ····</span><span·class="p"·data-group-id="5565182491-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ips</span><span·class="p"·data-group-id="5565182491-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·510,·SHA:·aa2cf8605d38f2c7eda8096e7270b57218660ddf39b1bacbf7c74c18554ec6a7·...·]-18">)</span><span·class="p">,</span><span·class="w">221 ····</span><span·class="p"·data-group-id="0300722260-17">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ips</span><span·class="p"·data-group-id="0300722260-17">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·510,·SHA:·b429ecb001a951988ee4329bbdbb65b21e4313d9fceffbc84f2a8072d7b052cc·...·]-18">)</span><span·class="p">,</span><span·class="w">
222 ····</span><span·class="p"·data-group-id="5565182491-20">{</span><span·class="s">&quot;eth0&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Eth0</span><span·class="p"·data-group-id="5565182491-20">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·372,·SHA:·cc199d9ee5f7b028590214001fcee25ecdf9b016f100ef005359c679fb566f35·...·]-21">)</span><span·class="p">,</span><span·class="w">222 ····</span><span·class="p"·data-group-id="0300722260-20">{</span><span·class="s">&quot;eth0&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Eth0</span><span·class="p"·data-group-id="0300722260-20">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·[·...·truncated·by·diffoscope;·len:·372,·SHA:·2d61544b78ecfe17ea8f09706a560b0d30d29d2a7efe1ba6cc3bc090271a492d·...·]-21">)</span><span·class="p">,</span><span·class="w">
223 ····</span><span·class="p"·data-group-id="5565182491-22">{</span><span·class="ss">addr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ip</span><span·class="p"·data-group-id="5565182491-22">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·349,·SHA:·3ab77a4e991b709d60a83224003aa1043932c66fe09c49b4197f40f18227a17c·...·]-23">)</span><span·class="p">,</span><span·class="w">223 ····</span><span·class="p"·data-group-id="0300722260-22">{</span><span·class="ss">addr</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ip</span><span·class="p"·data-group-id="0300722260-22">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·349,·SHA:·46a66e0c319a0d507e2bd803c2f258bce7b67324a8064665c11598ffd89417e7·...·]-23">)</span><span·class="p">,</span><span·class="w">
  
224 ····</span><span·class="c1">%%·make·first·node·to·discover·second·one</span><span·class="w">224 ····</span><span·class="c1">%%·make·first·node·to·discover·second·one</span><span·class="w">
225 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="5565182491-24">(</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">inet_db</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">set_lookup</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·288,·SHA:·90049bfb7d5273fc138a17bbd93e5a13e2cbce54b680914c850be0475c1f37bd·...·]-24">)</span><span·class="p">,</span><span·class="w">225 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="0300722260-24">(</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">inet_db</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">set_lookup</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·288,·SHA:·47c76c15018ebe8e540ebf0f1ff5f79afe3d9090ed6dd04e945cf2f33c6f950b·...·]-24">)</span><span·class="p">,</span><span·class="w">
226 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="5565182491-27">(</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">inet_db</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">add_host</span><span·class="p">,</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·369,·SHA:·05744bf825baa9446e65413f0d4c498ce573d77a787689331c3d92c1b0fea488·...·]-27">)</span><span·class="p">,</span><span·class="w">226 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="0300722260-27">(</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">inet_db</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">add_host</span><span·class="p">,</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·369,·SHA:·f8171c75c2981abbdc4003d607156515ed0c1fd113f242bf4db72b70de3b1164·...·]-27">)</span><span·class="p">,</span><span·class="w">
  
227 ····</span><span·class="c1">%%·join·a·cluster</span><span·class="w">227 ····</span><span·class="c1">%%·join·a·cluster</span><span·class="w">
228 ····</span><span·class="ss">true</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="5565182491-30">(</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">net_kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">connect_node</span><span·class="p">,</span><span·class="w">[·...·truncated·by·diffoscope;·len:·185,·SHA:·9e0a870a9cf8d06847d803d3572e2888f46ca9955489b737535c38a2f24d32d4·...·]-30">)</span><span·class="p">,</span><span·class="w">228 ····</span><span·class="ss">true</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="0300722260-30">(</span><span·class="n">Peer</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">net_kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">connect_node</span><span·class="p">,</span><span·class="w">[·...·truncated·by·diffoscope;·len:·185,·SHA:·22040859e751b45ad376a35d60f046c01abce17ed544961f8e50253fe688d44e·...·]-30">)</span><span·class="p">,</span><span·class="w">
229 ····</span><span·class="c1">%%·verify·that·second·peer·node·has·only·the·first·node·visible</span><span·class="w">229 ····</span><span·class="c1">%%·verify·that·second·peer·node·has·only·the·first·node·visible</span><span·class="w">
230 ····</span><span·class="p"·data-group-id="5565182491-32">[</span><span·class="n">Node</span><span·class="p"·data-group-id="5565182491-32">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">call</span>[·...·truncated·by·diffoscope;·len:·434,·SHA:·0a64bb631b17ca669d2aead49cedd9bad37681add806cb0588023ac5cd37d745·...·]-33">)</span><span·class="p">,</span><span·class="w">230 ····</span><span·class="p"·data-group-id="0300722260-32">[</span><span·class="n">Node</span><span·class="p"·data-group-id="0300722260-32">]</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">call</span>[·...·truncated·by·diffoscope;·len:·434,·SHA:·150dd9bba073d59902bbc634cacaffde3b183b20f51bc8a7551f8c0b08e39eca·...·]-33">)</span><span·class="p">,</span><span·class="w">
  
231 ····</span><span·class="c1">%%·stop·peers,·causing·containers·to·also·stop</span><span·class="w">231 ····</span><span·class="c1">%%·stop·peers,·causing·containers·to·also·stop</span><span·class="w">
232 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="5565182491-35">(</span><span·class="n">Peer2</span><span·class="p"·data-group-id="5565182491-35">)</span><span·class="p">,</span><span·class="w">232 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="0300722260-35">(</span><span·class="n">Peer2</span><span·class="p"·data-group-id="0300722260-35">)</span><span·class="p">,</span><span·class="w">
233 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="5565182491-36">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="5565182491-36">)</span><span·class="p">.</span><span·class="w">233 ····</span><span·class="nc">peer</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="0300722260-36">(</span><span·class="n">Peer</span><span·class="p"·data-group-id="0300722260-36">)</span><span·class="p">.</span><span·class="w">
  
234 </span><span·class="nf">build_release</span><span·class="p"·data-group-id="5565182491-37">(</span><span·class="n">Dir</span><span·class="p"·data-group-id="5565182491-37">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">234 </span><span·class="nf">build_release</span><span·class="p"·data-group-id="0300722260-37">(</span><span·class="n">Dir</span><span·class="p"·data-group-id="0300722260-37">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
235 ····</span><span·class="c1">%%·load·sasl.app·file,·otherwise·application:get_key·will·fail</span><span·class="w">235 ····</span><span·class="c1">%%·load·sasl.app·file,·otherwise·application:get_key·will·fail</span><span·class="w">
236 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">load</span><span·class="p"·data-group-id="5565182491-38">(</span><span·class="ss">sasl</span><span·class="p"·data-group-id="5565182491-38">)</span><span·class="p">,</span><span·class="w">236 ····</span><span·class="nc">application</span><span·class="p">:</span><span·class="nf">load</span><span·class="p"·data-group-id="0300722260-38">(</span><span·class="ss">sasl</span><span·class="p"·data-group-id="0300722260-38">)</span><span·class="p">,</span><span·class="w">
237 ····</span><span·class="c1">%%·create·*.rel·-·release·file</span><span·class="w">237 ····</span><span·class="c1">%%·create·*.rel·-·release·file</span><span·class="w">
238 ····</span><span·class="n">RelFile</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="5565182491-39">(</span><span·class="n">Dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;lambda.rel&quot;</span><span·class="p"·data-group-id="5565182491-39">)</span><span·class="p">,</span><span·class="w">238 ····</span><span·class="n">RelFile</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="0300722260-39">(</span><span·class="n">Dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;lambda.rel&quot;</span><span·class="p"·data-group-id="0300722260-39">)</span><span·class="p">,</span><span·class="w">
239 ····</span><span·class="n">Release</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-40">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-41">{</span><span·class="s">&quot;lambda&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·70,·SHA:·b82ee0076b3955beb8174469da369855eb04b640586b593ba12f71c1e5c3f07b·...·]-41">}</span><span·class="p">,</span><span·class="w">239 ····</span><span·class="n">Release</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-40">{</span><span·class="ss">release</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-41">{</span><span·class="s">&quot;lambda&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·70,·SHA:·f3e74a3f0d1798f909d2a3175bf076bebfa21f15d5af1ffca7e78b380f1e1c9e·...·]-41">}</span><span·class="p">,</span><span·class="w">
240 ········</span><span·class="p"·data-group-id="5565182491-42">{</span><span·class="ss">erts</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="5565182491-43">(</span><span·class="s[·...·truncated·by·diffoscope;·len:·112,·SHA:·bf95b967c7006aebf6a9490f44bb94ed83d6707e0ca21e5f09578b683811bccd·...·]-42">}</span><span·class="p">,</span><span·class="w">240 ········</span><span·class="p"·data-group-id="0300722260-42">{</span><span·class="ss">erts</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="0300722260-43">(</span><span·class="s[·...·truncated·by·diffoscope;·len:·112,·SHA:·b8725452177dfc539747fa612f5a19ce2b14961d4961220da48c659d1b19476b·...·]-42">}</span><span·class="p">,</span><span·class="w">
241 ········</span><span·class="p"·data-group-id="5565182491-44">[</span><span·class="p"·data-group-id="5565182491-45">{</span><span·class="n">App</span><span·class="p">,</span><span·class="w">·</span><span·class="k">begin</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-46">{</span[·...·truncated·by·diffoscope;·len:·691,·SHA:·01da3c22ba17fac3c5c5d742ea3e65fcca50eaba240067bec275a55660203de9·...·]-45">}</span><span·class="w">241 ········</span><span·class="p"·data-group-id="0300722260-44">[</span><span·class="p"·data-group-id="0300722260-45">{</span><span·class="n">App</span><span·class="p">,</span><span·class="w">·</span><span·class="k">begin</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-46">{</span[·...·truncated·by·diffoscope;·len:·691,·SHA:·b59a91ad5fbba347dac329f4870e1ac873f7b60c61655ca508cc5f3e9bb14bc7·...·]-45">}</span><span·class="w">
242 ············</span><span·class="p">||</span><span·class="w">·</span><span·class="n">App</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-48">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sasl</span><span·class="p"·data-group-id="5565182491-48">]</[·...·truncated·by·diffoscope;·len:·100,·SHA:·913e16d47203806dbc5a702581c09e2b5092b2b1dc377d3a801a09915d101ac7·...·]-40">}</span><span·class="p">,</span><span·class="w">242 ············</span><span·class="p">||</span><span·class="w">·</span><span·class="n">App</span><span·class="w">·</span><span·class="o">&lt;-</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-48">[</span><span·class="ss">kernel</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">stdlib</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">sasl</span><span·class="p"·data-group-id="0300722260-48">]</[·...·truncated·by·diffoscope;·len:·100,·SHA:·e055d73fb6b0bd04f605685119dca5384f8f1da75bbbf5e8298e3b1c3f064de8·...·]-40">}</span><span·class="p">,</span><span·class="w">
243 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write_file</span><span·class="p"·data-group-id="5565182491-49">(</span><span·class="n">RelFile</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="5565182491-50">(</span><span·class="nc">lists</span><span·class="p">:</span><span·clas[·...·truncated·by·diffoscope;·len:·62,·SHA:·9abcb3b2ddc6f04ac0bd1e29cd979a4e3088c2baa17c530c202ff732e7bae960·...·]-51">(</span><span·class="w">243 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write_file</span><span·class="p"·data-group-id="0300722260-49">(</span><span·class="n">RelFile</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list_to_binary</span><span·class="p"·data-group-id="0300722260-50">(</span><span·class="nc">lists</span><span·class="p">:</span><span·clas[·...·truncated·by·diffoscope;·len:·62,·SHA:·d34352e34ad1a3df30c5ed1f65c781c4686abd96b409000686dc3a08f7d64c3a·...·]-51">(</span><span·class="w">
244 ········</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="5565182491-52">(</span><span·class="s">&quot;~tp.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-53">[</span><span·class="n">Release</span><span·class="p"·data-group-id="5565182491-53">]</span><span·cl[·...·truncated·by·diffoscope;·len:·195,·SHA:·c3c6f175bd51c7f2e9cb887c170374937b2913ad75f727b0c983b65421501d09·...·]-49">)</span><span·class="p">,</span><span·class="w">244 ········</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="0300722260-52">(</span><span·class="s">&quot;~tp.&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-53">[</span><span·class="n">Release</span><span·class="p"·data-group-id="0300722260-53">]</span><span·cl[·...·truncated·by·diffoscope;·len:·195,·SHA:·b13afe41e495f93c6fd63e0d6efc9fe1a817e425993a4f9144d7ed31dfc7aba5·...·]-49">)</span><span·class="p">,</span><span·class="w">
245 ····</span><span·class="n">RelFileNoExt</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="5565182491-54">(</span><span·class="n">Dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;lambda&quot;</span><span·class="p"·data-group-id="5565182491-54">)</span><span·class="p">,</span><span·class="w">245 ····</span><span·class="n">RelFileNoExt</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="0300722260-54">(</span><span·class="n">Dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;lambda&quot;</span><span·class="p"·data-group-id="0300722260-54">)</span><span·class="p">,</span><span·class="w">
  
246 ····</span><span·class="c1">%%·create·boot·script</span><span·class="w">246 ····</span><span·class="c1">%%·create·boot·script</span><span·class="w">
247 ····</span><span·class="p"·data-group-id="5565182491-55">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">systools_make</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-56">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·292,·SHA:·85344e63dd67b7a01359c5632465bf1f4b455e99655de717c927e10807db746c·...·]-57">(</span><span·class="n">RelFileNoExt</span><span·class="p">,</span><span·class="w">247 ····</span><span·class="p"·data-group-id="0300722260-55">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">systools_make</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-56">[</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·292,·SHA:·f7d47fb0d3051adcbc4b81f12c94e21ba399cab66674f0e0137876260bf379f4·...·]-57">(</span><span·class="n">RelFileNoExt</span><span·class="p">,</span><span·class="w">
248 ········</span><span·class="p"·data-group-id="5565182491-58">[</span><span·class="ss">silent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-59">{</span><span·class="ss">outdir</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dir</sp[·...·truncated·by·diffoscope;·len:·152,·SHA:·03d9973dd694b055d723575fcca7b5006389ca9ee8df07b4544dc5e3f9bc19d8·...·]-57">)</span><span·class="p">,</span><span·class="w">248 ········</span><span·class="p"·data-group-id="0300722260-58">[</span><span·class="ss">silent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-59">{</span><span·class="ss">outdir</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Dir</sp[·...·truncated·by·diffoscope;·len:·152,·SHA:·c5d8b8bd49bddfc312a38ecedec311c05b7cde2ef656ddf6ab08898dea8f78d6·...·]-57">)</span><span·class="p">,</span><span·class="w">
249 ····</span><span·class="c1">%%·package·release·into·*.tar.gz</span><span·class="w">249 ····</span><span·class="c1">%%·package·release·into·*.tar.gz</span><span·class="w">
250 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">systools</span><span·class="p">:</span><span·class="nf">make_tar</span><span·class="p"·data-group-id="5565182491-60">(</span><span·class="n">RelFileNoExt</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5565182491-61">[</span><span·class="p"·data-group-id="5565182491-62">{</span><span·class="ss">erts</span><span·class="p[·...·truncated·by·diffoscope;·len:·375,·SHA:·f520d05b691265de5f154ae11474da19b0986e08fdbe68fd257d7c3d54bae43a·...·]-60">)</span><span·class="p">.</span><span·class="w">250 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">systools</span><span·class="p">:</span><span·class="nf">make_tar</span><span·class="p"·data-group-id="0300722260-60">(</span><span·class="n">RelFileNoExt</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0300722260-61">[</span><span·class="p"·data-group-id="0300722260-62">{</span><span·class="ss">erts</span><span·class="p[·...·truncated·by·diffoscope;·len:·375,·SHA:·ff8f60abda19b71e1e4a2657366453d4df118035adb58e3b1d2a3042058c88a3·...·]-60">)</span><span·class="p">.</span><span·class="w">
  
251 </span><span·class="nf">build_image</span><span·class="p"·data-group-id="5565182491-64">(</span><span·class="n">Dir</span><span·class="p"·data-group-id="5565182491-64">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">251 </span><span·class="nf">build_image</span><span·class="p"·data-group-id="0300722260-64">(</span><span·class="n">Dir</span><span·class="p"·data-group-id="0300722260-64">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
252 ····</span><span·class="c1">%%·Create·Dockerfile·example,·working·only·for·Ubuntu·20.04</span><span·class="w">252 ····</span><span·class="c1">%%·Create·Dockerfile·example,·working·only·for·Ubuntu·20.04</span><span·class="w">
253 ····</span><span·class="c1">%%·Expose·port·4445,·and·make·Erlang·distribution·to·listen</span><span·class="w">253 ····</span><span·class="c1">%%·Expose·port·4445,·and·make·Erlang·distribution·to·listen</span><span·class="w">
254 ····</span><span·class="c1">%%··on·this·port,·and·connect·to·it·without·EPMD</span><span·class="w">254 ····</span><span·class="c1">%%··on·this·port,·and·connect·to·it·without·EPMD</span><span·class="w">
255 ····</span><span·class="c1">%%·Set·cookie·on·both·nodes·to·be·the·same.</span><span·class="w">255 ····</span><span·class="c1">%%·Set·cookie·on·both·nodes·to·be·the·same.</span><span·class="w">
256 ····</span><span·class="n">BuildScript</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="5565182491-65">(</span><span·class="n">Dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Dockerfile&quot;</span><span·class="p"·data-group-id="5565182491-65">)</span><span·class="p">,</span><span·class="w">256 ····</span><span·class="n">BuildScript</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">filename</span><span·class="p">:</span><span·class="nf">join</span><span·class="p"·data-group-id="0300722260-65">(</span><span·class="n">Dir</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Dockerfile&quot;</span><span·class="p"·data-group-id="0300722260-65">)</span><span·class="p">,</span><span·class="w">
257 ····</span><span·class="n">Dockerfile</span><span·class="w">·</span><span·class="o">=</span><span·class="w">257 ····</span><span·class="n">Dockerfile</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
258 ······</span><span·class="s">&quot;FROM·ubuntu:20.04·as·runner\n&quot;</span><span·class="w">258 ······</span><span·class="s">&quot;FROM·ubuntu:20.04·as·runner\n&quot;</span><span·class="w">
259 ······</span><span·class="s">&quot;EXPOSE·4445\n&quot;</span><span·class="w">259 ······</span><span·class="s">&quot;EXPOSE·4445\n&quot;</span><span·class="w">
260 ······</span><span·class="s">&quot;WORKDIR·/opt/lambda\n&quot;</span><span·class="w">260 ······</span><span·class="s">&quot;WORKDIR·/opt/lambda\n&quot;</span><span·class="w">
261 ······</span><span·class="s">&quot;COPY·lambda.tar.gz·/tmp\n&quot;</span><span·class="w">261 ······</span><span·class="s">&quot;COPY·lambda.tar.gz·/tmp\n&quot;</span><span·class="w">
262 ······</span><span·class="s">&quot;RUN·tar·-zxvf·/tmp/lambda.tar.gz·-C·/opt/lambda\n&quot;</span><span·class="w">262 ······</span><span·class="s">&quot;RUN·tar·-zxvf·/tmp/lambda.tar.gz·-C·/opt/lambda\n&quot;</span><span·class="w">
263 ······</span><span·class="s">&quot;ENTRYPOINT·[\&quot;/opt/lambda/erts-&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="5565182491-66">(</span><span·class="ss">version</span><span·class="p"·data-group-id="5565182491-66">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">263 ······</span><span·class="s">&quot;ENTRYPOINT·[\&quot;/opt/lambda/erts-&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">system_info</span><span·class="p"·data-group-id="0300722260-66">(</span><span·class="ss">version</span><span·class="p"·data-group-id="0300722260-66">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">
264 ······</span><span·class="s">&quot;/bin/dyn_erl\&quot;,·\&quot;-boot\&quot;,·\&quot;/opt/lambda/releases/1.0.0/start\&quot;,&quot;</span><span·class="w">264 ······</span><span·class="s">&quot;/bin/dyn_erl\&quot;,·\&quot;-boot\&quot;,·\&quot;/opt/lambda/releases/1.0.0/start\&quot;,&quot;</span><span·class="w">
265 ······</span><span·class="s">&quot;·\&quot;-kernel\&quot;,·\&quot;inet_dist_listen_min\&quot;,·\&quot;4445\&quot;,&quot;</span><span·class="w">265 ······</span><span·class="s">&quot;·\&quot;-kernel\&quot;,·\&quot;inet_dist_listen_min\&quot;,·\&quot;4445\&quot;,&quot;</span><span·class="w">
266 ······</span><span·class="s">&quot;·\&quot;-erl_epmd_port\&quot;,·\&quot;4445\&quot;,&quot;</span><span·class="w">266 ······</span><span·class="s">&quot;·\&quot;-erl_epmd_port\&quot;,·\&quot;4445\&quot;,&quot;</span><span·class="w">
267 ······</span><span·class="s">&quot;·\&quot;-setcookie\&quot;,·\&quot;secret\&quot;]\n&quot;</span><span·class="p">,</span><span·class="w">267 ······</span><span·class="s">&quot;·\&quot;-setcookie\&quot;,·\&quot;secret\&quot;]\n&quot;</span><span·class="p">,</span><span·class="w">
Max diff block lines reached; 8589/92995 bytes (9.24%) of diff not shown.
735 B
html2text {}
Max HTML report size reached
1.4 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/pool.html
    
Offset 511, 15 lines modifiedOffset 511, 15 lines modified
511 ······<p·class="built-using">511 ······<p·class="built-using">
512 ········Built·using512 ········Built·using
513 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the513 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
514 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>514 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
515 ······</p>515 ······</p>
516 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>516 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
517 ····</footer>517 ····</footer>
518 ··</div>518 ··</div>
519 </main>519 </main>
520 </div>520 </div>
521 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>521 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
522 <script>522 <script>
523 ··document.addEventListener("DOMContentLoaded",·function·()·{523 ··document.addEventListener("DOMContentLoaded",·function·()·{
598 B
html2text {}
Max HTML report size reached
20.2 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/proc_lib.html
    
Offset 991, 29 lines modifiedOffset 991, 29 lines modified
991 the·start·function·used.</p><p>If·neither·this·function·nor·<a·href="#init_fail/3"><code·class="inline">init_fail/2,3</code></a>·is·called·by·the991 the·start·function·used.</p><p>If·neither·this·function·nor·<a·href="#init_fail/3"><code·class="inline">init_fail/2,3</code></a>·is·called·by·the
992 started·process,·the·start·function·returns·an·error·tuple·when·the·started992 started·process,·the·start·function·returns·an·error·tuple·when·the·started
993 process·exits,·or·when·the·start·function·time-out·(if·used)·has·passed,·see993 process·exits,·or·when·the·start·function·time-out·(if·used)·has·passed,·see
994 <a·href="#start/5"><code·class="inline">start/3,4,5</code></a>.</p><blockquote><h4·class="warning">Warning</h4><p>Do·not·use·this·function·to·return·an·error·indicating·that·the·process·start994 <a·href="#start/5"><code·class="inline">start/3,4,5</code></a>.</p><blockquote><h4·class="warning">Warning</h4><p>Do·not·use·this·function·to·return·an·error·indicating·that·the·process·start
995 failed.·When·doing·so·the·start·function·can·return·before·the·failing·process995 failed.·When·doing·so·the·start·function·can·return·before·the·failing·process
996 has·exited,·which·may·block·VM·resources·required·for·a·new·start·attempt·to996 has·exited,·which·may·block·VM·resources·required·for·a·new·start·attempt·to
997 succeed.·Use·<a·href="#init_fail/3"><code·class="inline">init_fail/2,3</code></a>·for·that·purpose.</p></blockquote><p>The·following·example·illustrates·how·this·function·and·<a·href="#start_link/3"><code·class="inline">proc_lib:start_link/3</code></a>997 succeed.·Use·<a·href="#init_fail/3"><code·class="inline">init_fail/2,3</code></a>·for·that·purpose.</p></blockquote><p>The·following·example·illustrates·how·this·function·and·<a·href="#start_link/3"><code·class="inline">proc_lib:start_link/3</code></a>
998 are·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1369415982-1">(</span><span·class="ss">my_proc</span><span·class="p"·data-group-id="1369415982-1">)</span><span·class="p">.</span><span·class="w">998 are·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1277111532-1">(</span><span·class="ss">my_proc</span><span·class="p"·data-group-id="1277111532-1">)</span><span·class="p">.</span><span·class="w">
999 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1369415982-2">(</span><span·class="p"·data-group-id="1369415982-3">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1369415982-3">]</span><span·class="p"·data-group-id="1369415982-2">)</span><span·class="p">.</span><span·class="w">999 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1277111532-2">(</span><span·class="p"·data-group-id="1277111532-3">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="1277111532-3">]</span><span·class="p"·data-group-id="1277111532-2">)</span><span·class="p">.</span><span·class="w">
1000 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1369415982-4">(</span><span·class="p"·data-group-id="1369415982-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="1369415982-5">]</span><span·class="p"·data-group-id="1369415982-4">)</span><span·class="p">.</span><span·class="w">1000 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1277111532-4">(</span><span·class="p"·data-group-id="1277111532-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="1277111532-5">]</span><span·class="p"·data-group-id="1277111532-4">)</span><span·class="p">.</span><span·class="w">
  
1001 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="1369415982-6">(</span><span·class="p"·data-group-id="1369415982-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1001 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="1277111532-6">(</span><span·class="p"·data-group-id="1277111532-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1002 ····</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="1369415982-7">(</span><span·class="ss">my_proc</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1369415982-8">[</span><span·class="nf">self</span[·...·truncated·by·diffoscope;·len:·200,·SHA:·c0803a77a68ab4b343053e3d0219cd9aec56b1117a31edf7bcc14a14ff4e0eed·...·]2-7">)</span><span·class="p">.</span><span·class="w">1002 ····</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="1277111532-7">(</span><span·class="ss">my_proc</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1277111532-8">[</span><span·class="nf">self</span[·...·truncated·by·diffoscope;·len:·200,·SHA:·30c67afb716568f8906edbde1584458b01194ccf2973ed2cf619ec2229c15744·...·]2-7">)</span><span·class="p">.</span><span·class="w">
  
1003 </span><span·class="nf">init</span><span·class="p"·data-group-id="1369415982-10">(</span><span·class="n">Parent</span><span·class="p"·data-group-id="1369415982-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1003 </span><span·class="nf">init</span><span·class="p"·data-group-id="1277111532-10">(</span><span·class="n">Parent</span><span·class="p"·data-group-id="1277111532-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1004 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">do_initialization</span><span·class="p"·data-group-id="1369415982-11">(</span><span·class="p"·data-group-id="1369415982-11">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">1004 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">do_initialization</span><span·class="p"·data-group-id="1277111532-11">(</span><span·class="p"·data-group-id="1277111532-11">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
1005 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1005 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1006 ············</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">init_ack</span><span·class="p"·data-group-id="1369415982-12">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1369415982-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><[·...·truncated·by·diffoscope;·len:·201,·SHA:·80bd7c39b02b7118de73d12a631de0c18ec36e0b934207c8ceb533887450a3be·...·]2-12">)</span><span·class="p">;</span><span·class="w">1006 ············</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">init_ack</span><span·class="p"·data-group-id="1277111532-12">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1277111532-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><[·...·truncated·by·diffoscope;·len:·201,·SHA:·4a02f2395b7b79d6133c3bb431c50c658397bc341899233654ee65d6f9140c75·...·]2-12">)</span><span·class="p">;</span><span·class="w">
1007 ········</span><span·class="p"·data-group-id="1369415982-15">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="1369415982-15">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1007 ········</span><span·class="p"·data-group-id="1277111532-15">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="1277111532-15">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1008 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="1369415982-16">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="1369415982-16">)</span><span·class="w">1008 ············</span><span·class="nf">exit</span><span·class="p"·data-group-id="1277111532-16">(</span><span·class="n">Reason</span><span·class="p"·data-group-id="1277111532-16">)</span><span·class="w">
1009 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">1009 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
1010 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="1369415982-17">(</span><span·class="p"·data-group-id="1369415982-17">)</span><span·class="p">.</span><span·class="w">1010 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="1277111532-17">(</span><span·class="p"·data-group-id="1277111532-17">)</span><span·class="p">.</span><span·class="w">
  
1011 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>1011 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>
1012 ··</section>1012 ··</section>
1013 </section>1013 </section>
1014 <section·class="detail"·id="init_fail/2">1014 <section·class="detail"·id="init_fail/2">
  
1015 ··<div·class="detail-header">1015 ··<div·class="detail-header">
Offset 1078, 29 lines modifiedOffset 1078, 29 lines modified
1078 to·<code·class="inline">Exception</code>.·The·start·function·then·returns·<code·class="inline">Ret</code>.</p><p>See·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#raise/3"><code·class="inline">erlang:raise/3</code></a>·for·a·description·of·<code·class="inline">Class</code>,·<code·class="inline">Reason</code>·and·<code·class="inline">Stacktrace</code>.</p><blockquote><h4·class="warning">Warning</h4><p>Do·not·consider·catching·the·exception·from·this·function.·That·would·defeat1078 to·<code·class="inline">Exception</code>.·The·start·function·then·returns·<code·class="inline">Ret</code>.</p><p>See·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#raise/3"><code·class="inline">erlang:raise/3</code></a>·for·a·description·of·<code·class="inline">Class</code>,·<code·class="inline">Reason</code>·and·<code·class="inline">Stacktrace</code>.</p><blockquote><h4·class="warning">Warning</h4><p>Do·not·consider·catching·the·exception·from·this·function.·That·would·defeat
1079 its·purpose.·A·process·started·by·a·<a·href="#start/3"><code·class="inline">start[_link|_monitor]/3,4,5</code></a>1079 its·purpose.·A·process·started·by·a·<a·href="#start/3"><code·class="inline">start[_link|_monitor]/3,4,5</code></a>
1080 function·should·end·in·a·value·(that·will·be·ignored)·or·an·exception·that1080 function·should·end·in·a·value·(that·will·be·ignored)·or·an·exception·that
1081 will·be·handled·by·this·module.·See·<a·href="proc_lib.html">Description</a>.</p></blockquote><p>If·neither·this·function·nor·<a·href="#init_ack/1"><code·class="inline">init_ack/1,2</code></a>·is·called·by·the1081 will·be·handled·by·this·module.·See·<a·href="proc_lib.html">Description</a>.</p></blockquote><p>If·neither·this·function·nor·<a·href="#init_ack/1"><code·class="inline">init_ack/1,2</code></a>·is·called·by·the
1082 started·process,·the·start·function·returns·an·error·tuple·when·the·started1082 started·process,·the·start·function·returns·an·error·tuple·when·the·started
1083 process·exits,·or·when·the·start·function·time-out·(if·used)·has·passed,·see1083 process·exits,·or·when·the·start·function·time-out·(if·used)·has·passed,·see
1084 <a·href="#start/3"><code·class="inline">start/3,4,5</code></a>.</p><p>The·following·example·illustrates·how·this·function·and·<a·href="#start_link/3"><code·class="inline">proc_lib:start_link/3</code></a>1084 <a·href="#start/3"><code·class="inline">start/3,4,5</code></a>.</p><p>The·following·example·illustrates·how·this·function·and·<a·href="#start_link/3"><code·class="inline">proc_lib:start_link/3</code></a>
1085 can·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="2884496644-1">(</span><span·class="ss">my_proc</span><span·class="p"·data-group-id="2884496644-1">)</span><span·class="p">.</span><span·class="w">1085 can·be·used:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="4973632122-1">(</span><span·class="ss">my_proc</span><span·class="p"·data-group-id="4973632122-1">)</span><span·class="p">.</span><span·class="w">
1086 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2884496644-2">(</span><span·class="p"·data-group-id="2884496644-3">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="2884496644-3">]</span><span·class="p"·data-group-id="2884496644-2">)</span><span·class="p">.</span><span·class="w">1086 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4973632122-2">(</span><span·class="p"·data-group-id="4973632122-3">[</span><span·class="ss">start_link</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="4973632122-3">]</span><span·class="p"·data-group-id="4973632122-2">)</span><span·class="p">.</span><span·class="w">
1087 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="2884496644-4">(</span><span·class="p"·data-group-id="2884496644-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="2884496644-5">]</span><span·class="p"·data-group-id="2884496644-4">)</span><span·class="p">.</span><span·class="w">1087 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="4973632122-4">(</span><span·class="p"·data-group-id="4973632122-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="4973632122-5">]</span><span·class="p"·data-group-id="4973632122-4">)</span><span·class="p">.</span><span·class="w">
  
1088 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="2884496644-6">(</span><span·class="p"·data-group-id="2884496644-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1088 </span><span·class="nf">start_link</span><span·class="p"·data-group-id="4973632122-6">(</span><span·class="p"·data-group-id="4973632122-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1089 ····</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="2884496644-7">(</span><span·class="ss">my_proc</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2884496644-8">[</span><span·class="nf">self</spa[·...·truncated·by·diffoscope;·len:·202,·SHA:·803c392bdec3189664706be70bfa33726569be2f411d21856591949615d2efb2·...·]-7">)</span><span·class="p">.</span><span·class="w">1089 ····</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="4973632122-7">(</span><span·class="ss">my_proc</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">init</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4973632122-8">[</span><span·class="nf">self</spa[·...·truncated·by·diffoscope;·len:·202,·SHA:·150d3ee6e3b82403ea950c45e0fabebd18e87c5b432714b915b36727201417f1·...·]-7">)</span><span·class="p">.</span><span·class="w">
  
1090 </span><span·class="nf">init</span><span·class="p"·data-group-id="2884496644-10">(</span><span·class="n">Parent</span><span·class="p"·data-group-id="2884496644-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1090 </span><span·class="nf">init</span><span·class="p"·data-group-id="4973632122-10">(</span><span·class="n">Parent</span><span·class="p"·data-group-id="4973632122-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1091 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">do_initialization</span><span·class="p"·data-group-id="2884496644-11">(</span><span·class="p"·data-group-id="2884496644-11">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">1091 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nf">do_initialization</span><span·class="p"·data-group-id="4973632122-11">(</span><span·class="p"·data-group-id="4973632122-11">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
1092 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1092 ········</span><span·class="ss">ok</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1093 ············</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">init_ack</span><span·class="p"·data-group-id="2884496644-12">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2884496644-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span>[·...·truncated·by·diffoscope;·len:·203,·SHA:·b6467085a64db49a03d6392c40e8865aa78cfc3a950cef4d2244684a45958520·...·]-12">)</span><span·class="p">;</span><span·class="w">1093 ············</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">init_ack</span><span·class="p"·data-group-id="4973632122-12">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4973632122-13">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span>[·...·truncated·by·diffoscope;·len:·203,·SHA:·dde29ff0d260488bc8530fe1461e2c1cf5950e2af932569f6cd77ad77bf4d988·...·]-12">)</span><span·class="p">;</span><span·class="w">
1094 ········</span><span·class="p"·data-group-id="2884496644-15">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="2884496644-15">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Error</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1094 ········</span><span·class="p"·data-group-id="4973632122-15">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Reason</span><span·class="p"·data-group-id="4973632122-15">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Error</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1095 ············</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">init_fail</span><span·class="p"·data-group-id="2884496644-16">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Error</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2884496644-17">{</span><span·class="nb">exit</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·13d39c8116eba0b3e15a84133543280d459ffdf11ecb5db8b23633ef6b5d6445·...·]-16">)</span><span·class="w">1095 ············</span><span·class="nc">proc_lib</span><span·class="p">:</span><span·class="nf">init_fail</span><span·class="p"·data-group-id="4973632122-16">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Error</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4973632122-17">{</span><span·class="nb">exit</spa[·...·truncated·by·diffoscope;·len:·175,·SHA:·b5472449235dece442245038fe1e91770f1fc42f3b577e5d564fd4b2f0e0a1e2·...·]-16">)</span><span·class="w">
1096 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">1096 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
1097 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="2884496644-18">(</span><span·class="p"·data-group-id="2884496644-18">)</span><span·class="p">.</span><span·class="w">1097 ····</span><span·class="nf">loop</span><span·class="p"·data-group-id="4973632122-18">(</span><span·class="p"·data-group-id="4973632122-18">)</span><span·class="p">.</span><span·class="w">
  
1098 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>1098 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre>
1099 ··</section>1099 ··</section>
1100 </section>1100 </section>
1101 <section·class="detail"·id="initial_call/1">1101 <section·class="detail"·id="initial_call/1">
  
1102 ··<div·class="detail-header">1102 ··<div·class="detail-header">
Offset 2026, 15 lines modifiedOffset 2026, 15 lines modified
2026 ······<p·class="built-using">2026 ······<p·class="built-using">
2027 ········Built·using2027 ········Built·using
2028 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2028 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2029 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2029 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2030 ······</p>2030 ······</p>
2031 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2031 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2032 ····</footer>2032 ····</footer>
2033 ··</div>2033 ··</div>
2034 </main>2034 </main>
2035 </div>2035 </div>
2036 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2036 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2037 <script>2037 <script>
2038 ··document.addEventListener("DOMContentLoaded",·function·()·{2038 ··document.addEventListener("DOMContentLoaded",·function·()·{
663 B
html2text {}
Max HTML report size reached
31.9 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/proplists.html
    
Offset 528, 15 lines modifiedOffset 528, 15 lines modified
  
528 ··········<pre·translate="no"><span·class="attribute">-spec</span>·append_values(Key,·ListIn)·->·ListOut·when·Key·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),·ListIn·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()],·ListOut·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()].</pre>528 ··········<pre·translate="no"><span·class="attribute">-spec</span>·append_values(Key,·ListIn)·->·ListOut·when·Key·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>(),·ListIn·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()],·ListOut·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()].</pre>
  
529 ······</div>529 ······</div>
  
530 <p>Similar·to·<a·href="#get_all_values/2"><code·class="inline">get_all_values/2</code></a>,·but·each·value·is·wrapped·in·a·list·unless·it·is530 <p>Similar·to·<a·href="#get_all_values/2"><code·class="inline">get_all_values/2</code></a>,·but·each·value·is·wrapped·in·a·list·unless·it·is
531 already·itself·a·list.·The·resulting·list·of·lists·is·concatenated.·This·is531 already·itself·a·list.·The·resulting·list·of·lists·is·concatenated.·This·is
532 often·useful·for·&quot;incremental&quot;·options.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">append_values</span><span·class="p"·data-group-id="2567696881-1">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2567696881-2">[</span><span·class="p"·data-group-id="2567696881-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·1836,·SHA:·14cc23ff0b66fbd5762d13cb6305c9f50f2b5667499315fc78521e258c1fc2ed·...·]-1">]</span></code></pre>532 often·useful·for·&quot;incremental&quot;·options.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">append_values</span><span·class="p"·data-group-id="2819904983-1">(</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2819904983-2">[</span><span·class="p"·data-group-id="2819904983-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·c[·...·truncated·by·diffoscope;·len:·1836,·SHA:·987b0bc12bca6f85f08cbf4587c53f10ec6d59a8238008362e3dd83563451812·...·]-1">]</span></code></pre>
533 ··</section>533 ··</section>
534 </section>534 </section>
535 <section·class="detail"·id="compact/1">535 <section·class="detail"·id="compact/1">
  
536 ··<div·class="detail-header">536 ··<div·class="detail-header">
537 ····<a·href="#compact/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">537 ····<a·href="#compact/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
538 ······<i·class="ri-link-m"·aria-hidden="true"></i>538 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 622, 18 lines modifiedOffset 622, 18 lines modified
622 ······</div>622 ······</div>
  
623 <p>Expands·particular·properties·to·corresponding·sets·of·properties·(or·other623 <p>Expands·particular·properties·to·corresponding·sets·of·properties·(or·other
624 terms).</p><p>For·each·pair·<code·class="inline">{Property,·Expansion}</code>·in·<code·class="inline">Expansions</code>:·if·<code·class="inline">E</code>·is·the624 terms).</p><p>For·each·pair·<code·class="inline">{Property,·Expansion}</code>·in·<code·class="inline">Expansions</code>:·if·<code·class="inline">E</code>·is·the
625 first·entry·in·<code·class="inline">ListIn</code>·with·the·same·key·as·<code·class="inline">Property</code>,·and·<code·class="inline">E</code>·and·<code·class="inline">Property</code>625 first·entry·in·<code·class="inline">ListIn</code>·with·the·same·key·as·<code·class="inline">Property</code>,·and·<code·class="inline">E</code>·and·<code·class="inline">Property</code>
626 have·equivalent·normal·forms,·then·<code·class="inline">E</code>·is·replaced·with·the·terms·in626 have·equivalent·normal·forms,·then·<code·class="inline">E</code>·is·replaced·with·the·terms·in
627 <code·class="inline">Expansion</code>,·and·any·following·entries·with·the·same·key·are·deleted·from627 <code·class="inline">Expansion</code>,·and·any·following·entries·with·the·same·key·are·deleted·from
628 <code·class="inline">ListIn</code>.</p><p>For·example,·the·following·expressions·all·return·<code·class="inline">[fie,·bar,·baz,·fum]</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">expand</span><span·class="p"·data-group-id="6679538166-1">(</span><span·class="p"·data-group-id="6679538166-2">[</span><span·class="p"·data-group-id="6679538166-3">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6679538166-4">[</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">baz</span><span·class="p"·data-group-id="6679538166-4">]</span><span·class="p"·data-group-id="6679538166-3">}</span><span·class="p"·data-group-id="6679538166-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6679538166-5">[</span><span·class="ss">fie</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">fum</span><span·class="p"·data-group-id="6679538166-5">]</span><span·class="p"·data-group-id="6679538166-1">)</span><span·class="w"> 
629 </span><span·class="nf">expand</span><span·class="p"·data-group-id="6679538166-6">(</span><span·class="p"·data-group-id="6679538166-7">[</span><span·class="p"·data-group-id="6679538166-8">{</span><span·class="p"·data-group-id="6679538166-9">{</span><span·cl[·...·truncated·by·diffoscope;·len:·888,·SHA:·32762298d5162df749ce8e55be9379f957879afae6e8835b16df75e59562c4d8·...·]">)</span><span·class="w">628 <code·class="inline">ListIn</code>.</p><p>For·example,·the·following·expressions·all·return·<code·class="inline">[fie,·bar,·baz,·fum]</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">expand</span><span·class="p"·data-group-id="696[·...·truncated·by·diffoscope;·len:·888,·SHA:·c72e109aa80dd2316e73593ba3b5371769f7db3e5573b2eb84a2c58e455357bb·...·]">)</span><span·class="w">
 629 </span><span·class="nf">expand</span><span·class="p"·data-group-id="6960477927-6">(</span><span·class="p"·data-group-id="6960477927-7">[</span><span·class="p"·data-group-id="6960477927-8">{</span><span·class="p"·data-group-id="6960477927-9">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="6960477927-9">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6960477927-10">[</span><span·class="ss">bar</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">baz</span><span·class="p"·data-group-id="6960477927-10">]</span><span·class="p"·data-group-id="6960477927-8">}</span><span·class="p"·data-group-id="6960477927-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6960477927-11">[</span><span·class="ss">fie</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">fum</span><span·class="p"·data-group-id="6960477927-11">]</span><span·class="p"·data-group-id="6960477927-6">)</span><span·class="w">
630 </span><span·class="nf">expand</span><span·class="p"·data-group-id="6679538166-12">(</span><span·class="p"·data-group-id="6679538166-13">[</span><span·class="p"·data-group-id="6679538166-14">{</span><span·class="p"·data-group-id="6679538166-15">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·1011,·SHA:·8c693b7218f14f001c1aef7ed21c5dee57e52808e5712f0313cf16c2b1b915d5·...·]-12">)</span></code></pre><p>However,·no·expansion·is·done·in·the·following·call·because·<code·class="inline">{foo,·false}</code>630 </span><span·class="nf">expand</span><span·class="p"·data-group-id="6960477927-12">(</span><span·class="p"·data-group-id="6960477927-13">[</span><span·class="p"·data-group-id="6960477927-14">{</span><span·class="p"·data-group-id="6960477927-15">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·1011,·SHA:·6c68ca4bc719c252a9a51822647c4238768b1c7aed6c84472bbe7325242a9997·...·]-12">)</span></code></pre><p>However,·no·expansion·is·done·in·the·following·call·because·<code·class="inline">{foo,·false}</code>
631 shadows·<code·class="inline">foo</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">expand</span><span·class="p"·data-group-id="3168629314-1">(</span><span·class="p"·data-group-id="3168629314-2">[</span><span·class="p"·data-group-id="3168629314-3">{</span><span·class="p"·data-group-id="3168629314-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·1073,·SHA:·faa99764e760912ca8895e46e2a746f8f1ef16aa029eb19e3930777fa2a55573·...·]-1">)</span></code></pre><p>Notice·that·if·the·original·property·term·is·to·be·preserved·in·the·result·when631 shadows·<code·class="inline">foo</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">expand</span><span·class="p"·data-group-id="9646210420-1">(</span><span·class="p"·data-group-id="9646210420-2">[</span><span·class="p"·data-group-id="9646210420-3">{</span><span·class="p"·data-group-id="9646210420-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·1073,·SHA:·ac196b089ef90a2fb049980f481951f1791f6bc3701c8aae4a45eee755b62d07·...·]-1">)</span></code></pre><p>Notice·that·if·the·original·property·term·is·to·be·preserved·in·the·result·when
632 expanded,·it·must·be·included·in·the·expansion·list.·The·inserted·terms·are·not632 expanded,·it·must·be·included·in·the·expansion·list.·The·inserted·terms·are·not
633 expanded·recursively.·If·<code·class="inline">Expansions</code>·contains·more·than·one·property·with·the633 expanded·recursively.·If·<code·class="inline">Expansions</code>·contains·more·than·one·property·with·the
634 same·key,·only·the·first·occurrence·is·used.</p><p>See·also·<a·href="#normalize/2"><code·class="inline">normalize/2</code></a>.</p>634 same·key,·only·the·first·occurrence·is·used.</p><p>See·also·<a·href="#normalize/2"><code·class="inline">normalize/2</code></a>.</p>
635 ··</section>635 ··</section>
636 </section>636 </section>
637 <section·class="detail"·id="from_map/1">637 <section·class="detail"·id="from_map/1">
  
Offset 1030, 15 lines modifiedOffset 1030, 15 lines modified
1030 ···············when·List·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()],·Keys·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()],·Lists·::·[[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()]],·Rest·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()].</pre>1030 ···············when·List·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()],·Keys·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()],·Lists·::·[[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()]],·Rest·::·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:term/0">term</a>()].</pre>
  
1031 ······</div>1031 ······</div>
  
1032 <p>Partitions·<code·class="inline">List</code>·into·a·list·of·sublists·and·a·remainder.</p><p><code·class="inline">Lists</code>·contains·one·sublist·for·each·key·in·<code·class="inline">Keys</code>,·in·the·corresponding·order.1032 <p>Partitions·<code·class="inline">List</code>·into·a·list·of·sublists·and·a·remainder.</p><p><code·class="inline">Lists</code>·contains·one·sublist·for·each·key·in·<code·class="inline">Keys</code>,·in·the·corresponding·order.
1033 The·relative·order·of·the·elements·in·each·sublist·is·preserved·from·the·original·<code·class="inline">List</code>.1033 The·relative·order·of·the·elements·in·each·sublist·is·preserved·from·the·original·<code·class="inline">List</code>.
1034 <code·class="inline">Rest</code>·contains·the·elements·in·<code·class="inline">List</code>·that·are·not·associated·with·any·of·the1034 <code·class="inline">Rest</code>·contains·the·elements·in·<code·class="inline">List</code>·that·are·not·associated·with·any·of·the
1035 specified·keys,·also·with·their·original·relative·order·preserved.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">split</span><span·class="p"·data-group-id="5733644869-1">(</span><span·class="p"·data-group-id="5733644869-2">[</span><span·class="p"·data-group-id="5733644869-3">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·3431,·SHA:·436ef5d910fc5e40ad095645012ea844417e11b2e43fe302459ab50318aa5a18·...·]-1">}</span></code></pre>1035 specified·keys,·also·with·their·original·relative·order·preserved.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">split</span><span·class="p"·data-group-id="5132551321-1">(</span><span·class="p"·data-group-id="5132551321-2">[</span><span·class="p"·data-group-id="5132551321-3">{</span><span·class="ss">c</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">2</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·3431,·SHA:·d000ebf586caa45ebefd79f24031cd0b7611c91020a9b7131cd8eaede5d8ae80·...·]-1">}</span></code></pre>
1036 ··</section>1036 ··</section>
1037 </section>1037 </section>
1038 <section·class="detail"·id="substitute_aliases/2">1038 <section·class="detail"·id="substitute_aliases/2">
  
1039 ··<div·class="detail-header">1039 ··<div·class="detail-header">
1040 ····<a·href="#substitute_aliases/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1040 ····<a·href="#substitute_aliases/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1041 ······<i·class="ri-link-m"·aria-hidden="true"></i>1041 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1153, 15 lines modifiedOffset 1153, 15 lines modified
1153 ······</div>1153 ······</div>
  
1154 <p>Converts·the·property·list·<code·class="inline">List</code>·to·a·map.</p><p>Shorthand·atom·values·in·<code·class="inline">List</code>·will·be·expanded·to·an·association·of·the·form1154 <p>Converts·the·property·list·<code·class="inline">List</code>·to·a·map.</p><p>Shorthand·atom·values·in·<code·class="inline">List</code>·will·be·expanded·to·an·association·of·the·form
1155 <code·class="inline">Atom·=&gt;·true</code>.·Tuples·of·the·form·<code·class="inline">{Key,·Value}</code>·in·<code·class="inline">List</code>·will·be·converted·to1155 <code·class="inline">Atom·=&gt;·true</code>.·Tuples·of·the·form·<code·class="inline">{Key,·Value}</code>·in·<code·class="inline">List</code>·will·be·converted·to
1156 an·association·of·the·form·<code·class="inline">Key·=&gt;·Value</code>.·Anything·else·will·be·silently1156 an·association·of·the·form·<code·class="inline">Key·=&gt;·Value</code>.·Anything·else·will·be·silently
1157 ignored.</p><p>If·the·same·key·appears·in·<code·class="inline">List</code>·multiple·times,·the·value·of·the·one·appearing1157 ignored.</p><p>If·the·same·key·appears·in·<code·class="inline">List</code>·multiple·times,·the·value·of·the·one·appearing
1158 nearest·to·the·head·of·<code·class="inline">List</code>·will·be·in·the·result·map,·that·is·the·value·that1158 nearest·to·the·head·of·<code·class="inline">List</code>·will·be·in·the·result·map,·that·is·the·value·that
1159 would·be·returned·by·a·call·to·<a·href="#get_value/2"><code·class="inline">get_value(Key,·List)</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">to_map</span><span·class="p"·data-group-id="3931273135-1">(</span><span·class="p"·data-group-id="3931273135-2">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3931273135-3">{</span><span·class="ss">b</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·1354,·SHA:·1a51538ed217be25edcea92269d5e18ba1d2343c8b115e319045d5503506632f·...·]-1">}</span></code></pre>1159 would·be·returned·by·a·call·to·<a·href="#get_value/2"><code·class="inline">get_value(Key,·List)</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">to_map</span><span·class="p"·data-group-id="8768965812-1">(</span><span·class="p"·data-group-id="8768965812-2">[</span><span·class="ss">a</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8768965812-3">{</span><span·class="ss">b</span><span·class="p">,</span><span·[·...·truncated·by·diffoscope;·len:·1354,·SHA:·839377eb7a3c6c87dc92c6e823b11dab61288a19bc43926519a76562314dbf5c·...·]-1">}</span></code></pre>
1160 ··</section>1160 ··</section>
1161 </section>1161 </section>
1162 <section·class="detail"·id="to_map/2">1162 <section·class="detail"·id="to_map/2">
  
1163 ··<div·class="detail-header">1163 ··<div·class="detail-header">
1164 ····<a·href="#to_map/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1164 ····<a·href="#to_map/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1165 ······<i·class="ri-link-m"·aria-hidden="true"></i>1165 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1249, 15 lines modifiedOffset 1249, 15 lines modified
1249 ······<p·class="built-using">1249 ······<p·class="built-using">
1250 ········Built·using1250 ········Built·using
1251 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1251 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1252 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1252 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1253 ······</p>1253 ······</p>
1254 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1254 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1255 ····</footer>1255 ····</footer>
1256 ··</div>1256 ··</div>
1257 </main>1257 </main>
1258 </div>1258 </div>
1259 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1259 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1260 <script>1260 <script>
1261 ··document.addEventListener("DOMContentLoaded",·function·()·{1261 ··document.addEventListener("DOMContentLoaded",·function·()·{
686 B
html2text {}
Max HTML report size reached
218 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/qlc.html
Max HTML report size reached
161 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/queue.html
Max HTML report size reached
29.5 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/rand.html
    
Offset 197, 32 lines modifiedOffset 197, 32 lines modified
197 or·be·an·explicit·argument·and·return·value.</p><p>The·functions·with·implicit·state·operates·on·a·state·stored197 or·be·an·explicit·argument·and·return·value.</p><p>The·functions·with·implicit·state·operates·on·a·state·stored
198 in·the·process·dictionary·under·the·key·<code·class="inline">rand_seed</code>.··If·that·key198 in·the·process·dictionary·under·the·key·<code·class="inline">rand_seed</code>.··If·that·key
199 doesn't·exist·when·the·function·is·called,·<a·href="#seed/1"><code·class="inline">seed/1</code></a>·is·called·automatically199 doesn't·exist·when·the·function·is·called,·<a·href="#seed/1"><code·class="inline">seed/1</code></a>·is·called·automatically
200 with·the·<a·href="#default-algorithm"><em>default·algorithm</em></a>·and·creates200 with·the·<a·href="#default-algorithm"><em>default·algorithm</em></a>·and·creates
201 a·reasonably·unpredictable·seed.</p><p>The·functions·with·explicit·state·don't·use·the·process·dictionary.</p><h4><em>Examples</em></h4><p>Simple·use;·create·and·seed·the201 a·reasonably·unpredictable·seed.</p><p>The·functions·with·explicit·state·don't·use·the·process·dictionary.</p><h4><em>Examples</em></h4><p>Simple·use;·create·and·seed·the
202 <a·href="#default-algorithm"><em>default·algorithm</em></a>·with·a·non-fixed·seed,202 <a·href="#default-algorithm"><em>default·algorithm</em></a>·with·a·non-fixed·seed,
203 if·not·already·done,·and·generate·two·uniformly·distibuted203 if·not·already·done,·and·generate·two·uniformly·distibuted
204 floating·point·numbers.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">R0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="9516337851-1">(</span><span·class="p"·data-group-id="9516337851-1">)</span><span·class="p">,</span><span·class="w">204 floating·point·numbers.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">R0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="3534005548-1">(</span><span·class="p"·data-group-id="3534005548-1">)</span><span·class="p">,</span><span·class="w">
205 </span><span·class="n">R1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="9516337851-2">(</span><span·class="p"·data-group-id="9516337851-2">)</span><span·class="p">,</span></code></pre><p>Use·a·specified·algorithm:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o"[·...·truncated·by·diffoscope;·len:·239,·SHA:·ef92d89b8234fe27df39055a68585f06d85a32a1a2efbd59728f6c9f51cc429f·...·]-1">)</span><span·class="p">,</span><span·class="w">205 </span><span·class="n">R1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="3534005548-2">(</span><span·class="p"·data-group-id="3534005548-2">)</span><span·class="p">,</span></code></pre><p>Use·a·specified·algorithm:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</span><span·class="o"[·...·truncated·by·diffoscope;·len:·239,·SHA:·f09f01cdcdbd8724ca4a3baaa221fe7fb269e80fa4774af1179a4e3a3746b8f7·...·]-1">)</span><span·class="p">,</span><span·class="w">
206 </span><span·class="n">R2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="9297794766-2">(</span><span·class="p"·data-group-id="9297794766-2">)</span><span·class="p">,</span></code></pre><p>Use·a·specified·algorithm·with·a·fixed·seed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·593,·SHA:·a7a8216d1e4288134a426015f0ffe1ae89a62293058e5e9f2b711223a4f8018b·...·]-1">)</span><span·class="p">,</span><span·class="w">206 </span><span·class="n">R2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="9788912055-2">(</span><span·class="p"·data-group-id="9788912055-2">)</span><span·class="p">,</span></code></pre><p>Use·a·specified·algorithm·with·a·fixed·seed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">_</span><span·class="w">·</spa[·...·truncated·by·diffoscope;·len:·593,·SHA:·6e4ca2e89a246dc3998c9dd00a6e3c615f6f18a104c56f4b82af5ebd61839369·...·]-1">)</span><span·class="p">,</span><span·class="w">
207 </span><span·class="n">R3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="2990470380-3">(</span><span·class="p"·data-group-id="2990470380-3">)</span><span·class="p">,</span></code></pre><p>Use·the·functional·API·with·a·non-fixed·seed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">S0</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·258,·SHA:·b4937ee6ac41807493870f0562bfcb9ac24ca379ce949da8b7b80422f603008f·...·]-1">)</span><span·class="p">,</span><span·class="w">207 </span><span·class="n">R3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="6951844382-3">(</span><span·class="p"·data-group-id="6951844382-3">)</span><span·class="p">,</span></code></pre><p>Use·the·functional·API·with·a·non-fixed·seed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">S0</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·258,·SHA:·ba9c6fd2ec88e6d965f044c1e23e0d22610ad1876fc7233251f1d51ba124b4ae·...·]-1">)</span><span·class="p">,</span><span·class="w">
208 </span><span·class="p"·data-group-id="6225875357-2">{</span><span·class="n">R4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">S1</span><span·class="p"·data-group-id="6225875357-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·653,·SHA:·cbadd6f9d37c01185a9c6c323d7543330dac2c7bedfdff39c98c2026e5b47575·...·]1-1">)</span><span·class="p">,</span><span·class="w">208 </span><span·class="p"·data-group-id="9230226285-2">{</span><span·class="n">R4</span><span·class="p">,</span><span·class="w">·</span><span·class="n">S1</span><span·class="p"·data-group-id="9230226285-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·653,·SHA:·cc2252e64bc0011ac9fbcf5acae4214409939cfefcdaf857ff15f07833956c77·...·]1-1">)</span><span·class="p">,</span><span·class="w">
209 </span><span·class="n">R6</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="6569317271-2">(</span><span·class="p"·data-group-id="6569317271-2">)</span><span·class="p">,</span><span·class="w">209 </span><span·class="n">R6</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="2252392521-2">(</span><span·class="p"·data-group-id="2252392521-2">)</span><span·class="p">,</span><span·class="w">
210 </span><span·class="n">SND0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">math</span><span·class="p">:</span><span·class="nf">sqrt</span><span·class="p"·data-group-id="6569317271-3">(</span><span·class="o">-</span><span·class="mi">2</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nc">math</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="656[·...·truncated·by·diffoscope;·len:·2113,·SHA:·af82c1b6d988ec0ca0537b6f5524c594d51615cbb51194c3e38eae2e31074fca·...·]-2">)</span><span·class="p">,</span></code></pre><h4>Quality·of·the·Generated·Numbers</h4><blockquote><h4·class="info">Note</h4><p>The·builtin·random·number·generator·algorithms·are·not·cryptographically210 </span><span·class="n">SND0</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">math</span><span·class="p">:</span><span·class="nf">sqrt</span><span·class="p"·data-group-id="2252392521-3">(</span><span·class="o">-</span><span·class="mi">2</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="nc">math</span><span·class="p">:</span><span·class="nf">log</span><span·class="p"·data-group-id="225[·...·truncated·by·diffoscope;·len:·2113,·SHA:·adbddcba0838e2e114324ca08eadb880e69ae232ef892e1adcf7b3de4aeb318a·...·]-2">)</span><span·class="p">,</span></code></pre><h4>Quality·of·the·Generated·Numbers</h4><blockquote><h4·class="info">Note</h4><p>The·builtin·random·number·generator·algorithms·are·not·cryptographically
211 strong.·If·a·cryptographically·strong·random·number·generator·is·needed,211 strong.·If·a·cryptographically·strong·random·number·generator·is·needed,
212 use·something·like·<a·href="../../../../lib/crypto-5.5/doc/html/crypto.html#rand_seed/0"><code·class="inline">crypto:rand_seed/0</code></a>.</p></blockquote><p>For·all·these·generators·except·<code·class="inline">exro928ss</code>·and·<code·class="inline">exsss</code>·the·lowest·bit(s)212 use·something·like·<a·href="../../../../lib/crypto-5.5/doc/html/crypto.html#rand_seed/0"><code·class="inline">crypto:rand_seed/0</code></a>.</p></blockquote><p>For·all·these·generators·except·<code·class="inline">exro928ss</code>·and·<code·class="inline">exsss</code>·the·lowest·bit(s)
213 have·got·a·slightly·less·random·behaviour·than·all·other·bits.213 have·got·a·slightly·less·random·behaviour·than·all·other·bits.
214 1·bit·for·<code·class="inline">exrop</code>·(and·<code·class="inline">exsp</code>),·and·3·bits·for·<code·class="inline">exs1024s</code>.·See·for·example214 1·bit·for·<code·class="inline">exrop</code>·(and·<code·class="inline">exsp</code>),·and·3·bits·for·<code·class="inline">exs1024s</code>.·See·for·example
215 this·explanation·in·the215 this·explanation·in·the
216 <a·href="http://xoroshiro.di.unimi.it/xoroshiro128plus.c">Xoroshiro128+</a>216 <a·href="http://xoroshiro.di.unimi.it/xoroshiro128plus.c">Xoroshiro128+</a>
217 generator·source·code:</p><blockquote><p>Beside·passing·BigCrush,·this·generator·passes·the·PractRand·test·suite217 generator·source·code:</p><blockquote><p>Beside·passing·BigCrush,·this·generator·passes·the·PractRand·test·suite
218 up·to·(and·included)·16TB,·with·the·exception·of·binary·rank·tests,218 up·to·(and·included)·16TB,·with·the·exception·of·binary·rank·tests,
219 which·fail·due·to·the·lowest·bit·being·an·LFSR;·all·other·bits·pass·all219 which·fail·due·to·the·lowest·bit·being·an·LFSR;·all·other·bits·pass·all
220 tests.·We·suggest·to·use·a·sign·test·to·extract·a·random·Boolean·value.</p></blockquote><p>If·this·is·a·problem;·to·generate·a·boolean·with·these·algorithms,220 tests.·We·suggest·to·use·a·sign·test·to·extract·a·random·Boolean·value.</p></blockquote><p>If·this·is·a·problem;·to·generate·a·boolean·with·these·algorithms,
221 use·something·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7706892930-1">(</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="7706892930-2">(</span><span·class="mi">256</span><span·class="p"·data-group-id="7706892930-2">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·2110,·SHA:·b463b9d2f091c735f0c445a668ba5a267bb265475e26a2708bb533e995d38d29·...·]-1">)</span></code></pre><p>The·floating·point·generating·functions·in·this·module·waste·the·lowest·bits221 use·something·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8740888132-1">(</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="8740888132-2">(</span><span·class="mi">256</span><span·class="p"·data-group-id="8740888132-2">)</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·2110,·SHA:·c00636fbd640df593a0dab9dab22b17caf72f9fd4e04991333dc849e0da7e6eb·...·]-1">)</span></code></pre><p>The·floating·point·generating·functions·in·this·module·waste·the·lowest·bits
222 when·converting·from·an·integer·so·they·avoid·this·snag.</p><h2·id="module-niche-algorithms"·class="section-heading">222 when·converting·from·an·integer·so·they·avoid·this·snag.</p><h2·id="module-niche-algorithms"·class="section-heading">
223 ··<a·href="#module-niche-algorithms"·class="hover-link">223 ··<a·href="#module-niche-algorithms"·class="hover-link">
224 ····<i·class="ri-link-m"·aria-hidden="true"></i>224 ····<i·class="ri-link-m"·aria-hidden="true"></i>
225 ··</a>225 ··</a>
226 ··<span·class="text"><a·href=""·id="niche-algorithms"></a>·Niche·algorithms</span>226 ··<span·class="text"><a·href=""·id="niche-algorithms"></a>·Niche·algorithms</span>
227 </h2>227 </h2>
228 <p>The·<a·href="#niche-algorithms-api">niche·algorithms·API</a>·contains228 <p>The·<a·href="#niche-algorithms-api">niche·algorithms·API</a>·contains
Offset 1943, 18 lines modifiedOffset 1943, 18 lines modified
  
1943 <p>Generate·a·uniformly·distributed·random·number·<code·class="inline">0.0 =&lt; X &lt; 1.0</code>.</p><p>From·the·specified·<code·class="inline">State</code>,·generates·a·random·number·<code·class="inline">X ::</code> <a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:float/0"><code·class="inline">float/0</code></a>,1943 <p>Generate·a·uniformly·distributed·random·number·<code·class="inline">0.0 =&lt; X &lt; 1.0</code>.</p><p>From·the·specified·<code·class="inline">State</code>,·generates·a·random·number·<code·class="inline">X ::</code> <a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:float/0"><code·class="inline">float/0</code></a>,
1944 uniformly·distributed·in·the·value·range·<code·class="inline">0.0·=&lt;·X·&lt;·1.0</code>.1944 uniformly·distributed·in·the·value·range·<code·class="inline">0.0·=&lt;·X·&lt;·1.0</code>.
1945 Returns·the·number·<code·class="inline">X</code>·and·the·updated·<code·class="inline">NewState</code>.</p><p>The·generated·numbers·are·on·the·form·<code·class="inline">N * 2.0^(-53)</code>,·that·is;1945 Returns·the·number·<code·class="inline">X</code>·and·the·updated·<code·class="inline">NewState</code>.</p><p>The·generated·numbers·are·on·the·form·<code·class="inline">N * 2.0^(-53)</code>,·that·is;
1946 equally·spaced·in·the·interval.</p><blockquote><h4·class="warning">Warning</h4><p>This·function·may·return·exactly·<code·class="inline">0.0</code>·which·can·be·fatal·for·certain1946 equally·spaced·in·the·interval.</p><blockquote><h4·class="warning">Warning</h4><p>This·function·may·return·exactly·<code·class="inline">0.0</code>·which·can·be·fatal·for·certain
1947 applications.·If·that·is·undesired·you·can·use·<code·class="inline">(1.0 - rand:uniform())</code>1947 applications.·If·that·is·undesired·you·can·use·<code·class="inline">(1.0 - rand:uniform())</code>
1948 to·get·the·interval·<code·class="inline">0.0 &lt; X =&lt; 1.0</code>,·or·instead·use·<a·href="#uniform_real/0"><code·class="inline">uniform_real/0</code></a>.</p><p>If·neither·endpoint·is·desired·you·can·achieve·the·range1948 to·get·the·interval·<code·class="inline">0.0 &lt; X =&lt; 1.0</code>,·or·instead·use·<a·href="#uniform_real/0"><code·class="inline">uniform_real/0</code></a>.</p><p>If·neither·endpoint·is·desired·you·can·achieve·the·range
1949 <code·class="inline">0.0 &lt; X &lt; 1.0</code>·using·test·and·re-try·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_uniform</span><span·class="p"·data-group-id="2721509656-1">(</span><span·class="p"·data-group-id="2721509656-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1949 <code·class="inline">0.0 &lt; X &lt; 1.0</code>·using·test·and·re-try·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">my_uniform</span><span·class="p"·data-group-id="2736640800-1">(</span><span·class="p"·data-group-id="2736640800-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1950 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="2721509656-2">(</span><span·class="p"·data-group-id="2721509656-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">1950 ····</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">uniform</span><span·class="p"·data-group-id="2736640800-2">(</span><span·class="p"·data-group-id="2736640800-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
1951 ········</span><span·class="n">X</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="mf">0.0</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">X</span><span·class="p">;</span><span·class="w">1951 ········</span><span·class="n">X</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="mf">0.0</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="w">·</span><span·class="n">X</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">X</span><span·class="p">;</span><span·class="w">
1952 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">my_uniform</span><span·class="p"·data-group-id="2721509656-3">(</span><span·class="p"·data-group-id="2721509656-3">)</span><span·class="w">1952 ········</span><span·class="p">_</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">my_uniform</span><span·class="p"·data-group-id="2736640800-3">(</span><span·class="p"·data-group-id="2736640800-3">)</span><span·class="w">
1953 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre></blockquote>1953 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre></blockquote>
1954 ··</section>1954 ··</section>
1955 </section>1955 </section>
1956 <section·class="detail"·id="uniform_s/2">1956 <section·class="detail"·id="uniform_s/2">
  
1957 ··<div·class="detail-header">1957 ··<div·class="detail-header">
1958 ····<a·href="#uniform_s/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1958 ····<a·href="#uniform_s/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 2107, 15 lines modifiedOffset 2107, 15 lines modified
2107 a·new·state·<a·href="#t:mwc59_state/0"><code·class="inline">CX1</code></a>,·according·to·a·Multiply·With·Carry2107 a·new·state·<a·href="#t:mwc59_state/0"><code·class="inline">CX1</code></a>,·according·to·a·Multiply·With·Carry
2108 generator,·which·is·an·efficient·implementation·of2108 generator,·which·is·an·efficient·implementation·of
2109 a·Multiplicative·Congruential·Generator·with·a·power·of·2·multiplier2109 a·Multiplicative·Congruential·Generator·with·a·power·of·2·multiplier
2110 and·a·prime·modulus.</p><p>This·generator·uses·the·multiplier·<code·class="inline">2^32</code>·and·the·modulus2110 and·a·prime·modulus.</p><p>This·generator·uses·the·multiplier·<code·class="inline">2^32</code>·and·the·modulus
2111 <code·class="inline">16#7fa6502 * 2^32 - 1</code>,·which·have·been·selected,·in·collaboration·with2111 <code·class="inline">16#7fa6502 * 2^32 - 1</code>,·which·have·been·selected,·in·collaboration·with
2112 Sebastiano·Vigna,·to·avoid·bignum·operations·and·still·get2112 Sebastiano·Vigna,·to·avoid·bignum·operations·and·still·get
2113 good·statistical·quality.·It·has·been·named·&quot;MWC59&quot;·and·can·be·written·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">C</span><span·class="err"> </span><span·class="o">=</span><span·class="err"> </span><span·class="n">CX0</span><span·class="err"> </span><span·class="ow">bsr</span><span·class="err"> </span><span·class="mi">32</span><span·class="w">2113 good·statistical·quality.·It·has·been·named·&quot;MWC59&quot;·and·can·be·written·as:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">C</span><span·class="err"> </span><span·class="o">=</span><span·class="err"> </span><span·class="n">CX0</span><span·class="err"> </span><span·class="ow">bsr</span><span·class="err"> </span><span·class="mi">32</span><span·class="w">
2114 </span><span·class="n">X</span><span·class="err"> </span><span·class="o">=</span><span·class="err"> </span><span·class="n">CX0</span><span·class="err"> </span><span·class="ow">band</span><span·class="err"> </span><span·class="p"·data-group-id="4084026512-1">(</span><span·class="p"·data-group-id="4084026512-2">(</span><span·class="mi">1</span><span·class="err"> </span><span·class="ow">bsl</span><span·class="err"> </span><span·class="mi">32</span><span·class="p"·data-group-id="4084026512-2">)</spa[·...·truncated·by·diffoscope;·len:·92,·SHA:·86f16c85c8884bf1dbb708b87e57ff98bcc72a5671155583958e249b827af905·...·]-1">)</span><span·class="p">)</span><span·class="w">2114 </span><span·class="n">X</span><span·class="err"> </span><span·class="o">=</span><span·class="err"> </span><span·class="n">CX0</span><span·class="err"> </span><span·class="ow">band</span><span·class="err"> </span><span·class="p"·data-group-id="1305890428-1">(</span><span·class="p"·data-group-id="1305890428-2">(</span><span·class="mi">1</span><span·class="err"> </span><span·class="ow">bsl</span><span·class="err"> </span><span·class="mi">32</span><span·class="p"·data-group-id="1305890428-2">)</spa[·...·truncated·by·diffoscope;·len:·92,·SHA:·0efcce8f74ef9c4d1c26dbca48f0ddfc950769684d30dd75f7e83ea60da0a232·...·]-1">)</span><span·class="p">)</span><span·class="w">
2115 </span><span·class="n">CX1</span><span·class="err"> </span><span·class="o">=</span><span·class="err"> </span><span·class="mi">16#7fa6502</span><span·class="err"> </span><span·class="o">*</span><span·class="err"> </span><span·class="n">X</span><span·class="err"> </span><span·class="o">+</span><span·class="err"> </span><span·class="n">C</span></code></pre><p>Because·the·generator·uses·a·multiplier·that·is·a·power·of·2·it·gets2115 </span><span·class="n">CX1</span><span·class="err"> </span><span·class="o">=</span><span·class="err"> </span><span·class="mi">16#7fa6502</span><span·class="err"> </span><span·class="o">*</span><span·class="err"> </span><span·class="n">X</span><span·class="err"> </span><span·class="o">+</span><span·class="err"> </span><span·class="n">C</span></code></pre><p>Because·the·generator·uses·a·multiplier·that·is·a·power·of·2·it·gets
2116 statistical·flaws·for·collision·tests·and·birthday·spacings·tests2116 statistical·flaws·for·collision·tests·and·birthday·spacings·tests
2117 in·2·and·3·dimensions,·and·these·caveats·apply·even·when·looking2117 in·2·and·3·dimensions,·and·these·caveats·apply·even·when·looking
2118 only·at·the·MWC·&quot;digit&quot;,·that·is·the·low·32·bits·(the·multiplier)2118 only·at·the·MWC·&quot;digit&quot;,·that·is·the·low·32·bits·(the·multiplier)
2119 of·the·generator·state.··The·higher·bits·of·the·state·are·worse.</p><p>The·quality·of·the·output·value·improves·much·by·using·a·scrambler,2119 of·the·generator·state.··The·higher·bits·of·the·state·are·worse.</p><p>The·quality·of·the·output·value·improves·much·by·using·a·scrambler,
2120 instead·of·just·taking·the·low·bits.2120 instead·of·just·taking·the·low·bits.
2121 Function·<a·href="#mwc59_value32/1"><code·class="inline">mwc59_value32</code></a>·is·a·fast·scrambler2121 Function·<a·href="#mwc59_value32/1"><code·class="inline">mwc59_value32</code></a>·is·a·fast·scrambler
Offset 2377, 15 lines modifiedOffset 2377, 15 lines modified
2377 ······<p·class="built-using">2377 ······<p·class="built-using">
2378 ········Built·using2378 ········Built·using
2379 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2379 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2380 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2380 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2381 ······</p>2381 ······</p>
2382 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2382 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2383 ····</footer>2383 ····</footer>
2384 ··</div>2384 ··</div>
2385 </main>2385 </main>
2386 </div>2386 </div>
2387 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2387 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2388 <script>2388 <script>
2389 ··document.addEventListener("DOMContentLoaded",·function·()·{2389 ··document.addEventListener("DOMContentLoaded",·function·()·{
728 B
html2text {}
Max HTML report size reached
5.63 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/random.html
    
Offset 468, 17 lines modifiedOffset 468, 17 lines modified
468 ······<div·class="specs">468 ······<div·class="specs">
  
469 ··········<pre·translate="no"><span·class="attribute">-spec</span>·seed(A1,·A2,·A3)·->·undefined·|·<a·href="#t:ran/0">ran</a>()·when·A1·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·A2·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·A3·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>().</pre>469 ··········<pre·translate="no"><span·class="attribute">-spec</span>·seed(A1,·A2,·A3)·->·undefined·|·<a·href="#t:ran/0">ran</a>()·when·A1·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·A2·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>(),·A3·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:integer/0">integer</a>().</pre>
  
470 ······</div>470 ······</div>
  
471 <p>Seeds·random·number·generation·with·integer·values·in·the·process·dictionary·and471 <p>Seeds·random·number·generation·with·integer·values·in·the·process·dictionary·and
472 returns·the·old·state.</p><p>The·following·is·an·easy·way·of·obtaining·a·unique·value·to·seed·with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">random</span><span·class="p">:</span><span·class="nf">seed</span><span·class="p"·data-group-id="3751335623-1">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">phash2</span><span·class="p"·data-group-id="3751335623-2">(</span><span·class="p"·data-group-id="3751335623-3">[</span><span·class="nf">node</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·184,·SHA:·f7536d3e9add6a993cdbfd2218ae463f862dc70103578b5b8f4c675539309f4a·...·]-2">)</span><span·class="p">,</span><span·class="w">472 returns·the·old·state.</p><p>The·following·is·an·easy·way·of·obtaining·a·unique·value·to·seed·with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">random</span><span·class="p">:</span><span·class="nf">seed</span><span·class="p"·data-group-id="9634244950-1">(</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">phash2</span><span·class="p"·data-group-id="9634244950-2">(</span><span·class="p"·data-group-id="9634244950-3">[</span><span·class="nf">node</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·184,·SHA:·bf2f2e45a2895675acac6b995dffdfc577fded30b88d6818b46dfc11db894e75·...·]-2">)</span><span·class="p">,</span><span·class="w">
473 ············</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monotonic_time</span><span·class="p"·data-group-id="3751335623-5">(</span><span·class="p"·data-group-id="3751335623-5">)</span><span·class="p">,</span><span·class="w">473 ············</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">monotonic_time</span><span·class="p"·data-group-id="9634244950-5">(</span><span·class="p"·data-group-id="9634244950-5">)</span><span·class="p">,</span><span·class="w">
474 ············</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">unique_integer</span><span·class="p"·data-group-id="3751335623-6">(</span><span·class="p"·data-group-id="3751335623-6">)</span><span·class="p"·data-group-id="3751335623-1">)</span></code></pre><p>For·details,·see·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#phash2/1"><code·class="inline">erlang:phash2/1</code></a>,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#node/0"><code·class="inline">erlang:node/0</code></a>,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#monotonic_time/0"><code·class="inline">erlang:monotonic_time/0</code></a>,474 ············</span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nf">unique_integer</span><span·class="p"·data-group-id="9634244950-6">(</span><span·class="p"·data-group-id="9634244950-6">)</span><span·class="p"·data-group-id="9634244950-1">)</span></code></pre><p>For·details,·see·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#phash2/1"><code·class="inline">erlang:phash2/1</code></a>,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#node/0"><code·class="inline">erlang:node/0</code></a>,·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#monotonic_time/0"><code·class="inline">erlang:monotonic_time/0</code></a>,
475 and·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#unique_integer/0"><code·class="inline">erlang:unique_integer/0</code></a>.</p>475 and·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#unique_integer/0"><code·class="inline">erlang:unique_integer/0</code></a>.</p>
476 ··</section>476 ··</section>
477 </section>477 </section>
478 <section·class="detail"·id="uniform/0">478 <section·class="detail"·id="uniform/0">
  
479 ··<div·class="detail-header">479 ··<div·class="detail-header">
480 ····<a·href="#uniform/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">480 ····<a·href="#uniform/0"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 633, 15 lines modifiedOffset 633, 15 lines modified
633 ······<p·class="built-using">633 ······<p·class="built-using">
634 ········Built·using634 ········Built·using
635 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the635 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
636 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>636 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
637 ······</p>637 ······</p>
638 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>638 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
639 ····</footer>639 ····</footer>
640 ··</div>640 ··</div>
641 </main>641 </main>
642 </div>642 </div>
643 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>643 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
644 <script>644 <script>
645 ··document.addEventListener("DOMContentLoaded",·function·()·{645 ··document.addEventListener("DOMContentLoaded",·function·()·{
690 B
html2text {}
Max HTML report size reached
109 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/re.html
    
Offset 1371, 17 lines modifiedOffset 1371, 17 lines modified
1371 been·passed,·<a·href="#run/2"><code·class="inline">run/2,3</code></a>·is·committed·to·find·a·match·at·the·current1371 been·passed,·<a·href="#run/2"><code·class="inline">run/2,3</code></a>·is·committed·to·find·a·match·at·the·current
1372 starting·point,·or·not·at·all,·for·example:</p><pre><code·class="text">a+(*COMMIT)b</code></pre><p>This·matches·&quot;xxaab&quot;·but·not·&quot;aacaab&quot;.·It·can·be·thought·of·as·a·kind·of·dynamic1372 starting·point,·or·not·at·all,·for·example:</p><pre><code·class="text">a+(*COMMIT)b</code></pre><p>This·matches·&quot;xxaab&quot;·but·not·&quot;aacaab&quot;.·It·can·be·thought·of·as·a·kind·of·dynamic
1373 anchor,·or·&quot;I've·started,·so·I·must·finish&quot;.·The·name·of·the·most·recently1373 anchor,·or·&quot;I've·started,·so·I·must·finish&quot;.·The·name·of·the·most·recently
1374 passed·(<em>MARK)·in·the·path·is·passed·back·when·(</em>COMMIT)·forces·a·match·failure.</p><p>If·more·than·one·backtracking·verb·exists·in·a·pattern,·a·different·one·that1374 passed·(<em>MARK)·in·the·path·is·passed·back·when·(</em>COMMIT)·forces·a·match·failure.</p><p>If·more·than·one·backtracking·verb·exists·in·a·pattern,·a·different·one·that
1375 follows·(<em>COMMIT)·can·be·triggered·first,·so·merely·passing·(</em>COMMIT)·during·a1375 follows·(<em>COMMIT)·can·be·triggered·first,·so·merely·passing·(</em>COMMIT)·during·a
1376 match·does·not·always·guarantee·that·a·match·must·be·at·this·starting·point.</p><p>Notice·that·(*COMMIT)·at·the·start·of·a·pattern·is·not·the·same·as·an·anchor,1376 match·does·not·always·guarantee·that·a·match·must·be·at·this·starting·point.</p><p>Notice·that·(*COMMIT)·at·the·start·of·a·pattern·is·not·the·same·as·an·anchor,
1377 unless·the·PCRE·start-of-match·optimizations·are·turned·off,·as·shown·in·the1377 unless·the·PCRE·start-of-match·optimizations·are·turned·off,·as·shown·in·the
1378 following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="4542233418-1">(</span><span·class="s">&quot;xyzabc&quot;</span><span·class="p">,</span><span·class="s">&quot;(*COMMIT)abc&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="4542233418-2">[</span><span·class="p"·data-group-id="4542233418-3">{</span><span·class="ss">capture</span><span·class="p">,</span><span·class="ss">all</span><span·class="p">,</span><span·class="ss">list</span><span·class="p"·data-group-id="4542233418-3">}</span><span·class="p"·data-group-id="4542233418-2">]</span><span·class="p"·data-group-id="4542233418-1">)</span><span·class="p">.</span><span·class="w"> 
1379 </span><span·class="p"·data-group-id="4542233418-4">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="4542233418-5">[</span><span·class="s">&quot;abc&quot;</span><span·class="p"·data-group-id="4542233418-5">]</span><span·class="p"·data-group-id="4542233418-4">}</span><span·class="gp·unselectable"> 
1380 2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="4542233418-6">(</span><span·class="s">&quot;xyzabc&quot;</span><span·class="p">,</span><span·class="s">&quot;(*COMMIT)abc&quot;</span><[·...·truncated·by·diffoscope;·len:·477,·SHA:·0ac86d2f2e8f79a41ce3436e78b75bf2461fc34f4a48ed953ed9ee0c5a398eac·...·]">)</span><span·class="p">.</span><span·class="w">1378 following·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="1906988530-1">(</span><span·class="[·...·truncated·by·diffoscope;·len:·512,·SHA:·040e1b9df8c4d45ad474f2bf203edf5aebbec6e7d50aeb51f8259e889ce5b0f4·...·]">)</span><span·class="p">.</span><span·class="w">
 1379 </span><span·class="p"·data-group-id="1906988530-4">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="1906988530-5">[</span><span·class="s">&quot;abc&quot;</span><span·class="p"·data-group-id="1906988530-5">]</span><span·class="p"·data-group-id="1906988530-4">}</span><span·class="gp·unselectable">
 1380 2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="1906988530-6">(</span><span·class="s">&quot;xyzabc&quot;</span><span·class="p">,</span><span·class="s">&quot;(*COMMIT)abc&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1906988530-7">[</span><span·class="p"·data-group-id="1906988530-8">{</span><span·class="ss">capture</span><span·class="p">,</span><span·class="ss">all</span><span·class="p">,</span><span·class="ss">list</span><span·class="p"·data-group-id="1906988530-8">}</span><span·class="p">,</span><span·class="ss">no_start_optimize</span><span·class="p"·data-group-id="1906988530-7">]</span><span·class="p"·data-group-id="1906988530-6">)</span><span·class="p">.</span><span·class="w">
1381 </span><span·class="ss">nomatch</span></code></pre><p>For·this·pattern,·PCRE·knows·that·any·match·must·start·with·&quot;a&quot;,·so·the1381 </span><span·class="ss">nomatch</span></code></pre><p>For·this·pattern,·PCRE·knows·that·any·match·must·start·with·&quot;a&quot;,·so·the
1382 optimization·skips·along·the·subject·to·&quot;a&quot;·before·applying·the·pattern·to·the1382 optimization·skips·along·the·subject·to·&quot;a&quot;·before·applying·the·pattern·to·the
1383 first·set·of·data.·The·match·attempt·then·succeeds.·In·the·second·call·the1383 first·set·of·data.·The·match·attempt·then·succeeds.·In·the·second·call·the
1384 <code·class="inline">no_start_optimize</code>·disables·the·optimization·that·skips·along·to·the·first1384 <code·class="inline">no_start_optimize</code>·disables·the·optimization·that·skips·along·to·the·first
1385 character.·The·pattern·is·now·applied·starting·at·&quot;x&quot;,·and·so·the·(*COMMIT)1385 character.·The·pattern·is·now·applied·starting·at·&quot;x&quot;,·and·so·the·(*COMMIT)
1386 causes·the·match·to·fail·without·trying·any·other·starting·points.</p><p>The·following·verb·causes·the·match·to·fail·at·the·current·starting·position·in1386 causes·the·match·to·fail·without·trying·any·other·starting·points.</p><p>The·following·verb·causes·the·match·to·fail·at·the·current·starting·position·in
1387 the·subject·if·there·is·a·later·matching·failure·that·causes·backtracking·to1387 the·subject·if·there·is·a·later·matching·failure·that·causes·backtracking·to
Offset 2106, 40 lines modifiedOffset 2106, 40 lines modified
  
2106 ··········<pre·translate="no"><span·class="attribute">-spec</span>·inspect(MP,·Item)·->·{namelist,·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()]}·when·MP·::·<a·href="#t:mp/0">mp</a>(),·Item·::·namelist.</pre>2106 ··········<pre·translate="no"><span·class="attribute">-spec</span>·inspect(MP,·Item)·->·{namelist,·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:binary/0">binary</a>()]}·when·MP·::·<a·href="#t:mp/0">mp</a>(),·Item·::·namelist.</pre>
  
2107 ······</div>2107 ······</div>
  
2108 <p>Takes·a·compiled·regular·expression·and·an·item,·and·returns·the·relevant·data2108 <p>Takes·a·compiled·regular·expression·and·an·item,·and·returns·the·relevant·data
2109 from·the·regular·expression.</p><p>The·only·supported·item·is·<code·class="inline">namelist</code>,·which·returns·the·tuple·<code·class="inline">{namelist,·[binary()]}</code>,2109 from·the·regular·expression.</p><p>The·only·supported·item·is·<code·class="inline">namelist</code>,·which·returns·the·tuple·<code·class="inline">{namelist,·[binary()]}</code>,
2110 containing·the·names·of·all·(unique)·named·subpatterns·in·the·regular·expression.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="0928878603-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MP</span><span·class="p"·data-group-id="0928878603-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">re</span><span·cl[·...·truncated·by·diffoscope;·len:·217,·SHA:·3d5cf3cfd63a0b4e4f38c07cc49942a67ae3435fc940b85035fbcb1d9cbd5810·...·]-2">)</span><span·class="p">.</span><span·class="w">2110 containing·the·names·of·all·(unique)·named·subpatterns·in·the·regular·expression.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="2686314191-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MP</span><span·class="p"·data-group-id="2686314191-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">re</span><span·cl[·...·truncated·by·diffoscope;·len:·217,·SHA:·9b61711d2e6616bd5f69e569afd88d6dcd6e902ef170fc97af919ae29e5c0605·...·]-2">)</span><span·class="p">.</span><span·class="w">
2111 </span><span·class="p"·data-group-id="0928878603-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0928878603-4">{</span><span·class="ss">re_pattern</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">2111 </span><span·class="p"·data-group-id="2686314191-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2686314191-4">{</span><span·class="ss">re_pattern</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
2112 ················</span><span·class="p">&lt;&lt;</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">119</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="w">2112 ················</span><span·class="p">&lt;&lt;</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">119</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="w">
2113 ··················</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0928878603-4">}</span><span·class="p"·data-group-id="0928878603-3">}</span><span·class="gp·unselectable">2113 ··················</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2686314191-4">}</span><span·class="p"·data-group-id="2686314191-3">}</span><span·class="gp·unselectable">
2114 2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">inspect</span><span·class="p"·data-group-id="0928878603-5">(</span><span·class="n">MP</span><span·class="p">,</span><span·class="ss">namelist</span><span·class="p"·data-group-id="0928878603-5">)</span><span·class="p">.</span><span·class="w">2114 2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">inspect</span><span·class="p"·data-group-id="2686314191-5">(</span><span·class="n">MP</span><span·class="p">,</span><span·class="ss">namelist</span><span·class="p"·data-group-id="2686314191-5">)</span><span·class="p">.</span><span·class="w">
2115 </span><span·class="p"·data-group-id="0928878603-6">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="0928878603-7">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·311,·SHA:·ea13f87b7e6fdcd3c050d6b7be797fbbd756fbd661a8ab7e3ef850982cebfd98·...·]-6">}</span><span·class="gp·unselectable">2115 </span><span·class="p"·data-group-id="2686314191-6">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="2686314191-7">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·311,·SHA:·791c16a8241c2a6df5211b682105cec8f37ed1421ee164db576798bec51a6ecb·...·]-6">}</span><span·class="gp·unselectable">
2116 3&gt;·</span><span·class="p"·data-group-id="0928878603-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MPD</span><span·class="p"·data-group-id="0928878603-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">re</span><span·c[·...·truncated·by·diffoscope;·len:·382,·SHA:·fd6af8ef26cbd3a0d3833f479e49283a91963d36749fe5d98082facad9820cc9·...·]-9">)</span><span·class="p">.</span><span·class="w">2116 3&gt;·</span><span·class="p"·data-group-id="2686314191-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MPD</span><span·class="p"·data-group-id="2686314191-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">re</span><span·c[·...·truncated·by·diffoscope;·len:·382,·SHA:·65dd3377bb390890f92f843cd8e94baef4bf53551a041ec0e92367bde98e66ba·...·]-9">)</span><span·class="p">.</span><span·class="w">
2117 </span><span·class="p"·data-group-id="0928878603-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0928878603-12">{</span><span·class="ss">re_pattern</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">2117 </span><span·class="p"·data-group-id="2686314191-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="2686314191-12">{</span><span·class="ss">re_pattern</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
2118 ················</span><span·class="p">&lt;&lt;</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">119</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="w">2118 ················</span><span·class="p">&lt;&lt;</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">119</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">8</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="w">
2119 ··················</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0928878603-12">}</span><span·class="p"·data-group-id="0928878603-11">}</span><span·class="gp·unselectable">2119 ··················</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2686314191-12">}</span><span·class="p"·data-group-id="2686314191-11">}</span><span·class="gp·unselectable">
2120 4&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">inspect</span><span·class="p"·data-group-id="0928878603-13">(</span><span·class="n">MPD</span><span·class="p">,</span><span·class="ss">namelist</span><span·class="p"·data-group-id="0928878603-13">)</span><span·class="p">.</span><span·class="w">2120 4&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">inspect</span><span·class="p"·data-group-id="2686314191-13">(</span><span·class="n">MPD</span><span·class="p">,</span><span·class="ss">namelist</span><span·class="p"·data-group-id="2686314191-13">)</span><span·class="p">.</span><span·class="w">
2121 </span><span·class="p"·data-group-id="0928878603-14">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="0928878603-15">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;B&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·192,·SHA:·ec8a421aec631752a6c149771f9064e9ed8ae07775c6eb6580f8da11690aa146·...·]-14">}</span></code></pre><p>Notice·in·the·second·example·that·the·duplicate·name·only·occurs·once·in·the2121 </span><span·class="p"·data-group-id="2686314191-14">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="2686314191-15">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;B&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><[·...·truncated·by·diffoscope;·len:·192,·SHA:·44a27a6ec743345670a1c3632c48ab5d08ca2cf5880de6094d0b74afec6416f1·...·]-14">}</span></code></pre><p>Notice·in·the·second·example·that·the·duplicate·name·only·occurs·once·in·the
2122 returned·list,·and·that·the·list·is·in·alphabetical·order·regardless·of·where2122 returned·list,·and·that·the·list·is·in·alphabetical·order·regardless·of·where
2123 the·names·are·positioned·in·the·regular·expression.·The·order·of·the·names·is2123 the·names·are·positioned·in·the·regular·expression.·The·order·of·the·names·is
2124 the·same·as·the·order·of·captured·subexpressions·if·<code·class="inline">{capture,·all_names}</code>·is2124 the·same·as·the·order·of·captured·subexpressions·if·<code·class="inline">{capture,·all_names}</code>·is
2125 specified·as·an·option·to·<a·href="#run/3"><code·class="inline">run/3</code></a>.·You·can·therefore·create·a·name-to-value2125 specified·as·an·option·to·<a·href="#run/3"><code·class="inline">run/3</code></a>.·You·can·therefore·create·a·name-to-value
2126 mapping·from·the·result·of·<a·href="#run/3"><code·class="inline">run/3</code></a>·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="7899613232-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MP</span><span·class="p"·data-group-id="7899613232-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">re</span><span·cl[·...·truncated·by·diffoscope;·len:·217,·SHA:·ba15f93b9690f7cb46023cf5c0cf0aef796b7a785f16b2490a18497bc0af1fc3·...·]-2">)</span><span·class="p">.</span><span·class="w">2126 mapping·from·the·result·of·<a·href="#run/3"><code·class="inline">run/3</code></a>·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="5648109317-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">MP</span><span·class="p"·data-group-id="5648109317-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">re</span><span·cl[·...·truncated·by·diffoscope;·len:·217,·SHA:·dec208a65d1a03fbb09f2ee40a2b2e36d8d27e0d6788006cef1d35ba39c01505·...·]-2">)</span><span·class="p">.</span><span·class="w">
2127 </span><span·class="p"·data-group-id="7899613232-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="7899613232-4">{</span><span·class="ss">re_pattern</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">2127 </span><span·class="p"·data-group-id="5648109317-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5648109317-4">{</span><span·class="ss">re_pattern</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
2128 ················</span><span·class="p">&lt;&lt;</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">119</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="w">2128 ················</span><span·class="p">&lt;&lt;</span><span·class="mi">69</span><span·class="p">,</span><span·class="mi">82</span><span·class="p">,</span><span·class="mi">67</span><span·class="p">,</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">119</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="w">
2129 ··················</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7899613232-4">}</span><span·class="p"·data-group-id="7899613232-3">}</span><span·class="gp·unselectable">2129 ··················</span><span·class="mi">255</span><span·class="p">,</span><span·class="mi">255</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="5648109317-4">}</span><span·class="p"·data-group-id="5648109317-3">}</span><span·class="gp·unselectable">
2130 2&gt;·</span><span·class="p"·data-group-id="7899613232-5">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="7899613232-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·251,·SHA:·bd5f63f2cf022f32c6aab5c4e8e3f17a8f0d64df35575e72a4152f8c4dfd3e3a·...·]-6">)</span><span·class="p">.</span><span·class="w">2130 2&gt;·</span><span·class="p"·data-group-id="5648109317-5">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="5648109317-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·251,·SHA:·80a9ee51034173cd75947f25fe2fbcb77798bdc95c608226fe6f7b7a606c7222·...·]-6">)</span><span·class="p">.</span><span·class="w">
2131 </span><span·class="p"·data-group-id="7899613232-7">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="7899613232-8">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;B&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;C&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7899613232-8">]</span><span·class="p"·data-group-id="7899613232-7">}</span><span·class="gp·unselectable"> 
2132 3&gt;·</span><span·class="p"·data-group-id="7899613232-9">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="n">L</span><span·class="p"·data-group-id="7899613232-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class=[·...·truncated·by·diffoscope;·len:·703,·SHA:·be64e39c5db105aca5ba0d2ae652973a56f82180c3c492fb9e65f6271d526ac0·...·]">2131 </span><span·class="p"·data-group-id="5648109317-7">{</span><span·class="ss">namelist</span><span·class="p">,</span><span·class="p"·data-group-id="5648109317-8">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&quot;</span><span·class="p">&gt;[·...·truncated·by·diffoscope;·len:·389,·SHA:·7f2b42d331c5004e8946dc37458ec5022dafdb17d4e565355f43cf87034c243f·...·]">
 2132 3&gt;·</span><span·class="p"·data-group-id="5648109317-9">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="n">L</span><span·class="p"·data-group-id="5648109317-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="5648109317-10">(</span><span·class="s">&quot;AA&quot;</span><span·class="p">,</span><span·class="n">MP</span><span·class="p">,</span><span·class="p"·data-group-id="5648109317-11">[</span><span·class="p"·data-group-id="5648109317-12">{</span><span·class="ss">capture</span><span·class="p">,</span><span·class="ss">all_names</span><span·class="p">,</span><span·class="ss">binary</span><span·class="p"·data-group-id="5648109317-12">}</span><span·class="p"·data-group-id="5648109317-11">]</span><span·class="p"·data-group-id="5648109317-10">)</span><span·class="p">.</span><span·class="w">
2133 </span><span·class="p"·data-group-id="7899613232-13">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="7899613232-14">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·239,·SHA:·6211f4c32bfcf16810607c708511df8e11d1f35f63a0d9c570b78047059382f7·...·]-13">}</span><span·class="gp·unselectable">2133 </span><span·class="p"·data-group-id="5648109317-13">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="5648109317-14">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><spa[·...·truncated·by·diffoscope;·len:·239,·SHA:·cebbbc07ccb8db94d13a5af858acc8049cfa0c48d85c99eb943994b9ad1ddcd3·...·]-13">}</span><span·class="gp·unselectable">
2134 4&gt;·</span><span·class="n">NameMap</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">zip</span><span·class="p"·data-group-id="7899613232-15">(</span><span·class="n">N</span><span·class="p">,</span><span·class="n">L</span><span·class="p"·data-group-id="7899613232-15">)</span><span·class="p">.</span><span·class="w">2134 4&gt;·</span><span·class="n">NameMap</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">zip</span><span·class="p"·data-group-id="5648109317-15">(</span><span·class="n">N</span><span·class="p">,</span><span·class="n">L</span><span·class="p"·data-group-id="5648109317-15">)</span><span·class="p">.</span><span·class="w">
2135 </span><span·class="p"·data-group-id="7899613232-16">[</span><span·class="p"·data-group-id="7899613232-17">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&qu[·...·truncated·by·diffoscope;·len:·768,·SHA:·c762db5c023dea1d05b274b46f59c1067d19eefdb9b08e6f788015ee55226458·...·]-16">]</span></code></pre>2135 </span><span·class="p"·data-group-id="5648109317-16">[</span><span·class="p"·data-group-id="5648109317-17">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;A&qu[·...·truncated·by·diffoscope;·len:·768,·SHA:·72d9f3c8352c4887da4c2a802571cfc6e77317eb9f847848f973b7403ff172ef·...·]-16">]</span></code></pre>
2136 ··</section>2136 ··</section>
2137 </section>2137 </section>
2138 <section·class="detail"·id="replace/3">2138 <section·class="detail"·id="replace/3">
  
2139 ··<div·class="detail-header">2139 ··<div·class="detail-header">
2140 ····<a·href="#replace/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">2140 ····<a·href="#replace/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
2141 ······<i·class="ri-link-m"·aria-hidden="true"></i>2141 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 2224, 24 lines modifiedOffset 2224, 24 lines modified
2224 both·the·regular·expression·and·<code·class="inline">Subject</code>·are·to·specified·as·valid·Unicode2224 both·the·regular·expression·and·<code·class="inline">Subject</code>·are·to·specified·as·valid·Unicode
2225 <code·class="inline">charlist()</code>s.</p><p>If·the·replacement·is·given·as·a·string,·it·can·contain·the·special·character2225 <code·class="inline">charlist()</code>s.</p><p>If·the·replacement·is·given·as·a·string,·it·can·contain·the·special·character
2226 <code·class="inline">&amp;</code>,·which·inserts·the·whole·matching·expression·in·the·result,·and·the·special2226 <code·class="inline">&amp;</code>,·which·inserts·the·whole·matching·expression·in·the·result,·and·the·special
2227 sequence·<code·class="inline">\</code>N·(where·N·is·an·integer·&gt;·0),·<code·class="inline">\g</code>N,·or·<code·class="inline">\g{</code>N<code·class="inline">}</code>,·resulting·in·the2227 sequence·<code·class="inline">\</code>N·(where·N·is·an·integer·&gt;·0),·<code·class="inline">\g</code>N,·or·<code·class="inline">\g{</code>N<code·class="inline">}</code>,·resulting·in·the
2228 subexpression·number·N,·is·inserted·in·the·result.·If·no·subexpression·with·that2228 subexpression·number·N,·is·inserted·in·the·result.·If·no·subexpression·with·that
2229 number·is·generated·by·the·regular·expression,·nothing·is·inserted.</p><p>To·insert·an·&amp;·or·a·\·in·the·result,·precede·it·with·a·\.·Notice·that·Erlang2229 number·is·generated·by·the·regular·expression,·nothing·is·inserted.</p><p>To·insert·an·&amp;·or·a·\·in·the·result,·precede·it·with·a·\.·Notice·that·Erlang
2230 already·gives·a·special·meaning·to·\·in·literal·strings,·so·a·single·\·must·be2230 already·gives·a·special·meaning·to·\·in·literal·strings,·so·a·single·\·must·be
2231 written·as·<code·class="inline">&quot;\\&quot;</code>·and·therefore·a·double·\·as·<code·class="inline">&quot;\\\\&quot;</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">replace</span><span·class="p"·data-group-id="4681103752-1">(</span><span·class="s">&quot;abcd&quot;</span><span·class="p">,</span><span·class="s">&quot;c&quot;</span><span·class="p">,</span><span·class="s">&quot;[&amp;]&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="4681103752-2">[·...·truncated·by·diffoscope;·len:·290,·SHA:·0cff2733aeb1bad12c5f09a2321a134549ea5c78d075a0737061b8383b656471·...·]-1">)</span><span·class="p">.</span><span·class="w">2231 written·as·<code·class="inline">&quot;\\&quot;</code>·and·therefore·a·double·\·as·<code·class="inline">&quot;\\\\&quot;</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">replace</span><span·class="p"·data-group-id="2350351928-1">(</span><span·class="s">&quot;abcd&quot;</span><span·class="p">,</span><span·class="s">&quot;c&quot;</span><span·class="p">,</span><span·class="s">&quot;[&amp;]&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="2350351928-2">[·...·truncated·by·diffoscope;·len:·290,·SHA:·a73f05f33a09ef16335856d72276f76c057dee614ca770b42823f0547f2967fc·...·]-1">)</span><span·class="p">.</span><span·class="w">
2232 </span><span·class="s">&quot;ab[c]d&quot;</span></code></pre><p>while</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">replace</span><span·class="p"·data-group-id="1506842559-1">(</span><span·class="s">&quot;abcd&quot;</span><span·class="p">,</span><span·class="s">&quot;c&quot;</span><span·class="p">,</span><span·class="s">&quot;[\\&amp;]&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1506842559-2">[·...·truncated·by·diffoscope;·len:·290,·SHA:·cc9d22a798ada187ccacb4c661760d8254c729e7648a7fdf4b08e11434c438c1·...·]-1">)</span><span·class="p">.</span><span·class="w">2232 </span><span·class="s">&quot;ab[c]d&quot;</span></code></pre><p>while</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">replace</span><span·class="p"·data-group-id="1554356841-1">(</span><span·class="s">&quot;abcd&quot;</span><span·class="p">,</span><span·class="s">&quot;c&quot;</span><span·class="p">,</span><span·class="s">&quot;[\\&amp;]&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1554356841-2">[·...·truncated·by·diffoscope;·len:·290,·SHA:·dc4076a248207721dc837c0130b3a6f31bdc7d0068700e926ec15c78aef7d94f·...·]-1">)</span><span·class="p">.</span><span·class="w">
2233 </span><span·class="s">&quot;ab[&amp;]d&quot;</span></code></pre><p>If·the·replacement·is·given·as·a·fun,·it·will·be·called·with·the·whole·matching2233 </span><span·class="s">&quot;ab[&amp;]d&quot;</span></code></pre><p>If·the·replacement·is·given·as·a·fun,·it·will·be·called·with·the·whole·matching
2234 expression·as·the·first·argument·and·a·list·of·subexpression·matches·in·the2234 expression·as·the·first·argument·and·a·list·of·subexpression·matches·in·the
2235 order·in·which·they·appear·in·the·regular·expression.·The·returned·value·will·be2235 order·in·which·they·appear·in·the·regular·expression.·The·returned·value·will·be
2236 inserted·in·the·result.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">replace</span><span·class="p"·data-group-id="3645963645-1">(</span><span·class="s">&quot;abcd&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.(.)&quot;</span><span·class="p">,</span><span·class="w">2236 inserted·in·the·result.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">replace</span><span·class="p"·data-group-id="8213740951-1">(</span><span·class="s">&quot;abcd&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.(.)&quot;</span><span·class="p">,</span><span·class="w">
2237 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="3645963645-2">(</span><span·class="n">Whole</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3645963645-3">[</span><span·class="p">&lt;&lt;</span><span·class="n">C</span><span·class="p">&gt;&gt;</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·b3756717450593bf21b61acc4e4fd25c7932ba5f9f78b885826efa3f1434a7c5·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">2237 ····</span><span·class="nf">fun</span><span·class="p"·data-group-id="8213740951-2">(</span><span·class="n">Whole</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8213740951-3">[</span><span·class="p">&lt;&lt;</span><span·class="n">C</span><span·class="p">&gt;&gt;</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·75,·SHA:·7501abbc5bc3d270ae347fe249d27ad41d584943134fb27651730f60614bf2da·...·]-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
2238 ·········</span><span·class="p">&lt;&lt;</span><span·class="sc">$#</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Whole</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$-</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3645963645-4">(</span><span·class="n">C</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="sc">$a</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="sc">$A</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·70720ea9815462f89769ca2b1189df45399f1847c97bce1ea4cb666c90e9905c·...·]-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$#</span><span·class="p">&gt;&gt;</span><span·class="w">2238 ·········</span><span·class="p">&lt;&lt;</span><span·class="sc">$#</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Whole</span><span·class="o">/</span><span·class="ss">binary</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$-</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8213740951-4">(</span><span·class="n">C</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="sc">$a</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="sc">$A</span><span·class="p[·...·truncated·by·diffoscope;·len:·27,·SHA:·f17ba7c715cf4f07ad12c8bfa0f275007290ce537131ee1ce7447c0a1ead600c·...·]-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="sc">$#</span><span·class="p">&gt;&gt;</span><span·class="w">
2239 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">2239 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
2240 ····</span><span·class="p"·data-group-id="3645963645-5">[</span><span·class="p"·data-group-id="3645963645-6">{</span><span·class="ss">return</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">list</span><span·class="p"·data-group-id="3645963645-6">}</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·72,·SHA:·6eb6f304dcc7892c822eafa629ff7aa69cf44f998783ce1cefa2ecc09ae73bba·...·]-1">)</span><span·class="p">.</span><span·class="w">2240 ····</span><span·class="p"·data-group-id="8213740951-5">[</span><span·class="p"·data-group-id="8213740951-6">{</span><span·class="ss">return</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">list</span><span·class="p"·data-group-id="8213740951-6">}</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·72,·SHA:·a60c9dcd750d828cb819a68fee07358165a87ce764acf3bfb57365af5aa5ebe5·...·]-1">)</span><span·class="p">.</span><span·class="w">
2241 </span><span·class="s">&quot;#ab-B#cd&quot;</span></code></pre><blockquote><h4·class="info">Note</h4><p>Non-matching·optional·subexpressions·will·not·be·included·in·the·list·of2241 </span><span·class="s">&quot;#ab-B#cd&quot;</span></code></pre><blockquote><h4·class="info">Note</h4><p>Non-matching·optional·subexpressions·will·not·be·included·in·the·list·of
2242 subexpression·matches·if·they·are·the·last·subexpressions·in·the·regular2242 subexpression·matches·if·they·are·the·last·subexpressions·in·the·regular
2243 expression.</p><p><em>Example:</em></p><p>The·regular·expression·<code·class="inline">&quot;(a)(b)?(c)?&quot;</code>·(&quot;a&quot;,·optionally·followed·by·&quot;b&quot;,2243 expression.</p><p><em>Example:</em></p><p>The·regular·expression·<code·class="inline">&quot;(a)(b)?(c)?&quot;</code>·(&quot;a&quot;,·optionally·followed·by·&quot;b&quot;,
2244 optionally·followed·by·&quot;c&quot;)·will·create·the·following·subexpression·lists:</p><ul><li><code·class="inline">[&lt;&lt;&quot;a&quot;&gt;&gt;,·&lt;&lt;&quot;b&quot;&gt;&gt;,·&lt;&lt;&quot;c&quot;&gt;&gt;]</code>·when·applied·to·the·string·<code·class="inline">&quot;abc&quot;</code></li><li><code·class="inline">[&lt;&lt;&quot;a&quot;&gt;&gt;,·&lt;&lt;&gt;&gt;,·&lt;&lt;&quot;c&quot;&gt;&gt;]</code>·when·applied·to·the·string·<code·class="inline">&quot;acx&quot;</code></li><li><code·class="inline">[&lt;&lt;&quot;a&quot;&gt;&gt;,·&lt;&lt;&quot;b&quot;&gt;&gt;]</code>·when·applied·to·the·string·<code·class="inline">&quot;abx&quot;</code></li><li><code·class="inline">[&lt;&lt;&quot;a&quot;&gt;&gt;]</code>·when·applied·to·the·string·<code·class="inline">&quot;axx&quot;</code></li></ul></blockquote><p>As·with·<a·href="#run/3"><code·class="inline">run/3</code></a>,·compilation·errors·raise·the·<code·class="inline">badarg</code>·exception.2244 optionally·followed·by·&quot;c&quot;)·will·create·the·following·subexpression·lists:</p><ul><li><code·class="inline">[&lt;&lt;&quot;a&quot;&gt;&gt;,·&lt;&lt;&quot;b&quot;&gt;&gt;,·&lt;&lt;&quot;c&quot;&gt;&gt;]</code>·when·applied·to·the·string·<code·class="inline">&quot;abc&quot;</code></li><li><code·class="inline">[&lt;&lt;&quot;a&quot;&gt;&gt;,·&lt;&lt;&gt;&gt;,·&lt;&lt;&quot;c&quot;&gt;&gt;]</code>·when·applied·to·the·string·<code·class="inline">&quot;acx&quot;</code></li><li><code·class="inline">[&lt;&lt;&quot;a&quot;&gt;&gt;,·&lt;&lt;&quot;b&quot;&gt;&gt;]</code>·when·applied·to·the·string·<code·class="inline">&quot;abx&quot;</code></li><li><code·class="inline">[&lt;&lt;&quot;a&quot;&gt;&gt;]</code>·when·applied·to·the·string·<code·class="inline">&quot;axx&quot;</code></li></ul></blockquote><p>As·with·<a·href="#run/3"><code·class="inline">run/3</code></a>,·compilation·errors·raise·the·<code·class="inline">badarg</code>·exception.
2245 <a·href="#compile/2"><code·class="inline">compile/2</code></a>·can·be·used·to·get·more·information·about·the·error.</p>2245 <a·href="#compile/2"><code·class="inline">compile/2</code></a>·can·be·used·to·get·more·information·about·the·error.</p>
2246 ··</section>2246 ··</section>
2247 </section>2247 </section>
Offset 2350, 27 lines modifiedOffset 2350, 27 lines modified
2350 any·matching·subexpressions·(or·as·specified·by·option·<code·class="inline">capture</code>.·The2350 any·matching·subexpressions·(or·as·specified·by·option·<code·class="inline">capture</code>.·The
2351 <code·class="inline">Captured</code>·part·of·the·return·value·is·hence·a·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:list/0"><code·class="inline">list/0</code></a>·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:list/0"><code·class="inline">list/0</code></a>s·when2351 <code·class="inline">Captured</code>·part·of·the·return·value·is·hence·a·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:list/0"><code·class="inline">list/0</code></a>·of·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:list/0"><code·class="inline">list/0</code></a>s·when
2352 this·option·is·specified.</p><p>The·interaction·of·option·<code·class="inline">global</code>·with·a·regular·expression·that·matches·an2352 this·option·is·specified.</p><p>The·interaction·of·option·<code·class="inline">global</code>·with·a·regular·expression·that·matches·an
2353 empty·string·surprises·some·users.·When·option·<code·class="inline">global</code>·is·specified,2353 empty·string·surprises·some·users.·When·option·<code·class="inline">global</code>·is·specified,
2354 <a·href="#run/3"><code·class="inline">run/3</code></a>·handles·empty·matches·in·the·same·way·as·Perl:·a2354 <a·href="#run/3"><code·class="inline">run/3</code></a>·handles·empty·matches·in·the·same·way·as·Perl:·a
2355 zero-length·match·at·any·point·is·also·retried·with·options2355 zero-length·match·at·any·point·is·also·retried·with·options
2356 <code·class="inline">[anchored,·notempty_atstart]</code>.·If·that·search·gives·a·result·of·length·&gt;·0,2356 <code·class="inline">[anchored,·notempty_atstart]</code>.·If·that·search·gives·a·result·of·length·&gt;·0,
2357 the·result·is·included.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="6070927291-1">(</span><span·class="s">&quot;cat&quot;</span><span·class="p">,</span><span·class="s">&quot;(|at)&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="6070927291-2">[</span><span·class="ss">global</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·07ac1bacaa7e28e0971b4f876196255386c3bc9b78f5a47b4a6b5b96afa35401·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·following·matchings·are·performed:</p><ul><li><p><strong>At·offset·<code·class="inline">0</code></strong>·-·The·regular·expression·<code·class="inline">(|at)</code>·first·match·at·the2357 the·result·is·included.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="9771030605-1">(</span><span·class="s">&quot;cat&quot;</span><span·class="p">,</span><span·class="s">&quot;(|at)&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="9771030605-2">[</span><span·class="ss">global</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·7d60d3158b6e231efcb46f0be7e38173cd809bbc6e1f3136c1700a6bfa22f983·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·following·matchings·are·performed:</p><ul><li><p><strong>At·offset·<code·class="inline">0</code></strong>·-·The·regular·expression·<code·class="inline">(|at)</code>·first·match·at·the
2358 initial·position·of·string·<code·class="inline">cat</code>,·giving·the·result·set·<code·class="inline">[{0,0},{0,0}]</code>·(the2358 initial·position·of·string·<code·class="inline">cat</code>,·giving·the·result·set·<code·class="inline">[{0,0},{0,0}]</code>·(the
2359 second·<code·class="inline">{0,0}</code>·is·because·of·the·subexpression·marked·by·the·parentheses).2359 second·<code·class="inline">{0,0}</code>·is·because·of·the·subexpression·marked·by·the·parentheses).
2360 As·the·length·of·the·match·is·0,·we·do·not·advance·to·the·next·position·yet.</p></li><li><p><strong>At·offset·<code·class="inline">0</code>·with·<code·class="inline">[anchored,·notempty_atstart]</code></strong>·-·The·search·is2360 As·the·length·of·the·match·is·0,·we·do·not·advance·to·the·next·position·yet.</p></li><li><p><strong>At·offset·<code·class="inline">0</code>·with·<code·class="inline">[anchored,·notempty_atstart]</code></strong>·-·The·search·is
2361 retried·with·options·<code·class="inline">[anchored,·notempty_atstart]</code>·at·the·same·position,2361 retried·with·options·<code·class="inline">[anchored,·notempty_atstart]</code>·at·the·same·position,
2362 which·does·not·give·any·interesting·result·of·longer·length,·so·the·search2362 which·does·not·give·any·interesting·result·of·longer·length,·so·the·search
2363 position·is·advanced·to·the·next·character·(<code·class="inline">a</code>).</p></li><li><p><strong>At·offset·<code·class="inline">1</code></strong>·-·The·search·results·in·<code·class="inline">[{1,0},{1,0}]</code>,·so·this·search·is2363 position·is·advanced·to·the·next·character·(<code·class="inline">a</code>).</p></li><li><p><strong>At·offset·<code·class="inline">1</code></strong>·-·The·search·results·in·<code·class="inline">[{1,0},{1,0}]</code>,·so·this·search·is
2364 also·repeated·with·the·extra·options.</p></li><li><p><strong>At·offset·<code·class="inline">1</code>·with·<code·class="inline">[anchored,·notempty_atstart]</code></strong>·-·Alternative·<code·class="inline">ab</code>·is2364 also·repeated·with·the·extra·options.</p></li><li><p><strong>At·offset·<code·class="inline">1</code>·with·<code·class="inline">[anchored,·notempty_atstart]</code></strong>·-·Alternative·<code·class="inline">ab</code>·is
2365 found·and·the·result·is·[{1,2},{1,2}].·The·result·is·added·to·the·list2365 found·and·the·result·is·[{1,2},{1,2}].·The·result·is·added·to·the·list
2366 of·results·and·the·position·in·the·search·string·is·advanced·two·steps.</p></li><li><p><strong>At·offset·<code·class="inline">3</code></strong>·-·The·search·once·again·matches·the·empty·string,·giving2366 of·results·and·the·position·in·the·search·string·is·advanced·two·steps.</p></li><li><p><strong>At·offset·<code·class="inline">3</code></strong>·-·The·search·once·again·matches·the·empty·string,·giving
2367 <code·class="inline">[{3,0},{3,0}]</code>.</p></li><li><p><strong>At·offset·<code·class="inline">1</code>·with·<code·class="inline">[anchored,·notempty_atstart]</code></strong>·-·This·gives·no·result2367 <code·class="inline">[{3,0},{3,0}]</code>.</p></li><li><p><strong>At·offset·<code·class="inline">1</code>·with·<code·class="inline">[anchored,·notempty_atstart]</code></strong>·-·This·gives·no·result
2368 of·length·&gt;·0·and·we·are·at·the·last·position,·so·the·global·search·is2368 of·length·&gt;·0·and·we·are·at·the·last·position,·so·the·global·search·is
2369 complete.</p></li></ul><p>The·result·of·the·call·is:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7499862834-1">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="7499862834-2">[</span><span·class="p"·data-group-id="7499862834-3">[</span><span·class="p"·data-group-id="7499862834-4">{</span><span·class="mi">0</sp[·...·truncated·by·diffoscope;·len:·2008,·SHA:·9eb9e6010da1ebb5cc7be03ff1e8a51f02a140454ed7628c76618bc0c78b4082·...·]-1">}</span></code></pre></li><li><p><strong><code·class="inline">notempty</code></strong>·-·An·empty·string·is·not·considered·to·be·a·valid·match·if·this2369 complete.</p></li></ul><p>The·result·of·the·call·is:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4730408548-1">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="4730408548-2">[</span><span·class="p"·data-group-id="4730408548-3">[</span><span·class="p"·data-group-id="4730408548-4">{</span><span·class="mi">0</sp[·...·truncated·by·diffoscope;·len:·2008,·SHA:·a16a4df8b431c805ac8e8f61f2067d470d98f798b8028faa0e4e00ff1d809991·...·]-1">}</span></code></pre></li><li><p><strong><code·class="inline">notempty</code></strong>·-·An·empty·string·is·not·considered·to·be·a·valid·match·if·this
2370 option·is·specified.·If·alternatives·in·the·pattern·exist,·they·are·tried.·If2370 option·is·specified.·If·alternatives·in·the·pattern·exist,·they·are·tried.·If
2371 all·the·alternatives·match·the·empty·string,·the·entire·match·fails.</p><p><em>Example:</em></p><p>If·the·following·pattern·is·applied·to·a·string·not·beginning·with·&quot;a&quot;·or·&quot;b&quot;,2371 all·the·alternatives·match·the·empty·string,·the·entire·match·fails.</p><p><em>Example:</em></p><p>If·the·following·pattern·is·applied·to·a·string·not·beginning·with·&quot;a&quot;·or·&quot;b&quot;,
2372 it·would·normally·match·the·empty·string·at·the·start·of·the·subject:</p><pre><code·class="text">a?b?</code></pre><p>With·option·<code·class="inline">notempty</code>,·this·match·is·invalid,·so·<a·href="#run/3"><code·class="inline">run/3</code></a>·searches2372 it·would·normally·match·the·empty·string·at·the·start·of·the·subject:</p><pre><code·class="text">a?b?</code></pre><p>With·option·<code·class="inline">notempty</code>,·this·match·is·invalid,·so·<a·href="#run/3"><code·class="inline">run/3</code></a>·searches
2373 further·into·the·string·for·occurrences·of·&quot;a&quot;·or·&quot;b&quot;.</p></li><li><p><strong><code·class="inline">notempty_atstart</code></strong>·-·Like·<code·class="inline">notempty</code>,·except·that·an·empty·string·match2373 further·into·the·string·for·occurrences·of·&quot;a&quot;·or·&quot;b&quot;.</p></li><li><p><strong><code·class="inline">notempty_atstart</code></strong>·-·Like·<code·class="inline">notempty</code>,·except·that·an·empty·string·match
2374 that·is·not·at·the·start·of·the·subject·is·permitted.·If·the·pattern·is2374 that·is·not·at·the·start·of·the·subject·is·permitted.·If·the·pattern·is
2375 anchored,·such·a·match·can·occur·only·if·the·pattern·contains·\K.</p><p>Perl·has·no·direct·equivalent·of·<code·class="inline">notempty</code>·or·<code·class="inline">notempty_atstart</code>,·but·it·does2375 anchored,·such·a·match·can·occur·only·if·the·pattern·contains·\K.</p><p>Perl·has·no·direct·equivalent·of·<code·class="inline">notempty</code>·or·<code·class="inline">notempty_atstart</code>,·but·it·does
2376 make·a·special·case·of·a·pattern·match·of·the·empty·string·within·its·split()2376 make·a·special·case·of·a·pattern·match·of·the·empty·string·within·its·split()
Offset 2433, 20 lines modifiedOffset 2433, 20 lines modified
2433 than·the·total·number·of·calls,·because·not·all·calls·to·match()·are2433 than·the·total·number·of·calls,·because·not·all·calls·to·match()·are
2434 recursive.·This·limit·is·of·use·only·if·it·is·set·smaller·than2434 recursive.·This·limit·is·of·use·only·if·it·is·set·smaller·than
2435 match_limit.</p><p>Limiting·the·recursion·depth·limits·the·amount·of·machine·stack·that2435 match_limit.</p><p>Limiting·the·recursion·depth·limits·the·amount·of·machine·stack·that
2436 can·be·used,·or,·when·PCRE·has·been·compiled·to·use·memory·on·the·heap2436 can·be·used,·or,·when·PCRE·has·been·compiled·to·use·memory·on·the·heap
2437 instead·of·the·stack,·the·amount·of·heap·memory·that·can·be·used.</p></blockquote><p>The·Erlang·VM·uses·a·PCRE·library·where·heap·memory·is·used·when·regular2437 instead·of·the·stack,·the·amount·of·heap·memory·that·can·be·used.</p></blockquote><p>The·Erlang·VM·uses·a·PCRE·library·where·heap·memory·is·used·when·regular
2438 expression·match·recursion·occurs.·This·therefore·limits·the·use·of·machine2438 expression·match·recursion·occurs.·This·therefore·limits·the·use·of·machine
2439 heap,·not·C·stack.</p><p>Specifying·a·lower·value·can·result·in·matches·with·deep·recursion·failing,2439 heap,·not·C·stack.</p><p>Specifying·a·lower·value·can·result·in·matches·with·deep·recursion·failing,
2440 when·they·should·have·matched:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="1209688592-1">(</span><span·class="s">&quot;aaaaaaaaaaaaaz&quot;</span><span·class="p">,</span><span·class="s">&quot;(a+)*z&quot;</span><span·class="p"·data-group-id="1209688592-1">)</span><span·class="p">.</span><span·class="w">2440 when·they·should·have·matched:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="0231999871-1">(</span><span·class="s">&quot;aaaaaaaaaaaaaz&quot;</span><span·class="p">,</span><span·class="s">&quot;(a+)*z&quot;</span><span·class="p"·data-group-id="0231999871-1">)</span><span·class="p">.</span><span·class="w">
2441 </span><span·class="p"·data-group-id="1209688592-2">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="1209688592-3">[</span><span·class="p"·data-group-id="1209688592-4">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">14</span><span·class="p"·data-group-id="1209688592-4">}</span><span·class="p">,</span><span·class="p"·data-group-id="1209688592-5">{</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">13</span><span·class="p"·data-group-id="1209688592-5">}</span><span·class="p"·data-group-id="1209688592-3">]</span><span·class="p"·data-group-id="1209688592-2">}</span><span·class="gp·unselectable"> 
2442 2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="1209688592-6">(</span><span·class="s">&quot;aaaaaaaaaaaaaz&quot;</span><span·class="p">,</span><span·class="s">&quot;(a+)*z&quot;</span[·...·truncated·by·diffoscope;·len:·422,·SHA:·2ec8db6d45068d2ae64148f8109685986bea9761348076032109277f43c2c2a2·...·]">2441 </span><span·class="p"·data-group-id="0231999871-2">{</span><span·class="ss">match</span><span·class="p">,</span><span·class="p"·data-group-id="0231999871-3">[</span><span·class="p"·data-group-id="0231999871-4">{</span><span·class="mi">0</span><span·class=[·...·truncated·by·diffoscope;·len:·430,·SHA:·2c5b41839efed46892a4595d420718f9e77dfeba228e141b323104165db2d514·...·]">
 2442 2&gt;·</span><span·class="nc">re</span><span·class="p">:</span><span·class="nf">run</span><span·class="p"·data-group-id="0231999871-6">(</span><span·class="s">&quot;aaaaaaaaaaaaaz&quot;</span><span·class="p">,</span><span·class="s">&quot;(a+)*z&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="0231999871-7">[</span><span·class="p"·data-group-id="0231999871-8">{</span><span·class="ss">match_limit_recursion</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="0231999871-8">}</span><span·class="p"·data-group-id="0231999871-7">]</span><span·class="p"·data-group-id="0231999871-6">)</span><span·class="p">.</span><span·class="w">
2443 </span><span·class="ss">nomatch</span><span·class="gp·unselectable">2443 </span><span·class="ss">nomatch</span><span·class="gp·unselectable">
Max diff block lines reached; 51936/110879 bytes (46.84%) of diff not shown.
587 B
html2text {}
Max HTML report size reached
1.27 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
463 B
html2text {}
Max HTML report size reached
8.42 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/sets.html
    
Offset 152, 19 lines modifiedOffset 152, 19 lines modified
152 <p>The·following·functions·in·this·module·also·exist·and·provide·the·same152 <p>The·following·functions·in·this·module·also·exist·and·provide·the·same
153 functionality·in·the·<a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>·and·<a·href="ordsets.html"><code·class="inline">ordsets</code></a>·modules.·That·is,·by·only153 functionality·in·the·<a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>·and·<a·href="ordsets.html"><code·class="inline">ordsets</code></a>·modules.·That·is,·by·only
154 changing·the·module·name·for·each·call,·you·can·try·out·different·set154 changing·the·module·name·for·each·call,·you·can·try·out·different·set
155 representations.</p><ul><li><a·href="#add_element/2"><code·class="inline">add_element/2</code></a></li><li><a·href="#del_element/2"><code·class="inline">del_element/2</code></a></li><li><a·href="#filter/2"><code·class="inline">filter/2</code></a></li><li><a·href="#filtermap/2"><code·class="inline">filtermap/2</code></a></li><li><a·href="#fold/3"><code·class="inline">fold/3</code></a></li><li><a·href="#from_list/1"><code·class="inline">from_list/1</code></a></li><li><a·href="#intersection/1"><code·class="inline">intersection/1</code></a></li><li><a·href="#intersection/2"><code·class="inline">intersection/2</code></a></li><li><a·href="#is_element/2"><code·class="inline">is_element/2</code></a></li><li><a·href="#is_empty/1"><code·class="inline">is_empty/1</code></a></li><li><a·href="#is_equal/2"><code·class="inline">is_equal/2</code></a></li><li><a·href="#is_set/1"><code·class="inline">is_set/1</code></a></li><li><a·href="#is_subset/2"><code·class="inline">is_subset/2</code></a></li><li><a·href="#map/2"><code·class="inline">map/2</code></a></li><li><a·href="#new/0"><code·class="inline">new/0</code></a></li><li><a·href="#size/1"><code·class="inline">size/1</code></a></li><li><a·href="#subtract/2"><code·class="inline">subtract/2</code></a></li><li><a·href="#to_list/1"><code·class="inline">to_list/1</code></a></li><li><a·href="#union/1"><code·class="inline">union/1</code></a></li><li><a·href="#union/2"><code·class="inline">union/2</code></a></li></ul><blockquote><h4·class="info">Note</h4><p>While·the·three·set·implementations·offer·the·same·<em>functionality</em>·with155 representations.</p><ul><li><a·href="#add_element/2"><code·class="inline">add_element/2</code></a></li><li><a·href="#del_element/2"><code·class="inline">del_element/2</code></a></li><li><a·href="#filter/2"><code·class="inline">filter/2</code></a></li><li><a·href="#filtermap/2"><code·class="inline">filtermap/2</code></a></li><li><a·href="#fold/3"><code·class="inline">fold/3</code></a></li><li><a·href="#from_list/1"><code·class="inline">from_list/1</code></a></li><li><a·href="#intersection/1"><code·class="inline">intersection/1</code></a></li><li><a·href="#intersection/2"><code·class="inline">intersection/2</code></a></li><li><a·href="#is_element/2"><code·class="inline">is_element/2</code></a></li><li><a·href="#is_empty/1"><code·class="inline">is_empty/1</code></a></li><li><a·href="#is_equal/2"><code·class="inline">is_equal/2</code></a></li><li><a·href="#is_set/1"><code·class="inline">is_set/1</code></a></li><li><a·href="#is_subset/2"><code·class="inline">is_subset/2</code></a></li><li><a·href="#map/2"><code·class="inline">map/2</code></a></li><li><a·href="#new/0"><code·class="inline">new/0</code></a></li><li><a·href="#size/1"><code·class="inline">size/1</code></a></li><li><a·href="#subtract/2"><code·class="inline">subtract/2</code></a></li><li><a·href="#to_list/1"><code·class="inline">to_list/1</code></a></li><li><a·href="#union/1"><code·class="inline">union/1</code></a></li><li><a·href="#union/2"><code·class="inline">union/2</code></a></li></ul><blockquote><h4·class="info">Note</h4><p>While·the·three·set·implementations·offer·the·same·<em>functionality</em>·with
156 respect·to·the·aforementioned·functions,·their·overall·<em>behavior</em>·may·differ.156 respect·to·the·aforementioned·functions,·their·overall·<em>behavior</em>·may·differ.
157 As·mentioned,·this·module·considers·elements·as·different·if·and·only·if·they157 As·mentioned,·this·module·considers·elements·as·different·if·and·only·if·they
158 do·not·match·(<code·class="inline">=:=</code>),·while·both·<a·href="ordsets.html"><code·class="inline">ordsets</code></a>·and·<a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>·consider·elements158 do·not·match·(<code·class="inline">=:=</code>),·while·both·<a·href="ordsets.html"><code·class="inline">ordsets</code></a>·and·<a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>·consider·elements
159 as·different·if·and·only·if·they·do·not·compare·equal·(<code·class="inline">==</code>).</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">is_element</span><span·class="p"·data-group-id="1817245384-1">(</span><span·class="mf">1.0</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="1817245384-2">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·204,·SHA:·db7c58ea5a24df4c58943b4cb7a06105270e22f91f1b8e67bbe78698b6235328·...·]-1">)</span><span·class="p">.</span><span·class="w">159 as·different·if·and·only·if·they·do·not·compare·equal·(<code·class="inline">==</code>).</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">is_element</span><span·class="p"·data-group-id="8464696799-1">(</span><span·class="mf">1.0</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">sets</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="8464696799-2">(</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·204,·SHA:·b45348860e703e78beea91605dc9558cba4425a93a6cbc5a2e3c54166c003e68·...·]-1">)</span><span·class="p">.</span><span·class="w">
160 </span><span·class="ss">false</span><span·class="gp·unselectable">160 </span><span·class="ss">false</span><span·class="gp·unselectable">
161 2&gt;·</span><span·class="nc">ordsets</span><span·class="p">:</span><span·class="nf">is_element</span><span·class="p"·data-group-id="1817245384-4">(</span><span·class="mf">1.0</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ordsets</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="1817245384-5">(</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·207,·SHA:·b2af3f9e733270236c6e6fce6617ed3b6765825338e77714651777efe639a683·...·]-4">)</span><span·class="p">.</span><span·class="w">161 2&gt;·</span><span·class="nc">ordsets</span><span·class="p">:</span><span·class="nf">is_element</span><span·class="p"·data-group-id="8464696799-4">(</span><span·class="mf">1.0</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">ordsets</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="8464696799-5">(</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·207,·SHA:·22af56297b32ef7f6e0078bbcb3dc5cb9309096f0fdea3316bc8b9c1dec4d70f·...·]-4">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="ss">true</span><span·class="gp·unselectable">162 </span><span·class="ss">true</span><span·class="gp·unselectable">
163 2&gt;·</span><span·class="nc">gb_sets</span><span·class="p">:</span><span·class="nf">is_element</span><span·class="p"·data-group-id="1817245384-7">(</span><span·class="mf">1.0</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">gb_sets</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="1817245384-8">(</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·207,·SHA:·2379bed5f1667c664245862647ea6213bfb9cb0bea74e46f6c41c82407e8b14b·...·]-7">)</span><span·class="p">.</span><span·class="w">163 2&gt;·</span><span·class="nc">gb_sets</span><span·class="p">:</span><span·class="nf">is_element</span><span·class="p"·data-group-id="8464696799-7">(</span><span·class="mf">1.0</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">gb_sets</span><span·class="p">:</span><span·class="nf">from_list</span><span·class="p"·data-group-id="8464696799-8">(</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·207,·SHA:·2031577ecef82f65521bbd426f99c1d52bf8ffa3f8e1900a83ec34c910f94f58·...·]-7">)</span><span·class="p">.</span><span·class="w">
164 </span><span·class="ss">true</span></code></pre></blockquote><h2·id="module-see-also"·class="section-heading">164 </span><span·class="ss">true</span></code></pre></blockquote><h2·id="module-see-also"·class="section-heading">
165 ··<a·href="#module-see-also"·class="hover-link">165 ··<a·href="#module-see-also"·class="hover-link">
166 ····<i·class="ri-link-m"·aria-hidden="true"></i>166 ····<i·class="ri-link-m"·aria-hidden="true"></i>
167 ··</a>167 ··</a>
168 ··<span·class="text">See·Also</span>168 ··<span·class="text">See·Also</span>
169 </h2>169 </h2>
170 <p><a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>,·<a·href="ordsets.html"><code·class="inline">ordsets</code></a></p>170 <p><a·href="gb_sets.html"><code·class="inline">gb_sets</code></a>,·<a·href="ordsets.html"><code·class="inline">ordsets</code></a></p>
Offset 1222, 15 lines modifiedOffset 1222, 15 lines modified
1222 ······<p·class="built-using">1222 ······<p·class="built-using">
1223 ········Built·using1223 ········Built·using
1224 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1224 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1225 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1225 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1226 ······</p>1226 ······</p>
1227 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1227 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1228 ····</footer>1228 ····</footer>
1229 ··</div>1229 ··</div>
1230 </main>1230 </main>
1231 </div>1231 </div>
1232 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1232 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1233 <script>1233 <script>
1234 ··document.addEventListener("DOMContentLoaded",·function·()·{1234 ··document.addEventListener("DOMContentLoaded",·function·()·{
665 B
html2text {}
Max HTML report size reached
74.3 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/shell.html
    
Offset 162, 15 lines modifiedOffset 162, 15 lines modified
162 used·by·the·compiler·are·unavailable·at·runtime.·So,·to·read·the·record·syntax162 used·by·the·compiler·are·unavailable·at·runtime.·So,·to·read·the·record·syntax
163 and·print·tuples·as·records·when·possible,·record·definitions·must·be·maintained163 and·print·tuples·as·records·when·possible,·record·definitions·must·be·maintained
164 by·the·shell·itself.</p><p>The·shell·commands·for·reading,·defining,·forgetting,·listing,·and·printing164 by·the·shell·itself.</p><p>The·shell·commands·for·reading,·defining,·forgetting,·listing,·and·printing
165 records·are·described·below.·Notice·that·each·job·has·its·own·set·of·record165 records·are·described·below.·Notice·that·each·job·has·its·own·set·of·record
166 definitions.·To·facilitate·matters,·record·definitions·in·modules166 definitions.·To·facilitate·matters,·record·definitions·in·modules
167 <code·class="inline">shell_default</code>·and·<code·class="inline">user_default</code>·(if·loaded)·are·read·each·time·a·new·job·is167 <code·class="inline">shell_default</code>·and·<code·class="inline">user_default</code>·(if·loaded)·are·read·each·time·a·new·job·is
168 started.·For·example,·adding·the·following·line·to·<code·class="inline">user_default</code>·makes·the168 started.·For·example,·adding·the·following·line·to·<code·class="inline">user_default</code>·makes·the
169 definition·of·<code·class="inline">file_info</code>·readily·available·in·the·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="3565539542-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="3565539542-1">)</span><span·class="p">.</span></code></pre><p>The·shell·runs·in·two·modes:</p><ul><li><code·class="inline">Normal·(possibly·restricted)</code>·mode,·in·which·commands·can·be·edited·and169 definition·of·<code·class="inline">file_info</code>·readily·available·in·the·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include_lib</span><span·class="p"·data-group-id="5172731086-1">(</span><span·class="s">&quot;kernel/include/file.hrl&quot;</span><span·class="p"·data-group-id="5172731086-1">)</span><span·class="p">.</span></code></pre><p>The·shell·runs·in·two·modes:</p><ul><li><code·class="inline">Normal·(possibly·restricted)</code>·mode,·in·which·commands·can·be·edited·and
170 expressions·evaluated</li><li>Job·Control·Mode,·<code·class="inline">JCL</code>,·in·which·jobs·can·be·started,·killed,·detached,·and170 expressions·evaluated</li><li>Job·Control·Mode,·<code·class="inline">JCL</code>,·in·which·jobs·can·be·started,·killed,·detached,·and
171 connected</li></ul><p>Only·the·currently·connected·job·can·'talk'·to·the·shell.</p><h2·id="module-shell-commands"·class="section-heading">171 connected</li></ul><p>Only·the·currently·connected·job·can·'talk'·to·the·shell.</p><h2·id="module-shell-commands"·class="section-heading">
172 ··<a·href="#module-shell-commands"·class="hover-link">172 ··<a·href="#module-shell-commands"·class="hover-link">
173 ····<i·class="ri-link-m"·aria-hidden="true"></i>173 ····<i·class="ri-link-m"·aria-hidden="true"></i>
174 ··</a>174 ··</a>
175 ··<span·class="text">Shell·Commands</span>175 ··<span·class="text">Shell·Commands</span>
176 </h2>176 </h2>
Offset 230, 114 lines modifiedOffset 230, 114 lines modified
230 ··<a·href="#module-example"·class="hover-link">230 ··<a·href="#module-example"·class="hover-link">
231 ····<i·class="ri-link-m"·aria-hidden="true"></i>231 ····<i·class="ri-link-m"·aria-hidden="true"></i>
232 ··</a>232 ··</a>
233 ··<span·class="text">Example</span>233 ··<span·class="text">Example</span>
234 </h2>234 </h2>
235 <p>The·following·example·is·a·long·dialog·with·the·shell.·Commands·starting·with235 <p>The·following·example·is·a·long·dialog·with·the·shell.·Commands·starting·with
236 <code·class="inline">&gt;</code>·are·inputs·to·the·shell.·All·other·lines·are·output·from·the·shell.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">strider</span><span·class="w">·</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="ss">erl</span><span·class="w">236 <code·class="inline">&gt;</code>·are·inputs·to·the·shell.·All·other·lines·are·output·from·the·shell.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="ss">strider</span><span·class="w">·</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="ss">erl</span><span·class="w">
237 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="8248730971-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="8248730971-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">5.[·...·truncated·by·diffoscope;·len:·364,·SHA:·efc77aa3b48defd0174f1a4e2ed77cdf35954457d2f47737f4408efdfbc9b703·...·]-3">]</span><span·class="w">237 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="p"·data-group-id="1681698894-1">(</span><span·class="n">BEAM</span><span·class="p"·data-group-id="1681698894-1">)</span><span·class="w">·</span><span·class="ss">emulator</span><span·class="w">·</span><span·class="ss">version</span><span·class="w">·</span><span·class="mf">5.[·...·truncated·by·diffoscope;·len:·364,·SHA:·ca18f1b9fdc9da44c99ef44cd8e2acc9f4d8ecfae42b148755b5d2e49925ece4·...·]-3">]</span><span·class="w">
  
238 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="8248730971-4">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="8248730971-4">)</span><span·class="gp·unselectable">238 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="1681698894-4">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="1681698894-4">)</span><span·class="gp·unselectable">
239 1&gt;·</span><span·class="n">Str</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;abcd&quot;</span><span·class="p">.</span><span·class="w">239 1&gt;·</span><span·class="n">Str</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;abcd&quot;</span><span·class="p">.</span><span·class="w">
240 </span><span·class="s">&quot;abcd&quot;</span></code></pre><p>Command·1·sets·variable·<code·class="inline">Str</code>·to·string·<code·class="inline">&quot;abcd&quot;</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="n">L</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">length</span><span·class="p"·data-group-id="4035828273-1">(</span><span·class="n">Str</span><span·class="p"·data-group-id="4035828273-1">)</span><span·class="p">.</span><span·class="w">240 </span><span·class="s">&quot;abcd&quot;</span></code></pre><p>Command·1·sets·variable·<code·class="inline">Str</code>·to·string·<code·class="inline">&quot;abcd&quot;</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="n">L</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">length</span><span·class="p"·data-group-id="3640568888-1">(</span><span·class="n">Str</span><span·class="p"·data-group-id="3640568888-1">)</span><span·class="p">.</span><span·class="w">
241 </span><span·class="mi">4</span></code></pre><p>Command·2·sets·<code·class="inline">L</code>·to·the·length·of·string·<code·class="inline">Str</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="n">Descriptor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="4084020183-1">{</span><span·class="n">L</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">list_to_atom</span><span·class="p"·data-group-id="4084020183-2">(</span><span·class="n">Str</span><span·class="p"·data-group-id="4084020183-2">)</span><span·class="p"·data-group-id="4084020183-1">}</span><span·class="p">.</span><span·class="w"> 
242 </span><span·class="p"·data-group-id="4084020183-3">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="4084020183-3">}</span></code></pre><p>Command·3·builds·the·tuple·<code·class="inline">Descriptor</code>,·eva[·...·truncated·by·diffoscope;·len:·15,·SHA:·0e7c15d0efd82a20bed5450963d958a2c7209265c55b1cf8553de8fc20daa29f·...·]241 </span><span·class="mi">4</span></code></pre><p>Command·2·sets·<code·class="inline">L</code>·to·the·length·of·string·<code·class="inline">Str</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="n">Descriptor</span[·...·truncated·by·diffoscope;·len:·459,·SHA:·1cf2d4c8fea7eaaee826e10a73f326765ffee67f439015df264860a4d5af0807·...·]
 242 </span><span·class="p"·data-group-id="7766575890-3">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="7766575890-3">}</span></code></pre><p>Command·3·builds·the·tuple·<code·class="inline">Descriptor</code>,·evaluating·the·BIF
243 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#list_to_atom/1"><code·class="inline">list_to_atom/1</code>·</a>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="n">L</span><span·class="p">.</span><span·class="w">243 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#list_to_atom/1"><code·class="inline">list_to_atom/1</code>·</a>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="n">L</span><span·class="p">.</span><span·class="w">
244 </span><span·class="mi">4</span></code></pre><p>Command·4·prints·the·value·of·variable·<code·class="inline">L</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nf">b</span><span·class="p"·data-group-id="3998619717-1">(</span><span·class="p"·data-group-id="3998619717-1">)</span><span·class="p">.</span><span·class="w">244 </span><span·class="mi">4</span></code></pre><p>Command·4·prints·the·value·of·variable·<code·class="inline">L</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">5&gt;·</span><span·class="nf">b</span><span·class="p"·data-group-id="7200157067-1">(</span><span·class="p"·data-group-id="7200157067-1">)</span><span·class="p">.</span><span·class="w">
245 </span><span·class="n">Descriptor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3998619717-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="3998619717-2">}</span><span·class="w">245 </span><span·class="n">Descriptor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7200157067-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="7200157067-2">}</span><span·class="w">
246 </span><span·class="n">L</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">4</span><span·class="w">246 </span><span·class="n">L</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">4</span><span·class="w">
247 </span><span·class="n">Str</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;abcd&quot;</span><span·class="w">247 </span><span·class="n">Str</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;abcd&quot;</span><span·class="w">
248 </span><span·class="ss">ok</span></code></pre><p>Command·5·evaluates·the·internal·shell·command·<code·class="inline">b()</code>,·which·is·an·abbreviation248 </span><span·class="ss">ok</span></code></pre><p>Command·5·evaluates·the·internal·shell·command·<code·class="inline">b()</code>,·which·is·an·abbreviation
249 of·&quot;bindings&quot;.·This·prints·the·current·shell·variables·and·their·bindings.·<code·class="inline">ok</code>249 of·&quot;bindings&quot;.·This·prints·the·current·shell·variables·and·their·bindings.·<code·class="inline">ok</code>
250 at·the·end·is·the·return·value·of·function·<code·class="inline">b()</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">6&gt;·</span><span·class="nf">f</span><span·class="p"·data-group-id="9943035487-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="9943035487-1">)</span><span·class="p">.</span><span·class="w">250 at·the·end·is·the·return·value·of·function·<code·class="inline">b()</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">6&gt;·</span><span·class="nf">f</span><span·class="p"·data-group-id="5167526852-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="5167526852-1">)</span><span·class="p">.</span><span·class="w">
251 </span><span·class="ss">ok</span></code></pre><p>Command·6·evaluates·the·internal·shell·command·<code·class="inline">f(L)</code>·(abbreviation·of251 </span><span·class="ss">ok</span></code></pre><p>Command·6·evaluates·the·internal·shell·command·<code·class="inline">f(L)</code>·(abbreviation·of
252 &quot;forget&quot;).·The·value·of·variable·<code·class="inline">L</code>·is·removed.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">7&gt;·</span><span·class="nf">b</span><span·class="p"·data-group-id="5371658165-1">(</span><span·class="p"·data-group-id="5371658165-1">)</span><span·class="p">.</span><span·class="w">252 &quot;forget&quot;).·The·value·of·variable·<code·class="inline">L</code>·is·removed.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">7&gt;·</span><span·class="nf">b</span><span·class="p"·data-group-id="1794305419-1">(</span><span·class="p"·data-group-id="1794305419-1">)</span><span·class="p">.</span><span·class="w">
253 </span><span·class="n">Descriptor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="5371658165-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="5371658165-2">}</span><span·class="w">253 </span><span·class="n">Descriptor</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="1794305419-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="1794305419-2">}</span><span·class="w">
254 </span><span·class="n">Str</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;abcd&quot;</span><span·class="w">254 </span><span·class="n">Str</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;abcd&quot;</span><span·class="w">
255 </span><span·class="ss">ok</span></code></pre><p>Command·7·prints·the·new·bindings.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">8&gt;·</span><span·class="nf">f</span><span·class="p"·data-group-id="7080384077-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="7080384077-1">)</span><span·class="p">.</span><span·class="w">255 </span><span·class="ss">ok</span></code></pre><p>Command·7·prints·the·new·bindings.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">8&gt;·</span><span·class="nf">f</span><span·class="p"·data-group-id="1813301831-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="1813301831-1">)</span><span·class="p">.</span><span·class="w">
256 </span><span·class="ss">ok</span></code></pre><p>Command·8·has·no·effect,·as·<code·class="inline">L</code>·has·no·value.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">9&gt;·</span><span·class="p"·data-group-id="4334307795-1">{</span><span·class="n">L</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="4334307795-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Descriptor</span><span·class="p">.</span><span·class="w">256 </span><span·class="ss">ok</span></code></pre><p>Command·8·has·no·effect,·as·<code·class="inline">L</code>·has·no·value.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">9&gt;·</span><span·class="p"·data-group-id="3463135959-1">{</span><span·class="n">L</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="3463135959-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Descriptor</span><span·class="p">.</span><span·class="w">
257 </span><span·class="p"·data-group-id="4334307795-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="4334307795-2">}</span></code></pre><p>Command·9·performs·a·pattern·matching·operation·on·<code·class="inline">Descriptor</code>,·binding·a·new257 </span><span·class="p"·data-group-id="3463135959-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="3463135959-2">}</span></code></pre><p>Command·9·performs·a·pattern·matching·operation·on·<code·class="inline">Descriptor</code>,·binding·a·new
258 value·to·<code·class="inline">L</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">10&gt;·</span><span·class="n">L</span><span·class="p">.</span><span·class="w">258 value·to·<code·class="inline">L</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">10&gt;·</span><span·class="n">L</span><span·class="p">.</span><span·class="w">
259 </span><span·class="mi">4</span></code></pre><p>Command·10·prints·the·current·value·of·<code·class="inline">L</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">11&gt;·</span><span·class="p"·data-group-id="3391551520-1">{</span><span·class="n">P</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Q</span><span·class="p">,</span><span·class="w">·</span><span·class="n">R</span><span·class="p"·data-group-id="3391551520-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Descriptor</span><span·class="p">.</span><span·class="w">259 </span><span·class="mi">4</span></code></pre><p>Command·10·prints·the·current·value·of·<code·class="inline">L</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">11&gt;·</span><span·class="p"·data-group-id="9089590003-1">{</span><span·class="n">P</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Q</span><span·class="p">,</span><span·class="w">·</span><span·class="n">R</span><span·class="p"·data-group-id="9089590003-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Descriptor</span><span·class="p">.</span><span·class="w">
260 </span><span·class="gt">**·exception·error:·no·match·of·right·hand·side·value·{4,abcd}</span></code></pre><p>Command·11·tries·to·match·<code·class="inline">{P,·Q,·R}</code>·against·<code·class="inline">Descriptor</code>,·which·is·<code·class="inline">{4,·abc}</code>.260 </span><span·class="gt">**·exception·error:·no·match·of·right·hand·side·value·{4,abcd}</span></code></pre><p>Command·11·tries·to·match·<code·class="inline">{P,·Q,·R}</code>·against·<code·class="inline">Descriptor</code>,·which·is·<code·class="inline">{4,·abc}</code>.
261 The·match·fails·and·none·of·the·new·variables·become·bound.·The·printout261 The·match·fails·and·none·of·the·new·variables·become·bound.·The·printout
262 starting·with·&quot;<code·class="inline">**·exception·error:</code>&quot;·is·not·the·value·of·the·expression·(the262 starting·with·&quot;<code·class="inline">**·exception·error:</code>&quot;·is·not·the·value·of·the·expression·(the
263 expression·had·no·value·because·its·evaluation·failed),·but·a·warning·printed·by263 expression·had·no·value·because·its·evaluation·failed),·but·a·warning·printed·by
264 the·system·to·inform·the·user·that·an·error·has·occurred.·The·values·of·the264 the·system·to·inform·the·user·that·an·error·has·occurred.·The·values·of·the
265 other·variables·(<code·class="inline">L</code>,·<code·class="inline">Str</code>,·and·so·on)·are·unchanged.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">12&gt;·</span><span·class="n">P</span><span·class="p">.</span><span·class="w">265 other·variables·(<code·class="inline">L</code>,·<code·class="inline">Str</code>,·and·so·on)·are·unchanged.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">12&gt;·</span><span·class="n">P</span><span·class="p">.</span><span·class="w">
266 </span><span·class="gt">*·1:1:·variable·&#39;P&#39;·is·unbound</span><span·class="gp·unselectable">266 </span><span·class="gt">*·1:1:·variable·&#39;P&#39;·is·unbound</span><span·class="gp·unselectable">
267 13&gt;·</span><span·class="n">Descriptor</span><span·class="p">.</span><span·class="w">267 13&gt;·</span><span·class="n">Descriptor</span><span·class="p">.</span><span·class="w">
268 </span><span·class="p"·data-group-id="2251892519-1">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="2251892519-1">}</span></code></pre><p>Commands·12·and·13·show·that·<code·class="inline">P</code>·is·unbound·because·the·previous·command·failed,268 </span><span·class="p"·data-group-id="1338593687-1">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="1338593687-1">}</span></code></pre><p>Commands·12·and·13·show·that·<code·class="inline">P</code>·is·unbound·because·the·previous·command·failed,
269 and·that·<code·class="inline">Descriptor</code>·has·not·changed.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="mi">14</span><span·class="o">&gt;</span><span·class="p"·data-group-id="0948646712-1">{</span><span·class="n">P</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Q</span><span·class="p"·data-group-id="0948646712-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Descriptor</span><span·class="p">.</span><span·class="w">269 and·that·<code·class="inline">Descriptor</code>·has·not·changed.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="mi">14</span><span·class="o">&gt;</span><span·class="p"·data-group-id="8121429013-1">{</span><span·class="n">P</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Q</span><span·class="p"·data-group-id="8121429013-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="n">Descriptor</span><span·class="p">.</span><span·class="w">
270 </span><span·class="p"·data-group-id="0948646712-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="0948646712-2">}</span><span·class="gp·unselectable">270 </span><span·class="p"·data-group-id="8121429013-2">{</span><span·class="mi">4</span><span·class="p">,</span><span·class="ss">abcd</span><span·class="p"·data-group-id="8121429013-2">}</span><span·class="gp·unselectable">
271 15&gt;·</span><span·class="n">P</span><span·class="p">.</span><span·class="w">271 15&gt;·</span><span·class="n">P</span><span·class="p">.</span><span·class="w">
272 </span><span·class="mi">4</span></code></pre><p>Commands·14·and·15·show·a·correct·match·where·<code·class="inline">P</code>·and·<code·class="inline">Q</code>·are·bound.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">16&gt;·</span><span·class="nf">f</span><span·class="p"·data-group-id="9874027504-1">(</span><span·class="p"·data-group-id="9874027504-1">)</span><span·class="p">.</span><span·class="w">272 </span><span·class="mi">4</span></code></pre><p>Commands·14·and·15·show·a·correct·match·where·<code·class="inline">P</code>·and·<code·class="inline">Q</code>·are·bound.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">16&gt;·</span><span·class="nf">f</span><span·class="p"·data-group-id="1898523229-1">(</span><span·class="p"·data-group-id="1898523229-1">)</span><span·class="p">.</span><span·class="w">
273 </span><span·class="ss">ok</span></code></pre><p>Command·16·clears·all·bindings.</p><p>The·next·few·commands·assume·that·<code·class="inline">test1:demo(X)</code>·is·defined·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">demo</span><span·class="p"·data-group-id="0283154317-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="0283154317-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">273 </span><span·class="ss">ok</span></code></pre><p>Command·16·clears·all·bindings.</p><p>The·next·few·commands·assume·that·<code·class="inline">test1:demo(X)</code>·is·defined·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">demo</span><span·class="p"·data-group-id="6229483247-1">(</span><span·class="n">X</span><span·class="p"·data-group-id="6229483247-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
274 </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="nf">put</span><span·class="p"·data-group-id="0283154317-2">(</span><span·class="ss">aa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">worked</span><span·class="p"·data-group-id="0283154317-2">)</span><span·class="p">,</span><span·class="w">274 </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="nf">put</span><span·class="p"·data-group-id="6229483247-2">(</span><span·class="ss">aa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">worked</span><span·class="p"·data-group-id="6229483247-2">)</span><span·class="p">,</span><span·class="w">
275 </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="n">X</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">275 </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="n">X</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">
276 </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="n">X</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">10</span><span·class="p">.</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">17&gt;·</span><span·class="nf">put</span><span·class="p"·data-group-id="1732890877-1">(</span><span·class="ss">aa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">hello</span><span·class="p"·data-group-id="1732890877-1">)</span><span·class="p">.</span><span·class="w">276 </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="err"> </span><span·class="n">X</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="mi">10</span><span·class="p">.</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">17&gt;·</span><span·class="nf">put</span><span·class="p"·data-group-id="1282699705-1">(</span><span·class="ss">aa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">hello</span><span·class="p"·data-group-id="1282699705-1">)</span><span·class="p">.</span><span·class="w">
277 </span><span·class="ss">undefined</span><span·class="gp·unselectable">277 </span><span·class="ss">undefined</span><span·class="gp·unselectable">
278 18&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="1732890877-2">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="1732890877-2">)</span><span·class="p">.</span><span·class="w">278 18&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="1282699705-2">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="1282699705-2">)</span><span·class="p">.</span><span·class="w">
279 </span><span·class="ss">hello</span></code></pre><p>Commands·17·and·18·set·and·inspect·the·value·of·item·<code·class="inline">aa</code>·in·the·process279 </span><span·class="ss">hello</span></code></pre><p>Commands·17·and·18·set·and·inspect·the·value·of·item·<code·class="inline">aa</code>·in·the·process
280 dictionary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">19&gt;·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">test1</span><span·class="p">:</span><span·class="nf">demo</span><span·class="p"·data-group-id="2914543548-1">(</span><span·class="mi">1</span><span·class="p"·data-group-id="2914543548-1">)</span><span·class="p">.</span><span·class="w">280 dictionary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">19&gt;·</span><span·class="n">Y</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">test1</span><span·class="p">:</span><span·class="nf">demo</span><span·class="p"·data-group-id="2235620728-1">(</span><span·class="mi">1</span><span·class="p"·data-group-id="2235620728-1">)</span><span·class="p">.</span><span·class="w">
281 </span><span·class="mi">11</span></code></pre><p>Command·19·evaluates·<code·class="inline">test1:demo(1)</code>.·The·evaluation·succeeds·and·the·changes281 </span><span·class="mi">11</span></code></pre><p>Command·19·evaluates·<code·class="inline">test1:demo(1)</code>.·The·evaluation·succeeds·and·the·changes
282 made·in·the·process·dictionary·become·visible·to·the·shell.·The·new·value·of282 made·in·the·process·dictionary·become·visible·to·the·shell.·The·new·value·of
283 dictionary·item·<code·class="inline">aa</code>·can·be·seen·in·command·20.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">20&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="9585236358-1">(</span><span·class="p"·data-group-id="9585236358-1">)</span><span·class="p">.</span><span·class="w">283 dictionary·item·<code·class="inline">aa</code>·can·be·seen·in·command·20.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">20&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="2717677476-1">(</span><span·class="p"·data-group-id="2717677476-1">)</span><span·class="p">.</span><span·class="w">
284 </span><span·class="p"·data-group-id="9585236358-2">[</span><span·class="p"·data-group-id="9585236358-3">{</span><span·class="ss">aa</span><span·class="p">,</span><span·class="ss">worked</span><span·class="p"·data-group-id="9585236358-3">}</span><span·class="p"·data-group-id="9585236358-2">]</span><span·class="gp·unselectable">284 </span><span·class="p"·data-group-id="2717677476-2">[</span><span·class="p"·data-group-id="2717677476-3">{</span><span·class="ss">aa</span><span·class="p">,</span><span·class="ss">worked</span><span·class="p"·data-group-id="2717677476-3">}</span><span·class="p"·data-group-id="2717677476-2">]</span><span·class="gp·unselectable">
285 21&gt;·</span><span·class="nf">put</span><span·class="p"·data-group-id="9585236358-4">(</span><span·class="ss">aa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">hello</span><span·class="p"·data-group-id="9585236358-4">)</span><span·class="p">.</span><span·class="w">285 21&gt;·</span><span·class="nf">put</span><span·class="p"·data-group-id="2717677476-4">(</span><span·class="ss">aa</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">hello</span><span·class="p"·data-group-id="2717677476-4">)</span><span·class="p">.</span><span·class="w">
286 </span><span·class="ss">worked</span><span·class="gp·unselectable">286 </span><span·class="ss">worked</span><span·class="gp·unselectable">
287 22&gt;·</span><span·class="n">Z</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">test1</span><span·class="p">:</span><span·class="nf">demo</span><span·class="p"·data-group-id="9585236358-5">(</span><span·class="mi">2</span><span·class="p"·data-group-id="9585236358-5">)</span><span·class="p">.</span><span·class="w">287 22&gt;·</span><span·class="n">Z</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">test1</span><span·class="p">:</span><span·class="nf">demo</span><span·class="p"·data-group-id="2717677476-5">(</span><span·class="mi">2</span><span·class="p"·data-group-id="2717677476-5">)</span><span·class="p">.</span><span·class="w">
288 </span><span·class="gt">**·exception·error:·no·match·of·right·hand·side·value·1288 </span><span·class="gt">**·exception·error:·no·match·of·right·hand·side·value·1
289 ·····in·function··test1:demo/1</span></code></pre><p>Commands·21·and·22·change·the·value·of·dictionary·item·<code·class="inline">aa</code>·to·<code·class="inline">hello</code>·and·call289 ·····in·function··test1:demo/1</span></code></pre><p>Commands·21·and·22·change·the·value·of·dictionary·item·<code·class="inline">aa</code>·to·<code·class="inline">hello</code>·and·call
290 <code·class="inline">test1:demo(2)</code>.·Evaluation·fails·and·the·changes·made·to·the·dictionary·in290 <code·class="inline">test1:demo(2)</code>.·Evaluation·fails·and·the·changes·made·to·the·dictionary·in
291 <code·class="inline">test1:demo(2)</code>,·before·the·error·occurred,·are·discarded.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">23&gt;·</span><span·class="n">Z</span><span·class="p">.</span><span·class="w">291 <code·class="inline">test1:demo(2)</code>,·before·the·error·occurred,·are·discarded.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">23&gt;·</span><span·class="n">Z</span><span·class="p">.</span><span·class="w">
292 </span><span·class="gt">*·1:1:·variable·&#39;Z&#39;·is·unbound</span><span·class="gp·unselectable">292 </span><span·class="gt">*·1:1:·variable·&#39;Z&#39;·is·unbound</span><span·class="gp·unselectable">
293 24&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="7913176859-1">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="7913176859-1">)</span><span·class="p">.</span><span·class="w">293 24&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="0858859077-1">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="0858859077-1">)</span><span·class="p">.</span><span·class="w">
294 </span><span·class="ss">hello</span></code></pre><p>Commands·23·and·24·show·that·<code·class="inline">Z</code>·was·not·bound·and·that·dictionary·item·<code·class="inline">aa</code>·has294 </span><span·class="ss">hello</span></code></pre><p>Commands·23·and·24·show·that·<code·class="inline">Z</code>·was·not·bound·and·that·dictionary·item·<code·class="inline">aa</code>·has
295 retained·its·original·value.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">25&gt;·</span><span·class="nf">erase</span><span·class="p"·data-group-id="0089641123-1">(</span><span·class="p"·data-group-id="0089641123-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">put</span><span·class="p"·data-group-id="0089641123-2">(</span><span·class="ss">aa</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·6d6cebaaf0a2de04ca5f7ed9abfaaec885b813545c97ca03639b91724d644cca·...·]-2">)</span><span·class="p">.</span><span·class="w">295 retained·its·original·value.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">25&gt;·</span><span·class="nf">erase</span><span·class="p"·data-group-id="6338643109-1">(</span><span·class="p"·data-group-id="6338643109-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">put</span><span·class="p"·data-group-id="6338643109-2">(</span><span·class="ss">aa</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·08e9570c1f026ff581c150ed137582d517d4a12cc1ec714b074027d1fbe0c4a7·...·]-2">)</span><span·class="p">.</span><span·class="w">
296 </span><span·class="ss">undefined</span><span·class="gp·unselectable">296 </span><span·class="ss">undefined</span><span·class="gp·unselectable">
297 26&gt;·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="0089641123-3">(</span><span·class="ss">test1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">demo</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0089641123-4">[</span><span·class="mi">1</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·99bc2288a629362f5e318ade19d82bee79c6fd007925b7cc5ab52691b36577f2·...·]-3">)</span><span·class="p">.</span><span·class="w">297 26&gt;·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="6338643109-3">(</span><span·class="ss">test1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">demo</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6338643109-4">[</span><span·class="mi">1</span><sp[·...·truncated·by·diffoscope;·len:·91,·SHA:·e358e7df88fc44d8a6e51cfec7a1c72ea1490b909ff41b1b835fe2e99891a2f0·...·]-3">)</span><span·class="p">.</span><span·class="w">
298 </span><span·class="o">&lt;</span><span·class="mf">0.57</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">298 </span><span·class="o">&lt;</span><span·class="mf">0.57</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">
299 27&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="0089641123-5">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="0089641123-5">)</span><span·class="p">.</span><span·class="w">299 27&gt;·</span><span·class="nf">get</span><span·class="p"·data-group-id="6338643109-5">(</span><span·class="ss">aa</span><span·class="p"·data-group-id="6338643109-5">)</span><span·class="p">.</span><span·class="w">
300 </span><span·class="ss">hello</span></code></pre><p>Commands·25,·26,·and·27·show·the·effect·of·evaluating·<code·class="inline">test1:demo(1)</code>·in·the300 </span><span·class="ss">hello</span></code></pre><p>Commands·25,·26,·and·27·show·the·effect·of·evaluating·<code·class="inline">test1:demo(1)</code>·in·the
301 background.·In·this·case,·the·expression·is·evaluated·in·a·newly·spawned301 background.·In·this·case,·the·expression·is·evaluated·in·a·newly·spawned
302 process.·Any·changes·made·in·the·process·dictionary·are·local·to·the·newly302 process.·Any·changes·made·in·the·process·dictionary·are·local·to·the·newly
303 spawned·process·and·therefore·not·visible·to·the·shell.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">28&gt;·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1820098560-1">(</span><span·class="s">&quot;hello·hello\n&quot;</span><span·class="p"·data-group-id="1820098560-1">)</span><span·class="p">.</span><span·class="w">303 spawned·process·and·therefore·not·visible·to·the·shell.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">28&gt;·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3042923779-1">(</span><span·class="s">&quot;hello·hello\n&quot;</span><span·class="p"·data-group-id="3042923779-1">)</span><span·class="p">.</span><span·class="w">
304 </span><span·class="ss">hello</span><span·class="w">·</span><span·class="ss">hello</span><span·class="w">304 </span><span·class="ss">hello</span><span·class="w">·</span><span·class="ss">hello</span><span·class="w">
305 </span><span·class="ss">ok</span><span·class="gp·unselectable">305 </span><span·class="ss">ok</span><span·class="gp·unselectable">
306 29&gt;·</span><span·class="nf">e</span><span·class="p"·data-group-id="1820098560-2">(</span><span·class="mi">28</span><span·class="p"·data-group-id="1820098560-2">)</span><span·class="p">.</span><span·class="w">306 29&gt;·</span><span·class="nf">e</span><span·class="p"·data-group-id="3042923779-2">(</span><span·class="mi">28</span><span·class="p"·data-group-id="3042923779-2">)</span><span·class="p">.</span><span·class="w">
307 </span><span·class="ss">hello</span><span·class="w">·</span><span·class="ss">hello</span><span·class="w">307 </span><span·class="ss">hello</span><span·class="w">·</span><span·class="ss">hello</span><span·class="w">
308 </span><span·class="ss">ok</span><span·class="gp·unselectable">308 </span><span·class="ss">ok</span><span·class="gp·unselectable">
309 30&gt;·</span><span·class="nf">v</span><span·class="p"·data-group-id="1820098560-3">(</span><span·class="mi">28</span><span·class="p"·data-group-id="1820098560-3">)</span><span·class="p">.</span><span·class="w">309 30&gt;·</span><span·class="nf">v</span><span·class="p"·data-group-id="3042923779-3">(</span><span·class="mi">28</span><span·class="p"·data-group-id="3042923779-3">)</span><span·class="p">.</span><span·class="w">
310 </span><span·class="ss">ok</span></code></pre><p>Commands·28,·29·and·30·use·the·history·facilities·of·the·shell.·Command·29310 </span><span·class="ss">ok</span></code></pre><p>Commands·28,·29·and·30·use·the·history·facilities·of·the·shell.·Command·29
311 re-evaluates·command·28.·Command·30·uses·the·value·(result)·of·command·28.·In311 re-evaluates·command·28.·Command·30·uses·the·value·(result)·of·command·28.·In
312 the·cases·of·a·pure·function·(a·function·with·no·side·effects),·the·result·is312 the·cases·of·a·pure·function·(a·function·with·no·side·effects),·the·result·is
313 the·same.·For·a·function·with·side·effects,·the·result·can·be·different.</p><p>The·next·few·commands·show·some·record·manipulation.·It·is·assumed·that·<code·class="inline">ex.erl</code>313 the·same.·For·a·function·with·side·effects,·the·result·can·be·different.</p><p>The·next·few·commands·show·some·record·manipulation.·It·is·assumed·that·<code·class="inline">ex.erl</code>
314 defines·a·record·as·follows:</p><p><code·class="inline">-record(rec,·{a,·b·=·val()}).</code></p><p><code·class="inline">val()·-&gt;</code><br/>    <code·class="inline">3.</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">31&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="2513392774-1">(</span><span·class="ss">ex</span><span·class="p"·data-group-id="2513392774-1">)</span><span·class="p">.</span><span·class="w">314 defines·a·record·as·follows:</p><p><code·class="inline">-record(rec,·{a,·b·=·val()}).</code></p><p><code·class="inline">val()·-&gt;</code><br/>    <code·class="inline">3.</code></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">31&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="9072899979-1">(</span><span·class="ss">ex</span><span·class="p"·data-group-id="9072899979-1">)</span><span·class="p">.</span><span·class="w">
315 </span><span·class="p"·data-group-id="2513392774-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">ex</span><span·class="p"·data-group-id="2513392774-2">}</span><span·class="gp·unselectable">315 </span><span·class="p"·data-group-id="9072899979-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">ex</span><span·class="p"·data-group-id="9072899979-2">}</span><span·class="gp·unselectable">
316 32&gt;·</span><span·class="nf">rr</span><span·class="p"·data-group-id="2513392774-3">(</span><span·class="ss">ex</span><span·class="p"·data-group-id="2513392774-3">)</span><span·class="p">.</span><span·class="w">316 32&gt;·</span><span·class="nf">rr</span><span·class="p"·data-group-id="9072899979-3">(</span><span·class="ss">ex</span><span·class="p"·data-group-id="9072899979-3">)</span><span·class="p">.</span><span·class="w">
317 </span><span·class="p"·data-group-id="2513392774-4">[</span><span·class="ss">rec</span><span·class="p"·data-group-id="2513392774-4">]</span></code></pre><p>Commands·31·and·32·compile·file·<code·class="inline">ex.erl</code>·and·read·the·record·definitions·in317 </span><span·class="p"·data-group-id="9072899979-4">[</span><span·class="ss">rec</span><span·class="p"·data-group-id="9072899979-4">]</span></code></pre><p>Commands·31·and·32·compile·file·<code·class="inline">ex.erl</code>·and·read·the·record·definitions·in
318 <code·class="inline">ex.beam</code>.·If·the·compiler·did·not·output·any·record·definitions·on·the·BEAM318 <code·class="inline">ex.beam</code>.·If·the·compiler·did·not·output·any·record·definitions·on·the·BEAM
319 file,·<code·class="inline">rr(ex)</code>·tries·to·read·record·definitions·from·the·source·file·instead.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">33&gt;·</span><span·class="nf">rl</span><span·class="p"·data-group-id="9380758440-1">(</span><span·class="ss">rec</span><span·class="p"·data-group-id="9380758440-1">)</span><span·class="p">.</span><span·class="w">319 file,·<code·class="inline">rr(ex)</code>·tries·to·read·record·definitions·from·the·source·file·instead.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">33&gt;·</span><span·class="nf">rl</span><span·class="p"·data-group-id="4165740566-1">(</span><span·class="ss">rec</span><span·class="p"·data-group-id="4165740566-1">)</span><span·class="p">.</span><span·class="w">
320 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="9380758440-2">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="p"·data-group-id="9380758440-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·243,·SHA:·cc93f248f55c89753cb0e83fb04cff5a9a5ff091631785ac308fbbf967ce6b6a·...·]-2">)</span><span·class="p">.</span><span·class="w">320 </span><span·class="p">-</span><span·class="na">record</span><span·class="p"·data-group-id="4165740566-2">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="p"·data-group-id="4165740566-3">{</span><span·class="ss">a</span><span·class="p">,</span><span·class="ss">b</span><span·class="w">·</span><span·class="o">=</span><span·cl[·...·truncated·by·diffoscope;·len:·243,·SHA:·fe29a7c067d2d2b977680511248d11e9c48d2bada0feb63136acb47d99617b97·...·]-2">)</span><span·class="p">.</span><span·class="w">
321 </span><span·class="ss">ok</span></code></pre><p>Command·33·prints·the·definition·of·the·record·named·<code·class="inline">rec</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">34&gt;·</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="9135831559-1">{</span><span·class="p"·data-group-id="9135831559-1">}</span><span·class="p">.</span><span·class="w">321 </span><span·class="ss">ok</span></code></pre><p>Command·33·prints·the·definition·of·the·record·named·<code·class="inline">rec</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">34&gt;·</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="4991468705-1">{</span><span·class="p"·data-group-id="4991468705-1">}</span><span·class="p">.</span><span·class="w">
322 </span><span·class="gt">**·exception·error:·undefined·shell·command·val/0</span></code></pre><p>Command·34·tries·to·create·a·<code·class="inline">rec</code>·record,·but·fails·as·function·<code·class="inline">val/0</code>·is322 </span><span·class="gt">**·exception·error:·undefined·shell·command·val/0</span></code></pre><p>Command·34·tries·to·create·a·<code·class="inline">rec</code>·record,·but·fails·as·function·<code·class="inline">val/0</code>·is
323 undefined.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">35&gt;·</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="4375129494-1">{</span><span·class="ss">b</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">3</span><span·class="p"·data-group-id="4375129494-1">}</span><span·class="p">.</span><span·class="w"> 
324 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="4375129494-2">{</span><span·class="ss">a</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="ss">b</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">3</span><span·class="p"·data-group-id="4375129494-2">}</span></code></pre><p>Command·35·shows·the·workaround:·explicitly·assign·values·to·record·fields·that 
325 cannot·otherwise·be·initialized.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">36&gt;·</span><span·class="nf">rp</span><span·class="p"·data-group-id="2850340753-1">(</span><span·class="nf">v</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·177,·SHA:·7997451e8e968b82587669195b2e1dec200b2e978be21a49d8d7c2946f3e9a0a·...·]</span><span·class="p">.</span><span·class="w">323 undefined.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">35&gt;·</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="0286349295-1">{</span><span·class="ss">b</span><span·class="w">·</sp[·...·truncated·by·diffoscope;·len:·122,·SHA:·a20634ae17a7c156921d5be49269e9c444444c09abfe3ce0d10e51dbdc771d6e·...·]</span><span·class="p">.</span><span·class="w">
 324 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="0286349295-2">{</span><span·class="ss">a</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="ss">b</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">3</span><span·class="p"·data-group-id="0286349295-2">}</span></code></pre><p>Command·35·shows·the·workaround:·explicitly·assign·values·to·record·fields·that
 325 cannot·otherwise·be·initialized.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">36&gt;·</span><span·class="nf">rp</span><span·class="p"·data-group-id="1757096153-1">(</span><span·class="nf">v</span><span·class="p"·data-group-id="1757096153-2">(</span><span·class="o">-</span><span·class="mi">1</span><span·class="p"·data-group-id="1757096153-2">)</span><span·class="p"·data-group-id="1757096153-1">)</span><span·class="p">.</span><span·class="w">
326 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="2850340753-3">{</span><span·class="ss">a</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="ss">b</span><span·class="w">·</span><span·class="o">=</span><span·c[·...·truncated·by·diffoscope;·len:·81,·SHA:·84abcff75bc9584b652e5f22053569b99687d93f643c821076552e6a700134a9·...·]53-3">}</span><span·class="w">326 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="1757096153-3">{</span><span·class="ss">a</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="ss">b</span><span·class="w">·</span><span·class="o">=</span><span·c[·...·truncated·by·diffoscope;·len:·81,·SHA:·d48640adfc64d5a8e93eedd9193fc61bbd4a3973a2fa6ea46a87b22354c1b28d·...·]53-3">}</span><span·class="w">
327 </span><span·class="ss">ok</span></code></pre><p>Command·36·prints·the·newly·created·record·using·record·definitions·maintained327 </span><span·class="ss">ok</span></code></pre><p>Command·36·prints·the·newly·created·record·using·record·definitions·maintained
328 by·the·shell.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">37&gt;·</span><span·class="nf">rd</span><span·class="p"·data-group-id="5403245579-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5403245579-2">{</span><span·class="ss">f</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·273,·SHA:·35aecdd4cfdf23a40109dab08a23c08bebee570c066e2909fbdee287cabea8b8·...·]-1">)</span><span·class="p">.</span><span·class="w">328 by·the·shell.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">37&gt;·</span><span·class="nf">rd</span><span·class="p"·data-group-id="9487233756-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9487233756-2">{</span><span·class="ss">f</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cla[·...·truncated·by·diffoscope;·len:·273,·SHA:·304979a2d8f4bc6fc9262f886b8316f66fd6f15b9798e58fe372d89af11c43b6·...·]-1">)</span><span·class="p">.</span><span·class="w">
329 </span><span·class="ss">rec</span></code></pre><p>Command·37·defines·a·record·directly·in·the·shell.·The·definition·replaces·the329 </span><span·class="ss">rec</span></code></pre><p>Command·37·defines·a·record·directly·in·the·shell.·The·definition·replaces·the
330 one·read·from·file·<code·class="inline">ex.beam</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">38&gt;·</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="7303404892-1">{</span><span·class="p"·data-group-id="7303404892-1">}</span><span·class="p">.</span><span·class="w">330 one·read·from·file·<code·class="inline">ex.beam</code>.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">38&gt;·</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="0649833558-1">{</span><span·class="p"·data-group-id="0649833558-1">}</span><span·class="p">.</span><span·class="w">
331 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="7303404892-2">{</span><span·class="ss">f</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7303404892-3">[</span><span·class="p"·data-group-id="7303404892-3">]</span><span·class="p"·data-group-id="7303404892-2">}</span><span·class="w"> 
332 </span><span·class="ss">ok</span></code></pre><p>Command·38·creates·a·record·using·the·new·definition,·and·prints·the·result.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">39&gt;·</span><span·class="nf">rd</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·372,·SHA:·84e9b781f6dad3103af72f019a7e3df6c2bb454eebed9a0d1241c931cdef889e·...·]</span><span·class="w">331 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="0649833558-2">{</span><span·class="ss">f</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0649833558-3">[</span><span·class="p"[·...·truncated·by·diffoscope;·len:·84,·SHA:·de17c62115e73975302dbc80dfc5e5f0d55988d0b2c92b65d2534a7e83149c76·...·]</span><span·class="w">
 332 </span><span·class="ss">ok</span></code></pre><p>Command·38·creates·a·record·using·the·new·definition,·and·prints·the·result.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">39&gt;·</span><span·class="nf">rd</span><span·class="p"·data-group-id="8248309308-1">(</span><span·class="ss">rec</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8248309308-2">{</span><span·class="ss">c</span><span·class="p"·data-group-id="8248309308-2">}</span><span·class="p"·data-group-id="8248309308-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">A</span><span·class="p">.</span><span·class="w">
333 </span><span·class="gt">*·1:15:·variable·&#39;A&#39;·is·unbound</span><span·class="gp·unselectable">333 </span><span·class="gt">*·1:15:·variable·&#39;A&#39;·is·unbound</span><span·class="gp·unselectable">
334 40&gt;·</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="7644260894-3">{</span><span·class="p"·data-group-id="7644260894-3">}</span><span·class="p">.</span><span·class="w">334 40&gt;·</span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="8248309308-3">{</span><span·class="p"·data-group-id="8248309308-3">}</span><span·class="p">.</span><span·class="w">
335 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="7644260894-4">{</span><span·class="ss">c</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p"·data-group-id="7644260894-4">}</span><span·class="w">335 </span><span·class="o">#</span><span·class="ss">rec</span><span·class="p"·data-group-id="8248309308-4">{</span><span·class="ss">c</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p"·data-group-id="8248309308-4">}</span><span·class="w">
Max diff block lines reached; 24082/75379 bytes (31.95%) of diff not shown.
594 B
html2text {}
Max HTML report size reached
4.27 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/shell_default.html
    
Offset 125, 18 lines modifiedOffset 125, 18 lines modified
125 ····<small·class="app-vsn"·translate="no">(stdlib·v6.0.1)</small>125 ····<small·class="app-vsn"·translate="no">(stdlib·v6.0.1)</small>
  
126 ··</h1>126 ··</h1>
  
  
127 ····<section·id="moduledoc">127 ····<section·id="moduledoc">
128 <p>Customizing·the·Erlang·environment.</p><p>The·functions·in·this·module·are·called·when·no·module·name·is·specified·in·a128 <p>Customizing·the·Erlang·environment.</p><p>The·functions·in·this·module·are·called·when·no·module·name·is·specified·in·a
129 shell·command.</p><p>Consider·the·following·shell·dialog:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="3654111874-1">(</span><span·class="s">&quot;abc&quot;</span><span·class="p"·data-group-id="3654111874-1">)</span><span·class="p">.</span><span·class="w">129 shell·command.</p><p>Consider·the·following·shell·dialog:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">reverse</span><span·class="p"·data-group-id="7232372208-1">(</span><span·class="s">&quot;abc&quot;</span><span·class="p"·data-group-id="7232372208-1">)</span><span·class="p">.</span><span·class="w">
130 </span><span·class="s">&quot;cba&quot;</span><span·class="gp·unselectable">130 </span><span·class="s">&quot;cba&quot;</span><span·class="gp·unselectable">
131 2&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="3654111874-2">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="3654111874-2">)</span><span·class="p">.</span><span·class="w">131 2&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="7232372208-2">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="7232372208-2">)</span><span·class="p">.</span><span·class="w">
132 </span><span·class="p"·data-group-id="3654111874-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p"·data-group-id="3654111874-3">}</span></code></pre><p>In·command·one,·module·<a·href="lists.html"><code·class="inline">lists</code></a>·is·called.·In·command·two,·no·module·name·is132 </span><span·class="p"·data-group-id="7232372208-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p"·data-group-id="7232372208-3">}</span></code></pre><p>In·command·one,·module·<a·href="lists.html"><code·class="inline">lists</code></a>·is·called.·In·command·two,·no·module·name·is
133 specified.·The·shell·searches·module·<code·class="inline">user_default</code>·followed·by·module133 specified.·The·shell·searches·module·<code·class="inline">user_default</code>·followed·by·module
134 <code·class="inline">shell_default</code>·for·function·<code·class="inline">c/1</code>.</p><p><code·class="inline">shell_default</code>·is·intended·for·&quot;system·wide&quot;·customizations·to·the·shell.134 <code·class="inline">shell_default</code>·for·function·<code·class="inline">c/1</code>.</p><p><code·class="inline">shell_default</code>·is·intended·for·&quot;system·wide&quot;·customizations·to·the·shell.
135 <code·class="inline">user_default</code>·is·intended·for·&quot;local&quot;·or·individual·user·customizations.</p><h2·id="module-hint"·class="section-heading">135 <code·class="inline">user_default</code>·is·intended·for·&quot;local&quot;·or·individual·user·customizations.</p><h2·id="module-hint"·class="section-heading">
136 ··<a·href="#module-hint"·class="hover-link">136 ··<a·href="#module-hint"·class="hover-link">
137 ····<i·class="ri-link-m"·aria-hidden="true"></i>137 ····<i·class="ri-link-m"·aria-hidden="true"></i>
138 ··</a>138 ··</a>
139 ··<span·class="text">Hint</span>139 ··<span·class="text">Hint</span>
Offset 233, 15 lines modifiedOffset 233, 15 lines modified
233 ······<p·class="built-using">233 ······<p·class="built-using">
234 ········Built·using234 ········Built·using
235 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the235 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
236 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>236 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
237 ······</p>237 ······</p>
238 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>238 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
239 ····</footer>239 ····</footer>
240 ··</div>240 ··</div>
241 </main>241 </main>
242 </div>242 </div>
243 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>243 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
244 <script>244 <script>
245 ··document.addEventListener("DOMContentLoaded",·function·()·{245 ··document.addEventListener("DOMContentLoaded",·function·()·{
595 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/shell_docs.html
    
Offset 1290, 15 lines modifiedOffset 1290, 15 lines modified
1290 ······<p·class="built-using">1290 ······<p·class="built-using">
1291 ········Built·using1291 ········Built·using
1292 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1292 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1293 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1293 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1294 ······</p>1294 ······</p>
1295 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1295 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1296 ····</footer>1296 ····</footer>
1297 ··</div>1297 ··</div>
1298 </main>1298 </main>
1299 </div>1299 </div>
1300 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1300 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1301 <script>1301 <script>
1302 ··document.addEventListener("DOMContentLoaded",·function·()·{1302 ··document.addEventListener("DOMContentLoaded",·function·()·{
620 B
html2text {}
Max HTML report size reached
9.26 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/slave.html
    
Offset 371, 15 lines modifiedOffset 371, 15 lines modified
371 ······</div>371 ······</div>
  
372 <p>Starts·a·number·of·pseudo·servers.·A·pseudo·server·is·a·server·with·a·registered372 <p>Starts·a·number·of·pseudo·servers.·A·pseudo·server·is·a·server·with·a·registered
373 name·that·does·nothing·but·pass·on·all·message·to·the·real·server·that·executes373 name·that·does·nothing·but·pass·on·all·message·to·the·real·server·that·executes
374 at·a·master·node.·A·pseudo·server·is·an·intermediary·that·only·has·the·same374 at·a·master·node.·A·pseudo·server·is·an·intermediary·that·only·has·the·same
375 registered·name·as·the·real·server.</p><p>For·example,·if·you·have·started·a·slave·node·<code·class="inline">N</code>·and·want·to·execute·<code·class="inline">pxw</code>375 registered·name·as·the·real·server.</p><p>For·example,·if·you·have·started·a·slave·node·<code·class="inline">N</code>·and·want·to·execute·<code·class="inline">pxw</code>
376 graphics·code·on·this·node,·you·can·start·server·<code·class="inline">pxw_server</code>·as·a·pseudo·server376 graphics·code·on·this·node,·you·can·start·server·<code·class="inline">pxw_server</code>·as·a·pseudo·server
377 at·the·slave·node.·This·is·illustrated·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">rpc</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="6745647924-1">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">slave</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pseudo</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·462,·SHA:·18b40c97280b9b8201af1db5fbe3c296661a73d378dd59f4cd88ad793cb85ec0·...·]-1">)</span><span·class="p">.</span></code></pre>377 at·the·slave·node.·This·is·illustrated·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">rpc</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="8984366978-1">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">slave</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pseudo</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·462,·SHA:·c50dbc9840dcd356806bbe74b197a6aafdb5636f269aa2778f3e451401fce3f2·...·]-1">)</span><span·class="p">.</span></code></pre>
378 ··</section>378 ··</section>
379 </section>379 </section>
380 <section·class="detail"·id="relay/1">380 <section·class="detail"·id="relay/1">
  
381 ··<div·class="detail-header">381 ··<div·class="detail-header">
382 ····<a·href="#relay/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">382 ····<a·href="#relay/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
383 ······<i·class="ri-link-m"·aria-hidden="true"></i>383 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 525, 17 lines modifiedOffset 525, 17 lines modified
525 as·fully·qualified·names;·short·names·can·also·be·used.·This·is·the·same525 as·fully·qualified·names;·short·names·can·also·be·used.·This·is·the·same
526 condition·that·applies·to·names·of·distributed·Erlang·nodes.</p><p>The·name·of·the·started·node·becomes·<code·class="inline">Name@Host</code>.</p><p>The·slave·node·resets·its·<a·href="io.html#t:user/0"><code·class="inline">io:user/0</code></a>·process·so·that·all·terminal·I/O·that·is526 condition·that·applies·to·names·of·distributed·Erlang·nodes.</p><p>The·name·of·the·started·node·becomes·<code·class="inline">Name@Host</code>.</p><p>The·slave·node·resets·its·<a·href="io.html#t:user/0"><code·class="inline">io:user/0</code></a>·process·so·that·all·terminal·I/O·that·is
527 produced·at·the·slave·is·automatically·relayed·to·the·master.·Also,·the·file527 produced·at·the·slave·is·automatically·relayed·to·the·master.·Also,·the·file
528 server·is·relayed·to·the·master.</p><p>Argument·<code·class="inline">Args</code>·is·used·to·set·<code·class="inline">erl</code>·command-line·arguments.·It·is528 server·is·relayed·to·the·master.</p><p>Argument·<code·class="inline">Args</code>·is·used·to·set·<code·class="inline">erl</code>·command-line·arguments.·It·is
529 passed·to·the·new·node·and·can·be·used·for·a·variety·of·purposes;·see529 passed·to·the·new·node·and·can·be·used·for·a·variety·of·purposes;·see
530 <a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html"><code·class="inline">erl(1)</code></a>.</p><p>As·an·example,·suppose·that·you·want·to·start·a·slave·node·at·host·<code·class="inline">H</code>·with·node530 <a·href="../../../../erts-15.0.1/doc/html/erl_cmd.html"><code·class="inline">erl(1)</code></a>.</p><p>As·an·example,·suppose·that·you·want·to·start·a·slave·node·at·host·<code·class="inline">H</code>·with·node
531 name·<code·class="inline">Name@H</code>·and·want·the·slave·node·to·have·the·following·properties:</p><ul><li>Directory·<code·class="inline">Dir</code>·is·to·be·added·to·the·code·path.</li><li>The·Mnesia·directory·is·to·be·set·to·<code·class="inline">M</code>.</li><li>The·Unix·<code·class="inline">DISPLAY</code>·environment·variable·is·to·be·set·to·the·display·of·the531 name·<code·class="inline">Name@H</code>·and·want·the·slave·node·to·have·the·following·properties:</p><ul><li>Directory·<code·class="inline">Dir</code>·is·to·be·added·to·the·code·path.</li><li>The·Mnesia·directory·is·to·be·set·to·<code·class="inline">M</code>.</li><li>The·Unix·<code·class="inline">DISPLAY</code>·environment·variable·is·to·be·set·to·the·display·of·the
532 master·node.</li></ul><p>The·following·code·is·executed·to·achieve·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;·-env·DISPLAY·&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="nc">net_adm</span><span·class="p">:</span><span·class="nf">localhost</span><span·class="p"·data-group-id="4314237378-1">(</span><span·class="p"·data-group-id="4314237378-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;:0·&quot;</span><span·class="p">,</span><span·class="w">532 master·node.</li></ul><p>The·following·code·is·executed·to·achieve·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;·-env·DISPLAY·&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="nc">net_adm</span><span·class="p">:</span><span·class="nf">localhost</span><span·class="p"·data-group-id="7629383252-1">(</span><span·class="p"·data-group-id="7629383252-1">)</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;:0·&quot;</span><span·class="p">,</span><span·class="w">
533 </span><span·class="n">Arg</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;-mnesia_dir·&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;·-pa·&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="n">E</span><span·class="p">,</span><span·class="w">533 </span><span·class="n">Arg</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;-mnesia_dir·&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="n">M</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="s">&quot;·-pa·&quot;</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="n">Dir</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="n">E</span><span·class="p">,</span><span·class="w">
534 </span><span·class="nc">slave</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="4314237378-2">(</span><span·class="n">H</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arg</span><span·class="p"·data-group-id="4314237378-2">)</span><span·class="p">.</span></code></pre><p>The·function·returns·<code·class="inline">{ok,·Node}</code>,·where·<code·class="inline">Node</code>·is·the·name·of·the·new·node,534 </span><span·class="nc">slave</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7629383252-2">(</span><span·class="n">H</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Arg</span><span·class="p"·data-group-id="7629383252-2">)</span><span·class="p">.</span></code></pre><p>The·function·returns·<code·class="inline">{ok,·Node}</code>,·where·<code·class="inline">Node</code>·is·the·name·of·the·new·node,
535 otherwise·<code·class="inline">{error,·Reason}</code>,·where·<code·class="inline">Reason</code>·can·be·one·of:</p><ul><li><p><strong><code·class="inline">timeout</code></strong>·-·The·master·node·failed·to·get·in·contact·with·the·slave·node.535 otherwise·<code·class="inline">{error,·Reason}</code>,·where·<code·class="inline">Reason</code>·can·be·one·of:</p><ul><li><p><strong><code·class="inline">timeout</code></strong>·-·The·master·node·failed·to·get·in·contact·with·the·slave·node.
536 This·can·occur·in·a·number·of·circumstances:</p><ul><li>Erlang/OTP·is·not·installed·on·the·remote·host.</li><li>The·file·system·on·the·other·host·has·a·different·structure·to·the·the536 This·can·occur·in·a·number·of·circumstances:</p><ul><li>Erlang/OTP·is·not·installed·on·the·remote·host.</li><li>The·file·system·on·the·other·host·has·a·different·structure·to·the·the
537 master.</li><li>The·Erlang·nodes·have·different·cookies.</li></ul></li><li><p><strong><code·class="inline">no_rsh</code></strong>·-·No·remote·shell·program·was·found·on·the·computer.·Note·that537 master.</li><li>The·Erlang·nodes·have·different·cookies.</li></ul></li><li><p><strong><code·class="inline">no_rsh</code></strong>·-·No·remote·shell·program·was·found·on·the·computer.·Note·that
538 <code·class="inline">ssh</code>·is·used·by·default,·but·this·can·be·overridden·with·the·<code·class="inline">-rsh</code>·flag.</p></li><li><p><strong><code·class="inline">{already_running,·Node}</code></strong>·-·A·node·with·name·<code·class="inline">Name@Host</code>·already·exists.</p></li></ul>538 <code·class="inline">ssh</code>·is·used·by·default,·but·this·can·be·overridden·with·the·<code·class="inline">-rsh</code>·flag.</p></li><li><p><strong><code·class="inline">{already_running,·Node}</code></strong>·-·A·node·with·name·<code·class="inline">Name@Host</code>·already·exists.</p></li></ul>
539 ··</section>539 ··</section>
540 </section>540 </section>
541 <section·class="detail"·id="start_link/1">541 <section·class="detail"·id="start_link/1">
Offset 706, 15 lines modifiedOffset 706, 15 lines modified
706 ······<p·class="built-using">706 ······<p·class="built-using">
707 ········Built·using707 ········Built·using
708 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the708 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
709 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>709 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
710 ······</p>710 ······</p>
711 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>711 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
712 ····</footer>712 ····</footer>
713 ··</div>713 ··</div>
714 </main>714 </main>
715 </div>715 </div>
716 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>716 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
717 <script>717 <script>
718 ··document.addEventListener("DOMContentLoaded",·function·()·{718 ··document.addEventListener("DOMContentLoaded",·function·()·{
568 B
html2text {}
Max HTML report size reached
393 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/sofs.html
Max HTML report size reached
3.97 MB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/stdlib.epub
13.0 KB
zipinfo {}
Max HTML report size reached
296 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
32.8 KB
OEBPS/zip.xhtml
Max HTML report size reached
38.6 KB
OEBPS/uri_string_usage.xhtml
Max HTML report size reached
81.9 KB
OEBPS/uri_string.xhtml
Max HTML report size reached
150 KB
OEBPS/unicode_usage.xhtml
Max HTML report size reached
33.5 KB
OEBPS/unicode.xhtml
Max HTML report size reached
19.3 KB
OEBPS/timer.xhtml
Max HTML report size reached
12.9 KB
OEBPS/supervisor.xhtml
Max HTML report size reached
139 KB
OEBPS/string.xhtml
Max HTML report size reached
8.32 KB
OEBPS/stdlib_app.xhtml
Max HTML report size reached
391 KB
OEBPS/sofs.xhtml
Max HTML report size reached
7.92 KB
OEBPS/slave.xhtml
Max HTML report size reached
2.9 KB
OEBPS/shell_default.xhtml
Max HTML report size reached
73.0 KB
OEBPS/shell.xhtml
Max HTML report size reached
6.99 KB
OEBPS/sets.xhtml
Max HTML report size reached
108 KB
OEBPS/re.xhtml
Max HTML report size reached
4.17 KB
OEBPS/random.xhtml
Max HTML report size reached
28.0 KB
OEBPS/rand.xhtml
Max HTML report size reached
159 KB
OEBPS/queue.xhtml
Max HTML report size reached
216 KB
OEBPS/qlc.xhtml
Max HTML report size reached
30.4 KB
OEBPS/proplists.xhtml
Max HTML report size reached
18.8 KB
OEBPS/proc_lib.xhtml
Max HTML report size reached
90.2 KB
OEBPS/peer.xhtml
Max HTML report size reached
123 KB
OEBPS/orddict.xhtml
Max HTML report size reached
24.3 KB
OEBPS/notes.xhtml
Max HTML report size reached
140 KB
OEBPS/ms_transform.xhtml
Max HTML report size reached
204 KB
OEBPS/maps.xhtml
Max HTML report size reached
164 KB
OEBPS/lists.xhtml
Max HTML report size reached
28.7 KB
OEBPS/json.xhtml
Max HTML report size reached
184 KB
OEBPS/io_protocol.xhtml
Max HTML report size reached
13.2 KB
OEBPS/io_lib.xhtml
Max HTML report size reached
366 KB
OEBPS/io.xhtml
Max HTML report size reached
56.5 KB
OEBPS/gen_statem.xhtml
Max HTML report size reached
11.9 KB
OEBPS/gen_server.xhtml
Max HTML report size reached
77.9 KB
OEBPS/gen_fsm.xhtml
Max HTML report size reached
11.9 KB
OEBPS/gen_event.xhtml
Max HTML report size reached
83.2 KB
OEBPS/filename.xhtml
Max HTML report size reached
5.99 KB
OEBPS/filelib.xhtml
Max HTML report size reached
18.7 KB
OEBPS/file_sorter.xhtml
Max HTML report size reached
119 KB
OEBPS/ets.xhtml
Max HTML report size reached
70.8 KB
OEBPS/escript.xhtml
Max HTML report size reached
13.1 KB
OEBPS/erl_tar.xhtml
Max HTML report size reached
2.35 KB
OEBPS/erl_scan.xhtml
Max HTML report size reached
2.49 KB
OEBPS/erl_parse.xhtml
Max HTML report size reached
2.34 KB
OEBPS/erl_lint.xhtml
Max HTML report size reached
8.31 KB
OEBPS/erl_eval.xhtml
Max HTML report size reached
25.7 KB
OEBPS/erl_error.xhtml
Max HTML report size reached
2.74 KB
OEBPS/epp.xhtml
Max HTML report size reached
19.4 KB
OEBPS/dict.xhtml
Max HTML report size reached
25.2 KB
OEBPS/dets.xhtml
Max HTML report size reached
1.22 KB
OEBPS/content.opf
1.19 KB
OEBPS/content.opf
Max HTML report size reached
12.1 KB
OEBPS/calendar.xhtml
Max HTML report size reached
2.09 KB
OEBPS/c.xhtml
Max HTML report size reached
92.3 KB
OEBPS/binary.xhtml
Max HTML report size reached
25.2 KB
OEBPS/beam_lib.xhtml
Max HTML report size reached
8.29 KB
OEBPS/base64.xhtml
Max HTML report size reached
7.17 KB
OEBPS/assert_hrl.xhtml
Max HTML report size reached
24.9 KB
OEBPS/array.xhtml
Max HTML report size reached
125 KB
OEBPS/argparse.xhtml
Max HTML report size reached
9.78 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/stdlib_app.html
    
Offset 157, 21 lines modifiedOffset 157, 21 lines modified
157 string·and·returns·a·formatted·expressions·as·a·string.·See157 string·and·returns·a·formatted·expressions·as·a·string.·See
158 <a·href="shell.html#format_shell_func/1"><code·class="inline">shell:format_shell_func/1</code></a>·for·how·to·set·it·from·inside·the·shell.</p><p>If·instead·a·string·is·provided,·it·will·be·used·as·a·shell·command.·Your158 <a·href="shell.html#format_shell_func/1"><code·class="inline">shell:format_shell_func/1</code></a>·for·how·to·set·it·from·inside·the·shell.</p><p>If·instead·a·string·is·provided,·it·will·be·used·as·a·shell·command.·Your
159 command·must·include·<code·class="inline">${file}</code>·somewhere·in·the·string,·for·the·shell·to·know159 command·must·include·<code·class="inline">${file}</code>·somewhere·in·the·string,·for·the·shell·to·know
160 where·the·file·goes·in·the·command.</p><pre><code·class="text">-stdlib·format_shell_func·&quot;\&quot;emacs·-batch·\${file}·-l·~/erlang-format/emacs-format-file·-f·emacs-format-function\&quot;&quot;</code></pre><pre><code·class="text">-stdlib·format_shell_func·&quot;{shell,·erl_pp_format_func}&quot;</code></pre></li><li><p><strong><code·class="inline"·id="shell_prompt_func">shell_prompt_func·=·{Mod,·Func}·|·default</code></strong>·-·where</p><ul><li><code·class="inline">Mod·=·atom()</code></li><li><code·class="inline">Func·=·atom()</code></li></ul><p>Can·be·used·to·set·a·customized·Erlang·shell·prompt·function.</p></li><li><p><strong><code·class="inline"·id="shell_multiline_prompt">shell_multiline_prompt·=·{Mod,·Func}·|·string()·|·default</code></strong>·-·where</p><ul><li><code·class="inline">Mod·=·atom()</code></li><li><code·class="inline">Func·=·atom()</code></li></ul><p>Can·be·used·to·set·a·customized·multiline·shell·prompt·function.·The·multiline160 where·the·file·goes·in·the·command.</p><pre><code·class="text">-stdlib·format_shell_func·&quot;\&quot;emacs·-batch·\${file}·-l·~/erlang-format/emacs-format-file·-f·emacs-format-function\&quot;&quot;</code></pre><pre><code·class="text">-stdlib·format_shell_func·&quot;{shell,·erl_pp_format_func}&quot;</code></pre></li><li><p><strong><code·class="inline"·id="shell_prompt_func">shell_prompt_func·=·{Mod,·Func}·|·default</code></strong>·-·where</p><ul><li><code·class="inline">Mod·=·atom()</code></li><li><code·class="inline">Func·=·atom()</code></li></ul><p>Can·be·used·to·set·a·customized·Erlang·shell·prompt·function.</p></li><li><p><strong><code·class="inline"·id="shell_multiline_prompt">shell_multiline_prompt·=·{Mod,·Func}·|·string()·|·default</code></strong>·-·where</p><ul><li><code·class="inline">Mod·=·atom()</code></li><li><code·class="inline">Func·=·atom()</code></li></ul><p>Can·be·used·to·set·a·customized·multiline·shell·prompt·function.·The·multiline
161 prompt·function·takes·the·main·prompt·as·its·only·parameter.</p></li><li><p><strong><code·class="inline"·id="shell_saved_results">shell_saved_results·=·integer()·&gt;=·0</code></strong>·-·Can·be161 prompt·function·takes·the·main·prompt·as·its·only·parameter.</p></li><li><p><strong><code·class="inline"·id="shell_saved_results">shell_saved_results·=·integer()·&gt;=·0</code></strong>·-·Can·be
162 used·to·determine·how·many·results·are·saved·by·the·Erlang·shell.</p></li><li><p><strong><code·class="inline"·id="shell_session_slogan">shell_session_slogan·=·string()·|·fun()·-&gt;·string())</code></strong>·-·The·slogan·printed·when·starting·an·Erlang·shell.162 used·to·determine·how·many·results·are·saved·by·the·Erlang·shell.</p></li><li><p><strong><code·class="inline"·id="shell_session_slogan">shell_session_slogan·=·string()·|·fun()·-&gt;·string())</code></strong>·-·The·slogan·printed·when·starting·an·Erlang·shell.
163 Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">stdlib</span><span·class="w">·</span><span·class="ss">shell_session_slogan</span><span·class="w">·</span><span·class="ss">&#39;&quot;Test·slogan&quot;&#39;</span><span·class="w">163 Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">stdlib</span><span·class="w">·</span><span·class="ss">shell_session_slogan</span><span·class="w">·</span><span·class="ss">&#39;&quot;Test·slogan&quot;&#39;</span><span·class="w">
164 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">26</span><span·class="w">·</span><span·class="p"·data-group-id="5821433037-1">[</span><span·class="n">DEVELOPMENT</span><span·class="p"·data-group-id="5821433037-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="5821433037-2">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">1[·...·truncated·by·diffoscope;·len:·1496,·SHA:·ea466958b2b54daad6613ada41fc0094f87c9de6f81634a5cde1451b5b6f0170·...·]-8">]</span><span·class="w">164 </span><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">26</span><span·class="w">·</span><span·class="p"·data-group-id="0784122342-1">[</span><span·class="n">DEVELOPMENT</span><span·class="p"·data-group-id="0784122342-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="0784122342-2">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">1[·...·truncated·by·diffoscope;·len:·1496,·SHA:·b965839f67c53cd7d09175dbbd2b170518eaece772acd1b772c1c601e38a0db2·...·]-8">]</span><span·class="w">
  
165 </span><span·class="n">Test</span><span·class="w">·</span><span·class="ss">slogan</span><span·class="w">165 </span><span·class="n">Test</span><span·class="w">·</span><span·class="ss">slogan</span><span·class="w">
166 </span><span·class="mi">1</span><span·class="o">&gt;</span></code></pre></li><li><p><strong><code·class="inline"·id="shell_slogan">shell_slogan·=·string()·|·fun(()·-&gt;·string())</code></strong>·-·The166 </span><span·class="mi">1</span><span·class="o">&gt;</span></code></pre></li><li><p><strong><code·class="inline"·id="shell_slogan">shell_slogan·=·string()·|·fun(()·-&gt;·string())</code></strong>·-·The
167 slogan·printed·when·starting·the·Erlang·shell·subsystem.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">stdlib</span><span·class="w">·</span><span·class="ss">shell_slogan</span><span·class="w">·</span><span·class="ss">&#39;&quot;Test·slogan&quot;&#39;</span><span·class="w">167 slogan·printed·when·starting·the·Erlang·shell·subsystem.·Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">-</span><span·class="ss">stdlib</span><span·class="w">·</span><span·class="ss">shell_slogan</span><span·class="w">·</span><span·class="ss">&#39;&quot;Test·slogan&quot;&#39;</span><span·class="w">
168 </span><span·class="n">Test</span><span·class="w">·</span><span·class="ss">slogan</span><span·class="w">168 </span><span·class="n">Test</span><span·class="w">·</span><span·class="ss">slogan</span><span·class="w">
169 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V13</span><span·class="p">.</span><span·class="mf">0.2</span><span·class="w">··</span><span·class="p"·data-group-id="2901279289-1">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="2901279289-1">)</span><span·class="w">169 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V13</span><span·class="p">.</span><span·class="mf">0.2</span><span·class="w">··</span><span·class="p"·data-group-id="0415439201-1">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="0415439201-1">)</span><span·class="w">
170 </span><span·class="mi">1</span><span·class="o">&gt;</span></code></pre><p>The·default·is·the·return·value·of170 </span><span·class="mi">1</span><span·class="o">&gt;</span></code></pre><p>The·default·is·the·return·value·of
171 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#system_info_system_version"><code·class="inline">erlang:system_info(system_version)</code></a>.</p></li><li><p><strong><code·class="inline"·id="shell_strings">shell_strings·=·boolean()</code></strong>·-·Can·be·used·to·determine171 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#system_info_system_version"><code·class="inline">erlang:system_info(system_version)</code></a>.</p></li><li><p><strong><code·class="inline"·id="shell_strings">shell_strings·=·boolean()</code></strong>·-·Can·be·used·to·determine
172 how·the·Erlang·shell·outputs·lists·of·integers.</p></li></ul><h2·id="see-also"·class="section-heading">172 how·the·Erlang·shell·outputs·lists·of·integers.</p></li></ul><h2·id="see-also"·class="section-heading">
173 ··<a·href="#see-also"·class="hover-link">173 ··<a·href="#see-also"·class="hover-link">
174 ····<i·class="ri-link-m"·aria-hidden="true"></i>174 ····<i·class="ri-link-m"·aria-hidden="true"></i>
175 ··</a>175 ··</a>
176 ··<span·class="text">See·Also</span>176 ··<span·class="text">See·Also</span>
Offset 223, 15 lines modifiedOffset 223, 15 lines modified
223 ······<p·class="built-using">223 ······<p·class="built-using">
224 ········Built·using224 ········Built·using
225 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the225 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
226 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>226 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
227 ······</p>227 ······</p>
228 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>228 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
229 ····</footer>229 ····</footer>
230 ··</div>230 ··</div>
231 </main>231 </main>
232 </div>232 </div>
233 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>233 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
234 <script>234 <script>
235 ··document.addEventListener("DOMContentLoaded",·function·()·{235 ··document.addEventListener("DOMContentLoaded",·function·()·{
682 B
html2text {}
Max HTML report size reached
141 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/string.html
    
Offset 145, 22 lines modifiedOffset 145, 22 lines modified
145 <a·href="#replace/3"><code·class="inline">replace/3</code></a>,·<a·href="#split/2"><code·class="inline">split/2</code></a>,·<a·href="#split/3"><code·class="inline">split/3</code></a>·and·<a·href="#trim/3"><code·class="inline">trim/3</code></a>.</p><p>Splitting·and·appending·strings·is·to·be·done·on·grapheme·clusters·borders.145 <a·href="#replace/3"><code·class="inline">replace/3</code></a>,·<a·href="#split/2"><code·class="inline">split/2</code></a>,·<a·href="#split/3"><code·class="inline">split/3</code></a>·and·<a·href="#trim/3"><code·class="inline">trim/3</code></a>.</p><p>Splitting·and·appending·strings·is·to·be·done·on·grapheme·clusters·borders.
146 There·is·no·verification·that·the·results·of·appending·strings·are·valid·or146 There·is·no·verification·that·the·results·of·appending·strings·are·valid·or
147 normalized.</p><p>Most·of·the·functions·expect·all·input·to·be·normalized·to·one·form,·see·for147 normalized.</p><p>Most·of·the·functions·expect·all·input·to·be·normalized·to·one·form,·see·for
148 example·<a·href="unicode.html#characters_to_nfc_list/1"><code·class="inline">unicode:characters_to_nfc_list/1</code></a>.</p><p>Language·or·locale·specific·handling·of·input·is·not·considered·in·any·function.</p><p>The·functions·can·crash·for·non-valid·input·strings.·For·example,·the·functions148 example·<a·href="unicode.html#characters_to_nfc_list/1"><code·class="inline">unicode:characters_to_nfc_list/1</code></a>.</p><p>Language·or·locale·specific·handling·of·input·is·not·considered·in·any·function.</p><p>The·functions·can·crash·for·non-valid·input·strings.·For·example,·the·functions
149 expect·UTF-8·binaries·but·not·all·functions·verify·that·all·binaries·are·encoded149 expect·UTF-8·binaries·but·not·all·functions·verify·that·all·binaries·are·encoded
150 correctly.</p><p>Unless·otherwise·specified·the·return·value·type·is·the·same·as·the·input·type.150 correctly.</p><p>Unless·otherwise·specified·the·return·value·type·is·the·same·as·the·input·type.
151 That·is,·binary·input·returns·binary·output,·list·input·returns·a·list·output,151 That·is,·binary·input·returns·binary·output,·list·input·returns·a·list·output,
152 and·mixed·input·can·return·a·mixed·output.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">trim</span><span·class="p"·data-group-id="4615740995-1">(</span><span·class="s">&quot;··sarah··&quot;</span><span·class="p"·data-group-id="4615740995-1">)</span><span·class="p">.</span><span·class="w">152 and·mixed·input·can·return·a·mixed·output.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">trim</span><span·class="p"·data-group-id="8336538912-1">(</span><span·class="s">&quot;··sarah··&quot;</span><span·class="p"·data-group-id="8336538912-1">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="s">&quot;sarah&quot;</span><span·class="gp·unselectable">153 </span><span·class="s">&quot;sarah&quot;</span><span·class="gp·unselectable">
154 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">trim</span><span·class="p"·data-group-id="4615740995-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;··sarah··&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="4615740995-2">)</span><span·class="p">.</span><span·class="w">154 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">trim</span><span·class="p"·data-group-id="8336538912-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;··sarah··&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8336538912-2">)</span><span·class="p">.</span><span·class="w">
155 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;sarah&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">155 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;sarah&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
156 3&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">lexemes</span><span·class="p"·data-group-id="4615740995-3">(</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;·&quot;</span><span·class="p"·data-group-id="4615740995-3">)</span><span·class="p">.</span><span·class="w">156 3&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">lexemes</span><span·class="p"·data-group-id="8336538912-3">(</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;·&quot;</span><span·class="p"·data-group-id="8336538912-3">)</span><span·class="p">.</span><span·class="w">
157 </span><span·class="p"·data-group-id="4615740995-4">[</span><span·class="s">&quot;foo&quot;</span><span·class="p">,</span><span·class="s">&quot;bar&quot;</span><span·class="p"·data-group-id="4615740995-4">]</span><span·class="gp·unselectable">157 </span><span·class="p"·data-group-id="8336538912-4">[</span><span·class="s">&quot;foo&quot;</span><span·class="p">,</span><span·class="s">&quot;bar&quot;</span><span·class="p"·data-group-id="8336538912-4">]</span><span·class="gp·unselectable">
158 4&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">lexemes</span><span·class="p"·data-group-id="4615740995-5">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;·&quot;</span><span·class="p"·data-group-id="4615740995-5">)</span><span·class="p">.</span><span·class="w">158 4&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">lexemes</span><span·class="p"·data-group-id="8336538912-5">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;·&quot;</span><span·class="p"·data-group-id="8336538912-5">)</span><span·class="p">.</span><span·class="w">
159 </span><span·class="p"·data-group-id="4615740995-6">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;bar&quot;</span><span·class="p">&gt;&gt;</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·fe95483c5b42c15ac88f4c9601c4ab8a443a794fa496b3cda949d6e8e030bbe0·...·]-6">]</span></code></pre><p>This·module·has·been·reworked·in·Erlang/OTP·20·to·handle·<a·href="unicode.html#t:chardata/0"><code·class="inline">unicode:chardata/0</code></a>159 </span><span·class="p"·data-group-id="8336538912-6">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;bar&quot;</span><span·class="p">&gt;&gt;</span><span·clas[·...·truncated·by·diffoscope;·len:·31,·SHA:·a7c5f056f61e0e66658065fdebd6165ee8da10d8f8d05e806f7b459c064acbbd·...·]-6">]</span></code></pre><p>This·module·has·been·reworked·in·Erlang/OTP·20·to·handle·<a·href="unicode.html#t:chardata/0"><code·class="inline">unicode:chardata/0</code></a>
160 and·operate·on·grapheme·clusters.·The160 and·operate·on·grapheme·clusters.·The
161 <a·href="string.html#obsolete-api-functions"><code·class="inline">old·functions</code></a>·that·only·work·on·Latin-1161 <a·href="string.html#obsolete-api-functions"><code·class="inline">old·functions</code></a>·that·only·work·on·Latin-1
162 lists·as·input·are·still·available·but·should·not·be·used,·they·will·be162 lists·as·input·are·still·available·but·should·not·be·used,·they·will·be
163 deprecated·in·a·future·release.</p><h2·id="module-notes"·class="section-heading">163 deprecated·in·a·future·release.</p><h2·id="module-notes"·class="section-heading">
164 ··<a·href="#module-notes"·class="hover-link">164 ··<a·href="#module-notes"·class="hover-link">
165 ····<i·class="ri-link-m"·aria-hidden="true"></i>165 ····<i·class="ri-link-m"·aria-hidden="true"></i>
166 ··</a>166 ··</a>
Offset 1068, 15 lines modifiedOffset 1068, 15 lines modified
  
1068 ··········<pre·translate="no"><span·class="attribute">-spec</span>·casefold(String·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>())·->·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>().</pre>1068 ··········<pre·translate="no"><span·class="attribute">-spec</span>·casefold(String·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>())·->·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>().</pre>
  
1069 ······</div>1069 ······</div>
  
1070 <p>Converts·<code·class="inline">String</code>·to·a·case-agnostic·comparable·string.·Function1070 <p>Converts·<code·class="inline">String</code>·to·a·case-agnostic·comparable·string.·Function
1071 <a·href="#casefold/1"><code·class="inline">casefold/1</code></a>·is·preferred·over·<a·href="#lowercase/1"><code·class="inline">lowercase/1</code></a>1071 <a·href="#casefold/1"><code·class="inline">casefold/1</code></a>·is·preferred·over·<a·href="#lowercase/1"><code·class="inline">lowercase/1</code></a>
1072 when·two·strings·are·to·be·compared·for·equality.·See·also·<a·href="#equal/4"><code·class="inline">equal/4</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">casefold</span><span·class="p"·data-group-id="6487418015-1">(</span><span·class="s">&quot;Ω·and··SHARP·S&quot;</span><span·class="p"·data-group-id="6487418015-1">)</span><span·class="p">.</span><span·class="w">1072 when·two·strings·are·to·be·compared·for·equality.·See·also·<a·href="#equal/4"><code·class="inline">equal/4</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">casefold</span><span·class="p"·data-group-id="6413483211-1">(</span><span·class="s">&quot;Ω·and··SHARP·S&quot;</span><span·class="p"·data-group-id="6413483211-1">)</span><span·class="p">.</span><span·class="w">
1073 </span><span·class="s">&quot;ω·and·ss·sharp·s&quot;</span></code></pre>1073 </span><span·class="s">&quot;ω·and·ss·sharp·s&quot;</span></code></pre>
1074 ··</section>1074 ··</section>
1075 </section>1075 </section>
1076 <section·class="detail"·id="chomp/1">1076 <section·class="detail"·id="chomp/1">
  
1077 ··<div·class="detail-header">1077 ··<div·class="detail-header">
1078 ····<a·href="#chomp/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1078 ····<a·href="#chomp/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1100, 17 lines modifiedOffset 1100, 17 lines modified
1100 ······<div·class="specs">1100 ······<div·class="specs">
  
1101 ··········<pre·translate="no"><span·class="attribute">-spec</span>·chomp(String·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>())·->·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>().</pre>1101 ··········<pre·translate="no"><span·class="attribute">-spec</span>·chomp(String·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>())·->·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>().</pre>
  
1102 ······</div>1102 ······</div>
  
1103 <p>Returns·a·string·where·any·trailing·<code·class="inline">\n</code>·or·<code·class="inline">\r\n</code>·have·been·removed·from1103 <p>Returns·a·string·where·any·trailing·<code·class="inline">\n</code>·or·<code·class="inline">\r\n</code>·have·been·removed·from
1104 <code·class="inline">String</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">182&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">chomp</span><span·class="p"·data-group-id="9432118683-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;\nHello\n\n&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="9432118683-1">)</span><span·class="p">.</span><span·class="w">1104 <code·class="inline">String</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">182&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">chomp</span><span·class="p"·data-group-id="9794753484-1">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;\nHello\n\n&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="9794753484-1">)</span><span·class="p">.</span><span·class="w">
1105 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;\nHello&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">1105 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;\nHello&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
1106 183&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">chomp</span><span·class="p"·data-group-id="9432118683-2">(</span><span·class="s">&quot;\nHello\r\r\n&quot;</span><span·class="p"·data-group-id="9432118683-2">)</span><span·class="p">.</span><span·class="w">1106 183&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">chomp</span><span·class="p"·data-group-id="9794753484-2">(</span><span·class="s">&quot;\nHello\r\r\n&quot;</span><span·class="p"·data-group-id="9794753484-2">)</span><span·class="p">.</span><span·class="w">
1107 </span><span·class="s">&quot;\nHello\r&quot;</span></code></pre>1107 </span><span·class="s">&quot;\nHello\r&quot;</span></code></pre>
1108 ··</section>1108 ··</section>
1109 </section>1109 </section>
1110 <section·class="detail"·id="equal/2">1110 <section·class="detail"·id="equal/2">
  
1111 ··<div·class="detail-header">1111 ··<div·class="detail-header">
1112 ····<a·href="#equal/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1112 ····<a·href="#equal/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1203, 19 lines modifiedOffset 1203, 19 lines modified
  
1203 <p>Returns·<code·class="inline">true</code>·if·<code·class="inline">A</code>·and·<code·class="inline">B</code>·are·equal,·otherwise·<code·class="inline">false</code>.</p><p>If·<code·class="inline">IgnoreCase</code>·is·<code·class="inline">true</code>·the·function·does·<a·href="#casefold/1"><code·class="inline">casefold</code>ing</a>·on·the1203 <p>Returns·<code·class="inline">true</code>·if·<code·class="inline">A</code>·and·<code·class="inline">B</code>·are·equal,·otherwise·<code·class="inline">false</code>.</p><p>If·<code·class="inline">IgnoreCase</code>·is·<code·class="inline">true</code>·the·function·does·<a·href="#casefold/1"><code·class="inline">casefold</code>ing</a>·on·the
1204 fly·before·the·equality·test.</p><p>If·<code·class="inline">Norm</code>·is·not·<code·class="inline">none</code>·the·function·applies·normalization·on·the·fly·before·the1204 fly·before·the·equality·test.</p><p>If·<code·class="inline">Norm</code>·is·not·<code·class="inline">none</code>·the·function·applies·normalization·on·the·fly·before·the
1205 equality·test.·There·are·four·available·normalization·forms:1205 equality·test.·There·are·four·available·normalization·forms:
1206 <a·href="unicode.html#characters_to_nfc_list/1"><code·class="inline">nfc</code></a>,1206 <a·href="unicode.html#characters_to_nfc_list/1"><code·class="inline">nfc</code></a>,
1207 <a·href="unicode.html#characters_to_nfd_list/1"><code·class="inline">nfd</code></a>,1207 <a·href="unicode.html#characters_to_nfd_list/1"><code·class="inline">nfd</code></a>,
1208 <a·href="unicode.html#characters_to_nfkc_list/1"><code·class="inline">nfkc</code></a>,·and1208 <a·href="unicode.html#characters_to_nfkc_list/1"><code·class="inline">nfkc</code></a>,·and
1209 <a·href="unicode.html#characters_to_nfkd_list/1"><code·class="inline">nfkd</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">equal</span><span·class="p"·data-group-id="4347372921-1">(</span><span·class="s">&quot;åäö&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·f6cfd432c80d73b9dd70d98b78a5fddde2f2f42edd1e829333608b2ac81f956a·...·]-1">)</span><span·class="p">.</span><span·class="w">1209 <a·href="unicode.html#characters_to_nfkd_list/1"><code·class="inline">nfkd</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">equal</span><span·class="p"·data-group-id="4352291203-1">(</span><span·class="s">&quot;åäö&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·ddd5e6ccaa8c95f5cc2909eb54680592ca649635324bb24f159bb9b4c7335823·...·]-1">)</span><span·class="p">.</span><span·class="w">
1210 </span><span·class="ss">true</span><span·class="gp·unselectable">1210 </span><span·class="ss">true</span><span·class="gp·unselectable">
1211 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">equal</span><span·class="p"·data-group-id="4347372921-2">(</span><span·class="s">&quot;åäö&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfd_binary</span><span·class="p"·data-group-id="4347372921-3">(<[·...·truncated·by·diffoscope;·len:·138,·SHA:·70b2e1511240d9d1035ed9d292285bc776329d8942b287fe5185280979cb2b75·...·]-2">)</span><span·class="p">.</span><span·class="w">1211 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">equal</span><span·class="p"·data-group-id="4352291203-2">(</span><span·class="s">&quot;åäö&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfd_binary</span><span·class="p"·data-group-id="4352291203-3">(<[·...·truncated·by·diffoscope;·len:·138,·SHA:·44ddcec3731e237ac3467cb9ae58c37e1ebec960b9c3612e22076a17c136cc28·...·]-2">)</span><span·class="p">.</span><span·class="w">
1212 </span><span·class="ss">false</span><span·class="gp·unselectable">1212 </span><span·class="ss">false</span><span·class="gp·unselectable">
1213 3&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">equal</span><span·class="p"·data-group-id="4347372921-4">(</span><span·class="s">&quot;åäö&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfd_binary</span><span·class="p"·data-group-id="4347372921-5">(<[·...·truncated·by·diffoscope;·len:·289,·SHA:·38137b28dd9a1460d01422be98557e1e927887c2dbafefb4d072cadeabb924f2·...·]-4">)</span><span·class="p">.</span><span·class="w">1213 3&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">equal</span><span·class="p"·data-group-id="4352291203-4">(</span><span·class="s">&quot;åäö&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfd_binary</span><span·class="p"·data-group-id="4352291203-5">(<[·...·truncated·by·diffoscope;·len:·289,·SHA:·72b0034338187ac0ec56c621e6465ad358a981645906b7f68f021702d8071e6d·...·]-4">)</span><span·class="p">.</span><span·class="w">
1214 </span><span·class="ss">true</span></code></pre>1214 </span><span·class="ss">true</span></code></pre>
1215 ··</section>1215 ··</section>
1216 </section>1216 </section>
1217 <section·class="detail"·id="find/2">1217 <section·class="detail"·id="find/2">
  
1218 ··<div·class="detail-header">1218 ··<div·class="detail-header">
1219 ····<a·href="#find/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1219 ····<a·href="#find/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1273, 21 lines modifiedOffset 1273, 21 lines modified
1273 ··············when·String·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>(),·SearchPattern·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>(),·Dir·::·<a·href="#t:direction/0">direction</a>().</pre>1273 ··············when·String·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>(),·SearchPattern·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>(),·Dir·::·<a·href="#t:direction/0">direction</a>().</pre>
  
1274 ······</div>1274 ······</div>
  
1275 <p>Removes·anything·before·<code·class="inline">SearchPattern</code>·in·<code·class="inline">String</code>·and·returns·the·remainder·of1275 <p>Removes·anything·before·<code·class="inline">SearchPattern</code>·in·<code·class="inline">String</code>·and·returns·the·remainder·of
1276 the·string·or·<code·class="inline">nomatch</code>·if·<code·class="inline">SearchPattern</code>·is·not·found.·<code·class="inline">Dir</code>,·which·can·be1276 the·string·or·<code·class="inline">nomatch</code>·if·<code·class="inline">SearchPattern</code>·is·not·found.·<code·class="inline">Dir</code>,·which·can·be
1277 <code·class="inline">leading</code>·or·<code·class="inline">trailing</code>,·indicates·from·which·direction·characters·are·to·be1277 <code·class="inline">leading</code>·or·<code·class="inline">trailing</code>,·indicates·from·which·direction·characters·are·to·be
1278 searched.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">find</span><span·class="p"·data-group-id="6328121666-1">(</span><span·class="s">&quot;ab..cd..ef&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.&quot;</span><span·class="p"·data-group-id="6328121666-1">)</span><span·class="p">.</span><span·class="w">1278 searched.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">find</span><span·class="p"·data-group-id="7307926026-1">(</span><span·class="s">&quot;ab..cd..ef&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;.&quot;</span><span·class="p"·data-group-id="7307926026-1">)</span><span·class="p">.</span><span·class="w">
1279 </span><span·class="s">&quot;..cd..ef&quot;</span><span·class="gp·unselectable">1279 </span><span·class="s">&quot;..cd..ef&quot;</span><span·class="gp·unselectable">
1280 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">find</span><span·class="p"·data-group-id="6328121666-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ab..cd..ef&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;..&quot;</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·78,·SHA:·a165378a2dd70b926af8d281f564abade177ad1fadb109290ee8692171867e27·...·]6-2">)</span><span·class="p">.</span><span·class="w">1280 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">find</span><span·class="p"·data-group-id="7307926026-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ab..cd..ef&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;..&quot;</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·78,·SHA:·46f4af0ee76ec23508286edc6823cdb77f9043b6ba94e5887aa7693ae1489cce·...·]6-2">)</span><span·class="p">.</span><span·class="w">
1281 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;..ef&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">1281 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;..ef&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
1282 3&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">find</span><span·class="p"·data-group-id="6328121666-3">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ab..cd..ef&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;x&quot;</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·76,·SHA:·6e8a62d69c61237af8bedabdd5e069300daf48f1e01f0f0e6da297b906148d43·...·]6-3">)</span><span·class="p">.</span><span·class="w">1282 3&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">find</span><span·class="p"·data-group-id="7307926026-3">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;ab..cd..ef&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;x&quot;</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·76,·SHA:·9519beecdb21341ddfe996fe88e7e0c02b7831cfe9ee28f6e3a1ebb10e1977d1·...·]6-3">)</span><span·class="p">.</span><span·class="w">
1283 </span><span·class="ss">nomatch</span><span·class="gp·unselectable">1283 </span><span·class="ss">nomatch</span><span·class="gp·unselectable">
1284 4&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">find</span><span·class="p"·data-group-id="6328121666-4">(</span><span·class="s">&quot;ab..cd..ef&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;x&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">trailing</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·15,·SHA:·890aa523acb794bed460aeb43978569e2c125729f698510cec038563a3fa04df·...·]6-4">)</span><span·class="p">.</span><span·class="w">1284 4&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">find</span><span·class="p"·data-group-id="7307926026-4">(</span><span·class="s">&quot;ab..cd..ef&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;x&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">trailing</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·15,·SHA:·7fabbf3d24024523535e1676cf13e4a49f883adbdc947977ecf00c79cd106a42·...·]6-4">)</span><span·class="p">.</span><span·class="w">
1285 </span><span·class="ss">nomatch</span></code></pre>1285 </span><span·class="ss">nomatch</span></code></pre>
1286 ··</section>1286 ··</section>
1287 </section>1287 </section>
1288 <section·class="detail"·id="is_empty/1">1288 <section·class="detail"·id="is_empty/1">
  
1289 ··<div·class="detail-header">1289 ··<div·class="detail-header">
1290 ····<a·href="#is_empty/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1290 ····<a·href="#is_empty/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1310, 17 lines modifiedOffset 1310, 17 lines modified
  
1310 ······<div·class="specs">1310 ······<div·class="specs">
  
1311 ··········<pre·translate="no"><span·class="attribute">-spec</span>·is_empty(String·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>().</pre>1311 ··········<pre·translate="no"><span·class="attribute">-spec</span>·is_empty(String·::·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>())·->·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:boolean/0">boolean</a>().</pre>
  
1312 ······</div>1312 ······</div>
  
1313 <p>Returns·<code·class="inline">true</code>·if·<code·class="inline">String</code>·is·the·empty·string,·otherwise·<code·class="inline">false</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">is_empty</span><span·class="p"·data-group-id="3560077069-1">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="3560077069-1">)</span><span·class="p">.</span><span·class="w">1313 <p>Returns·<code·class="inline">true</code>·if·<code·class="inline">String</code>·is·the·empty·string,·otherwise·<code·class="inline">false</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">is_empty</span><span·class="p"·data-group-id="0371867471-1">(</span><span·class="s">&quot;foo&quot;</span><span·class="p"·data-group-id="0371867471-1">)</span><span·class="p">.</span><span·class="w">
1314 </span><span·class="ss">false</span><span·class="gp·unselectable">1314 </span><span·class="ss">false</span><span·class="gp·unselectable">
1315 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">is_empty</span><span·class="p"·data-group-id="3560077069-2">(</span><span·class="p"·data-group-id="3560077069-3">[</span><span·class="s">&quot;&quot;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3560077069-3">]</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·dbf5b624c7b3742782f8181aa8391bdf411917546fa0f47d4fbe05f128df546d·...·]-2">)</span><span·class="p">.</span><span·class="w">1315 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">is_empty</span><span·class="p"·data-group-id="0371867471-2">(</span><span·class="p"·data-group-id="0371867471-3">[</span><span·class="s">&quot;&quot;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="0371867471-3">]</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·5de1df3c8fecfdd6687b16ff9d9d00157e6073b59b6b6d5ff0326b76b72a06c4·...·]-2">)</span><span·class="p">.</span><span·class="w">
1316 </span><span·class="ss">true</span></code></pre>1316 </span><span·class="ss">true</span></code></pre>
1317 ··</section>1317 ··</section>
1318 </section>1318 </section>
1319 <section·class="detail"·id="jaro_similarity/2">1319 <section·class="detail"·id="jaro_similarity/2">
  
1320 ··<div·class="detail-header">1320 ··<div·class="detail-header">
1321 ····<a·href="#jaro_similarity/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1321 ····<a·href="#jaro_similarity/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1351, 21 lines modifiedOffset 1351, 21 lines modified
  
1351 ······</div>1351 ······</div>
  
1352 <p>Returns·a·float·between·<code·class="inline">+0.0</code>·and·<code·class="inline">1.0</code>·representing·the1352 <p>Returns·a·float·between·<code·class="inline">+0.0</code>·and·<code·class="inline">1.0</code>·representing·the
1353 <a·href="https://en.wikipedia.org/wiki/Jaro%E2%80%93Winkler_distance">Jaro·similarity</a>1353 <a·href="https://en.wikipedia.org/wiki/Jaro%E2%80%93Winkler_distance">Jaro·similarity</a>
1354 between·the·given·strings.·Strings·with·many·letters·in·common·relative·to·their1354 between·the·given·strings.·Strings·with·many·letters·in·common·relative·to·their
1355 lengths·will·score·closer·to·<code·class="inline">1.0</code>.</p><p>The·Jaro·distance·between·two·strings·can·be·calculated·with1355 lengths·will·score·closer·to·<code·class="inline">1.0</code>.</p><p>The·Jaro·distance·between·two·strings·can·be·calculated·with
1356 <code·class="inline">JaroDistance·=·1.0-JaroSimilarity</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">jaro_similarity</span><span·class="p"·data-group-id="8156866768-1">(</span><span·class="s">&quot;ditto&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;ditto&quot;</span><span·class="p"·data-group-id="8156866768-1">)</span><span·class="p">.</span><span·class="w">1356 <code·class="inline">JaroDistance·=·1.0-JaroSimilarity</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">jaro_similarity</span><span·class="p"·data-group-id="4872514152-1">(</span><span·class="s">&quot;ditto&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;ditto&quot;</span><span·class="p"·data-group-id="4872514152-1">)</span><span·class="p">.</span><span·class="w">
1357 </span><span·class="mf">1.0</span><span·class="gp·unselectable">1357 </span><span·class="mf">1.0</span><span·class="gp·unselectable">
1358 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">jaro_similarity</span><span·class="p"·data-group-id="8156866768-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;bar&quot;</span><span·class="p"·data-group-id="8156866768-2">)</span><span·class="p">.</span><span·class="w">1358 2&gt;·</span><span·class="nc">string</span><span·class="p">:</span><span·class="nf">jaro_similarity</span><span·class="p"·data-group-id="4872514152-2">(</span><span·class="s">&quot;foo&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;bar&quot;</span><span·class="p"·data-group-id="4872514152-2">)</span><span·class="p">.</span><span·class="w">
Max diff block lines reached; 117186/143210 bytes (81.83%) of diff not shown.
583 B
html2text {}
Max HTML report size reached
14.3 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/supervisor.html
    
Offset 154, 18 lines modifiedOffset 154, 18 lines modified
154 left.</p><p><a·href=""·id="sup_flags"></a></p><h3·id="module-supervisor-flags"·class="section-heading">154 left.</p><p><a·href=""·id="sup_flags"></a></p><h3·id="module-supervisor-flags"·class="section-heading">
155 ··<a·href="#module-supervisor-flags"·class="hover-link">155 ··<a·href="#module-supervisor-flags"·class="hover-link">
156 ····<i·class="ri-link-m"·aria-hidden="true"></i>156 ····<i·class="ri-link-m"·aria-hidden="true"></i>
157 ··</a>157 ··</a>
158 ··<span·class="text">Supervisor·flags</span>158 ··<span·class="text">Supervisor·flags</span>
159 </h3>159 </h3>
160 <p>The·supervisor·properties·are·defined·by·the·supervisor·flags.·The·type160 <p>The·supervisor·properties·are·defined·by·the·supervisor·flags.·The·type
161 definition·for·the·supervisor·flags·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">sup_flags</span><span·class="p"·data-group-id="0140692060-1">(</span><span·class="p"·data-group-id="0140692060-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0140692060-2">#{</span><span·class="ss">strategy</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·178,·SHA:·647d4c0ffa4ac2dcf99c7ef32940b880c6eb91c9008aab8d0ce60f5e980a6d50·...·]-3">)</span><span·class="p">,</span><span·class="w">···········</span><span·class="c1">%·optional</span><span·class="w">161 definition·for·the·supervisor·flags·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">sup_flags</span><span·class="p"·data-group-id="0252690509-1">(</span><span·class="p"·data-group-id="0252690509-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="0252690509-2">#{</span><span·class="ss">strategy</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·178,·SHA:·2e40a1a9fc89d6bbb2d98258eecae35fd35ae3de5d3725804abe3c287466e6c9·...·]-3">)</span><span·class="p">,</span><span·class="w">···········</span><span·class="c1">%·optional</span><span·class="w">
162 ················</span><span·class="ss">intensity</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">non_neg_integer</span><span·class="p"·data-group-id="0140692060-4">(</span><span·class="p"·data-group-id="0140692060-4">)</span><span·class="p">,</span><span·class="w">···</span><span·class="c1">%·optional</span><span·class="w">162 ················</span><span·class="ss">intensity</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">non_neg_integer</span><span·class="p"·data-group-id="0252690509-4">(</span><span·class="p"·data-group-id="0252690509-4">)</span><span·class="p">,</span><span·class="w">···</span><span·class="c1">%·optional</span><span·class="w">
163 ················</span><span·class="ss">period</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">pos_integer</span><span·class="p"·data-group-id="0140692060-5">(</span><span·class="p"·data-group-id="0140692060-5">)</span><span·class="p">,</span><span·class="w">··········</span><span·class="c1">%·optional</span><span·class="w">163 ················</span><span·class="ss">period</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">pos_integer</span><span·class="p"·data-group-id="0252690509-5">(</span><span·class="p"·data-group-id="0252690509-5">)</span><span·class="p">,</span><span·class="w">··········</span><span·class="c1">%·optional</span><span·class="w">
164 ················</span><span·class="ss">auto_shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">auto_shutdown</span><span·class="p"·data-group-id="0140692060-6">(</span><span·class="p"·data-group-id="0140692060-6">)</span><span·class="p"·data-group-id="0140692060-2">}</span><span·class="w">·</span><span·class="c1">%·optional</span></code></pre><h4>Restart·Strategies</h4><p>A·supervisor·can·have·one·of·the·following·<em>restart·strategies</em>·specified·with164 ················</span><span·class="ss">auto_shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">auto_shutdown</span><span·class="p"·data-group-id="0252690509-6">(</span><span·class="p"·data-group-id="0252690509-6">)</span><span·class="p"·data-group-id="0252690509-2">}</span><span·class="w">·</span><span·class="c1">%·optional</span></code></pre><h4>Restart·Strategies</h4><p>A·supervisor·can·have·one·of·the·following·<em>restart·strategies</em>·specified·with
165 the·<code·class="inline">strategy</code>·key·in·the·above·map:</p><ul><li><p><code·class="inline">one_for_one</code>·-·If·one·child·process·terminates·and·is·to·be·restarted,·only165 the·<code·class="inline">strategy</code>·key·in·the·above·map:</p><ul><li><p><code·class="inline">one_for_one</code>·-·If·one·child·process·terminates·and·is·to·be·restarted,·only
166 that·child·process·is·affected.·This·is·the·default·restart·strategy.</p></li><li><p><code·class="inline">one_for_all</code>·-·If·one·child·process·terminates·and·is·to·be·restarted,·all166 that·child·process·is·affected.·This·is·the·default·restart·strategy.</p></li><li><p><code·class="inline">one_for_all</code>·-·If·one·child·process·terminates·and·is·to·be·restarted,·all
167 other·child·processes·are·terminated·and·then·all·child·processes·are167 other·child·processes·are·terminated·and·then·all·child·processes·are
168 restarted.</p></li><li><p><code·class="inline">rest_for_one</code>·-·If·one·child·process·terminates·and·is·to·be·restarted,·the168 restarted.</p></li><li><p><code·class="inline">rest_for_one</code>·-·If·one·child·process·terminates·and·is·to·be·restarted,·the
169 'rest'·of·the·child·processes·(that·is,·the·child·processes·after·the169 'rest'·of·the·child·processes·(that·is,·the·child·processes·after·the
170 terminated·child·process·in·the·start·order)·are·terminated.·Then·the170 terminated·child·process·in·the·start·order)·are·terminated.·Then·the
171 terminated·child·process·and·all·child·processes·after·it·are·restarted.</p></li><li><p><code·class="inline">simple_one_for_one</code>·-·A·simplified·<code·class="inline">one_for_one</code>·supervisor,·where·all·child171 terminated·child·process·and·all·child·processes·after·it·are·restarted.</p></li><li><p><code·class="inline">simple_one_for_one</code>·-·A·simplified·<code·class="inline">one_for_one</code>·supervisor,·where·all·child
Offset 201, 21 lines modifiedOffset 201, 21 lines modified
201 the·automatic·shutdowns·they·rely·on·will·not·happen.</p><p>It·is·up·to·implementors·to·take·proper·precautions·if·they·expect·that·their201 the·automatic·shutdowns·they·rely·on·will·not·happen.</p><p>It·is·up·to·implementors·to·take·proper·precautions·if·they·expect·that·their
202 applications·may·be·compiled·with·older·OTP·versions.</p></blockquote><p><a·href=""·id="child_spec"></a></p><h3·id="module-child-specification"·class="section-heading">202 applications·may·be·compiled·with·older·OTP·versions.</p></blockquote><p><a·href=""·id="child_spec"></a></p><h3·id="module-child-specification"·class="section-heading">
203 ··<a·href="#module-child-specification"·class="hover-link">203 ··<a·href="#module-child-specification"·class="hover-link">
204 ····<i·class="ri-link-m"·aria-hidden="true"></i>204 ····<i·class="ri-link-m"·aria-hidden="true"></i>
205 ··</a>205 ··</a>
206 ··<span·class="text">Child·specification</span>206 ··<span·class="text">Child·specification</span>
207 </h3>207 </h3>
208 <p>The·type·definition·of·a·child·specification·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">child_spec</span><span·class="p"·data-group-id="7428580983-1">(</span><span·class="p"·data-group-id="7428580983-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7428580983-2">#{</span><span·class="ss">id</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·172,·SHA:·9148e4629382886703afd5a7a1989cb99f01c7cd17646c45e5e23618d769af21·...·]-3">)</span><span·class="p">,</span><span·class="w">·············</span><span·class="c1">%·mandatory</span><span·class="w">208 <p>The·type·definition·of·a·child·specification·is·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">child_spec</span><span·class="p"·data-group-id="7980284445-1">(</span><span·class="p"·data-group-id="7980284445-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="7980284445-2">#{</span><span·class="ss">id</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·172,·SHA:·b444b594b0936fb2f510f1e40189d7469e908a7de218cd99a229d958ef6fdb53·...·]-3">)</span><span·class="p">,</span><span·class="w">·············</span><span·class="c1">%·mandatory</span><span·class="w">
209 ·················</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">mfargs</span><span·class="p"·data-group-id="7428580983-4">(</span><span·class="p"·data-group-id="7428580983-4">)</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·mandatory</span><span·class="w">209 ·················</span><span·class="ss">start</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">mfargs</span><span·class="p"·data-group-id="7980284445-4">(</span><span·class="p"·data-group-id="7980284445-4">)</span><span·class="p">,</span><span·class="w">············</span><span·class="c1">%·mandatory</span><span·class="w">
210 ·················</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">restart</span><span·class="p"·data-group-id="7428580983-5">(</span><span·class="p"·data-group-id="7428580983-5">)</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·optional</span><span·class="w">210 ·················</span><span·class="ss">restart</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">restart</span><span·class="p"·data-group-id="7980284445-5">(</span><span·class="p"·data-group-id="7980284445-5">)</span><span·class="p">,</span><span·class="w">·········</span><span·class="c1">%·optional</span><span·class="w">
211 ·················</span><span·class="ss">significant</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">significant</span><span·class="p"·data-group-id="7428580983-6">(</span><span·class="p"·data-group-id="7428580983-6">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·optional</span><span·class="w">211 ·················</span><span·class="ss">significant</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">significant</span><span·class="p"·data-group-id="7980284445-6">(</span><span·class="p"·data-group-id="7980284445-6">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·optional</span><span·class="w">
212 ·················</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="7428580983-7">(</span><span·class="p"·data-group-id="7428580983-7">)</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·optional</span><span·class="w">212 ·················</span><span·class="ss">shutdown</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">shutdown</span><span·class="p"·data-group-id="7980284445-7">(</span><span·class="p"·data-group-id="7980284445-7">)</span><span·class="p">,</span><span·class="w">·······</span><span·class="c1">%·optional</span><span·class="w">
213 ·················</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">worker</span><span·class="p"·data-group-id="7428580983-8">(</span><span·class="p"·data-group-id="7428580983-8">)</span><span·class="p">,</span><span·class="w">·············</span><span·class="c1">%·optional</span><span·class="w">213 ·················</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">worker</span><span·class="p"·data-group-id="7980284445-8">(</span><span·class="p"·data-group-id="7980284445-8">)</span><span·class="p">,</span><span·class="w">·············</span><span·class="c1">%·optional</span><span·class="w">
214 ·················</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">modules</span><span·class="p"·data-group-id="7428580983-9">(</span><span·class="p"·data-group-id="7428580983-9">)</span><span·class="p"·data-group-id="7428580983-2">}</span><span·class="w">·········</span><span·class="c1">%·optional</span></code></pre><p>The·old·tuple·format·is·kept·for·backwards·compatibility,·see·<a·href="#t:child_spec/0"><code·class="inline">child_spec/0</code></a>,214 ·················</span><span·class="ss">modules</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="nf">modules</span><span·class="p"·data-group-id="7980284445-9">(</span><span·class="p"·data-group-id="7980284445-9">)</span><span·class="p"·data-group-id="7980284445-2">}</span><span·class="w">·········</span><span·class="c1">%·optional</span></code></pre><p>The·old·tuple·format·is·kept·for·backwards·compatibility,·see·<a·href="#t:child_spec/0"><code·class="inline">child_spec/0</code></a>,
215 but·the·map·is·preferred.</p><ul><li><p><code·class="inline">id</code>·is·used·to·identify·the·child·specification·internally·by·the·supervisor.</p><p>The·<code·class="inline">id</code>·key·is·mandatory.</p><p>Notice·that·this·identifier·on·occations·has·been·called·&quot;name&quot;.·As·far·as215 but·the·map·is·preferred.</p><ul><li><p><code·class="inline">id</code>·is·used·to·identify·the·child·specification·internally·by·the·supervisor.</p><p>The·<code·class="inline">id</code>·key·is·mandatory.</p><p>Notice·that·this·identifier·on·occations·has·been·called·&quot;name&quot;.·As·far·as
216 possible,·the·terms·&quot;identifier&quot;·or·&quot;id&quot;·are·now·used·but·to·keep·backward216 possible,·the·terms·&quot;identifier&quot;·or·&quot;id&quot;·are·now·used·but·to·keep·backward
217 compatibility,·some·occurences·of·&quot;name&quot;·can·still·be·found,·for·example·in217 compatibility,·some·occurences·of·&quot;name&quot;·can·still·be·found,·for·example·in
218 error·messages.</p></li><li><p><code·class="inline">start</code>·defines·the·function·call·used·to·start·the·child·process.·It·must·be218 error·messages.</p></li><li><p><code·class="inline">start</code>·defines·the·function·call·used·to·start·the·child·process.·It·must·be
219 a·module-function-arguments·tuple·<code·class="inline">{M,F,A}</code>·used·as219 a·module-function-arguments·tuple·<code·class="inline">{M,F,A}</code>·used·as
220 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(M,F,A)</code></a>.</p><p>The·start·function·<em>must·create·and·link·to</em>·the·child·process,·and·must220 <a·href="../../../../erts-15.0.1/doc/html/erlang.html#apply/3"><code·class="inline">apply(M,F,A)</code></a>.</p><p>The·start·function·<em>must·create·and·link·to</em>·the·child·process,·and·must
221 return·<code·class="inline">{ok,Child}</code>·or·<code·class="inline">{ok,Child,Info}</code>,·where·<code·class="inline">Child</code>·is·the·pid·of·the221 return·<code·class="inline">{ok,Child}</code>·or·<code·class="inline">{ok,Child,Info}</code>,·where·<code·class="inline">Child</code>·is·the·pid·of·the
Offset 1802, 15 lines modifiedOffset 1802, 15 lines modified
1802 ······<p·class="built-using">1802 ······<p·class="built-using">
1803 ········Built·using1803 ········Built·using
1804 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1804 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1805 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1805 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1806 ······</p>1806 ······</p>
1807 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1807 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1808 ····</footer>1808 ····</footer>
1809 ··</div>1809 ··</div>
1810 </main>1810 </main>
1811 </div>1811 </div>
1812 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1812 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1813 <script>1813 <script>
1814 ··document.addEventListener("DOMContentLoaded",·function·()·{1814 ··document.addEventListener("DOMContentLoaded",·function·()·{
652 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/supervisor_bridge.html
    
Offset 415, 15 lines modifiedOffset 415, 15 lines modified
415 ······<p·class="built-using">415 ······<p·class="built-using">
416 ········Built·using416 ········Built·using
417 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the417 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
418 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>418 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
419 ······</p>419 ······</p>
420 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>420 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
421 ····</footer>421 ····</footer>
422 ··</div>422 ··</div>
423 </main>423 </main>
424 </div>424 </div>
425 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>425 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
426 <script>426 <script>
427 ··document.addEventListener("DOMContentLoaded",·function·()·{427 ··document.addEventListener("DOMContentLoaded",·function·()·{
702 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/sys.html
    
Offset 2319, 15 lines modifiedOffset 2319, 15 lines modified
2319 ······<p·class="built-using">2319 ······<p·class="built-using">
2320 ········Built·using2320 ········Built·using
2321 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2321 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2322 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2322 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2323 ······</p>2323 ······</p>
2324 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2324 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2325 ····</footer>2325 ····</footer>
2326 ··</div>2326 ··</div>
2327 </main>2327 </main>
2328 </div>2328 </div>
2329 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2329 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2330 <script>2330 <script>
2331 ··document.addEventListener("DOMContentLoaded",·function·()·{2331 ··document.addEventListener("DOMContentLoaded",·function·()·{
730 B
html2text {}
Max HTML report size reached
20.8 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/timer.html
    
Offset 139, 23 lines modifiedOffset 139, 23 lines modified
139 susceptible·to·being·overloaded.·See139 susceptible·to·being·overloaded.·See
140 <a·href="../../../../doc/system/commoncaveats.html#timer-module">the·Timer·Module·section·in·the·Efficiency·Guide</a>.</p><h2·id="module-examples"·class="section-heading">140 <a·href="../../../../doc/system/commoncaveats.html#timer-module">the·Timer·Module·section·in·the·Efficiency·Guide</a>.</p><h2·id="module-examples"·class="section-heading">
141 ··<a·href="#module-examples"·class="hover-link">141 ··<a·href="#module-examples"·class="hover-link">
142 ····<i·class="ri-link-m"·aria-hidden="true"></i>142 ····<i·class="ri-link-m"·aria-hidden="true"></i>
143 ··</a>143 ··</a>
144 ··<span·class="text">Examples</span>144 ··<span·class="text">Examples</span>
145 </h2>145 </h2>
146 <p><em>Example·1</em></p><p>The·following·example·shows·how·to·print·&quot;Hello·World!&quot;·in·5·seconds:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">apply_after</span><span·class="p"·data-group-id="1690865451-1">(</span><span·class="mi">5000</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">io</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">format</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·438,·SHA:·998e8156b9e222f637c08311c00e92c0d76890483dce41e6a6f7664519986229·...·]1-1">)</span><span·class="p">.</span><span·class="w">146 <p><em>Example·1</em></p><p>The·following·example·shows·how·to·print·&quot;Hello·World!&quot;·in·5·seconds:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">apply_after</span><span·class="p"·data-group-id="1269286511-1">(</span><span·class="mi">5000</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">io</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">format</span><span·class="p">,</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·438,·SHA:·2a48deca71ff980f05d546a1e342e81495d1e517af2c376db1f5ce575a384b2c·...·]1-1">)</span><span·class="p">.</span><span·class="w">
147 </span><span·class="p"·data-group-id="1690865451-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="1690865451-4">}</span><span·class="w">147 </span><span·class="p"·data-group-id="1269286511-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="1269286511-4">}</span><span·class="w">
148 </span><span·class="n">Hello</span><span·class="w">·</span><span·class="n">World</span><span·class="o">!</span></code></pre><p><em>Example·2</em></p><p>The·following·example·shows·a·process·performing·a·certain·action,·and·if·this148 </span><span·class="n">Hello</span><span·class="w">·</span><span·class="n">World</span><span·class="o">!</span></code></pre><p><em>Example·2</em></p><p>The·following·example·shows·a·process·performing·a·certain·action,·and·if·this
149 action·is·not·completed·within·a·certain·limit,·the·process·is·killed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Pid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="6617614877-1">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6617614877-2">[</span><span·class="ss">foo</span><span[·...·truncated·by·diffoscope;·len:·164,·SHA:·6644605a4318e300d900f2cb03c1db76e74fa8f27753ffbe2d3f96ffa0f88c27·...·]-1">)</span><span·class="p">,</span><span·class="w">149 action·is·not·completed·within·a·certain·limit,·the·process·is·killed:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Pid</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn</span><span·class="p"·data-group-id="4945601351-1">(</span><span·class="ss">mod</span><span·class="p">,</span><span·class="w">·</span><span·class="k">fun</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4945601351-2">[</span><span·class="ss">foo</span><span[·...·truncated·by·diffoscope;·len:·164,·SHA:·5430eeba5fbcc7ba90626d51d69c8fd382071925a568cd334705b4dc38298abb·...·]-1">)</span><span·class="p">,</span><span·class="w">
150 </span><span·class="c1">%%·If·pid·is·not·finished·in·10·seconds,·kill·him</span><span·class="w">150 </span><span·class="c1">%%·If·pid·is·not·finished·in·10·seconds,·kill·him</span><span·class="w">
151 </span><span·class="p"·data-group-id="6617614877-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">R</span><span·class="p"·data-group-id="6617614877-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·460,·SHA:·6dbf2b8e8acab7d663dcca155ba43ef4a06910e19d18f900153e87fe46277959·...·]-4">)</span><span·class="p">,</span><span·class="w">151 </span><span·class="p"·data-group-id="4945601351-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">R</span><span·class="p"·data-group-id="4945601351-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·460,·SHA:·97745e518ffb5ae29280a3c21c75c91fed0fca153d7a4a553e11bd4f61e2047b·...·]-4">)</span><span·class="p">,</span><span·class="w">
152 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">152 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
153 </span><span·class="c1">%%·We·change·our·mind...</span><span·class="w">153 </span><span·class="c1">%%·We·change·our·mind...</span><span·class="w">
154 </span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">cancel</span><span·class="p"·data-group-id="6617614877-6">(</span><span·class="n">R</span><span·class="p"·data-group-id="6617614877-6">)</span><span·class="p">,</span><span·class="w">154 </span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">cancel</span><span·class="p"·data-group-id="4945601351-6">(</span><span·class="n">R</span><span·class="p"·data-group-id="4945601351-6">)</span><span·class="p">,</span><span·class="w">
155 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><h2·id="module-notes"·class="section-heading">155 </span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><h2·id="module-notes"·class="section-heading">
156 ··<a·href="#module-notes"·class="hover-link">156 ··<a·href="#module-notes"·class="hover-link">
157 ····<i·class="ri-link-m"·aria-hidden="true"></i>157 ····<i·class="ri-link-m"·aria-hidden="true"></i>
158 ··</a>158 ··</a>
159 ··<span·class="text">Notes</span>159 ··<span·class="text">Notes</span>
160 </h2>160 </h2>
161 <p>A·timer·can·always·be·removed·by·calling·<a·href="#cancel/1"><code·class="inline">cancel/1</code></a>.</p><p>An·interval·timer,·that·is,·a·timer·created·by·evaluating·any·of·the·functions161 <p>A·timer·can·always·be·removed·by·calling·<a·href="#cancel/1"><code·class="inline">cancel/1</code></a>.</p><p>An·interval·timer,·that·is,·a·timer·created·by·evaluating·any·of·the·functions
Offset 174, 28 lines modifiedOffset 174, 28 lines modified
174 process,·and·therefore·calls·to·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>·in·those·functions·will·return·the·Pid174 process,·and·therefore·calls·to·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>·in·those·functions·will·return·the·Pid
175 of·this·process,·which·is·different·from·the·process·that·called175 of·this·process,·which·is·different·from·the·process·that·called
176 <code·class="inline">timer:apply_*</code>.</p><p><em>Example</em></p><p>In·the·following·example,·the·intention·is·to·set·a·timer·to·execute·a·function176 <code·class="inline">timer:apply_*</code>.</p><p><em>Example</em></p><p>In·the·following·example,·the·intention·is·to·set·a·timer·to·execute·a·function
177 after·1·second,·which·performs·a·fictional·task,·and·then·wants·to·inform·the177 after·1·second,·which·performs·a·fictional·task,·and·then·wants·to·inform·the
178 process·which·set·the·timer·about·its·completion,·by·sending·it·a·<code·class="inline">done</code>178 process·which·set·the·timer·about·its·completion,·by·sending·it·a·<code·class="inline">done</code>
179 message.</p><p>Using·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>·<em>inside</em>·the·timed·function,·the·code·below·does·not·work·as179 message.</p><p>Using·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>·<em>inside</em>·the·timed·function,·the·code·below·does·not·work·as
180 intended.·The·task·gets·done,·but·the·<code·class="inline">done</code>·message·gets·sent·to·the·wrong180 intended.·The·task·gets·done,·but·the·<code·class="inline">done</code>·message·gets·sent·to·the·wrong
181 process·and·is·lost.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">apply_after</span><span·class="p"·data-group-id="5190374052-1">(</span><span·class="mi">1000</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5190374052-2">(</span><span·class="p"·data-group-id="5190374052-2">)</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·566,·SHA:·79bf573ccb56763247e8ff874712249baee39621b491800e5d9eeeafbcaa75cb·...·]-1">)</span><span·class="p">.</span><span·class="w">181 process·and·is·lost.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">apply_after</span><span·class="p"·data-group-id="7828672035-1">(</span><span·class="mi">1000</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="7828672035-2">(</span><span·class="p"·data-group-id="7828672035-2">)</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·566,·SHA:·6d12c3766bfb0213f00a68e52cb64d04785fae310c1d6154a4ad5a91b01f3bf2·...·]-1">)</span><span·class="p">.</span><span·class="w">
182 </span><span·class="p"·data-group-id="5190374052-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="5190374052-5">}</span><span·class="gp·unselectable">182 </span><span·class="p"·data-group-id="7828672035-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="7828672035-5">}</span><span·class="gp·unselectable">
183 2&gt;·</span><span·class="k">receive</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">183 2&gt;·</span><span·class="k">receive</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
184 </span><span·class="c1">%%·...·5s·pass...</span><span·class="w">184 </span><span·class="c1">%%·...·5s·pass...</span><span·class="w">
185 </span><span·class="ss">timeout</span></code></pre><p>The·code·below·calls·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>·in·the·process·which·sets·the·timer·and·assigns·it185 </span><span·class="ss">timeout</span></code></pre><p>The·code·below·calls·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#self/0"><code·class="inline">self/0</code></a>·in·the·process·which·sets·the·timer·and·assigns·it
186 to·a·variable,·which·is·then·used·in·the·function·to·send·the·<code·class="inline">done</code>·message·to,186 to·a·variable,·which·is·then·used·in·the·function·to·send·the·<code·class="inline">done</code>·message·to,
187 and·so·works·as·intended.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Target</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="2208093793-1">(</span><span·class="p"·data-group-id="2208093793-1">)</span><span·class="w">187 and·so·works·as·intended.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="n">Target</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="1861183814-1">(</span><span·class="p"·data-group-id="1861183814-1">)</span><span·class="w">
188 </span><span·class="o">&lt;</span><span·class="mf">0.82</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">188 </span><span·class="o">&lt;</span><span·class="mf">0.82</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="gp·unselectable">
189 2&gt;·</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">apply_after</span><span·class="p"·data-group-id="2208093793-2">(</span><span·class="mi">1000</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="2208093793-3">(</span><span·class="p"·data-group-id="2208093793-3">)</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·461,·SHA:·7317f3840b634e8b103bc03e474d6406d8e57a6a8f21410eac7971019f6107fe·...·]-2">)</span><span·class="p">.</span><span·class="w">189 2&gt;·</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">apply_after</span><span·class="p"·data-group-id="1861183814-2">(</span><span·class="mi">1000</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="1861183814-3">(</span><span·class="p"·data-group-id="1861183814-3">)</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·461,·SHA:·348fed679fb5f4d3b1239d59dd9540a204ec183eaa43fdc3f34e51a474fb33c0·...·]-2">)</span><span·class="p">.</span><span·class="w">
190 </span><span·class="p"·data-group-id="2208093793-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="2208093793-5">}</span><span·class="gp·unselectable">190 </span><span·class="p"·data-group-id="1861183814-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="1861183814-5">}</span><span·class="gp·unselectable">
191 3&gt;·</span><span·class="k">receive</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">191 3&gt;·</span><span·class="k">receive</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
192 </span><span·class="c1">%%·...·1s·passes...</span><span·class="w">192 </span><span·class="c1">%%·...·1s·passes...</span><span·class="w">
193 </span><span·class="ss">done</span></code></pre><p>Another·option·is·to·pass·the·message·target·as·a·parameter·to·the·function.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">apply_after</span><span·class="p"·data-group-id="4535157197-1">(</span><span·class="mi">1000</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="4535157197-2">(</span><span·class="n">Target</span><span·class="p"·data-group-id="4535157197-2">)</s[·...·truncated·by·diffoscope;·len:·778,·SHA:·60109579ecd0bd00a48723dbd7d4b9bf4f960dbe46fdd26fcfe45b26c65be36e·...·]-1">)</span><span·class="p">.</span><span·class="w">193 </span><span·class="ss">done</span></code></pre><p>Another·option·is·to·pass·the·message·target·as·a·parameter·to·the·function.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">apply_after</span><span·class="p"·data-group-id="8919765598-1">(</span><span·class="mi">1000</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8919765598-2">(</span><span·class="n">Target</span><span·class="p"·data-group-id="8919765598-2">)</s[·...·truncated·by·diffoscope;·len:·778,·SHA:·187a547e8b069f5dbfbeb49822570154af168bf366296e13559f60d03962151d·...·]-1">)</span><span·class="p">.</span><span·class="w">
194 </span><span·class="p"·data-group-id="4535157197-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="4535157197-6">}</span><span·class="gp·unselectable">194 </span><span·class="p"·data-group-id="8919765598-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">TRef</span><span·class="p"·data-group-id="8919765598-6">}</span><span·class="gp·unselectable">
195 2&gt;·</span><span·class="k">receive</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">195 2&gt;·</span><span·class="k">receive</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">done</span><span·class="w">·</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">5000</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">timeout</span><span·class="w">·</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
196 </span><span·class="c1">%%·...·1s·passes...</span><span·class="w">196 </span><span·class="c1">%%·...·1s·passes...</span><span·class="w">
197 </span><span·class="ss">done</span></code></pre>197 </span><span·class="ss">done</span></code></pre>
198 ····</section>198 ····</section>
  
199 </div>199 </div>
  
Offset 1636, 15 lines modifiedOffset 1636, 15 lines modified
1636 ······<p·class="built-using">1636 ······<p·class="built-using">
1637 ········Built·using1637 ········Built·using
1638 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1638 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1639 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1639 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1640 ······</p>1640 ······</p>
1641 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1641 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1642 ····</footer>1642 ····</footer>
1643 ··</div>1643 ··</div>
1644 </main>1644 </main>
1645 </div>1645 </div>
1646 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1646 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1647 <script>1647 <script>
1648 ··document.addEventListener("DOMContentLoaded",·function·()·{1648 ··document.addEventListener("DOMContentLoaded",·function·()·{
779 B
html2text {}
Max HTML report size reached
35.0 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/unicode.html
    
Offset 1067, 21 lines modifiedOffset 1067, 21 lines modified
1067 binaries·in·other·ways·are·split·on·non-UTF·character·boundaries.·An1067 binaries·in·other·ways·are·split·on·non-UTF·character·boundaries.·An
1068 <code·class="inline">incomplete</code>·tuple·is·then·returned·instead·of·the·<code·class="inline">error</code>·tuple.·It·consists·of1068 <code·class="inline">incomplete</code>·tuple·is·then·returned·instead·of·the·<code·class="inline">error</code>·tuple.·It·consists·of
1069 the·same·parts·as·the·<code·class="inline">error</code>·tuple,·but·the·tag·is·<code·class="inline">incomplete</code>·instead·of1069 the·same·parts·as·the·<code·class="inline">error</code>·tuple,·but·the·tag·is·<code·class="inline">incomplete</code>·instead·of
1070 <code·class="inline">error</code>·and·the·last·element·is·always·guaranteed·to·be·a·binary·consisting·of1070 <code·class="inline">error</code>·and·the·last·element·is·always·guaranteed·to·be·a·binary·consisting·of
1071 the·first·part·of·a·(so·far)·valid·UTF·character.</p><p>If·one·UTF·character·is·split·over·two·consecutive·binaries·in·the·<code·class="inline">Data</code>,·the1071 the·first·part·of·a·(so·far)·valid·UTF·character.</p><p>If·one·UTF·character·is·split·over·two·consecutive·binaries·in·the·<code·class="inline">Data</code>,·the
1072 conversion·succeeds.·This·means·that·a·character·can·be·decoded·from·a·range·of1072 conversion·succeeds.·This·means·that·a·character·can·be·decoded·from·a·range·of
1073 binaries·as·long·as·the·whole·range·is·specified·as·input·without·errors1073 binaries·as·long·as·the·whole·range·is·specified·as·input·without·errors
1074 occurring.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">decode_data</span><span·class="p"·data-group-id="4533607575-1">(</span><span·class="n">Data</span><span·class="p"·data-group-id="4533607575-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w"> 
1075 ···</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_list</span><span·class="p"·data-group-id="4533607575-2">(</span><span·class="n">Data</span><span·class="p">,<[·...·truncated·by·diffoscope;·len:·132,·SHA:·bba30777a072a8d3b1e2464c1795fe931d7628bf84f28281870b3db092455f0a·...·]</span><span·class="w">1074 occurring.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">decode_data</span><span·class="p"·data-group-id="9801019475-1">(</span><span·class="n">Data</span><span·class="p"·data-group-id="9801019475-1">)</span><s[·...·truncated·by·diffoscope;·len:·43,·SHA:·3ea9a8f01421c48789aab696e0d6b9593af0d1e8d7ccd5143e5a4b7d685df21d·...·]</span><span·class="w">
 1075 ···</span><span·class="k">case</span><span·class="w">·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_list</span><span·class="p"·data-group-id="9801019475-2">(</span><span·class="n">Data</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p"·data-group-id="9801019475-2">)</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
1076 ······</span><span·class="p"·data-group-id="4533607575-3">{</span><span·class="ss">incomplete</span><span·class="p">,</span><span·class="n">Encoded</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Rest</span><span·class="p"·data-group-id="4533607575-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1076 ······</span><span·class="p"·data-group-id="9801019475-3">{</span><span·class="ss">incomplete</span><span·class="p">,</span><span·class="n">Encoded</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Rest</span><span·class="p"·data-group-id="9801019475-3">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1077 ············</span><span·class="n">More</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">get_some_more_data</span><span·class="p"·data-group-id="4533607575-4">(</span><span·class="p"·data-group-id="4533607575-4">)</span><span·class="p">,</span><span·class="w">1077 ············</span><span·class="n">More</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">get_some_more_data</span><span·class="p"·data-group-id="9801019475-4">(</span><span·class="p"·data-group-id="9801019475-4">)</span><span·class="p">,</span><span·class="w">
1078 ············</span><span·class="n">Encoded</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="nf">decode_data</span><span·class="p"·data-group-id="4533607575-5">(</span><span·class="p"·data-group-id="4533607575-6">[</span><span·class="n">Rest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">More</span><span·class="p"·data-group-id="4533607575-6">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·13,·SHA:·a9a863b4f37b7de846a276eacd1451db0c06ef19a3b0e79557e4655b906674d1·...·]75-5">)</span><span·class="p">;</span><span·class="w">1078 ············</span><span·class="n">Encoded</span><span·class="w">·</span><span·class="o">++</span><span·class="w">·</span><span·class="nf">decode_data</span><span·class="p"·data-group-id="9801019475-5">(</span><span·class="p"·data-group-id="9801019475-6">[</span><span·class="n">Rest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">More</span><span·class="p"·data-group-id="9801019475-6">]</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·13,·SHA:·42befad8aa984b5d8b0d18ef43ca5953e6df42eed6cea982bde30d1a64a61428·...·]75-5">)</span><span·class="p">;</span><span·class="w">
1079 ······</span><span·class="p"·data-group-id="4533607575-7">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Encoded</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="4533607575-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1079 ······</span><span·class="p"·data-group-id="9801019475-7">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="n">Encoded</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="9801019475-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1080 ············</span><span·class="nf">handle_error</span><span·class="p"·data-group-id="4533607575-8">(</span><span·class="n">Encoded</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="4533607575-8">)</span><span·class="p">;</span><span·class="w">1080 ············</span><span·class="nf">handle_error</span><span·class="p"·data-group-id="9801019475-8">(</span><span·class="n">Encoded</span><span·class="p">,</span><span·class="n">Rest</span><span·class="p"·data-group-id="9801019475-8">)</span><span·class="p">;</span><span·class="w">
1081 ······</span><span·class="n">List</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">1081 ······</span><span·class="n">List</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
1082 ············</span><span·class="n">List</span><span·class="w">1082 ············</span><span·class="n">List</span><span·class="w">
1083 ···</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>However,·bit·strings·that·are·not·whole·bytes·are·not·allowed,·so·a·UTF1083 ···</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>However,·bit·strings·that·are·not·whole·bytes·are·not·allowed,·so·a·UTF
1084 character·must·be·split·along·8-bit·boundaries·to·ever·be·decoded.</p><p>A·<code·class="inline">badarg</code>·exception·is·thrown·for·the·following·cases:</p><ul><li>Any·parameters·are·of·the·wrong·type.</li><li>The·list·structure·is·invalid·(a·number·as·tail).</li><li>The·binaries·do·not·contain·whole·bytes·(bit·strings).</li></ul>1084 character·must·be·split·along·8-bit·boundaries·to·ever·be·decoded.</p><p>A·<code·class="inline">badarg</code>·exception·is·thrown·for·the·following·cases:</p><ul><li>Any·parameters·are·of·the·wrong·type.</li><li>The·list·structure·is·invalid·(a·number·as·tail).</li><li>The·binaries·do·not·contain·whole·bytes·(bit·strings).</li></ul>
1085 ··</section>1085 ··</section>
1086 </section>1086 </section>
1087 <section·class="detail"·id="characters_to_nfc_binary/1">1087 <section·class="detail"·id="characters_to_nfc_binary/1">
Offset 1108, 15 lines modifiedOffset 1108, 15 lines modified
1108 ······<div·class="specs">1108 ······<div·class="specs">
  
1109 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfc_binary(<a·href="#t:chardata/0">chardata</a>())·->·<a·href="#t:unicode_binary/0">unicode_binary</a>()·|·{error,·<a·href="#t:unicode_binary/0">unicode_binary</a>(),·<a·href="#t:chardata/0">chardata</a>()}.</pre>1109 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfc_binary(<a·href="#t:chardata/0">chardata</a>())·->·<a·href="#t:unicode_binary/0">unicode_binary</a>()·|·{error,·<a·href="#t:unicode_binary/0">unicode_binary</a>(),·<a·href="#t:chardata/0">chardata</a>()}.</pre>
  
1110 ······</div>1110 ······</div>
  
1111 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form1111 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form
1112 of·canonical·equivalent·Composed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·an·utf8·encoded·binary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfc_binary</span><span·class="p"·data-group-id="6082737967-1">(</span><span·class="p"·data-group-id="6082737967-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="6082737967-3">[</span><[·...·truncated·by·diffoscope;·len:·587,·SHA:·ae460f3a8fc833b95839b98550cc4f00de38f4b39231f40c69c1b37687455bbb·...·]-1">)</span><span·class="p">.</span><span·class="w">1112 of·canonical·equivalent·Composed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·an·utf8·encoded·binary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfc_binary</span><span·class="p"·data-group-id="5282611059-1">(</span><span·class="p"·data-group-id="5282611059-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="5282611059-3">[</span><[·...·truncated·by·diffoscope;·len:·587,·SHA:·5c89e7ee979f555832b7dbe9e1c9ba4d132a70ec0c0c07becf45f352f7f28a23·...·]-1">)</span><span·class="p">.</span><span·class="w">
1113 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre>1113 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre>
1114 ··</section>1114 ··</section>
1115 </section>1115 </section>
1116 <section·class="detail"·id="characters_to_nfc_list/1">1116 <section·class="detail"·id="characters_to_nfc_list/1">
  
1117 ··<div·class="detail-header">1117 ··<div·class="detail-header">
1118 ····<a·href="#characters_to_nfc_list/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1118 ····<a·href="#characters_to_nfc_list/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1140, 15 lines modifiedOffset 1140, 15 lines modified
1140 ······<div·class="specs">1140 ······<div·class="specs">
  
1141 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfc_list(<a·href="#t:chardata/0">chardata</a>())·->·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()]·|·{error,·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()],·<a·href="#t:chardata/0">chardata</a>()}.</pre>1141 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfc_list(<a·href="#t:chardata/0">chardata</a>())·->·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()]·|·{error,·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()],·<a·href="#t:chardata/0">chardata</a>()}.</pre>
  
1142 ······</div>1142 ······</div>
  
1143 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form1143 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form
1144 of·canonical·equivalent·Composed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·a·list·of·characters.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfc_list</span><span·class="p"·data-group-id="6090224761-1">(</span><span·class="p"·data-group-id="6090224761-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="6090224761-3">[</span><[·...·truncated·by·diffoscope;·len:·587,·SHA:·04757db3c6eca115733e8c98e913d6909657532c6c2a3a7b3c3454345ee78ee1·...·]-1">)</span><span·class="p">.</span><span·class="w">1144 of·canonical·equivalent·Composed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·a·list·of·characters.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfc_list</span><span·class="p"·data-group-id="8571539788-1">(</span><span·class="p"·data-group-id="8571539788-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="8571539788-3">[</span><[·...·truncated·by·diffoscope;·len:·587,·SHA:·20ab369c40c91fa5feaec1c74b4db8f96a7b1ed9cb76e07044c0dcb6a3e11df4·...·]-1">)</span><span·class="p">.</span><span·class="w">
1145 </span><span·class="s">&quot;abc..åäö&quot;</span></code></pre>1145 </span><span·class="s">&quot;abc..åäö&quot;</span></code></pre>
1146 ··</section>1146 ··</section>
1147 </section>1147 </section>
1148 <section·class="detail"·id="characters_to_nfd_binary/1">1148 <section·class="detail"·id="characters_to_nfd_binary/1">
  
1149 ··<div·class="detail-header">1149 ··<div·class="detail-header">
1150 ····<a·href="#characters_to_nfd_binary/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1150 ····<a·href="#characters_to_nfd_binary/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1172, 15 lines modifiedOffset 1172, 15 lines modified
1172 ······<div·class="specs">1172 ······<div·class="specs">
  
1173 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfd_binary(<a·href="#t:chardata/0">chardata</a>())·->·<a·href="#t:unicode_binary/0">unicode_binary</a>()·|·{error,·<a·href="#t:unicode_binary/0">unicode_binary</a>(),·<a·href="#t:chardata/0">chardata</a>()}.</pre>1173 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfd_binary(<a·href="#t:chardata/0">chardata</a>())·->·<a·href="#t:unicode_binary/0">unicode_binary</a>()·|·{error,·<a·href="#t:unicode_binary/0">unicode_binary</a>(),·<a·href="#t:chardata/0">chardata</a>()}.</pre>
  
1174 ······</div>1174 ······</div>
  
1175 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form1175 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form
1176 of·canonical·equivalent·Decomposed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·an·utf8·encoded·binary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfd_binary</span><span·class="p"·data-group-id="1035258350-1">(</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p"·data-group-id="1035258350-1">)</span><span·class="p">.</span><span·class="w">1176 of·canonical·equivalent·Decomposed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·an·utf8·encoded·binary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfd_binary</span><span·class="p"·data-group-id="3444778809-1">(</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p"·data-group-id="3444778809-1">)</span><span·class="p">.</span><span·class="w">
1177 </span><span·class="p">&lt;&lt;</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">99</span><span·class="p">,</span><span·class="mi">46</span><span·class="p">,</span><span·class="mi">46</span><span·class="p">,</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">204</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">204</span><span·class="p">,</span><span·class="mi">136</span><span·class="p">,</span><span·class="mi">111</span><span·class="p">,</span><span·class="mi">204</span><span·class="p">,</span><span·class="mi">136</span><span·class="p">&gt;&gt;</span></code></pre>1177 </span><span·class="p">&lt;&lt;</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">99</span><span·class="p">,</span><span·class="mi">46</span><span·class="p">,</span><span·class="mi">46</span><span·class="p">,</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">204</span><span·class="p">,</span><span·class="mi">138</span><span·class="p">,</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">204</span><span·class="p">,</span><span·class="mi">136</span><span·class="p">,</span><span·class="mi">111</span><span·class="p">,</span><span·class="mi">204</span><span·class="p">,</span><span·class="mi">136</span><span·class="p">&gt;&gt;</span></code></pre>
1178 ··</section>1178 ··</section>
1179 </section>1179 </section>
1180 <section·class="detail"·id="characters_to_nfd_list/1">1180 <section·class="detail"·id="characters_to_nfd_list/1">
  
1181 ··<div·class="detail-header">1181 ··<div·class="detail-header">
1182 ····<a·href="#characters_to_nfd_list/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1182 ····<a·href="#characters_to_nfd_list/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1204, 16 lines modifiedOffset 1204, 16 lines modified
1204 ······<div·class="specs">1204 ······<div·class="specs">
  
1205 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfd_list(<a·href="#t:chardata/0">chardata</a>())·->·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()]·|·{error,·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()],·<a·href="#t:chardata/0">chardata</a>()}.</pre>1205 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfd_list(<a·href="#t:chardata/0">chardata</a>())·->·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()]·|·{error,·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()],·<a·href="#t:chardata/0">chardata</a>()}.</pre>
  
1206 ······</div>1206 ······</div>
  
1207 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form1207 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form
1208 of·canonical·equivalent·Decomposed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·a·list·of·characters.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfd_list</span><span·class="p"·data-group-id="4895345893-1">(</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p"·data-group-id="4895345893-1">)</span><span·class="p">.</span><span·class="w">1208 of·canonical·equivalent·Decomposed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·a·list·of·characters.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfd_list</span><span·class="p"·data-group-id="3700981209-1">(</span><span·class="s">&quot;abc..åäö&quot;</span><span·class="p"·data-group-id="3700981209-1">)</span><span·class="p">.</span><span·class="w">
1209 </span><span·class="p"·data-group-id="4895345893-2">[</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">99</span><span·class="p">,</span><span·class="mi">46</span><span·class="p">,</span><span·class="mi">46</span><span·cl[·...·truncated·by·diffoscope;·len:·337,·SHA:·cd73607f04d55c703e8136f374f5084d9d0d88dea80984999c8c6e50597c3fc3·...·]-2">]</span></code></pre>1209 </span><span·class="p"·data-group-id="3700981209-2">[</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">99</span><span·class="p">,</span><span·class="mi">46</span><span·class="p">,</span><span·class="mi">46</span><span·cl[·...·truncated·by·diffoscope;·len:·337,·SHA:·15a526528f453df89a1421ec543bc967a2642db9c89fc1139f7049cccc744a91·...·]-2">]</span></code></pre>
1210 ··</section>1210 ··</section>
1211 </section>1211 </section>
1212 <section·class="detail"·id="characters_to_nfkc_binary/1">1212 <section·class="detail"·id="characters_to_nfkc_binary/1">
  
1213 ··<div·class="detail-header">1213 ··<div·class="detail-header">
1214 ····<a·href="#characters_to_nfkc_binary/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1214 ····<a·href="#characters_to_nfkc_binary/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1215 ······<i·class="ri-link-m"·aria-hidden="true"></i>1215 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1236, 15 lines modifiedOffset 1236, 15 lines modified
1236 ······<div·class="specs">1236 ······<div·class="specs">
  
1237 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfkc_binary(<a·href="#t:chardata/0">chardata</a>())·->·<a·href="#t:unicode_binary/0">unicode_binary</a>()·|·{error,·<a·href="#t:unicode_binary/0">unicode_binary</a>(),·<a·href="#t:chardata/0">chardata</a>()}.</pre>1237 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfkc_binary(<a·href="#t:chardata/0">chardata</a>())·->·<a·href="#t:unicode_binary/0">unicode_binary</a>()·|·{error,·<a·href="#t:unicode_binary/0">unicode_binary</a>(),·<a·href="#t:chardata/0">chardata</a>()}.</pre>
  
1238 ······</div>1238 ······</div>
  
1239 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form1239 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form
1240 of·compatibly·equivalent·Composed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·an·utf8·encoded·binary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfkc_binary</span><span·class="p"·data-group-id="8923441203-1">(</span><span·class="p"·data-group-id="8923441203-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="8923441203-3">[</span><[·...·truncated·by·diffoscope;·len:·799,·SHA:·677fba07df7c257004d9796fb52cc90e6d11f6f87a7165413acbcf3bac13f73a·...·]-1">)</span><span·class="p">.</span><span·class="w">1240 of·compatibly·equivalent·Composed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·an·utf8·encoded·binary.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfkc_binary</span><span·class="p"·data-group-id="5415940857-1">(</span><span·class="p"·data-group-id="5415940857-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="5415940857-3">[</span><[·...·truncated·by·diffoscope;·len:·799,·SHA:·9a56ea7a0dad24b879106c31c36063321f457556a1b8568e55a7460013c28aaa·...·]-1">)</span><span·class="p">.</span><span·class="w">
1241 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..åäö32&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre>1241 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..åäö32&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre>
1242 ··</section>1242 ··</section>
1243 </section>1243 </section>
1244 <section·class="detail"·id="characters_to_nfkc_list/1">1244 <section·class="detail"·id="characters_to_nfkc_list/1">
  
1245 ··<div·class="detail-header">1245 ··<div·class="detail-header">
1246 ····<a·href="#characters_to_nfkc_list/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1246 ····<a·href="#characters_to_nfkc_list/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1268, 15 lines modifiedOffset 1268, 15 lines modified
1268 ······<div·class="specs">1268 ······<div·class="specs">
  
1269 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfkc_list(<a·href="#t:chardata/0">chardata</a>())·->·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()]·|·{error,·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()],·<a·href="#t:chardata/0">chardata</a>()}.</pre>1269 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfkc_list(<a·href="#t:chardata/0">chardata</a>())·->·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()]·|·{error,·[<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:char/0">char</a>()],·<a·href="#t:chardata/0">chardata</a>()}.</pre>
  
1270 ······</div>1270 ······</div>
  
1271 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form1271 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form
1272 of·compatibly·equivalent·Composed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·a·list·of·characters.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfkc_list</span><span·class="p"·data-group-id="0077968071-1">(</span><span·class="p"·data-group-id="0077968071-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="0077968071-3">[</span><[·...·truncated·by·diffoscope;·len:·799,·SHA:·e16d6a11679179813923abe9227caf7de153254971d05278116a4828e0f04adf·...·]-1">)</span><span·class="p">.</span><span·class="w">1272 of·compatibly·equivalent·Composed·characters·according·to·the·Unicode·standard.</p><p>Any·binaries·in·the·input·must·be·encoded·with·utf8·encoding.</p><p>The·result·is·a·list·of·characters.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">unicode</span><span·class="p">:</span><span·class="nf">characters_to_nfkc_list</span><span·class="p"·data-group-id="1672532359-1">(</span><span·class="p"·data-group-id="1672532359-2">[</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc..a&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p"·data-group-id="1672532359-3">[</span><[·...·truncated·by·diffoscope;·len:·799,·SHA:·abf07dcf5039b641a233357d2d82089d67f58d7b5d5f99e6db036657aa998abb·...·]-1">)</span><span·class="p">.</span><span·class="w">
1273 </span><span·class="s">&quot;abc..åäö32&quot;</span></code></pre>1273 </span><span·class="s">&quot;abc..åäö32&quot;</span></code></pre>
1274 ··</section>1274 ··</section>
1275 </section>1275 </section>
1276 <section·class="detail"·id="characters_to_nfkd_binary/1">1276 <section·class="detail"·id="characters_to_nfkd_binary/1">
  
1277 ··<div·class="detail-header">1277 ··<div·class="detail-header">
1278 ····<a·href="#characters_to_nfkd_binary/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1278 ····<a·href="#characters_to_nfkd_binary/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1301, 15 lines modifiedOffset 1301, 15 lines modified
  
1301 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfkd_binary(<a·href="#t:chardata/0">chardata</a>())·->·<a·href="#t:unicode_binary/0">unicode_binary</a>()·|·{error,·<a·href="#t:unicode_binary/0">unicode_binary</a>(),·<a·href="#t:chardata/0">chardata</a>()}.</pre>1301 ··········<pre·translate="no"><span·class="attribute">-spec</span>·characters_to_nfkd_binary(<a·href="#t:chardata/0">chardata</a>())·->·<a·href="#t:unicode_binary/0">unicode_binary</a>()·|·{error,·<a·href="#t:unicode_binary/0">unicode_binary</a>(),·<a·href="#t:chardata/0">chardata</a>()}.</pre>
  
1302 ······</div>1302 ······</div>
  
1303 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form1303 <p>Converts·a·possibly·deep·list·of·characters·and·binaries·into·a·Normalized·Form
1304 of·compatibly·equivalent·Decomposed·characters·according·to·the·Unicode1304 of·compatibly·equivalent·Decomposed·characters·according·to·the·Unicode
Max diff block lines reached; 4904/35009 bytes (14.01%) of diff not shown.
693 B
html2text {}
Max HTML report size reached
152 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/unicode_usage.html
    
Offset 335, 28 lines modifiedOffset 335, 28 lines modified
335 communicating·externally.·Functions·and·bit·syntax·exist·to·encode·and·decode335 communicating·externally.·Functions·and·bit·syntax·exist·to·encode·and·decode
336 both·UTF-8,·UTF-16,·and·UTF-32·in·binaries.·However,·library·functions·dealing336 both·UTF-8,·UTF-16,·and·UTF-32·in·binaries.·However,·library·functions·dealing
337 with·binaries·and·Unicode·in·general·only·deal·with·the·default·encoding.</p><p>Character·data·can·be·combined·from·many·sources,·sometimes·available·in·a·mix337 with·binaries·and·Unicode·in·general·only·deal·with·the·default·encoding.</p><p>Character·data·can·be·combined·from·many·sources,·sometimes·available·in·a·mix
338 of·strings·and·binaries.·Erlang·has·for·long·had·the·concept·of·<code·class="inline">iodata</code>·or338 of·strings·and·binaries.·Erlang·has·for·long·had·the·concept·of·<code·class="inline">iodata</code>·or
339 <code·class="inline">iolist</code>s,·where·binaries·and·lists·can·be·combined·to·represent·a·sequence·of339 <code·class="inline">iolist</code>s,·where·binaries·and·lists·can·be·combined·to·represent·a·sequence·of
340 bytes.·In·the·same·way,·the·Unicode-aware·modules·often·allow·for·combinations340 bytes.·In·the·same·way,·the·Unicode-aware·modules·often·allow·for·combinations
341 of·binaries·and·lists,·where·the·binaries·have·characters·encoded·in·UTF-8·and341 of·binaries·and·lists,·where·the·binaries·have·characters·encoded·in·UTF-8·and
342 the·lists·contain·such·binaries·or·numbers·representing·Unicode·code·points:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">unicode_binary</span><span·class="p"·data-group-id="0575564747-1">(</span><span·class="p"·data-group-id="0575564747-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="0575564747-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·bf67bb82eb48ea96544f32f449c088e387b9fc6617994ea5345660d7fee03760·...·]-2">)</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="ss">characters</span><span·class="w">·</span><span·class="ss">encoded</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">8</span><span·class="w">·</span><span·class="ss">coding</span><span·class="w">·</span><span·class="ss">standard</span><span·class="w">342 the·lists·contain·such·binaries·or·numbers·representing·Unicode·code·points:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">unicode_binary</span><span·class="p"·data-group-id="9444843684-1">(</span><span·class="p"·data-group-id="9444843684-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="9444843684-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·6b313ea4bf90320b5d57736cdaebcda0aeaa57a5ff81ae6cf80a31a203700ac3·...·]-2">)</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="ss">characters</span><span·class="w">·</span><span·class="ss">encoded</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">8</span><span·class="w">·</span><span·class="ss">coding</span><span·class="w">·</span><span·class="ss">standard</span><span·class="w">
  
343 </span><span·class="nf">chardata</span><span·class="p"·data-group-id="0575564747-3">(</span><span·class="p"·data-group-id="0575564747-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">charlist</span><span·class="p"·data-group-id="0575564747-4">(</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·233,·SHA:·27272af6fc6ecd379d91704c497fc7ce93eca4c0b628281cbdb6a2948b2db9eb·...·]-5">)</span><span·class="w">343 </span><span·class="nf">chardata</span><span·class="p"·data-group-id="9444843684-3">(</span><span·class="p"·data-group-id="9444843684-3">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">charlist</span><span·class="p"·data-group-id="9444843684-4">(</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·233,·SHA:·0901b7b056665fed7c047853f4c7d31a54e77a709b85677e80803b7fe81e1a49·...·]-5">)</span><span·class="w">
  
344 </span><span·class="nf">charlist</span><span·class="p"·data-group-id="0575564747-6">(</span><span·class="p"·data-group-id="0575564747-6">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">maybe_improper_list</span><span·class="p"·data-group-id="0575564747-7">(</span><span·class="[·...·truncated·by·diffoscope;·len:·536,·SHA:·e92f73fb3ebc8d9a59017c7c00657f80fdd87f4f6de3943640edd9597e665bcc·...·]-10">)</span><span·class="p">,</span><span·class="w">344 </span><span·class="nf">charlist</span><span·class="p"·data-group-id="9444843684-6">(</span><span·class="p"·data-group-id="9444843684-6">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">maybe_improper_list</span><span·class="p"·data-group-id="9444843684-7">(</span><span·class="[·...·truncated·by·diffoscope;·len:·536,·SHA:·9f49af93d3216324f993cefdd43f5a1ced243bf0ed04101ae92251a90608d6f6·...·]-10">)</span><span·class="p">,</span><span·class="w">
345 ··</span><span·class="nf">unicode_binary</span><span·class="p"·data-group-id="0575564747-11">(</span><span·class="p"·data-group-id="0575564747-11">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">nil</span><span·class="p"·data-group-id="0575564747-12">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·69,·SHA:·8f84974a9d25818417cafbb0757ce3e9ef9d0b269a207c482e3d679289f75fec·...·]-7">)</span></code></pre><p>The·module·<a·href="unicode.html"><code·class="inline">unicode</code></a>·even·supports·similar·mixes·with·binaries·containing345 ··</span><span·class="nf">unicode_binary</span><span·class="p"·data-group-id="9444843684-11">(</span><span·class="p"·data-group-id="9444843684-11">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="nf">nil</span><span·class="p"·data-group-id="9444843684-12">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·69,·SHA:·467a8eedb842d4d9148f211bcb9e8bb265281e16a64a5fce653f495f4336f743·...·]-7">)</span></code></pre><p>The·module·<a·href="unicode.html"><code·class="inline">unicode</code></a>·even·supports·similar·mixes·with·binaries·containing
346 other·encodings·than·UTF-8,·but·that·is·a·special·case·to·allow·for·conversions346 other·encodings·than·UTF-8,·but·that·is·a·special·case·to·allow·for·conversions
347 to·and·from·external·data:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">external_unicode_binary</span><span·class="p"·data-group-id="2654479210-1">(</span><span·class="p"·data-group-id="2654479210-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="2654479210-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·e3fee2d880a5e1ffe952bdad41e9c85e60238edbd5e7bcae17041012861d80c2·...·]-2">)</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="ss">characters</span><span·class="w">·</span><span·class="ss">coded</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">a</span><span·class="w">·</span><span·class="ss">user</span><span·class="o">-</span><span·class="ss">specified</span><span·class="w">347 to·and·from·external·data:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">external_unicode_binary</span><span·class="p"·data-group-id="5512251562-1">(</span><span·class="p"·data-group-id="5512251562-1">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">binary</span><span·class="p"·data-group-id="5512251562-2">(</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·15,·SHA:·f8b18b98253a54a4a019db3e5e26f2b40f61a7539669b12e4d6d6f79224bb0f4·...·]-2">)</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="ss">characters</span><span·class="w">·</span><span·class="ss">coded</span><span·class="w">·</span><span·class="ss">in</span><span·class="w">·</span><span·class="ss">a</span><span·class="w">·</span><span·class="ss">user</span><span·class="o">-</span><span·class="ss">specified</span><span·class="w">
348 ··</span><span·class="n">Unicode</span><span·class="w">·</span><span·class="ss">encoding</span><span·class="w">·</span><span·class="ss">other</span><span·class="w">·</span><span·class="ss">than</span><span·class="w">·</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">8</span><span·class="w">·</span><span·class="p"·data-group-id="2654479210-3">(</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">16</span><span·class="w">·</span><span·class="ow">or</span><span·class="w">·</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">32</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·f1d0d4b19190388d6646ea20c41cd02b0aa41f100bd66d608e20f27ad4f39c8d·...·]-3">)</span><span·class="w">348 ··</span><span·class="n">Unicode</span><span·class="w">·</span><span·class="ss">encoding</span><span·class="w">·</span><span·class="ss">other</span><span·class="w">·</span><span·class="ss">than</span><span·class="w">·</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">8</span><span·class="w">·</span><span·class="p"·data-group-id="5512251562-3">(</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">16</span><span·class="w">·</span><span·class="ow">or</span><span·class="w">·</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">32</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·a7d882c8a4d7f186f0c5803fc96136c542a967dcd959470335a24af4d7831086·...·]-3">)</span><span·class="w">
  
349 </span><span·class="nf">external_chardata</span><span·class="p"·data-group-id="2654479210-4">(</span><span·class="p"·data-group-id="2654479210-4">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">external_charlist</span><span·class="p"·data-group-id="2654479210-5">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·251,·SHA:·07956d2ff61fb0aa8894f06e51a5cffa63fa158b14ad3bdb75b0016f3a188be4·...·]-6">)</span><span·class="w">349 </span><span·class="nf">external_chardata</span><span·class="p"·data-group-id="5512251562-4">(</span><span·class="p"·data-group-id="5512251562-4">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">external_charlist</span><span·class="p"·data-group-id="5512251562-5">(</span><span·class="p"[·...·truncated·by·diffoscope;·len:·251,·SHA:·8d4798cc5b105bfb11bfac7f669f045192ad2c866d32da0390abef4e4f4a47cb·...·]-6">)</span><span·class="w">
  
350 </span><span·class="nf">external_charlist</span><span·class="p"·data-group-id="2654479210-7">(</span><span·class="p"·data-group-id="2654479210-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">maybe_improper_list</span><span·class="p"·data-group-id="2654479210-8">(</span><span·class="[·...·truncated·by·diffoscope;·len:·335,·SHA:·65f8c311e62273937a10da1a9eda605df19aec8c25aef8e451a1ed2bf8d12438·...·]-10">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">350 </span><span·class="nf">external_charlist</span><span·class="p"·data-group-id="5512251562-7">(</span><span·class="p"·data-group-id="5512251562-7">)</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">maybe_improper_list</span><span·class="p"·data-group-id="5512251562-8">(</span><span·class="[·...·truncated·by·diffoscope;·len:·335,·SHA:·dff5cf75aa52b72c193083a1c54d578c7591f6368c19d5ff998c4a08a5084de1·...·]-10">)</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
351 ··</span><span·class="nf">external_charlist</span><span·class="p"·data-group-id="2654479210-11">(</span><span·class="p"·data-group-id="2654479210-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">external_unicode_binary</span><span·class="p"·data-group-id="2654479210-12">(</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·272,·SHA:·1d8398b4b01576d9c56053379e1e0c17aae50585a81e8f5ad09bb5acefc2ae47·...·]-8">)</span></code></pre><h2·id="basic-language-support"·class="section-heading">351 ··</span><span·class="nf">external_charlist</span><span·class="p"·data-group-id="5512251562-11">(</span><span·class="p"·data-group-id="5512251562-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">external_unicode_binary</span><span·class="p"·data-group-id="5512251562-12">(</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·272,·SHA:·09b632aa73077d8b2a2e9bbc6368961309482fb0b58a904845dd478d1e34e9fa·...·]-8">)</span></code></pre><h2·id="basic-language-support"·class="section-heading">
352 ··<a·href="#basic-language-support"·class="hover-link">352 ··<a·href="#basic-language-support"·class="hover-link">
353 ····<i·class="ri-link-m"·aria-hidden="true"></i>353 ····<i·class="ri-link-m"·aria-hidden="true"></i>
354 ··</a>354 ··</a>
355 ··<span·class="text">Basic·Language·Support</span>355 ··<span·class="text">Basic·Language·Support</span>
356 </h2>356 </h2>
357 <p><a·href=""·id="unicode_in_erlang"></a>·As·from·Erlang/OTP·R16,·Erlang·source·files·can·be357 <p><a·href=""·id="unicode_in_erlang"></a>·As·from·Erlang/OTP·R16,·Erlang·source·files·can·be
358 written·in·UTF-8·or·bytewise·(<code·class="inline">latin1</code>)·encoding.·For·information·about·how·to358 written·in·UTF-8·or·bytewise·(<code·class="inline">latin1</code>)·encoding.·For·information·about·how·to
Offset 396, 15 lines modifiedOffset 396, 15 lines modified
396 ··<a·href="#heuristic-string-detection"·class="hover-link">396 ··<a·href="#heuristic-string-detection"·class="hover-link">
397 ····<i·class="ri-link-m"·aria-hidden="true"></i>397 ····<i·class="ri-link-m"·aria-hidden="true"></i>
398 ··</a>398 ··</a>
399 ··<span·class="text">Heuristic·String·Detection</span>399 ··<span·class="text">Heuristic·String·Detection</span>
400 </h3>400 </h3>
401 <p>In·certain·output·functions·and·in·the·output·of·return·values·in·the·shell,401 <p>In·certain·output·functions·and·in·the·output·of·return·values·in·the·shell,
402 Erlang·tries·to·detect·string·data·in·lists·and·binaries·heuristically.402 Erlang·tries·to·detect·string·data·in·lists·and·binaries·heuristically.
403 Typically·you·will·see·heuristic·detection·in·a·situation·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="9770905078-1">[</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">99</span><span·class="p"·data-group-id="9770905078-1">]</span><span·class="p">.</span><span·class="w">403 Typically·you·will·see·heuristic·detection·in·a·situation·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="p"·data-group-id="3879279767-1">[</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">99</span><span·class="p"·data-group-id="3879279767-1">]</span><span·class="p">.</span><span·class="w">
404 </span><span·class="s">&quot;abc&quot;</span><span·class="gp·unselectable">404 </span><span·class="s">&quot;abc&quot;</span><span·class="gp·unselectable">
405 2&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">99</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">405 2&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">98</span><span·class="p">,</span><span·class="mi">99</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
406 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">406 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;abc&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
407 3&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">195</span><span·class="p">,</span><span·class="mi">165</span><span·class="p">,</span><span·class="mi">195</span><span·class="p">,</span><span·class="mi">164</span><span·class="p">,</span><span·class="mi">195</span><span·class="p">,</span><span·class="mi">182</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">407 3&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">195</span><span·class="p">,</span><span·class="mi">165</span><span·class="p">,</span><span·class="mi">195</span><span·class="p">,</span><span·class="mi">164</span><span·class="p">,</span><span·class="mi">195</span><span·class="p">,</span><span·class="mi">182</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
408 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre><p>Here·the·shell·detects·lists·containing·printable·characters·or·binaries408 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre><p>Here·the·shell·detects·lists·containing·printable·characters·or·binaries
409 containing·printable·characters·in·bytewise·or·UTF-8·encoding.·But·what·is·a409 containing·printable·characters·in·bytewise·or·UTF-8·encoding.·But·what·is·a
410 printable·character?·One·view·is·that·anything·the·Unicode·standard·thinks·is410 printable·character?·One·view·is·that·anything·the·Unicode·standard·thinks·is
Offset 416, 58 lines modifiedOffset 416, 58 lines modified
416 to·detect·a·string.·A·third·way·is·to·let·the·user·decide·exactly·what·Unicode416 to·detect·a·string.·A·third·way·is·to·let·the·user·decide·exactly·what·Unicode
417 ranges·that·are·to·be·viewed·as·characters.</p><p>As·from·Erlang/OTP·R16B·you·can·select·the·ISO·Latin-1·range·or·the·whole417 ranges·that·are·to·be·viewed·as·characters.</p><p>As·from·Erlang/OTP·R16B·you·can·select·the·ISO·Latin-1·range·or·the·whole
418 Unicode·range·by·supplying·startup·flag·<code·class="inline">+pc·latin1</code>·or·<code·class="inline">+pc·unicode</code>,418 Unicode·range·by·supplying·startup·flag·<code·class="inline">+pc·latin1</code>·or·<code·class="inline">+pc·unicode</code>,
419 respectively.·For·backward·compatibility,·<code·class="inline">latin1</code>·is·default.·This·only419 respectively.·For·backward·compatibility,·<code·class="inline">latin1</code>·is·default.·This·only
420 controls·how·heuristic·string·detection·is·done.·More·ranges·are·expected·to·be420 controls·how·heuristic·string·detection·is·done.·More·ranges·are·expected·to·be
421 added·in·the·future,·enabling·tailoring·of·the·heuristics·to·the·language·and421 added·in·the·future,·enabling·tailoring·of·the·heuristics·to·the·language·and
422 region·relevant·to·the·user.</p><p>The·following·examples·show·the·two·startup·options:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">+</span><span·class="ss">pc</span><span·class="w">·</span><span·class="ss">latin1</span><span·class="w">422 region·relevant·to·the·user.</p><p>The·following·examples·show·the·two·startup·options:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">+</span><span·class="ss">pc</span><span·class="w">·</span><span·class="ss">latin1</span><span·class="w">
423 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="4447300721-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="4447300721-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·aa1c7f60c553f446aff151c31c994223ac7bc11ae1bc438cdb979827b0956b64·...·]-5">]</span><span·class="w">423 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="1730827685-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="1730827685-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·f7cb18b4a45656c4c446045c0c518b36b245c56a20c36e25dae383c442c6838c·...·]-5">]</span><span·class="w">
  
424 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="4447300721-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="4447300721-6">)</span><span·class="gp·unselectable">424 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="1730827685-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="1730827685-6">)</span><span·class="gp·unselectable">
425 1&gt;·</span><span·class="p"·data-group-id="4447300721-7">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="4447300721-7">]</span><span·class="p">.</span><span·class="w">425 1&gt;·</span><span·class="p"·data-group-id="1730827685-7">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="1730827685-7">]</span><span·class="p">.</span><span·class="w">
426 </span><span·class="p"·data-group-id="4447300721-8">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="4447300721-8">]</span><span·class="gp·unselectable">426 </span><span·class="p"·data-group-id="1730827685-8">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="1730827685-8">]</span><span·class="gp·unselectable">
427 2&gt;·</span><span·class="p"·data-group-id="4447300721-9">[</span><span·class="mi">1070</span><span·class="p">,</span><span·class="mi">1085</span><span·class="p">,</span><span·class="mi">1080</span><span·class="p">,</span><span·class="mi">1082</span><span·class="p">,</span><span·class="mi">1086</spa[·...·truncated·by·diffoscope;·len:·95,·SHA:·e3118897c6a5472a74fee911055502d8ed2fd12d516166f9081481316c2fee1e·...·]-9">]</span><span·class="p">.</span><span·class="w">427 2&gt;·</span><span·class="p"·data-group-id="1730827685-9">[</span><span·class="mi">1070</span><span·class="p">,</span><span·class="mi">1085</span><span·class="p">,</span><span·class="mi">1080</span><span·class="p">,</span><span·class="mi">1082</span><span·class="p">,</span><span·class="mi">1086</spa[·...·truncated·by·diffoscope;·len:·95,·SHA:·0321d505fa2bc125f92ad9bce8af4a05124d58b36394eb8b231b53fc10a937fc·...·]-9">]</span><span·class="p">.</span><span·class="w">
428 </span><span·class="p"·data-group-id="4447300721-10">[</span><span·class="mi">1070</span><span·class="p">,</span><span·class="mi">1085</span><span·class="p">,</span><span·class="mi">1080</span><span·class="p">,</span><span·class="mi">1082</span><span·class="p">,</span><span·class="mi">1086</sp[·...·truncated·by·diffoscope;·len:·96,·SHA:·94f9a3ddfa6b802314682255d8d7286bbbcdabf51d74023a04fc8a73105aa0b8·...·]-10">]</span><span·class="gp·unselectable">428 </span><span·class="p"·data-group-id="1730827685-10">[</span><span·class="mi">1070</span><span·class="p">,</span><span·class="mi">1085</span><span·class="p">,</span><span·class="mi">1080</span><span·class="p">,</span><span·class="mi">1082</span><span·class="p">,</span><span·class="mi">1086</sp[·...·truncated·by·diffoscope;·len:·96,·SHA:·4ce128269a3247c0289f79ea15e6f3a42a7b576ed2070dedad472f6078689ea7·...·]-10">]</span><span·class="gp·unselectable">
429 3&gt;·</span><span·class="p"·data-group-id="4447300721-11">[</span><span·class="mi">229</span><span·class="p">,</span><span·class="mi">228</span><span·class="p">,</span><span·class="mi">246</span><span·class="p"·data-group-id="4447300721-11">]</span><span·class="p">.</span><span·class="w">429 3&gt;·</span><span·class="p"·data-group-id="1730827685-11">[</span><span·class="mi">229</span><span·class="p">,</span><span·class="mi">228</span><span·class="p">,</span><span·class="mi">246</span><span·class="p"·data-group-id="1730827685-11">]</span><span·class="p">.</span><span·class="w">
430 </span><span·class="s">&quot;åäö&quot;</span><span·class="gp·unselectable">430 </span><span·class="s">&quot;åäö&quot;</span><span·class="gp·unselectable">
431 4&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">174</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">189</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">184</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">186</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">180</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">431 4&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">174</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">189</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">184</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">186</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">180</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
432 </span><span·class="p">&lt;&lt;</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">174</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">189</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">184</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">186</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">180</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">432 </span><span·class="p">&lt;&lt;</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">174</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">189</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">184</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">186</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">180</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
433 5&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">229</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">,</span><span·class="mi">228</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">,</span><span·class="mi">246</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">433 5&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">229</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">,</span><span·class="mi">228</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">,</span><span·class="mi">246</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
434 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">+</span><span·class="ss">pc</span><span·class="w">·</span><span·class="ss">unicode</span><span·class="w">434 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">+</span><span·class="ss">pc</span><span·class="w">·</span><span·class="ss">unicode</span><span·class="w">
435 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="3005665954-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="3005665954-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·781,·SHA:·4961e469ee162d56bb0b6754b4efcfd5094e38f5dd11e698ec7d0dcf5bfddaed·...·]-5">]</span><span·class="w">435 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="3667722118-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="3667722118-1">)</span><span·class="w">·</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·781,·SHA:·b1f48ac0bd27739754d348e632589e641db9a17c7f940d6fd1d931a7dc566a55·...·]-5">]</span><span·class="w">
  
436 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="3005665954-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="3005665954-6">)</span><span·class="gp·unselectable">436 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="3667722118-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="3667722118-6">)</span><span·class="gp·unselectable">
437 1&gt;·</span><span·class="p"·data-group-id="3005665954-7">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="3005665954-7">]</span><span·class="p">.</span><span·class="w">437 1&gt;·</span><span·class="p"·data-group-id="3667722118-7">[</span><span·class="mi">1024</span><span·class="p"·data-group-id="3667722118-7">]</span><span·class="p">.</span><span·class="w">
438 </span><span·class="s">&quot;Ѐ&quot;</span><span·class="gp·unselectable">438 </span><span·class="s">&quot;Ѐ&quot;</span><span·class="gp·unselectable">
439 2&gt;·</span><span·class="p"·data-group-id="3005665954-8">[</span><span·class="mi">1070</span><span·class="p">,</span><span·class="mi">1085</span><span·class="p">,</span><span·class="mi">1080</span><span·class="p">,</span><span·class="mi">1082</span><span·class="p">,</span><span·class="mi">1086</span[·...·truncated·by·diffoscope;·len:·94,·SHA:·cc962542d605c4db24a6f0415dcfa127e3915c1dfcab705eb21b5d868c18d375·...·]-8">]</span><span·class="p">.</span><span·class="w">439 2&gt;·</span><span·class="p"·data-group-id="3667722118-8">[</span><span·class="mi">1070</span><span·class="p">,</span><span·class="mi">1085</span><span·class="p">,</span><span·class="mi">1080</span><span·class="p">,</span><span·class="mi">1082</span><span·class="p">,</span><span·class="mi">1086</span[·...·truncated·by·diffoscope;·len:·94,·SHA:·850b309424fb81750f8288aa5b3aa96e198e70766ccda4227236de52613afd9a·...·]-8">]</span><span·class="p">.</span><span·class="w">
440 </span><span·class="s">&quot;Юникод&quot;</span><span·class="gp·unselectable">440 </span><span·class="s">&quot;Юникод&quot;</span><span·class="gp·unselectable">
441 3&gt;·</span><span·class="p"·data-group-id="3005665954-9">[</span><span·class="mi">229</span><span·class="p">,</span><span·class="mi">228</span><span·class="p">,</span><span·class="mi">246</span><span·class="p"·data-group-id="3005665954-9">]</span><span·class="p">.</span><span·class="w">441 3&gt;·</span><span·class="p"·data-group-id="3667722118-9">[</span><span·class="mi">229</span><span·class="p">,</span><span·class="mi">228</span><span·class="p">,</span><span·class="mi">246</span><span·class="p"·data-group-id="3667722118-9">]</span><span·class="p">.</span><span·class="w">
442 </span><span·class="s">&quot;åäö&quot;</span><span·class="gp·unselectable">442 </span><span·class="s">&quot;åäö&quot;</span><span·class="gp·unselectable">
443 4&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">174</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">189</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">184</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">186</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">180</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">443 4&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">174</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">189</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">184</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">186</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">190</span><span·class="p">,</span><span·class="mi">208</span><span·class="p">,</span><span·class="mi">180</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
444 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Юникод&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">444 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Юникод&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
445 5&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">229</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">,</span><span·class="mi">228</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">,</span><span·class="mi">246</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">445 5&gt;·</span><span·class="p">&lt;&lt;</span><span·class="mi">229</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">,</span><span·class="mi">228</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">,</span><span·class="mi">246</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span><span·class="p">.</span><span·class="w">
446 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre><p>In·the·examples,·you·can·see·that·the·default·Erlang·shell·interprets·only446 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span></code></pre><p>In·the·examples,·you·can·see·that·the·default·Erlang·shell·interprets·only
447 characters·from·the·ISO·Latin1·range·as·printable·and·only·detects·lists·or447 characters·from·the·ISO·Latin1·range·as·printable·and·only·detects·lists·or
448 binaries·with·those·&quot;printable&quot;·characters·as·containing·string·data.·The·valid448 binaries·with·those·&quot;printable&quot;·characters·as·containing·string·data.·The·valid
449 UTF-8·binary·containing·the·Russian·word·&quot;Юникод&quot;,·is·not·printed·as·a·string.449 UTF-8·binary·containing·the·Russian·word·&quot;Юникод&quot;,·is·not·printed·as·a·string.
450 When·started·with·all·Unicode·characters·printable·(<code·class="inline">+pc·unicode</code>),·the·shell450 When·started·with·all·Unicode·characters·printable·(<code·class="inline">+pc·unicode</code>),·the·shell
451 outputs·anything·containing·printable·Unicode·data·(in·binaries,·either·UTF-8·or451 outputs·anything·containing·printable·Unicode·data·(in·binaries,·either·UTF-8·or
452 bytewise·encoded)·as·string·data.</p><p>These·heuristics·are·also·used·by·<a·href="io.html#format/2"><code·class="inline">io:format/2</code></a>,·<a·href="io_lib.html#format/2"><code·class="inline">io_lib:format/2</code></a>,·and·friends452 bytewise·encoded)·as·string·data.</p><p>These·heuristics·are·also·used·by·<a·href="io.html#format/2"><code·class="inline">io:format/2</code></a>,·<a·href="io_lib.html#format/2"><code·class="inline">io_lib:format/2</code></a>,·and·friends
453 when·modifier·<code·class="inline">t</code>·is·used·with·<code·class="inline">~p</code>·or·<code·class="inline">~P</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">+</span><span·class="ss">pc</span><span·class="w">·</span><span·class="ss">latin1</span><span·class="w">453 when·modifier·<code·class="inline">t</code>·is·used·with·<code·class="inline">~p</code>·or·<code·class="inline">~P</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">+</span><span·class="ss">pc</span><span·class="w">·</span><span·class="ss">latin1</span><span·class="w">
454 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="4206790330-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="4206790330-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·eced9d25aef4801f823d3e5366504d5c86a95b7a66b9a5dd725e3885b33ef93e·...·]-5">]</span><span·class="w">454 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="6733633967-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="6733633967-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·d21a14ab49bcf6c3d1accd47e349863972d5af2d77d37e313928c7f445fe1dd3·...·]-5">]</span><span·class="w">
  
455 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="4206790330-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="4206790330-6">)</span><span·class="gp·unselectable">455 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="6733633967-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="6733633967-6">)</span><span·class="gp·unselectable">
456 1&gt;·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="4206790330-7">(</span><span·class="s">&quot;~tp</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="4206790330-8">[</span><span·class="p"·data-group-id="4206790330-9">{</span><span·class="p">&[·...·truncated·by·diffoscope;·len:·1128,·SHA:·c3dfdf058504fc8f40086d097ee7570df4d4389483af8eadb3c7a54669608508·...·]-7">)</span><span·class="p">.</span><span·class="w">456 1&gt;·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6733633967-7">(</span><span·class="s">&quot;~tp</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="6733633967-8">[</span><span·class="p"·data-group-id="6733633967-9">{</span><span·class="p">&[·...·truncated·by·diffoscope;·len:·1128,·SHA:·95de6ef8ebfb1da4326e39287e14d88a3c6034d92768ce7a9c7bd463c41a0280·...·]-7">)</span><span·class="p">.</span><span·class="w">
457 </span><span·class="p"·data-group-id="4206790330-10">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·758,·SHA:·de3d37d896fac825511622df2673ea486490ef5817b8369fb50d43ade15b8aec·...·]-10">}</span><span·class="w">457 </span><span·class="p"·data-group-id="6733633967-10">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·758,·SHA:·9fbf3b80a77301909bb292d3c3d7402027a28c01b8051be642066bda83f761e4·...·]-10">}</span><span·class="w">
458 </span><span·class="ss">ok</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">+</span><span·class="ss">pc</span><span·class="w">·</span><span·class="ss">unicode</span><span·class="w">458 </span><span·class="ss">ok</span></code></pre><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="ss">erl</span><span·class="w">·</span><span·class="o">+</span><span·class="ss">pc</span><span·class="w">·</span><span·class="ss">unicode</span><span·class="w">
459 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="6740620311-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="6740620311-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·781,·SHA:·eff7788427c39f5ed21aef6c8379a55421dc6fe24eec564bf3baf18b0db80c57·...·]1-5">]</span><span·class="w">459 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="8281741731-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="8281741731-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·781,·SHA:·c67d5d97bad5e88fdbdf2fa019c48ba84a87804512088ce7e5665fde06de78ba·...·]1-5">]</span><span·class="w">
  
460 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="6740620311-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="6740620311-6">)</span><span·class="gp·unselectable">460 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="8281741731-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="8281741731-6">)</span><span·class="gp·unselectable">
461 1&gt;·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="6740620311-7">(</span><span·class="s">&quot;~tp</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="6740620311-8">[</span><span·class="p"·data-group-id="6740620311-9">{</span><span·class="p">&[·...·truncated·by·diffoscope;·len:·1127,·SHA:·69d34ded05d93d544673f2f256414545380ce9fc390e538079921b92b654ea38·...·]1-7">)</span><span·class="p">.</span><span·class="w">461 1&gt;·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8281741731-7">(</span><span·class="s">&quot;~tp</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="8281741731-8">[</span><span·class="p"·data-group-id="8281741731-9">{</span><span·class="p">&[·...·truncated·by·diffoscope;·len:·1127,·SHA:·79374d7f2774845c85c725103828acc40394503a59c2fa7d45eac001720b0919·...·]1-7">)</span><span·class="p">.</span><span·class="w">
462 </span><span·class="p"·data-group-id="6740620311-10">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·262,·SHA:·c7a0dc594a6a3faafdd5ad5b6ad319c945360ed1f733f4c2998cd295c6dd8d91·...·]1-10">}</span><span·class="w">462 </span><span·class="p"·data-group-id="8281741731-10">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;åäö&quot;</span><span·class="o">/</span><span·class="ss"[·...·truncated·by·diffoscope;·len:·262,·SHA:·4c4ff283b55f17eed846f163a22691fa285b268b599fa808886cfd1bc3e4e36b·...·]1-10">}</span><span·class="w">
463 </span><span·class="ss">ok</span></code></pre><p>Notice·that·this·only·affects·<em>heuristic</em>·interpretation·of·lists·and·binaries463 </span><span·class="ss">ok</span></code></pre><p>Notice·that·this·only·affects·<em>heuristic</em>·interpretation·of·lists·and·binaries
464 on·output.·For·example,·the·<code·class="inline">~ts</code>·format·sequence·always·outputs·a·valid·list·of464 on·output.·For·example,·the·<code·class="inline">~ts</code>·format·sequence·always·outputs·a·valid·list·of
465 characters,·regardless·of·the·<code·class="inline">+pc</code>·setting,·as·the·programmer·has·explicitly465 characters,·regardless·of·the·<code·class="inline">+pc</code>·setting,·as·the·programmer·has·explicitly
466 requested·string·output.</p><h2·id="the-interactive-shell"·class="section-heading">466 requested·string·output.</p><h2·id="the-interactive-shell"·class="section-heading">
467 ··<a·href="#the-interactive-shell"·class="hover-link">467 ··<a·href="#the-interactive-shell"·class="hover-link">
468 ····<i·class="ri-link-m"·aria-hidden="true"></i>468 ····<i·class="ri-link-m"·aria-hidden="true"></i>
469 ··</a>469 ··</a>
Offset 482, 47 lines modifiedOffset 482, 47 lines modified
482 example,·a·<code·class="inline">LANG</code>·environment·variable·can·be·set·as·follows:</p><pre><code·class="text">$·echo·$LANG482 example,·a·<code·class="inline">LANG</code>·environment·variable·can·be·set·as·follows:</p><pre><code·class="text">$·echo·$LANG
483 en_US.UTF-8</code></pre><p>Most·systems·handle·variable·<code·class="inline">LC_CTYPE</code>·before·<code·class="inline">LANG</code>,·so·if·that·is·set,·it483 en_US.UTF-8</code></pre><p>Most·systems·handle·variable·<code·class="inline">LC_CTYPE</code>·before·<code·class="inline">LANG</code>,·so·if·that·is·set,·it
484 must·be·set·to·<code·class="inline">UTF-8</code>:</p><pre><code·class="text">$·echo·$LC_CTYPE484 must·be·set·to·<code·class="inline">UTF-8</code>:</p><pre><code·class="text">$·echo·$LC_CTYPE
485 en_US.UTF-8</code></pre><p>The·<code·class="inline">LANG</code>·or·<code·class="inline">LC_CTYPE</code>·setting·are·to·be·consistent·with·what·the·terminal·is485 en_US.UTF-8</code></pre><p>The·<code·class="inline">LANG</code>·or·<code·class="inline">LC_CTYPE</code>·setting·are·to·be·consistent·with·what·the·terminal·is
486 capable·of.·There·is·no·portable·way·for·Erlang·to·ask·the·terminal·about·its486 capable·of.·There·is·no·portable·way·for·Erlang·to·ask·the·terminal·about·its
487 UTF-8·capacity,·we·have·to·rely·on·the·language·and·character·type·settings.</p><p>To·investigate·what·Erlang·thinks·about·the·terminal,·the·call487 UTF-8·capacity,·we·have·to·rely·on·the·language·and·character·type·settings.</p><p>To·investigate·what·Erlang·thinks·about·the·terminal,·the·call
488 <a·href="io.html#getopts/1"><code·class="inline">io:getopts()</code></a>·can·be·used·when·the·shell·is·started:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="n">LC_CTYPE</span><span·class="o">=</span><span·class="ss">en_US</span><span·class="p">.</span><span·class="n">ISO</span><span·class="o">-</span><span·class="mi">8859</span><span·class="o">-</span><span·class="mi">1</span><span·class="w">·</span><span·class="ss">erl</span><span·class="w">488 <a·href="io.html#getopts/1"><code·class="inline">io:getopts()</code></a>·can·be·used·when·the·shell·is·started:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="sc">$·</span><span·class="n">LC_CTYPE</span><span·class="o">=</span><span·class="ss">en_US</span><span·class="p">.</span><span·class="n">ISO</span><span·class="o">-</span><span·class="mi">8859</span><span·class="o">-</span><span·class="mi">1</span><span·class="w">·</span><span·class="ss">erl</span><span·class="w">
489 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="7416882762-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="7416882762-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·cd51772944f6d90c3f18fcb63aba00defe2aa2458c20f0790d22cfe737ca2ce1·...·]-5">]</span><span·class="w">489 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="1403055771-1">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="1403055771-1">)</span><span·class="w">·</span><span·class="p"·data-group-i[·...·truncated·by·diffoscope;·len:·782,·SHA:·1639780e838618b5144e91f0478cfbc426330f493e3ddb19f13f651b4f2bbe5f·...·]-5">]</span><span·class="w">
  
490 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="7416882762-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="7416882762-6">)</span><span·class="gp·unselectable">490 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="1403055771-6">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="1403055771-6">)</span><span·class="gp·unselectable">
491 1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">keyfind</span><span·class="p"·data-group-id="7416882762-7">(</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">getopts</span>[·...·truncated·by·diffoscope;·len:·147,·SHA:·43fe42a0b9f82531e4f3b969061cb8f27f48445b3dfcd1942f691a68e1e4c00d·...·]-7">)</span><span·class="p">.</span><span·class="w">491 1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">keyfind</span><span·class="p"·data-group-id="1403055771-7">(</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">getopts</span>[·...·truncated·by·diffoscope;·len:·147,·SHA:·175f55318816f5c627d8191c48f8abfff44d9c0b78e4ae56b7a33bcad18c2701·...·]-7">)</span><span·class="p">.</span><span·class="w">
492 </span><span·class="p"·data-group-id="7416882762-9">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="ss">latin1</span><span·class="p"·data-group-id="7416882762-9">}</span><span·class="gp·unselectable">492 </span><span·class="p"·data-group-id="1403055771-9">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="ss">latin1</span><span·class="p"·data-group-id="1403055771-9">}</span><span·class="gp·unselectable">
493 2&gt;·</span><span·class="nf">q</span><span·class="p"·data-group-id="7416882762-10">(</span><span·class="p"·data-group-id="7416882762-10">)</span><span·class="p">.</span><span·class="w">493 2&gt;·</span><span·class="nf">q</span><span·class="p"·data-group-id="1403055771-10">(</span><span·class="p"·data-group-id="1403055771-10">)</span><span·class="p">.</span><span·class="w">
494 </span><span·class="ss">ok</span><span·class="w">494 </span><span·class="ss">ok</span><span·class="w">
495 </span><span·class="sc">$·</span><span·class="n">LC_CTYPE</span><span·class="o">=</span><span·class="ss">en_US</span><span·class="p">.</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">8</span><span·class="w">·</span><span·class="ss">erl</span><span·class="w">495 </span><span·class="sc">$·</span><span·class="n">LC_CTYPE</span><span·class="o">=</span><span·class="ss">en_US</span><span·class="p">.</span><span·class="n">UTF</span><span·class="o">-</span><span·class="mi">8</span><span·class="w">·</span><span·class="ss">erl</span><span·class="w">
496 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="7416882762-11">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="7416882762-11">)</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·791,·SHA:·2b794bb5721e38efd6f57e99a68abebfbedd8ec86d41a08f8af381ea33e832dc·...·]-15">]</span><span·class="w">496 </span><span·class="n">Erlang</span><span·class="w">·</span><span·class="n">R16B</span><span·class="w">·</span><span·class="p"·data-group-id="1403055771-11">(</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">5.10</span><span·class="p">.</span><span·class="mi">1</span><span·class="p"·data-group-id="1403055771-11">)</span><span·class="w">·</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·791,·SHA:·e6dd1a006e8bd4b025105381879d130ee3cfd61723619380a45521b39cc3c8f9·...·]-15">]</span><span·class="w">
  
497 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="7416882762-16">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="7416882762-16">)</span><span·class="gp·unselectable">497 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V5</span><span·class="p">.</span><span·class="mf">10.1</span><span·class="w">··</span><span·class="p"·data-group-id="1403055771-16">(</span><span·class="ss">abort</span><span·class="w">·</span><span·class="ss">with</span><span·class="w">·</span><span·class="err">^</span><span·class="n">G</span><span·class="p"·data-group-id="1403055771-16">)</span><span·class="gp·unselectable">
498 1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">keyfind</span><span·class="p"·data-group-id="7416882762-17">(</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">getopts</span[·...·truncated·by·diffoscope;·len:·150,·SHA:·9b0d1448b9ea9041c913c19022bfa114bad84d2fff351a9f7aab21e745e5bed9·...·]-17">)</span><span·class="p">.</span><span·class="w">498 1&gt;·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">keyfind</span><span·class="p"·data-group-id="1403055771-17">(</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">getopts</span[·...·truncated·by·diffoscope;·len:·150,·SHA:·9bdb425dcace85584d13040e67a5bc6ba21f0b64cb3f04b0766cc17351766b13·...·]-17">)</span><span·class="p">.</span><span·class="w">
499 </span><span·class="p"·data-group-id="7416882762-19">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p"·data-group-id="7416882762-19">}</span><span·class="w">499 </span><span·class="p"·data-group-id="1403055771-19">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="ss">unicode</span><span·class="p"·data-group-id="1403055771-19">}</span><span·class="w">
500 </span><span·class="mi">2</span><span·class="o">&gt;</span></code></pre><p>When·(finally?)·everything·is·in·order·with·the·locale·settings,·fonts.·and·the500 </span><span·class="mi">2</span><span·class="o">&gt;</span></code></pre><p>When·(finally?)·everything·is·in·order·with·the·locale·settings,·fonts.·and·the
501 terminal·emulator,·you·have·probably·found·a·way·to·input·characters·in·the501 terminal·emulator,·you·have·probably·found·a·way·to·input·characters·in·the
502 script·you·desire.·For·testing,·the·simplest·way·is·to·add·some·keyboard502 script·you·desire.·For·testing,·the·simplest·way·is·to·add·some·keyboard
Max diff block lines reached; 90733/154583 bytes (58.70%) of diff not shown.
830 B
html2text {}
Max HTML report size reached
83.2 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/uri_string.html
    
Offset 597, 18 lines modifiedOffset 597, 18 lines modified
597 ···························QueryString·::·<a·href="#t:uri_string/0">uri_string</a>()·|·<a·href="#t:error/0">error</a>().</pre>597 ···························QueryString·::·<a·href="#t:uri_string/0">uri_string</a>()·|·<a·href="#t:error/0">error</a>().</pre>
  
598 ······</div>598 ······</div>
  
599 <p>Composes·a·form-urlencoded·<code·class="inline">QueryString</code>·based·on·a·<code·class="inline">QueryList</code>,·a·list·of599 <p>Composes·a·form-urlencoded·<code·class="inline">QueryString</code>·based·on·a·<code·class="inline">QueryList</code>,·a·list·of
600 non-percent-encoded·key-value·pairs.</p><p>Form-urlencoding·is·defined·in·section·4.10.21.6·of·the·<a·href="https://www.w3.org/TR/html52/">HTML·5.2</a>600 non-percent-encoded·key-value·pairs.</p><p>Form-urlencoding·is·defined·in·section·4.10.21.6·of·the·<a·href="https://www.w3.org/TR/html52/">HTML·5.2</a>
601 specification·and·in·section·4.10.22.6·of·the·<a·href="https://www.w3.org/TR/html50/">HTML·5.0</a>601 specification·and·in·section·4.10.22.6·of·the·<a·href="https://www.w3.org/TR/html50/">HTML·5.0</a>
602 specification·for·non-UTF-8·encodings.</p><p>See·also·the·opposite·operation·<a·href="#dissect_query/1"><code·class="inline">dissect_query/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">compose_query</span><span·class="p"·data-group-id="0441602941-1">(</span><span·class="p"·data-group-id="0441602941-2">[</span><span·class="p"·data-group-id="0441602941-3">{</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·355,·SHA:·907b94e245ea95725a7978d88b5ee6f7e777bed3b3d3175062d85cefac9041a9·...·]-1">)</span><span·class="p">.</span><span·class="w">602 specification·for·non-UTF-8·encodings.</p><p>See·also·the·opposite·operation·<a·href="#dissect_query/1"><code·class="inline">dissect_query/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">compose_query</span><span·class="p"·data-group-id="4395391189-1">(</span><span·class="p"·data-group-id="4395391189-2">[</span><span·class="p"·data-group-id="4395391189-3">{</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·355,·SHA:·f79745cb76b43f4906b3ec8692a3605ed3ad4bbc70b6d9ec647e0622c816b7f8·...·]-1">)</span><span·class="p">.</span><span·class="w">
603 </span><span·class="s">&quot;foo+bar=1&amp;city=%C3%B6rebro&quot;</span><span·class="gp·unselectable">603 </span><span·class="s">&quot;foo+bar=1&amp;city=%C3%B6rebro&quot;</span><span·class="gp·unselectable">
604 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">compose_query</span><span·class="p"·data-group-id="0441602941-5">(</span><span·class="p"·data-group-id="0441602941-6">[</span><span·class="p"·data-group-id="0441602941-7">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·139,·SHA:·5d65b8069c10fdbdb3cae3eec1b5b470e35fd2273d0e562011818d560660f6e8·...·]-7">}</span><span·class="p">,</span><span·class="gp·unselectable">604 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">compose_query</span><span·class="p"·data-group-id="4395391189-5">(</span><span·class="p"·data-group-id="4395391189-6">[</span><span·class="p"·data-group-id="4395391189-7">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·139,·SHA:·a6269a733e3019decfa9067cc4ccacb562670406dd9026c82eeccc626766707a·...·]-7">}</span><span·class="p">,</span><span·class="gp·unselectable">
605 2&gt;·</span><span·class="p"·data-group-id="0441602941-8">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;city&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;örebro&quot;</span><span·class="o">/</span><span·class="[·...·truncated·by·diffoscope;·len:·193,·SHA:·98f26eff615c40b1e7c908f305b1cba7f35909032ea59408c050121d97a047dd·...·]-5">)</span><span·class="p">.</span><span·class="w">605 2&gt;·</span><span·class="p"·data-group-id="4395391189-8">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;city&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;örebro&quot;</span><span·class="o">/</span><span·class="[·...·truncated·by·diffoscope;·len:·193,·SHA:·f3228590c71bc443b0fa1a2ab81458076eaaaad598801739c28648f9b6682264·...·]-5">)</span><span·class="p">.</span><span·class="w">
606 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo+bar=1&amp;city=%C3%B6rebro&quot;</span><span·class="p">&gt;&gt;</span></code></pre>606 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo+bar=1&amp;city=%C3%B6rebro&quot;</span><span·class="p">&gt;&gt;</span></code></pre>
607 ··</section>607 ··</section>
608 </section>608 </section>
609 <section·class="detail"·id="compose_query/2">609 <section·class="detail"·id="compose_query/2">
  
610 ··<div·class="detail-header">610 ··<div·class="detail-header">
611 ····<a·href="#compose_query/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">611 ····<a·href="#compose_query/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 644, 19 lines modifiedOffset 644, 19 lines modified
644 algorithm.</p><p>There·are·two·supported·encodings:·<code·class="inline">utf8</code>·(or·<code·class="inline">unicode</code>)·and·<code·class="inline">latin1</code>.</p><p>Each·character·in·the·entry's·name·and·value·that·cannot·be·expressed·using·the644 algorithm.</p><p>There·are·two·supported·encodings:·<code·class="inline">utf8</code>·(or·<code·class="inline">unicode</code>)·and·<code·class="inline">latin1</code>.</p><p>Each·character·in·the·entry's·name·and·value·that·cannot·be·expressed·using·the
645 selected·character·encoding,·is·replaced·by·a·string·consisting·of·a·U+0026645 selected·character·encoding,·is·replaced·by·a·string·consisting·of·a·U+0026
646 AMPERSAND·character·(&amp;),·a·&quot;#&quot;·(U+0023)·character,·one·or·more·ASCII·digits646 AMPERSAND·character·(&amp;),·a·&quot;#&quot;·(U+0023)·character,·one·or·more·ASCII·digits
647 representing·the·Unicode·code·point·of·the·character·in·base·ten,·and·finally·a647 representing·the·Unicode·code·point·of·the·character·in·base·ten,·and·finally·a
648 &quot;;&quot;·(U+003B)·character.</p><p>Bytes·that·are·out·of·the·range·0x2A,·0x2D,·0x2E,·0x30·to·0x39,·0x41·to·0x5A,648 &quot;;&quot;·(U+003B)·character.</p><p>Bytes·that·are·out·of·the·range·0x2A,·0x2D,·0x2E,·0x30·to·0x39,·0x41·to·0x5A,
649 0x5F,·0x61·to·0x7A,·are·percent-encoded·(U+0025·PERCENT·SIGN·character·(%)649 0x5F,·0x61·to·0x7A,·are·percent-encoded·(U+0025·PERCENT·SIGN·character·(%)
650 followed·by·uppercase·ASCII·hex·digits·representing·the·hexadecimal·value·of·the650 followed·by·uppercase·ASCII·hex·digits·representing·the·hexadecimal·value·of·the
651 byte).</p><p>See·also·the·opposite·operation·<a·href="#dissect_query/1"><code·class="inline">dissect_query/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">compose_query</span><span·class="p"·data-group-id="6770180701-1">(</span><span·class="p"·data-group-id="6770180701-2">[</span><span·class="p"·data-group-id="6770180701-3">{</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·302,·SHA:·64dba8eaf69bee8ab003a48ca1142f93a91151f1edb42be18957d40c7f71d68d·...·]-2">]</span><span·class="p">,</span><span·class="gp·unselectable">651 byte).</p><p>See·also·the·opposite·operation·<a·href="#dissect_query/1"><code·class="inline">dissect_query/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">compose_query</span><span·class="p"·data-group-id="7249267693-1">(</span><span·class="p"·data-group-id="7249267693-2">[</span><span·class="p"·data-group-id="7249267693-3">{</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·302,·SHA:·718d1865a74eb185133563398d06817ee7f5eb2e4b0164002b694bad70f24c1d·...·]-2">]</span><span·class="p">,</span><span·class="gp·unselectable">
652 1&gt;·</span><span·class="p"·data-group-id="6770180701-5">[</span><span·class="p"·data-group-id="6770180701-6">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">latin1</span><span·class="p"·data-group-id="6770180701-6">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·08f1e91e6d47715e4718d120f306d3963bc0b5cd3bdcf7b8ef4b864ed62de0fb·...·]-1">)</span><span·class="p">.</span><span·class="w">652 1&gt;·</span><span·class="p"·data-group-id="7249267693-5">[</span><span·class="p"·data-group-id="7249267693-6">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">latin1</span><span·class="p"·data-group-id="7249267693-6">}</span><span·class="p"·da[·...·truncated·by·diffoscope;·len:·76,·SHA:·a39478c3521fae7d677ebc3a398ba56ddd545e3a2b08c6fcc155dc77ab5c18af·...·]-1">)</span><span·class="p">.</span><span·class="w">
653 </span><span·class="s">&quot;foo+bar=1&amp;city=%F6rebro&quot;</span><span·class="gp·unselectable">653 </span><span·class="s">&quot;foo+bar=1&amp;city=%F6rebro&quot;</span><span·class="gp·unselectable">
654 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">compose_query</span><span·class="p"·data-group-id="6770180701-7">(</span><span·class="p"·data-group-id="6770180701-8">[</span><span·class="p"·data-group-id="6770180701-9">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;1&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6770180701-9">}</span><span·class="p">,</span><span·class="gp·unselectable"> 
655 2&gt;·</span><span·class="p"·data-group-id="6770180701-10">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;city&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;東京&quot;</span><span·class="o">/</spa[·...·truncated·by·diffoscope;·len:·633,·SHA:·421d42d9ad4f59361988d602b8e8533c1716bdafa7e438ddb81fa4b3ebe2f0f4·...·]">654 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">compose_query</span><span·class="p"·data-group-id="7249267693-7">(</span><span·class="p"·data-group-id="7249267693-8">[</span><span·class="p"·data-group-id="7249267693-9">{</span><span·class="p"[·...·truncated·by·diffoscope;·len:·316,·SHA:·544171082f8071053989d98c7969b87a5f5837b0df6b797588e2f43de2f3b47f·...·]">
 655 2&gt;·</span><span·class="p"·data-group-id="7249267693-10">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;city&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;東京&quot;</span><span·class="o">/</span><span·class="ss">utf8</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7249267693-10">}</span><span·class="p"·data-group-id="7249267693-8">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7249267693-11">[</span><span·class="p"·data-group-id="7249267693-12">{</span><span·class="ss">encoding</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">latin1</span><span·class="p"·data-group-id="7249267693-12">}</span><span·class="p"·data-group-id="7249267693-11">]</span><span·class="p"·data-group-id="7249267693-7">)</span><span·class="p">.</span><span·class="w">
656 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo+bar=1&amp;city=%26%2326481%3B%26%2320140%3B&quot;</span><span·class="p">&gt;&gt;</span></code></pre>656 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo+bar=1&amp;city=%26%2326481%3B%26%2320140%3B&quot;</span><span·class="p">&gt;&gt;</span></code></pre>
657 ··</section>657 ··</section>
658 </section>658 </section>
659 <section·class="detail"·id="dissect_query/1">659 <section·class="detail"·id="dissect_query/1">
  
660 ··<div·class="detail-header">660 ··<div·class="detail-header">
661 ····<a·href="#dissect_query/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">661 ····<a·href="#dissect_query/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 685, 19 lines modifiedOffset 685, 19 lines modified
685 ···························QueryList·::·[{<a·href="unicode.html#t:chardata/0">unicode:chardata</a>(),·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>()·|·true}]·|·<a·href="#t:error/0">error</a>().</pre>685 ···························QueryList·::·[{<a·href="unicode.html#t:chardata/0">unicode:chardata</a>(),·<a·href="unicode.html#t:chardata/0">unicode:chardata</a>()·|·true}]·|·<a·href="#t:error/0">error</a>().</pre>
  
686 ······</div>686 ······</div>
  
687 <p>Dissects·an·urlencoded·<code·class="inline">QueryString</code>·and·returns·a·<code·class="inline">QueryList</code>,·a·list·of687 <p>Dissects·an·urlencoded·<code·class="inline">QueryString</code>·and·returns·a·<code·class="inline">QueryList</code>,·a·list·of
688 non-percent-encoded·key-value·pairs.</p><p>Form-urlencoding·is·defined·in·section·4.10.21.6·of·the·<a·href="https://www.w3.org/TR/html52/">HTML·5.2</a>688 non-percent-encoded·key-value·pairs.</p><p>Form-urlencoding·is·defined·in·section·4.10.21.6·of·the·<a·href="https://www.w3.org/TR/html52/">HTML·5.2</a>
689 specification·and·in·section·4.10.22.6·of·the·<a·href="https://www.w3.org/TR/html50/">HTML·5.0</a>689 specification·and·in·section·4.10.22.6·of·the·<a·href="https://www.w3.org/TR/html50/">HTML·5.0</a>
690 specification·for·non-UTF-8·encodings.</p><p>See·also·the·opposite·operation·<a·href="#compose_query/1"><code·class="inline">compose_query/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">dissect_query</span><span·class="p"·data-group-id="3516037545-1">(</span><span·class="s">&quot;foo+bar=1&amp;city=%C3%B6rebro&quot;</span><span·class="p"·data-group-id="3516037545-1">)</span><span·class="p">.</span><span·class="w">690 specification·for·non-UTF-8·encodings.</p><p>See·also·the·opposite·operation·<a·href="#compose_query/1"><code·class="inline">compose_query/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">dissect_query</span><span·class="p"·data-group-id="3688625262-1">(</span><span·class="s">&quot;foo+bar=1&amp;city=%C3%B6rebro&quot;</span><span·class="p"·data-group-id="3688625262-1">)</span><span·class="p">.</span><span·class="w">
691 </span><span·class="p"·data-group-id="3516037545-2">[</span><span·class="p"·data-group-id="3516037545-3">{</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="3516037545-3">}</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·248,·SHA:·604a4d91d324ae432dbe678631b1b4f396f9ff40ff93d51b8336286d7e3c3e03·...·]-2">]</span><span·class="gp·unselectable">691 </span><span·class="p"·data-group-id="3688625262-2">[</span><span·class="p"·data-group-id="3688625262-3">{</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="s">&quot;1&quot;</span><span·class="p"·data-group-id="3688625262-3">}</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·248,·SHA:·71767383196465f0f175fcdbacaf21cdf8198e4277a1522afbb747adf33f3413·...·]-2">]</span><span·class="gp·unselectable">
692 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">dissect_query</span><span·class="p"·data-group-id="3516037545-5">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo+bar=1&amp;city=%26%2326481%3B%26%2320140%3B&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3516037545-5">)</span><span·class="p">.</span><span·class="w">692 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">dissect_query</span><span·class="p"·data-group-id="3688625262-5">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo+bar=1&amp;city=%26%2326481%3B%26%2320140%3B&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3688625262-5">)</span><span·class="p">.</span><span·class="w">
693 </span><span·class="p"·data-group-id="3516037545-6">[</span><span·class="p"·data-group-id="3516037545-7">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;1[·...·truncated·by·diffoscope;·len:·85,·SHA:·7846310b9fb798839e809b9eb77ceeeccac882c23381f9b0a0bf3edb907b12cd·...·]-7">}</span><span·class="p">,</span><span·class="w">693 </span><span·class="p"·data-group-id="3688625262-6">[</span><span·class="p"·data-group-id="3688625262-7">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;1[·...·truncated·by·diffoscope;·len:·85,·SHA:·442db2813a817a545fb844af2e50d75d694a62889b7f4db445221306234dc4fa·...·]-7">}</span><span·class="p">,</span><span·class="w">
694 ·</span><span·class="p"·data-group-id="3516037545-8">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;city&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">230</span><span·class="p">,</span><span·class="mi">157</span><[·...·truncated·by·diffoscope;·len:·328,·SHA:·321860c571db88b767fae0bd70ef7580cb5bff117a9edc7478571efcda360433·...·]-6">]</span></code></pre>694 ·</span><span·class="p"·data-group-id="3688625262-8">{</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;city&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="mi">230</span><span·class="p">,</span><span·class="mi">157</span><[·...·truncated·by·diffoscope;·len:·328,·SHA:·d37e7181dd04dbaf041e57c8562fce94ab452a9a729a7a05e3c5f78b3495c78f·...·]-6">]</span></code></pre>
695 ··</section>695 ··</section>
696 </section>696 </section>
697 <section·class="detail"·id="normalize/1">697 <section·class="detail"·id="normalize/1">
  
698 ··<div·class="detail-header">698 ··<div·class="detail-header">
699 ····<a·href="#normalize/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">699 ····<a·href="#normalize/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
700 ······<i·class="ri-link-m"·aria-hidden="true"></i>700 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 723, 22 lines modifiedOffset 723, 22 lines modified
723 ···················when·URI·::·<a·href="#t:uri_string/0">uri_string</a>()·|·<a·href="#t:uri_map/0">uri_map</a>(),·NormalizedURI·::·<a·href="#t:uri_string/0">uri_string</a>()·|·<a·href="#t:error/0">error</a>().</pre>723 ···················when·URI·::·<a·href="#t:uri_string/0">uri_string</a>()·|·<a·href="#t:uri_map/0">uri_map</a>(),·NormalizedURI·::·<a·href="#t:uri_string/0">uri_string</a>()·|·<a·href="#t:error/0">error</a>().</pre>
  
724 ······</div>724 ······</div>
  
725 <p>Transforms·an·<code·class="inline">URI</code>·into·a·normalized·form·using·Syntax-Based·Normalization·as725 <p>Transforms·an·<code·class="inline">URI</code>·into·a·normalized·form·using·Syntax-Based·Normalization·as
726 defined·by·<a·href="https://www.ietf.org/rfc/rfc3986.txt">RFC·3986</a>.</p><p>This·function·implements·case·normalization,·percent-encoding·normalization,726 defined·by·<a·href="https://www.ietf.org/rfc/rfc3986.txt">RFC·3986</a>.</p><p>This·function·implements·case·normalization,·percent-encoding·normalization,
727 path·segment·normalization·and·scheme·based·normalization·for·HTTP(S)·with·basic727 path·segment·normalization·and·scheme·based·normalization·for·HTTP(S)·with·basic
728 support·for·FTP,·SSH,·SFTP·and·TFTP.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="7356308433-1">(</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p"·data-group-id="7356308433-1">)</span><span·class="p">.</span><span·class="w">728 support·for·FTP,·SSH,·SFTP·and·TFTP.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="2199890885-1">(</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p"·data-group-id="2199890885-1">)</span><span·class="p">.</span><span·class="w">
729 </span><span·class="s">&quot;/a/g&quot;</span><span·class="gp·unselectable">729 </span><span·class="s">&quot;/a/g&quot;</span><span·class="gp·unselectable">
730 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="7356308433-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;mid/content=5/../6&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="7356308433-2">)</span><span·class="p">.</span><span·class="w">730 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="2199890885-2">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;mid/content=5/../6&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2199890885-2">)</span><span·class="p">.</span><span·class="w">
731 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;mid/6&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">731 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;mid/6&quot;</span><span·class="p">&gt;&gt;</span><span·class="gp·unselectable">
732 3&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="7356308433-3">(</span><span·class="s">&quot;http://localhost:80&quot;</span><span·class="p"·data-group-id="7356308433-3">)</span><span·class="p">.</span><span·class="w">732 3&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="2199890885-3">(</span><span·class="s">&quot;http://localhost:80&quot;</span><span·class="p"·data-group-id="2199890885-3">)</span><span·class="p">.</span><span·class="w">
733 </span><span·class="s">&quot;http://localhost/&quot;</span><span·class="gp·unselectable">733 </span><span·class="s">&quot;http://localhost/&quot;</span><span·class="gp·unselectable">
734 4&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="7356308433-4">(</span><span·class="p"·data-group-id="7356308433-5">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p">,</span><span·class="gp·unselectable">734 4&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="2199890885-4">(</span><span·class="p"·data-group-id="2199890885-5">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p">,</span><span·class="gp·unselectable">
735 4&gt;·</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;localhost-örebro&quot;</span><span·class="p"·data-group-id="7356308433-5">}</span><span·class="p"·data-group-id="7356308433-4">)</span><span·class="p">.</span><span·class="w">735 4&gt;·</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;localhost-örebro&quot;</span><span·class="p"·data-group-id="2199890885-5">}</span><span·class="p"·data-group-id="2199890885-4">)</span><span·class="p">.</span><span·class="w">
736 </span><span·class="s">&quot;http://localhost-%C3%B6rebro/a/g&quot;</span></code></pre>736 </span><span·class="s">&quot;http://localhost-%C3%B6rebro/a/g&quot;</span></code></pre>
737 ··</section>737 ··</section>
738 </section>738 </section>
739 <section·class="detail"·id="normalize/2">739 <section·class="detail"·id="normalize/2">
  
740 ··<div·class="detail-header">740 ··<div·class="detail-header">
741 ····<a·href="#normalize/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">741 ····<a·href="#normalize/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 767, 23 lines modifiedOffset 767, 23 lines modified
767 ·······················Options·::·[return_map],767 ·······················Options·::·[return_map],
768 ·······················NormalizedURI·::·<a·href="#t:uri_string/0">uri_string</a>()·|·<a·href="#t:uri_map/0">uri_map</a>()·|·<a·href="#t:error/0">error</a>().</pre>768 ·······················NormalizedURI·::·<a·href="#t:uri_string/0">uri_string</a>()·|·<a·href="#t:uri_map/0">uri_map</a>()·|·<a·href="#t:error/0">error</a>().</pre>
  
769 ······</div>769 ······</div>
  
770 <p>Same·as·<a·href="#normalize/1"><code·class="inline">normalize/1</code></a>·but·with·an·additional·<code·class="inline">Options</code>770 <p>Same·as·<a·href="#normalize/1"><code·class="inline">normalize/1</code></a>·but·with·an·additional·<code·class="inline">Options</code>
771 parameter,·that·controls·whether·the·normalized·URI·shall·be·returned·as·an771 parameter,·that·controls·whether·the·normalized·URI·shall·be·returned·as·an
772 uri_map().</p><p>There·is·one·supported·option:·<code·class="inline">return_map</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="2675560130-1">(</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2675560130-2">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="2675560130-2">]</[·...·truncated·by·diffoscope;·len:·46,·SHA:·559571ec63054beddc5847fb751463a421688b0b0c58b1e7cbca77c7d5303380·...·]-1">)</span><span·class="p">.</span><span·class="w">772 uri_map().</p><p>There·is·one·supported·option:·<code·class="inline">return_map</code>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="4612058595-1">(</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4612058595-2">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="4612058595-2">]</[·...·truncated·by·diffoscope;·len:·46,·SHA:·d29569aac5e64f6b5c9dfaf6674183a8a1e4ba8a9347169bf5e9a57e9952cc88·...·]-1">)</span><span·class="p">.</span><span·class="w">
773 </span><span·class="p"·data-group-id="2675560130-3">#{</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/a/g&quot;</span><span·class="p"·data-group-id="2675560130-3">}</span><span·class="gp·unselectable">773 </span><span·class="p"·data-group-id="4612058595-3">#{</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/a/g&quot;</span><span·class="p"·data-group-id="4612058595-3">}</span><span·class="gp·unselectable">
774 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="2675560130-4">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;mid/content=5/../6&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2675560130-5">[</span><span·class="ss">r[·...·truncated·by·diffoscope;·len:·110,·SHA:·3ce4fe5bde8d82a3f1b9a9e10f392e6701c08ffd39d1ef1c00c47333fc0e9196·...·]-4">)</span><span·class="p">.</span><span·class="w">774 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="4612058595-4">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;mid/content=5/../6&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4612058595-5">[</span><span·class="ss">r[·...·truncated·by·diffoscope;·len:·110,·SHA:·a3597e11a4a232e683fd765a34b66c37d2140c316c18f11b53126da1f4e18f35·...·]-4">)</span><span·class="p">.</span><span·class="w">
775 </span><span·class="p"·data-group-id="2675560130-6">#{</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;mid/6&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·33ead970e8720480f6b57885614306254f6e3e7571068a3a26744cb74733137b·...·]-6">}</span><span·class="gp·unselectable">775 </span><span·class="p"·data-group-id="4612058595-6">#{</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;mid/6&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·14,·SHA:·7544cfcb8304ca9131f60ffb259cdba3b834aef351cde10ee2e0fdc257718089·...·]-6">}</span><span·class="gp·unselectable">
776 3&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="2675560130-7">(</span><span·class="s">&quot;http://localhost:80&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2675560130-8">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="2675560130-8">[·...·truncated·by·diffoscope;·len:·49,·SHA:·7882b07e70a582d201872958bbb07d9ee3d600b8ca29ffbf3d706935584f44fd·...·]-7">)</span><span·class="p">.</span><span·class="w">776 3&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="4612058595-7">(</span><span·class="s">&quot;http://localhost:80&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4612058595-8">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="4612058595-8">[·...·truncated·by·diffoscope;·len:·49,·SHA:·419405e8c247bbd080cb957d925e9aa9e1fde8ef6e448f08007677d16f6984a9·...·]-7">)</span><span·class="p">.</span><span·class="w">
777 </span><span·class="p"·data-group-id="2675560130-9">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·289,·SHA:·cf52a4715f97dbce8aa49970eb35b340cb3506f4cea0eccf3268c405b0e89af3·...·]-9">}</span><span·class="gp·unselectable">777 </span><span·class="p"·data-group-id="4612058595-9">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class=[·...·truncated·by·diffoscope;·len:·289,·SHA:·2ce985f67f8ed49ef1822c9524ded5467948708fb38aa25c4ed31f00763e8c5d·...·]-9">}</span><span·class="gp·unselectable">
778 4&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="2675560130-10">(</span><span·class="p"·data-group-id="2675560130-11">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p">,</span><span·class="gp·unselectable">778 4&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="4612058595-10">(</span><span·class="p"·data-group-id="4612058595-11">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">80</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/a/b/c/./../../g&quot;</span><span·class="p">,</span><span·class="gp·unselectable">
779 4&gt;·</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;localhost-örebro&quot;</span><span·class="p"·data-group-id="2675560130-11">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2675560130-12">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="2675560130-12">]</span><span·class="p"·data-group-id="2675560130-10">)</span><span·class="p">.</span><span·class="w">779 4&gt;·</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;localhost-örebro&quot;</span><span·class="p"·data-group-id="4612058595-11">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="4612058595-12">[</span><span·class="ss">return_map</span><span·class="p"·data-group-id="4612058595-12">]</span><span·class="p"·data-group-id="4612058595-10">)</span><span·class="p">.</span><span·class="w">
780 </span><span·class="p"·data-group-id="2675560130-13">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·300,·SHA:·187791905d36b38b59cc11aaddcb1d84852a7ef80b0c01d25312d98c99c8003b·...·]-13">}</span></code></pre>780 </span><span·class="p"·data-group-id="4612058595-13">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·300,·SHA:·c9de928b49ffd408117a5642cfb5cd53e321c5b0bd51098180ec542827850837·...·]-13">}</span></code></pre>
781 ··</section>781 ··</section>
782 </section>782 </section>
783 <section·class="detail"·id="parse/1">783 <section·class="detail"·id="parse/1">
  
784 ··<div·class="detail-header">784 ··<div·class="detail-header">
785 ····<a·href="#parse/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">785 ····<a·href="#parse/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
786 ······<i·class="ri-link-m"·aria-hidden="true"></i>786 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 807, 22 lines modifiedOffset 807, 22 lines modified
  
807 ··········<pre·translate="no"><span·class="attribute">-spec</span>·parse(URIString)·->·URIMap·when·URIString·::·<a·href="#t:uri_string/0">uri_string</a>(),·URIMap·::·<a·href="#t:uri_map/0">uri_map</a>()·|·<a·href="#t:error/0">error</a>().</pre>807 ··········<pre·translate="no"><span·class="attribute">-spec</span>·parse(URIString)·->·URIMap·when·URIString·::·<a·href="#t:uri_string/0">uri_string</a>(),·URIMap·::·<a·href="#t:uri_map/0">uri_map</a>()·|·<a·href="#t:error/0">error</a>().</pre>
  
808 ······</div>808 ······</div>
  
809 <p>Parses·an·<a·href="https://www.ietf.org/rfc/rfc3986.txt">RFC·3986</a>·compliant809 <p>Parses·an·<a·href="https://www.ietf.org/rfc/rfc3986.txt">RFC·3986</a>·compliant
810 <a·href="#t:uri_string/0"><code·class="inline">uri_string/0</code></a>·into·a·<a·href="#t:uri_map/0"><code·class="inline">uri_map/0</code></a>,·that·holds·the·parsed·components·of·the810 <a·href="#t:uri_string/0"><code·class="inline">uri_string/0</code></a>·into·a·<a·href="#t:uri_map/0"><code·class="inline">uri_map/0</code></a>,·that·holds·the·parsed·components·of·the
811 <code·class="inline">URI</code>.·If·parsing·fails,·an·error·tuple·is·returned.</p><p>See·also·the·opposite·operation·<a·href="#recompose/1"><code·class="inline">recompose/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="3777485002-1">(</span><span·class="s">&quot;foo://user@example.com:8042/over/there?name=ferret#nose&quot;</span><span·class="p"·data-group-id="3777485002-1">)</span><span·class="p">.</span><span·class="w">811 <code·class="inline">URI</code>.·If·parsing·fails,·an·error·tuple·is·returned.</p><p>See·also·the·opposite·operation·<a·href="#recompose/1"><code·class="inline">recompose/1</code></a>.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="8458609714-1">(</span><span·class="s">&quot;foo://user@example.com:8042/over/there?name=ferret#nose&quot;</span><span·class="p"·data-group-id="8458609714-1">)</span><span·class="p">.</span><span·class="w">
812 </span><span·class="p"·data-group-id="3777485002-2">#{</span><span·class="ss">fragment</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;nose&quot;</span><span·class="p">,</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;example.com&quot;</span><span·class="p">,</span><span·class="w">812 </span><span·class="p"·data-group-id="8458609714-2">#{</span><span·class="ss">fragment</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;nose&quot;</span><span·class="p">,</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;example.com&quot;</span><span·class="p">,</span><span·class="w">
813 ··</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/over/there&quot;</span><span·class="p">,</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">8042</span><span·class="p">,</span><span·class="k">query</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;name=ferret&quot;</span><span·class="p">,</span><span·class="w">813 ··</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/over/there&quot;</span><span·class="p">,</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">8042</span><span·class="p">,</span><span·class="k">query</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;name=ferret&quot;</span><span·class="p">,</span><span·class="w">
814 ··</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">userinfo</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;user&quot;</span><span·class="p"·data-group-id="3777485002-2">}</span><span·class="gp·unselectable">814 ··</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">userinfo</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;user&quot;</span><span·class="p"·data-group-id="8458609714-2">}</span><span·class="gp·unselectable">
815 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="3777485002-3">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo://user@example.com:8042/over/there?name=ferret&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3777485002-3">)</span><span·class="p">.</span><span·class="w">815 2&gt;·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="8458609714-3">(</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo://user@example.com:8042/over/there?name=ferret&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8458609714-3">)</span><span·class="p">.</span><span·class="w">
816 </span><span·class="p"·data-group-id="3777485002-4">#{</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;example.com&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/over/there&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">816 </span><span·class="p"·data-group-id="8458609714-4">#{</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;example.com&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/over/there&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
817 ··</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">8042</span><span·class="p">,</span><span·class="k">query</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;name=ferret&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">817 ··</span><span·class="ss">port</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="mi">8042</span><span·class="p">,</span><span·class="k">query</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;name=ferret&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;foo&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
818 ··</span><span·class="ss">userinfo</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;user&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3777485002-4">}</span></code></pre>818 ··</span><span·class="ss">userinfo</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;user&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8458609714-4">}</span></code></pre>
819 ··</section>819 ··</section>
820 </section>820 </section>
821 <section·class="detail"·id="percent_decode/1">821 <section·class="detail"·id="percent_decode/1">
  
822 ··<div·class="detail-header">822 ··<div·class="detail-header">
Max diff block lines reached; 42372/84480 bytes (50.16%) of diff not shown.
619 B
html2text {}
Max HTML report size reached
40.1 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/uri_string_usage.html
    
Offset 190, 27 lines modifiedOffset 190, 27 lines modified
190 URI·components·using·<a·href="unicode_usage.html#what-unicode-is">Unicode</a>·characters.190 URI·components·using·<a·href="unicode_usage.html#what-unicode-is">Unicode</a>·characters.
191 <a·href="uri_string.html#t:uri_map/0"><code·class="inline">uri_map()</code></a>·is·a·convenient·choice·for·enabling191 <a·href="uri_string.html#t:uri_map/0"><code·class="inline">uri_map()</code></a>·is·a·convenient·choice·for·enabling
192 operations·such·as·producing·standard·compliant·URIs·out·of·components·that·have192 operations·such·as·producing·standard·compliant·URIs·out·of·components·that·have
193 special·or·<a·href="unicode_usage.html#what-unicode-is">Unicode</a>·characters.·It·is·easier193 special·or·<a·href="unicode_usage.html#what-unicode-is">Unicode</a>·characters.·It·is·easier
194 to·explain·this·by·an·example.</p><p>Let's·say·that·we·would·like·to·create·the·following·URI·and·send·it·over·the194 to·explain·this·by·an·example.</p><p>Let's·say·that·we·would·like·to·create·the·following·URI·and·send·it·over·the
195 network:·<code·class="inline">http://cities/örebro?foo·bar</code>.·This·is·not·a·valid·URI·as·it·contains195 network:·<code·class="inline">http://cities/örebro?foo·bar</code>.·This·is·not·a·valid·URI·as·it·contains
196 characters·that·are·not·allowed·in·a·URI·such·as·&quot;ö&quot;·and·the·space.·We·can196 characters·that·are·not·allowed·in·a·URI·such·as·&quot;ö&quot;·and·the·space.·We·can
197 verify·this·by·parsing·the·URI:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="8817512483-1">(</span><span·class="s">&quot;http://cities/örebro?foo·bar&quot;</span><span·class="p"·data-group-id="8817512483-1">)</span><span·class="p">.</span><span·class="w">197 verify·this·by·parsing·the·URI:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="9224132015-1">(</span><span·class="s">&quot;http://cities/örebro?foo·bar&quot;</span><span·class="p"·data-group-id="9224132015-1">)</span><span·class="p">.</span><span·class="w">
198 ··</span><span·class="p"·data-group-id="8817512483-2">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">invalid_uri</span><span·class="p">,</span><span·class="s">&quot;:&quot;</span><span·class="p"·data-group-id="8817512483-2">}</span></code></pre><p>The·URI·parser·tries·all·possible·combinations·to·interpret·the·input·and·fails198 ··</span><span·class="p"·data-group-id="9224132015-2">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">invalid_uri</span><span·class="p">,</span><span·class="s">&quot;:&quot;</span><span·class="p"·data-group-id="9224132015-2">}</span></code></pre><p>The·URI·parser·tries·all·possible·combinations·to·interpret·the·input·and·fails
199 at·the·last·attempt·when·it·encounters·the·colon·character·<code·class="inline">&quot;:&quot;</code>.·Note,·that·the199 at·the·last·attempt·when·it·encounters·the·colon·character·<code·class="inline">&quot;:&quot;</code>.·Note,·that·the
200 inital·fault·occurs·when·the·parser·attempts·to·interpret·the·character·<code·class="inline">&quot;ö&quot;</code>200 inital·fault·occurs·when·the·parser·attempts·to·interpret·the·character·<code·class="inline">&quot;ö&quot;</code>
201 and·after·a·failure·back-tracks·to·the·point·where·it·has·another·possible201 and·after·a·failure·back-tracks·to·the·point·where·it·has·another·possible
202 parsing·alternative.</p><p>The·proper·way·to·solve·this·problem·is·to·use·<a·href="uri_string.html#recompose/1"><code·class="inline">uri_string:recompose/1</code></a>·with·a202 parsing·alternative.</p><p>The·proper·way·to·solve·this·problem·is·to·use·<a·href="uri_string.html#recompose/1"><code·class="inline">uri_string:recompose/1</code></a>·with·a
203 <a·href="uri_string.html#t:uri_map/0"><code·class="inline">uri_map()</code></a>·as·input:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">recompose</span><span·class="p"·data-group-id="7411549218-1">(</span><span·class="p"·data-group-id="7411549218-2">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;cities&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/örebro&quot;</span><span·class="p">,</span><span·class="w">203 <a·href="uri_string.html#t:uri_map/0"><code·class="inline">uri_map()</code></a>·as·input:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">recompose</span><span·class="p"·data-group-id="8760213244-1">(</span><span·class="p"·data-group-id="8760213244-2">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;cities&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/örebro&quot;</span><span·class="p">,</span><span·class="w">
204 ··</span><span·class="k">query</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p"·data-group-id="7411549218-2">}</span><span·class="p"·data-group-id="7411549218-1">)</span><span·class="p">.</span><span·class="w">204 ··</span><span·class="k">query</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p"·data-group-id="8760213244-2">}</span><span·class="p"·data-group-id="8760213244-1">)</span><span·class="p">.</span><span·class="w">
205 ··</span><span·class="s">&quot;http://cities/%C3%B6rebro?foo%20bar&quot;</span></code></pre><p>The·result·is·a·valid·URI·where·all·the·special·characters·are·encoded·as205 ··</span><span·class="s">&quot;http://cities/%C3%B6rebro?foo%20bar&quot;</span></code></pre><p>The·result·is·a·valid·URI·where·all·the·special·characters·are·encoded·as
206 defined·by·the·standard.·Applying·<a·href="uri_string.html#parse/1"><code·class="inline">uri_string:parse/1</code></a>·and206 defined·by·the·standard.·Applying·<a·href="uri_string.html#parse/1"><code·class="inline">uri_string:parse/1</code></a>·and
207 <a·href="uri_string.html#percent_decode/1"><code·class="inline">uri_string:percent_decode/1</code></a>·on·the·URI·returns·the·original·input:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="2435276570-1">(</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="2435276570-2">(</span><span·class="s">&quot;http://cities/%C3%B6rebro?foo%20bar&quot;</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·735650b035b0ab48f276cdcf80ff9eeb1e879bc6cb63b73a515921309df35fe5·...·]-1">)</span><span·class="p">.</span><span·class="w">207 <a·href="uri_string.html#percent_decode/1"><code·class="inline">uri_string:percent_decode/1</code></a>·on·the·URI·returns·the·original·input:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="8927149622-1">(</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="8927149622-2">(</span><span·class="s">&quot;http://cities/%C3%B6rebro?foo%20bar&quot;</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·70,·SHA:·de0b021597d455a0c8aeb9f0b613a142b129add0165a1b2a40b0ca652c6b0327·...·]-1">)</span><span·class="p">.</span><span·class="w">
208 ··</span><span·class="p"·data-group-id="2435276570-3">#{</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;cities&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/örebro&quot;</span><span·class="p">,</span><span·class="k">query</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="w">208 ··</span><span·class="p"·data-group-id="8927149622-3">#{</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;cities&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/örebro&quot;</span><span·class="p">,</span><span·class="k">query</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;foo·bar&quot;</span><span·class="p">,</span><span·class="w">
209 ··</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p"·data-group-id="2435276570-3">}</span></code></pre><p>This·symmetric·property·is·heavily·used·in·our·property·test·suite.</p><h2·id="percent-encoding"·class="section-heading">209 ··</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p"·data-group-id="8927149622-3">}</span></code></pre><p>This·symmetric·property·is·heavily·used·in·our·property·test·suite.</p><h2·id="percent-encoding"·class="section-heading">
210 ··<a·href="#percent-encoding"·class="hover-link">210 ··<a·href="#percent-encoding"·class="hover-link">
211 ····<i·class="ri-link-m"·aria-hidden="true"></i>211 ····<i·class="ri-link-m"·aria-hidden="true"></i>
212 ··</a>212 ··</a>
213 ··<span·class="text">Percent-encoding</span>213 ··<span·class="text">Percent-encoding</span>
214 </h2>214 </h2>
215 <p>As·you·have·seen·in·the·previous·chapter,·a·standard·URI·can·only·contain·a215 <p>As·you·have·seen·in·the·previous·chapter,·a·standard·URI·can·only·contain·a
216 strict·subset·of·the·US·ASCII·character·set,·moreover·the·allowed·set·of216 strict·subset·of·the·US·ASCII·character·set,·moreover·the·allowed·set·of
Offset 225, 72 lines modifiedOffset 225, 72 lines modified
225 <a·href="unicode_usage.html#what-unicode-is">Unicode</a>·and·it·is·encoded·using·a·single225 <a·href="unicode_usage.html#what-unicode-is">Unicode</a>·and·it·is·encoded·using·a·single
226 octet·<code·class="inline">0x20</code>.</p><blockquote><h4·class="info">Note</h4><p><a·href="unicode_usage.html#what-unicode-is">Unicode</a>·is·backward·compatible·with·ASCII,226 octet·<code·class="inline">0x20</code>.</p><blockquote><h4·class="info">Note</h4><p><a·href="unicode_usage.html#what-unicode-is">Unicode</a>·is·backward·compatible·with·ASCII,
227 the·encoding·of·the·first·128·characters·is·the·same·binary·value·as·in·ASCII.</p></blockquote><p><a·href=""·id="percent_encoding"></a>·It·is·a·major·source·of·confusion·exactly·which227 the·encoding·of·the·first·128·characters·is·the·same·binary·value·as·in·ASCII.</p></blockquote><p><a·href=""·id="percent_encoding"></a>·It·is·a·major·source·of·confusion·exactly·which
228 characters·will·be·percent-encoded.·In·order·to·make·it·easier·to·answer·this228 characters·will·be·percent-encoded.·In·order·to·make·it·easier·to·answer·this
229 question·the·library·provides·a·utility·function,229 question·the·library·provides·a·utility·function,
230 <a·href="uri_string.html#allowed_characters/0"><code·class="inline">uri_string:allowed_characters/0</code></a>,·that230 <a·href="uri_string.html#allowed_characters/0"><code·class="inline">uri_string:allowed_characters/0</code></a>,·that
231 lists·the·allowed·set·of·characters·in·each·major·URI·component,·and·also·in·the231 lists·the·allowed·set·of·characters·in·each·major·URI·component,·and·also·in·the
232 most·important·standard·character·sets.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">allowed_characters</span><span·class="p"·data-group-id="6395229037-1">(</span><span·class="p"·data-group-id="6395229037-1">)</span><span·class="p">.</span><span·class="w">232 most·important·standard·character·sets.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">allowed_characters</span><span·class="p"·data-group-id="9225740353-1">(</span><span·class="p"·data-group-id="9225740353-1">)</span><span·class="p">.</span><span·class="w">
233 ····</span><span·class="p"·data-group-id="6395229037-2">[</span><span·class="p"·data-group-id="6395229037-3">{</span><span·class="ss">scheme</span><span·class="p">,</span><span·class="w">233 ····</span><span·class="p"·data-group-id="9225740353-2">[</span><span·class="p"·data-group-id="9225740353-3">{</span><span·class="ss">scheme</span><span·class="p">,</span><span·class="w">
234 ·····</span><span·class="s">&quot;+-.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&quot;</span><span·class="p"·data-group-id="6395229037-3">}</span><span·class="p">,</span><span·class="w">234 ·····</span><span·class="s">&quot;+-.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&quot;</span><span·class="p"·data-group-id="9225740353-3">}</span><span·class="p">,</span><span·class="w">
235 ····</span><span·class="p"·data-group-id="6395229037-4">{</span><span·class="ss">userinfo</span><span·class="p">,</span><span·class="w">235 ····</span><span·class="p"·data-group-id="9225740353-4">{</span><span·class="ss">userinfo</span><span·class="p">,</span><span·class="w">
236 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-.0123456789:;=ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="6395229037-4">}</span><span·class="p">,</span><span·class="w">236 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-.0123456789:;=ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="9225740353-4">}</span><span·class="p">,</span><span·class="w">
237 ····</span><span·class="p"·data-group-id="6395229037-5">{</span><span·class="ss">host</span><span·class="p">,</span><span·class="w">237 ····</span><span·class="p"·data-group-id="9225740353-5">{</span><span·class="ss">host</span><span·class="p">,</span><span·class="w">
238 ·····</span><span·class="s">&quot;!$&amp;&#39;()*+,-.0123456789:;=ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="6395229037-5">}</span><span·class="p">,</span><span·class="w">238 ·····</span><span·class="s">&quot;!$&amp;&#39;()*+,-.0123456789:;=ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="9225740353-5">}</span><span·class="p">,</span><span·class="w">
239 ····</span><span·class="p"·data-group-id="6395229037-6">{</span><span·class="ss">ipv4</span><span·class="p">,</span><span·class="s">&quot;.0123456789&quot;</span><span·class="p"·data-group-id="6395229037-6">}</span><span·class="p">,</span><span·class="w">239 ····</span><span·class="p"·data-group-id="9225740353-6">{</span><span·class="ss">ipv4</span><span·class="p">,</span><span·class="s">&quot;.0123456789&quot;</span><span·class="p"·data-group-id="9225740353-6">}</span><span·class="p">,</span><span·class="w">
240 ····</span><span·class="p"·data-group-id="6395229037-7">{</span><span·class="ss">ipv6</span><span·class="p">,</span><span·class="s">&quot;.0123456789:ABCDEFabcdef&quot;</span><span·class="p"·data-group-id="6395229037-7">}</span><span·class="p">,</span><span·class="w">240 ····</span><span·class="p"·data-group-id="9225740353-7">{</span><span·class="ss">ipv6</span><span·class="p">,</span><span·class="s">&quot;.0123456789:ABCDEFabcdef&quot;</span><span·class="p"·data-group-id="9225740353-7">}</span><span·class="p">,</span><span·class="w">
241 ····</span><span·class="p"·data-group-id="6395229037-8">{</span><span·class="ss">regname</span><span·class="p">,</span><span·class="w">241 ····</span><span·class="p"·data-group-id="9225740353-8">{</span><span·class="ss">regname</span><span·class="p">,</span><span·class="w">
242 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-.0123456789;=ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="6395229037-8">}</span><span·class="p">,</span><span·class="w">242 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-.0123456789;=ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="9225740353-8">}</span><span·class="p">,</span><span·class="w">
243 ····</span><span·class="p"·data-group-id="6395229037-9">{</span><span·class="ss">path</span><span·class="p">,</span><span·class="w">243 ····</span><span·class="p"·data-group-id="9225740353-9">{</span><span·class="ss">path</span><span·class="p">,</span><span·class="w">
244 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-./0123456789:;=@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="6395229037-9">}</span><span·class="p">,</span><span·class="w">244 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-./0123456789:;=@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="9225740353-9">}</span><span·class="p">,</span><span·class="w">
245 ····</span><span·class="p"·data-group-id="6395229037-10">{</span><span·class="k">query</span><span·class="p">,</span><span·class="w">245 ····</span><span·class="p"·data-group-id="9225740353-10">{</span><span·class="k">query</span><span·class="p">,</span><span·class="w">
246 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="6395229037-10">}</span><span·class="p">,</span><span·class="w">246 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="9225740353-10">}</span><span·class="p">,</span><span·class="w">
247 ····</span><span·class="p"·data-group-id="6395229037-11">{</span><span·class="ss">fragment</span><span·class="p">,</span><span·class="w">247 ····</span><span·class="p"·data-group-id="9225740353-11">{</span><span·class="ss">fragment</span><span·class="p">,</span><span·class="w">
248 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="6395229037-11">}</span><span·class="p">,</span><span·class="w">248 ·····</span><span·class="s">&quot;!$%&amp;&#39;()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="9225740353-11">}</span><span·class="p">,</span><span·class="w">
249 ····</span><span·class="p"·data-group-id="6395229037-12">{</span><span·class="ss">reserved</span><span·class="p">,</span><span·class="s">&quot;!#$&amp;&#39;()*+,/:;=?@[]&quot;</span><span·class="p"·data-group-id="6395229037-12">}</span><span·class="p">,</span><span·class="w">249 ····</span><span·class="p"·data-group-id="9225740353-12">{</span><span·class="ss">reserved</span><span·class="p">,</span><span·class="s">&quot;!#$&amp;&#39;()*+,/:;=?@[]&quot;</span><span·class="p"·data-group-id="9225740353-12">}</span><span·class="p">,</span><span·class="w">
250 ····</span><span·class="p"·data-group-id="6395229037-13">{</span><span·class="ss">unreserved</span><span·class="p">,</span><span·class="w">250 ····</span><span·class="p"·data-group-id="9225740353-13">{</span><span·class="ss">unreserved</span><span·class="p">,</span><span·class="w">
251 ·····</span><span·class="s">&quot;-.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="6395229037-13">}</span><span·class="p"·data-group-id="6395229037-2">]</span></code></pre><p>If·a·URI·component·has·a·character·that·is·not·allowed,·it·will·be251 ·····</span><span·class="s">&quot;-.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~&quot;</span><span·class="p"·data-group-id="9225740353-13">}</span><span·class="p"·data-group-id="9225740353-2">]</span></code></pre><p>If·a·URI·component·has·a·character·that·is·not·allowed,·it·will·be
252 percent-encoded·when·the·URI·is·produced:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">recompose</span><span·class="p"·data-group-id="8837636339-1">(</span><span·class="p"·data-group-id="8837636339-2">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;https&quot;</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·444,·SHA:·3d60d026da571eca9408c2e3dc9338183a705b1185af09541147fa209c49ff93·...·]-1">)</span><span·class="p">.</span><span·class="w">252 percent-encoded·when·the·URI·is·produced:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">recompose</span><span·class="p"·data-group-id="6940758987-1">(</span><span·class="p"·data-group-id="6940758987-2">#{</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;https&quot;</span><span·class="p">,</span><span·clas[·...·truncated·by·diffoscope;·len:·444,·SHA:·91a78f627ede7015fa410b4ebfb6ec4f2611fdf3c5653a0d28544856ead758bd·...·]-1">)</span><span·class="p">.</span><span·class="w">
253 ····</span><span·class="s">&quot;https://local%23host&quot;</span></code></pre><p>Consuming·a·URI·containing·percent-encoded·triplets·can·take·many·steps.·The253 ····</span><span·class="s">&quot;https://local%23host&quot;</span></code></pre><p>Consuming·a·URI·containing·percent-encoded·triplets·can·take·many·steps.·The
254 following·example·shows·how·to·handle·an·input·URI·that·is·not·normalized·and254 following·example·shows·how·to·handle·an·input·URI·that·is·not·normalized·and
255 contains·multiple·percent-encoded·triplets.·First,·the·input255 contains·multiple·percent-encoded·triplets.·First,·the·input
256 <a·href="uri_string.html#t:uri_string/0"><code·class="inline">uri_string()</code></a>·is·to·be·parsed·into·a256 <a·href="uri_string.html#t:uri_string/0"><code·class="inline">uri_string()</code></a>·is·to·be·parsed·into·a
257 <a·href="uri_string.html#t:uri_map/0"><code·class="inline">uri_map()</code></a>.·The·parsing·only·splits·the·URI·into257 <a·href="uri_string.html#t:uri_map/0"><code·class="inline">uri_map()</code></a>.·The·parsing·only·splits·the·URI·into
258 its·components·without·doing·any·decoding:</p><pre><code·class="text">····3&gt;·uri_string:parse(&quot;http://%6C%6Fcal%23host/%F6re%26bro%20&quot;).258 its·components·without·doing·any·decoding:</p><pre><code·class="text">····3&gt;·uri_string:parse(&quot;http://%6C%6Fcal%23host/%F6re%26bro%20&quot;).
259 ····#{host·=&gt;·&quot;%6C%6Fcal%23host&quot;,path·=&gt;·&quot;/%F6re%26bro%20&quot;,259 ····#{host·=&gt;·&quot;%6C%6Fcal%23host&quot;,path·=&gt;·&quot;/%F6re%26bro%20&quot;,
260 ······scheme·=&gt;·&quot;http&quot;}}</code></pre><p>The·input·is·a·valid·URI·but·how·can·you·decode·those·percent-encoded·octets?260 ······scheme·=&gt;·&quot;http&quot;}}</code></pre><p>The·input·is·a·valid·URI·but·how·can·you·decode·those·percent-encoded·octets?
261 You·can·try·to·normalize·the·input·with·<a·href="uri_string.html#normalize/1"><code·class="inline">uri_string:normalize/1</code></a>.·The·normalize261 You·can·try·to·normalize·the·input·with·<a·href="uri_string.html#normalize/1"><code·class="inline">uri_string:normalize/1</code></a>.·The·normalize
262 operation·decodes·those·percent-encoded·triplets·that·correspond·to·a·character262 operation·decodes·those·percent-encoded·triplets·that·correspond·to·a·character
263 in·the·unreserved·set.·Normalization·is·a·safe,·idempotent·operation·that263 in·the·unreserved·set.·Normalization·is·a·safe,·idempotent·operation·that
264 converts·a·URI·into·its·canonical·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="8042960734-1">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%F6re%26bro%20&quot;</span><span·class="p"·data-group-id="8042960734-1">)</span><span·class="p">.</span><span·class="w">264 converts·a·URI·into·its·canonical·form:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">4</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="5068020827-1">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%F6re%26bro%20&quot;</span><span·class="p"·data-group-id="5068020827-1">)</span><span·class="p">.</span><span·class="w">
265 ····</span><span·class="s">&quot;http://local%23host/%F6re%26bro%20&quot;</span><span·class="w">265 ····</span><span·class="s">&quot;http://local%23host/%F6re%26bro%20&quot;</span><span·class="w">
266 ····</span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="8042960734-2">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%F6re%26bro%20&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8042960734-3">[</span><span·class="ss">return_map</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·3d9ad8651a4cd2aec41248dcbafe2b4ab43e2065b4c07cfd72188310af8178b6·...·]-2">)</span><span·class="p">.</span><span·class="w">266 ····</span><span·class="mi">5</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">normalize</span><span·class="p"·data-group-id="5068020827-2">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%F6re%26bro%20&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="5068020827-3">[</span><span·class="ss">return_map</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·68,·SHA:·e41eda83ba9e386493bfc009e1f4cb04d71068e2c3a2ce2ba5125b4db6e59c5e·...·]-2">)</span><span·class="p">.</span><span·class="w">
267 ····</span><span·class="p"·data-group-id="8042960734-4">#{</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;local%23host&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p">,</span><span·class="w">267 ····</span><span·class="p"·data-group-id="5068020827-4">#{</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;local%23host&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p">,</span><span·class="w">
268 ······</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p"·data-group-id="8042960734-4">}</span></code></pre><p>There·are·still·a·few·percent-encoded·triplets·left·in·the·output.·At·this268 ······</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p"·data-group-id="5068020827-4">}</span></code></pre><p>There·are·still·a·few·percent-encoded·triplets·left·in·the·output.·At·this
269 point,·when·the·URI·is·already·parsed,·it·is·safe·to·apply·application·specific269 point,·when·the·URI·is·already·parsed,·it·is·safe·to·apply·application·specific
270 decoding·on·the·remaining·character·triplets.·Erlang/OTP·provides·a·function,270 decoding·on·the·remaining·character·triplets.·Erlang/OTP·provides·a·function,
271 <a·href="uri_string.html#percent_decode/1"><code·class="inline">uri_string:percent_decode/1</code></a>·for·raw·percent·decoding·that·you·can·use·on·the271 <a·href="uri_string.html#percent_decode/1"><code·class="inline">uri_string:percent_decode/1</code></a>·for·raw·percent·decoding·that·you·can·use·on·the
272 host·and·path·components,·or·on·the·whole·map:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="7127220351-1">(</span><span·class="s">&quot;local%23host&quot;</span><span·class="p"·data-group-id="7127220351-1">)</span><span·class="p">.</span><span·class="w">272 host·and·path·components,·or·on·the·whole·map:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">6</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="1872361660-1">(</span><span·class="s">&quot;local%23host&quot;</span><span·class="p"·data-group-id="1872361660-1">)</span><span·class="p">.</span><span·class="w">
273 ····</span><span·class="s">&quot;local#host&quot;</span><span·class="w">273 ····</span><span·class="s">&quot;local#host&quot;</span><span·class="w">
274 ····</span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="7127220351-2">(</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p"·data-group-id="7127220351-2">)</span><span·class="p">.</span><span·class="w">274 ····</span><span·class="mi">7</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="1872361660-2">(</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p"·data-group-id="1872361660-2">)</span><span·class="p">.</span><span·class="w">
275 ····</span><span·class="p"·data-group-id="7127220351-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">invalid_utf8</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/öre&amp;bro·&quot;</span><span·class="p">&gt;&gt;</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·9ad4a5b4ea66a9ffcbc056bf206fc2db3bd19112b3f29ba594ee8f4daf9d44f0·...·]-3">}</span><span·class="w">275 ····</span><span·class="p"·data-group-id="1872361660-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">invalid_utf8</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;/öre&amp;bro·&quot;</span><span·class="p">&gt;&gt;</span><span·class[·...·truncated·by·diffoscope;·len:·30,·SHA:·66cafe12037fed1147c0bdda8b73732a4d1a00394578b9f869e3d63645740e7f·...·]-3">}</span><span·class="w">
276 ····</span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="7127220351-4">(</span><span·class="p"·data-group-id="7127220351-5">#{</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;local%23host&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p">,</span><span·class="w">276 ····</span><span·class="mi">8</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="1872361660-4">(</span><span·class="p"·data-group-id="1872361660-5">#{</span><span·class="ss">host</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;local%23host&quot;</span><span·class="p">,</span><span·class="ss">path</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p">,</span><span·class="w">
277 ····</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p"·data-group-id="7127220351-5">}</span><span·class="p"·data-group-id="7127220351-4">)</span><span·class="p">.</span><span·class="w">277 ····</span><span·class="ss">scheme</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="s">&quot;http&quot;</span><span·class="p"·data-group-id="1872361660-5">}</span><span·class="p"·data-group-id="1872361660-4">)</span><span·class="p">.</span><span·class="w">
278 ····</span><span·class="p"·data-group-id="7127220351-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p"·data-group-id="7127220351-7">{</span><span·class="ss">invalid</span><span·class="p">,</span><span·class="p"·data-group-id="7127220351-8">{</span><span·class="ss">pat[·...·truncated·by·diffoscope;·len:·455,·SHA:·e8e98d95800f236a70a090d34ee69ec1364d1c963fe12c9b8f4386411aae687e·...·]-6">}</span></code></pre><p>The·<code·class="inline">host</code>·was·successfully·decoded·but·the·path·contains·at·least·one·character278 ····</span><span·class="p"·data-group-id="1872361660-6">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="p"·data-group-id="1872361660-7">{</span><span·class="ss">invalid</span><span·class="p">,</span><span·class="p"·data-group-id="1872361660-8">{</span><span·class="ss">pat[·...·truncated·by·diffoscope;·len:·455,·SHA:·9fa48ba1782e907a33cea2390b1b326359776bd555438f1dd39e20d6eb1b7f58·...·]-6">}</span></code></pre><p>The·<code·class="inline">host</code>·was·successfully·decoded·but·the·path·contains·at·least·one·character
279 with·non-UTF-8·encoding.·In·order·to·be·able·to·decode·this,·you·have·to·make279 with·non-UTF-8·encoding.·In·order·to·be·able·to·decode·this,·you·have·to·make
280 assumptions·about·the·encoding·used·in·these·triplets.·The·most·obvious·choice280 assumptions·about·the·encoding·used·in·these·triplets.·The·most·obvious·choice
281 is·<em>latin-1</em>,·so·you·can·try·<a·href="uri_string.html#transcode/2"><code·class="inline">uri_string:transcode/2</code></a>,·to·transcode·the·path·to281 is·<em>latin-1</em>,·so·you·can·try·<a·href="uri_string.html#transcode/2"><code·class="inline">uri_string:transcode/2</code></a>,·to·transcode·the·path·to
282 UTF-8·and·run·the·percent-decode·operation·on·the·transcoded·string:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">9</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">transcode</span><span·class="p"·data-group-id="9864425158-1">(</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9864425158-2">[</span><span·class="p"·data-group-id="9864425158-3">{</span><span·class="ss">in_encoding</[·...·truncated·by·diffoscope;·len:·230,·SHA:·299de0ea46630c327d75b3a1b411d5d6ac3f6dca9f8f1bc0a711d16ee1029929·...·]-1">)</span><span·class="p">.</span><span·class="w">282 UTF-8·and·run·the·percent-decode·operation·on·the·transcoded·string:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">9</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">transcode</span><span·class="p"·data-group-id="6822940456-1">(</span><span·class="s">&quot;/%F6re%26bro%20&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6822940456-2">[</span><span·class="p"·data-group-id="6822940456-3">{</span><span·class="ss">in_encoding</[·...·truncated·by·diffoscope;·len:·230,·SHA:·6fda10f7e0e8af27f4f9f158486d6af35e3134fc40d3e27047f5f69e63b57c06·...·]-1">)</span><span·class="p">.</span><span·class="w">
283 ····</span><span·class="s">&quot;/%C3%B6re%26bro%20&quot;</span><span·class="w">283 ····</span><span·class="s">&quot;/%C3%B6re%26bro%20&quot;</span><span·class="w">
284 ····</span><span·class="mi">10</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="9864425158-4">(</span><span·class="s">&quot;/%C3%B6re%26bro%20&quot;</span><span·class="p"·data-group-id="9864425158-4">)</span><span·class="p">.</span><span·class="w">284 ····</span><span·class="mi">10</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="6822940456-4">(</span><span·class="s">&quot;/%C3%B6re%26bro%20&quot;</span><span·class="p"·data-group-id="6822940456-4">)</span><span·class="p">.</span><span·class="w">
285 ····</span><span·class="s">&quot;/öre&amp;bro·&quot;</span></code></pre><p>It·is·important·to·emphasize·that·it·is·not·safe·to·apply285 ····</span><span·class="s">&quot;/öre&amp;bro·&quot;</span></code></pre><p>It·is·important·to·emphasize·that·it·is·not·safe·to·apply
286 <a·href="uri_string.html#percent_decode/1"><code·class="inline">uri_string:percent_decode/1</code></a>·directly·on·an·input·URI:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">11</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="8685061589-1">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%C3%B6re%26bro%20&quot;</span><span·class="p"·data-group-id="8685061589-1">)</span><span·class="p">.</span><span·class="w">286 <a·href="uri_string.html#percent_decode/1"><code·class="inline">uri_string:percent_decode/1</code></a>·directly·on·an·input·URI:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">····</span><span·class="mi">11</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">percent_decode</span><span·class="p"·data-group-id="4116227618-1">(</span><span·class="s">&quot;http://%6C%6Fcal%23host/%C3%B6re%26bro%20&quot;</span><span·class="p"·data-group-id="4116227618-1">)</span><span·class="p">.</span><span·class="w">
287 ····</span><span·class="s">&quot;http://local#host/öre&amp;bro·&quot;</span><span·class="w">287 ····</span><span·class="s">&quot;http://local#host/öre&amp;bro·&quot;</span><span·class="w">
288 ····</span><span·class="mi">12</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="8685061589-2">(</span><span·class="s">&quot;http://local#host/öre&amp;bro·&quot;</span><span·class="p"·data-group-id="8685061589-2">)</span><span·class="p">.</span><span·class="w">288 ····</span><span·class="mi">12</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">uri_string</span><span·class="p">:</span><span·class="nf">parse</span><span·class="p"·data-group-id="4116227618-2">(</span><span·class="s">&quot;http://local#host/öre&amp;bro·&quot;</span><span·class="p"·data-group-id="4116227618-2">)</span><span·class="p">.</span><span·class="w">
289 ····</span><span·class="p"·data-group-id="8685061589-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">invalid_uri</span><span·class="p">,</span><span·class="s">&quot;:&quot;</span><span·class="p"·data-group-id="8685061589-3">}</span></code></pre><blockquote><h4·class="info">Note</h4><p>Percent-encoding·is·implemented·in·<a·href="uri_string.html#recompose/1"><code·class="inline">uri_string:recompose/1</code></a>·and·it·happens289 ····</span><span·class="p"·data-group-id="4116227618-3">{</span><span·class="ss">error</span><span·class="p">,</span><span·class="ss">invalid_uri</span><span·class="p">,</span><span·class="s">&quot;:&quot;</span><span·class="p"·data-group-id="4116227618-3">}</span></code></pre><blockquote><h4·class="info">Note</h4><p>Percent-encoding·is·implemented·in·<a·href="uri_string.html#recompose/1"><code·class="inline">uri_string:recompose/1</code></a>·and·it·happens
290 when·converting·a·<a·href="uri_string.html#t:uri_map/0"><code·class="inline">uri_map()</code></a>·into·a290 when·converting·a·<a·href="uri_string.html#t:uri_map/0"><code·class="inline">uri_map()</code></a>·into·a
291 <a·href="uri_string.html#t:uri_string/0"><code·class="inline">uri_string()</code></a>.·Applying·any·percent-encoding291 <a·href="uri_string.html#t:uri_string/0"><code·class="inline">uri_string()</code></a>.·Applying·any·percent-encoding
292 directly·on·an·input·URI·would·not·be·safe·just·as·in·the·case·of292 directly·on·an·input·URI·would·not·be·safe·just·as·in·the·case·of
293 <a·href="uri_string.html#percent_decode/1"><code·class="inline">uri_string:percent_decode/1</code></a>,·the·output·could·be·an·invalid·URI.·Quoting293 <a·href="uri_string.html#percent_decode/1"><code·class="inline">uri_string:percent_decode/1</code></a>,·the·output·could·be·an·invalid·URI.·Quoting
294 functions·allow·users·to·perform·raw·percent·encoding·and·decoding·on294 functions·allow·users·to·perform·raw·percent·encoding·and·decoding·on
295 application·data·which·cannot·be·handled·automatically·by295 application·data·which·cannot·be·handled·automatically·by
296 <a·href="uri_string.html#recompose/1"><code·class="inline">uri_string:recompose/1</code></a>.·For·example·in·scenario·when·user·would·need·to·use296 <a·href="uri_string.html#recompose/1"><code·class="inline">uri_string:recompose/1</code></a>.·For·example·in·scenario·when·user·would·need·to·use
Offset 378, 15 lines modifiedOffset 378, 15 lines modified
378 ······<p·class="built-using">378 ······<p·class="built-using">
379 ········Built·using379 ········Built·using
380 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the380 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
381 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>381 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
382 ······</p>382 ······</p>
383 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>383 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
384 ····</footer>384 ····</footer>
385 ··</div>385 ··</div>
386 </main>386 </main>
387 </div>387 </div>
388 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>388 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
389 <script>389 <script>
390 ··document.addEventListener("DOMContentLoaded",·function·()·{390 ··document.addEventListener("DOMContentLoaded",·function·()·{
784 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/win32reg.html
    
Offset 914, 15 lines modifiedOffset 914, 15 lines modified
914 ······<p·class="built-using">914 ······<p·class="built-using">
915 ········Built·using915 ········Built·using
916 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the916 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
917 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>917 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
918 ······</p>918 ······</p>
919 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>919 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
920 ····</footer>920 ····</footer>
921 ··</div>921 ··</div>
922 </main>922 </main>
923 </div>923 </div>
924 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>924 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
925 <script>925 <script>
926 ··document.addEventListener("DOMContentLoaded",·function·()·{926 ··document.addEventListener("DOMContentLoaded",·function·()·{
649 B
html2text {}
Max HTML report size reached
34.2 KB
./usr/share/doc/erlang-doc/html/lib/stdlib-6.0.1/doc/html/zip.html
    
Offset 997, 36 lines modifiedOffset 997, 36 lines modified
997 <code·class="inline">Archive</code>,·starting·with·<code·class="inline">AccIn·==·Acc0</code>.</p><p><code·class="inline">FileInArchive</code>·is·the·name·that·the·file·has·in·the·archive.</p><p><code·class="inline">GetInfo</code>·is·a·fun·that·returns·information·about·the·file.</p><p><code·class="inline">GetBin</code>·returns·the·file·contents.</p><p>Both·<code·class="inline">GetInfo</code>·and·<code·class="inline">GetBin</code>·must·be·called·within·the·<code·class="inline">Fun</code>.·Their·behavior·is997 <code·class="inline">Archive</code>,·starting·with·<code·class="inline">AccIn·==·Acc0</code>.</p><p><code·class="inline">FileInArchive</code>·is·the·name·that·the·file·has·in·the·archive.</p><p><code·class="inline">GetInfo</code>·is·a·fun·that·returns·information·about·the·file.</p><p><code·class="inline">GetBin</code>·returns·the·file·contents.</p><p>Both·<code·class="inline">GetInfo</code>·and·<code·class="inline">GetBin</code>·must·be·called·within·the·<code·class="inline">Fun</code>.·Their·behavior·is
998 undefined·if·they·are·called·outside·the·context·of·<code·class="inline">Fun</code>.</p><p>The·<code·class="inline">Fun</code>·must·return·a·new·accumulator,·which·is·passed·to·the·next·call.998 undefined·if·they·are·called·outside·the·context·of·<code·class="inline">Fun</code>.</p><p>The·<code·class="inline">Fun</code>·must·return·a·new·accumulator,·which·is·passed·to·the·next·call.
999 <a·href="#foldl/3"><code·class="inline">foldl/3</code></a>·returns·the·final·accumulator·value.·<code·class="inline">Acc0</code>·is·returned999 <a·href="#foldl/3"><code·class="inline">foldl/3</code></a>·returns·the·final·accumulator·value.·<code·class="inline">Acc0</code>·is·returned
1000 if·the·archive·is·empty.·It·is·not·necessary·to·iterate·over·all·files·in·the1000 if·the·archive·is·empty.·It·is·not·necessary·to·iterate·over·all·files·in·the
1001 archive.·The·iteration·can·be·ended·prematurely·in·a·controlled·manner·by1001 archive.·The·iteration·can·be·ended·prematurely·in·a·controlled·manner·by
1002 throwing·an·exception.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;dummy.zip&quot;</span><span·class="p">.</span><span·class="w">1002 throwing·an·exception.</p><p><em>Example:</em></p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">&gt;·</span><span·class="n">Name</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="s">&quot;dummy.zip&quot;</span><span·class="p">.</span><span·class="w">
1003 </span><span·class="s">&quot;dummy.zip&quot;</span><span·class="gp·unselectable">1003 </span><span·class="s">&quot;dummy.zip&quot;</span><span·class="gp·unselectable">
1004 &gt;·</span><span·class="p"·data-group-id="6404402204-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6404402204-2">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·[·...·truncated·by·diffoscope;·len:·1344,·SHA:·dd5e8ddbe3e2c9b74f7d3fb15456cc1a2c80a590d8c5dab6a0ebb5d26bcb72be·...·]-3">)</span><span·class="p">.</span><span·class="w">1004 &gt;·</span><span·class="p"·data-group-id="8239316622-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8239316622-2">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><span·[·...·truncated·by·diffoscope;·len:·1344,·SHA:·e033ba10f80c4104b713695e11adfa77baf387306ebc8904be44acb831b73a58·...·]-3">)</span><span·class="p">.</span><span·class="w">
1005 </span><span·class="p"·data-group-id="6404402204-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6404402204-9">{</span><span·class="s">&quot;dummy.zip&quot;</span><span·class="p">,</span><span·class="w">1005 </span><span·class="p"·data-group-id="8239316622-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8239316622-9">{</span><span·class="s">&quot;dummy.zip&quot;</span><span·class="p">,</span><span·class="w">
1006 ·····</span><span·class="p">&lt;&lt;</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">75</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">20</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">74</span><span·class="p">,</span><span·class="mi">152</span><span·class="p">,</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">60</span><span·class="p">,</span><span·class="mi">171</span><span·class="p">,</span><span·class="mi">39</span><span·class="p">,</span><span·class="mi">212</span><span·class="p">,</span><span·class="mi">26</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">1006 ·····</span><span·class="p">&lt;&lt;</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">75</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">20</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">74</span><span·class="p">,</span><span·class="mi">152</span><span·class="p">,</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">60</span><span·class="p">,</span><span·class="mi">171</span><span·class="p">,</span><span·class="mi">39</span><span·class="p">,</span><span·class="mi">212</span><span·class="p">,</span><span·class="mi">26</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
1007 ·······</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6404402204-9">}</span><span·class="p"·data-group-id="6404402204-8">}</span><span·class="gp·unselectable">1007 ·······</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8239316622-9">}</span><span·class="p"·data-group-id="8239316622-8">}</span><span·class="gp·unselectable">
1008 &gt;·</span><span·class="p"·data-group-id="6404402204-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FileSpec</span><span·class="p"·data-group-id="6404402204-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·1787,·SHA:·20a59038a208e58c7d20b4e386cdb5c2b3e222aaef42905162832f9ea131318d·...·]-11">)</span><span·class="p">.</span><span·class="w">1008 &gt;·</span><span·class="p"·data-group-id="8239316622-10">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FileSpec</span><span·class="p"·data-group-id="8239316622-10">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·1787,·SHA:·7337c2abe07d4497c8cc0b4e77de34857baee2a282c8f8d58ca58b2feec8c366·...·]-11">)</span><span·class="p">.</span><span·class="w">
1009 </span><span·class="p"·data-group-id="6404402204-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6404402204-20">[</span><span·class="p"·data-group-id="6404402204-21">{</span><span·class="s">&quot;bar&quot;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;BAR&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">1009 </span><span·class="p"·data-group-id="8239316622-19">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8239316622-20">[</span><span·class="p"·data-group-id="8239316622-21">{</span><span·class="s">&quot;bar&quot;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;BAR&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
1010 ······</span><span·class="p"·data-group-id="6404402204-22">{</span><span·class="ss">file_info</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">regular</span><span·class="p">,</span><span·class="ss">read_write</span><span·class="p">,</span><span·class="w">1010 ······</span><span·class="p"·data-group-id="8239316622-22">{</span><span·class="ss">file_info</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">regular</span><span·class="p">,</span><span·class="ss">read_write</span><span·class="p">,</span><span·class="w">
1011 ·················</span><span·class="p"·data-group-id="6404402204-23">{</span><span·class="p"·data-group-id="6404402204-24">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6404402204-24">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·8322a972bfb81159843ad5476d81c57d96fd7ddbdb37d3533970b0362896bcd9·...·]-23">}</span><span·class="p">,</span><span·class="w">1011 ·················</span><span·class="p"·data-group-id="8239316622-23">{</span><span·class="p"·data-group-id="8239316622-24">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8239316622-24">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·8141a656dfddc696a3afdf571db1ec2d2451fc4866d8751c149dba3c3777eb70·...·]-23">}</span><span·class="p">,</span><span·class="w">
1012 ·················</span><span·class="p"·data-group-id="6404402204-26">{</span><span·class="p"·data-group-id="6404402204-27">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6404402204-27">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·d658b0e8c94e849167a26e02fd92f6e95490540291ab6811743bdd68d3903165·...·]-26">}</span><span·class="p">,</span><span·class="w">1012 ·················</span><span·class="p"·data-group-id="8239316622-26">{</span><span·class="p"·data-group-id="8239316622-27">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8239316622-27">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·1c9cdff06543f19017ebbbf67eb890cb9b79cd7b813a32fc3525ebf4c263a4cc·...·]-26">}</span><span·class="p">,</span><span·class="w">
1013 ·················</span><span·class="p"·data-group-id="6404402204-29">{</span><span·class="p"·data-group-id="6404402204-30">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6404402204-30">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·cfc408e869dbb627e2fc3b898a4fbaf93144f02fcf3303bbd05f4a15a3a9090a·...·]-29">}</span><span·class="p">,</span><span·class="w">1013 ·················</span><span·class="p"·data-group-id="8239316622-29">{</span><span·class="p"·data-group-id="8239316622-30">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8239316622-30">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·be4b2b7b543a8792d032b2e0993573786df1b0810f111f229b2f543cd1adb376·...·]-29">}</span><span·class="p">,</span><span·class="w">
1014 ·················</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="6404402204-22">}</span><span·class="p"·data-group-id="6404402204-21">}</span><span·class="p">,</span><span·class="w">1014 ·················</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="8239316622-22">}</span><span·class="p"·data-group-id="8239316622-21">}</span><span·class="p">,</span><span·class="w">
1015 ·····</span><span·class="p"·data-group-id="6404402204-32">{</span><span·class="s">&quot;foo&quot;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;FOO&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">1015 ·····</span><span·class="p"·data-group-id="8239316622-32">{</span><span·class="s">&quot;foo&quot;</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;FOO&quot;</span><span·class="p">&gt;&gt;</span><span·class="p">,</span><span·class="w">
1016 ······</span><span·class="p"·data-group-id="6404402204-33">{</span><span·class="ss">file_info</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">regular</span><span·class="p">,</span><span·class="ss">read_write</span><span·class="p">,</span><span·class="w">1016 ······</span><span·class="p"·data-group-id="8239316622-33">{</span><span·class="ss">file_info</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="ss">regular</span><span·class="p">,</span><span·class="ss">read_write</span><span·class="p">,</span><span·class="w">
1017 ·················</span><span·class="p"·data-group-id="6404402204-34">{</span><span·class="p"·data-group-id="6404402204-35">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6404402204-35">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·1fc5c77d78533fe948a33bbf2bb0adb205a9296eaae1f6a02db9993cc21f2bdb·...·]-34">}</span><span·class="p">,</span><span·class="w">1017 ·················</span><span·class="p"·data-group-id="8239316622-34">{</span><span·class="p"·data-group-id="8239316622-35">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8239316622-35">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·db302e705bd9f13036f9ea85571f82f57863aa95cff0e3ea71f1569c01e16818·...·]-34">}</span><span·class="p">,</span><span·class="w">
1018 ·················</span><span·class="p"·data-group-id="6404402204-37">{</span><span·class="p"·data-group-id="6404402204-38">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6404402204-38">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·bec4718e80599bda679fdb07aed1ef14b6aafb89dc5477eaa62447934cae52f5·...·]-37">}</span><span·class="p">,</span><span·class="w">1018 ·················</span><span·class="p"·data-group-id="8239316622-37">{</span><span·class="p"·data-group-id="8239316622-38">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8239316622-38">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·3cb6df9295411e34cfd218f7f612394171f12a2f761d5922e056b7f948a9f22b·...·]-37">}</span><span·class="p">,</span><span·class="w">
1019 ·················</span><span·class="p"·data-group-id="6404402204-40">{</span><span·class="p"·data-group-id="6404402204-41">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="6404402204-41">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·6d7508835defdb73d10449e2b5f4981ec0657a8a58b4a85a2f3293f45cffa83a·...·]-40">}</span><span·class="p">,</span><span·class="w">1019 ·················</span><span·class="p"·data-group-id="8239316622-40">{</span><span·class="p"·data-group-id="8239316622-41">{</span><span·class="mi">2010</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="8239316622-41">}</span[·...·truncated·by·diffoscope;·len:·299,·SHA:·6459afc47094a47b1ce6909a14859fcebe485caf5652f0138a3dfbf19f18e369·...·]-40">}</span><span·class="p">,</span><span·class="w">
1020 ·················</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="6404402204-33">}</span><span·class="p"·data-group-id="6404402204-32">}</span><span·class="p"·data-group-id="6404402204-20">]</span><span·class="p"·data-group-id="6404402204-19">}</span><span·class="gp·unselectable">1020 ·················</span><span·class="mi">54</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="8239316622-33">}</span><span·class="p"·data-group-id="8239316622-32">}</span><span·class="p"·data-group-id="8239316622-20">]</span><span·class="p"·data-group-id="8239316622-19">}</span><span·class="gp·unselectable">
1021 &gt;·</span><span·class="p"·data-group-id="6404402204-43">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6404402204-44">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><spa[·...·truncated·by·diffoscope;·len:·836,·SHA:·dd68151c83ce812f0b2b71a2b8e777cb382d1f8ad064879ba810cdd56974bf7b·...·]-45">)</span><span·class="p">.</span><span·class="w">1021 &gt;·</span><span·class="p"·data-group-id="8239316622-43">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8239316622-44">{</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Bin</span><spa[·...·truncated·by·diffoscope;·len:·836,·SHA:·c3dccfc1488afdf61baeaf44989a47290cebe618026eabcec92bf54c1c8050b9·...·]-45">)</span><span·class="p">.</span><span·class="w">
1022 </span><span·class="p"·data-group-id="6404402204-48">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="6404402204-49">{</span><span·class="s">&quot;dummy.zip&quot;</span><span·class="p">,</span><span·class="w">1022 </span><span·class="p"·data-group-id="8239316622-48">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="8239316622-49">{</span><span·class="s">&quot;dummy.zip&quot;</span><span·class="p">,</span><span·class="w">
1023 ·····</span><span·class="p">&lt;&lt;</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">75</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">20</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">74</span><span·class="p">,</span><span·class="mi">152</span><span·class="p">,</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">60</span><span·class="p">,</span><span·class="mi">171</span><span·class="p">,</span><span·class="mi">39</span><span·class="p">,</span><span·class="mi">212</span><span·class="p">,</span><span·class="mi">26</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">1023 ·····</span><span·class="p">&lt;&lt;</span><span·class="mi">80</span><span·class="p">,</span><span·class="mi">75</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">4</span><span·class="p">,</span><span·class="mi">20</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">74</span><span·class="p">,</span><span·class="mi">152</span><span·class="p">,</span><span·class="mi">97</span><span·class="p">,</span><span·class="mi">60</span><span·class="p">,</span><span·class="mi">171</span><span·class="p">,</span><span·class="mi">39</span><span·class="p">,</span><span·class="mi">212</span><span·class="p">,</span><span·class="mi">26</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
1024 ·······</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="6404402204-49">}</span><span·class="p"·data-group-id="6404402204-48">}</span><span·class="gp·unselectable">1024 ·······</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="8239316622-49">}</span><span·class="p"·data-group-id="8239316622-48">}</span><span·class="gp·unselectable">
1025 &gt;·</span><span·class="k">catch</span><span·class="w">·</span><span·class="nc">zip</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="6404402204-50">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="6404402204-51">(</span><span·class="s">&quot;foo&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·1433,·SHA:·a49aaf8437a72d48a7637de016a46ea02db0e78dc6babef5b89675e3b9072877·...·]-50">)</span><span·class="p">.</span><span·class="w">1025 &gt;·</span><span·class="k">catch</span><span·class="w">·</span><span·class="nc">zip</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="8239316622-50">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8239316622-51">(</span><span·class="s">&quot;foo&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·1433,·SHA:·1a6a89237325582f2fa54c97f1ef9a0e27e2c9196f3a55d273ab95af2348e033·...·]-50">)</span><span·class="p">.</span><span·class="w">
1026 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;FOO&quot;</span><span·class="p">&gt;&gt;</span></code></pre>1026 </span><span·class="p">&lt;&lt;</span><span·class="s">&quot;FOO&quot;</span><span·class="p">&gt;&gt;</span></code></pre>
1027 ··</section>1027 ··</section>
1028 </section>1028 </section>
1029 <section·class="detail"·id="list_dir/1">1029 <section·class="detail"·id="list_dir/1">
  
1030 ··<div·class="detail-header">1030 ··<div·class="detail-header">
1031 ····<a·href="#list_dir/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1031 ····<a·href="#list_dir/1"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
Offset 1612, 15 lines modifiedOffset 1612, 15 lines modified
1612 ······<p·class="built-using">1612 ······<p·class="built-using">
1613 ········Built·using1613 ········Built·using
1614 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1614 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1615 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1615 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1616 ······</p>1616 ······</p>
1617 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1617 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1618 ····</footer>1618 ····</footer>
1619 ··</div>1619 ··</div>
1620 </main>1620 </main>
1621 </div>1621 </div>
1622 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1622 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1623 <script>1623 <script>
1624 ··document.addEventListener("DOMContentLoaded",·function·()·{1624 ··document.addEventListener("DOMContentLoaded",·function·()·{
707 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/404.html
    
Offset 139, 15 lines modifiedOffset 139, 15 lines modified
139 ······<p·class="built-using">139 ······<p·class="built-using">
140 ········Built·using140 ········Built·using
141 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the141 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
142 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>142 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
143 ······</p>143 ······</p>
144 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>144 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
145 ····</footer>145 ····</footer>
146 ··</div>146 ··</div>
147 </main>147 </main>
148 </div>148 </div>
149 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>149 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
150 <script>150 <script>
151 ··document.addEventListener("DOMContentLoaded",·function·()·{151 ··document.addEventListener("DOMContentLoaded",·function·()·{
604 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/api-reference.html
    
Offset 258, 15 lines modifiedOffset 258, 15 lines modified
258 ······<p·class="built-using">258 ······<p·class="built-using">
259 ········Built·using259 ········Built·using
260 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the260 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
261 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>261 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
262 ······</p>262 ······</p>
263 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>263 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
264 ····</footer>264 ····</footer>
265 ··</div>265 ··</div>
266 </main>266 </main>
267 </div>267 </div>
268 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>268 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
269 <script>269 <script>
270 ··document.addEventListener("DOMContentLoaded",·function·()·{270 ··document.addEventListener("DOMContentLoaded",·function·()·{
725 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/chapter.html
    
Offset 177, 15 lines modifiedOffset 177, 15 lines modified
177 ······<p·class="built-using">177 ······<p·class="built-using">
178 ········Built·using178 ········Built·using
179 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the179 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
180 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>180 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
181 ······</p>181 ······</p>
182 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>182 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
183 ····</footer>183 ····</footer>
184 ··</div>184 ··</div>
185 </main>185 </main>
186 </div>186 </div>
187 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>187 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
188 <script>188 <script>
189 ··document.addEventListener("DOMContentLoaded",·function·()·{189 ··document.addEventListener("DOMContentLoaded",·function·()·{
730 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/epp_dodger.html
    
Offset 909, 15 lines modifiedOffset 909, 15 lines modified
909 ······<p·class="built-using">909 ······<p·class="built-using">
910 ········Built·using910 ········Built·using
911 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the911 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
912 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>912 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
913 ······</p>913 ······</p>
914 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>914 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
915 ····</footer>915 ····</footer>
916 ··</div>916 ··</div>
917 </main>917 </main>
918 </div>918 </div>
919 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>919 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
920 <script>920 <script>
921 ··document.addEventListener("DOMContentLoaded",·function·()·{921 ··document.addEventListener("DOMContentLoaded",·function·()·{
630 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/erl_comment_scan.html
    
Offset 462, 15 lines modifiedOffset 462, 15 lines modified
462 ······<p·class="built-using">462 ······<p·class="built-using">
463 ········Built·using463 ········Built·using
464 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the464 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
465 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>465 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
466 ······</p>466 ······</p>
467 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>467 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
468 ····</footer>468 ····</footer>
469 ··</div>469 ··</div>
470 </main>470 </main>
471 </div>471 </div>
472 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>472 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
473 <script>473 <script>
474 ··document.addEventListener("DOMContentLoaded",·function·()·{474 ··document.addEventListener("DOMContentLoaded",·function·()·{
610 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/erl_prettypr.html
    
Offset 1019, 15 lines modifiedOffset 1019, 15 lines modified
1019 ······<p·class="built-using">1019 ······<p·class="built-using">
1020 ········Built·using1020 ········Built·using
1021 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1021 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1022 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1022 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1023 ······</p>1023 ······</p>
1024 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1024 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1025 ····</footer>1025 ····</footer>
1026 ··</div>1026 ··</div>
1027 </main>1027 </main>
1028 </div>1028 </div>
1029 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1029 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1030 <script>1030 <script>
1031 ··document.addEventListener("DOMContentLoaded",·function·()·{1031 ··document.addEventListener("DOMContentLoaded",·function·()·{
665 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/erl_recomment.html
    
Offset 397, 15 lines modifiedOffset 397, 15 lines modified
397 ······<p·class="built-using">397 ······<p·class="built-using">
398 ········Built·using398 ········Built·using
399 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the399 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
400 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>400 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
401 ······</p>401 ······</p>
402 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>402 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
403 ····</footer>403 ····</footer>
404 ··</div>404 ··</div>
405 </main>405 </main>
406 </div>406 </div>
407 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>407 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
408 <script>408 <script>
409 ··document.addEventListener("DOMContentLoaded",·function·()·{409 ··document.addEventListener("DOMContentLoaded",·function·()·{
691 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/erl_syntax.html
    
Offset 12524, 15 lines modifiedOffset 12524, 15 lines modified
12524 ······<p·class="built-using">12524 ······<p·class="built-using">
12525 ········Built·using12525 ········Built·using
12526 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the12526 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
12527 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>12527 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
12528 ······</p>12528 ······</p>
12529 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>12529 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
12530 ····</footer>12530 ····</footer>
12531 ··</div>12531 ··</div>
12532 </main>12532 </main>
12533 </div>12533 </div>
12534 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>12534 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
12535 <script>12535 <script>
12536 ··document.addEventListener("DOMContentLoaded",·function·()·{12536 ··document.addEventListener("DOMContentLoaded",·function·()·{
671 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/erl_syntax_lib.html
    
Offset 2600, 15 lines modifiedOffset 2600, 15 lines modified
2600 ······<p·class="built-using">2600 ······<p·class="built-using">
2601 ········Built·using2601 ········Built·using
2602 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2602 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2603 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2603 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2604 ······</p>2604 ······</p>
2605 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2605 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2606 ····</footer>2606 ····</footer>
2607 ··</div>2607 ··</div>
2608 </main>2608 </main>
2609 </div>2609 </div>
2610 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2610 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2611 <script>2611 <script>
2612 ··document.addEventListener("DOMContentLoaded",·function·()·{2612 ··document.addEventListener("DOMContentLoaded",·function·()·{
638 B
html2text {}
Max HTML report size reached
1.35 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/merl.html
    
Offset 1794, 15 lines modifiedOffset 1794, 15 lines modified
1794 ······<p·class="built-using">1794 ······<p·class="built-using">
1795 ········Built·using1795 ········Built·using
1796 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1796 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1797 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1797 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1798 ······</p>1798 ······</p>
1799 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1799 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1800 ····</footer>1800 ····</footer>
1801 ··</div>1801 ··</div>
1802 </main>1802 </main>
1803 </div>1803 </div>
1804 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1804 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1805 <script>1805 <script>
1806 ··document.addEventListener("DOMContentLoaded",·function·()·{1806 ··document.addEventListener("DOMContentLoaded",·function·()·{
536 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/merl_transform.html
    
Offset 221, 15 lines modifiedOffset 221, 15 lines modified
221 ······<p·class="built-using">221 ······<p·class="built-using">
222 ········Built·using222 ········Built·using
223 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the223 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
224 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>224 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
225 ······</p>225 ······</p>
226 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>226 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
227 ····</footer>227 ····</footer>
228 ··</div>228 ··</div>
229 </main>229 </main>
230 </div>230 </div>
231 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>231 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
232 <script>232 <script>
233 ··document.addEventListener("DOMContentLoaded",·function·()·{233 ··document.addEventListener("DOMContentLoaded",·function·()·{
692 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/notes.html
    
Offset 894, 15 lines modifiedOffset 894, 15 lines modified
894 ······<p·class="built-using">894 ······<p·class="built-using">
895 ········Built·using895 ········Built·using
896 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the896 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
897 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>897 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
898 ······</p>898 ······</p>
899 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>899 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
900 ····</footer>900 ····</footer>
901 ··</div>901 ··</div>
902 </main>902 </main>
903 </div>903 </div>
904 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>904 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
905 <script>905 <script>
906 ··document.addEventListener("DOMContentLoaded",·function·()·{906 ··document.addEventListener("DOMContentLoaded",·function·()·{
649 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/prettypr.html
    
Offset 1191, 15 lines modifiedOffset 1191, 15 lines modified
1191 ······<p·class="built-using">1191 ······<p·class="built-using">
1192 ········Built·using1192 ········Built·using
1193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1195 ······</p>1195 ······</p>
1196 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1196 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1197 ····</footer>1197 ····</footer>
1198 ··</div>1198 ··</div>
1199 </main>1199 </main>
1200 </div>1200 </div>
1201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1202 <script>1202 <script>
1203 ··document.addEventListener("DOMContentLoaded",·function·()·{1203 ··document.addEventListener("DOMContentLoaded",·function·()·{
676 B
html2text {}
Max HTML report size reached
1.22 KB
./usr/share/doc/erlang-doc/html/lib/syntax_tools-3.2/doc/html/search.html
    
Offset 137, 15 lines modifiedOffset 137, 15 lines modified
137 ······<p·class="built-using">137 ······<p·class="built-using">
138 ········Built·using138 ········Built·using
139 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the139 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
140 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>140 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
141 ······</p>141 ······</p>
142 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>142 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
143 ····</footer>143 ····</footer>
144 ··</div>144 ··</div>
145 </main>145 </main>
146 </div>146 </div>
147 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>147 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
148 <script>148 <script>
149 ··document.addEventListener("DOMContentLoaded",·function·()·{149 ··document.addEventListener("DOMContentLoaded",·function·()·{
403 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.35 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/api-reference.html
    
Offset 190, 15 lines modifiedOffset 190, 15 lines modified
190 ······<p·class="built-using">190 ······<p·class="built-using">
191 ········Built·using191 ········Built·using
192 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the192 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
193 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>193 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
194 ······</p>194 ······</p>
195 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>195 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
196 ····</footer>196 ····</footer>
197 ··</div>197 ··</div>
198 </main>198 </main>
199 </div>199 </div>
200 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>200 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
201 <script>201 <script>
202 ··document.addEventListener("DOMContentLoaded",·function·()·{202 ··document.addEventListener("DOMContentLoaded",·function·()·{
541 B
html2text {}
Max HTML report size reached
7.54 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/getting_started.html
    
Offset 143, 17 lines modifiedOffset 143, 17 lines modified
143 user·is·registered·using·option·<code·class="inline">callback</code>,·see·<a·href="tftp.html#options">DATA·TYPES</a>.</p><h2·id="using-the-tftp-client-and-server"·class="section-heading">143 user·is·registered·using·option·<code·class="inline">callback</code>,·see·<a·href="tftp.html#options">DATA·TYPES</a>.</p><h2·id="using-the-tftp-client-and-server"·class="section-heading">
144 ··<a·href="#using-the-tftp-client-and-server"·class="hover-link">144 ··<a·href="#using-the-tftp-client-and-server"·class="hover-link">
145 ····<i·class="ri-link-m"·aria-hidden="true"></i>145 ····<i·class="ri-link-m"·aria-hidden="true"></i>
146 ··</a>146 ··</a>
147 ··<span·class="text">Using·the·TFTP·client·and·server</span>147 ··<span·class="text">Using·the·TFTP·client·and·server</span>
148 </h2>148 </h2>
149 <p>This·is·a·simple·example·of·starting·the·TFTP·server·and·reading·the·content·of149 <p>This·is·a·simple·example·of·starting·the·TFTP·server·and·reading·the·content·of
150 a·sample·file·using·the·TFTP·client.</p><p><em>Step·1.</em>·Create·a·sample·file·to·be·used·for·the·transfer:</p><pre><code·class="text">······$·echo·&quot;Erlang/OTP·21&quot;·&gt;·file.txt</code></pre><p><em>Step·2.</em>·Start·the·TFTP·server:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="p"·data-group-id="3462332492-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pid</span><span·class="p"·data-group-id="3462332492-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">tftp</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="3462332492-2">(</span><span·class="p"·data-group-id="3462332492-3">[</span><span·class="p"·data-group-id="3462332492-4">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">19999</span><span·class="p"·data-group-id="3462332492-4">}</span><span·class="p"·data-group-id="3462332492-3">]</span><span·class="p"·data-group-id="3462332492-2">)</span><span·class="p">.</span><span·class="w"> 
151 ······</span><span·class="p"·data-group-id="3462332492-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.65</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·cla[·...·truncated·by·diffoscope;·len:·942,·SHA:·60ae5a748ccaa419ceb0f5c59961854b5561e63394fc94fbe43b279071d6ca54·...·]">)</span><span·class="p">.</span><span·class="w">150 a·sample·file·using·the·TFTP·client.</p><p><em>Step·1.</em>·Create·a·sample·file·to·be·used·for·the·transfer:</p><pre><code·class="text">······$·echo·&quot;Erlang/OTP·21&quot;·&gt;·file.txt</code></pre><p><em>Step·2.</em>·Start·the·TFTP·server:</p><pre><co[·...·truncated·by·diffoscope;·len:·917,·SHA:·4793a2d5f5c1495960c4bd14e49c3fb0bc760327bd4bbec9e7cfcdc8052961f4·...·]">)</span><span·class="p">.</span><span·class="w">
 151 ······</span><span·class="p"·data-group-id="4274358425-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.65</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="4274358425-5">}</span></code></pre><p><em>Step·3.</em>·Start·the·TFTP·client·(in·another·shell):</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">······</span><span·class="mi">1</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="nc">tftp</span><span·class="p">:</span><span·class="nf">read_file</span><span·class="p"·data-group-id="2930495184-1">(</span><span·class="s">&quot;file.txt&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">binary</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2930495184-2">[</span><span·class="p"·data-group-id="2930495184-3">{</span><span·class="ss">port</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">19999</span><span·class="p"·data-group-id="2930495184-3">}</span><span·class="p"·data-group-id="2930495184-2">]</span><span·class="p"·data-group-id="2930495184-1">)</span><span·class="p">.</span><span·class="w">
152 ······</span><span·class="p"·data-group-id="3099832462-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Erlang/OTP·21\n&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="3099832462-4">}</span></code></pre>152 ······</span><span·class="p"·data-group-id="2930495184-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p">&lt;&lt;</span><span·class="s">&quot;Erlang/OTP·21\n&quot;</span><span·class="p">&gt;&gt;</span><span·class="p"·data-group-id="2930495184-4">}</span></code></pre>
153 </div>153 </div>
  
154 <div·class="bottom-actions"·id="bottom-actions">154 <div·class="bottom-actions"·id="bottom-actions">
155 ··<div·class="bottom-actions-item">155 ··<div·class="bottom-actions-item">
  
156 ······<a·href="introduction.html"·class="bottom-actions-button"·rel="prev">156 ······<a·href="introduction.html"·class="bottom-actions-button"·rel="prev">
157 ········<span·class="subheader">157 ········<span·class="subheader">
Offset 187, 15 lines modifiedOffset 187, 15 lines modified
187 ······<p·class="built-using">187 ······<p·class="built-using">
188 ········Built·using188 ········Built·using
189 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the189 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
190 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>190 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
191 ······</p>191 ······</p>
192 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>192 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
193 ····</footer>193 ····</footer>
194 ··</div>194 ··</div>
195 </main>195 </main>
196 </div>196 </div>
197 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>197 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
198 <script>198 <script>
199 ··document.addEventListener("DOMContentLoaded",·function·()·{199 ··document.addEventListener("DOMContentLoaded",·function·()·{
632 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/introduction.html
    
Offset 191, 15 lines modifiedOffset 191, 15 lines modified
191 ······<p·class="built-using">191 ······<p·class="built-using">
192 ········Built·using192 ········Built·using
193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the193 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>194 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
195 ······</p>195 ······</p>
196 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>196 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
197 ····</footer>197 ····</footer>
198 ··</div>198 ··</div>
199 </main>199 </main>
200 </div>200 </div>
201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>201 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
202 <script>202 <script>
203 ··document.addEventListener("DOMContentLoaded",·function·()·{203 ··document.addEventListener("DOMContentLoaded",·function·()·{
744 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/notes.html
    
Offset 284, 15 lines modifiedOffset 284, 15 lines modified
284 ······<p·class="built-using">284 ······<p·class="built-using">
285 ········Built·using285 ········Built·using
286 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the286 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
287 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>287 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
288 ······</p>288 ······</p>
289 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>289 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
290 ····</footer>290 ····</footer>
291 ··</div>291 ··</div>
292 </main>292 </main>
293 </div>293 </div>
294 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>294 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
295 <script>295 <script>
296 ··document.addEventListener("DOMContentLoaded",·function·()·{296 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
1.26 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
459 B
html2text {}
Max HTML report size reached
52.4 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/tftp.epub
2.39 KB
zipinfo {}
Max HTML report size reached
42.8 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
5.96 KB
OEBPS/getting_started.xhtml
Max HTML report size reached
1.22 KB
OEBPS/content.opf
1.19 KB
OEBPS/content.opf
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/tftp.html
    
Offset 892, 15 lines modifiedOffset 892, 15 lines modified
892 ······<p·class="built-using">892 ······<p·class="built-using">
893 ········Built·using893 ········Built·using
894 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the894 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
895 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>895 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
896 ······</p>896 ······</p>
897 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>897 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
898 ····</footer>898 ····</footer>
899 ··</div>899 ··</div>
900 </main>900 </main>
901 </div>901 </div>
902 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>902 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
903 <script>903 <script>
904 ··document.addEventListener("DOMContentLoaded",·function·()·{904 ··document.addEventListener("DOMContentLoaded",·function·()·{
644 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/tftp-1.2/doc/html/tftp_logger.html
    
Offset 307, 15 lines modifiedOffset 307, 15 lines modified
307 ······<p·class="built-using">307 ······<p·class="built-using">
308 ········Built·using308 ········Built·using
309 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the309 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
310 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>310 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
311 ······</p>311 ······</p>
312 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>312 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
313 ····</footer>313 ····</footer>
314 ··</div>314 ··</div>
315 </main>315 </main>
316 </div>316 </div>
317 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>317 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
318 <script>318 <script>
319 ··document.addEventListener("DOMContentLoaded",·function·()·{319 ··document.addEventListener("DOMContentLoaded",·function·()·{
751 B
html2text {}
Max HTML report size reached
633 B
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/.build
    
Offset 21, 15 lines modifiedOffset 21, 15 lines modified
21 dist/lato-latin-300-normal-YUMVEFOL.woff221 dist/lato-latin-300-normal-YUMVEFOL.woff2
22 dist/lato-latin-400-normal-W7754I4D.woff222 dist/lato-latin-400-normal-W7754I4D.woff2
23 dist/lato-latin-700-normal-2XVSBPG4.woff223 dist/lato-latin-700-normal-2XVSBPG4.woff2
24 dist/lato-latin-ext-300-normal-VPGGJKJL.woff224 dist/lato-latin-ext-300-normal-VPGGJKJL.woff2
25 dist/lato-latin-ext-400-normal-N27NCBWW.woff225 dist/lato-latin-ext-400-normal-N27NCBWW.woff2
26 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff226 dist/lato-latin-ext-700-normal-Q2L5DVMW.woff2
27 dist/remixicon-NKANDIL5.woff227 dist/remixicon-NKANDIL5.woff2
28 dist/search_data-98D0A8CC.js28 dist/search_data-039E86C6.js
29 dist/sidebar_items-7275BB77.js29 dist/sidebar_items-7275BB77.js
30 eprof.html30 eprof.html
31 erlang-el.html31 erlang-el.html
32 erlang_mode_chapter.html32 erlang_mode_chapter.html
33 fprof.html33 fprof.html
34 fprof_chapter.html34 fprof_chapter.html
35 index.html35 index.html
1.46 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/api-reference.html
    
Offset 256, 15 lines modifiedOffset 256, 15 lines modified
256 ······<p·class="built-using">256 ······<p·class="built-using">
257 ········Built·using257 ········Built·using
258 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the258 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
259 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>259 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
260 ······</p>260 ······</p>
261 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>261 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
262 ····</footer>262 ····</footer>
263 ··</div>263 ··</div>
264 </main>264 </main>
265 </div>265 </div>
266 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>266 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
267 <script>267 <script>
268 ··document.addEventListener("DOMContentLoaded",·function·()·{268 ··document.addEventListener("DOMContentLoaded",·function·()·{
614 B
html2text {}
Max HTML report size reached
8.69 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/cover.html
    
Offset 1557, 15 lines modifiedOffset 1557, 15 lines modified
1557 ······</div>1557 ······</div>
  
1558 <p>Analyzes·one·or·more·modules·as·specified·by·<code·class="inline">Arg</code>.</p><p>If·<code·class="inline">Arg</code>·is·one·of·the·values·in·<a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>,·this1558 <p>Analyzes·one·or·more·modules·as·specified·by·<code·class="inline">Arg</code>.</p><p>If·<code·class="inline">Arg</code>·is·one·of·the·values·in·<a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>,·this
1559 call·is·equivalent·to·<a·href="#analyse/3"><code·class="inline">analyse('_',·Arg,·function)</code></a>.</p><p>If·<code·class="inline">Arg</code>·is·one·of·the·values·in·<a·href="#t:level/0"><code·class="inline">level()</code></a>,·this1559 call·is·equivalent·to·<a·href="#analyse/3"><code·class="inline">analyse('_',·Arg,·function)</code></a>.</p><p>If·<code·class="inline">Arg</code>·is·one·of·the·values·in·<a·href="#t:level/0"><code·class="inline">level()</code></a>,·this
1560 call·is·equivalent·to·<a·href="#analyse/3"><code·class="inline">analyse('_',·coverage,·Arg)</code></a>.</p><p>Otherwise·<code·class="inline">Arg</code>·is·assumed·to·be·a·module·name,·and·this·call·is·equivalent1560 call·is·equivalent·to·<a·href="#analyse/3"><code·class="inline">analyse('_',·coverage,·Arg)</code></a>.</p><p>Otherwise·<code·class="inline">Arg</code>·is·assumed·to·be·a·module·name,·and·this·call·is·equivalent
1561 to·<a·href="#analyse/3"><code·class="inline">analyse(Arg,·coverage,·function)</code></a>.</p><blockquote><h4·class="info">Note</h4><p>To·analyze·a·module·whose·name·overlaps·with·one·the·values·in1561 to·<a·href="#analyse/3"><code·class="inline">analyse(Arg,·coverage,·function)</code></a>.</p><blockquote><h4·class="info">Note</h4><p>To·analyze·a·module·whose·name·overlaps·with·one·the·values·in
1562 <a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>·or·<a·href="#t:level/0"><code·class="inline">level()</code></a>,·the·module1562 <a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>·or·<a·href="#t:level/0"><code·class="inline">level()</code></a>,·the·module
1563 name·has·to·be·in·a·list.·For·example,·to·analyze·a·module·named·<code·class="inline">calls</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="7585254126-1">(</span><span·class="p"·data-group-id="7585254126-2">[</span><span·class="ss">calls</span><span·class="p"·data-group-id="7585254126-2">]</span><span·class="p"·data-group-id="7585254126-1">)</span><span·class="p">.</span></code></pre></blockquote>1563 name·has·to·be·in·a·list.·For·example,·to·analyze·a·module·named·<code·class="inline">calls</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="8779453540-1">(</span><span·class="p"·data-group-id="8779453540-2">[</span><span·class="ss">calls</span><span·class="p"·data-group-id="8779453540-2">]</span><span·class="p"·data-group-id="8779453540-1">)</span><span·class="p">.</span></code></pre></blockquote>
1564 ··</section>1564 ··</section>
1565 </section>1565 </section>
1566 <section·class="detail"·id="analyse/2">1566 <section·class="detail"·id="analyse/2">
  
1567 ··<div·class="detail-header">1567 ··<div·class="detail-header">
1568 ····<a·href="#analyse/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1568 ····<a·href="#analyse/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1569 ······<i·class="ri-link-m"·aria-hidden="true"></i>1569 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1599, 15 lines modifiedOffset 1599, 15 lines modified
1599 <p>Analyzes·one·or·more·modules·as·specified·by·<code·class="inline">Arg1</code>·and·<code·class="inline">Arg2</code>.</p><p>If·<code·class="inline">Arg1</code>·is·one·of·the·values·in·<a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>·and1599 <p>Analyzes·one·or·more·modules·as·specified·by·<code·class="inline">Arg1</code>·and·<code·class="inline">Arg2</code>.</p><p>If·<code·class="inline">Arg1</code>·is·one·of·the·values·in·<a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>·and
1600 <code·class="inline">Arg2</code>·is·one·of·the·values·in·<a·href="#t:level/0"><code·class="inline">level()</code></a>,·this1600 <code·class="inline">Arg2</code>·is·one·of·the·values·in·<a·href="#t:level/0"><code·class="inline">level()</code></a>,·this
1601 call·is·equivalent·to·<a·href="#analyse/3"><code·class="inline">analyse('_',·Arg1,·Arg2)</code></a>.</p><p>If·<code·class="inline">Arg2</code>·is·one·of·the·values·in·<a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>,1601 call·is·equivalent·to·<a·href="#analyse/3"><code·class="inline">analyse('_',·Arg1,·Arg2)</code></a>.</p><p>If·<code·class="inline">Arg2</code>·is·one·of·the·values·in·<a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>,
1602 <code·class="inline">Arg1</code>·is·assumed·to·be·a·module·and·this·call·is·equivalent·to1602 <code·class="inline">Arg1</code>·is·assumed·to·be·a·module·and·this·call·is·equivalent·to
1603 <a·href="#analyse/3"><code·class="inline">analyse(Arg1,·Arg2,·function)</code></a>.</p><p>If·<code·class="inline">Arg2</code>·is·one·of·the·values·in·<a·href="#t:level/0"><code·class="inline">level()</code></a>,·<code·class="inline">Arg1</code>·is1603 <a·href="#analyse/3"><code·class="inline">analyse(Arg1,·Arg2,·function)</code></a>.</p><p>If·<code·class="inline">Arg2</code>·is·one·of·the·values·in·<a·href="#t:level/0"><code·class="inline">level()</code></a>,·<code·class="inline">Arg1</code>·is
1604 assumed·to·be·a·module·and·this·call·is·equivalent·to·<a·href="#analyse/3"><code·class="inline">analyse(Arg1,·coverage,·Arg2)</code></a>.</p><blockquote><h4·class="info">Note</h4><p>To·analyze·a·module·whose·name·overlaps·with·one·of·the·values·in1604 assumed·to·be·a·module·and·this·call·is·equivalent·to·<a·href="#analyse/3"><code·class="inline">analyse(Arg1,·coverage,·Arg2)</code></a>.</p><blockquote><h4·class="info">Note</h4><p>To·analyze·a·module·whose·name·overlaps·with·one·of·the·values·in
1605 <a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>,·the·module·name·needs·to·be·in·a1605 <a·href="#t:analysis/0"><code·class="inline">analysis()</code></a>,·the·module·name·needs·to·be·in·a
1606 list.·For·example,·to·analyze·a·module·named·<code·class="inline">calls</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="4637122591-1">(</span><span·class="p"·data-group-id="4637122591-2">[</span><span·class="ss">calls</span><span·class="p"·data-group-id="4637122591-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">function</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·00615d4af051e83fa952f24ead16d1a8b1c0deec1ad9b2bda9417adb46c32110·...·]-1">)</span><span·class="p">.</span></code></pre></blockquote>1606 list.·For·example,·to·analyze·a·module·named·<code·class="inline">calls</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="0406718024-1">(</span><span·class="p"·data-group-id="0406718024-2">[</span><span·class="ss">calls</span><span·class="p"·data-group-id="0406718024-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">function</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·22,·SHA:·0e63b0855e4c094dc3f894b69636acdb5a62f68fda7dd5c8841d5c2c767141de·...·]-1">)</span><span·class="p">.</span></code></pre></blockquote>
1607 ··</section>1607 ··</section>
1608 </section>1608 </section>
1609 <section·class="detail"·id="analyse/3">1609 <section·class="detail"·id="analyse/3">
  
1610 ··<div·class="detail-header">1610 ··<div·class="detail-header">
1611 ····<a·href="#analyse/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1611 ····<a·href="#analyse/3"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1612 ······<i·class="ri-link-m"·aria-hidden="true"></i>1612 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 1708, 15 lines modifiedOffset 1708, 15 lines modified
  
1708 ······</div>1708 ······</div>
  
1709 <p>If·<code·class="inline">Arg</code>·is·a·list·of·<a·href="#t:analyse_option/0"><code·class="inline">analyse_option()</code></a>1709 <p>If·<code·class="inline">Arg</code>·is·a·list·of·<a·href="#t:analyse_option/0"><code·class="inline">analyse_option()</code></a>
1710 options,·this·call·is·equivalent·to·<a·href="#analyse_to_file/2"><code·class="inline">analyse_to_file('_',·Arg)</code></a>.</p><p>Otherwise·<code·class="inline">Arg</code>·is·assumed·to·be·a·module,·and·this·call·is·equivalent·to1710 options,·this·call·is·equivalent·to·<a·href="#analyse_to_file/2"><code·class="inline">analyse_to_file('_',·Arg)</code></a>.</p><p>Otherwise·<code·class="inline">Arg</code>·is·assumed·to·be·a·module,·and·this·call·is·equivalent·to
1711 <a·href="#analyse_to_file/2"><code·class="inline">analyse_to_file(Arg,·[])</code></a>.</p><blockquote><h4·class="info">Note</h4><p>To·analyze·a·module·of·the·name·<code·class="inline">html</code>·(which·overlaps·with·an·option1711 <a·href="#analyse_to_file/2"><code·class="inline">analyse_to_file(Arg,·[])</code></a>.</p><blockquote><h4·class="info">Note</h4><p>To·analyze·a·module·of·the·name·<code·class="inline">html</code>·(which·overlaps·with·an·option
1712 in·<a·href="#t:analyse_option/0"><code·class="inline">analyse_option()</code></a>),·it·is·necessary·to1712 in·<a·href="#t:analyse_option/0"><code·class="inline">analyse_option()</code></a>),·it·is·necessary·to
1713 use·<a·href="#analyse_to_file/2"><code·class="inline">cover:analyse_to_file/2</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse_to_file</span><span·class="p"·data-group-id="0503485180-1">(</span><span·class="p"·data-group-id="0503485180-2">[</span><span·class="ss">html</span><span·class="p"·data-group-id="0503485180-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0503485180-3">[</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·4337f14fafdfc2f884f2565d62ab9fa11c2611cd80f7f1928888ad4291f8fbfa·...·]-1">)</span><span·class="p">.</span></code></pre></blockquote>1713 use·<a·href="#analyse_to_file/2"><code·class="inline">cover:analyse_to_file/2</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse_to_file</span><span·class="p"·data-group-id="2555734912-1">(</span><span·class="p"·data-group-id="2555734912-2">[</span><span·class="ss">html</span><span·class="p"·data-group-id="2555734912-2">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2555734912-3">[</span[·...·truncated·by·diffoscope;·len:·95,·SHA:·860002e99cd7d34b009b9d9e9b655dc239c38f955c38818b488ccd5f83af5a79·...·]-1">)</span><span·class="p">.</span></code></pre></blockquote>
1714 ··</section>1714 ··</section>
1715 </section>1715 </section>
1716 <section·class="detail"·id="analyse_to_file/2">1716 <section·class="detail"·id="analyse_to_file/2">
  
1717 ··<div·class="detail-header">1717 ··<div·class="detail-header">
1718 ····<a·href="#analyse_to_file/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">1718 ····<a·href="#analyse_to_file/2"·class="detail-link"·data-no-tooltip·title="Link·to·this·function">
1719 ······<i·class="ri-link-m"·aria-hidden="true"></i>1719 ······<i·class="ri-link-m"·aria-hidden="true"></i>
Offset 2701, 15 lines modifiedOffset 2701, 15 lines modified
2701 ······<p·class="built-using">2701 ······<p·class="built-using">
2702 ········Built·using2702 ········Built·using
2703 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2703 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2704 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2704 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2705 ······</p>2705 ······</p>
2706 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2706 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2707 ····</footer>2707 ····</footer>
2708 ··</div>2708 ··</div>
2709 </main>2709 </main>
2710 </div>2710 </div>
2711 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2711 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2712 <script>2712 <script>
2713 ··document.addEventListener("DOMContentLoaded",·function·()·{2713 ··document.addEventListener("DOMContentLoaded",·function·()·{
604 B
html2text {}
Max HTML report size reached
174 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/cover_chapter.html
Max HTML report size reached
4.94 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/cprof.html
    
Offset 586, 15 lines modifiedOffset 586, 15 lines modified
586 ······<div·class="specs">586 ······<div·class="specs">
  
587 ··········<pre·translate="no"><span·class="attribute">-spec</span>·analyse(Mod,·Limit)·->·ModAnalysis·::·<a·href="#t:mod_analysis/0">mod_analysis</a>()587 ··········<pre·translate="no"><span·class="attribute">-spec</span>·analyse(Mod,·Limit)·->·ModAnalysis·::·<a·href="#t:mod_analysis/0">mod_analysis</a>()
588 ·················when·Mod·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:module/0">module</a>(),·Limit·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>().</pre>588 ·················when·Mod·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:module/0">module</a>(),·Limit·::·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#t:non_neg_integer/0">non_neg_integer</a>().</pre>
  
589 ······</div>589 ······</div>
  
590 <p>Collects·and·analyses·all·call·counters·for·module·<code·class="inline">Module</code>.</p><p>This·function·returns:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0053912368-1">{</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ModuleCount</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FuncAnalysisList</span><span·class="p"·data-group-id="005391[·...·truncated·by·diffoscope;·len:·650,·SHA:·34d13513ce65f79bcd671fe7c4bc6a6727d06ce213e0e2abec2bcd7b3c032694·...·]-1">}</span></code></pre><p>If·call·counters·are·still·running·while·<code·class="inline">analyse/0,1,2</code>·is·executing,·the·result590 <p>Collects·and·analyses·all·call·counters·for·module·<code·class="inline">Module</code>.</p><p>This·function·returns:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0246500414-1">{</span><span·class="n">Module</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ModuleCount</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FuncAnalysisList</span><span·class="p"·data-group-id="024650[·...·truncated·by·diffoscope;·len:·650,·SHA:·a342afc8fc6d460f3cd8eec5c57f83d8fbdaedbe6923e7e96a9c69272cc4e3bc·...·]-1">}</span></code></pre><p>If·call·counters·are·still·running·while·<code·class="inline">analyse/0,1,2</code>·is·executing,·the·result
591 could·be·inconsistent.·This·happens·if·the·process·executing·<code·class="inline">analyse/0,1,2</code>591 could·be·inconsistent.·This·happens·if·the·process·executing·<code·class="inline">analyse/0,1,2</code>
592 is·scheduled·out·so·some·other·process·can·increment·the·counters·that·are592 is·scheduled·out·so·some·other·process·can·increment·the·counters·that·are
593 being·analysed.·Calling·<a·href="#pause/0"><code·class="inline">pause()</code></a>·before·analysing·takes·care·of593 being·analysed.·Calling·<a·href="#pause/0"><code·class="inline">pause()</code></a>·before·analysing·takes·care·of
594 that·problem.</p><p>All·functions·with·a·<code·class="inline">FuncCallCount</code>·lower·than·<code·class="inline">Limit</code>·are·excluded·from594 that·problem.</p><p>All·functions·with·a·<code·class="inline">FuncCallCount</code>·lower·than·<code·class="inline">Limit</code>·are·excluded·from
595 <code·class="inline">FuncAnalysisList</code>.·They·are·still·included·in·<code·class="inline">ModCallCount</code>,·though.</p>595 <code·class="inline">FuncAnalysisList</code>.·They·are·still·included·in·<code·class="inline">ModCallCount</code>,·though.</p>
596 ··</section>596 ··</section>
597 </section>597 </section>
Offset 1107, 15 lines modifiedOffset 1107, 15 lines modified
1107 ······<p·class="built-using">1107 ······<p·class="built-using">
1108 ········Built·using1108 ········Built·using
1109 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1109 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1110 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1110 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1111 ······</p>1111 ······</p>
1112 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1112 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1113 ····</footer>1113 ····</footer>
1114 ··</div>1114 ··</div>
1115 </main>1115 </main>
1116 </div>1116 </div>
1117 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1117 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1118 <script>1118 <script>
1119 ··document.addEventListener("DOMContentLoaded",·function·()·{1119 ··document.addEventListener("DOMContentLoaded",·function·()·{
697 B
html2text {}
Max HTML report size reached
84.6 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/cprof_chapter.html
    
Offset 152, 130 lines modifiedOffset 152, 130 lines modified
152 no·trace·message·has·to·be·generated.·Some·measurements·indicates·performance152 no·trace·message·has·to·be·generated.·Some·measurements·indicates·performance
153 degradations·in·the·vicinity·of·10·percent.</p><p>The·following·sections·show·some·examples·of·profiling·with·<a·href="cprof.html"><code·class="inline">cprof</code></a>.</p><h2·id="example-background-work"·class="section-heading">153 degradations·in·the·vicinity·of·10·percent.</p><p>The·following·sections·show·some·examples·of·profiling·with·<a·href="cprof.html"><code·class="inline">cprof</code></a>.</p><h2·id="example-background-work"·class="section-heading">
154 ··<a·href="#example-background-work"·class="hover-link">154 ··<a·href="#example-background-work"·class="hover-link">
155 ····<i·class="ri-link-m"·aria-hidden="true"></i>155 ····<i·class="ri-link-m"·aria-hidden="true"></i>
156 ··</a>156 ··</a>
157 ··<span·class="text">Example:·Background·work</span>157 ··<span·class="text">Example:·Background·work</span>
158 </h2>158 </h2>
159 <p>From·the·Erlang·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="1400947934-1">(</span><span·class="p"·data-group-id="1400947934-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">pause</span><span·class="p"·data-group-id="1400947934-2">(</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·3e92bbb06e8f7a3d3a557288c9cfcd041322c9a27567f8d31d6b38d789e2aa6c·...·]-2">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·Stop·counters·just·after·start</span><span·class="w">159 <p>From·the·Erlang·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="2579655202-1">(</span><span·class="p"·data-group-id="2579655202-1">)</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">pause</span><span·class="p"·data-group-id="2579655202-2">(</spa[·...·truncated·by·diffoscope;·len:·43,·SHA:·8a0d337e9883f44fe6fd79015efd31e1aa411a07fc8897bcfc182180125ab8af·...·]-2">)</span><span·class="p">.</span><span·class="w">·</span><span·class="c1">%·Stop·counters·just·after·start</span><span·class="w">
160 </span><span·class="mi">8492</span><span·class="gp·unselectable">160 </span><span·class="mi">8492</span><span·class="gp·unselectable">
161 2&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="1400947934-3">(</span><span·class="p"·data-group-id="1400947934-3">)</span><span·class="p">.</span><span·class="w">161 2&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="2579655202-3">(</span><span·class="p"·data-group-id="2579655202-3">)</span><span·class="p">.</span><span·class="w">
162 </span><span·class="p"·data-group-id="1400947934-4">{</span><span·class="mi">539</span><span·class="p">,</span><span·class="w">162 </span><span·class="p"·data-group-id="2579655202-4">{</span><span·class="mi">539</span><span·class="p">,</span><span·class="w">
163 ·</span><span·class="p"·data-group-id="1400947934-5">[</span><span·class="p"·data-group-id="1400947934-6">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="mi">155</span><span·class="p">,</span><span·class="w">163 ·</span><span·class="p"·data-group-id="2579655202-5">[</span><span·class="p"·data-group-id="2579655202-6">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="mi">155</span><span·class="p">,</span><span·class="w">
164 ·········</span><span·class="p"·data-group-id="1400947934-7">[</span><span·class="p"·data-group-id="1400947934-8">{</span><span·class="p"·data-group-id="1400947934-9">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">prep_check</span><span·class="p">,</span><span·class="mi">[·...·truncated·by·diffoscope;·len:·152,·SHA:·3febf9f7dd3e4844027f1f9db4883e987bb2c82d04b67b3ad565cbec4525488d·...·]-8">}</span><span·class="p">,</span><span·class="w">164 ·········</span><span·class="p"·data-group-id="2579655202-7">[</span><span·class="p"·data-group-id="2579655202-8">{</span><span·class="p"·data-group-id="2579655202-9">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">prep_check</span><span·class="p">,</span><span·class="mi">[·...·truncated·by·diffoscope;·len:·152,·SHA:·ce7ee34e234742293d029020f2b542b3ab602dcbf8868abb15e52687a74ab9bd·...·]-8">}</span><span·class="p">,</span><span·class="w">
165 ··········</span><span·class="p"·data-group-id="1400947934-10">{</span><span·class="p"·data-group-id="1400947934-11">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">used_records</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="1400947934[·...·truncated·by·diffoscope;·len:·104,·SHA:·169ef62a30048a96fb6f4b987c0cca9d128162e696a483a9f7bab447ce4c17b1·...·]-10">}</span><span·class="p">,</span><span·class="w">165 ··········</span><span·class="p"·data-group-id="2579655202-10">{</span><span·class="p"·data-group-id="2579655202-11">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">used_records</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="2579655202[·...·truncated·by·diffoscope;·len:·104,·SHA:·8c03483aa53df084f60e3501598487a1073413822b1791d7e47995ff79047d01·...·]-10">}</span><span·class="p">,</span><span·class="w">
166 ··········</span><span·class="p"·data-group-id="1400947934-12">{</span><span·class="p"·data-group-id="1400947934-13">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">used_records</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="1400947934[·...·truncated·by·diffoscope;·len:·104,·SHA:·4c60acaff04a0fd02e4fb5808e19103c75e62e620747db3fa528df204d403b27·...·]-12">}</span><span·class="p">,</span><span·class="w">166 ··········</span><span·class="p"·data-group-id="2579655202-12">{</span><span·class="p"·data-group-id="2579655202-13">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">used_records</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2579655202[·...·truncated·by·diffoscope;·len:·104,·SHA:·6cb770725ee8a3ae2fa42af697476c68bfdb996706cd0453c666e23842e73c09·...·]-12">}</span><span·class="p">,</span><span·class="w">
167 ··········</span><span·class="p"·data-group-id="1400947934-14">{</span><span·class="p"·data-group-id="1400947934-15">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">used_record_defs</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="140094[·...·truncated·by·diffoscope;·len:·107,·SHA:·2eb808d92e9a775367e6fd4c0b31562f8dd81ed153517e34bc60b6a6b345ee55·...·]-14">}</span><span·class="p">,</span><span·class="w">167 ··········</span><span·class="p"·data-group-id="2579655202-14">{</span><span·class="p"·data-group-id="2579655202-15">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">used_record_defs</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="257965[·...·truncated·by·diffoscope;·len:·107,·SHA:·08e0ac2d93ec89f4bb951ba7ed2efa6615668c1ac18bb53cbbed3696ec0987b7·...·]-14">}</span><span·class="p">,</span><span·class="w">
168 ··········</span><span·class="p"·data-group-id="1400947934-16">{</span><span·class="p"·data-group-id="1400947934-17">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">record_defs</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1400947934-[·...·truncated·by·diffoscope;·len:·102,·SHA:·a7fe5a9a08fff7263b4804d19f4d465c7751ae1b7c8bac796c517f00c23610ec·...·]-16">}</span><span·class="p">,</span><span·class="w">168 ··········</span><span·class="p"·data-group-id="2579655202-16">{</span><span·class="p"·data-group-id="2579655202-17">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">record_defs</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="2579655202-[·...·truncated·by·diffoscope;·len:·102,·SHA:·a9809caab9d53efe8f9c01bf7d2f9fdb8f7afef76cbebc4eef07a5f0c0415012·...·]-16">}</span><span·class="p">,</span><span·class="w">
169 ··········</span><span·class="p"·data-group-id="1400947934-18">{</span><span·class="p"·data-group-id="1400947934-19">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">record_bindings</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1400947[·...·truncated·by·diffoscope;·len:·106,·SHA:·74f561c4d39426d4aa064cca6c89dd77a8bac002884310a891dd8ee75d003f0c·...·]-18">}</span><span·class="p">,</span><span·class="w">169 ··········</span><span·class="p"·data-group-id="2579655202-18">{</span><span·class="p"·data-group-id="2579655202-19">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">record_bindings</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="2579655[·...·truncated·by·diffoscope;·len:·106,·SHA:·443937f7857157b1a07de3b3c8f71051d8a962653d48066b74fb1ddb1daf2b24·...·]-18">}</span><span·class="p">,</span><span·class="w">
170 ··········</span><span·class="p"·data-group-id="1400947934-20">{</span><span·class="p"·data-group-id="1400947934-21">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">exprs</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="1400947934-21">}<[·...·truncated·by·diffoscope;·len:·96,·SHA:·d747fccd76e00b14fa7a55372c7dd385cc2d39a302c5c494242f2048041180a4·...·]-20">}</span><span·class="p">,</span><span·class="w">170 ··········</span><span·class="p"·data-group-id="2579655202-20">{</span><span·class="p"·data-group-id="2579655202-21">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">exprs</span><span·class="p">,</span><span·class="mi">7</span><span·class="p"·data-group-id="2579655202-21">}<[·...·truncated·by·diffoscope;·len:·96,·SHA:·d93b40bb2138e76a05ff8d36b1319d7bc409a471941254b1c9140b47641055e9·...·]-20">}</span><span·class="p">,</span><span·class="w">
171 ··········</span><span·class="p"·data-group-id="1400947934-22">{</span><span·class="p"·data-group-id="1400947934-23">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">expr</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="1400947934-23">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·ee44df183e8ba9841a9df3729a1a4f40863ad14579d896224f975e9e2e5b0a6e·...·]-22">}</span><span·class="p">,</span><span·class="w">171 ··········</span><span·class="p"·data-group-id="2579655202-22">{</span><span·class="p"·data-group-id="2579655202-23">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">expr</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="2579655202-23">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·0619492f61a23a0b5c4ff492d6bdb55506ff362be9fab093215c12401a74335c·...·]-22">}</span><span·class="p">,</span><span·class="w">
172 ··········</span><span·class="p"·data-group-id="1400947934-24">{</span><span·class="p"·data-group-id="1400947934-25">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">expand_records</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="14009479[·...·truncated·by·diffoscope;·len:·105,·SHA:·ad8147829085e4959e72680c7f0767588e0b8e10c8a0d0a747982fe5f3285fb1·...·]-24">}</span><span·class="p">,</span><span·class="w">172 ··········</span><span·class="p"·data-group-id="2579655202-24">{</span><span·class="p"·data-group-id="2579655202-25">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">expand_records</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="25796552[·...·truncated·by·diffoscope;·len:·105,·SHA:·dd1c01b5a89d5cd36afae7994c71b92bd1cfb33f7a997f1b9b41dc2e049d6166·...·]-24">}</span><span·class="p">,</span><span·class="w">
173 ··········</span><span·class="p"·data-group-id="1400947934-26">{</span><span·class="p"·data-group-id="1400947934-27">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">check_command</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="140094793[·...·truncated·by·diffoscope;·len:·104,·SHA:·0a4d95d19f1360343698bbe920bb9a6635fe2596cdf2852ffa52f1484d48e9cb·...·]-26">}</span><span·class="p">,</span><span·class="w">173 ··········</span><span·class="p"·data-group-id="2579655202-26">{</span><span·class="p"·data-group-id="2579655202-27">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">check_command</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="257965520[·...·truncated·by·diffoscope;·len:·104,·SHA:·1b2863509faf55418d8e83dbc55e6993a8bd5a9f03b837c0a0f7211f0d22f04f·...·]-26">}</span><span·class="p">,</span><span·class="w">
174 ··········</span><span·class="p"·data-group-id="1400947934-28">{</span><span·class="p"·data-group-id="1400947934-29">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">apply_fun</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="1400947934-29[·...·truncated·by·diffoscope;·len:·100,·SHA:·579ce99c7b5d0fb4482824af15912c9dd135435ec279e88203089aeef68f9550·...·]-28">}</span><span·class="p">,</span><span·class="w">174 ··········</span><span·class="p"·data-group-id="2579655202-28">{</span><span·class="p"·data-group-id="2579655202-29">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">apply_fun</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="2579655202-29[·...·truncated·by·diffoscope;·len:·100,·SHA:·411bbba870272088c170968a0d77f44d9adf2d3ed945c50f105edb71a3c59569·...·]-28">}</span><span·class="p">,</span><span·class="w">
175 ··········</span><span·class="p"·data-group-id="1400947934-30">{</span><span·class="p"·data-group-id="1400947934-31">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">&#39;-exprs/7-lc$^0/1-0-&#39;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·120,·SHA:·e55dd70fd18fa7f2de5904af59edaa81233e555978a0cfe1f26ce54131025340·...·]-30">}</span><span·class="p">,</span><span·class="w">175 ··········</span><span·class="p"·data-group-id="2579655202-30">{</span><span·class="p"·data-group-id="2579655202-31">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">&#39;-exprs/7-lc$^0/1-0-&#39;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·120,·SHA:·705e04f34f533a332f1103dd4b53c222fb0b2f29bc5b346dc1997b419f09c338·...·]-30">}</span><span·class="p">,</span><span·class="w">
176 ··········</span><span·class="p"·data-group-id="1400947934-32">{</span><span·class="p"·data-group-id="1400947934-33">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">&#39;-eval_loop/3-fun-0-&#39;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·227,·SHA:·45e2b869fac6d7916b98beb4a2760e7e27d9381b4ad5a24f38a7d3e68ec792a9·...·]-6">}</span><span·class="p">,</span><span·class="w">176 ··········</span><span·class="p"·data-group-id="2579655202-32">{</span><span·class="p"·data-group-id="2579655202-33">{</span><span·class="ss">shell</span><span·class="p">,</span><span·class="ss">&#39;-eval_loop/3-fun-0-&#39;</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·227,·SHA:·2982773c8f1cca7cb429d13917bda9a2585b16d43cc9d3971766e9955184d6d7·...·]-6">}</span><span·class="p">,</span><span·class="w">
177 ··</span><span·class="c1">%%·Information·about·many·modules·omitted.</span><span·class="w">177 ··</span><span·class="c1">%%·Information·about·many·modules·omitted.</span><span·class="w">
178 ·····················</span><span·class="p">.</span><span·class="w">178 ·····················</span><span·class="p">.</span><span·class="w">
179 ·····················</span><span·class="p">.</span><span·class="w">179 ·····················</span><span·class="p">.</span><span·class="w">
180 ·····················</span><span·class="p">.</span><span·class="w">180 ·····················</span><span·class="p">.</span><span·class="w">
181 ··</span><span·class="c1">%%·Here·is·the·last·part.</span><span·class="w">181 ··</span><span·class="c1">%%·Here·is·the·last·part.</span><span·class="w">
182 ··</span><span·class="p"·data-group-id="1400947934-34">{</span><span·class="ss">erts_internal</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="p"·data-group-id="1400947934-35">[</span><span·class="p"·data-group-id="1400947934-36">{</span><span·class="p"[·...·truncated·by·diffoscope;·len:·438,·SHA:·75c596c69beb03183bf61836aaca30faf56e57968374e9487b1fbc08f2f6e357·...·]-34">}</span><span·class="p">,</span><span·class="w">182 ··</span><span·class="p"·data-group-id="2579655202-34">{</span><span·class="ss">erts_internal</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="p"·data-group-id="2579655202-35">[</span><span·class="p"·data-group-id="2579655202-36">{</span><span·class="p"[·...·truncated·by·diffoscope;·len:·438,·SHA:·0f0ce2074a8e9523216498e5081787f9a19c6f7c3d31ea07e2a8f16670dc4b38·...·]-34">}</span><span·class="p">,</span><span·class="w">
183 ··</span><span·class="p"·data-group-id="1400947934-38">{</span><span·class="ss">otp_internal</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-group-id="1400947934-39">[</span><span·class="p"·data-group-id="1400947934-40">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·431,·SHA:·8b6f64595a16bd1df45f52f3c0f10b6b7045dfe6af446af9b443503f7fd5dfe9·...·]-38">}</span><span·class="p">,</span><span·class="w">183 ··</span><span·class="p"·data-group-id="2579655202-38">{</span><span·class="ss">otp_internal</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-group-id="2579655202-39">[</span><span·class="p"·data-group-id="2579655202-40">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·431,·SHA:·b2e1cf97606b4726c45884d828f6d5b0e2f48db805ace1e89cd81f5f1c84278d·...·]-38">}</span><span·class="p">,</span><span·class="w">
184 ··</span><span·class="p"·data-group-id="1400947934-42">{</span><span·class="ss">maps</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-group-id="1400947934-43">[</span><span·class="p"·data-group-id="1400947934-44">{</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·416,·SHA:·b6782c1f2bb31fc3d5d3d5e9a7f856d6e0a891a49199d4e8698524b4a8813b2b·...·]-42">}</span><span·class="p">,</span><span·class="w">184 ··</span><span·class="p"·data-group-id="2579655202-42">{</span><span·class="ss">maps</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-group-id="2579655202-43">[</span><span·class="p"·data-group-id="2579655202-44">{</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·416,·SHA:·44dc21cf5c49d26c9136f5846aaa0e1892ce3f22309f64fa1a7b818a36ca7980·...·]-42">}</span><span·class="p">,</span><span·class="w">
185 ··</span><span·class="p"·data-group-id="1400947934-46">{</span><span·class="ss">erl_internal</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-group-id="1400947934-47">[</span><span·class="p"·data-group-id="1400947934-48">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·533,·SHA:·f3ec1d3e16973827a892a705edda9b637ca9e7204003eccd17e2d91890031785·...·]-4">}</span><span·class="gp·unselectable">185 ··</span><span·class="p"·data-group-id="2579655202-46">{</span><span·class="ss">erl_internal</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="p"·data-group-id="2579655202-47">[</span><span·class="p"·data-group-id="2579655202-48">{</span><span·class="p"·[·...·truncated·by·diffoscope;·len:·533,·SHA:·d0fa67a351cb98e54893f7e832fb6dad1cfc46a8e1a5fc79aaf4378142781e7e·...·]-4">}</span><span·class="gp·unselectable">
186 3&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="1400947934-50">(</span><span·class="ss">cprof</span><span·class="p"·data-group-id="1400947934-50">)</span><span·class="p">.</span><span·class="w">186 3&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="2579655202-50">(</span><span·class="ss">cprof</span><span·class="p"·data-group-id="2579655202-50">)</span><span·class="p">.</span><span·class="w">
187 </span><span·class="p"·data-group-id="1400947934-51">{</span><span·class="ss">cprof</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data-group-id="1400947934-52">[</span><span·class="p"·data-group-id="1400947934-53">{</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·831,·SHA:·cc76133bf9069d1e177c970be42511830bc075eb2fe65d33a17f3b3b853d92bf·...·]-51">}</span><span·class="gp·unselectable">187 </span><span·class="p"·data-group-id="2579655202-51">{</span><span·class="ss">cprof</span><span·class="p">,</span><span·class="mi">3</span><span·class="p">,</span><span·class="p"·data-group-id="2579655202-52">[</span><span·class="p"·data-group-id="2579655202-53">{</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·831,·SHA:·0ff14e6d1c47b71f3958dd4a4d7f45bbe3881d8ebb65c73d318df8aa3b2e594a·...·]-51">}</span><span·class="gp·unselectable">
188 4&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="1400947934-57">(</span><span·class="p"·data-group-id="1400947934-57">)</span><span·class="p">.</span><span·class="w">188 4&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="2579655202-57">(</span><span·class="p"·data-group-id="2579655202-57">)</span><span·class="p">.</span><span·class="w">
189 </span><span·class="mi">8586</span></code></pre><p>The·example·showed·some·of·the·background·work·that·the·shell·performs·just·to189 </span><span·class="mi">8586</span></code></pre><p>The·example·showed·some·of·the·background·work·that·the·shell·performs·just·to
190 interpret·the·first·command·line.</p><p>What·is·captured·in·this·example·is·the·part·of·the·work·the·shell·does·while190 interpret·the·first·command·line.</p><p>What·is·captured·in·this·example·is·the·part·of·the·work·the·shell·does·while
191 interpreting·the·command·line·that·occurs·between·the·actual·calls·to191 interpreting·the·command·line·that·occurs·between·the·actual·calls·to
192 <a·href="cprof.html#start/0"><code·class="inline">cprof:start()</code></a>·and·<a·href="cprof.html#analyse/1"><code·class="inline">cprof:analyse()</code></a>.</p><h2·id="example-one-module"·class="section-heading">192 <a·href="cprof.html#start/0"><code·class="inline">cprof:start()</code></a>·and·<a·href="cprof.html#analyse/1"><code·class="inline">cprof:analyse()</code></a>.</p><h2·id="example-one-module"·class="section-heading">
193 ··<a·href="#example-one-module"·class="hover-link">193 ··<a·href="#example-one-module"·class="hover-link">
194 ····<i·class="ri-link-m"·aria-hidden="true"></i>194 ····<i·class="ri-link-m"·aria-hidden="true"></i>
195 ··</a>195 ··</a>
196 ··<span·class="text">Example:·One·module</span>196 ··<span·class="text">Example:·One·module</span>
197 </h2>197 </h2>
198 <p>From·the·Erlang·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="2800156857-1">(</span><span·class="p"·data-group-id="2800156857-1">)</span><span·class="p">,</span><span·class="n">R</span><span·class="o">=</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">day_of_the_week</span><span·class="p"[·...·truncated·by·diffoscope;·len:·418,·SHA:·9960b5396f4e186170d0297f5d319ae909747b3fb78c17ff695b1735f933b764·...·]-3">)</span><span·class="p">,</span><span·class="n">R</span><span·class="p">.</span><span·class="w">198 <p>From·the·Erlang·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="2520727102-1">(</span><span·class="p"·data-group-id="2520727102-1">)</span><span·class="p">,</span><span·class="n">R</span><span·class="o">=</span><span·class="nc">calendar</span><span·class="p">:</span><span·class="nf">day_of_the_week</span><span·class="p"[·...·truncated·by·diffoscope;·len:·418,·SHA:·23dbb2102ed83ae1000d99d6012879c2816ccbaf4e21c8dcebf5ce2e0bc033cc·...·]-3">)</span><span·class="p">,</span><span·class="n">R</span><span·class="p">.</span><span·class="w">
199 </span><span·class="mi">1</span><span·class="gp·unselectable">199 </span><span·class="mi">1</span><span·class="gp·unselectable">
200 2&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="2800156857-4">(</span><span·class="ss">calendar</span><span·class="p"·data-group-id="2800156857-4">)</span><span·class="p">.</span><span·class="w">200 2&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="2520727102-4">(</span><span·class="ss">calendar</span><span·class="p"·data-group-id="2520727102-4">)</span><span·class="p">.</span><span·class="w">
201 </span><span·class="p"·data-group-id="2800156857-5">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="w">201 </span><span·class="p"·data-group-id="2520727102-5">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="mi">9</span><span·class="p">,</span><span·class="w">
202 ··········</span><span·class="p"·data-group-id="2800156857-6">[</span><span·class="p"·data-group-id="2800156857-7">{</span><span·class="p"·data-group-id="2800156857-8">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">last_day_of_the_month1</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·165,·SHA:·1f20083b8df3d5a453cfaf73b0a0783b44a1e9192fa726c8ee2d71e11d4ee482·...·]-7">}</span><span·class="p">,</span><span·class="w">202 ··········</span><span·class="p"·data-group-id="2520727102-6">[</span><span·class="p"·data-group-id="2520727102-7">{</span><span·class="p"·data-group-id="2520727102-8">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">last_day_of_the_month1</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·165,·SHA:·f493c5a18d117006bdf304fc56059d2a7717b89fb9269a4bc25d823c1a48fbef·...·]-7">}</span><span·class="p">,</span><span·class="w">
203 ···········</span><span·class="p"·data-group-id="2800156857-9">{</span><span·class="p"·data-group-id="2800156857-10">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">last_day_of_the_month</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·113,·SHA:·3b71f6585554d9daf4d3bbf49881b3f336504e8181a9cf6a92580c88e82ce13c·...·]-9">}</span><span·class="p">,</span><span·class="w">203 ···········</span><span·class="p"·data-group-id="2520727102-9">{</span><span·class="p"·data-group-id="2520727102-10">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">last_day_of_the_month</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·113,·SHA:·ddc02e1c6a0d0c0fd72395dfea111f94cc91f63225c86eb62014d9c61d19f3f0·...·]-9">}</span><span·class="p">,</span><span·class="w">
204 ···········</span><span·class="p"·data-group-id="2800156857-11">{</span><span·class="p"·data-group-id="2800156857-12">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">is_leap_year1</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2800156[·...·truncated·by·diffoscope;·len:·106,·SHA:·e440f010e068b943986224d5c7e4360440d7efd14cbef6eab12eaf0c0465f55e·...·]-11">}</span><span·class="p">,</span><span·class="w">204 ···········</span><span·class="p"·data-group-id="2520727102-11">{</span><span·class="p"·data-group-id="2520727102-12">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">is_leap_year1</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2520727[·...·truncated·by·diffoscope;·len:·106,·SHA:·d7ed91ad50ed93661a10c9307eb56a9e5a2afac6e10f6326c4b32e44729fee40·...·]-11">}</span><span·class="p">,</span><span·class="w">
205 ···········</span><span·class="p"·data-group-id="2800156857-13">{</span><span·class="p"·data-group-id="2800156857-14">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">is_leap_year</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="28001568[·...·truncated·by·diffoscope;·len:·105,·SHA:·34359078f5ecb19e93fe7e51f8becdfbd77f26fb581529bc63488584b6799774·...·]-13">}</span><span·class="p">,</span><span·class="w">205 ···········</span><span·class="p"·data-group-id="2520727102-13">{</span><span·class="p"·data-group-id="2520727102-14">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">is_leap_year</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="25207271[·...·truncated·by·diffoscope;·len:·105,·SHA:·ebaeaf9a3c606a4f99754238f3e0f32b669c03189ef3b203258df52bc30d1a41·...·]-13">}</span><span·class="p">,</span><span·class="w">
206 ···········</span><span·class="p"·data-group-id="2800156857-15">{</span><span·class="p"·data-group-id="2800156857-16">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">dy</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2800156857-16">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·51b878e1b721fb64b83318d9f7d7d41354dad33f4d40bb9aa05ab6856a9e7e2f·...·]-15">}</span><span·class="p">,</span><span·class="w">206 ···········</span><span·class="p"·data-group-id="2520727102-15">{</span><span·class="p"·data-group-id="2520727102-16">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">dy</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2520727102-16">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·684c06dd0890c2688d834cf6933e3320bb2e58707254df888fbca2378da89f8a·...·]-15">}</span><span·class="p">,</span><span·class="w">
207 ···········</span><span·class="p"·data-group-id="2800156857-17">{</span><span·class="p"·data-group-id="2800156857-18">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">dm</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2800156857-18">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·51b878e1b721fb64b83318d9f7d7d41354dad33f4d40bb9aa05ab6856a9e7e2f·...·]-17">}</span><span·class="p">,</span><span·class="w">207 ···········</span><span·class="p"·data-group-id="2520727102-17">{</span><span·class="p"·data-group-id="2520727102-18">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">dm</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="2520727102-18">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·684c06dd0890c2688d834cf6933e3320bb2e58707254df888fbca2378da89f8a·...·]-17">}</span><span·class="p">,</span><span·class="w">
208 ···········</span><span·class="p"·data-group-id="2800156857-19">{</span><span·class="p"·data-group-id="2800156857-20">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">df</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="2800156857-20">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·51b878e1b721fb64b83318d9f7d7d41354dad33f4d40bb9aa05ab6856a9e7e2f·...·]-19">}</span><span·class="p">,</span><span·class="w">208 ···········</span><span·class="p"·data-group-id="2520727102-19">{</span><span·class="p"·data-group-id="2520727102-20">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">df</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="2520727102-20">}</[·...·truncated·by·diffoscope;·len:·95,·SHA:·684c06dd0890c2688d834cf6933e3320bb2e58707254df888fbca2378da89f8a·...·]-19">}</span><span·class="p">,</span><span·class="w">
209 ···········</span><span·class="p"·data-group-id="2800156857-21">{</span><span·class="p"·data-group-id="2800156857-22">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">day_of_the_week</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="28001[·...·truncated·by·diffoscope;·len:·108,·SHA:·3ab1e8401c524c03ee6d545238357b7b30f0dab0197e6dae9f632b13fcf37e0e·...·]-21">}</span><span·class="p">,</span><span·class="w">209 ···········</span><span·class="p"·data-group-id="2520727102-21">{</span><span·class="p"·data-group-id="2520727102-22">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">day_of_the_week</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="25207[·...·truncated·by·diffoscope;·len:·108,·SHA:·5c2bd3df2276cfd5b890d21c9359a9d742513975c36647228e5a9bbf8f4657ea·...·]-21">}</span><span·class="p">,</span><span·class="w">
210 ···········</span><span·class="p"·data-group-id="2800156857-23">{</span><span·class="p"·data-group-id="2800156857-24">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">date_to_gregorian_days</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·222,·SHA:·75bcf753d9b26f86dd037ee91f9dcbc35c010efc8a3fe8ce4ba88852d7c5630d·...·]-5">}</span><span·class="gp·unselectable">210 ···········</span><span·class="p"·data-group-id="2520727102-23">{</span><span·class="p"·data-group-id="2520727102-24">{</span><span·class="ss">calendar</span><span·class="p">,</span><span·class="ss">date_to_gregorian_days</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id[·...·truncated·by·diffoscope;·len:·222,·SHA:·f11738e70202e64c1ea158f4f3fbe7322e4bb0578e5ded8a82aba9263ca9d326·...·]-5">}</span><span·class="gp·unselectable">
211 3&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="2800156857-25">(</span><span·class="p"·data-group-id="2800156857-25">)</span><span·class="p">.</span><span·class="w">211 3&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="2520727102-25">(</span><span·class="p"·data-group-id="2520727102-25">)</span><span·class="p">.</span><span·class="w">
212 </span><span·class="mi">8648</span></code></pre><p>The·example·tells·us·that·&quot;Aktiebolaget·LM·Ericsson·&amp;·Co&quot;·was·registered·on·a212 </span><span·class="mi">8648</span></code></pre><p>The·example·tells·us·that·&quot;Aktiebolaget·LM·Ericsson·&amp;·Co&quot;·was·registered·on·a
213 Monday·(since·the·return·value·of·the·first·command·is·1),·and·that·the213 Monday·(since·the·return·value·of·the·first·command·is·1),·and·that·the
214 <code·class="inline">calendar</code>·module·needed·9·function·calls·to·calculate·that.</p><p>Using·<code·class="inline">cprof:analyse()</code>·in·this·example·also·shows·approximately·the·same214 <code·class="inline">calendar</code>·module·needed·9·function·calls·to·calculate·that.</p><p>Using·<code·class="inline">cprof:analyse()</code>·in·this·example·also·shows·approximately·the·same
215 background·work·as·in·the·first·example.</p><h2·id="example-in-the-code"·class="section-heading">215 background·work·as·in·the·first·example.</p><h2·id="example-in-the-code"·class="section-heading">
216 ··<a·href="#example-in-the-code"·class="hover-link">216 ··<a·href="#example-in-the-code"·class="hover-link">
217 ····<i·class="ri-link-m"·aria-hidden="true"></i>217 ····<i·class="ri-link-m"·aria-hidden="true"></i>
218 ··</a>218 ··</a>
219 ··<span·class="text">Example:·In·the·code</span>219 ··<span·class="text">Example:·In·the·code</span>
220 </h2>220 </h2>
221 <p>Write·a·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0549453636-1">(</span><span·class="ss">sort</span><span·class="p"·data-group-id="0549453636-1">)</span><span·class="p">.</span><span·class="w"> 
222 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0549453636-2">(</span><span·class="p"·data-group-id="0549453636-3">[</span><span·class="ss">do</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"[·...·truncated·by·diffoscope;·len:·81,·SHA:·2a16f4567a3df907dd763a96d566ee7ebeb66b832dd0119e42c95c65459164c3·...·]">)</span><span·class="p">.</span><span·class="w">221 <p>Write·a·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7596144928-1">(</span><span·class="ss">sort</span><span·class="p"·data-group-id="7596144928-1">)</span><span·class="p">.</span><span·class="w">
 222 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7596144928-2">(</span><span·class="p"·data-group-id="7596144928-3">[</span><span·class="ss">do</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="7596144928-3">]</span><span·class="p"·data-group-id="7596144928-2">)</span><span·class="p">.</span><span·class="w">
  
223 </span><span·class="nf">do</span><span·class="p"·data-group-id="0549453636-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="0549453636-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">223 </span><span·class="nf">do</span><span·class="p"·data-group-id="7596144928-4">(</span><span·class="n">N</span><span·class="p"·data-group-id="7596144928-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
224 ····</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="0549453636-5">(</span><span·class="p"·data-group-id="0549453636-5">)</span><span·class="p">,</span><span·class="w">224 ····</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="7596144928-5">(</span><span·class="p"·data-group-id="7596144928-5">)</span><span·class="p">,</span><span·class="w">
225 ····</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="0549453636-6">(</span><span·class="p"·data-group-id="0549453636-6">)</span><span·class="p">,</span><span·class="w">225 ····</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="7596144928-6">(</span><span·class="p"·data-group-id="7596144928-6">)</span><span·class="p">,</span><span·class="w">
226 ····</span><span·class="nf">do</span><span·class="p"·data-group-id="0549453636-7">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0549453636-8">[</span><span·class="p"·data-group-id="0549453636-8">]</span><span·class="p"·data-group-id="0549453636-7">)</span><span·class="p">.</span><span·class="w">226 ····</span><span·class="nf">do</span><span·class="p"·data-group-id="7596144928-7">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7596144928-8">[</span><span·class="p"·data-group-id="7596144928-8">]</span><span·class="p"·data-group-id="7596144928-7">)</span><span·class="p">.</span><span·class="w">
  
227 </span><span·class="nf">do</span><span·class="p"·data-group-id="0549453636-9">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="0549453636-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 </span><span·class="nf">do</span><span·class="p"·data-group-id="7596144928-9">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="7596144928-9">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">sort</span><span·class="p"·data-group-id="0549453636-10">(</span><span·class="n">L</span><span·class="p"·data-group-id="0549453636-10">)</span><span·class="p">,</span><span·class="w">228 ····</span><span·class="n">R</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">sort</span><span·class="p"·data-group-id="7596144928-10">(</span><span·class="n">L</span><span·class="p"·data-group-id="7596144928-10">)</span><span·class="p">,</span><span·class="w">
229 ····</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">pause</span><span·class="p"·data-group-id="0549453636-11">(</span><span·class="p"·data-group-id="0549453636-11">)</span><span·class="p">,</span><span·class="w">229 ····</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">pause</span><span·class="p"·data-group-id="7596144928-11">(</span><span·class="p"·data-group-id="7596144928-11">)</span><span·class="p">,</span><span·class="w">
230 ····</span><span·class="n">R</span><span·class="p">;</span><span·class="w">230 ····</span><span·class="n">R</span><span·class="p">;</span><span·class="w">
231 </span><span·class="nf">do</span><span·class="p"·data-group-id="0549453636-12">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="0549453636-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 </span><span·class="nf">do</span><span·class="p"·data-group-id="7596144928-12">(</span><span·class="n">N</span><span·class="p">,</span><span·class="w">·</span><span·class="n">L</span><span·class="p"·data-group-id="7596144928-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 ····</span><span·class="nf">do</span><span·class="p"·data-group-id="0549453636-13">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0549453636-14">[</span><span·class="nc">rand</span><span·class="p">:</span><span·[·...·truncated·by·diffoscope;·len:·717,·SHA:·c66368153286d926fb9c6f6c662c53f374b5bc0191d0793ce76d30a5005972f2·...·]-1">)</span><span·class="p">.</span><span·class="w">232 ····</span><span·class="nf">do</span><span·class="p"·data-group-id="7596144928-13">(</span><span·class="n">N</span><span·class="o">-</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7596144928-14">[</span><span·class="nc">rand</span><span·class="p">:</span><span·[·...·truncated·by·diffoscope;·len:·717,·SHA:·59a5e854d2a1ef08ae48a9491f10ebd3b86765d6a32f43525bd7adaa748ce28b·...·]-1">)</span><span·class="p">.</span><span·class="w">
233 </span><span·class="p"·data-group-id="5482175751-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">sort</span><span·class="p"·data-group-id="5482175751-2">}</span><span·class="gp·unselectable">233 </span><span·class="p"·data-group-id="0926829154-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">sort</span><span·class="p"·data-group-id="0926829154-2">}</span><span·class="gp·unselectable">
234 2&gt;·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">seed</span><span·class="p"·data-group-id="5482175751-3">(</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">42</span><span·class="p"·data-group-id="5482175751-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">234 2&gt;·</span><span·class="nc">rand</span><span·class="p">:</span><span·class="nf">seed</span><span·class="p"·data-group-id="0926829154-3">(</span><span·class="ss">default</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">42</span><span·class="p"·data-group-id="0926829154-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
235 </span><span·class="ss">ok</span><span·class="p">.</span><span·class="gp·unselectable">235 </span><span·class="ss">ok</span><span·class="p">.</span><span·class="gp·unselectable">
236 3&gt;·</span><span·class="nc">sort</span><span·class="p">:</span><span·class="nf">do</span><span·class="p"·data-group-id="5482175751-4">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="5482175751-4">)</span><span·class="p">.</span><span·class="w">236 3&gt;·</span><span·class="nc">sort</span><span·class="p">:</span><span·class="nf">do</span><span·class="p"·data-group-id="0926829154-4">(</span><span·class="mi">1000</span><span·class="p"·data-group-id="0926829154-4">)</span><span·class="p">.</span><span·class="w">
237 </span><span·class="p"·data-group-id="5482175751-5">[</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">1</span><span·class="[·...·truncated·by·diffoscope;·len:·1300,·SHA:·d4a4c40c12c293a21f212a51513143026f6eecca5b110609c6c00d7a4acae85e·...·]-5">]</span><span·class="gp·unselectable">237 </span><span·class="p"·data-group-id="0926829154-5">[</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">0</span><span·class="p">,</span><span·class="mi">1</span><span·class="p">,</span><span·class="mi">1</span><span·class="[·...·truncated·by·diffoscope;·len:·1300,·SHA:·2d7e593830687dea53b339a04373b1d9538e1bf51a96f3aa4175ed7d13b82bf7·...·]-5">]</span><span·class="gp·unselectable">
238 4&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="5482175751-6">(</span><span·class="p"·data-group-id="5482175751-6">)</span><span·class="p">.</span><span·class="w">238 4&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="0926829154-6">(</span><span·class="p"·data-group-id="0926829154-6">)</span><span·class="p">.</span><span·class="w">
239 </span><span·class="p"·data-group-id="5482175751-7">{</span><span·class="mi">13180</span><span·class="p">,</span><span·class="w">239 </span><span·class="p"·data-group-id="0926829154-7">{</span><span·class="mi">13180</span><span·class="p">,</span><span·class="w">
240 ·</span><span·class="p"·data-group-id="5482175751-8">[</span><span·class="p"·data-group-id="5482175751-9">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="mi">6173</span><span·class="p">,</span><span·class="w">240 ·</span><span·class="p"·data-group-id="0926829154-8">[</span><span·class="p"·data-group-id="0926829154-9">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="mi">6173</span><span·class="p">,</span><span·class="w">
241 ·········</span><span·class="p"·data-group-id="5482175751-10">[</span><span·class="p"·data-group-id="5482175751-11">{</span><span·class="p"·data-group-id="5482175751-12">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge3_1</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·157,·SHA:·9705c283d3b46882846bf196ee1abf939670cfea8db8a0a19e5e16b785bb1fe3·...·]-11">}</span><span·class="p">,</span><span·class="w">241 ·········</span><span·class="p"·data-group-id="0926829154-10">[</span><span·class="p"·data-group-id="0926829154-11">{</span><span·class="p"·data-group-id="0926829154-12">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge3_1</span><span·class="p">,</span><span·class="mi[·...·truncated·by·diffoscope;·len:·157,·SHA:·0827755f9fd3d159cdd958660d70121e02c23b4446c6f34a5fe079ff86b29fec·...·]-11">}</span><span·class="p">,</span><span·class="w">
242 ··········</span><span·class="p"·data-group-id="5482175751-13">{</span><span·class="p"·data-group-id="5482175751-14">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge3_2</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5482175751-14[·...·truncated·by·diffoscope;·len:·102,·SHA:·1fe0aa721912a680d582e8ef233d10b4cd9301a1c4e66478a2dd2c136859084a·...·]-13">}</span><span·class="p">,</span><span·class="w">242 ··········</span><span·class="p"·data-group-id="0926829154-13">{</span><span·class="p"·data-group-id="0926829154-14">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge3_2</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0926829154-14[·...·truncated·by·diffoscope;·len:·102,·SHA:·11d92037fe21efb43d905816add33ada88d36b0c3208e049738d11748474f5b3·...·]-13">}</span><span·class="p">,</span><span·class="w">
243 ··········</span><span·class="p"·data-group-id="5482175751-15">{</span><span·class="p"·data-group-id="5482175751-16">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">split_1</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="5482175751-16">[·...·truncated·by·diffoscope;·len:·100,·SHA:·0cfafcb47bc200993788337b9c0b16afe9cbe84e895274f9412e4c91b63cc8e7·...·]-15">}</span><span·class="p">,</span><span·class="w">243 ··········</span><span·class="p"·data-group-id="0926829154-15">{</span><span·class="p"·data-group-id="0926829154-16">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">split_1</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="0926829154-16">[·...·truncated·by·diffoscope;·len:·100,·SHA:·16126991042c3c311de9c1f94903fcebd10e187cd055bb697d365a5a577543e6·...·]-15">}</span><span·class="p">,</span><span·class="w">
244 ··········</span><span·class="p"·data-group-id="5482175751-17">{</span><span·class="p"·data-group-id="5482175751-18">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge3_1</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5482175751-18"[·...·truncated·by·diffoscope;·len:·101,·SHA:·4026d6bf0234781dc052667e49005b569983ed76dbe42aebe1bcd729823b2723·...·]-17">}</span><span·class="p">,</span><span·class="w">244 ··········</span><span·class="p"·data-group-id="0926829154-17">{</span><span·class="p"·data-group-id="0926829154-18">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge3_1</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0926829154-18"[·...·truncated·by·diffoscope;·len:·101,·SHA:·c6f149b78abad7b95185afb8bd88f833b62ed6b0fe9a6950e6549ab77550ccf9·...·]-17">}</span><span·class="p">,</span><span·class="w">
245 ··········</span><span·class="p"·data-group-id="5482175751-19">{</span><span·class="p"·data-group-id="5482175751-20">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge3_2</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5482175751-20"[·...·truncated·by·diffoscope;·len:·101,·SHA:·fcdeb398fa4024bfe55cbbe6fecf012e332a9c6336b47d78c30ca365f2600460·...·]-19">}</span><span·class="p">,</span><span·class="w">245 ··········</span><span·class="p"·data-group-id="0926829154-19">{</span><span·class="p"·data-group-id="0926829154-20">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge3_2</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0926829154-20"[·...·truncated·by·diffoscope;·len:·101,·SHA:·5151e7b903b9af74e41e3b1fc7f9b131ab47d56f9d7befc9387d2f4bb1cdeb30·...·]-19">}</span><span·class="p">,</span><span·class="w">
246 ··········</span><span·class="p"·data-group-id="5482175751-21">{</span><span·class="p"·data-group-id="5482175751-22">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge3_12_3</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5482175751[·...·truncated·by·diffoscope;·len:·105,·SHA:·1d28a7cc98f2d435c630eee9e7cf3c55edd929757f77dd1026c3108e582aa46e·...·]-21">}</span><span·class="p">,</span><span·class="w">246 ··········</span><span·class="p"·data-group-id="0926829154-21">{</span><span·class="p"·data-group-id="0926829154-22">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge3_12_3</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0926829154[·...·truncated·by·diffoscope;·len:·105,·SHA:·9dc6ce006e871a72a04dd6d9d90431a917b596008fa5071380d72b6fe37ddae6·...·]-21">}</span><span·class="p">,</span><span·class="w">
247 ··········</span><span·class="p"·data-group-id="5482175751-23">{</span><span·class="p"·data-group-id="5482175751-24">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">split_1_1</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5482175751-24[·...·truncated·by·diffoscope;·len:·102,·SHA:·c09d4bc5e9a108c4d6e927a780ee5e6dfd3126e2d2603242a62ad185381f6d00·...·]-23">}</span><span·class="p">,</span><span·class="w">247 ··········</span><span·class="p"·data-group-id="0926829154-23">{</span><span·class="p"·data-group-id="0926829154-24">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">split_1_1</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0926829154-24[·...·truncated·by·diffoscope;·len:·102,·SHA:·1a70513f3c825521e2e7dfcfd569b454209d46ea0181c4fa34712ea886ff4719·...·]-23">}</span><span·class="p">,</span><span·class="w">
248 ··········</span><span·class="p"·data-group-id="5482175751-25">{</span><span·class="p"·data-group-id="5482175751-26">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge3_12_3</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5482175751-[·...·truncated·by·diffoscope;·len:·104,·SHA:·28a080b51f17ec39bedf6b55639e1f8d4c0473bdfa9e7ad839f206a7c6fb4b01·...·]-25">}</span><span·class="p">,</span><span·class="w">248 ··········</span><span·class="p"·data-group-id="0926829154-25">{</span><span·class="p"·data-group-id="0926829154-26">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge3_12_3</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0926829154-[·...·truncated·by·diffoscope;·len:·104,·SHA:·3058fb560c289fabb555eca6e59fb339e47fa5e5f1bdcd04eae75937835fd11d·...·]-25">}</span><span·class="p">,</span><span·class="w">
249 ··········</span><span·class="p"·data-group-id="5482175751-27">{</span><span·class="p"·data-group-id="5482175751-28">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge3_21_3</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5482175751[·...·truncated·by·diffoscope;·len:·105,·SHA:·6d3bf6e44a7a807d808a100ed7951ac1b214c38250da8f0ddcd34461f48191c9·...·]-27">}</span><span·class="p">,</span><span·class="w">249 ··········</span><span·class="p"·data-group-id="0926829154-27">{</span><span·class="p"·data-group-id="0926829154-28">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge3_21_3</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0926829154[·...·truncated·by·diffoscope;·len:·105,·SHA:·d055112e8d7a7bc7799962bc2999eca2bdd499018931cf9bd9b0987bbfe2582a·...·]-27">}</span><span·class="p">,</span><span·class="w">
250 ··········</span><span·class="p"·data-group-id="5482175751-29">{</span><span·class="p"·data-group-id="5482175751-30">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge3_21_3</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="5482175751-[·...·truncated·by·diffoscope;·len:·104,·SHA:·083e2040bde0d30acd37874798ef6d1b27d5955529501767df53042cf370099f·...·]-29">}</span><span·class="p">,</span><span·class="w">250 ··········</span><span·class="p"·data-group-id="0926829154-29">{</span><span·class="p"·data-group-id="0926829154-30">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge3_21_3</span><span·class="p">,</span><span·class="mi">6</span><span·class="p"·data-group-id="0926829154-[·...·truncated·by·diffoscope;·len:·104,·SHA:·fd3c56164e75728a605bf9d409466f510e9b662d7b7e65bc44a4b9c3bd2066db·...·]-29">}</span><span·class="p">,</span><span·class="w">
251 ··········</span><span·class="p"·data-group-id="5482175751-31">{</span><span·class="p"·data-group-id="5482175751-32">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge2_1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="5482175751-32"[·...·truncated·by·diffoscope;·len:·101,·SHA:·af6f110d433a7f40ffadafe3223ab09618e09ccfdebbeeb09494bc2a5a22bee8·...·]-31">}</span><span·class="p">,</span><span·class="w">251 ··········</span><span·class="p"·data-group-id="0926829154-31">{</span><span·class="p"·data-group-id="0926829154-32">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge2_1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="0926829154-32"[·...·truncated·by·diffoscope;·len:·101,·SHA:·e298afa97830858766fa8e27ffe46b508d395aa411fbf515c04cfc96b3296086·...·]-31">}</span><span·class="p">,</span><span·class="w">
252 ··········</span><span·class="p"·data-group-id="5482175751-33">{</span><span·class="p"·data-group-id="5482175751-34">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge2_2</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="5482175751-34"[·...·truncated·by·diffoscope;·len:·101,·SHA:·4b050ee2ecd3f5d4b5e206042474c1959bffb80e52a25c592a88700dc989d5d2·...·]-33">}</span><span·class="p">,</span><span·class="w">252 ··········</span><span·class="p"·data-group-id="0926829154-33">{</span><span·class="p"·data-group-id="0926829154-34">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">merge2_2</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="0926829154-34"[·...·truncated·by·diffoscope;·len:·101,·SHA:·0860fc2a19e395eccff7c60b1e17b32b5b8bca0ac131f639a30ef6aba7ef298c·...·]-33">}</span><span·class="p">,</span><span·class="w">
253 ··········</span><span·class="p"·data-group-id="5482175751-35">{</span><span·class="p"·data-group-id="5482175751-36">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">reverse</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5482175751-36">[·...·truncated·by·diffoscope;·len:·100,·SHA:·86d1ec44f8b5e25959c42165eb14e134cd9bb5c6b0b03d75f78fbb9c4a942891·...·]-35">}</span><span·class="p">,</span><span·class="w">253 ··········</span><span·class="p"·data-group-id="0926829154-35">{</span><span·class="p"·data-group-id="0926829154-36">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">reverse</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0926829154-36">[·...·truncated·by·diffoscope;·len:·100,·SHA:·d03f7c82c32f55f8274bddd6db490a7ad2608b43b0d7e1bc5e338c5a4ebc82ac·...·]-35">}</span><span·class="p">,</span><span·class="w">
254 ··········</span><span·class="p"·data-group-id="5482175751-37">{</span><span·class="p"·data-group-id="5482175751-38">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge2_2</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="5482175751-38[·...·truncated·by·diffoscope;·len:·101,·SHA:·35b6138ee185d2a4612a825432a53ce0db7332cefedb413213ee614e18bea08b·...·]-37">}</span><span·class="p">,</span><span·class="w">254 ··········</span><span·class="p"·data-group-id="0926829154-37">{</span><span·class="p"·data-group-id="0926829154-38">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge2_2</span><span·class="p">,</span><span·class="mi">5</span><span·class="p"·data-group-id="0926829154-38[·...·truncated·by·diffoscope;·len:·101,·SHA:·9a3df7b9077659ba54f7fa18f2114b0db5aef47c5bba72ae41a8fc3cc4ab92eb·...·]-37">}</span><span·class="p">,</span><span·class="w">
255 ··········</span><span·class="p"·data-group-id="5482175751-39">{</span><span·class="p"·data-group-id="5482175751-40">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmergel</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5482175751-40">[·...·truncated·by·diffoscope;·len:·99,·SHA:·26f886488a9a76227f2fada747409af23467e4b5a104408a3c7a10e02e319a6d·...·]-39">}</span><span·class="p">,</span><span·class="w">255 ··········</span><span·class="p"·data-group-id="0926829154-39">{</span><span·class="p"·data-group-id="0926829154-40">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmergel</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0926829154-40">[·...·truncated·by·diffoscope;·len:·99,·SHA:·bb61e42429cb8eaa357a640c45a66105b89b7f321e94142e46cad4ced4c73365·...·]-39">}</span><span·class="p">,</span><span·class="w">
256 ··········</span><span·class="p"·data-group-id="5482175751-41">{</span><span·class="p"·data-group-id="5482175751-42">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge2_1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="5482175751-42[·...·truncated·by·diffoscope;·len:·101,·SHA:·7c8bf19af9ac830833033633ba809144059f0e5c469e5274ee32631d2dd7d990·...·]-41">}</span><span·class="p">,</span><span·class="w">256 ··········</span><span·class="p"·data-group-id="0926829154-41">{</span><span·class="p"·data-group-id="0926829154-42">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">rmerge2_1</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="0926829154-42[·...·truncated·by·diffoscope;·len:·101,·SHA:·79ed3483fd5a17639feb9d78c058f656dc48469a5f63cccbd7edc791a78d90fa·...·]-41">}</span><span·class="p">,</span><span·class="w">
257 ··········</span><span·class="p"·data-group-id="5482175751-43">{</span><span·class="p"·data-group-id="5482175751-44">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">mergel</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5482175751-44">}[·...·truncated·by·diffoscope;·len:·98,·SHA:·060687c52686ed96b1de9422584f5b1e725a7d5228e7ef920067ae82a27c391f·...·]-43">}</span><span·class="p">,</span><span·class="w">257 ··········</span><span·class="p"·data-group-id="0926829154-43">{</span><span·class="p"·data-group-id="0926829154-44">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">mergel</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0926829154-44">}[·...·truncated·by·diffoscope;·len:·98,·SHA:·c5063d5dc9e84852f382f79c00e459a683be33528d686c07988ae50b21f40d79·...·]-43">}</span><span·class="p">,</span><span·class="w">
258 ··········</span><span·class="p"·data-group-id="5482175751-45">{</span><span·class="p"·data-group-id="5482175751-46">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">keyfind</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="5482175751-46">[·...·truncated·by·diffoscope;·len:·98,·SHA:·e31b08029808229f9930b999eca7a08741c4b50e879a3908db9bddd7ce38e36a·...·]-45">}</span><span·class="p">,</span><span·class="w">258 ··········</span><span·class="p"·data-group-id="0926829154-45">{</span><span·class="p"·data-group-id="0926829154-46">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">keyfind</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="0926829154-46">[·...·truncated·by·diffoscope;·len:·98,·SHA:·aa591b7ebd066ff645240da4c20d8eeeb54439f303b4f8340b26c16c369d7903·...·]-45">}</span><span·class="p">,</span><span·class="w">
259 ··········</span><span·class="p"·data-group-id="5482175751-47">{</span><span·class="p"·data-group-id="5482175751-48">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">sort</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="5482175751-48">}</[·...·truncated·by·diffoscope;·len:·203,·SHA:·7fd8a93b7d1128acbcc0d099dfba217a1feb5db781d15f857602689b3636cef3·...·]-9">}</span><span·class="p">,</span><span·class="w">259 ··········</span><span·class="p"·data-group-id="0926829154-47">{</span><span·class="p"·data-group-id="0926829154-48">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">sort</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0926829154-48">}</[·...·truncated·by·diffoscope;·len:·203,·SHA:·99fd445349fb7360896a32298658c4977c943cbc18cd7a48e5767cc5fbc533a3·...·]-9">}</span><span·class="p">,</span><span·class="w">
260 ··</span><span·class="p"·data-group-id="5482175751-49">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="mi">5000</span><span·class="p">,</span><span·class="w">260 ··</span><span·class="p"·data-group-id="0926829154-49">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="mi">5000</span><span·class="p">,</span><span·class="w">
261 ········</span><span·class="p"·data-group-id="5482175751-50">[</span><span·class="p"·data-group-id="5482175751-51">{</span><span·class="p"·data-group-id="5482175751-52">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">uniform_s</span><span·class="p">,</span><span·class="mi"[·...·truncated·by·diffoscope;·len:·156,·SHA:·2d2864a0f7f8597bd9ecbc8dc012f8bcfef852a73450e597192099ee4a6b1bb8·...·]-51">}</span><span·class="p">,</span><span·class="w">261 ········</span><span·class="p"·data-group-id="0926829154-50">[</span><span·class="p"·data-group-id="0926829154-51">{</span><span·class="p"·data-group-id="0926829154-52">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">uniform_s</span><span·class="p">,</span><span·class="mi"[·...·truncated·by·diffoscope;·len:·156,·SHA:·26b88cff188a533fa364fda0acd4cc25f5a8ae647f14e7ff802b554adda8e74e·...·]-51">}</span><span·class="p">,</span><span·class="w">
262 ·········</span><span·class="p"·data-group-id="5482175751-53">{</span><span·class="p"·data-group-id="5482175751-54">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">uniform</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="5482175751-54">}[·...·truncated·by·diffoscope;·len:·100,·SHA:·5689084ee2641bd10782a951c89f9167953abb5e26a895de3bb1b6385e4ea151·...·]-53">}</span><span·class="p">,</span><span·class="w">262 ·········</span><span·class="p"·data-group-id="0926829154-53">{</span><span·class="p"·data-group-id="0926829154-54">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">uniform</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0926829154-54">}[·...·truncated·by·diffoscope;·len:·100,·SHA:·3b6b81999dae0f85c4f16c5b0e5ca33cfe4e057e400521b596695916beba0c1b·...·]-53">}</span><span·class="p">,</span><span·class="w">
263 ·········</span><span·class="p"·data-group-id="5482175751-55">{</span><span·class="p"·data-group-id="5482175751-56">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">seed_put</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="5482175751-56">[·...·truncated·by·diffoscope;·len:·101,·SHA:·d4d06eacf1e8de173750dcdd22711352db8ffcac1e52fbb4bffe5ae57c4b646b·...·]-55">}</span><span·class="p">,</span><span·class="w">263 ·········</span><span·class="p"·data-group-id="0926829154-55">{</span><span·class="p"·data-group-id="0926829154-56">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">seed_put</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="0926829154-56">[·...·truncated·by·diffoscope;·len:·101,·SHA:·6d38a6d7bd5e2988be8cd2b21a72f7d963b64272070179979c24af09e33f47d9·...·]-55">}</span><span·class="p">,</span><span·class="w">
264 ·········</span><span·class="p"·data-group-id="5482175751-57">{</span><span·class="p"·data-group-id="5482175751-58">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">seed_get</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="5482175751-58">[·...·truncated·by·diffoscope;·len:·101,·SHA:·d4d06eacf1e8de173750dcdd22711352db8ffcac1e52fbb4bffe5ae57c4b646b·...·]-57">}</span><span·class="p">,</span><span·class="w">264 ·········</span><span·class="p"·data-group-id="0926829154-57">{</span><span·class="p"·data-group-id="0926829154-58">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">seed_get</span><span·class="p">,</span><span·class="mi">0</span><span·class="p"·data-group-id="0926829154-58">[·...·truncated·by·diffoscope;·len:·101,·SHA:·6d38a6d7bd5e2988be8cd2b21a72f7d963b64272070179979c24af09e33f47d9·...·]-57">}</span><span·class="p">,</span><span·class="w">
265 ·········</span><span·class="p"·data-group-id="5482175751-59">{</span><span·class="p"·data-group-id="5482175751-60">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">exsss_uniform</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5482175751[·...·truncated·by·diffoscope;·len:·214,·SHA:·d7a85718d04a3fb5624fc0a1f9c6752264f87675b543d49586337c6e84461be1·...·]-49">}</span><span·class="p">,</span><span·class="w">265 ·········</span><span·class="p"·data-group-id="0926829154-59">{</span><span·class="p"·data-group-id="0926829154-60">{</span><span·class="ss">rand</span><span·class="p">,</span><span·class="ss">exsss_uniform</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0926829154[·...·truncated·by·diffoscope;·len:·214,·SHA:·a4418547093c978eee907f45cd71be0634938a4900bf888f51237910eebb54dc·...·]-49">}</span><span·class="p">,</span><span·class="w">
266 ··</span><span·class="p"·data-group-id="5482175751-61">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="mi">1004</span><span·class="p">,</span><span·class="w">266 ··</span><span·class="p"·data-group-id="0926829154-61">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="mi">1004</span><span·class="p">,</span><span·class="w">
267 ··········</span><span·class="p"·data-group-id="5482175751-62">[</span><span·class="p"·data-group-id="5482175751-63">{</span><span·class="p"·data-group-id="5482175751-64">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">put</span><span·class="p">,</span><span·class="mi">2</[·...·truncated·by·diffoscope;·len:·152,·SHA:·2f18b4b88021d4b622e8a7ccfa32bd279676fca66e8fa8a33251c750b35be0eb·...·]-63">}</span><span·class="p">,</span><span·class="w">267 ··········</span><span·class="p"·data-group-id="0926829154-62">[</span><span·class="p"·data-group-id="0926829154-63">{</span><span·class="p"·data-group-id="0926829154-64">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">put</span><span·class="p">,</span><span·class="mi">2</[·...·truncated·by·diffoscope;·len:·152,·SHA:·d25affa675587dd46cc5fb4b221acdd5b08f4be30b07f217c9dbd86fdaffb4a0·...·]-63">}</span><span·class="p">,</span><span·class="w">
268 ···········</span><span·class="p"·data-group-id="5482175751-65">{</span><span·class="p"·data-group-id="5482175751-66">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">trace_pattern</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="54821757[·...·truncated·by·diffoscope;·len:·105,·SHA:·890db2afa45089d69e6b72de8dd9a4f2b1598a0d4c896634baa1b59539303003·...·]-65">}</span><span·class="p">,</span><span·class="w">268 ···········</span><span·class="p"·data-group-id="0926829154-65">{</span><span·class="p"·data-group-id="0926829154-66">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">trace_pattern</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="09268291[·...·truncated·by·diffoscope;·len:·105,·SHA:·902e5eb72f3430c63ea6139442d232924d3709adfc4e5d2e948b1923ae90cd57·...·]-65">}</span><span·class="p">,</span><span·class="w">
269 ···········</span><span·class="p"·data-group-id="5482175751-67">{</span><span·class="p"·data-group-id="5482175751-68">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="ss">ensure_tracer_module_loaded</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·227,·SHA:·dd135bd52ab1ec65682119a52409e9c8a217a3e596ccf5d694b23596eef19ccc·...·]-61">}</span><span·class="p">,</span><span·class="w">269 ···········</span><span·class="p"·data-group-id="0926829154-67">{</span><span·class="p"·data-group-id="0926829154-68">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="ss">ensure_tracer_module_loaded</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·227,·SHA:·bac58243f4c26db2c491311d55e30417b29513f027bf0c4520bc6614b05b57f4·...·]-61">}</span><span·class="p">,</span><span·class="w">
270 ··</span><span·class="p"·data-group-id="5482175751-69">{</span><span·class="ss">sort</span><span·class="p">,</span><span·class="mi">1001</span><span·class="p">,</span><span·class="p"·data-group-id="5482175751-70">[</span><span·class="p"·data-group-id="5482175751-71">{</span><span·class="p"·data-group-id="5482175751-72">{</span><span·class="ss">sort</span><span·class="p">,</span><span·class="ss">do</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5482175751-72">}</span><span·class="p">,</span><span·class="mi">1001</span><span·class="p"·data-group-id="5482175751-71">}</span><span·class="p"·data-group-id="5482175751-70">]</span><span·class="p"·data-group-id="5482175751-69">}</span><span·class="p">,</span><span·class="w"> 
271 ··</span><span·class="p"·data-group-id="5482175751-73">{</span><span·class="ss">erts_internal</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="p"·data-group-id="5482175751-74">[</span><span·class="p"·data-group-id="5482175751-75">{</span><span·class="p"[·...·truncated·by·diffoscope;·len:·585,·SHA:·06b391b8dd33884ae2fd4334801322dd628966bbc02ac50dae53e7ee704ecbba·...·]">270 ··</span><span·class="p"·data-group-id="0926829154-69">{</span><span·class="ss">sort</span><span·class="p">,</span><span·class="mi">1001</span><span·class="p">,</span><span·class="p"·data-group-id="0926829154-70">[</span><span·class="p"·data-group-id="0926829154-71">{</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·466,·SHA:·9167476277faacd780d5b179a90f9f20b7e29e6a04936e4c1d8e1b700316d8d8·...·]">
 271 ··</span><span·class="p"·data-group-id="0926829154-73">{</span><span·class="ss">erts_internal</span><span·class="p">,</span><span·class="mi">2</span><span·class="p">,</span><span·class="p"·data-group-id="0926829154-74">[</span><span·class="p"·data-group-id="0926829154-75">{</span><span·class="p"·data-group-id="0926829154-76">{</span><span·class="ss">erts_internal</span><span·class="p">,</span><span·class="nb">trace_pattern</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="0926829154-76">}</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0926829154-75">}</span><span·class="p"·data-group-id="0926829154-74">]</span><span·class="p"·data-group-id="0926829154-73">}</span><span·class="p"·data-group-id="0926829154-8">]</span><span·class="p"·data-group-id="0926829154-7">}</span><span·class="gp·unselectable">
272 5&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="5482175751-77">(</span><span·class="p"·data-group-id="5482175751-77">)</span><span·class="p">.</span><span·class="w">272 5&gt;·</span><span·class="nc">cprof</span><span·class="p">:</span><span·class="nf">stop</span><span·class="p"·data-group-id="0926829154-77">(</span><span·class="p"·data-group-id="0926829154-77">)</span><span·class="p">.</span><span·class="w">
273 </span><span·class="mi">12625</span></code></pre><p>The·example·shows·some·details·of·how·<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html#sort/1"><code·class="inline">lists:sort/1</code></a>·works.·It·used·6173273 </span><span·class="mi">12625</span></code></pre><p>The·example·shows·some·details·of·how·<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html#sort/1"><code·class="inline">lists:sort/1</code></a>·works.·It·used·6173
274 function·calls·in·module·<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html"><code·class="inline">lists</code></a>·to·complete·the·work.</p><p>This·time,·since·the·shell·was·not·involved·in·starting·and·stopping·<code·class="inline">cprof</code>,·no274 function·calls·in·module·<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html"><code·class="inline">lists</code></a>·to·complete·the·work.</p><p>This·time,·since·the·shell·was·not·involved·in·starting·and·stopping·<code·class="inline">cprof</code>,·no
Max diff block lines reached; 799/85617 bytes (0.93%) of diff not shown.
824 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/eprof.html
    
Offset 1007, 15 lines modifiedOffset 1007, 15 lines modified
1007 ······<p·class="built-using">1007 ······<p·class="built-using">
1008 ········Built·using1008 ········Built·using
1009 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1009 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1010 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1010 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1011 ······</p>1011 ······</p>
1012 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1012 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1013 ····</footer>1013 ····</footer>
1014 ··</div>1014 ··</div>
1015 </main>1015 </main>
1016 </div>1016 </div>
1017 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1017 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1018 <script>1018 <script>
1019 ··document.addEventListener("DOMContentLoaded",·function·()·{1019 ··document.addEventListener("DOMContentLoaded",·function·()·{
743 B
html2text {}
Max HTML report size reached
16.1 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/erlang-el.html
    
Offset 207, 31 lines modifiedOffset 207, 31 lines modified
207 ····<i·class="ri-link-m"·aria-hidden="true"></i>207 ····<i·class="ri-link-m"·aria-hidden="true"></i>
208 ··</a>208 ··</a>
209 ··<span·class="text">Edit·-·Alignment</span>209 ··<span·class="text">Edit·-·Alignment</span>
210 </h2>210 </h2>
211 <ul><li>··<em><code·class="inline">C-c·C-a</code></em>·(<code·class="inline">align-current</code>)·-·aligns·comments,·arrows,·assignments,211 <ul><li>··<em><code·class="inline">C-c·C-a</code></em>·(<code·class="inline">align-current</code>)·-·aligns·comments,·arrows,·assignments,
212 and·type·annotations·around·the·cursor.</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Example</span><span·class="p">:</span><span·class="w">212 and·type·annotations·around·the·cursor.</li></ul><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Example</span><span·class="p">:</span><span·class="w">
  
213 </span><span·class="nf">sum</span><span·class="p"·data-group-id="3572624874-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="3572624874-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">sum</span><span·class="p"·data-group-id="3572624874-2">(</span><[·...·truncated·by·diffoscope;·len:·137,·SHA:·c0dc7ca724180cb2c1c42c6c99416ab5c4126ebb54374334b00f8192b33faf53·...·]-2">)</span><span·class="p">.</span><span·class="w">213 </span><span·class="nf">sum</span><span·class="p"·data-group-id="9855512520-1">(</span><span·class="n">L</span><span·class="p"·data-group-id="9855512520-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">sum</span><span·class="p"·data-group-id="9855512520-2">(</span><[·...·truncated·by·diffoscope;·len:·137,·SHA:·ae416507f7aac1906fbbe09b739278628ed04ab2efee4c5eeb18a55d0ec466d0·...·]-2">)</span><span·class="p">.</span><span·class="w">
214 </span><span·class="nf">sum</span><span·class="p"·data-group-id="3572624874-3">(</span><span·class="p"·data-group-id="3572624874-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3572624874-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·462,·SHA:·c17f83aa1620f92baffd8e03d244f75fd59ce5d07e973b04f8858f226527fe4e·...·]-5">)</span><span·class="p">;</span><span·class="w">··</span><span·class="c1">%·recurse</span><span·class="w">214 </span><span·class="nf">sum</span><span·class="p"·data-group-id="9855512520-3">(</span><span·class="p"·data-group-id="9855512520-4">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="9855512520-4">]</span><span·class="p">,</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·462,·SHA:·8152028e1323a1ff457cbd045b9d6b07ffbf1dd8008ae6cd8d03a567ce79f96e·...·]-5">)</span><span·class="p">;</span><span·class="w">··</span><span·class="c1">%·recurse</span><span·class="w">
215 </span><span·class="nf">sum</span><span·class="p"·data-group-id="3572624874-6">(</span><span·class="p"·data-group-id="3572624874-7">[</span><span·class="p"·data-group-id="3572624874-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="3572624874-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p">.</span><span·class="w">···</span><span·class="c1">%·base·case</span><span·class="w">215 </span><span·class="nf">sum</span><span·class="p"·data-group-id="9855512520-6">(</span><span·class="p"·data-group-id="9855512520-7">[</span><span·class="p"·data-group-id="9855512520-7">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="9855512520-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p">.</span><span·class="w">···</span><span·class="c1">%·base·case</span><span·class="w">
216 </span><span·class="w">216 </span><span·class="w">
217 </span><span·class="p">-</span><span·class="na">record</span><span·class="w">·</span><span·class="p"·data-group-id="3572624874-8">{</span><span·class="w">·</span><span·class="ss">two</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="3572624874-9">(</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·98cddd78e2813ffbe05a5afc6ebdb19c06d2fdd4cf2b31190e2d36b1d322c814·...·]-9">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·hello</span><span·class="w">217 </span><span·class="p">-</span><span·class="na">record</span><span·class="w">·</span><span·class="p"·data-group-id="9855512520-8">{</span><span·class="w">·</span><span·class="ss">two</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="9855512520-9">(</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·001542627393c8d4f7a20bd667eb3f36a8fb12c14f5c8d867c82b850713b973f·...·]-9">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·hello</span><span·class="w">
218 ··········</span><span·class="ss">three</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">hello</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="3572624874-10">(</span><span·class="p"·data-group-id="3572624874-10">)</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%·there</span><span·class="w">218 ··········</span><span·class="ss">three</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">hello</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="9855512520-10">(</span><span·class="p"·data-group-id="9855512520-10">)</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%·there</span><span·class="w">
219 ··········</span><span·class="ss">four</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="3572624874-11">(</span><span·class="p"·data-group-id="3572624874-11">)</span><span·class="w">·</span><span·class="p"·data-group-id="3572624874-8">}</span><span·class="p">.</span><span·class="w">219 ··········</span><span·class="ss">four</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="9855512520-11">(</span><span·class="p"·data-group-id="9855512520-11">)</span><span·class="w">·</span><span·class="p"·data-group-id="9855512520-8">}</span><span·class="p">.</span><span·class="w">
  
220 </span><span·class="nc">becomes</span><span·class="p">:</span><span·class="w">220 </span><span·class="nc">becomes</span><span·class="p">:</span><span·class="w">
  
221 </span><span·class="nf">sum</span><span·class="p"·data-group-id="3572624874-12">(</span><span·class="n">L</span><span·class="p"·data-group-id="3572624874-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">sum</span><span·class="p"·data-group-id="3572624874-13">(</spa[·...·truncated·by·diffoscope;·len:·140,·SHA:·fb5790a9ed9c95b325ff7d7a8a1c6fd2ae2f2cb5d9fdfcf8f54a4feb988987e0·...·]-13">)</span><span·class="p">.</span><span·class="w">221 </span><span·class="nf">sum</span><span·class="p"·data-group-id="9855512520-12">(</span><span·class="n">L</span><span·class="p"·data-group-id="9855512520-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nf">sum</span><span·class="p"·data-group-id="9855512520-13">(</spa[·...·truncated·by·diffoscope;·len:·140,·SHA:·390b34fd298f6a2bbd07dd8d18aa351f43d54d5f203e9535d03f480368987869·...·]-13">)</span><span·class="p">.</span><span·class="w">
222 </span><span·class="nf">sum</span><span·class="p"·data-group-id="3572624874-14">(</span><span·class="p"·data-group-id="3572624874-15">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="3572624874-15">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·467,·SHA:·97bed44bedffb8a14a7cbbf37e082d84ac58d54ed04f039ae230f3125fbcfcc9·...·]-16">)</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·recurse</span><span·class="w">222 </span><span·class="nf">sum</span><span·class="p"·data-group-id="9855512520-14">(</span><span·class="p"·data-group-id="9855512520-15">[</span><span·class="n">H</span><span·class="p">|</span><span·class="n">T</span><span·class="p"·data-group-id="9855512520-15">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·467,·SHA:·84e0c014ad5b5884e3509c37d778e4ef6bcde6f02aaeb91771bffeea763e20e3·...·]-16">)</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·recurse</span><span·class="w">
223 </span><span·class="nf">sum</span><span·class="p"·data-group-id="3572624874-17">(</span><span·class="p"·data-group-id="3572624874-18">[</span><span·class="p"·data-group-id="3572624874-18">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="3572624874-17">)</span><span·class="w">····</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p">.</span><span·class="w">·············</span><span·class="c1">%·base·case</span><span·class="w">223 </span><span·class="nf">sum</span><span·class="p"·data-group-id="9855512520-17">(</span><span·class="p"·data-group-id="9855512520-18">[</span><span·class="p"·data-group-id="9855512520-18">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="9855512520-17">)</span><span·class="w">····</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p">.</span><span·class="w">·············</span><span·class="c1">%·base·case</span><span·class="w">
224 </span><span·class="w">224 </span><span·class="w">
225 </span><span·class="p">-</span><span·class="na">record</span><span·class="w">·</span><span·class="p"·data-group-id="3572624874-19">{</span><span·class="w">·</span><span·class="ss">two</span><span·class="w">···········</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="3572624874-20">(</[·...·truncated·by·diffoscope;·len:·46,·SHA:·782a6de1db187cf6ebe299b5591e7099796ea5a0831a18515b77098e2e4d7280·...·]-20">)</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%·hello</span><span·class="w">225 </span><span·class="p">-</span><span·class="na">record</span><span·class="w">·</span><span·class="p"·data-group-id="9855512520-19">{</span><span·class="w">·</span><span·class="ss">two</span><span·class="w">···········</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="9855512520-20">(</[·...·truncated·by·diffoscope;·len:·46,·SHA:·6487b414dd23c03013d6b41988292017f38ee9f75f4c1e0f3da2bfa473f448e0·...·]-20">)</span><span·class="p">,</span><span·class="w">····</span><span·class="c1">%·hello</span><span·class="w">
226 ··········</span><span·class="ss">three</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">hello</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="3572624874-21">(</span><span·class="p"·data-group-id="3572624874-21">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·there</span><span·class="w">226 ··········</span><span·class="ss">three</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">hello</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">string</span><span·class="p"·data-group-id="9855512520-21">(</span><span·class="p"·data-group-id="9855512520-21">)</span><span·class="p">,</span><span·class="w">·</span><span·class="c1">%·there</span><span·class="w">
227 ··········</span><span·class="ss">four</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="w">····</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="3572624874-22">(</span><span·class="p"·data-group-id="3572624874-22">)</span><span·class="w">·</span><span·class="p"·data-group-id="3572624874-19">}</span><span·class="p">.</span></code></pre><h2·id="syntax-highlighting"·class="section-heading">227 ··········</span><span·class="ss">four</span><span·class="w">··</span><span·class="o">=</span><span·class="w">·</span><span·class="mi">42</span><span·class="w">····</span><span·class="p">:</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">int</span><span·class="p"·data-group-id="9855512520-22">(</span><span·class="p"·data-group-id="9855512520-22">)</span><span·class="w">·</span><span·class="p"·data-group-id="9855512520-19">}</span><span·class="p">.</span></code></pre><h2·id="syntax-highlighting"·class="section-heading">
228 ··<a·href="#syntax-highlighting"·class="hover-link">228 ··<a·href="#syntax-highlighting"·class="hover-link">
229 ····<i·class="ri-link-m"·aria-hidden="true"></i>229 ····<i·class="ri-link-m"·aria-hidden="true"></i>
230 ··</a>230 ··</a>
231 ··<span·class="text">Syntax·highlighting</span>231 ··<span·class="text">Syntax·highlighting</span>
232 </h2>232 </h2>
233 <p>The·syntax·highlighting·can·be·activated·from·the·Erlang·menu.·There·are·four233 <p>The·syntax·highlighting·can·be·activated·from·the·Erlang·menu.·There·are·four
234 different·alternatives:</p><ul><li>··Off:·Normal·black·and·white·display.</li><li>··Level·1:·Function·headers,·reserved·words,·comments,·strings,·quoted·atoms,234 different·alternatives:</p><ul><li>··Off:·Normal·black·and·white·display.</li><li>··Level·1:·Function·headers,·reserved·words,·comments,·strings,·quoted·atoms,
Offset 351, 15 lines modifiedOffset 351, 15 lines modified
351 ······<p·class="built-using">351 ······<p·class="built-using">
352 ········Built·using352 ········Built·using
353 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the353 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
354 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>354 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
355 ······</p>355 ······</p>
356 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>356 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
357 ····</footer>357 ····</footer>
358 ··</div>358 ··</div>
359 </main>359 </main>
360 </div>360 </div>
361 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>361 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
362 <script>362 <script>
363 ··document.addEventListener("DOMContentLoaded",·function·()·{363 ··document.addEventListener("DOMContentLoaded",·function·()·{
778 B
html2text {}
Max HTML report size reached
1.63 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/erlang_mode_chapter.html
    
Offset 327, 15 lines modifiedOffset 327, 15 lines modified
327 ······<p·class="built-using">327 ······<p·class="built-using">
328 ········Built·using328 ········Built·using
329 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the329 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
330 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>330 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
331 ······</p>331 ······</p>
332 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>332 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
333 ····</footer>333 ····</footer>
334 ··</div>334 ··</div>
335 </main>335 </main>
336 </div>336 </div>
337 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>337 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
338 <script>338 <script>
339 ··document.addEventListener("DOMContentLoaded",·function·()·{339 ··document.addEventListener("DOMContentLoaded",·function·()·{
811 B
html2text {}
Max HTML report size reached
137 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/fprof.html
    
Offset 171, 69 lines modifiedOffset 171, 69 lines modified
171 </h2>171 </h2>
172 <p>This·section·describes·the·output·format·of·the·<a·href="#analyse/1"><code·class="inline">analyse/1</code></a>·function.</p><p>The·format·is·parsable·with·the·standard·Erlang·parsing·tools172 <p>This·section·describes·the·output·format·of·the·<a·href="#analyse/1"><code·class="inline">analyse/1</code></a>·function.</p><p>The·format·is·parsable·with·the·standard·Erlang·parsing·tools
173 <a·href="../../../../lib/stdlib-6.0.1/doc/html/erl_scan.html"><code·class="inline">erl_scan</code></a>·and·<a·href="../../../../lib/stdlib-6.0.1/doc/html/erl_parse.html"><code·class="inline">erl_parse</code></a>,·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#consult/1"><code·class="inline">file:consult/1</code></a>,·or·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#read/2"><code·class="inline">io:read/2</code></a>.·The173 <a·href="../../../../lib/stdlib-6.0.1/doc/html/erl_scan.html"><code·class="inline">erl_scan</code></a>·and·<a·href="../../../../lib/stdlib-6.0.1/doc/html/erl_parse.html"><code·class="inline">erl_parse</code></a>,·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#consult/1"><code·class="inline">file:consult/1</code></a>,·or·<a·href="../../../../lib/stdlib-6.0.1/doc/html/io.html#read/2"><code·class="inline">io:read/2</code></a>.·The
174 parse·format·is·not·described·here··it·should·be·easy·enough·for·the174 parse·format·is·not·described·here··it·should·be·easy·enough·for·the
175 interested·reader·to·try·it·out.·Note·that·some·flags·to175 interested·reader·to·try·it·out.·Note·that·some·flags·to
176 <a·href="#analyse/1"><code·class="inline">analyse/1</code></a>·will·affect·the·format.</p><p>The·following·example·was·run·on·Erlang/OTP·R8·on·Solaris·8;·all·OTP176 <a·href="#analyse/1"><code·class="inline">analyse/1</code></a>·will·affect·the·format.</p><p>The·following·example·was·run·on·Erlang/OTP·R8·on·Solaris·8;·all·OTP
177 internals·in·this·example·are·version·dependent.</p><p>As·an·example,·we·will·use·the·following·function,·which·is·a177 internals·in·this·example·are·version·dependent.</p><p>As·an·example,·we·will·use·the·following·function,·which·is·a
178 slightly·modified·benchmark·function·from·module·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html"><code·class="inline">file</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7300324383-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="7300324383-1">)</span><span·class="p">.</span><span·class="w">178 slightly·modified·benchmark·function·from·module·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html"><code·class="inline">file</code></a>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8384420347-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="8384420347-1">)</span><span·class="p">.</span><span·class="w">
179 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7300324383-2">(</span><span·class="p"·data-group-id="7300324383-3">[</span><span·class="ss">create_file_slow</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="7300324383-3">]</span><span·class="p"·data-group-id="73003243[·...·truncated·by·diffoscope;·len:·2,·SHA:·bbb965ab0c80d6538cf2184babad2a564a010376712012bd07b0af92dcd3097d·...·]-2">)</span><span·class="p">.</span><span·class="w">179 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8384420347-2">(</span><span·class="p"·data-group-id="8384420347-3">[</span><span·class="ss">create_file_slow</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="8384420347-3">]</span><span·class="p"·data-group-id="83844203[·...·truncated·by·diffoscope;·len:·2,·SHA:·31489056e0916d59fe3add79e63f095af3ffb81604691f21cad442a85c7be617·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
180 </span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="7300324383-4">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="7300324383-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·145,·SHA:·03aa09212a5aff102d3133c6e615ab8fdfbed625b4a2153ea421fbb7fc62c14e·...·]-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">180 </span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="8384420347-4">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="8384420347-4">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·145,·SHA:·6ab9afbfde6071684e65dd6c009e6b8162b0c5dd8f5286909fbdde3ef56fe271·...·]-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;=</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
181 ····</span><span·class="p"·data-group-id="7300324383-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FD</span><span·class="p"·data-group-id="7300324383-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">181 ····</span><span·class="p"·data-group-id="8384420347-6">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FD</span><span·class="p"·data-group-id="8384420347-6">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">
182 ········</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="7300324383-7">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="7300324383-8">[</span><span·class="ss">raw</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">write</span><s[·...·truncated·by·diffoscope;·len:·255,·SHA:·37aacde4b9ca409f9f7ca50a8ae9db87a76a0d4cfe4158598c1bdf61901d16f8·...·]-7">)</span><span·class="p">,</span><span·class="w">182 ········</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">open</span><span·class="p"·data-group-id="8384420347-7">(</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8384420347-8">[</span><span·class="ss">raw</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">write</span><s[·...·truncated·by·diffoscope;·len:·255,·SHA:·0a8e3518343a6e4d0556f34571034e28f253a45cfb4d625b024524c1f2461679·...·]-7">)</span><span·class="p">,</span><span·class="w">
183 ····</span><span·class="k">if</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">256</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">183 ····</span><span·class="k">if</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">&gt;</span><span·class="w">·</span><span·class="mi">256</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
184 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="7300324383-9">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">184 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8384420347-9">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">
185 ····························</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="7300324383-10">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="7300324383-11">(</span><span·class="n">X</span><span·class="p"·data-group-id="7300324383-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="p">:</span><span·class="mi">32</span><span·class="o">/</span><span·class="ss">unsigned</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">185 ····························</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="8384420347-10">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8384420347-11">(</span><span·class="n">X</span><span·class="p"·data-group-id="8384420347-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">X</span><span·class="p">:</span><span·class="mi">32</span><span·class="o">/</span><span·class="ss">unsigned</span><span·class="p">&gt;&gt;</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
186 ····························</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="7300324383-12">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">255</span><span·class="p"·data-group-id="7300324383-12">)</span><span·class="p"·data-group-id="7300324383-10">)</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·1f4b61fcaa57f31a6fc394c0aa60cd3b5b17bb457c291107c19f3a1159a5a3a9·...·]-9">)</span><span·class="p">,</span><span·class="w">186 ····························</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">seq</span><span·class="p"·data-group-id="8384420347-12">(</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">255</span><span·class="p"·data-group-id="8384420347-12">)</span><span·class="p"·data-group-id="8384420347-10">)</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·16,·SHA:·48976c42545e4359256d1ceb32ecdaab318a1cd99bbc93a2edf878e5288e0110·...·]-9">)</span><span·class="p">,</span><span·class="w">
187 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="7300324383-13">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">256</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="7300324383-13">)</span><span·class="p">;</span><span·class="w">187 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="8384420347-13">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">256</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="8384420347-13">)</span><span·class="p">;</span><span·class="w">
188 ·······</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">188 ·······</span><span·class="ss">true</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
189 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="7300324383-14">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="7300324383-14">)</span><span·class="w">189 ············</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="8384420347-14">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="8384420347-14">)</span><span·class="w">
190 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">190 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
191 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="7300324383-15">(</span><span·class="n">FD</span><span·class="p"·data-group-id="7300324383-15">)</span><span·class="p">.</span><span·class="w">191 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">close</span><span·class="p"·data-group-id="8384420347-15">(</span><span·class="n">FD</span><span·class="p"·data-group-id="8384420347-15">)</span><span·class="p">.</span><span·class="w">
  
192 </span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="7300324383-16">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p"·data-group-id="7300324383-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">192 </span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="8384420347-16">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p"·data-group-id="8384420347-16">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
193 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">193 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
194 </span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="7300324383-17">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="7300324383-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">194 </span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="8384420347-17">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="8384420347-17">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
195 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="7300324383-18">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">M</span><span·class="p">:</span><span·class="mi">32</span><span·class="o">/</span><span·class="ss">unsigned</span[·...·truncated·by·diffoscope;·len:·73,·SHA:·1b2b143c9d55c9f9cd172212a826f6d1be374ef9d365376a5737aa04d233c5fe·...·]-18">)</span><span·class="p">,</span><span·class="w">195 ····</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">file</span><span·class="p">:</span><span·class="nf">write</span><span·class="p"·data-group-id="8384420347-18">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="p">&lt;&lt;</span><span·class="n">M</span><span·class="p">:</span><span·class="mi">32</span><span·class="o">/</span><span·class="ss">unsigned</span[·...·truncated·by·diffoscope;·len:·73,·SHA:·6d880572baf800d3c4d44742d59dfa85bea5bf4ce02df285bb42e617a87ff2fc·...·]-18">)</span><span·class="p">,</span><span·class="w">
196 ····</span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="7300324383-19">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"[·...·truncated·by·diffoscope;·len:·772,·SHA:·da778a78d2133743c5f95ee36d1a5cc0a66a212a3020ff1d5c9a557f63ffee12·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">196 ····</span><span·class="nf">create_file_slow</span><span·class="p"·data-group-id="8384420347-19">(</span><span·class="n">FD</span><span·class="p">,</span><span·class="w">·</span><span·class="n">M</span><span·class="o">+</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"[·...·truncated·by·diffoscope;·len:·772,·SHA:·db14eedf03cd71423c4e666f1d6758f4c0a6801c117bd52429154cd8422c3a71·...·]-1">)</span><span·class="p">.</span><span·class="gp·unselectable">
197 2&gt;·</span><span·class="nc">fprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="9215542487-3">(</span><span·class="p"·data-group-id="9215542487-3">)</span><span·class="p">.</span><span·class="gp·unselectable">197 2&gt;·</span><span·class="nc">fprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="9372909772-3">(</span><span·class="p"·data-group-id="9372909772-3">)</span><span·class="p">.</span><span·class="gp·unselectable">
198 3&gt;·</span><span·class="nc">fprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="9215542487-4">(</span><span·class="p"·data-group-id="9215542487-4">)</span><span·class="p">.</span></code></pre><p>The·printout·starts·with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Analysis·results:</span><span·class="w">198 3&gt;·</span><span·class="nc">fprof</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="9372909772-4">(</span><span·class="p"·data-group-id="9372909772-4">)</span><span·class="p">.</span></code></pre><p>The·printout·starts·with:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·Analysis·results:</span><span·class="w">
199 </span><span·class="p"·data-group-id="5784274859-1">{</span><span·class="w">··</span><span·class="ss">analysis_options</span><span·class="p">,</span><span·class="w">199 </span><span·class="p"·data-group-id="3095197454-1">{</span><span·class="w">··</span><span·class="ss">analysis_options</span><span·class="p">,</span><span·class="w">
200 ·</span><span·class="p"·data-group-id="5784274859-2">[</span><span·class="p"·data-group-id="5784274859-3">{</span><span·class="ss">callers</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="5784274859-3">}</span><span·class="p">,</span><span·class="w">200 ·</span><span·class="p"·data-group-id="3095197454-2">[</span><span·class="p"·data-group-id="3095197454-3">{</span><span·class="ss">callers</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="3095197454-3">}</span><span·class="p">,</span><span·class="w">
201 ··</span><span·class="p"·data-group-id="5784274859-4">{</span><span·class="ss">sort</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">acc</span><span·class="p"·data-group-id="5784274859-4">}</span><span·class="p">,</span><span·class="w">201 ··</span><span·class="p"·data-group-id="3095197454-4">{</span><span·class="ss">sort</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">acc</span><span·class="p"·data-group-id="3095197454-4">}</span><span·class="p">,</span><span·class="w">
202 ··</span><span·class="p"·data-group-id="5784274859-5">{</span><span·class="ss">totals</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="5784274859-5">}</span><span·class="p">,</span><span·class="w">202 ··</span><span·class="p"·data-group-id="3095197454-5">{</span><span·class="ss">totals</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·class="p"·data-group-id="3095197454-5">}</span><span·class="p">,</span><span·class="w">
203 ··</span><span·class="p"·data-group-id="5784274859-6">{</span><span·class="ss">details</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="5784274859-6">}</span><span·class="p"·data-group-id="5784274859-2">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·20b2ffebfe227a964c0be2c0cf8063e7a8c3af3bdaea5e1f6d77122ee4e76019·...·]-1">}</span><span·class="p">.</span><span·class="w">203 ··</span><span·class="p"·data-group-id="3095197454-6">{</span><span·class="ss">details</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">true</span><span·class="p"·data-group-id="3095197454-6">}</span><span·class="p"·data-group-id="3095197454-2">]</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·a91acd9a1e806c0c69381e79944220d306e61ebdeeda38eda5e2aacd49570001·...·]-1">}</span><span·class="p">.</span><span·class="w">
  
204 </span><span·class="c1">%·······································CNT·······ACC·······OWN</span><span·class="w">204 </span><span·class="c1">%·······································CNT·······ACC·······OWN</span><span·class="w">
205 </span><span·class="p"·data-group-id="5784274859-7">[</span><span·class="p"·data-group-id="5784274859-8">{</span><span·class="w">·</span><span·class="ss">totals</span><span·class="p">,</span><span·class="w">·····························</span><span·class="mi">9627</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·231,·SHA:·71d493288f72ca94aceb4175ba9d09bd412eef9a6929a7a3987af9b741d742d3·...·]-7">]</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%%%</span></code></pre><p>The·<code·class="inline">CNT</code>·column·shows·the·total·number·of·function·calls·that·was·found·in·the205 </span><span·class="p"·data-group-id="3095197454-7">[</span><span·class="p"·data-group-id="3095197454-8">{</span><span·class="w">·</span><span·class="ss">totals</span><span·class="p">,</span><span·class="w">·····························</span><span·class="mi">9627</span><span·class="p">,</span[·...·truncated·by·diffoscope;·len:·231,·SHA:·bc8885e94cb206165b8ab91faeb39e73d47280472c965d4b20175bd2da32e9e5·...·]-7">]</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%%%</span></code></pre><p>The·<code·class="inline">CNT</code>·column·shows·the·total·number·of·function·calls·that·was·found·in·the
206 trace.·In·the·<code·class="inline">ACC</code>·column·is·the·total·time·of·the·trace·from·first·timestamp·to206 trace.·In·the·<code·class="inline">ACC</code>·column·is·the·total·time·of·the·trace·from·first·timestamp·to
207 last.·And·in·the·<code·class="inline">OWN</code>·column·is·the·sum·of·the·execution·time·in·functions·found207 last.·And·in·the·<code·class="inline">OWN</code>·column·is·the·sum·of·the·execution·time·in·functions·found
208 in·the·trace,·not·including·called·functions.·In·this·case·it·is·very·close·to208 in·the·trace,·not·including·called·functions.·In·this·case·it·is·very·close·to
209 the·<code·class="inline">ACC</code>·time·since·the·emulator·had·practically·nothing·to·do·except209 the·<code·class="inline">ACC</code>·time·since·the·emulator·had·practically·nothing·to·do·except
210 executing·our·test·program.</p><p>All·time·values·in·the·printout·are·in·milliseconds.</p><p>The·printout·continues:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·······································CNT·······ACC·······OWN</span><span·class="w">210 executing·our·test·program.</p><p>All·time·values·in·the·printout·are·in·milliseconds.</p><p>The·printout·continues:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%·······································CNT·······ACC·······OWN</span><span·class="w">
211 </span><span·class="p"·data-group-id="6107671155-1">[</span><span·class="p"·data-group-id="6107671155-2">{</span><span·class="w">·</span><span·class="s">&quot;&lt;0.28.0&gt;&quot;</span><span·class="p">,</span><span·class="w">·························</span><span·class="mi">9627</span><span·cl[·...·truncated·by·diffoscope;·len:·222,·SHA:·939d7749369ac1cb88d01cf6ae2a1092522392651764303ca351f4391a5327e1·...·]5-1">]</span><span·class="p">.</span><span·class="w">···</span><span·class="c1">%%</span></code></pre><p>This·is·the·printout·header·of·one·process.·The·printout·contains·only·this·one211 </span><span·class="p"·data-group-id="3564422345-1">[</span><span·class="p"·data-group-id="3564422345-2">{</span><span·class="w">·</span><span·class="s">&quot;&lt;0.28.0&gt;&quot;</span><span·class="p">,</span><span·class="w">·························</span><span·class="mi">9627</span><span·cl[·...·truncated·by·diffoscope;·len:·222,·SHA:·e3a32b20acd172174629eb672fe2c19296b4524b43110449c4dffa6aa454168a·...·]5-1">]</span><span·class="p">.</span><span·class="w">···</span><span·class="c1">%%</span></code></pre><p>This·is·the·printout·header·of·one·process.·The·printout·contains·only·this·one
212 process·since·we·called·<a·href="#apply/3"><code·class="inline">fprof:apply/3</code></a>·that·traces·only·the·current·process.212 process·since·we·called·<a·href="#apply/3"><code·class="inline">fprof:apply/3</code></a>·that·traces·only·the·current·process.
213 Therefore·the·<code·class="inline">CNT</code>·and·<code·class="inline">OWN</code>·columns·perfectly·matches·the·totals·above.·The·<code·class="inline">ACC</code>213 Therefore·the·<code·class="inline">CNT</code>·and·<code·class="inline">OWN</code>·columns·perfectly·matches·the·totals·above.·The·<code·class="inline">ACC</code>
214 column·is·undefined·since·summing·the·<code·class="inline">ACC</code>·times·of·all·calls·in·the·process214 column·is·undefined·since·summing·the·<code·class="inline">ACC</code>·times·of·all·calls·in·the·process
215 makes·no·sense··one·would·get·something·like·the·<code·class="inline">ACC</code>·value·from·totals·above215 makes·no·sense··one·would·get·something·like·the·<code·class="inline">ACC</code>·value·from·totals·above
216 multiplied·by·the·average·depth·of·the·call·stack.</p><p>All·paragraphs·up·to·the·next·process·header·only·concerns·function·calls·within216 multiplied·by·the·average·depth·of·the·call·stack.</p><p>All·paragraphs·up·to·the·next·process·header·only·concerns·function·calls·within
217 this·process.</p><p>Now·we·come·to·something·more·interesting:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8057949253-1">{</span><span·class="p"·data-group-id="8057949253-2">[</span><span·class="p"·data-group-id="8057949253-3">{</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="w">·····························</span><span·class="mi">0<[·...·truncated·by·diffoscope;·len:·260,·SHA:·5d0b6bedeb4e88b7f0ea7f58410f7d6b643983b00bf5275373a66c0ac8db86ef·...·]-2">]</span><span·class="p">,</span><span·class="w">217 this·process.</p><p>Now·we·come·to·something·more·interesting:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4390166211-1">{</span><span·class="p"·data-group-id="4390166211-2">[</span><span·class="p"·data-group-id="4390166211-3">{</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="w">·····························</span><span·class="mi">0<[·...·truncated·by·diffoscope;·len:·260,·SHA:·0741c1ca659d2504ec01171a60366818010133da61007694ed0c88485e8d4856·...·]-2">]</span><span·class="p">,</span><span·class="w">
218 ·</span><span·class="p"·data-group-id="8057949253-4">{</span><span·class="w">·</span><span·class="p"·data-group-id="8057949253-5">{</span><span·class="ss">fprof</span><span·class="p">,</span><span·class="ss">apply_start_stop</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"[·...·truncated·by·diffoscope;·len:·323,·SHA:·132172c3fbab0b036bf9c5ce805b7b2c68415d70244100b4ae9ca2d5203f3389·...·]-4">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">218 ·</span><span·class="p"·data-group-id="4390166211-4">{</span><span·class="w">·</span><span·class="p"·data-group-id="4390166211-5">{</span><span·class="ss">fprof</span><span·class="p">,</span><span·class="ss">apply_start_stop</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"[·...·truncated·by·diffoscope;·len:·323,·SHA:·0ef7ca0edc284d809d1478875c77a0fdcb84ad06e104192c4fbee8a2a9d37e65·...·]-4">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">
219 ·</span><span·class="p"·data-group-id="8057949253-6">[</span><span·class="p"·data-group-id="8057949253-7">{</span><span·class="p"·data-group-id="8057949253-8">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·352,·SHA:·0b7102ef43abcebcbc416451a30d23c800fea573b5c163558b3e6b671741dae5·...·]-7">}</span><span·class="p">,</span><span·class="w">219 ·</span><span·class="p"·data-group-id="4390166211-6">[</span><span·class="p"·data-group-id="4390166211-7">{</span><span·class="p"·data-group-id="4390166211-8">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="[·...·truncated·by·diffoscope;·len:·352,·SHA:·e19cd0e482064386932df43e76be7a1c4745a25809b0c075d17ea9d7e5deda62·...·]-7">}</span><span·class="p">,</span><span·class="w">
220 ··</span><span·class="p"·data-group-id="8057949253-9">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">·······························</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">····</span><span·class="mf">0.000</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·207,·SHA:·c59a79eee06323bef7e63ca69697f61c4f6e4eb19734fc3c16e8cfbdd7290687·...·]-1">}</span><span·class="p">.</span><span·class="w">220 ··</span><span·class="p"·data-group-id="4390166211-9">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">·······························</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">····</span><span·class="mf">0.000</span><span·class="p">,</s[·...·truncated·by·diffoscope;·len:·207,·SHA:·32faf19e49dcc7f66d24e8b3a8d0d12ad30cee0b5d29c9eae53456659e1cfe85·...·]-1">}</span><span·class="p">.</span><span·class="w">
  
221 </span><span·class="p"·data-group-id="8057949253-10">{</span><span·class="p"·data-group-id="8057949253-11">[</span><span·class="p"·data-group-id="8057949253-12">{</span><span·class="p"·data-group-id="8057949253-13">{</span><span·class="ss">fprof</span><span·class="p">,</span><span·class="ss">a[·...·truncated·by·diffoscope;·len:·464,·SHA:·1fa83dedeeaa4dc2d8db4987eeb2b02d946966b65c5330331a9b37be27e3fa5b·...·]-11">]</span><span·class="p">,</span><span·class="w">221 </span><span·class="p"·data-group-id="4390166211-10">{</span><span·class="p"·data-group-id="4390166211-11">[</span><span·class="p"·data-group-id="4390166211-12">{</span><span·class="p"·data-group-id="4390166211-13">{</span><span·class="ss">fprof</span><span·class="p">,</span><span·class="ss">a[·...·truncated·by·diffoscope;·len:·464,·SHA:·0d2b643a82edd68b4bec3269656ca35d86587215280e35525689c5d62f226dac·...·]-11">]</span><span·class="p">,</span><span·class="w">
222 ·</span><span·class="p"·data-group-id="8057949253-14">{</span><span·class="w">·</span><span·class="p"·data-group-id="8057949253-15">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"[·...·truncated·by·diffoscope;·len:·326,·SHA:·2a46167f9499c76986e972ee1953a8f200af2efcf168a97c5f19d066e2440e28·...·]-14">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">222 ·</span><span·class="p"·data-group-id="4390166211-14">{</span><span·class="w">·</span><span·class="p"·data-group-id="4390166211-15">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"[·...·truncated·by·diffoscope;·len:·326,·SHA:·600b637742ccecaf40fb6b7d03d6a1a875be186b8759de2dbd348c1816454148·...·]-14">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">
223 ·</span><span·class="p"·data-group-id="8057949253-16">[</span><span·class="p"·data-group-id="8057949253-17">{</span><span·class="p"·data-group-id="8057949253-18">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">close</span><span·class="p">,</span><span·class="mi">1</[·...·truncated·by·diffoscope;·len:·356,·SHA:·caa016c24649efdba99c3c0c206b18cfb7e3d9154375e8234e5feb4882f0c7ce·...·]-17">}</span><span·class="p">,</span><span·class="w">223 ·</span><span·class="p"·data-group-id="4390166211-16">[</span><span·class="p"·data-group-id="4390166211-17">{</span><span·class="p"·data-group-id="4390166211-18">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">close</span><span·class="p">,</span><span·class="mi">1</[·...·truncated·by·diffoscope;·len:·356,·SHA:·71e03b96cb754902a04e6c1fa7e51aa542a2809e2993beb4d433d126c142d21b·...·]-17">}</span><span·class="p">,</span><span·class="w">
224 ··</span><span·class="p"·data-group-id="8057949253-19">{</span><span·class="p"·data-group-id="8057949253-20">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="80579492[·...·truncated·by·diffoscope;·len:·302,·SHA:·ae0384d2af10306a3665ee40eb99ddb63be62734ecd0c4634391f0be6314d9ea·...·]-19">}</span><span·class="p">,</span><span·class="w">224 ··</span><span·class="p"·data-group-id="4390166211-19">{</span><span·class="p"·data-group-id="4390166211-20">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="43901662[·...·truncated·by·diffoscope;·len:·302,·SHA:·3e27df3954775fafd732d16ed801f89a0749e0566d640cb4f53a6ac106a23e83·...·]-19">}</span><span·class="p">,</span><span·class="w">
225 ··</span><span·class="p"·data-group-id="8057949253-21">{</span><span·class="p"·data-group-id="8057949253-22">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">open</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="8057949253-22">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·17f88455ecfb3cc37693bae2aff4d7f396fd7f24a8c3800b77bac80199a044cc·...·]-21">}</span><span·class="p">,</span><span·class="w">225 ··</span><span·class="p"·data-group-id="4390166211-21">{</span><span·class="p"·data-group-id="4390166211-22">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">open</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4390166211-22">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·c72537f5d00beda10da35be421c02a1d3575c179f2f627a658b9e9a2fc225118·...·]-21">}</span><span·class="p">,</span><span·class="w">
226 ··</span><span·class="p"·data-group-id="8057949253-23">{</span><span·class="p"·data-group-id="8057949253-24">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">map</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="8057949253-24">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·820ba543bf5003aacdd1bede51b9b68ee396426bbceb2518c1a39c6b533910ca·...·]-23">}</span><span·class="p">,</span><span·class="w">226 ··</span><span·class="p"·data-group-id="4390166211-23">{</span><span·class="p"·data-group-id="4390166211-24">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">map</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4390166211-24">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·7ac8982f5741d0374eb5abe176e344aeb5441903f846649967753aff36e51712·...·]-23">}</span><span·class="p">,</span><span·class="w">
227 ··</span><span·class="p"·data-group-id="8057949253-25">{</span><span·class="p"·data-group-id="8057949253-26">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">seq</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="8057949253-26">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·a08a9c4cfef0287daeb7099a5fc1c00e7cb88931335106665ce4eb3a3de5714c·...·]-25">}</span><span·class="p">,</span><span·class="w">227 ··</span><span·class="p"·data-group-id="4390166211-25">{</span><span·class="p"·data-group-id="4390166211-26">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">seq</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4390166211-26">}</s[·...·truncated·by·diffoscope;·len:·302,·SHA:·ae54a65fa67961ac5414e6a5a9ead725da29438acfc75b5127c5dacef4fa960d·...·]-25">}</span><span·class="p">,</span><span·class="w">
228 ··</span><span·class="p"·data-group-id="8057949253-27">{</span><span·class="p"·data-group-id="8057949253-28">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="8057949253-28">}</[·...·truncated·by·diffoscope;·len:·410,·SHA:·08a58204e47c58c34a4fb90d749f2f249a8c355ed525d5413f087c72143a6dc7·...·]-10">}</span><span·class="p">.</span></code></pre><p>The·printout·consists·of·one·paragraph·per·called·function.·The·function228 ··</span><span·class="p"·data-group-id="4390166211-27">{</span><span·class="p"·data-group-id="4390166211-28">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="4390166211-28">}</[·...·truncated·by·diffoscope;·len:·410,·SHA:·11ae53cab383420fe6492667d848605b7861b445bb0ba38cc6d3e6bae37a87cd·...·]-10">}</span><span·class="p">.</span></code></pre><p>The·printout·consists·of·one·paragraph·per·called·function.·The·function
229 <em>marked</em>·with·<code·class="inline">%</code>·is·the·one·the·paragraph·concerns··<code·class="inline">foo:create_file_slow/2</code>.229 <em>marked</em>·with·<code·class="inline">%</code>·is·the·one·the·paragraph·concerns··<code·class="inline">foo:create_file_slow/2</code>.
230 Above·the·marked·function·are·the·<em>calling</em>·functions··those·that·has·called230 Above·the·marked·function·are·the·<em>calling</em>·functions··those·that·has·called
231 the·marked,·and·below·are·those·<em>called</em>·by·the·marked·function.</p><p>The·paragraphs·are·per·default·sorted·in·descending·order·of·the·<code·class="inline">ACC</code>·column·for231 the·marked,·and·below·are·those·<em>called</em>·by·the·marked·function.</p><p>The·paragraphs·are·per·default·sorted·in·descending·order·of·the·<code·class="inline">ACC</code>·column·for
232 the·marked·function.·The·calling·list·and·called·list·within·one·paragraph·are232 the·marked·function.·The·calling·list·and·called·list·within·one·paragraph·are
233 also·per·default·sorted·in·descending·order·of·their·<code·class="inline">ACC</code>·column.</p><p>The·columns·are:</p><ul><li><code·class="inline">CNT</code>·-·the·number·of·times·the·function·has·been·called</li><li><code·class="inline">ACC</code>·-·the·time·spent·in·the·function·including·called·functions</li><li><code·class="inline">OWN</code>·-·the·time·spent·in·the·function·not·including·called·functions</li></ul><p>The·rows·for·the·<em>calling</em>·functions·contain·statistics·for·the·<em>marked</em>233 also·per·default·sorted·in·descending·order·of·their·<code·class="inline">ACC</code>·column.</p><p>The·columns·are:</p><ul><li><code·class="inline">CNT</code>·-·the·number·of·times·the·function·has·been·called</li><li><code·class="inline">ACC</code>·-·the·time·spent·in·the·function·including·called·functions</li><li><code·class="inline">OWN</code>·-·the·time·spent·in·the·function·not·including·called·functions</li></ul><p>The·rows·for·the·<em>calling</em>·functions·contain·statistics·for·the·<em>marked</em>
234 function·with·the·constraint·that·only·the·occasions·when·a·call·was·made·from234 function·with·the·constraint·that·only·the·occasions·when·a·call·was·made·from
235 the·<em>row's</em>·function·to·the·<em>marked</em>·function·are·accounted·for.</p><p>The·row·for·the·<em>marked</em>·function·simply·contains·the·sum·of·all·<em>calling</em>·rows.</p><p>The·rows·for·the·<em>called</em>·functions·contains·statistics·for·the·<em>row's</em>·function235 the·<em>row's</em>·function·to·the·<em>marked</em>·function·are·accounted·for.</p><p>The·row·for·the·<em>marked</em>·function·simply·contains·the·sum·of·all·<em>calling</em>·rows.</p><p>The·rows·for·the·<em>called</em>·functions·contains·statistics·for·the·<em>row's</em>·function
Offset 242, 109 lines modifiedOffset 242, 109 lines modified
242 execution.·It·spent·most·of·its·time·in·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#close/1"><code·class="inline">file:close/1</code></a>.·The·function242 execution.·It·spent·most·of·its·time·in·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#close/1"><code·class="inline">file:close/1</code></a>.·The·function
243 <code·class="inline">foo:create_file_slow/3</code>·that·writes·3/4·of·the·file·contents·is·the·second243 <code·class="inline">foo:create_file_slow/3</code>·that·writes·3/4·of·the·file·contents·is·the·second
244 biggest·time·thief.</p><p>We·also·see·that·the·call·to·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#write/2"><code·class="inline">file:write/2</code></a>·that·writes·1/4·of·the·file·contents244 biggest·time·thief.</p><p>We·also·see·that·the·call·to·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#write/2"><code·class="inline">file:write/2</code></a>·that·writes·1/4·of·the·file·contents
245 takes·very·little·time·in·itself.·What·takes·time·is·to·build·the·data245 takes·very·little·time·in·itself.·What·takes·time·is·to·build·the·data
246 (<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html#seq/2"><code·class="inline">lists:seq/2</code></a>·and·<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html#map/2"><code·class="inline">lists:map/2</code></a>).</p><p>The·function·<code·class="inline">undefined</code>·that·has·called·<code·class="inline">fprof:apply_start_stop/4</code>·is·an246 (<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html#seq/2"><code·class="inline">lists:seq/2</code></a>·and·<a·href="../../../../lib/stdlib-6.0.1/doc/html/lists.html#map/2"><code·class="inline">lists:map/2</code></a>).</p><p>The·function·<code·class="inline">undefined</code>·that·has·called·<code·class="inline">fprof:apply_start_stop/4</code>·is·an
247 unknown·function·because·that·call·was·not·recorded·in·the·trace.·It·was·only247 unknown·function·because·that·call·was·not·recorded·in·the·trace.·It·was·only
248 recorded·that·the·execution·returned·from·<code·class="inline">fprof:apply_start_stop/4</code>·to·some248 recorded·that·the·execution·returned·from·<code·class="inline">fprof:apply_start_stop/4</code>·to·some
249 other·function·above·in·the·call·stack,·or·that·the·process·exited·from·there.</p><p>Let·us·continue·down·the·printout·to·find:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6509185266-1">{</span><span·class="p"·data-group-id="6509185266-2">[</span><span·class="p"·data-group-id="6509185266-3">{</span><span·class="p"·data-group-id="6509185266-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_[·...·truncated·by·diffoscope;·len:·405,·SHA:·7576495a594ae18f89d5f64d8557b0023f67de0023539cb0051645acb28849db·...·]-3">}</span><span·class="p">,</span><span·class="w">249 other·function·above·in·the·call·stack,·or·that·the·process·exited·from·there.</p><p>Let·us·continue·down·the·printout·to·find:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9813389464-1">{</span><span·class="p"·data-group-id="9813389464-2">[</span><span·class="p"·data-group-id="9813389464-3">{</span><span·class="p"·data-group-id="9813389464-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_[·...·truncated·by·diffoscope;·len:·405,·SHA:·e48fc26077dbc290ff2f31244234de30f56dfdb05bd52220b512c3144f91d435·...·]-3">}</span><span·class="p">,</span><span·class="w">
250 ··</span><span·class="p"·data-group-id="6509185266-5">{</span><span·class="p"·data-group-id="6509185266-6">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="6509185266[·...·truncated·by·diffoscope;·len:·352,·SHA:·fc226352ef9d7a9246fb721f437f7494469be24389cf43d78ae70fff18224b78·...·]-2">]</span><span·class="p">,</span><span·class="w">250 ··</span><span·class="p"·data-group-id="9813389464-5">{</span><span·class="p"·data-group-id="9813389464-6">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="9813389464[·...·truncated·by·diffoscope;·len:·352,·SHA:·5c950ff68042e9b41d03cfff0e1ad2b309822fc243c1f6ce8342b5f235b6b72e·...·]-2">]</span><span·class="p">,</span><span·class="w">
251 ·</span><span·class="p"·data-group-id="6509185266-7">{</span><span·class="w">·</span><span·class="p"·data-group-id="6509185266-8">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·323,·SHA:·3606579d02e9b43bba2cdbe3b0cf15e5ad77192e200cda6224ef8bae1d076406·...·]-7">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">251 ·</span><span·class="p"·data-group-id="9813389464-7">{</span><span·class="w">·</span><span·class="p"·data-group-id="9813389464-8">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·323,·SHA:·9127e3320ad393a46ee1733ce1c5176f0f8b939980fcace32fd6f976c3d20660·...·]-7">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">
252 ·</span><span·class="p"·data-group-id="6509185266-9">[</span><span·class="p"·data-group-id="6509185266-10">{</span><span·class="p"·data-group-id="6509185266-11">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</s[·...·truncated·by·diffoscope;·len:·355,·SHA:·1df8dc7d8ed144734d6471533e48bf81b5a6510dd53b8fe86107f67a4364af49·...·]-10">}</span><span·class="p">,</span><span·class="w">252 ·</span><span·class="p"·data-group-id="9813389464-9">[</span><span·class="p"·data-group-id="9813389464-10">{</span><span·class="p"·data-group-id="9813389464-11">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</s[·...·truncated·by·diffoscope;·len:·355,·SHA:·8c2e2285309abf76d312ed520d26dc56d13ee0ab59f7eb755e9ce8694331b902·...·]-10">}</span><span·class="p">,</span><span·class="w">
253 ··</span><span·class="p"·data-group-id="6509185266-12">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">······························</span><span·class="mi">57</span><span·class="p">,</span><span·class="w">····</span><span·class="mf">6.041</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·102,·SHA:·d189ecd76b32b15083cedd31d3b5955e97777dc85a8e8396631b0f6e5d07c57c·...·]-12">}</span><span·class="p">,</span><span·class="w">253 ··</span><span·class="p"·data-group-id="9813389464-12">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">······························</span><span·class="mi">57</span><span·class="p">,</span><span·class="w">····</span><span·class="mf">6.041</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·102,·SHA:·9d71809dbf2cb0466c9e09720bf3a52f90aef0b7194119104c12ba973808f2b8·...·]-12">}</span><span·class="p">,</span><span·class="w">
254 ··</span><span·class="p"·data-group-id="6509185266-13">{</span><span·class="p"·data-group-id="6509185266-14">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="65091852[·...·truncated·by·diffoscope;·len:·409,·SHA:·e042a4d3b02eb74a5c15cf73eda8aa2c08a3ed9d38aea877580552ccd90b7d1e·...·]-1">}</span><span·class="p">.</span></code></pre><p>If·you·compare·with·the·code·you·will·see·there·also·that254 ··</span><span·class="p"·data-group-id="9813389464-13">{</span><span·class="p"·data-group-id="9813389464-14">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="98133894[·...·truncated·by·diffoscope;·len:·409,·SHA:·6edaed63832f31174172d8809803b982789ed93d17f6e9ae8487060460782ba9·...·]-1">}</span><span·class="p">.</span></code></pre><p>If·you·compare·with·the·code·you·will·see·there·also·that
255 <code·class="inline">foo:create_file_slow/3</code>·was·called·only·from·<code·class="inline">foo:create_file_slow/2</code>·and255 <code·class="inline">foo:create_file_slow/3</code>·was·called·only·from·<code·class="inline">foo:create_file_slow/2</code>·and
256 itself,·and·called·only·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#write/2"><code·class="inline">file:write/2</code></a>,·note·the·number·of·calls·to256 itself,·and·called·only·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#write/2"><code·class="inline">file:write/2</code></a>,·note·the·number·of·calls·to
257 <a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#write/2"><code·class="inline">file:write/2</code></a>.·But·here·we·see·that·<code·class="inline">suspend</code>·was·called·a·few·times.·This·is·a257 <a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#write/2"><code·class="inline">file:write/2</code></a>.·But·here·we·see·that·<code·class="inline">suspend</code>·was·called·a·few·times.·This·is·a
258 pseudo·function·that·indicates·that·the·process·was·suspended·while·executing·in258 pseudo·function·that·indicates·that·the·process·was·suspended·while·executing·in
259 <code·class="inline">foo:create_file_slow/3</code>,·and·since·there·is·no·<code·class="inline">receive</code>·or·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#yield/0"><code·class="inline">erlang:yield/0</code></a>·in259 <code·class="inline">foo:create_file_slow/3</code>,·and·since·there·is·no·<code·class="inline">receive</code>·or·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#yield/0"><code·class="inline">erlang:yield/0</code></a>·in
260 the·code,·it·must·be·Erlang·scheduling·suspensions,·or·the·trace·file·driver260 the·code,·it·must·be·Erlang·scheduling·suspensions,·or·the·trace·file·driver
261 compensating·for·large·file·write·operations·(these·are·regarded·as·a·schedule261 compensating·for·large·file·write·operations·(these·are·regarded·as·a·schedule
262 out·followed·by·a·schedule·in·to·the·same·process).</p><p>Let·us·find·the·<code·class="inline">suspend</code>·entry:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3272430513-1">{</span><span·class="p"·data-group-id="3272430513-2">[</span><span·class="p"·data-group-id="3272430513-3">{</span><span·class="p"·data-group-id="3272430513-4">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</[·...·truncated·by·diffoscope;·len:·403,·SHA:·586bebb8e73bc280609439931c2ed0a98af12a1d92f2bf3675a03b054c7422a6·...·]3-3">}</span><span·class="p">,</span><span·class="w">262 out·followed·by·a·schedule·in·to·the·same·process).</p><p>Let·us·find·the·<code·class="inline">suspend</code>·entry:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3979719463-1">{</span><span·class="p"·data-group-id="3979719463-2">[</span><span·class="p"·data-group-id="3979719463-3">{</span><span·class="p"·data-group-id="3979719463-4">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</[·...·truncated·by·diffoscope;·len:·403,·SHA:·b9a5b242d145691440156fada13309ce149ca68d2cab5ba678c656f89cd50707·...·]3-3">}</span><span·class="p">,</span><span·class="w">
263 ··</span><span·class="p"·data-group-id="3272430513-5">{</span><span·class="p"·data-group-id="3272430513-6">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="3272430513-[·...·truncated·by·diffoscope;·len:·297,·SHA:·db40b68267ca01c25bfc73ef337630de659e687ed3a29cf9850986fcd0f79954·...·]3-5">}</span><span·class="p">,</span><span·class="w">263 ··</span><span·class="p"·data-group-id="3979719463-5">{</span><span·class="p"·data-group-id="3979719463-6">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="3979719463-[·...·truncated·by·diffoscope;·len:·297,·SHA:·fdbeff429efa1b75eba71d18e944683b52625d6266c6ad4f2290d3ace56fdac7·...·]3-5">}</span><span·class="p">,</span><span·class="w">
264 ··</span><span·class="p"·data-group-id="3272430513-7">{</span><span·class="p"·data-group-id="3272430513-8">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">drv_command</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="3272430513[·...·truncated·by·diffoscope;·len:·297,·SHA:·bb067d5c41ff07aa154019cc98ef6b7183d2e8ac4c1f2b83d370a648cd34b219·...·]3-7">}</span><span·class="p">,</span><span·class="w">264 ··</span><span·class="p"·data-group-id="3979719463-7">{</span><span·class="p"·data-group-id="3979719463-8">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">drv_command</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="3979719463[·...·truncated·by·diffoscope;·len:·297,·SHA:·00958b92369916f2961a282725752ba241ea419d66f68014a0bda89135d4e22d·...·]3-7">}</span><span·class="p">,</span><span·class="w">
265 ··</span><span·class="p"·data-group-id="3272430513-9">{</span><span·class="p"·data-group-id="3272430513-10">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">drv_get_response</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="3272[·...·truncated·by·diffoscope;·len:·299,·SHA:·41f4fc5da6ae3ce9da14a29f8c3e894ded6d934797ec408f622abe2bd55bd547·...·]3-9">}</span><span·class="p">,</span><span·class="w">265 ··</span><span·class="p"·data-group-id="3979719463-9">{</span><span·class="p"·data-group-id="3979719463-10">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">drv_get_response</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="3979[·...·truncated·by·diffoscope;·len:·299,·SHA:·d9e2a429b217d0f0de37d160a408fc69d4d01589387397ded12270811fe91c47·...·]3-9">}</span><span·class="p">,</span><span·class="w">
266 ··</span><span·class="p"·data-group-id="3272430513-11">{</span><span·class="p"·data-group-id="3272430513-12">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">map</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3272430513-12">}</sp[·...·truncated·by·diffoscope;·len:·300,·SHA:·9e799ea1d248de22259860912fab0734fa8cdb0f7d3e4fa9d2f80e7d7952705c·...·]3-11">}</span><span·class="p">,</span><span·class="w">266 ··</span><span·class="p"·data-group-id="3979719463-11">{</span><span·class="p"·data-group-id="3979719463-12">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">map</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3979719463-12">}</sp[·...·truncated·by·diffoscope;·len:·300,·SHA:·09cd5c9d8b921867dbca1bbed0822dbebde5db259600fec47c43194fb38bc2e7·...·]3-11">}</span><span·class="p">,</span><span·class="w">
267 ··</span><span·class="p"·data-group-id="3272430513-13">{</span><span·class="p"·data-group-id="3272430513-14">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3272430513-14"[·...·truncated·by·diffoscope;·len:·300,·SHA:·02522a7c06839e02ee6a5f41cb506e117e106c4c47d3d054e3c0166989585228·...·]3-13">}</span><span·class="p">,</span><span·class="w">267 ··</span><span·class="p"·data-group-id="3979719463-13">{</span><span·class="p"·data-group-id="3979719463-14">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3979719463-14"[·...·truncated·by·diffoscope;·len:·300,·SHA:·8f1d71fd21a36cc34a7a44a0aaada49b6fe231400cc9ce29ee0119f297a54e76·...·]3-13">}</span><span·class="p">,</span><span·class="w">
268 ··</span><span·class="p"·data-group-id="3272430513-15">{</span><span·class="p"·data-group-id="3272430513-16">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">port_command</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3272430513[·...·truncated·by·diffoscope;·len:·300,·SHA:·d161ce514220b05f3de459ebde570e144dc020f9b7ada2e5e193752ed437abf1·...·]3-15">}</span><span·class="p">,</span><span·class="w">268 ··</span><span·class="p"·data-group-id="3979719463-15">{</span><span·class="p"·data-group-id="3979719463-16">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">port_command</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3979719463[·...·truncated·by·diffoscope;·len:·300,·SHA:·8ae127f2bef9814c7b55316d0d8f9b320181d90605202f81320932bbef3e5fa2·...·]3-15">}</span><span·class="p">,</span><span·class="w">
269 ··</span><span·class="p"·data-group-id="3272430513-17">{</span><span·class="p"·data-group-id="3272430513-18">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">drv_command</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="32724305[·...·truncated·by·diffoscope;·len:·300,·SHA:·970d720109a684bf11d6495913ecceb13d6c10cf7ca890d4170622c68374fba5·...·]3-17">}</span><span·class="p">,</span><span·class="w">269 ··</span><span·class="p"·data-group-id="3979719463-17">{</span><span·class="p"·data-group-id="3979719463-18">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">drv_command</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="39797194[·...·truncated·by·diffoscope;·len:·300,·SHA:·51636a5788052b6143e4fb15d53e2a5e19d7c12297a6a03351dd2ec171cb1446·...·]3-17">}</span><span·class="p">,</span><span·class="w">
270 ··</span><span·class="p"·data-group-id="3272430513-19">{</span><span·class="p"·data-group-id="3272430513-20">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">translate_response</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3[·...·truncated·by·diffoscope;·len:·300,·SHA:·ca9c7672a6438e9e9dbb707800ae8857c3dacab66d91f5e868762c6514db9a31·...·]3-19">}</span><span·class="p">,</span><span·class="w">270 ··</span><span·class="p"·data-group-id="3979719463-19">{</span><span·class="p"·data-group-id="3979719463-20">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">translate_response</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="3[·...·truncated·by·diffoscope;·len:·300,·SHA:·6dbb3ddbcf8e4833ef27b36ab98fe71c0dcf02dc18e13fc7f3d268e04757fc70·...·]3-19">}</span><span·class="p">,</span><span·class="w">
271 ··</span><span·class="p"·data-group-id="3272430513-21">{</span><span·class="p"·data-group-id="3272430513-22">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">&#39;-drv_command/2-fun-0-&#39;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·310,·SHA:·4db5f47281576e4a026b68450e90ff2358913dd285832082dac1e5bdd023a251·...·]3-21">}</span><span·class="p">,</span><span·class="w">271 ··</span><span·class="p"·data-group-id="3979719463-21">{</span><span·class="p"·data-group-id="3979719463-22">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">&#39;-drv_command/2-fun-0-&#39;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·dat[·...·truncated·by·diffoscope;·len:·310,·SHA:·ba8a4142a89a258a8547fb0162882c5c07533931e4b83c58b7328486990fd872·...·]3-21">}</span><span·class="p">,</span><span·class="w">
272 ··</span><span·class="p"·data-group-id="3272430513-23">{</span><span·class="p"·data-group-id="3272430513-24">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">seq</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="3272430513-24">}</sp[·...·truncated·by·diffoscope;·len:·300,·SHA:·341fc5e552287e890eede6f2a7ab3874ffdb33b31970943671d0ca85b660f643·...·]3-23">}</span><span·class="p">,</span><span·class="w">272 ··</span><span·class="p"·data-group-id="3979719463-23">{</span><span·class="p"·data-group-id="3979719463-24">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">seq</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="3979719463-24">}</sp[·...·truncated·by·diffoscope;·len:·300,·SHA:·957ff544cfce15b1d2ff297c76d8f67301d85c32c00378af0d3e7da551a40794·...·]3-23">}</span><span·class="p">,</span><span·class="w">
273 ··</span><span·class="p"·data-group-id="3272430513-25">{</span><span·class="p"·data-group-id="3272430513-26">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">&#39;-create_file_slow/2-fun-0-&#39;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·309,·SHA:·20c501a1ef61e58d7e46f5c9e17b4b6e581e4f185d005eff665a84d51f456495·...·]3-25">}</span><span·class="p">,</span><span·class="w">273 ··</span><span·class="p"·data-group-id="3979719463-25">{</span><span·class="p"·data-group-id="3979719463-26">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">&#39;-create_file_slow/2-fun-0-&#39;</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·309,·SHA:·014a6c384ca025807790f295afe4907015d4b3ad3ce249d9fc7553c38adedf70·...·]3-25">}</span><span·class="p">,</span><span·class="w">
274 ··</span><span·class="p"·data-group-id="3272430513-27">{</span><span·class="p"·data-group-id="3272430513-28">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">bump_reductions</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="3272430[·...·truncated·by·diffoscope;·len:·300,·SHA:·bc00c96c0276f4d33e735666408c99e4ef770920f1d7bd73094bed7ff39215f2·...·]3-27">}</span><span·class="p">,</span><span·class="w">274 ··</span><span·class="p"·data-group-id="3979719463-27">{</span><span·class="p"·data-group-id="3979719463-28">{</span><span·class="ss">erlang</span><span·class="p">,</span><span·class="nb">bump_reductions</span><span·class="p">,</span><span·class="mi">1</span><span·class="p"·data-group-id="3979719[·...·truncated·by·diffoscope;·len:·300,·SHA:·4f808887b96f2be6491e3a0401f8699664d21cb0a99e4e96a4f3bdf59acad229·...·]3-27">}</span><span·class="p">,</span><span·class="w">
275 ··</span><span·class="p"·data-group-id="3272430513-29">{</span><span·class="p"·data-group-id="3272430513-30">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">open_int_setopts</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="327[·...·truncated·by·diffoscope;·len:·300,·SHA:·5dd4fc3bf0b661caeadb8c9fcc57a4b4102d37b9824a78da0e75c2aa0a8335e1·...·]3-29">}</span><span·class="p">,</span><span·class="w">275 ··</span><span·class="p"·data-group-id="3979719463-29">{</span><span·class="p"·data-group-id="3979719463-30">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">open_int_setopts</span><span·class="p">,</span><span·class="mi">3</span><span·class="p"·data-group-id="397[·...·truncated·by·diffoscope;·len:·300,·SHA:·6a5d606a06f73b5a1d9f92c1076a45cd34aea9e8c96e3f8b8d3b15d62b3dbb4e·...·]3-29">}</span><span·class="p">,</span><span·class="w">
276 ··</span><span·class="p"·data-group-id="3272430513-31">{</span><span·class="p"·data-group-id="3272430513-32">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">i32</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="3272430513-32">}[·...·truncated·by·diffoscope;·len:·300,·SHA:·a41e060f03a7c14287250e2e904a91fe6ad7ba598ff5306c7e12426ad20fef74·...·]3-31">}</span><span·class="p">,</span><span·class="w">276 ··</span><span·class="p"·data-group-id="3979719463-31">{</span><span·class="p"·data-group-id="3979719463-32">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">i32</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="3979719463-32">}[·...·truncated·by·diffoscope;·len:·300,·SHA:·cd95df46da127010adecad0357480ee0ebe68ba88a4be05b750a46604595714e·...·]3-31">}</span><span·class="p">,</span><span·class="w">
277 ··</span><span·class="p"·data-group-id="3272430513-33">{</span><span·class="p"·data-group-id="3272430513-34">{</span><span·class="ss">fprof</span><span·class="p">,</span><span·class="ss">apply_start_stop</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="3272430[·...·truncated·by·diffoscope;·len:·354,·SHA:·fdb5a11068cf111eafff2296ec8f1777a765f1d41636eda7047c365e351fa0d6·...·]3-2">]</span><span·class="p">,</span><span·class="w">277 ··</span><span·class="p"·data-group-id="3979719463-33">{</span><span·class="p"·data-group-id="3979719463-34">{</span><span·class="ss">fprof</span><span·class="p">,</span><span·class="ss">apply_start_stop</span><span·class="p">,</span><span·class="mi">4</span><span·class="p"·data-group-id="3979719[·...·truncated·by·diffoscope;·len:·354,·SHA:·5563d59bc6b8cf8214270a4dd419937a5e6f4a33e9a60a659c1c0976223545fc·...·]3-2">]</span><span·class="p">,</span><span·class="w">
278 ·</span><span·class="p"·data-group-id="3272430513-35">{</span><span·class="w">·</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">·····························</span><span·class="mi">299</span><span·class="p">,</span><span·class="w">···</span><span·class="mf">32.002</s[·...·truncated·by·diffoscope;·len:·124,·SHA:·4b621d4f6f736603533e845a2fa31ef2abb8de586b6318e621f4dffe5ef1da72·...·]3-35">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">278 ·</span><span·class="p"·data-group-id="3979719463-35">{</span><span·class="w">·</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">·····························</span><span·class="mi">299</span><span·class="p">,</span><span·class="w">···</span><span·class="mf">32.002</s[·...·truncated·by·diffoscope;·len:·124,·SHA:·551fad70d04aeadd7d853eec02b3dfa978582ba1d7906fd142a10a00b39830d8·...·]3-35">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">
279 ·</span><span·class="p"·data-group-id="3272430513-36">[</span><span·class="w">·</span><span·class="p"·data-group-id="3272430513-36">]</span><span·class="p"·data-group-id="3272430513-1">}</span><span·class="p">.</span></code></pre><p>We·find·no·particularly·long·suspend·times,·so·no·function·seems·to·have·waited279 ·</span><span·class="p"·data-group-id="3979719463-36">[</span><span·class="w">·</span><span·class="p"·data-group-id="3979719463-36">]</span><span·class="p"·data-group-id="3979719463-1">}</span><span·class="p">.</span></code></pre><p>We·find·no·particularly·long·suspend·times,·so·no·function·seems·to·have·waited
280 in·a·receive·statement.·Actually,·<code·class="inline">prim_file:drv_command/4</code>·contains·a·receive280 in·a·receive·statement.·Actually,·<code·class="inline">prim_file:drv_command/4</code>·contains·a·receive
281 statement,·but·in·this·test·program,·the·message·lies·in·the·process·receive281 statement,·but·in·this·test·program,·the·message·lies·in·the·process·receive
282 buffer·when·the·receive·statement·is·entered.·We·also·see·that·the·total·suspend282 buffer·when·the·receive·statement·is·entered.·We·also·see·that·the·total·suspend
283 time·for·the·test·run·is·small.</p><p>The·<code·class="inline">suspend</code>·pseudo·function·has·an·<code·class="inline">OWN</code>·time·of·zero.·This·is·to·prevent283 time·for·the·test·run·is·small.</p><p>The·<code·class="inline">suspend</code>·pseudo·function·has·an·<code·class="inline">OWN</code>·time·of·zero.·This·is·to·prevent
284 the·process·total·<code·class="inline">OWN</code>·time·from·including·time·in·suspension.·Whether·suspend284 the·process·total·<code·class="inline">OWN</code>·time·from·including·time·in·suspension.·Whether·suspend
285 time·is·really·<code·class="inline">ACC</code>·or·<code·class="inline">OWN</code>·time·is·more·of·a·philosophical·question.</p><p>Now·we·look·at·another·interesting·pseudo·function,·<code·class="inline">garbage_collect</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5846140633-1">{</span><span·class="p"·data-group-id="5846140633-2">[</span><span·class="p"·data-group-id="5846140633-3">{</span><span·class="p"·data-group-id="5846140633-4">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">d[·...·truncated·by·diffoscope;·len:·405,·SHA:·22b94ef6ce5adf19170e1ec228e33e834397e9ebdb9a3e0b685fc2f25a7cf69b·...·]-3">}</span><span·class="p">,</span><span·class="w">285 time·is·really·<code·class="inline">ACC</code>·or·<code·class="inline">OWN</code>·time·is·more·of·a·philosophical·question.</p><p>Now·we·look·at·another·interesting·pseudo·function,·<code·class="inline">garbage_collect</code>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1943797938-1">{</span><span·class="p"·data-group-id="1943797938-2">[</span><span·class="p"·data-group-id="1943797938-3">{</span><span·class="p"·data-group-id="1943797938-4">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">d[·...·truncated·by·diffoscope;·len:·405,·SHA:·6301e75e75510ccbe484d48253e43bc617b1c2f51221e0f4e9bc519a7ca0a546·...·]-3">}</span><span·class="p">,</span><span·class="w">
286 ··</span><span·class="p"·data-group-id="5846140633-5">{</span><span·class="p"·data-group-id="5846140633-6">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5846140633-6">}[·...·truncated·by·diffoscope;·len:·299,·SHA:·36a423db9b147293ae7b193043a018069af035620bce92c5bf1df94b29d3d33b·...·]-5">}</span><span·class="p">,</span><span·class="w">286 ··</span><span·class="p"·data-group-id="1943797938-5">{</span><span·class="p"·data-group-id="1943797938-6">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1943797938-6">}[·...·truncated·by·diffoscope;·len:·299,·SHA:·ec079e87d56695887833dbefe2962b491db7b349b17456bfa522cd64e3650dba·...·]-5">}</span><span·class="p">,</span><span·class="w">
287 ··</span><span·class="p"·data-group-id="5846140633-7">{</span><span·class="p"·data-group-id="5846140633-8">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">map</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="5846140633-8">}</span[·...·truncated·by·diffoscope;·len:·352,·SHA:·a371bc87849fbd1861eb2653b7c7271389b07c74b99e26061a4406d688f85560·...·]-2">]</span><span·class="p">,</span><span·class="w">287 ··</span><span·class="p"·data-group-id="1943797938-7">{</span><span·class="p"·data-group-id="1943797938-8">{</span><span·class="ss">lists</span><span·class="p">,</span><span·class="ss">map</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="1943797938-8">}</span[·...·truncated·by·diffoscope;·len:·352,·SHA:·8cd5f7ccf83222910ede29ad4c2fa65741a9604479c697ee95f6f7d3bd847e1c·...·]-2">]</span><span·class="p">,</span><span·class="w">
288 ·</span><span·class="p"·data-group-id="5846140633-9">{</span><span·class="w">·</span><span·class="nb">garbage_collect</span><span·class="p">,</span><span·class="w">······················</span><span·class="mi">43</span><span·class="p">,</span><span·class="w">····</span><span·class="mf">1.760</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·862f05798f90ccc94b8fb88bc9364cbbe75528de4f2aaaf70fd6ba6c5eac83d2·...·]-9">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">288 ·</span><span·class="p"·data-group-id="1943797938-9">{</span><span·class="w">·</span><span·class="nb">garbage_collect</span><span·class="p">,</span><span·class="w">······················</span><span·class="mi">43</span><span·class="p">,</span><span·class="w">····</span><span·class="mf">1.760</s[·...·truncated·by·diffoscope;·len:·125,·SHA:·09af7b5f6cae9859ce3cd3c81d3bf2f13e741897c83e4597770c640523664ce3·...·]-9">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">
289 ·</span><span·class="p"·data-group-id="5846140633-10">[</span><span·class="w">·</span><span·class="p"·data-group-id="5846140633-10">]</span><span·class="p"·data-group-id="5846140633-1">}</span><span·class="p">.</span></code></pre><p>Here·we·see·that·no·function·stands·out,·which·is·very·normal.</p><p>The·<code·class="inline">garbage_collect</code>·pseudo·function·has·not·an·<code·class="inline">OWN</code>·time·of·zero·like289 ·</span><span·class="p"·data-group-id="1943797938-10">[</span><span·class="w">·</span><span·class="p"·data-group-id="1943797938-10">]</span><span·class="p"·data-group-id="1943797938-1">}</span><span·class="p">.</span></code></pre><p>Here·we·see·that·no·function·stands·out,·which·is·very·normal.</p><p>The·<code·class="inline">garbage_collect</code>·pseudo·function·has·not·an·<code·class="inline">OWN</code>·time·of·zero·like
290 <code·class="inline">suspend</code>,·instead·it·is·equal·to·the·<code·class="inline">ACC</code>·time.</p><p>Garbage·collection·often·occurs·while·a·process·is·suspended,·but·<code·class="inline">fprof</code>·hides290 <code·class="inline">suspend</code>,·instead·it·is·equal·to·the·<code·class="inline">ACC</code>·time.</p><p>Garbage·collection·often·occurs·while·a·process·is·suspended,·but·<code·class="inline">fprof</code>·hides
291 this·fact·by·pretending·that·the·suspended·function·was·first·unsuspended·and291 this·fact·by·pretending·that·the·suspended·function·was·first·unsuspended·and
292 then·garbage·collected.·Otherwise·the·printout·would·show·<code·class="inline">garbage_collect</code>292 then·garbage·collected.·Otherwise·the·printout·would·show·<code·class="inline">garbage_collect</code>
293 being·called·from·<code·class="inline">suspend</code>,·but·not·which·function·that·might·have·caused·the293 being·called·from·<code·class="inline">suspend</code>,·but·not·which·function·that·might·have·caused·the
294 garbage·collection.</p><p>Let·us·now·get·back·to·the·test·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="0814340417-1">{</span><span·class="p"·data-group-id="0814340417-2">[</span><span·class="p"·data-group-id="0814340417-3">{</span><span·class="p"·data-group-id="0814340417-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_[·...·truncated·by·diffoscope;·len:·405,·SHA:·0522ea069da6afe04c555d6cc3bb6014a52e0552097464a54cdb2b1300dc09d3·...·]-3">}</span><span·class="p">,</span><span·class="w">294 garbage·collection.</p><p>Let·us·now·get·back·to·the·test·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="2959372825-1">{</span><span·class="p"·data-group-id="2959372825-2">[</span><span·class="p"·data-group-id="2959372825-3">{</span><span·class="p"·data-group-id="2959372825-4">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_[·...·truncated·by·diffoscope;·len:·405,·SHA:·6bef177d9de770de580a4aa0daaf9a5fcd37639301f43ddf77685f514733f3b3·...·]-3">}</span><span·class="p">,</span><span·class="w">
295 ··</span><span·class="p"·data-group-id="0814340417-5">{</span><span·class="p"·data-group-id="0814340417-6">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="0814340417[·...·truncated·by·diffoscope;·len:·352,·SHA:·48e95b78c1e5d37283de4c55956dbc85bc55b5db4fafd7948abab7fab44e0f58·...·]-2">]</span><span·class="p">,</span><span·class="w">295 ··</span><span·class="p"·data-group-id="2959372825-5">{</span><span·class="p"·data-group-id="2959372825-6">{</span><span·class="ss">foo</span><span·class="p">,</span><span·class="ss">create_file_slow</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-id="2959372825[·...·truncated·by·diffoscope;·len:·352,·SHA:·2da231ca558e58c9d2ad132cdde1c623d2edbe8c216874a724f01544fb98ad8b·...·]-2">]</span><span·class="p">,</span><span·class="w">
296 ·</span><span·class="p"·data-group-id="0814340417-7">{</span><span·class="w">·</span><span·class="p"·data-group-id="0814340417-8">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·323,·SHA:·08ec42db43d4fddc6a2391b18983001b6875e8468d304a79908dcd8468edfad2·...·]-7">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">296 ·</span><span·class="p"·data-group-id="2959372825-7">{</span><span·class="w">·</span><span·class="p"·data-group-id="2959372825-8">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi">2</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·323,·SHA:·f3cf070ec1c978fda72a31e4edbc3ccdd8b2e87e53d0b94eefd539b81a749105·...·]-7">}</span><span·class="p">,</span><span·class="w">·····</span><span·class="c1">%</span><span·class="w">
297 ·</span><span·class="p"·data-group-id="0814340417-9">[</span><span·class="p"·data-group-id="0814340417-10">{</span><span·class="p"·data-group-id="0814340417-11">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi"[·...·truncated·by·diffoscope;·len:·355,·SHA:·e03774028a50f367151c741c9ed64ab8ccad3fe3cf0da42c983b476fda5d7181·...·]-10">}</span><span·class="p">,</span><span·class="w">297 ·</span><span·class="p"·data-group-id="2959372825-9">[</span><span·class="p"·data-group-id="2959372825-10">{</span><span·class="p"·data-group-id="2959372825-11">{</span><span·class="ss">prim_file</span><span·class="p">,</span><span·class="ss">write</span><span·class="p">,</span><span·class="mi"[·...·truncated·by·diffoscope;·len:·355,·SHA:·06fb887a17f478054184bad8baa2a674e736a13a1aadb3dc0daef1b7c77aa9a4·...·]-10">}</span><span·class="p">,</span><span·class="w">
298 ··</span><span·class="p"·data-group-id="0814340417-12">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">······························</span><span·class="mi">53</span><span·class="p">,</span><span·class="w">····</span><span·class="mf">6.281</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·209,·SHA:·8f7cce699c844b8dacac3f099ed1000af9740470e04dadf98b2bc2924ff2c279·...·]-1">}</span><span·class="p">.</span></code></pre><p>Not·unexpectedly,·we·see·that·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#write/2"><code·class="inline">file:write/2</code></a>·was·called·from298 ··</span><span·class="p"·data-group-id="2959372825-12">{</span><span·class="ss">suspend</span><span·class="p">,</span><span·class="w">······························</span><span·class="mi">53</span><span·class="p">,</span><span·class="w">····</span><span·class="mf">6.281</span><span·class="p">,</[·...·truncated·by·diffoscope;·len:·209,·SHA:·e8f140f21f9ac71c005187df54d93ed91b70e539a6680e83fd7a3c2742094b6d·...·]-1">}</span><span·class="p">.</span></code></pre><p>Not·unexpectedly,·we·see·that·<a·href="../../../../lib/kernel-10.0.1/doc/html/file.html#write/2"><code·class="inline">file:write/2</code></a>·was·called·from
Max diff block lines reached; 46070/139192 bytes (33.10%) of diff not shown.
682 B
html2text {}
Max HTML report size reached
5.35 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/fprof_chapter.html
    
Offset 172, 18 lines modifiedOffset 172, 18 lines modified
172 ··<a·href="#immediate-profiling"·class="hover-link">172 ··<a·href="#immediate-profiling"·class="hover-link">
173 ····<i·class="ri-link-m"·aria-hidden="true"></i>173 ····<i·class="ri-link-m"·aria-hidden="true"></i>
174 ··</a>174 ··</a>
175 ··<span·class="text">Immediate·profiling</span>175 ··<span·class="text">Immediate·profiling</span>
176 </h2>176 </h2>
177 <p>It·is·also·possible·to·trace·immediately·into·the·profiling·process·that·creates177 <p>It·is·also·possible·to·trace·immediately·into·the·profiling·process·that·creates
178 the·raw·profile·data,·that·is·to·short·circuit·the·tracing·and·profiling·steps178 the·raw·profile·data,·that·is·to·short·circuit·the·tracing·and·profiling·steps
179 so·that·the·filesystem·is·not·used·for·tracing.</p><p>Do·something·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="6735512705-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tracer</span><span·class="p"·data-group-id="6735512705-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·201,·SHA:·77423a991f8280d7c2358bed7c2ec9d49dfebf0724e742ac7be300a366074f9c·...·]-2">)</span><span·class="p">,</span><span·class="w">179 so·that·the·filesystem·is·not·used·for·tracing.</p><p>Do·something·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9668809651-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tracer</span><span·class="p"·data-group-id="9668809651-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·[·...·truncated·by·diffoscope;·len:·201,·SHA:·9f954bf9efa2a70bc3b5163ea18f789b438484cf81d4f981336f20ed649e33ca·...·]-2">)</span><span·class="p">,</span><span·class="w">
180 </span><span·class="nc">fprof</span><span·class="p">:</span><span·class="nf">trace</span><span·class="p"·data-group-id="6735512705-3">(</span><span·class="p"·data-group-id="6735512705-4">[</span><span·class="ss">start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6735512705-5">{</span><span·class="ss">tracer</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·203,·SHA:·b9fd528906c6eaea5fefd73d34c2d910d10923c732ebafee837c110251949b76·...·]-3">)</span><span·class="p">,</span><span·class="w">180 </span><span·class="nc">fprof</span><span·class="p">:</span><span·class="nf">trace</span><span·class="p"·data-group-id="9668809651-3">(</span><span·class="p"·data-group-id="9668809651-4">[</span><span·class="ss">start</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9668809651-5">{</span><span·class="ss">tracer</span><span·class="p">,</sp[·...·truncated·by·diffoscope;·len:·203,·SHA:·843af479a4bc0f28fd967f409ff09df6798acd6a0916ae4b4d7c73719f79b516·...·]-3">)</span><span·class="p">,</span><span·class="w">
181 </span><span·class="c1">%%·Run·code·to·profile</span><span·class="w">181 </span><span·class="c1">%%·Run·code·to·profile</span><span·class="w">
182 </span><span·class="nc">fprof</span><span·class="p">:</span><span·class="nf">trace</span><span·class="p"·data-group-id="6735512705-6">(</span><span·class="ss">stop</span><span·class="p"·data-group-id="6735512705-6">)</span><span·class="p">;</span></code></pre><p>This·puts·less·load·on·the·filesystem,·but·much·more·load·on·the·Erlang·runtime182 </span><span·class="nc">fprof</span><span·class="p">:</span><span·class="nf">trace</span><span·class="p"·data-group-id="9668809651-6">(</span><span·class="ss">stop</span><span·class="p"·data-group-id="9668809651-6">)</span><span·class="p">;</span></code></pre><p>This·puts·less·load·on·the·filesystem,·but·much·more·load·on·the·Erlang·runtime
183 system.</p>183 system.</p>
184 </div>184 </div>
  
185 <div·class="bottom-actions"·id="bottom-actions">185 <div·class="bottom-actions"·id="bottom-actions">
186 ··<div·class="bottom-actions-item">186 ··<div·class="bottom-actions-item">
  
187 ······<a·href="erlang_mode_chapter.html"·class="bottom-actions-button"·rel="prev">187 ······<a·href="erlang_mode_chapter.html"·class="bottom-actions-button"·rel="prev">
Offset 227, 15 lines modifiedOffset 227, 15 lines modified
227 ······<p·class="built-using">227 ······<p·class="built-using">
228 ········Built·using228 ········Built·using
229 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the229 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
230 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>230 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
231 ······</p>231 ······</p>
232 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>232 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
233 ····</footer>233 ····</footer>
234 ··</div>234 ··</div>
235 </main>235 </main>
236 </div>236 </div>
237 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>237 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
238 <script>238 <script>
239 ··document.addEventListener("DOMContentLoaded",·function·()·{239 ··document.addEventListener("DOMContentLoaded",·function·()·{
710 B
html2text {}
Max HTML report size reached
1.4 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/lcnt.html
    
Offset 1853, 15 lines modifiedOffset 1853, 15 lines modified
1853 ······<p·class="built-using">1853 ······<p·class="built-using">
1854 ········Built·using1854 ········Built·using
1855 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1855 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1856 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1856 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1857 ······</p>1857 ······</p>
1858 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1858 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1859 ····</footer>1859 ····</footer>
1860 ··</div>1860 ··</div>
1861 </main>1861 </main>
1862 </div>1862 </div>
1863 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1863 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1864 <script>1864 <script>
1865 ··document.addEventListener("DOMContentLoaded",·function·()·{1865 ··document.addEventListener("DOMContentLoaded",·function·()·{
597 B
html2text {}
Max HTML report size reached
58.7 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/lcnt_chapter.html
    
Offset 229, 28 lines modifiedOffset 229, 28 lines modified
229 ··&lt;nonode@nohost.104.0&gt;····5140··········0.7782········108229 ··&lt;nonode@nohost.104.0&gt;····5140··········0.7782········108
230 ok</code></pre><h2·id="example-with-mnesia-transaction-benchmark"·class="section-heading">230 ok</code></pre><h2·id="example-with-mnesia-transaction-benchmark"·class="section-heading">
231 ··<a·href="#example-with-mnesia-transaction-benchmark"·class="hover-link">231 ··<a·href="#example-with-mnesia-transaction-benchmark"·class="hover-link">
232 ····<i·class="ri-link-m"·aria-hidden="true"></i>232 ····<i·class="ri-link-m"·aria-hidden="true"></i>
233 ··</a>233 ··</a>
234 ··<span·class="text">Example·with·Mnesia·Transaction·Benchmark</span>234 ··<span·class="text">Example·with·Mnesia·Transaction·Benchmark</span>
235 </h2>235 </h2>
236 <p>From·the·Erlang·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">27</span><span·class="w">·</span><span·class="p"·data-group-id="9012848175-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">15.0</span><span·class="p"·data-group-id="9012848175-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="9012848175-2">[</span><span·class="mi">64</spa[·...·truncated·by·diffoscope;·len:·1287,·SHA:·94c81319ccf4c7140300027c040675953b54146977f9cb0fa61c735f6d7646a8·...·]-7">]</span><span·class="w">236 <p>From·the·Erlang·shell:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Erlang</span><span·class="o">/</span><span·class="n">OTP</span><span·class="w">·</span><span·class="mi">27</span><span·class="w">·</span><span·class="p"·data-group-id="3860018286-1">[</span><span·class="ss">erts</span><span·class="o">-</span><span·class="mf">15.0</span><span·class="p"·data-group-id="3860018286-1">]</span><span·class="w">·</span><span·class="p"·data-group-id="3860018286-2">[</span><span·class="mi">64</spa[·...·truncated·by·diffoscope;·len:·1287,·SHA:·c1ec50ca41c8f30c3b3cb209402207d80d26b3977c03582b6245c2106edae1f9·...·]-7">]</span><span·class="w">
  
237 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V15</span><span·class="p">.</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="9012848175-8">(</span><span·class="ss">press</span><span·class="w">·</span><span·class="n">Ctrl</span><span·class="o">+</span><span·class="n">G</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">abort</span><sp[·...·truncated·by·diffoscope;·len:·399,·SHA:·426daa8a4c95832bf30e6ab98ef441f6e4b58ee1293a4255cb2f88e41d2e76ea·...·]-8">)</span><span·class="gp·unselectable">237 </span><span·class="n">Eshell</span><span·class="w">·</span><span·class="n">V15</span><span·class="p">.</span><span·class="mi">0</span><span·class="w">·</span><span·class="p"·data-group-id="3860018286-8">(</span><span·class="ss">press</span><span·class="w">·</span><span·class="n">Ctrl</span><span·class="o">+</span><span·class="n">G</span><span·class="w">·</span><span·class="ss">to</span><span·class="w">·</span><span·class="ss">abort</span><sp[·...·truncated·by·diffoscope;·len:·399,·SHA:·d49cd92991b9091ed1238ed73d9e1b1718f09f5ee31b80b1cb5fc501a4452392·...·]-8">)</span><span·class="gp·unselectable">
238 1&gt;·</span><span·class="n">Conf</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="9012848175-10">[</span><span·class="p"·data-group-id="9012848175-11">{</span><span·class="ss">db_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9012848175-12">[</span><span·class="nf">node</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·1155,·SHA:·e6b05c0162427ff6d72d8331407bc29cb02f8bfb01ef61fae344edbd2ecd43d0·...·]-17">}</span><span·class="p">,</span><span·class="w">238 1&gt;·</span><span·class="n">Conf</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p"·data-group-id="3860018286-10">[</span><span·class="p"·data-group-id="3860018286-11">{</span><span·class="ss">db_nodes</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3860018286-12">[</span><span·class="nf">node</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·1155,·SHA:·a25a605cc28f335a6645f0407e2ff1e1525786b88d0929e9ec5b0836620de0ed·...·]-17">}</span><span·class="p">,</span><span·class="w">
239 ····</span><span·class="p"·data-group-id="9012848175-20">{</span><span·class="ss">n_drivers_per_node</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">10</span><span·class="p"·data-group-id="9012848175-20">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"[·...·truncated·by·diffoscope;·len:·465,·SHA:·72d6e67c0163eb010f16c5a3fb68150b5bd0ce394ffcd11e54679c57e87a3b1b·...·]-22">}</span><span·class="p">,</span><span·class="w">239 ····</span><span·class="p"·data-group-id="3860018286-20">{</span><span·class="ss">n_drivers_per_node</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">10</span><span·class="p"·data-group-id="3860018286-20">}</span><span·class="p">,</span><span·class="w">·</span><span·class="p"[·...·truncated·by·diffoscope;·len:·465,·SHA:·a0905a5c2733ff56079e4dfa085168dbf808a9c5cd65bd67f6d106fa40a312d2·...·]-22">}</span><span·class="p">,</span><span·class="w">
240 ····</span><span·class="p"·data-group-id="9012848175-23">{</span><span·class="ss">replica_type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ram_copies</span><span·class="p"·data-group-id="9012848175-23">}</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·519,·SHA:·7d5d7769d8792258119dc5d003274de10a5e076a1a5ab2dd2e9f1673281a17b6·...·]-10">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">240 ····</span><span·class="p"·data-group-id="3860018286-23">{</span><span·class="ss">replica_type</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ram_copies</span><span·class="p"·data-group-id="3860018286-23">}</span><span·class="p">,</span><span·class="w">·</span><span·class="[·...·truncated·by·diffoscope;·len:·519,·SHA:·fe4c2b28a054ffafcb4d8a333a8ad76124f8461d1b205b897d64c4509792fcab·...·]-10">]</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">
241 </span><span·class="ss">ok</span><span·class="gp·unselectable">241 </span><span·class="ss">ok</span><span·class="gp·unselectable">
242 2&gt;·</span><span·class="nc">mnesia_tpcb</span><span·class="p">:</span><span·class="nf">init</span><span·class="p"·data-group-id="9012848175-26">(</span><span·class="p"·data-group-id="9012848175-27">[</span><span·class="p"·data-group-id="9012848175-28">{</span><span·class="ss">use_running_mnesia</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·[·...·truncated·by·diffoscope;·len:·194,·SHA:·43f533b63ed9e690d21e9e35be06bb497ff5f6d399e73d3b0cf8a3e0a2f8c6ad·...·]-26">)</span><span·class="p">.</span><span·class="w">242 2&gt;·</span><span·class="nc">mnesia_tpcb</span><span·class="p">:</span><span·class="nf">init</span><span·class="p"·data-group-id="3860018286-26">(</span><span·class="p"·data-group-id="3860018286-27">[</span><span·class="p"·data-group-id="3860018286-28">{</span><span·class="ss">use_running_mnesia</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">false</span><span·[·...·truncated·by·diffoscope;·len:·194,·SHA:·44273e76e680c1adab6630c35da4ee8d4624cc93ccb3eff1c4de82179eb2edc7·...·]-26">)</span><span·class="p">.</span><span·class="w">
243 ····</span><span·class="p">.</span><span·class="w">243 ····</span><span·class="p">.</span><span·class="w">
244 ····</span><span·class="p">.</span><span·class="w">244 ····</span><span·class="p">.</span><span·class="w">
245 ····</span><span·class="p">.</span><span·class="w">245 ····</span><span·class="p">.</span><span·class="w">
246 </span><span·class="ss">ignore</span></code></pre><p>Initial·configuring·of·the·benchmark·is·done.·It·is·time·to·profile·the·actual246 </span><span·class="ss">ignore</span></code></pre><p>Initial·configuring·of·the·benchmark·is·done.·It·is·time·to·profile·the·actual
247 Mnesia·benchmark:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">lcnt</span><span·class="p">:</span><span·class="nf">apply</span><span·class="p"·data-group-id="7986308290-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7986308290-2">(</span><span·class="p"·data-group-id="7986308290-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·836,·SHA:·0dbb3f53181d05d7f410bbff265705ac912a8324c77e21a8ef1c4a000ae73b0e·...·]-7">{</span><span·class="ss">use_running_mnesia</span><span·class="p">,</span><span·class="w">247 Mnesia·benchmark:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">3&gt;·</span><span·class="nc">lcnt</span><span·class="p">:</span><span·class="nf">apply</span><span·class="p"·data-group-id="2401261037-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2401261037-2">(</span><span·class="p"·data-group-id="2401261037-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·836,·SHA:·a71d89e6916ff43d01f17b5138b60012451be03fb2343db0cd713cd7bdbaff3d·...·]-7">{</span><span·class="ss">use_running_mnesia</span><span·class="p">,</span><span·class="w">
248 ····</span><span·class="ss">true</span><span·class="p"·data-group-id="7986308290-7">}</span><span·class="p">|</span><span·class="n">Conf</span><span·class="p"·data-group-id="7986308290-6">]</span><span·class="p"·data-group-id="7986308290-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tps</span><sp[·...·truncated·by·diffoscope;·len:·138,·SHA:·6acfbcd1ad5b830d78b1b4bdc7b211a1a89feb01a3959db29560e552aba21ca9·...·]-1">)</span><span·class="p">.</span><span·class="w">248 ····</span><span·class="ss">true</span><span·class="p"·data-group-id="2401261037-7">}</span><span·class="p">|</span><span·class="n">Conf</span><span·class="p"·data-group-id="2401261037-6">]</span><span·class="p"·data-group-id="2401261037-5">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tps</span><sp[·...·truncated·by·diffoscope;·len:·138,·SHA:·9ba6f1aea88211be74a1fd2be79bd14800ae56583f039b8d918088c98de6634a·...·]-1">)</span><span·class="p">.</span><span·class="w">
249 ······</span><span·class="p">.</span><span·class="w">249 ······</span><span·class="p">.</span><span·class="w">
250 ······</span><span·class="p">.</span><span·class="w">250 ······</span><span·class="p">.</span><span·class="w">
251 ······</span><span·class="p">.</span><span·class="w">251 ······</span><span·class="p">.</span><span·class="w">
252 </span><span·class="mf">50204.666666666664</span></code></pre><p>The·benchmark·runs·for·60·seconds·(followed·by·verification·and252 </span><span·class="mf">50204.666666666664</span></code></pre><p>The·benchmark·runs·for·60·seconds·(followed·by·verification·and
253 analysis),·and·then·returns·the·number·of·transactions·per·seconds.</p><pre><code·class="text">4&gt;·lcnt:swap_pid_keys().253 analysis),·and·then·returns·the·number·of·transactions·per·seconds.</p><pre><code·class="text">4&gt;·lcnt:swap_pid_keys().
254 ok254 ok
255 5&gt;·lcnt:conflicts().255 5&gt;·lcnt:conflicts().
Offset 346, 71 lines modifiedOffset 346, 71 lines modified
346 problematic·if·they·begin·to·have·conflicts·even·if·it·is·not·shown·in·a346 problematic·if·they·begin·to·have·conflicts·even·if·it·is·not·shown·in·a
347 particular·test.</p><h2·id="the-big-bang-benchmark"·class="section-heading">347 particular·test.</p><h2·id="the-big-bang-benchmark"·class="section-heading">
348 ··<a·href="#the-big-bang-benchmark"·class="hover-link">348 ··<a·href="#the-big-bang-benchmark"·class="hover-link">
349 ····<i·class="ri-link-m"·aria-hidden="true"></i>349 ····<i·class="ri-link-m"·aria-hidden="true"></i>
350 ··</a>350 ··</a>
351 ··<span·class="text">The·Big·Bang·Benchmark</span>351 ··<span·class="text">The·Big·Bang·Benchmark</span>
352 </h2>352 </h2>
353 <pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1542845951-1">(</span><span·class="ss">big</span><span·class="p"·data-group-id="1542845951-1">)</span><span·class="p">.</span><span·class="w">353 <pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8824709158-1">(</span><span·class="ss">big</span><span·class="p"·data-group-id="8824709158-1">)</span><span·class="p">.</span><span·class="w">
354 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1542845951-2">(</span><span·class="p"·data-group-id="1542845951-3">[</span><span·class="ss">bang</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="1542845951-3">]</span><span·class="p"·data-group-id="1542845951-2">)</span><span·class="p">.</span><span·class="w">354 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8824709158-2">(</span><span·class="p"·data-group-id="8824709158-3">[</span><span·class="ss">bang</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="8824709158-3">]</span><span·class="p"·data-group-id="8824709158-2">)</span><span·class="p">.</span><span·class="w">
  
355 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-4">(</span><span·class="p"·data-group-id="1542845951-5">[</span><span·class="p"·data-group-id="1542845951-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-6">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·143,·SHA:·62484b44a48157433587e7149a710eeb407d4b7db22ee4b7ecf68047341d78e3·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">355 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-4">(</span><span·class="p"·data-group-id="8824709158-5">[</span><span·class="p"·data-group-id="8824709158-5">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-6">[</span><span·class="p"·data-group-[·...·truncated·by·diffoscope;·len:·143,·SHA:·996efd666140c14f8a57eb05f86b8db4fbfcfe7a7e7f4fcf43765f50a32ed124·...·]-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
356 ····</span><span·class="k">receive</span><span·class="w">356 ····</span><span·class="k">receive</span><span·class="w">
357 »       </span><span·class="p"·data-group-id="1542845951-7">{</span><span·class="ss">procs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ReportTo</span><span·class="p"·data-group-id="1542845951-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">357 »       </span><span·class="p"·data-group-id="8824709158-7">{</span><span·class="ss">procs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ReportTo</span><span·class="p"·data-group-id="8824709158-7">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
358 »       ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-8">(</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-9">[</span><span·class="p"·data-group-id="1542845951-9">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·68,·SHA:·d1e4965b40394589a67d98332706d2ed4b0cf863dec319c7f1b0943e89c64117·...·]-8">)</span><span·class="w">358 »       ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-8">(</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-9">[</span><span·class="p"·data-group-id="8824709158-9">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·68,·SHA:·bc904c53571124999a088ae274d8a9f0338365d6741348870d1cde8b2b524f5f·...·]-8">)</span><span·class="w">
359 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">359 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
360 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-10">(</span><span·class="p"·data-group-id="1542845951-11">[</span><span·class="p"·data-group-id="1542845951-11">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-12">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·149,·SHA:·c2318eecef4cc2ae1611f05ccc926ab920392384d65303d354b899668b039c16·...·]-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">360 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-10">(</span><span·class="p"·data-group-id="8824709158-11">[</span><span·class="p"·data-group-id="8824709158-11">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-12">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·149,·SHA:·c35459ee8dba0daca552f0418fcdd31ec0e365946f79cab7a179669b85c4366f·...·]-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
361 ····</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-13">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="1542845951-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·406,·SHA:·e10c5644522c47e00e2dfb451c7f4a2e04b211b6d0e8940c7267d1de8bf266a4·...·]-14">}</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">361 ····</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-13">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="8824709158-13">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·406,·SHA:·b21146e1156e90a830f0a7ef9ed3448535f8a28c562e08264ca4173beb1f4b39·...·]-14">}</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
362 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-16">(</span><span·class="p"·data-group-id="1542845951-17">[</span><span·class="p"·data-group-id="1542845951-17">]</span><span·class="p">,</span><span·class="p"·data-group-id="1542845951-18">[</span><span·class="p"·data-group-id="1542845951-18">][·...·truncated·by·diffoscope;·len:·101,·SHA:·b35bfe23eab020999f14d18e49ae736a0fd51a6a5ac10e94d7a4af51b0b7b194·...·]-16">)</span><span·class="p">;</span><span·class="w">362 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-16">(</span><span·class="p"·data-group-id="8824709158-17">[</span><span·class="p"·data-group-id="8824709158-17">]</span><span·class="p">,</span><span·class="p"·data-group-id="8824709158-18">[</span><span·class="p"·data-group-id="8824709158-18">][·...·truncated·by·diffoscope;·len:·101,·SHA:·e383b58eed4fde389da2864ec369767f959d3d7ff8d5d8916090070f367575c1·...·]-16">)</span><span·class="p">;</span><span·class="w">
363 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-19">(</span><span·class="p"·data-group-id="1542845951-20">[</span><span·class="p"·data-group-id="1542845951-20">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-21">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·151,·SHA:·09b551e406c8c694c1c6494876d3b5e20fc3b662874c63a08272a5707484b4e6·...·]-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">363 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-19">(</span><span·class="p"·data-group-id="8824709158-20">[</span><span·class="p"·data-group-id="8824709158-20">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-21">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·151,·SHA:·15182b57ff4e18679abdc2abe5448d5e8c0bf6ea349b885d70c9efcd9fa33e59·...·]-19">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
364 ····</span><span·class="n">ReportTo</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-22">{</span><span·class="ss">done</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="1542845951-23">(</span><span·class="p"·data-group-id="1542845951-23">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·146823ce86128b20efc6131929abb93b8c74a3dd499b21d378bfbfeb0f05fbfd·...·]-22">}</span><span·class="p">,</span><span·class="w">364 ····</span><span·class="n">ReportTo</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-22">{</span><span·class="ss">done</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8824709158-23">(</span><span·class="p"·data-group-id="8824709158-23">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·3060f84a3cdc94d46f58fa58e100711cd0a01557a1168f83a80efb75a9ecf74b·...·]-22">}</span><span·class="p">,</span><span·class="w">
365 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-24">(</span><span·class="p"·data-group-id="1542845951-25">[</span><span·class="p"·data-group-id="1542845951-25">]</span><span·class="p">,</span><span·class="p"·data-group-id="1542845951-26">[</span><span·class="p"·data-group-id="1542845951-26">][·...·truncated·by·diffoscope;·len:·101,·SHA:·b35bfe23eab020999f14d18e49ae736a0fd51a6a5ac10e94d7a4af51b0b7b194·...·]-24">)</span><span·class="p">;</span><span·class="w">365 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-24">(</span><span·class="p"·data-group-id="8824709158-25">[</span><span·class="p"·data-group-id="8824709158-25">]</span><span·class="p">,</span><span·class="p"·data-group-id="8824709158-26">[</span><span·class="p"·data-group-id="8824709158-26">][·...·truncated·by·diffoscope;·len:·101,·SHA:·e383b58eed4fde389da2864ec369767f959d3d7ff8d5d8916090070f367575c1·...·]-24">)</span><span·class="p">;</span><span·class="w">
366 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-27">(</span><span·class="p"·data-group-id="1542845951-28">[</span><span·class="p"·data-group-id="1542845951-28">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-29">[</span><span·class="n">Po</spa[·...·truncated·by·diffoscope;·len:·328,·SHA:·2f2d5b129f8d8306ba2021f8b97082979420791b5c2c26070e45573f0c05765c·...·]-27">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">366 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-27">(</span><span·class="p"·data-group-id="8824709158-28">[</span><span·class="p"·data-group-id="8824709158-28">]</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-29">[</span><span·class="n">Po</spa[·...·truncated·by·diffoscope;·len:·328,·SHA:·bff84a7bc2bcb11675d7da662156c060de5ea8ac271580fc226aa0c6f1a0436c·...·]-27">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
367 ····</span><span·class="k">receive</span><span·class="w">367 ····</span><span·class="k">receive</span><span·class="w">
368 »       </span><span·class="p"·data-group-id="1542845951-30">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="1542845951-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">368 »       </span><span·class="p"·data-group-id="8824709158-30">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="8824709158-30">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
369 »       ····</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-31">{</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="1542845951-32">(</span><span·class="p"·data-group-id="1542845951-32">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·146823ce86128b20efc6131929abb93b8c74a3dd499b21d378bfbfeb0f05fbfd·...·]-31">}</span><span·class="p">,</span><span·class="w">369 »       ····</span><span·class="n">From</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-31">{</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8824709158-32">(</span><span·class="p"·data-group-id="8824709158-32">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·3060f84a3cdc94d46f58fa58e100711cd0a01557a1168f83a80efb75a9ecf74b·...·]-31">}</span><span·class="p">,</span><span·class="w">
370 »       ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-33">(</span><span·class="p"·data-group-id="1542845951-34">[</span><span·class="p"·data-group-id="1542845951-34">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pongers</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ReportTo</span><span·class="p"·data-group-id="1542845951-33">)</span><span·class="p">;</span><span·class="w"> 
371 »       </span><span·class="p"·data-group-id="1542845951-35">{</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Po</span><span·class="p"·data-group-id="1542845951-35">}</span><span·class="w">·</span><span·class="p">[·...·truncated·by·diffoscope;·len:·4,·SHA:·a12e3d05a0d1154352e53ac5689df7d784621a18b602fad08c64dad7c7402a1f·...·];</span><span·class="w">370 »       ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-33">(</span><span·class="p"·data-group-id="8824709158-34">[</span><span·class="p"·data-group-id="8824709158-34">]</span><span·class="p">,</span><span·class="w">·</span><span[·...·truncated·by·diffoscope;·len:·174,·SHA:·38b56652d04a3ea1a9f8d61bc1f6a2a324aef6777268e202dd7609b439f4867e·...·];</span><span·class="w">
 371 »       </span><span·class="p"·data-group-id="8824709158-35">{</span><span·class="ss">pong</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Po</span><span·class="p"·data-group-id="8824709158-35">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
372 »       ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-36">(</span><span·class="p"·data-group-id="1542845951-37">[</span><span·class="p"·data-group-id="1542845951-37">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pos</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·69,·SHA:·651e2361d84e03aa567c55d1b52cd2ada1018c966452cf9905a96a8ccf7085cb·...·]-36">)</span><span·class="w">372 »       ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-36">(</span><span·class="p"·data-group-id="8824709158-37">[</span><span·class="p"·data-group-id="8824709158-37">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Pos</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·69,·SHA:·a44afb2e547492566ac8fe0a20ce069cc705de4f108d4a98d1ae6593b2d1cfdf·...·]-36">)</span><span·class="w">
373 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">373 ····</span><span·class="k">end</span><span·class="p">;</span><span·class="w">
374 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-38">(</span><span·class="p"·data-group-id="1542845951-39">[</span><span·class="n">Pi</span><span·class="p">|</span><span·class="n">Pis</span><span·class="p"·data-group-id="1542845951-39">]</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·148,·SHA:·d637f71335904b3062107bae29d003c00a1b493e444bb5bd6daa5a5d559bbf7d·...·]-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">374 </span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-38">(</span><span·class="p"·data-group-id="8824709158-39">[</span><span·class="n">Pi</span><span·class="p">|</span><span·class="n">Pis</span><span·class="p"·data-group-id="8824709158-39">]</span><span·class="p">,</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·148,·SHA:·7890d11b5eab9888edc61b33c7c15e38e890cc2ec36e0f0f440f95b2acc88458·...·]-38">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
375 ····</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-40">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="1542845951-40">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·406,·SHA:·cc32e4e78029854deb4fdc1626e2cce2f52c27bc6c362ec424d5c17d38a1cba7·...·]-41">}</span><span·class="w">375 ····</span><span·class="k">receive</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-40">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="n">From</span><span·class="p"·data-group-id="8824709158-40">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·406,·SHA:·ab351f48341411c5eac98572ac5fc59246af243ace7727808976c459cc15e3cf·...·]-41">}</span><span·class="w">
376 ····</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">376 ····</span><span·class="k">after</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="w">
377 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">377 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
378 ····</span><span·class="n">Pi</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-43">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="1542845951-44">(</span><span·class="p"·data-group-id="1542845951-44">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·146823ce86128b20efc6131929abb93b8c74a3dd499b21d378bfbfeb0f05fbfd·...·]-43">}</span><span·class="p">,</span><span·class="w">378 ····</span><span·class="n">Pi</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-43">{</span><span·class="ss">ping</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">self</span><span·class="p"·data-group-id="8824709158-44">(</span><span·class="p"·data-group-id="8824709158-44">)</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·3060f84a3cdc94d46f58fa58e100711cd0a01557a1168f83a80efb75a9ecf74b·...·]-43">}</span><span·class="p">,</span><span·class="w">
379 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="1542845951-45">(</span><span·class="n">Pis</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-46">[</span><span·class="n">Pi</span><span·class="p">|</span><span·class="n">Pongers</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·148,·SHA:·835d09182c4059a85cbc61602944031321857d334a568e7bc0c09b80bbdac79e·...·]-45">)</span><span·class="p">.</span><span·class="w">379 ····</span><span·class="nf">pinger</span><span·class="p"·data-group-id="8824709158-45">(</span><span·class="n">Pis</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-46">[</span><span·class="n">Pi</span><span·class="p">|</span><span·class="n">Pongers</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·148,·SHA:·90a08343ca43d811e0b2dd940f78a67e5f923cce0d2a4a13ee3f659b529a1b35·...·]-45">)</span><span·class="p">.</span><span·class="w">
  
380 </span><span·class="nf">spawn_procs</span><span·class="p"·data-group-id="1542845951-47">(</span><span·class="n">N</span><span·class="p"·data-group-id="1542845951-47">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=&lt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">380 </span><span·class="nf">spawn_procs</span><span·class="p"·data-group-id="8824709158-47">(</span><span·class="n">N</span><span·class="p"·data-group-id="8824709158-47">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="n">N</span><span·class="w">·</span><span·class="o">=&lt;</span><span·class="w">·</span><span·class="mi">0</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
381 ····</span><span·class="p"·data-group-id="1542845951-48">[</span><span·class="p"·data-group-id="1542845951-48">]</span><span·class="p">;</span><span·class="w">381 ····</span><span·class="p"·data-group-id="8824709158-48">[</span><span·class="p"·data-group-id="8824709158-48">]</span><span·class="p">;</span><span·class="w">
382 </span><span·class="nf">spawn_procs</span><span·class="p"·data-group-id="1542845951-49">(</span><span·class="n">N</span><span·class="p"·data-group-id="1542845951-49">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">382 </span><span·class="nf">spawn_procs</span><span·class="p"·data-group-id="8824709158-49">(</span><span·class="n">N</span><span·class="p"·data-group-id="8824709158-49">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
383 ····</span><span·class="p"·data-group-id="1542845951-50">[</span><span·class="nf">spawn_link</span><span·class="p"·data-group-id="1542845951-51">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-52">(</span><span·class="p"·data-group-id="154284595[·...·truncated·by·diffoscope;·len:·953,·SHA:·aab2ec4bbfbd7a1954186e2ca9589356bc54390678a1ab3afe0d945079693e2a·...·]-50">]</span><span·class="p">.</span><span·class="w">383 ····</span><span·class="p"·data-group-id="8824709158-50">[</span><span·class="nf">spawn_link</span><span·class="p"·data-group-id="8824709158-51">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-52">(</span><span·class="p"·data-group-id="882470915[·...·truncated·by·diffoscope;·len:·953,·SHA:·3b03d79c9d60b26b768dbacf9f4070fea66ae9129189bf0e1bcb227500ae8034·...·]-50">]</span><span·class="p">.</span><span·class="w">
  
384 </span><span·class="nf">send_procs</span><span·class="p"·data-group-id="1542845951-57">(</span><span·class="p"·data-group-id="1542845951-58">[</span><span·class="p"·data-group-id="1542845951-58">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1542845951-57">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">384 </span><span·class="nf">send_procs</span><span·class="p"·data-group-id="8824709158-57">(</span><span·class="p"·data-group-id="8824709158-58">[</span><span·class="p"·data-group-id="8824709158-58">]</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="8824709158-57">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
385 ····</span><span·class="n">Msg</span><span·class="p">;</span><span·class="w">385 ····</span><span·class="n">Msg</span><span·class="p">;</span><span·class="w">
386 </span><span·class="nf">send_procs</span><span·class="p"·data-group-id="1542845951-59">(</span><span·class="p"·data-group-id="1542845951-60">[</span><span·class="n">P</span><span·class="p">|</span><span·class="n">Ps</span><span·class="p"·data-group-id="1542845951-60">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·63,·SHA:·5107a89ab14c11fc29a087418d0b874319201fb597d9b3aca20698d504dacddd·...·]-59">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">386 </span><span·class="nf">send_procs</span><span·class="p"·data-group-id="8824709158-59">(</span><span·class="p"·data-group-id="8824709158-60">[</span><span·class="n">P</span><span·class="p">|</span><span·class="n">Ps</span><span·class="p"·data-group-id="8824709158-60">]</span><span·class="p">,</span><span·class="w">·</span><spa[·...·truncated·by·diffoscope;·len:·63,·SHA:·26266b176cf750a9a8fae75d9e32e3b0fa642a7dac5b788ca69f7133e3586a97·...·]-59">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
387 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">387 ····</span><span·class="n">P</span><span·class="w">·</span><span·class="o">!</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p">,</span><span·class="w">
388 ····</span><span·class="nf">send_procs</span><span·class="p"·data-group-id="1542845951-61">(</span><span·class="n">Ps</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1542845951-61">)</span><span·class="p">.</span><span·class="w">388 ····</span><span·class="nf">send_procs</span><span·class="p"·data-group-id="8824709158-61">(</span><span·class="n">Ps</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="8824709158-61">)</span><span·class="p">.</span><span·class="w">
  
389 </span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="1542845951-62">(</span><span·class="p"·data-group-id="1542845951-63">[</span><span·class="p"·data-group-id="1542845951-63">]</span><span·class="p"·data-group-id="1542845951-62">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">389 </span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="8824709158-62">(</span><span·class="p"·data-group-id="8824709158-63">[</span><span·class="p"·data-group-id="8824709158-63">]</span><span·class="p"·data-group-id="8824709158-62">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
390 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">390 ····</span><span·class="ss">ok</span><span·class="p">;</span><span·class="w">
391 </span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="1542845951-64">(</span><span·class="p"·data-group-id="1542845951-65">[</span><span·class="n">M</span><span·class="p">|</span><span·class="n">Ms</span><span·class="p"·data-group-id="1542845951-65">]</span><span·class="p"·data-group-id="1542845951-64">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">391 </span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="8824709158-64">(</span><span·class="p"·data-group-id="8824709158-65">[</span><span·class="n">M</span><span·class="p">|</span><span·class="n">Ms</span><span·class="p"·data-group-id="8824709158-65">]</span><span·class="p"·data-group-id="8824709158-64">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
392 ····</span><span·class="k">receive</span><span·class="w">392 ····</span><span·class="k">receive</span><span·class="w">
393 »       </span><span·class="n">M</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">393 »       </span><span·class="n">M</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
394 »       ····</span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="1542845951-66">(</span><span·class="n">Ms</span><span·class="p"·data-group-id="1542845951-66">)</span><span·class="w">394 »       ····</span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="8824709158-66">(</span><span·class="n">Ms</span><span·class="p"·data-group-id="8824709158-66">)</span><span·class="w">
395 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">395 ····</span><span·class="k">end</span><span·class="p">.</span><span·class="w">
  
396 </span><span·class="nf">bang</span><span·class="p"·data-group-id="1542845951-67">(</span><span·class="n">N</span><span·class="p"·data-group-id="1542845951-67">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="1542845951-68">(</[·...·truncated·by·diffoscope;·len:·70,·SHA:·dbdec63505b74734fa73368c43df7df64ca304c263e2b19b8be798d9d2e96122·...·]-68">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">396 </span><span·class="nf">bang</span><span·class="p"·data-group-id="8824709158-67">(</span><span·class="n">N</span><span·class="p"·data-group-id="8824709158-67">)</span><span·class="w">·</span><span·class="k">when</span><span·class="w">·</span><span·class="nf">integer</span><span·class="p"·data-group-id="8824709158-68">(</[·...·truncated·by·diffoscope;·len:·70,·SHA:·6468547d41e0acd8921923053dd838d75be94071e202ed1e637d075e9350f9ad·...·]-68">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
397 ····</span><span·class="n">Procs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn_procs</span><span·class="p"·data-group-id="1542845951-69">(</span><span·class="n">N</span><span·class="p"·data-group-id="1542845951-69">)</span><span·class="p">,</span><span·class="w">397 ····</span><span·class="n">Procs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">spawn_procs</span><span·class="p"·data-group-id="8824709158-69">(</span><span·class="n">N</span><span·class="p"·data-group-id="8824709158-69">)</span><span·class="p">,</span><span·class="w">
398 ····</span><span·class="n">RMsgs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="1542845951-70">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-71">(</span><span·class="n">P</span><span·class="p"·data-group-id="1542845951-71">)</span><span·class="w">·</span><span·class="p">-&gt;</spa[·...·truncated·by·diffoscope;·len:·401,·SHA:·27056142915d15e98c7fb7a3ed06b14848b9f89bfd72a3bf7579fa965a2aff9a·...·]-70">)</span><span·class="p">,</span><span·class="w">398 ····</span><span·class="n">RMsgs</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">map</span><span·class="p"·data-group-id="8824709158-70">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-71">(</span><span·class="n">P</span><span·class="p"·data-group-id="8824709158-71">)</span><span·class="w">·</span><span·class="p">-&gt;</spa[·...·truncated·by·diffoscope;·len:·401,·SHA:·38858dead457008e01fc0a7031bad6692abb2c0621f02b57aa6a9cf4862e37b0·...·]-70">)</span><span·class="p">,</span><span·class="w">
399 ····</span><span·class="n">Start</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">now</span><span·class="p"·data-group-id="1542845951-73">(</span><span·class="p"·data-group-id="1542845951-73">)</span><span·class="p">,</span><span·class="w">399 ····</span><span·class="n">Start</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">now</span><span·class="p"·data-group-id="8824709158-73">(</span><span·class="p"·data-group-id="8824709158-73">)</span><span·class="p">,</span><span·class="w">
400 ····</span><span·class="nf">send_procs</span><span·class="p"·data-group-id="1542845951-74">(</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-75">{</span><span·class="ss">procs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Procs</spa[·...·truncated·by·diffoscope;·len:·281,·SHA:·12e3576c382f0c81ebbfdcaa7c7b0957cd0c44ec121ae723cf96ba936d13410a·...·]-74">)</span><span·class="p">,</span><span·class="w">400 ····</span><span·class="nf">send_procs</span><span·class="p"·data-group-id="8824709158-74">(</span><span·class="n">Procs</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-75">{</span><span·class="ss">procs</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Procs</spa[·...·truncated·by·diffoscope;·len:·281,·SHA:·4cfedfd91e5bc663dcea063b32bef76ab20a4e7cf941eb6a5709f6a306dceb55·...·]-74">)</span><span·class="p">,</span><span·class="w">
401 ····</span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="1542845951-77">(</span><span·class="n">RMsgs</span><span·class="p"·data-group-id="1542845951-77">)</span><span·class="p">,</span><span·class="w">401 ····</span><span·class="nf">receive_msgs</span><span·class="p"·data-group-id="8824709158-77">(</span><span·class="n">RMsgs</span><span·class="p"·data-group-id="8824709158-77">)</span><span·class="p">,</span><span·class="w">
402 ····</span><span·class="n">Stop</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">now</span><span·class="p"·data-group-id="1542845951-78">(</span><span·class="p"·data-group-id="1542845951-78">)</span><span·class="p">,</span><span·class="w">402 ····</span><span·class="n">Stop</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">now</span><span·class="p"·data-group-id="8824709158-78">(</span><span·class="p"·data-group-id="8824709158-78">)</span><span·class="p">,</span><span·class="w">
403 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foreach</span><span·class="p"·data-group-id="1542845951-79">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="1542845951-80">(</span><span·class="n">P</span><span·class="p"·data-group-id="1542845951-80">)</span><span·class="w">·</span><span·class="p">-&gt;</spa[·...·truncated·by·diffoscope;·len:·431,·SHA:·2f437d77f1b407664d6c4602b83055de86e9b0b169bb8504f9a1f6a94cff86d3·...·]-79">)</span><span·class="p">,</span><span·class="w">403 ····</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foreach</span><span·class="p"·data-group-id="8824709158-79">(</span><span·class="nf">fun</span><span·class="w">·</span><span·class="p"·data-group-id="8824709158-80">(</span><span·class="n">P</span><span·class="p"·data-group-id="8824709158-80">)</span><span·class="w">·</span><span·class="p">-&gt;</spa[·...·truncated·by·diffoscope;·len:·431,·SHA:·205a182c238ed031c91d26031182b1c0654605b5610daac866b0039979454840·...·]-79">)</span><span·class="p">,</span><span·class="w">
404 ····</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">now_diff</span><span·class="p"·data-group-id="1542845951-82">(</span><span·class="n">Stop</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Start</span><span·class="p"·data-group-id="1542845951-82">)</span><span·class="p">.</span></code></pre><h2·id="see-also"·class="section-heading">404 ····</span><span·class="nc">timer</span><span·class="p">:</span><span·class="nf">now_diff</span><span·class="p"·data-group-id="8824709158-82">(</span><span·class="n">Stop</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Start</span><span·class="p"·data-group-id="8824709158-82">)</span><span·class="p">.</span></code></pre><h2·id="see-also"·class="section-heading">
405 ··<a·href="#see-also"·class="hover-link">405 ··<a·href="#see-also"·class="hover-link">
406 ····<i·class="ri-link-m"·aria-hidden="true"></i>406 ····<i·class="ri-link-m"·aria-hidden="true"></i>
407 ··</a>407 ··</a>
408 ··<span·class="text">See·Also</span>408 ··<span·class="text">See·Also</span>
409 </h2>409 </h2>
410 <p><a·href="lcnt.html">LCNT·Reference·Manual</a></p>410 <p><a·href="lcnt.html">LCNT·Reference·Manual</a></p>
411 </div>411 </div>
Offset 459, 15 lines modifiedOffset 459, 15 lines modified
459 ······<p·class="built-using">459 ······<p·class="built-using">
460 ········Built·using460 ········Built·using
461 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the461 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
462 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>462 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
463 ······</p>463 ······</p>
464 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>464 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
465 ····</footer>465 ····</footer>
466 ··</div>466 ··</div>
467 </main>467 </main>
468 </div>468 </div>
469 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>469 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
470 <script>470 <script>
471 ··document.addEventListener("DOMContentLoaded",·function·()·{471 ··document.addEventListener("DOMContentLoaded",·function·()·{
764 B
html2text {}
Max HTML report size reached
5.33 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/make.html
    
Offset 138, 16 lines modifiedOffset 138, 16 lines modified
138 <p><a·href="#all/1"><code·class="inline">make:all/0,1</code></a>·and·<a·href="#files/2"><code·class="inline">make:files/1,2</code></a>·first·looks·for138 <p><a·href="#all/1"><code·class="inline">make:all/0,1</code></a>·and·<a·href="#files/2"><code·class="inline">make:files/1,2</code></a>·first·looks·for
139 <code·class="inline">{emake,·Emake}</code>·in·options,·then·in·the·current·working·directory·for·a·file139 <code·class="inline">{emake,·Emake}</code>·in·options,·then·in·the·current·working·directory·for·a·file
140 named·<code·class="inline">Emakefile</code>.·If·present·<code·class="inline">Emake</code>·should·contain·elements·like·this:</p><pre><code·class="text">Modules.140 named·<code·class="inline">Emakefile</code>.·If·present·<code·class="inline">Emake</code>·should·contain·elements·like·this:</p><pre><code·class="text">Modules.
141 {Modules,Options}.</code></pre><p><code·class="inline">Modules</code>·is·an·atom·or·a·list·of·atoms.·It·can·be</p><ul><li>a·module·name,·for·exmaple,··<code·class="inline">file1</code></li><li>a·module·name·in·another·directory,·for·exmaple,·<code·class="inline">'../foo/file3'</code></li><li>a·set·of·modules·specified·with·a·wildcards,·for·exmaple,·<code·class="inline">'file*'</code></li><li>a·wildcard·indicating·all·modules·in·current·directory,·that·is:·<code·class="inline">'*'</code></li><li>a·list·of·any·of·the·above,·for·exmaple,·<code·class="inline">['file*','../foo/file3','File4']</code></li></ul><p><code·class="inline">Options</code>·is·a·list·of·compiler·options.</p><p><code·class="inline">Emakefile</code>·is·read·from·top·to·bottom.·If·a·module·matches·more·than·one·entry,141 {Modules,Options}.</code></pre><p><code·class="inline">Modules</code>·is·an·atom·or·a·list·of·atoms.·It·can·be</p><ul><li>a·module·name,·for·exmaple,··<code·class="inline">file1</code></li><li>a·module·name·in·another·directory,·for·exmaple,·<code·class="inline">'../foo/file3'</code></li><li>a·set·of·modules·specified·with·a·wildcards,·for·exmaple,·<code·class="inline">'file*'</code></li><li>a·wildcard·indicating·all·modules·in·current·directory,·that·is:·<code·class="inline">'*'</code></li><li>a·list·of·any·of·the·above,·for·exmaple,·<code·class="inline">['file*','../foo/file3','File4']</code></li></ul><p><code·class="inline">Options</code>·is·a·list·of·compiler·options.</p><p><code·class="inline">Emakefile</code>·is·read·from·top·to·bottom.·If·a·module·matches·more·than·one·entry,
142 the·first·match·is·used.·For·example,·the·following·<code·class="inline">Emakefile</code>·means·that142 the·first·match·is·used.·For·example,·the·following·<code·class="inline">Emakefile</code>·means·that
143 <code·class="inline">file1</code>·should·be·compiled·with·the·options·<code·class="inline">[debug_info,{i,&quot;../foo&quot;}]</code>,·while143 <code·class="inline">file1</code>·should·be·compiled·with·the·options·<code·class="inline">[debug_info,{i,&quot;../foo&quot;}]</code>,·while
144 all·other·files·in·the·current·directory·should·be·compiled·with·only·the144 all·other·files·in·the·current·directory·should·be·compiled·with·only·the
145 <code·class="inline">debug_info</code>·flag.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7524013950-1">{</span><span·class="ss">&#39;file1&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="7524013950-2">[</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="p"·data-group-id="7524013950-3">{</span><span·c[·...·truncated·by·diffoscope;·len:·230,·SHA:·bed636107a8356400590283cc0242cf1ee71ef36a2f171117b8a3ff2aade2206·...·]-1">}</span><span·class="p">.</span><span·class="w">145 <code·class="inline">debug_info</code>·flag.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="9712767636-1">{</span><span·class="ss">&#39;file1&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="9712767636-2">[</span><span·class="ss">debug_info</span><span·class="p">,</span><span·class="p"·data-group-id="9712767636-3">{</span><span·c[·...·truncated·by·diffoscope;·len:·230,·SHA:·827676fca19978fc63989a73195349f10f5cd73999527aa1ddc0e7bfe9abc790·...·]-1">}</span><span·class="p">.</span><span·class="w">
146 </span><span·class="p"·data-group-id="7524013950-4">{</span><span·class="ss">&#39;*&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="7524013950-5">[</span><span·class="ss">debug_info</span><span·class="p"·data-group-id="7524013950-5">]</span><span·class="p"·data-group-id="7524[·...·truncated·by·diffoscope;·len:·6,·SHA:·af9dc0a38bef36a13c3926cb7dd0012f024ee7d15f5e2e1586330c2f60264a3a·...·]-4">}</span><span·class="p">.</span></code></pre><h2·id="module-see-also"·class="section-heading">146 </span><span·class="p"·data-group-id="9712767636-4">{</span><span·class="ss">&#39;*&#39;</span><span·class="p">,</span><span·class="p"·data-group-id="9712767636-5">[</span><span·class="ss">debug_info</span><span·class="p"·data-group-id="9712767636-5">]</span><span·class="p"·data-group-id="9712[·...·truncated·by·diffoscope;·len:·6,·SHA:·928cb411673057b5e0b0130fe1d82821d3b69368bcc897cdf12d4debb8661a89·...·]-4">}</span><span·class="p">.</span></code></pre><h2·id="module-see-also"·class="section-heading">
147 ··<a·href="#module-see-also"·class="hover-link">147 ··<a·href="#module-see-also"·class="hover-link">
148 ····<i·class="ri-link-m"·aria-hidden="true"></i>148 ····<i·class="ri-link-m"·aria-hidden="true"></i>
149 ··</a>149 ··</a>
150 ··<span·class="text">See·Also</span>150 ··<span·class="text">See·Also</span>
151 </h2>151 </h2>
152 <p><a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html">The·Compiler·Application</a></p>152 <p><a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html">The·Compiler·Application</a></p>
153 ····</section>153 ····</section>
Offset 386, 15 lines modifiedOffset 386, 15 lines modified
386 ······<p·class="built-using">386 ······<p·class="built-using">
387 ········Built·using387 ········Built·using
388 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the388 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
389 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>389 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
390 ······</p>390 ······</p>
391 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>391 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
392 ····</footer>392 ····</footer>
393 ··</div>393 ··</div>
394 </main>394 </main>
395 </div>395 </div>
396 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>396 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
397 <script>397 <script>
398 ··document.addEventListener("DOMContentLoaded",·function·()·{398 ··document.addEventListener("DOMContentLoaded",·function·()·{
675 B
html2text {}
Max HTML report size reached
30.2 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/notes.html
    
Offset 133, 51 lines modifiedOffset 133, 51 lines modified
133 </h2>133 </h2>
134 <h3·id="fixed-bugs-and-malfunctions"·class="section-heading">134 <h3·id="fixed-bugs-and-malfunctions"·class="section-heading">
135 ··<a·href="#fixed-bugs-and-malfunctions"·class="hover-link">135 ··<a·href="#fixed-bugs-and-malfunctions"·class="hover-link">
136 ····<i·class="ri-link-m"·aria-hidden="true"></i>136 ····<i·class="ri-link-m"·aria-hidden="true"></i>
137 ··</a>137 ··</a>
138 ··<span·class="text">Fixed·Bugs·and·Malfunctions</span>138 ··<span·class="text">Fixed·Bugs·and·Malfunctions</span>
139 </h3>139 </h3>
140 <ul><li><p>Dialyzer·warnings·due·to·type·specs·added·in·<a·href="../../../../lib/runtime_tools-2.1/doc/html/dbg.html"><code·class="inline">dbg</code></a>·have·been·eliminated.</p><p>Own·Id:·OTP-18860</p></li><li><p>In·Erlang/OTP·26,·doing·a·<a·href="cover.html"><code·class="inline">cover</code></a>·analysis·on·the·<code·class="inline">line</code>·level·would·return·multiple·entries·for·lines·on·which·multiple·functions·were·defined.</p><p>For·example,·consider·this·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="0774734684-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="0774734684-1">)</span><span·class="p">.</span><span·class="w">140 <ul><li><p>Dialyzer·warnings·due·to·type·specs·added·in·<a·href="../../../../lib/runtime_tools-2.1/doc/html/dbg.html"><code·class="inline">dbg</code></a>·have·been·eliminated.</p><p>Own·Id:·OTP-18860</p></li><li><p>In·Erlang/OTP·26,·doing·a·<a·href="cover.html"><code·class="inline">cover</code></a>·analysis·on·the·<code·class="inline">line</code>·level·would·return·multiple·entries·for·lines·on·which·multiple·functions·were·defined.</p><p>For·example,·consider·this·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="7205051999-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="7205051999-1">)</span><span·class="p">.</span><span·class="w">
141 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="0774734684-2">(</span><span·class="p"·data-group-id="0774734684-3">[</span><span·class="ss">bar</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">baz</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·d6d503df26505b1a45673df036bbac648b2ffb27dd76d984fbdf4a503d29340c·...·]-2">)</span><span·class="p">.</span><span·class="w">141 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="7205051999-2">(</span><span·class="p"·data-group-id="7205051999-3">[</span><span·class="ss">bar</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">baz</span><span·class="p">/</span><span·[·...·truncated·by·diffoscope;·len:·113,·SHA:·144f9cb3f60c94b5363c25fafab793c1cd3894d5bfd55f5a549fb9bef9510721·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
142 </span><span·class="nf">bar</span><span·class="p"·data-group-id="0774734684-4">(</span><span·class="p"·data-group-id="0774734684-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">·</span><span·class="nf">baz</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·763b780abe571d0e5ef2f0401e4712cf349d0d472c56bb1950b1c9d8422b0172·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">not_ok</span><span·class="p">.</span></code></pre><p>In·Erlang/OTP·26,·analysing·on·the·<code·class="inline">line</code>·level·would·return·two·entries142 </span><span·class="nf">bar</span><span·class="p"·data-group-id="7205051999-4">(</span><span·class="p"·data-group-id="7205051999-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">.</span><span·class="w">·</span><span·class="nf">baz</span><spa[·...·truncated·by·diffoscope;·len:·90,·SHA:·9d3d3499156693c228dd188cdf8877c8e97230c2417d323656e67f22b1ec349b·...·]-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="ss">not_ok</span><span·class="p">.</span></code></pre><p>In·Erlang/OTP·26,·analysing·on·the·<code·class="inline">line</code>·level·would·return·two·entries
143 for·line·4:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">compile_module</span><span·class="p"·data-group-id="3361687687-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="3361687687-1">)</span><span·class="p">.</span><span·class="w">143 for·line·4:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">compile_module</span><span·class="p"·data-group-id="0505009212-1">(</span><span·class="ss">foo</span><span·class="p"·data-group-id="0505009212-1">)</span><span·class="p">.</span><span·class="w">
144 </span><span·class="p"·data-group-id="3361687687-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">foo</span><span·class="p"·data-group-id="3361687687-2">}</span><span·class="gp·unselectable">144 </span><span·class="p"·data-group-id="0505009212-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">foo</span><span·class="p"·data-group-id="0505009212-2">}</span><span·class="gp·unselectable">
145 2&gt;·</span><span·class="nc">foo</span><span·class="p">:</span><span·class="nf">bar</span><span·class="p"·data-group-id="3361687687-3">(</span><span·class="p"·data-group-id="3361687687-3">)</span><span·class="p">.</span><span·class="w">145 2&gt;·</span><span·class="nc">foo</span><span·class="p">:</span><span·class="nf">bar</span><span·class="p"·data-group-id="0505009212-3">(</span><span·class="p"·data-group-id="0505009212-3">)</span><span·class="p">.</span><span·class="w">
146 </span><span·class="ss">ok</span><span·class="gp·unselectable">146 </span><span·class="ss">ok</span><span·class="gp·unselectable">
147 3&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="3361687687-4">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">coverage</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">line</span><span·class="p"·data-group-id="3361687687-4">)</span><span·class="p">.</span><span·class="w">147 3&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="0505009212-4">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">coverage</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">line</span><span·class="p"·data-group-id="0505009212-4">)</span><span·class="p">.</span><span·class="w">
148 </span><span·class="p"·data-group-id="3361687687-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3361687687-6">[</span><span·class="p"·data-group-id="3361687687-7">{</span><span·class="p"·data-group-id="3361687687-8">{</span><span·class="ss">foo</spa[·...·truncated·by·diffoscope;·len:·977,·SHA:·b60a5c51b028c93d4c5528186c129674db2c266199499f1de717502bcff4dfa4·...·]-5">}</span><span·class="gp·unselectable">148 </span><span·class="p"·data-group-id="0505009212-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0505009212-6">[</span><span·class="p"·data-group-id="0505009212-7">{</span><span·class="p"·data-group-id="0505009212-8">{</span><span·class="ss">foo</spa[·...·truncated·by·diffoscope;·len:·977,·SHA:·c867187c6fc52c7c49a954082aa8ce765c4b07f23e13f49f27e1c8302d6fd924·...·]-5">}</span><span·class="gp·unselectable">
149 4&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="3361687687-13">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">calls</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">line</span><span·class="p"·data-group-id="3361687687-13">)</span><span·class="p">.</span><span·class="w">149 4&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="0505009212-13">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">calls</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">line</span><span·class="p"·data-group-id="0505009212-13">)</span><span·class="p">.</span><span·class="w">
150 </span><span·class="p"·data-group-id="3361687687-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="3361687687-15">[</span><span·class="p"·data-group-id="3361687687-16">{</span><span·class="p"·data-group-id="3361687687-17">{</span><span·class="ss">foo<[·...·truncated·by·diffoscope;·len:·1071,·SHA:·28238d4bd824f4a9ef88af18581a8c67e0e279d521bb53a1a0ee75d67ae10f50·...·]-1">)</span><span·class="p">.</span><span·class="w">150 </span><span·class="p"·data-group-id="0505009212-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0505009212-15">[</span><span·class="p"·data-group-id="0505009212-16">{</span><span·class="p"·data-group-id="0505009212-17">{</span><span·class="ss">foo<[·...·truncated·by·diffoscope;·len:·1071,·SHA:·f30c6f6b6072634f320511c006e0b841dd43b04bd73490c7371e38bf0db6cfd8·...·]-1">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p"·data-group-id="9243463195-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">foo</span><span·class="p"·data-group-id="9243463195-2">}</span><span·class="gp·unselectable">151 </span><span·class="p"·data-group-id="5731647781-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">foo</span><span·class="p"·data-group-id="5731647781-2">}</span><span·class="gp·unselectable">
152 2&gt;·</span><span·class="nc">foo</span><span·class="p">:</span><span·class="nf">bar</span><span·class="p"·data-group-id="9243463195-3">(</span><span·class="p"·data-group-id="9243463195-3">)</span><span·class="p">.</span><span·class="w">152 2&gt;·</span><span·class="nc">foo</span><span·class="p">:</span><span·class="nf">bar</span><span·class="p"·data-group-id="5731647781-3">(</span><span·class="p"·data-group-id="5731647781-3">)</span><span·class="p">.</span><span·class="w">
153 </span><span·class="ss">ok</span><span·class="gp·unselectable">153 </span><span·class="ss">ok</span><span·class="gp·unselectable">
154 3&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="9243463195-4">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">coverage</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">line</span><span·class="p"·data-group-id="9243463195-4">)</span><span·class="p">.</span><span·class="w">154 3&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="5731647781-4">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">coverage</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">line</span><span·class="p"·data-group-id="5731647781-4">)</span><span·class="p">.</span><span·class="w">
155 </span><span·class="p"·data-group-id="9243463195-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9243463195-6">[</span><span·class="p"·data-group-id="9243463195-7">{</span><span·class="p"·data-group-id="9243463195-8">{</span><span·class="ss">foo</spa[·...·truncated·by·diffoscope;·len:·455,·SHA:·c183241ec764b71ed667fb8b0d8043cf897039f91100a41459640885439adb4a·...·]-5">}</span><span·class="gp·unselectable">155 </span><span·class="p"·data-group-id="5731647781-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5731647781-6">[</span><span·class="p"·data-group-id="5731647781-7">{</span><span·class="p"·data-group-id="5731647781-8">{</span><span·class="ss">foo</spa[·...·truncated·by·diffoscope;·len:·455,·SHA:·951a9c2e5e801f47a6c75cd50c3c9b943281b7fe2d35661e1206b36f770f934e·...·]-5">}</span><span·class="gp·unselectable">
156 4&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="9243463195-10">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">calls</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">line</span><span·class="p"·data-group-id="9243463195-10">)</span><span·class="p">.</span><span·class="w">156 4&gt;·</span><span·class="nc">cover</span><span·class="p">:</span><span·class="nf">analyse</span><span·class="p"·data-group-id="5731647781-10">(</span><span·class="ss">foo</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">calls</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">line</span><span·class="p"·data-group-id="5731647781-10">)</span><span·class="p">.</span><span·class="w">
157 </span><span·class="p"·data-group-id="9243463195-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="9243463195-12">[</span><span·class="p"·data-group-id="9243463195-13">{</span><span·class="p"·data-group-id="9243463195-14">{</span><span·class="ss">foo<[·...·truncated·by·diffoscope;·len:·307,·SHA:·0b86576c700db9b62b732cf85dd64ac9268bf2d37c95741bd244056592f9fddb·...·]-11">}</span></code></pre><p>Own·Id:·OTP-18998·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/8159"·title="">GH-8159</a>,·<a·href="https://github.com/erlang/otp/pull/8182"·title="">PR-8182</a></p></li><li><p>Fixed·align·command·in·emacs·mode.</p><p>Own·Id:·OTP-19026·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8155"·title="">PR-8155</a></p></li></ul><h3·id="improvements-and-new-features"·class="section-heading">157 </span><span·class="p"·data-group-id="5731647781-11">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="5731647781-12">[</span><span·class="p"·data-group-id="5731647781-13">{</span><span·class="p"·data-group-id="5731647781-14">{</span><span·class="ss">foo<[·...·truncated·by·diffoscope;·len:·307,·SHA:·323f3177850095575074939d62a4a9b0b3d8b8c88366a5580e053e8223cb7040·...·]-11">}</span></code></pre><p>Own·Id:·OTP-18998·Aux·Id:·<a·href="https://github.com/erlang/otp/issues/8159"·title="">GH-8159</a>,·<a·href="https://github.com/erlang/otp/pull/8182"·title="">PR-8182</a></p></li><li><p>Fixed·align·command·in·emacs·mode.</p><p>Own·Id:·OTP-19026·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8155"·title="">PR-8155</a></p></li></ul><h3·id="improvements-and-new-features"·class="section-heading">
158 ··<a·href="#improvements-and-new-features"·class="hover-link">158 ··<a·href="#improvements-and-new-features"·class="hover-link">
159 ····<i·class="ri-link-m"·aria-hidden="true"></i>159 ····<i·class="ri-link-m"·aria-hidden="true"></i>
160 ··</a>160 ··</a>
161 ··<span·class="text">Improvements·and·New·Features</span>161 ··<span·class="text">Improvements·and·New·Features</span>
162 </h3>162 </h3>
163 <ul><li><p>Triple-Quoted·Strings·has·been·implemented·as·per·<a·href="https://www.erlang.org/eeps/eep-0064">EEP·64</a>.·See·<a·href="../../../../doc/system/data_types.html#string">String</a>·in·the·Reference·Manual.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="s">&quot;&quot;</span><span·class="s">&quot;163 <ul><li><p>Triple-Quoted·Strings·has·been·implemented·as·per·<a·href="https://www.erlang.org/eeps/eep-0064">EEP·64</a>.·See·<a·href="../../../../doc/system/data_types.html#string">String</a>·in·the·Reference·Manual.</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="s">&quot;&quot;</span><span·class="s">&quot;
164 ···a164 ···a
165 ···b165 ···b
166 ···c166 ···c
167 ···&quot;</span><span·class="s">&quot;&quot;</span><span·class="p">.</span><span·class="w">167 ···&quot;</span><span·class="s">&quot;&quot;</span><span·class="p">.</span><span·class="w">
168 </span><span·class="s">&quot;a\nb\nc&quot;</span></code></pre><p>Adjacent·string·literals·without·intervening·white·space·is·now·a·syntax·error,·to·avoid·possible·confusion·with·triple-quoted·strings.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="s">&quot;abc&quot;</span><span·class="s">&quot;xyz&quot;</span><span·class="p">.</span><span·class="w">168 </span><span·class="s">&quot;a\nb\nc&quot;</span></code></pre><p>Adjacent·string·literals·without·intervening·white·space·is·now·a·syntax·error,·to·avoid·possible·confusion·with·triple-quoted·strings.·For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="s">&quot;abc&quot;</span><span·class="s">&quot;xyz&quot;</span><span·class="p">.</span><span·class="w">
169 </span><span·class="s">&quot;xyz&quot;</span><span·class="p">.</span><span·class="w">169 </span><span·class="s">&quot;xyz&quot;</span><span·class="p">.</span><span·class="w">
170 </span><span·class="gt">*·1:6:·adjacent·string·literals·without·intervening·white·space</span></code></pre><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18750·Aux·Id:·OTP-18746,·<a·href="https://github.com/erlang/otp/pull/7313"·title="">PR-7313</a>,·<a·href="https://github.com/erlang/otp/pull/7451"·title="">PR-7451</a></p></li><li><p>There·is·a·new·tool·<a·href="tprof.html"><code·class="inline">tprof</code></a>,·which·combines·the·functionality·of·<a·href="eprof.html"><code·class="inline">eprof</code></a>·and·<a·href="cprof.html"><code·class="inline">cprof</code></a>·under·one·interface·and·adds·heap·profiling.·It·also·has·functionality·to·help·with·profiling·process·hierarchies.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="0928819104-1">(</span><span·class="ss">lists</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">seq</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0928819104-2">[</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·458,·SHA:·8df4d6c7f4ab019719df8da962e53d38a1c2739b71ce473dba10722efa7d4c23·...·]-1">)</span><span·class="p">.</span><span·class="w">170 </span><span·class="gt">*·1:6:·adjacent·string·literals·without·intervening·white·space</span></code></pre><p><strong><em>·POTENTIAL·INCOMPATIBILITY·</em></strong></p><p>Own·Id:·OTP-18750·Aux·Id:·OTP-18746,·<a·href="https://github.com/erlang/otp/pull/7313"·title="">PR-7313</a>,·<a·href="https://github.com/erlang/otp/pull/7451"·title="">PR-7451</a></p></li><li><p>There·is·a·new·tool·<a·href="tprof.html"><code·class="inline">tprof</code></a>,·which·combines·the·functionality·of·<a·href="eprof.html"><code·class="inline">eprof</code></a>·and·<a·href="cprof.html"><code·class="inline">cprof</code></a>·under·one·interface·and·adds·heap·profiling.·It·also·has·functionality·to·help·with·profiling·process·hierarchies.</p><p><em>Example</em>:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="8060062122-1">(</span><span·class="ss">lists</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">seq</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8060062122-2">[</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·458,·SHA:·48dbf9acd7c535d6c7d539d99fa7f2e425065463181a3098607fab9ce51231dc·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
171 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.92</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">··</span><span·class="o">--</span><span·class="w">··</span><span·class="mf">100.00</span><span·class="c1">%·of·total·***·</span><span·class="w">171 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.92</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">··</span><span·class="o">--</span><span·class="w">··</span><span·class="mf">100.00</span><span·class="c1">%·of·total·***·</span><span·class="w">
172 </span><span·class="n">FUNCTION</span><span·class="w">··········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="0928819104-4">[</span><span·class="w">·····</span><span·class="c1">%]</span><span·class="w">172 </span><span·class="n">FUNCTION</span><span·class="w">··········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="8060062122-4">[</span><span·class="w">·····</span><span·class="c1">%]</span><span·class="w">
173 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">······</span><span·class="mi">5</span><span·class="w">·····</span><span·class="mi">32</span><span·class="w">······</span><span·class="mf">6.40</span><span·class="w">··</span><span·class="p"·data-group-id="0928819104-5">[</span><span·class="mf">100.00</span><span·class="p"·data-group-id="0928819104-5">]</span><span·class="w">173 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">······</span><span·class="mi">5</span><span·class="w">·····</span><span·class="mi">32</span><span·class="w">······</span><span·class="mf">6.40</span><span·class="w">··</span><span·class="p"·data-group-id="8060062122-5">[</span><span·class="mf">100.00</span><span·class="p"·data-group-id="8060062122-5">]</span><span·class="w">
174 ····························</span><span·class="mi">32</span><span·class="w">············</span><span·class="p"·data-group-id="0928819104-6">[</span><span·class="w">·</span><span·class="mf">100.0</span><span·class="p"·data-group-id="0928819104-6">]</span><span·class="w">174 ····························</span><span·class="mi">32</span><span·class="w">············</span><span·class="p"·data-group-id="8060062122-6">[</span><span·class="w">·</span><span·class="mf">100.0</span><span·class="p"·data-group-id="8060062122-6">]</span><span·class="w">
175 </span><span·class="ss">ok</span></code></pre><p>Own·Id:·OTP-18756·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/6639"·title="">PR-6639</a></p></li><li><p>Native·coverage·support·has·been·implemented·in·the·JIT.·It·will··automatically·be·used·by·the·<a·href="cover.html"><code·class="inline">cover</code></a>·tool·to·reduce·the·execution·overhead·when·running·cover-compiled·code.</p><p>There·are·also·new·APIs·to·support·native·coverage·without·using·the·<code·class="inline">cover</code>·tool.</p><p>To·instrument·code·for·native·coverage·it·must·be·compiled·with·the·<a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html#line_coverage"><code·class="inline">line_coverage</code></a>·option.</p><p>To·enable·native·coverage·in·the·runtime·system,·start·it·like·so:</p><pre><code·class="text">$·erl·+JPcover·true</code></pre><p>There·are·also·the·following·new·functions·for·supporting·native·coverage:</p><ul><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#coverage_support/0"><code·class="inline">code:coverage_support/0</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage/2"><code·class="inline">code:get_coverage/2</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#reset_coverage/1"><code·class="inline">code:reset_coverage/1</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/0"><code·class="inline">code:get_coverage_mode/0</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/1"><code·class="inline">code:get_coverage_mode/1</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#set_coverage_mode/1"><code·class="inline">code:set_coverage_mode/1</code></a></li></ul><p>Own·Id:·OTP-18856·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7856"·title="">PR-7856</a></p></li><li><p>The·documentation·has·been·migrated·to·use·Markdown·and·ExDoc.</p><p>Own·Id:·OTP-18955·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8026"·title="">PR-8026</a></p></li><li><p>Improved·the·align·command·in·emacs·mode.</p><p>Own·Id:·OTP-19080·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8288"·title="">PR-8288</a></p></li></ul><h2·id="tools-3-6"·class="section-heading">175 </span><span·class="ss">ok</span></code></pre><p>Own·Id:·OTP-18756·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/6639"·title="">PR-6639</a></p></li><li><p>Native·coverage·support·has·been·implemented·in·the·JIT.·It·will··automatically·be·used·by·the·<a·href="cover.html"><code·class="inline">cover</code></a>·tool·to·reduce·the·execution·overhead·when·running·cover-compiled·code.</p><p>There·are·also·new·APIs·to·support·native·coverage·without·using·the·<code·class="inline">cover</code>·tool.</p><p>To·instrument·code·for·native·coverage·it·must·be·compiled·with·the·<a·href="../../../../lib/compiler-8.5.1/doc/html/compile.html#line_coverage"><code·class="inline">line_coverage</code></a>·option.</p><p>To·enable·native·coverage·in·the·runtime·system,·start·it·like·so:</p><pre><code·class="text">$·erl·+JPcover·true</code></pre><p>There·are·also·the·following·new·functions·for·supporting·native·coverage:</p><ul><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#coverage_support/0"><code·class="inline">code:coverage_support/0</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage/2"><code·class="inline">code:get_coverage/2</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#reset_coverage/1"><code·class="inline">code:reset_coverage/1</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/0"><code·class="inline">code:get_coverage_mode/0</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#get_coverage_mode/1"><code·class="inline">code:get_coverage_mode/1</code></a></li><li><a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#set_coverage_mode/1"><code·class="inline">code:set_coverage_mode/1</code></a></li></ul><p>Own·Id:·OTP-18856·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/7856"·title="">PR-7856</a></p></li><li><p>The·documentation·has·been·migrated·to·use·Markdown·and·ExDoc.</p><p>Own·Id:·OTP-18955·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8026"·title="">PR-8026</a></p></li><li><p>Improved·the·align·command·in·emacs·mode.</p><p>Own·Id:·OTP-19080·Aux·Id:·<a·href="https://github.com/erlang/otp/pull/8288"·title="">PR-8288</a></p></li></ul><h2·id="tools-3-6"·class="section-heading">
176 ··<a·href="#tools-3-6"·class="hover-link">176 ··<a·href="#tools-3-6"·class="hover-link">
177 ····<i·class="ri-link-m"·aria-hidden="true"></i>177 ····<i·class="ri-link-m"·aria-hidden="true"></i>
178 ··</a>178 ··</a>
179 ··<span·class="text">Tools·3.6</span>179 ··<span·class="text">Tools·3.6</span>
180 </h2>180 </h2>
181 <h3·id="improvements-and-new-features-1"·class="section-heading">181 <h3·id="improvements-and-new-features-1"·class="section-heading">
Offset 1498, 15 lines modifiedOffset 1498, 15 lines modified
1498 ······<p·class="built-using">1498 ······<p·class="built-using">
1499 ········Built·using1499 ········Built·using
1500 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1500 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1501 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1501 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1502 ······</p>1502 ······</p>
1503 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1503 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1504 ····</footer>1504 ····</footer>
1505 ··</div>1505 ··</div>
1506 </main>1506 </main>
1507 </div>1507 </div>
1508 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1508 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1509 <script>1509 <script>
1510 ··document.addEventListener("DOMContentLoaded",·function·()·{1510 ··document.addEventListener("DOMContentLoaded",·function·()·{
730 B
html2text {}
Max HTML report size reached
1.74 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/search.html
    
Offset 118, 15 lines modifiedOffset 118, 15 lines modified
118 <div·id="search">118 <div·id="search">
119 ··<h1>119 ··<h1>
120 ····<span></span>120 ····<span></span>
121 ··</h1>121 ··</h1>
  
122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>122 ··<div·class="loading"><div></div><div></div><div></div><div></div></div>
123 </div>123 </div>
124 <script·src="dist/search_data-98D0A8CC.js"></script>124 <script·src="dist/search_data-039E86C6.js"></script>
125 ····<footer·class="footer">125 ····<footer·class="footer">
126 ······<p>126 ······<p>
  
127 ········<span·class="line">127 ········<span·class="line">
128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">128 ··········<button·class="a-main·footer-button·display-quick-switch"·title="Search·HexDocs·packages">
129 ············Search·HexDocs129 ············Search·HexDocs
130 ··········</button>130 ··········</button>
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
460 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/tags.html
    
Offset 800, 15 lines modifiedOffset 800, 15 lines modified
800 ······<p·class="built-using">800 ······<p·class="built-using">
801 ········Built·using801 ········Built·using
802 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the802 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
803 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>803 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
804 ······</p>804 ······</p>
805 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>805 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
806 ····</footer>806 ····</footer>
807 ··</div>807 ··</div>
808 </main>808 </main>
809 </div>809 </div>
810 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>810 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
811 <script>811 <script>
812 ··document.addEventListener("DOMContentLoaded",·function·()·{812 ··document.addEventListener("DOMContentLoaded",·function·()·{
650 B
html2text {}
Max HTML report size reached
806 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/tools.epub
4.44 KB
zipinfo {}
Max HTML report size reached
93.7 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
40.8 KB
OEBPS/xref_chapter.xhtml
Max HTML report size reached
156 KB
OEBPS/tprof.xhtml
Max HTML report size reached
28.7 KB
OEBPS/notes.xhtml
Max HTML report size reached
3.89 KB
OEBPS/make.xhtml
Max HTML report size reached
57.2 KB
OEBPS/lcnt_chapter.xhtml
Max HTML report size reached
3.72 KB
OEBPS/fprof_chapter.xhtml
Max HTML report size reached
135 KB
OEBPS/fprof.xhtml
Max HTML report size reached
14.6 KB
OEBPS/erlang-el.xhtml
Max HTML report size reached
82.9 KB
OEBPS/cprof_chapter.xhtml
Max HTML report size reached
3.48 KB
OEBPS/cprof.xhtml
Max HTML report size reached
173 KB
OEBPS/cover_chapter.xhtml
Max HTML report size reached
7.32 KB
OEBPS/cover.xhtml
Max HTML report size reached
1.22 KB
OEBPS/content.opf
1.19 KB
OEBPS/content.opf
Max HTML report size reached
158 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/tprof.html
    
Offset 156, 199 lines modifiedOffset 156, 199 lines modified
156 The·<code·class="inline">tprof</code>·results·will·probably·be·incorrect·when·the·profiled·code·was156 The·<code·class="inline">tprof</code>·results·will·probably·be·incorrect·when·the·profiled·code·was
157 reloading·during·a·profiling·session.</p></blockquote><h2·id="module-ad-hoc-profiling"·class="section-heading">157 reloading·during·a·profiling·session.</p></blockquote><h2·id="module-ad-hoc-profiling"·class="section-heading">
158 ··<a·href="#module-ad-hoc-profiling"·class="hover-link">158 ··<a·href="#module-ad-hoc-profiling"·class="hover-link">
159 ····<i·class="ri-link-m"·aria-hidden="true"></i>159 ····<i·class="ri-link-m"·aria-hidden="true"></i>
160 ··</a>160 ··</a>
161 ··<span·class="text">Ad-hoc·profiling</span>161 ··<span·class="text">Ad-hoc·profiling</span>
162 </h2>162 </h2>
163 <p>Ad-hoc·profiling·is·convenient·for·profiling·a·single·function·call.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="8087140384-1">(</span><span·class="ss">lists</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">seq</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8087140384-2">[</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·458,·SHA:·687eba0ecfd77e15be43e5fb57f26346c3f65a170dbc65a1cfc2d6f61e4f82d8·...·]-1">)</span><span·class="p">.</span><span·class="w">163 <p>Ad-hoc·profiling·is·convenient·for·profiling·a·single·function·call.</p><p>For·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="6186034840-1">(</span><span·class="ss">lists</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">seq</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6186034840-2">[</span><span·class="mi">1</span><spa[·...·truncated·by·diffoscope;·len:·458,·SHA:·e807a5734644b28ad48753c37953d506b70beea25811a2af195ba4c8d71b21c5·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
164 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.92</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">··</span><span·class="o">--</span><span·class="w">··</span><span·class="mf">100.00</span><span·class="c1">%·of·total·***·</span><span·class="w">164 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.92</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">··</span><span·class="o">--</span><span·class="w">··</span><span·class="mf">100.00</span><span·class="c1">%·of·total·***·</span><span·class="w">
165 </span><span·class="n">FUNCTION</span><span·class="w">··········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="8087140384-4">[</span><span·class="w">·····</span><span·class="c1">%]</span><span·class="w">165 </span><span·class="n">FUNCTION</span><span·class="w">··········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="6186034840-4">[</span><span·class="w">·····</span><span·class="c1">%]</span><span·class="w">
166 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">······</span><span·class="mi">5</span><span·class="w">·····</span><span·class="mi">32</span><span·class="w">······</span><span·class="mf">6.40</span><span·class="w">··</span><span·class="p"·data-group-id="8087140384-5">[</span><span·class="mf">100.00</span><span·class="p"·data-group-id="8087140384-5">]</span><span·class="w">166 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">······</span><span·class="mi">5</span><span·class="w">·····</span><span·class="mi">32</span><span·class="w">······</span><span·class="mf">6.40</span><span·class="w">··</span><span·class="p"·data-group-id="6186034840-5">[</span><span·class="mf">100.00</span><span·class="p"·data-group-id="6186034840-5">]</span><span·class="w">
167 ····························</span><span·class="mi">32</span><span·class="w">············</span><span·class="p"·data-group-id="8087140384-6">[</span><span·class="w">·</span><span·class="mf">100.0</span><span·class="p"·data-group-id="8087140384-6">]</span><span·class="w">167 ····························</span><span·class="mi">32</span><span·class="w">············</span><span·class="p"·data-group-id="6186034840-6">[</span><span·class="w">·</span><span·class="mf">100.0</span><span·class="p"·data-group-id="6186034840-6">]</span><span·class="w">
168 </span><span·class="ss">ok</span></code></pre><p>By·default·tracing·is·enabled·for·all·functions·in·all·modules.·When·funs168 </span><span·class="ss">ok</span></code></pre><p>By·default·tracing·is·enabled·for·all·functions·in·all·modules.·When·funs
169 are·created·in·the·interactive·shell,·parts·of·shell·code·are·also·traced:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="5301363576-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="5301363576-2">(</span><span·class="p"·data-group-id="5301363576-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">lists</s[·...·truncated·by·diffoscope;·len:·645,·SHA:·fc13d76cbd90b594e78041b0d05379cb4e29d574dc44b2fb1dbc149a4ded896e·...·]-1">)</span><span·class="p">.</span><span·class="w">169 are·created·in·the·interactive·shell,·parts·of·shell·code·are·also·traced:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="8567115475-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8567115475-2">(</span><span·class="p"·data-group-id="8567115475-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">lists</s[·...·truncated·by·diffoscope;·len:·645,·SHA:·3d20378eeb3aaa54f5cb071f8551197bf3f51d580e3f7a760de975d2190fa7ed·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
170 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.95</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">··</span><span·class="o">--</span><span·class="w">··</span><span·class="mf">100.00</span><span·class="c1">%·of·total·***·</span><span·class="w">170 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.95</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">··</span><span·class="o">--</span><span·class="w">··</span><span·class="mf">100.00</span><span·class="c1">%·of·total·***·</span><span·class="w">
171 </span><span·class="n">FUNCTION</span><span·class="w">···················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="5301363576-5">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">171 </span><span·class="n">FUNCTION</span><span·class="w">···················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="8567115475-5">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">
172 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">do_apply</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">············</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">······</span><span·class="mf">3.00</span><span·class="w">··</span><span·class="p"·data-group-id="5301363576-6">[</span><span·class="w">·</span><span·class="mf">3.61</span><span·class="p"·data-group-id="5301363576-6">]</span><span·class="w">172 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">do_apply</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">············</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">······</span><span·class="mf">3.00</span><span·class="w">··</span><span·class="p"·data-group-id="8567115475-6">[</span><span·class="w">·</span><span·class="mf">3.61</span><span·class="p"·data-group-id="8567115475-6">]</span><span·class="w">
173 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">match_list</span><span·class="p">/</span><span·class="mi">6</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">······</span><span·class="mf">3.00</span><span·class="w">··</span><span·class="p"·data-group-id="5301363576-7">[</span><span·class="w">·</span><span·class="mf">3.61</span><span·class="p"·data-group-id="5301363576-7">]</span><span·class="w">173 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">match_list</span><span·class="p">/</span><span·class="mi">6</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">······</span><span·class="mf">3.00</span><span·class="w">··</span><span·class="p"·data-group-id="8567115475-7">[</span><span·class="w">·</span><span·class="mf">3.61</span><span·class="p"·data-group-id="8567115475-7">]</span><span·class="w">
174 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">reverse</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">4</span><span·class="w">······</span><span·class="mf">4.00</span><span·class="w">··</span><span·class="p"·data-group-id="5301363576-8">[</span><span·class="w">·</span><span·class="mf">4.82</span><span·class="p"·data-group-id="5301363576-8">]</span><span·class="w">174 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">reverse</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">4</span><span·class="w">······</span><span·class="mf">4.00</span><span·class="w">··</span><span·class="p"·data-group-id="8567115475-8">[</span><span·class="w">·</span><span·class="mf">4.82</span><span·class="p"·data-group-id="8567115475-8">]</span><span·class="w">
175 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">expr_list</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">···········</span><span·class="mi">3</span><span·class="w">······</span><span·class="mi">7</span><span·class="w">······</span><span·class="mf">2.33</span><span·class="w">··</span><span·class="p"·data-group-id="5301363576-9">[</span><span·class="w">·</span><span·class="mf">8.43</span><span·class="p"·data-group-id="5301363576-9">]</span><span·class="w">175 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">expr_list</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">···········</span><span·class="mi">3</span><span·class="w">······</span><span·class="mi">7</span><span·class="w">······</span><span·class="mf">2.33</span><span·class="w">··</span><span·class="p"·data-group-id="8567115475-9">[</span><span·class="w">·</span><span·class="mf">8.43</span><span·class="p"·data-group-id="8567115475-9">]</span><span·class="w">
176 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">ret_expr</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">············</span><span·class="mi">4</span><span·class="w">·····</span><span·class="mi">16</span><span·class="w">······</span><span·class="mf">4.00</span><span·class="w">··</span><span·class="p"·data-group-id="5301363576-10">[</span><span·class="mf">19.28</span><span·class="p"·data-group-id="5301363576-10">]</span><span·class="w">176 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">ret_expr</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">············</span><span·class="mi">4</span><span·class="w">·····</span><span·class="mi">16</span><span·class="w">······</span><span·class="mf">4.00</span><span·class="w">··</span><span·class="p"·data-group-id="8567115475-10">[</span><span·class="mf">19.28</span><span·class="p"·data-group-id="8567115475-10">]</span><span·class="w">
177 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">merge_bindings</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·····</span><span·class="mi">18</span><span·class="w">······</span><span·class="mf">6.00</span><span·class="w">··</span><span·class="p"·data-group-id="5301363576-11">[</span><span·class="mf">21.69</span><span·class="p"·data-group-id="5301363576-11">]</span><span·class="w">177 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">merge_bindings</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·····</span><span·class="mi">18</span><span·class="w">······</span><span·class="mf">6.00</span><span·class="w">··</span><span·class="p"·data-group-id="8567115475-11">[</span><span·class="mf">21.69</span><span·class="p"·data-group-id="8567115475-11">]</span><span·class="w">
178 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">···············</span><span·class="mi">5</span><span·class="w">·····</span><span·class="mi">32</span><span·class="w">······</span><span·class="mf">6.40</span><span·class="w">··</span><span·class="p"·data-group-id="5301363576-12">[</span><span·class="mf">38.55</span><span·class="p"·data-group-id="5301363576-12">]</span><span·class="w">178 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">···············</span><span·class="mi">5</span><span·class="w">·····</span><span·class="mi">32</span><span·class="w">······</span><span·class="mf">6.40</span><span·class="w">··</span><span·class="p"·data-group-id="8567115475-12">[</span><span·class="mf">38.55</span><span·class="p"·data-group-id="8567115475-12">]</span><span·class="w">
179 ·····································</span><span·class="mi">83</span><span·class="w">············</span><span·class="p"·data-group-id="5301363576-13">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="5301363576-13">]</span><span·class="w">179 ·····································</span><span·class="mi">83</span><span·class="w">············</span><span·class="p"·data-group-id="8567115475-13">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="8567115475-13">]</span><span·class="w">
180 </span><span·class="ss">ok</span></code></pre><p>However,·it·is·possible·to·limit·the·trace·to·specific·functions·or·modules:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="7059591111-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="7059591111-2">(</span><span·class="p"·data-group-id="7059591111-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">lists</s[·...·truncated·by·diffoscope;·len:·248,·SHA:·581eb75ca31918d57f4b9772c1d7a2ce02ed03207e93cb6997e7289fae435ee0·...·]-3">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">180 </span><span·class="ss">ok</span></code></pre><p>However,·it·is·possible·to·limit·the·trace·to·specific·functions·or·modules:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="1749848882-1">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="1749848882-2">(</span><span·class="p"·data-group-id="1749848882-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">lists</s[·...·truncated·by·diffoscope;·len:·248,·SHA:·55d80bac3a81e8da25078c25ef25b7965105a56afbac774f7be37bd7f69c3317·...·]-3">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
181 ·················</span><span·class="p"·data-group-id="7059591111-4">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pattern</span><span·class="w"[·...·truncated·by·diffoscope;·len:·559,·SHA:·0963ba41318709f3c21235553eed9c014531d6f64281adc7a2acd2b762ddb6f5·...·]-1">)</span><span·class="p">.</span><span·class="w">181 ·················</span><span·class="p"·data-group-id="1749848882-4">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">pattern</span><span·class="w"[·...·truncated·by·diffoscope;·len:·559,·SHA:·8ed8680d0bd37eef14fb97d06f7393a725f5dec1c811451259b414a6bc74ed62·...·]-1">)</span><span·class="p">.</span><span·class="w">
182 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.98</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">··</span><span·class="o">--</span><span·class="w">··</span><span·class="mf">100.00</span><span·class="c1">%·of·total·***·</span><span·class="w">182 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.98</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">··</span><span·class="o">--</span><span·class="w">··</span><span·class="mf">100.00</span><span·class="c1">%·of·total·***·</span><span·class="w">
183 </span><span·class="n">FUNCTION</span><span·class="w">··········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="7059591111-7">[</span><span·class="w">·····</span><span·class="c1">%]</span><span·class="w">183 </span><span·class="n">FUNCTION</span><span·class="w">··········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="1749848882-7">[</span><span·class="w">·····</span><span·class="c1">%]</span><span·class="w">
184 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">······</span><span·class="mi">5</span><span·class="w">·····</span><span·class="mi">32</span><span·class="w">······</span><span·class="mf">6.40</span><span·class="w">··</span><span·class="p"·data-group-id="7059591111-8">[</span><span·class="mf">100.00</span><span·class="p"·data-group-id="7059591111-8">]</span><span·class="w">184 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">······</span><span·class="mi">5</span><span·class="w">·····</span><span·class="mi">32</span><span·class="w">······</span><span·class="mf">6.40</span><span·class="w">··</span><span·class="p"·data-group-id="1749848882-8">[</span><span·class="mf">100.00</span><span·class="p"·data-group-id="1749848882-8">]</span><span·class="w">
185 ····························</span><span·class="mi">32</span><span·class="w">············</span><span·class="p"·data-group-id="7059591111-9">[</span><span·class="w">·</span><span·class="mf">100.0</span><span·class="p"·data-group-id="7059591111-9">]</span><span·class="w">185 ····························</span><span·class="mi">32</span><span·class="w">············</span><span·class="p"·data-group-id="1749848882-9">[</span><span·class="w">·</span><span·class="mf">100.0</span><span·class="p"·data-group-id="1749848882-9">]</span><span·class="w">
  
186 </span><span·class="ss">ok</span></code></pre><p>Ad-hoc·profiling·results·can·be·printed·in·a·few·different·ways.·The·following186 </span><span·class="ss">ok</span></code></pre><p>Ad-hoc·profiling·results·can·be·printed·in·a·few·different·ways.·The·following
187 examples·use·the·<code·class="inline">test</code>·module·defined·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8552498631-1">(</span><span·class="ss">test</span><span·class="p"·data-group-id="8552498631-1">)</span><span·class="p">.</span><span·class="w"> 
188 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8552498631-2">(</span><span·class="p"·data-group-id="8552498631-3">[</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·[·...·truncated·by·diffoscope;·len:·90,·SHA:·4f9f4022a6cdd175a45c6ebe367437dddd9aeba12eeac4d0e9b9b28750335e19·...·]">)</span><span·class="p">.</span><span·class="w">187 examples·use·the·<code·class="inline">test</code>·module·defined·like·this:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="6007369687-1">(</span><span·class="ss">test<[·...·truncated·by·diffoscope;·len:·49,·SHA:·533cf6b65283aa12d0a34601c34dbeb31b688548add9d42009b0805f08df211d·...·]">)</span><span·class="p">.</span><span·class="w">
 188 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="6007369687-2">(</span><span·class="p"·data-group-id="6007369687-3">[</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="p"·data-group-id="6007369687-3">]</span><span·class="p"·data-group-id="6007369687-2">)</span><span·class="p">.</span><span·class="w">
189 </span><span·class="nf">test_spawn</span><span·class="p"·data-group-id="8552498631-4">(</span><span·class="p"·data-group-id="8552498631-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">189 </span><span·class="nf">test_spawn</span><span·class="p"·data-group-id="6007369687-4">(</span><span·class="p"·data-group-id="6007369687-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
190 ····</span><span·class="p"·data-group-id="8552498631-5">{</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p"·data-group-id="8552498631-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·691,·SHA:·2657f8c6042b935475fb075e0eeb42160a562b587302f17a3f150bdf6d6d1dac·...·]-6">)</span><span·class="p">,</span><span·class="w">190 ····</span><span·class="p"·data-group-id="6007369687-5">{</span><span·class="n">Pid</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p"·data-group-id="6007369687-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·cl[·...·truncated·by·diffoscope;·len:·691,·SHA:·d29d95509ce871fec2969eae4c151fa2703cf98cc2491460046cfe671303ec64·...·]-6">)</span><span·class="p">,</span><span·class="w">
191 ····</span><span·class="k">receive</span><span·class="w">191 ····</span><span·class="k">receive</span><span·class="w">
192 ········</span><span·class="p"·data-group-id="8552498631-9">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·151,·SHA:·e07aab31702515a45dbdc3a96bc43c0c4cbea08ebb51dd2260ec2f306e625ce6·...·]-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">192 ········</span><span·class="p"·data-group-id="6007369687-9">{</span><span·class="ss">&#39;DOWN&#39;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MRef</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">process</span><span·class="p">,</span><span·class="w">·<[·...·truncated·by·diffoscope;·len:·151,·SHA:·02f53d798e4536ccfb1a5e4ea2f028913514426301e5f9f47bfbcac45fc53e46·...·]-9">}</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
193 ············</span><span·class="ss">done</span><span·class="w">193 ············</span><span·class="ss">done</span><span·class="w">
194 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>By·default·per-process·statistics·is·shown:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="0096914068-1">(</span><span·class="ss">test</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">test_spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0096914068-2">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·365,·SHA:·ee713012660a8341c18a0983881a321b6f64b049f79e1fef0dfb5105376e5ad4·...·]-1">)</span><span·class="p">.</span><span·class="w">194 ····</span><span·class="k">end</span><span·class="p">.</span></code></pre><p>By·default·per-process·statistics·is·shown:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="6467555486-1">(</span><span·class="ss">test</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">test_spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6467555486-2">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·365,·SHA:·0ef3afc9c32813cb29479f48af288827b99d34105c123ab66d447058706f04e4·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
195 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.176</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">23.66</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">195 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.176</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">23.66</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">
196 </span><span·class="n">FUNCTION</span><span·class="w">················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="0096914068-4">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">196 </span><span·class="n">FUNCTION</span><span·class="w">················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="6467555486-4">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">
197 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_monitor</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="0096914068-5">[</span><span·class="w">·</span><span·class="mf">9.09</span><span·class="p"·data-group-id="0096914068-5">]</span><span·class="w">197 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_monitor</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="6467555486-5">[</span><span·class="w">·</span><span·class="mf">9.09</span><span·class="p"·data-group-id="6467555486-5">]</span><span·class="w">
198 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_opt</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="0096914068-6">[</span><span·class="mf">27.27</span><span·class="p"·data-group-id="0096914068-6">]</span><span·class="w">198 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_opt</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="6467555486-6">[</span><span·class="mf">27.27</span><span·class="p"·data-group-id="6467555486-6">]</span><span·class="w">
199 </span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">···········</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">14</span><span·class="w">········</span><span·class="mi">14</span><span·class="w">··</span><span·class="p"·data-group-id="0096914068-7">[</span><span·class="mf">63.64</span><span·class="p"·data-group-id="0096914068-7">]</span><span·class="w">199 </span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">···········</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">14</span><span·class="w">········</span><span·class="mi">14</span><span·class="w">··</span><span·class="p"·data-group-id="6467555486-7">[</span><span·class="mf">63.64</span><span·class="p"·data-group-id="6467555486-7">]</span><span·class="w">
200 ··································</span><span·class="mi">22</span><span·class="w">············</span><span·class="p"·data-group-id="0096914068-8">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="0096914068-8">]</span><span·class="w">200 ··································</span><span·class="mi">22</span><span·class="w">············</span><span·class="p"·data-group-id="6467555486-8">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="6467555486-8">]</span><span·class="w">
  
201 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.177</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">76.34</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">201 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.177</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">76.34</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">
202 </span><span·class="n">FUNCTION</span><span·class="w">···········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="0096914068-9">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">202 </span><span·class="n">FUNCTION</span><span·class="w">···········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="6467555486-9">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">
203 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">apply</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">7</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="0096914068-10">[</span><span·class="w">·</span><span·class="mf">9.86</span><span·class="p"·data-group-id="0096914068-10">]</span><span·class="w">203 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">apply</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">7</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="6467555486-10">[</span><span·class="w">·</span><span·class="mf">9.86</span><span·class="p"·data-group-id="6467555486-10">]</span><span·class="w">
204 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">·······</span><span·class="mi">9</span><span·class="w">·····</span><span·class="mi">64</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="0096914068-11">[</span><span·class="mf">90.14</span><span·class="p"·data-group-id="0096914068-11">]</span><span·class="w">204 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">·······</span><span·class="mi">9</span><span·class="w">·····</span><span·class="mi">64</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="6467555486-11">[</span><span·class="mf">90.14</span><span·class="p"·data-group-id="6467555486-11">]</span><span·class="w">
205 ·····························</span><span·class="mi">71</span><span·class="w">············</span><span·class="p"·data-group-id="0096914068-12">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="0096914068-12">]</span></code></pre><p>The·following·example·prints·the·combined·memory·allocation·of·all205 ·····························</span><span·class="mi">71</span><span·class="w">············</span><span·class="p"·data-group-id="6467555486-12">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="6467555486-12">]</span></code></pre><p>The·following·example·prints·the·combined·memory·allocation·of·all
206 processes,·sorted·by·the·total·number·of·allocated·words·in·descending206 processes,·sorted·by·the·total·number·of·allocated·words·in·descending
207 order:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="9731426419-1">(</span><span·class="ss">test</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">test_spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9731426419-2">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·8ec231f52aeac8ae0bb463f8ecd55c219534ea99f31a67bdfa6384f3fd8dff15·...·]-2">]</span><span·class="p">,</span><span·class="w">207 order:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="3765003798-1">(</span><span·class="ss">test</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">test_spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3765003798-2">[</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·e3e1943e8b369364b193c879dccb6309ac10c181e7d107ccb0aac8cfdd5e09fd·...·]-2">]</span><span·class="p">,</span><span·class="w">
208 ·················</span><span·class="p"·data-group-id="9731426419-3">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">report</span><span·class="w">[·...·truncated·by·diffoscope;·len:·560,·SHA:·c2039caf861f46b780ad40c5997850f0f969d27e89a78185f292f64077da4146·...·]-1">)</span><span·class="p">.</span><span·class="w">208 ·················</span><span·class="p"·data-group-id="3765003798-3">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">report</span><span·class="w">[·...·truncated·by·diffoscope;·len:·560,·SHA:·44b38b79e99af13c6f668c1ded9dd69a7ae39c7ba3467681ee6699c3138c32a2·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
209 </span><span·class="n">FUNCTION</span><span·class="w">················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="9731426419-6">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">209 </span><span·class="n">FUNCTION</span><span·class="w">················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="3765003798-6">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">
210 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">············</span><span·class="mi">9</span><span·class="w">·····</span><span·class="mi">64</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="9731426419-7">[</span><span·class="mf">68.82</span><span·class="p"·data-group-id="9731426419-7">]</span><span·class="w">210 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">············</span><span·class="mi">9</span><span·class="w">·····</span><span·class="mi">64</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="3765003798-7">[</span><span·class="mf">68.82</span><span·class="p"·data-group-id="3765003798-7">]</span><span·class="w">
211 </span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">···········</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">14</span><span·class="w">········</span><span·class="mi">14</span><span·class="w">··</span><span·class="p"·data-group-id="9731426419-8">[</span><span·class="mf">15.05</span><span·class="p"·data-group-id="9731426419-8">]</span><span·class="w">211 </span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">···········</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">14</span><span·class="w">········</span><span·class="mi">14</span><span·class="w">··</span><span·class="p"·data-group-id="3765003798-8">[</span><span·class="mf">15.05</span><span·class="p"·data-group-id="3765003798-8">]</span><span·class="w">
212 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">apply</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">··············</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">7</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="9731426419-9">[</span><span·class="w">·</span><span·class="mf">7.53</span><span·class="p"·data-group-id="9731426419-9">]</span><span·class="w">212 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">apply</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">··············</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">7</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="3765003798-9">[</span><span·class="w">·</span><span·class="mf">7.53</span><span·class="p"·data-group-id="3765003798-9">]</span><span·class="w">
213 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_opt</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="9731426419-10">[</span><span·class="w">·</span><span·class="mf">6.45</span><span·class="p"·data-group-id="9731426419-10">]</span><span·class="w">213 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_opt</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="3765003798-10">[</span><span·class="w">·</span><span·class="mf">6.45</span><span·class="p"·data-group-id="3765003798-10">]</span><span·class="w">
214 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_monitor</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="9731426419-11">[</span><span·class="w">·</span><span·class="mf">2.15</span><span·class="p"·data-group-id="9731426419-11">]</span><span·class="w">214 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_monitor</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="3765003798-11">[</span><span·class="w">·</span><span·class="mf">2.15</span><span·class="p"·data-group-id="3765003798-11">]</span><span·class="w">
215 ··································</span><span·class="mi">93</span><span·class="w">············</span><span·class="p"·data-group-id="9731426419-12">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="9731426419-12">]</span></code></pre><p>The·profiling·data·can·also·be·collected·for·further·inspection:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·un[·...·truncated·by·diffoscope;·len:·438,·SHA:·5a6fcf2dc4eb7873ebf8e77342b6cc7d357b9ef13a30b6b76db90b78683ef120·...·]-2">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">215 ··································</span><span·class="mi">93</span><span·class="w">············</span><span·class="p"·data-group-id="3765003798-12">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="3765003798-12">]</span></code></pre><p>The·profiling·data·can·also·be·collected·for·further·inspection:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·un[·...·truncated·by·diffoscope;·len:·438,·SHA:·43d4a9ab818f9b3a5934d7216c10526a6de2544a6e032027dff7569287ecb1a8·...·]-2">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">
216 ·······································</span><span·class="p"·data-group-id="1078580479-3">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">report</span><span·class="w">[·...·truncated·by·diffoscope;·len:·184,·SHA:·3d5285404013472b31b806f3697aba40319cc9c2c8b4b7f26c19d2825c4bdfc6·...·]-2">)</span><span·class="p">.</span><span·class="w">216 ·······································</span><span·class="p"·data-group-id="8806201776-3">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">report</span><span·class="w">[·...·truncated·by·diffoscope;·len:·184,·SHA:·ac01abf3b8cbe3d9b374adc549aa54815378d2306a0a361211e307c845006565·...·]-2">)</span><span·class="p">.</span><span·class="w">
217 </span><span·class="o">&lt;</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="o">&gt;</span><span·class="gp·unselectable">217 </span><span·class="o">&lt;</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="o">&gt;</span><span·class="gp·unselectable">
218 4&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1078580479-4">(</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">inspect</span><span·class="p"·data-group-id="1078580479-5">(</span><span·class="n">ProfileData</span><span·class="p">,</span><span·class="w">·</span><span·class="ss[·...·truncated·by·diffoscope;·len:·377,·SHA:·215a64b97a5d7c1e0734fdf89b3b10ab9b9aa1ad2e3cf8e5dc3ce34bf61e9354·...·]-4">)</span><span·class="p">.</span><span·class="w">218 4&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8806201776-4">(</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">inspect</span><span·class="p"·data-group-id="8806201776-5">(</span><span·class="n">ProfileData</span><span·class="p">,</span><span·class="w">·</span><span·class="ss[·...·truncated·by·diffoscope;·len:·377,·SHA:·f07e7de39e7bc51d7dda458f073ff9b2419af86e71fd29baa39199c5c78bc25d·...·]-4">)</span><span·class="p">.</span><span·class="w">
  
219 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.223</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">23.66</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">219 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.223</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">23.66</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">
220 </span><span·class="n">FUNCTION</span><span·class="w">················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="1078580479-7">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">220 </span><span·class="n">FUNCTION</span><span·class="w">················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="8806201776-7">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">
221 </span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">···········</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">14</span><span·class="w">········</span><span·class="mi">14</span><span·class="w">··</span><span·class="p"·data-group-id="1078580479-8">[</span><span·class="mf">63.64</span><span·class="p"·data-group-id="1078580479-8">]</span><span·class="w">221 </span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">···········</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">14</span><span·class="w">········</span><span·class="mi">14</span><span·class="w">··</span><span·class="p"·data-group-id="8806201776-8">[</span><span·class="mf">63.64</span><span·class="p"·data-group-id="8806201776-8">]</span><span·class="w">
222 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_opt</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="1078580479-9">[</span><span·class="mf">27.27</span><span·class="p"·data-group-id="1078580479-9">]</span><span·class="w">222 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_opt</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="8806201776-9">[</span><span·class="mf">27.27</span><span·class="p"·data-group-id="8806201776-9">]</span><span·class="w">
223 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_monitor</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="1078580479-10">[</span><span·class="w">·</span><span·class="mf">9.09</span><span·class="p"·data-group-id="1078580479-10">]</span><span·class="w">223 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_monitor</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="8806201776-10">[</span><span·class="w">·</span><span·class="mf">9.09</span><span·class="p"·data-group-id="8806201776-10">]</span><span·class="w">
224 ··································</span><span·class="mi">22</span><span·class="w">············</span><span·class="p"·data-group-id="1078580479-11">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="1078580479-11">]</span><span·class="w">224 ··································</span><span·class="mi">22</span><span·class="w">············</span><span·class="p"·data-group-id="8806201776-11">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="8806201776-11">]</span><span·class="w">
  
225 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.224</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">76.34</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">225 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.224</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">76.34</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">
226 </span><span·class="n">FUNCTION</span><span·class="w">···········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="1078580479-12">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">226 </span><span·class="n">FUNCTION</span><span·class="w">···········</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="8806201776-12">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">
227 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">·······</span><span·class="mi">9</span><span·class="w">·····</span><span·class="mi">64</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="1078580479-13">[</span><span·class="mf">90.14</span><span·class="p"·data-group-id="1078580479-13">]</span><span·class="w">227 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">seq_loop</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">·······</span><span·class="mi">9</span><span·class="w">·····</span><span·class="mi">64</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="8806201776-13">[</span><span·class="mf">90.14</span><span·class="p"·data-group-id="8806201776-13">]</span><span·class="w">
228 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">apply</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">7</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="1078580479-14">[</span><span·class="w">·</span><span·class="mf">9.86</span><span·class="p"·data-group-id="1078580479-14">]</span><span·class="w">228 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">apply</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">7</span><span·class="w">·········</span><span·class="mi">7</span><span·class="w">··</span><span·class="p"·data-group-id="8806201776-14">[</span><span·class="w">·</span><span·class="mf">9.86</span><span·class="p"·data-group-id="8806201776-14">]</span><span·class="w">
229 ·····························</span><span·class="mi">71</span><span·class="w">············</span><span·class="p"·data-group-id="1078580479-15">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="1078580479-15">]</span></code></pre><p>Which·processes·that·are·profiled·depends·on·the·profiling·type.</p><ul><li><p><code·class="inline">call_count</code>·(default)·counts·calls·in·all·processes.</p></li><li><p><code·class="inline">call_time</code>·and·<code·class="inline">call_memory</code>·limits·the·profiling·to·the·processes229 ·····························</span><span·class="mi">71</span><span·class="w">············</span><span·class="p"·data-group-id="8806201776-15">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="8806201776-15">]</span></code></pre><p>Which·processes·that·are·profiled·depends·on·the·profiling·type.</p><ul><li><p><code·class="inline">call_count</code>·(default)·counts·calls·in·all·processes.</p></li><li><p><code·class="inline">call_time</code>·and·<code·class="inline">call_memory</code>·limits·the·profiling·to·the·processes
230 spawned·from·the·user-provided·function·(using·the·<code·class="inline">set_on_spawn</code>230 spawned·from·the·user-provided·function·(using·the·<code·class="inline">set_on_spawn</code>
231 option·for·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>).</p></li></ul><p><code·class="inline">call_time</code>·and·<code·class="inline">call_memory</code>·can·be·restricted·to·profile·a·single·process:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="2159068876-1">(</span><span·class="ss">test</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">test_spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2159068876-2">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·88f50f8855e1c6de40dd5208c43afb82303cc87d8d932ece5c4e0cf7cebb0bc3·...·]-2">]</span><span·class="p">,</span><span·class="w">231 option·for·<a·href="../../../../erts-15.0.1/doc/html/erlang.html#trace/3"><code·class="inline">erlang:trace/3</code></a>).</p></li></ul><p><code·class="inline">call_time</code>·and·<code·class="inline">call_memory</code>·can·be·restricted·to·profile·a·single·process:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="2218532174-1">(</span><span·class="ss">test</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">test_spawn</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2218532174-2">[</span><span·class="p"·data-gro[·...·truncated·by·diffoscope;·len:·17,·SHA:·bfa3e4a8236259983deb37bdd36646994500cf2c2edfa8d1043539d7c83824c2·...·]-2">]</span><span·class="p">,</span><span·class="w">
232 ·················</span><span·class="p"·data-group-id="2159068876-3">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">set_on_spawn</span><span·class[·...·truncated·by·diffoscope;·len:·188,·SHA:·83ea5c6f809b7a2bc1f6876c2481ba9ae55affea22573878d7cd022048a5f1c4·...·]-1">)</span><span·class="p">.</span><span·class="w">232 ·················</span><span·class="p"·data-group-id="2218532174-3">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">set_on_spawn</span><span·class[·...·truncated·by·diffoscope;·len:·188,·SHA:·0d4e713b407fa0f8d119b0f8b7de3ecbe1fcefba66fa34e968754f867a95e689·...·]-1">)</span><span·class="p">.</span><span·class="w">
  
233 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.183</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">100.00</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">233 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.183</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">100.00</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">
234 </span><span·class="n">FUNCTION</span><span·class="w">················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="2159068876-4">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">234 </span><span·class="n">FUNCTION</span><span·class="w">················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="2218532174-4">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">
235 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_monitor</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="2159068876-5">[</span><span·class="w">·</span><span·class="mf">9.09</span><span·class="p"·data-group-id="2159068876-5">]</span><span·class="w">235 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_monitor</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="2218532174-5">[</span><span·class="w">·</span><span·class="mf">9.09</span><span·class="p"·data-group-id="2218532174-5">]</span><span·class="w">
236 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_opt</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="2159068876-6">[</span><span·class="mf">27.27</span><span·class="p"·data-group-id="2159068876-6">]</span><span·class="w">236 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">spawn_opt</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="2218532174-6">[</span><span·class="mf">27.27</span><span·class="p"·data-group-id="2218532174-6">]</span><span·class="w">
237 </span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">···········</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">14</span><span·class="w">········</span><span·class="mi">14</span><span·class="w">··</span><span·class="p"·data-group-id="2159068876-7">[</span><span·class="mf">63.64</span><span·class="p"·data-group-id="2159068876-7">]</span></code></pre><p><a·href=""·id="pg_example"></a></p><p>Erlang·programs·can·perform·expensive·operations·in·other·processes237 </span><span·class="nc">test</span><span·class="p">:</span><span·class="ss">test_spawn</span><span·class="p">/</span><span·class="mi">0</span><span·class="w">···········</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">14</span><span·class="w">········</span><span·class="mi">14</span><span·class="w">··</span><span·class="p"·data-group-id="2218532174-7">[</span><span·class="mf">63.64</span><span·class="p"·data-group-id="2218532174-7">]</span></code></pre><p><a·href=""·id="pg_example"></a></p><p>Erlang·programs·can·perform·expensive·operations·in·other·processes
238 than·the·original·one.·You·can·include·multiple,·new,·or·even·all238 than·the·original·one.·You·can·include·multiple,·new,·or·even·all
239 processes·in·the·trace·when·measuring·time·or·memory:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">7&gt;·</span><span·class="nc">pg</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="8920640587-1">(</span><span·class="p"·data-group-id="8920640587-1">)</span><span·class="p">.</span><span·class="w">239 processes·in·the·trace·when·measuring·time·or·memory:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">7&gt;·</span><span·class="nc">pg</span><span·class="p">:</span><span·class="nf">start_link</span><span·class="p"·data-group-id="2344717963-1">(</span><span·class="p"·data-group-id="2344717963-1">)</span><span·class="p">.</span><span·class="w">
240 </span><span·class="p"·data-group-id="8920640587-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.252</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="8920640587-2">}</span><span·class="gp·unselectable">240 </span><span·class="p"·data-group-id="2344717963-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.252</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="2344717963-2">}</span><span·class="gp·unselectable">
241 8&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="8920640587-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="8920640587-4">(</span><span·class="p"·data-group-id="8920640587-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">pg</span[·...·truncated·by·diffoscope;·len:·358,·SHA:·3ceab09bae2ff363e4954a212c0dfef5f225f18b648e1b5750df540249cc234d·...·]-5">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">241 8&gt;·</span><span·class="nc">tprof</span><span·class="p">:</span><span·class="nf">profile</span><span·class="p"·data-group-id="2344717963-3">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="2344717963-4">(</span><span·class="p"·data-group-id="2344717963-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">pg</span[·...·truncated·by·diffoscope;·len:·358,·SHA:·e3e76f47179e8aa46484be45f018ea9666d01097e224cc89c17b2872112a50ff·...·]-5">)</span><span·class="w">·</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
242 ·················</span><span·class="p"·data-group-id="8920640587-7">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">rootset</span><span·class="w"[·...·truncated·by·diffoscope;·len:·287,·SHA:·39ca8172e738188e1016145f7bf4b65b3deca7a1bb3b1a286f062db42060103d·...·]-3">)</span><span·class="p">.</span><span·class="w">242 ·················</span><span·class="p"·data-group-id="2344717963-7">#{</span><span·class="ss">type</span><span·class="w">·</span><span·class="p">=&gt;</span><span·class="w">·</span><span·class="ss">call_memory</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">rootset</span><span·class="w"[·...·truncated·by·diffoscope;·len:·287,·SHA:·d156bc5231a98bb9eeb17a5ce25e77a1934144971ceac3b264970f8cf3af96d2·...·]-3">)</span><span·class="p">.</span><span·class="w">
243 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.252</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">52.86</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">243 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.252</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">52.86</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">
244 </span><span·class="n">FUNCTION</span><span·class="w">······················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-9">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">244 </span><span·class="n">FUNCTION</span><span·class="w">······················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-9">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">
245 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">leave_local_update_ets</span><span·class="p">/</span><span·class="mi">5</span><span·class="w">·······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-10">[</span><span·class="w">·</span><span·class="mf">1.80</span><span·class="p"·data-group-id="8920640587-10">]</span><span·class="w">245 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">leave_local_update_ets</span><span·class="p">/</span><span·class="mi">5</span><span·class="w">·······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">2</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-10">[</span><span·class="w">·</span><span·class="mf">1.80</span><span·class="p"·data-group-id="2344717963-10">]</span><span·class="w">
246 </span><span·class="nc">gen</span><span·class="p">:</span><span·class="ss">reply</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·······················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-11">[</span><span·class="w">·</span><span·class="mf">2.70</span><span·class="p"·data-group-id="8920640587-11">]</span><span·class="w">246 </span><span·class="nc">gen</span><span·class="p">:</span><span·class="ss">reply</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·······················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-11">[</span><span·class="w">·</span><span·class="mf">2.70</span><span·class="p"·data-group-id="2344717963-11">]</span><span·class="w">
247 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">monitor</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">··················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-12">[</span><span·class="w">·</span><span·class="mf">2.70</span><span·class="p"·data-group-id="8920640587-12">]</span><span·class="w">247 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">monitor</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">··················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-12">[</span><span·class="w">·</span><span·class="mf">2.70</span><span·class="p"·data-group-id="2344717963-12">]</span><span·class="w">
248 </span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="ss">try_handle_call</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-13">[</span><span·class="w">·</span><span·class="mf">2.70</span><span·class="p"·data-group-id="8920640587-13">]</span><span·class="w">248 </span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="ss">try_handle_call</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">······</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-13">[</span><span·class="w">·</span><span·class="mf">2.70</span><span·class="p"·data-group-id="2344717963-13">]</span><span·class="w">
249 </span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="ss">try_dispatch</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">·········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-14">[</span><span·class="w">·</span><span·class="mf">2.70</span><span·class="p"·data-group-id="8920640587-14">]</span><span·class="w">249 </span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="ss">try_dispatch</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">·········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-14">[</span><span·class="w">·</span><span·class="mf">2.70</span><span·class="p"·data-group-id="2344717963-14">]</span><span·class="w">
250 </span><span·class="nc">maps</span><span·class="p">:</span><span·class="ss">iterator</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">···················</span><span·class="mi">2</span><span·class="w">······</span><span·class="mi">4</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-15">[</span><span·class="w">·</span><span·class="mf">3.60</span><span·class="p"·data-group-id="8920640587-15">]</span><span·class="w">250 </span><span·class="nc">maps</span><span·class="p">:</span><span·class="ss">iterator</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">···················</span><span·class="mi">2</span><span·class="w">······</span><span·class="mi">4</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-15">[</span><span·class="w">·</span><span·class="mf">3.60</span><span·class="p"·data-group-id="2344717963-15">]</span><span·class="w">
251 </span><span·class="nc">maps</span><span·class="p">:</span><span·class="ss">take</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·······················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-16">[</span><span·class="w">·</span><span·class="mf">5.41</span><span·class="p"·data-group-id="8920640587-16">]</span><span·class="w">251 </span><span·class="nc">maps</span><span·class="p">:</span><span·class="ss">take</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">·······················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">6</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-16">[</span><span·class="w">·</span><span·class="mf">5.41</span><span·class="p"·data-group-id="2344717963-16">]</span><span·class="w">
252 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">join_local_update_ets</span><span·class="p">/</span><span·class="mi">5</span><span·class="w">········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">8</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-17">[</span><span·class="w">·</span><span·class="mf">7.21</span><span·class="p"·data-group-id="8920640587-17">]</span><span·class="w">252 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">join_local_update_ets</span><span·class="p">/</span><span·class="mi">5</span><span·class="w">········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">8</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-17">[</span><span·class="w">·</span><span·class="mf">7.21</span><span·class="p"·data-group-id="2344717963-17">]</span><span·class="w">
253 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">handle_info</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">··················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">8</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-18">[</span><span·class="w">·</span><span·class="mf">7.21</span><span·class="p"·data-group-id="8920640587-18">]</span><span·class="w">253 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">handle_info</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">··················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">8</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-18">[</span><span·class="w">·</span><span·class="mf">7.21</span><span·class="p"·data-group-id="2344717963-18">]</span><span·class="w">
254 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">handle_call</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">··················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">9</span><span·class="w">·········</span><span·class="mi">9</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-19">[</span><span·class="w">·</span><span·class="mf">8.11</span><span·class="p"·data-group-id="8920640587-19">]</span><span·class="w">254 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">handle_call</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">··················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">9</span><span·class="w">·········</span><span·class="mi">9</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-19">[</span><span·class="w">·</span><span·class="mf">8.11</span><span·class="p"·data-group-id="2344717963-19">]</span><span·class="w">
255 </span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">·················</span><span·class="mi">2</span><span·class="w">······</span><span·class="mi">9</span><span·class="w">·········</span><span·class="mi">4</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-20">[</span><span·class="w">·</span><span·class="mf">8.11</span><span·class="p"·data-group-id="8920640587-20">]</span><span·class="w">255 </span><span·class="nc">gen_server</span><span·class="p">:</span><span·class="ss">loop</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">·················</span><span·class="mi">2</span><span·class="w">······</span><span·class="mi">9</span><span·class="w">·········</span><span·class="mi">4</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-20">[</span><span·class="w">·</span><span·class="mf">8.11</span><span·class="p"·data-group-id="2344717963-20">]</span><span·class="w">
256 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="ss">lookup</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">······················</span><span·class="mi">2</span><span·class="w">·····</span><span·class="mi">10</span><span·class="w">·········</span><span·class="mi">5</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-21">[</span><span·class="w">·</span><span·class="mf">9.01</span><span·class="p"·data-group-id="8920640587-21">]</span><span·class="w">256 </span><span·class="nc">ets</span><span·class="p">:</span><span·class="ss">lookup</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">······················</span><span·class="mi">2</span><span·class="w">·····</span><span·class="mi">10</span><span·class="w">·········</span><span·class="mi">5</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-21">[</span><span·class="w">·</span><span·class="mf">9.01</span><span·class="p"·data-group-id="2344717963-21">]</span><span·class="w">
257 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">join_local</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">···················</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">11</span><span·class="w">········</span><span·class="mi">11</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-22">[</span><span·class="w">·</span><span·class="mf">9.91</span><span·class="p"·data-group-id="8920640587-22">]</span><span·class="w">257 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">join_local</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">···················</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">11</span><span·class="w">········</span><span·class="mi">11</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-22">[</span><span·class="w">·</span><span·class="mf">9.91</span><span·class="p"·data-group-id="2344717963-22">]</span><span·class="w">
258 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">notify_group</span><span·class="p">/</span><span·class="mi">5</span><span·class="w">·················</span><span·class="mi">2</span><span·class="w">·····</span><span·class="mi">16</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-23">[</span><span·class="mf">14.41</span><span·class="p"·data-group-id="8920640587-23">]</span><span·class="w">258 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">notify_group</span><span·class="p">/</span><span·class="mi">5</span><span·class="w">·················</span><span·class="mi">2</span><span·class="w">·····</span><span·class="mi">16</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-23">[</span><span·class="mf">14.41</span><span·class="p"·data-group-id="2344717963-23">]</span><span·class="w">
259 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">setelement</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">···············</span><span·class="mi">2</span><span·class="w">·····</span><span·class="mi">16</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-24">[</span><span·class="mf">14.41</span><span·class="p"·data-group-id="8920640587-24">]</span><span·class="w">259 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">setelement</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">···············</span><span·class="mi">2</span><span·class="w">·····</span><span·class="mi">16</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-24">[</span><span·class="mf">14.41</span><span·class="p"·data-group-id="2344717963-24">]</span><span·class="w">
260 ·······································</span><span·class="mi">111</span><span·class="w">············</span><span·class="p"·data-group-id="8920640587-25">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="8920640587-25">]</span><span·class="w">260 ·······································</span><span·class="mi">111</span><span·class="w">············</span><span·class="p"·data-group-id="2344717963-25">[</span><span·class="mf">100.0</span><span·class="p"·data-group-id="2344717963-25">]</span><span·class="w">
  
261 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.255</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">47.14</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">261 </span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="o">*</span><span·class="w">·</span><span·class="n">Process</span><span·class="w">·</span><span·class="o">&lt;</span><span·class="mf">0.255</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="w">····</span><span·class="o">--</span><span·class="w">·</span><span·class="mf">47.14</span><span·class="w">·</span><span·class="c1">%·of·total·allocations·***</span><span·class="w">
262 </span><span·class="n">FUNCTION</span><span·class="w">···················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-26">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">262 </span><span·class="n">FUNCTION</span><span·class="w">···················</span><span·class="n">CALLS</span><span·class="w">··</span><span·class="n">WORDS</span><span·class="w">··</span><span·class="n">PER</span><span·class="w">·</span><span·class="n">CALL</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-26">[</span><span·class="w">····</span><span·class="c1">%]</span><span·class="w">
263 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">match_list</span><span·class="p">/</span><span·class="mi">6</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-27">[</span><span·class="w">·</span><span·class="mf">3.03</span><span·class="p"·data-group-id="8920640587-27">]</span><span·class="w">263 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">match_list</span><span·class="p">/</span><span·class="mi">6</span><span·class="w">··········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-27">[</span><span·class="w">·</span><span·class="mf">3.03</span><span·class="p"·data-group-id="2344717963-27">]</span><span·class="w">
264 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">monitor</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">···············</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-28">[</span><span·class="w">·</span><span·class="mf">3.03</span><span·class="p"·data-group-id="8920640587-28">]</span><span·class="w">264 </span><span·class="nc">erlang</span><span·class="p">:</span><span·class="nb">monitor</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">···············</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">3</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-28">[</span><span·class="w">·</span><span·class="mf">3.03</span><span·class="p"·data-group-id="2344717963-28">]</span><span·class="w">
265 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">reverse</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">················</span><span·class="mi">2</span><span·class="w">······</span><span·class="mi">4</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-29">[</span><span·class="w">·</span><span·class="mf">4.04</span><span·class="p"·data-group-id="8920640587-29">]</span><span·class="w">265 </span><span·class="nc">lists</span><span·class="p">:</span><span·class="ss">reverse</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">················</span><span·class="mi">2</span><span·class="w">······</span><span·class="mi">4</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-29">[</span><span·class="w">·</span><span·class="mf">4.04</span><span·class="p"·data-group-id="2344717963-29">]</span><span·class="w">
266 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">join</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">······················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">4</span><span·class="w">·········</span><span·class="mi">4</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-30">[</span><span·class="w">·</span><span·class="mf">4.04</span><span·class="p"·data-group-id="8920640587-30">]</span><span·class="w">266 </span><span·class="nc">pg</span><span·class="p">:</span><span·class="ss">join</span><span·class="p">/</span><span·class="mi">3</span><span·class="w">······················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">4</span><span·class="w">·········</span><span·class="mi">4</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-30">[</span><span·class="w">·</span><span·class="mf">4.04</span><span·class="p"·data-group-id="2344717963-30">]</span><span·class="w">
267 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">add_bindings</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">5</span><span·class="w">·········</span><span·class="mi">5</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-31">[</span><span·class="w">·</span><span·class="mf">5.05</span><span·class="p"·data-group-id="8920640587-31">]</span><span·class="w">267 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">add_bindings</span><span·class="p">/</span><span·class="mi">2</span><span·class="w">········</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">5</span><span·class="w">·········</span><span·class="mi">5</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-31">[</span><span·class="w">·</span><span·class="mf">5.05</span><span·class="p"·data-group-id="2344717963-31">]</span><span·class="w">
268 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">do_apply</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">············</span><span·class="mi">2</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-32">[</span><span·class="w">·</span><span·class="mf">6.06</span><span·class="p"·data-group-id="8920640587-32">]</span><span·class="w">268 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">do_apply</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">············</span><span·class="mi">2</span><span·class="w">······</span><span·class="mi">6</span><span·class="w">·········</span><span·class="mi">3</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-32">[</span><span·class="w">·</span><span·class="mf">6.06</span><span·class="p"·data-group-id="2344717963-32">]</span><span·class="w">
269 </span><span·class="nc">gen</span><span·class="p">:</span><span·class="ss">call</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">·····················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">8</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-33">[</span><span·class="w">·</span><span·class="mf">8.08</span><span·class="p"·data-group-id="8920640587-33">]</span><span·class="w">269 </span><span·class="nc">gen</span><span·class="p">:</span><span·class="ss">call</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">·····················</span><span·class="mi">1</span><span·class="w">······</span><span·class="mi">8</span><span·class="w">·········</span><span·class="mi">8</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-33">[</span><span·class="w">·</span><span·class="mf">8.08</span><span·class="p"·data-group-id="2344717963-33">]</span><span·class="w">
270 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">expr_list</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">···········</span><span·class="mi">4</span><span·class="w">·····</span><span·class="mi">10</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-34">[</span><span·class="mf">10.10</span><span·class="p"·data-group-id="8920640587-34">]</span><span·class="w">270 </span><span·class="nc">erl_eval</span><span·class="p">:</span><span·class="ss">expr_list</span><span·class="p">/</span><span·class="mi">7</span><span·class="w">···········</span><span·class="mi">4</span><span·class="w">·····</span><span·class="mi">10</span><span·class="w">·········</span><span·class="mi">2</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-34">[</span><span·class="mf">10.10</span><span·class="p"·data-group-id="2344717963-34">]</span><span·class="w">
271 </span><span·class="nc">gen</span><span·class="p">:</span><span·class="ss">do_call</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··················</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">16</span><span·class="w">········</span><span·class="mi">16</span><span·class="w">··</span><span·class="p"·data-group-id="8920640587-35">[</span><span·class="mf">16.16</span><span·class="p"·data-group-id="8920640587-35">]</span><span·class="w">271 </span><span·class="nc">gen</span><span·class="p">:</span><span·class="ss">do_call</span><span·class="p">/</span><span·class="mi">4</span><span·class="w">··················</span><span·class="mi">1</span><span·class="w">·····</span><span·class="mi">16</span><span·class="w">········</span><span·class="mi">16</span><span·class="w">··</span><span·class="p"·data-group-id="2344717963-35">[</span><span·class="mf">16.16</span><span·class="p"·data-group-id="2344717963-35">]</span><span·class="w">
Max diff block lines reached; 54935/160621 bytes (34.20%) of diff not shown.
601 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/xref.html
    
Offset 3722, 15 lines modifiedOffset 3722, 15 lines modified
3722 ······<p·class="built-using">3722 ······<p·class="built-using">
3723 ········Built·using3723 ········Built·using
3724 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3724 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3725 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3725 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3726 ······</p>3726 ······</p>
3727 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3727 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3728 ····</footer>3728 ····</footer>
3729 ··</div>3729 ··</div>
3730 </main>3730 </main>
3731 </div>3731 </div>
3732 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3732 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3733 <script>3733 <script>
3734 ··document.addEventListener("DOMContentLoaded",·function·()·{3734 ··document.addEventListener("DOMContentLoaded",·function·()·{
677 B
html2text {}
Max HTML report size reached
42.3 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/xref_chapter.html
    
Offset 136, 69 lines modifiedOffset 136, 69 lines modified
136 reading;·not·all·of·the·concepts·used·are·explained,·and·it·is·assumed·that·the136 reading;·not·all·of·the·concepts·used·are·explained,·and·it·is·assumed·that·the
137 <a·href="xref.html">reference·manual</a>·has·been·at·least·skimmed.</p><h2·id="module-check"·class="section-heading">137 <a·href="xref.html">reference·manual</a>·has·been·at·least·skimmed.</p><h2·id="module-check"·class="section-heading">
138 ··<a·href="#module-check"·class="hover-link">138 ··<a·href="#module-check"·class="hover-link">
139 ····<i·class="ri-link-m"·aria-hidden="true"></i>139 ····<i·class="ri-link-m"·aria-hidden="true"></i>
140 ··</a>140 ··</a>
141 ··<span·class="text">Module·Check</span>141 ··<span·class="text">Module·Check</span>
142 </h2>142 </h2>
143 <p>Assume·we·want·to·check·the·following·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8246033201-1">(</span><span·class="ss">my_module</span><span·class="p"·data-group-id="8246033201-1">)</span><span·class="p">.</span><span·class="w">143 <p>Assume·we·want·to·check·the·following·module:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="9755878362-1">(</span><span·class="ss">my_module</span><span·class="p"·data-group-id="9755878362-1">)</span><span·class="p">.</span><span·class="w">
144 </span><span·class="w">144 </span><span·class="w">
145 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8246033201-2">(</span><span·class="p"·data-group-id="8246033201-3">[</span><span·class="ss">t</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="8246033201-3">]</span><span·class="p"·data-group-id="8246033201-2">)</span><span·class="p">.</span><span·class="w">145 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="9755878362-2">(</span><span·class="p"·data-group-id="9755878362-3">[</span><span·class="ss">t</span><span·class="p">/</span><span·class="mi">1</span><span·class="p"·data-group-id="9755878362-3">]</span><span·class="p"·data-group-id="9755878362-2">)</span><span·class="p">.</span><span·class="w">
  
146 </span><span·class="nf">t</span><span·class="p"·data-group-id="8246033201-4">(</span><span·class="n">A</span><span·class="p"·data-group-id="8246033201-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">146 </span><span·class="nf">t</span><span·class="p"·data-group-id="9755878362-4">(</span><span·class="n">A</span><span·class="p"·data-group-id="9755878362-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
147 ··</span><span·class="nc">my_module</span><span·class="p">:</span><span·class="nf">t2</span><span·class="p"·data-group-id="8246033201-5">(</span><span·class="n">A</span><span·class="p"·data-group-id="8246033201-5">)</span><span·class="p">.</span><span·class="w">147 ··</span><span·class="nc">my_module</span><span·class="p">:</span><span·class="nf">t2</span><span·class="p"·data-group-id="9755878362-5">(</span><span·class="n">A</span><span·class="p"·data-group-id="9755878362-5">)</span><span·class="p">.</span><span·class="w">
  
148 </span><span·class="nf">t2</span><span·class="p"·data-group-id="8246033201-6">(</span><span·class="p">_</span><span·class="p"·data-group-id="8246033201-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">148 </span><span·class="nf">t2</span><span·class="p"·data-group-id="9755878362-6">(</span><span·class="p">_</span><span·class="p"·data-group-id="9755878362-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
149 ··</span><span·class="ss">true</span><span·class="p">.</span></code></pre><p>Cross·reference·data·are·read·from·BEAM·files,·so·the·first·step·when·checking149 ··</span><span·class="ss">true</span><span·class="p">.</span></code></pre><p>Cross·reference·data·are·read·from·BEAM·files,·so·the·first·step·when·checking
150 an·edited·module·is·to·compile·it:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="1848835025-1">(</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">debug_info</span><span·class="p"·data-group-id="1848835025-1">)</span><span·class="p">.</span><span·class="w">150 an·edited·module·is·to·compile·it:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nf">c</span><span·class="p"·data-group-id="5872693317-1">(</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">debug_info</span><span·class="p"·data-group-id="5872693317-1">)</span><span·class="p">.</span><span·class="w">
151 </span><span·class="p">.</span><span·class="o">/</span><span·class="ss">my_module</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">10</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="ss">t2</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">unused</span><span·class="w">151 </span><span·class="p">.</span><span·class="o">/</span><span·class="ss">my_module</span><span·class="p">.</span><span·class="nc">erl</span><span·class="p">:</span><span·class="mi">10</span><span·class="p">:</span><span·class="w">·</span><span·class="n">Warning</span><span·class="p">:</span><span·class="w">·</span><span·class="ss">function</span><span·class="w">·</span><span·class="ss">t2</span><span·class="p">/</span><span·class="mi">1</span><span·class="w">·</span><span·class="ss">is</span><span·class="w">·</span><span·class="ss">unused</span><span·class="w">
152 </span><span·class="p"·data-group-id="1848835025-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_module</span><span·class="p"·data-group-id="1848835025-2">}</span></code></pre><p>The·<code·class="inline">debug_info</code>·option·ensures·that·the·BEAM·file·contains·debug·information,152 </span><span·class="p"·data-group-id="5872693317-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">my_module</span><span·class="p"·data-group-id="5872693317-2">}</span></code></pre><p>The·<code·class="inline">debug_info</code>·option·ensures·that·the·BEAM·file·contains·debug·information,
153 which·makes·it·possible·to·find·unused·local·functions.</p><p>The·module·can·now·be·checked·for·calls·to153 which·makes·it·possible·to·find·unused·local·functions.</p><p>The·module·can·now·be·checked·for·calls·to
154 <a·href="xref.html#deprecated_function">deprecated·functions</a>,·calls·to154 <a·href="xref.html#deprecated_function">deprecated·functions</a>,·calls·to
155 <a·href="xref.html#undefined_function">undefined·functions</a>,·and·for·unused·local155 <a·href="xref.html#undefined_function">undefined·functions</a>,·and·for·unused·local
156 functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">m</span><span·class="p"·data-group-id="8604512524-1">(</span><span·class="ss">my_module</span><span·class="p"·data-group-id="8604512524-1">)</span><span·class="w">156 functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">m</span><span·class="p"·data-group-id="9447304916-1">(</span><span·class="ss">my_module</span><span·class="p"·data-group-id="9447304916-1">)</span><span·class="w">
157 </span><span·class="p"·data-group-id="8604512524-2">[</span><span·class="p"·data-group-id="8604512524-3">{</span><span·class="ss">deprecated</span><span·class="p">,</span><span·class="p"·data-group-id="8604512524-4">[</span><span·class="p"·data-group-id="8604512524-4">]</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·e3f9962660e722878110115a63d83c0f8117238e2094228492f44f5844d76e50·...·]-3">}</span><span·class="p">,</span><span·class="w">157 </span><span·class="p"·data-group-id="9447304916-2">[</span><span·class="p"·data-group-id="9447304916-3">{</span><span·class="ss">deprecated</span><span·class="p">,</span><span·class="p"·data-group-id="9447304916-4">[</span><span·class="p"·data-group-id="9447304916-4">]</span><span·class="p"·d[·...·truncated·by·diffoscope;·len:·24,·SHA:·1ab495eb3812f360ec18b22d70086a34316ba45719aa33187c5ae334c586333d·...·]-3">}</span><span·class="p">,</span><span·class="w">
158 ·</span><span·class="p"·data-group-id="8604512524-5">{</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="p"·data-group-id="8604512524-6">[</span><span·class="p"·data-group-id="8604512524-7">{</span><span·class="p"·data-group-id="8604512524-8">{</span><span·class="ss">m[·...·truncated·by·diffoscope;·len:·575,·SHA:·348b21e5d28fadeac9d623b020d3530f579dbd29648cc0e666743d79dce7c905·...·]-5">}</span><span·class="p">,</span><span·class="w">158 ·</span><span·class="p"·data-group-id="9447304916-5">{</span><span·class="ss">undefined</span><span·class="p">,</span><span·class="p"·data-group-id="9447304916-6">[</span><span·class="p"·data-group-id="9447304916-7">{</span><span·class="p"·data-group-id="9447304916-8">{</span><span·class="ss">m[·...·truncated·by·diffoscope;·len:·575,·SHA:·007d38c9a4a83778988886e1b5763ebce2c5d7765c84b009f3ffcf150c4270d0·...·]-5">}</span><span·class="p">,</span><span·class="w">
159 ·</span><span·class="p"·data-group-id="8604512524-10">{</span><span·class="ss">unused</span><span·class="p">,</span><span·class="p"·data-group-id="8604512524-11">[</span><span·class="p"·data-group-id="8604512524-12">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="s[·...·truncated·by·diffoscope;·len:·264,·SHA:·f4c3cbf31c091859c5e7006357081e652064717e6df982a8b02315e6001d8d17·...·]-2">]</span></code></pre><p><code·class="inline">m/1</code>·is·also·suitable·for·checking·that·the·BEAM·file·of·a·module·that·is·about159 ·</span><span·class="p"·data-group-id="9447304916-10">{</span><span·class="ss">unused</span><span·class="p">,</span><span·class="p"·data-group-id="9447304916-11">[</span><span·class="p"·data-group-id="9447304916-12">{</span><span·class="ss">my_module</span><span·class="p">,</span><span·class="s[·...·truncated·by·diffoscope;·len:·264,·SHA:·911b51250ece0e345487eb8e0d73c3628807c96288f79de4a6da02d3776eae8e·...·]-2">]</span></code></pre><p><code·class="inline">m/1</code>·is·also·suitable·for·checking·that·the·BEAM·file·of·a·module·that·is·about
160 to·be·loaded·into·a·running·a·system·does·not·call·any·undefined·functions.·In160 to·be·loaded·into·a·running·a·system·does·not·call·any·undefined·functions.·In
161 either·case,·the·code·path·of·the·code·server·(see·the·module·<code·class="inline">code</code>)·is·used161 either·case,·the·code·path·of·the·code·server·(see·the·module·<code·class="inline">code</code>)·is·used
162 for·finding·modules·that·export·externally·called·functions·not·exported·by·the162 for·finding·modules·that·export·externally·called·functions·not·exported·by·the
163 checked·module·itself,·so·called·<a·href="xref.html#library_module">library·modules</a>.</p><h2·id="predefined-analysis"·class="section-heading">163 checked·module·itself,·so·called·<a·href="xref.html#library_module">library·modules</a>.</p><h2·id="predefined-analysis"·class="section-heading">
164 ··<a·href="#predefined-analysis"·class="hover-link">164 ··<a·href="#predefined-analysis"·class="hover-link">
165 ····<i·class="ri-link-m"·aria-hidden="true"></i>165 ····<i·class="ri-link-m"·aria-hidden="true"></i>
166 ··</a>166 ··</a>
167 ··<span·class="text">Predefined·Analysis</span>167 ··<span·class="text">Predefined·Analysis</span>
168 </h2>168 </h2>
169 <p>In·the·last·example·the·module·to·analyze·was·given·as·an·argument·to·<code·class="inline">m/1</code>,·and169 <p>In·the·last·example·the·module·to·analyze·was·given·as·an·argument·to·<code·class="inline">m/1</code>,·and
170 the·code·path·was·(implicitly)·used·as·<a·href="xref.html#library_path">library·path</a>.·In170 the·code·path·was·(implicitly)·used·as·<a·href="xref.html#library_path">library·path</a>.·In
171 this·example·an·<a·href="xref.html#xref_server">xref·server</a>·will·be·used,·which·makes·it171 this·example·an·<a·href="xref.html#xref_server">xref·server</a>·will·be·used,·which·makes·it
172 possible·to·analyze·applications·and·releases,·and·also·to·select·the·library172 possible·to·analyze·applications·and·releases,·and·also·to·select·the·library
173 path·explicitly.</p><p>Each·Xref·server·is·referred·to·by·a·unique·name.·The·name·is·given·when173 path·explicitly.</p><p>Each·Xref·server·is·referred·to·by·a·unique·name.·The·name·is·given·when
174 creating·the·server:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="6556374993-1">(</span><span·class="ss">s</span><span·class="p"·data-group-id="6556374993-1">)</span><span·class="p">.</span><span·class="w">174 creating·the·server:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">1&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="4115072973-1">(</span><span·class="ss">s</span><span·class="p"·data-group-id="4115072973-1">)</span><span·class="p">.</span><span·class="w">
175 </span><span·class="p"·data-group-id="6556374993-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.27</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="6556374993-2">}</span></code></pre><p>Next·the·system·to·be·analyzed·is·added·to·the·Xref·server.·Here·the·system·will175 </span><span·class="p"·data-group-id="4115072973-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="o">&lt;</span><span·class="mf">0.27</span><span·class="p">.</span><span·class="mi">0</span><span·class="o">&gt;</span><span·class="p"·data-group-id="4115072973-2">}</span></code></pre><p>Next·the·system·to·be·analyzed·is·added·to·the·Xref·server.·Here·the·system·will
176 be·OTP,·so·no·library·path·will·be·needed.·Otherwise,·when·analyzing·a·system176 be·OTP,·so·no·library·path·will·be·needed.·Otherwise,·when·analyzing·a·system
177 that·uses·OTP,·the·OTP·modules·are·typically·made·library·modules·by·setting·the177 that·uses·OTP,·the·OTP·modules·are·typically·made·library·modules·by·setting·the
178 library·path·to·the·default·OTP·code·path·(or·to·<code·class="inline">code_path</code>,·see·the178 library·path·to·the·default·OTP·code·path·(or·to·<code·class="inline">code_path</code>,·see·the
179 <a·href="xref.html#code_path">reference·manual</a>).·By·default,·the·names·of·read·BEAM179 <a·href="xref.html#code_path">reference·manual</a>).·By·default,·the·names·of·read·BEAM
180 files·and·warnings·are·output·when·adding·analyzed·modules,·but·these·messages180 files·and·warnings·are·output·when·adding·analyzed·modules,·but·these·messages
181 can·be·avoided·by·setting·default·values·of·some·options:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">set_default</span><span·class="p"·data-group-id="2530879699-1">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="2530879699-2">[</span><span·class="p"·data-group-id="2530879699-3">{</span><span·class="ss">verbose</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·415,·SHA:·b18ecde1d01501b68b731c1b2d759431f899749764c2a739f1e746a7703b3de0·...·]-1">)</span><span·class="p">.</span><span·class="w">181 can·be·avoided·by·setting·default·values·of·some·options:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">2&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">set_default</span><span·class="p"·data-group-id="6278646188-1">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="6278646188-2">[</span><span·class="p"·data-group-id="6278646188-3">{</span><span·class="ss">verbose</span><span·class="p">,</span>[·...·truncated·by·diffoscope;·len:·415,·SHA:·ce78b4fcfb4d0352525aa6cf4019488907e9a0e5abe9e5c8fd4848e16a8f1e1a·...·]-1">)</span><span·class="p">.</span><span·class="w">
182 </span><span·class="ss">ok</span><span·class="gp·unselectable">182 </span><span·class="ss">ok</span><span·class="gp·unselectable">
183 3&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">add_release</span><span·class="p"·data-group-id="2530879699-5">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="2530879699-6">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·326,·SHA:·8504e1d99b15510624d88d035d102058b61884f50e868dbc31e66f1d835547e3·...·]-5">)</span><span·class="p">.</span><span·class="w">183 3&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">add_release</span><span·class="p"·data-group-id="6278646188-5">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">lib_dir</span><span·class="p"·data-group-id="6278646188-6">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·326,·SHA:·35add6d5610f35cd13afa0365bb699a7662adfc24cb714cf315db451e05392d2·...·]-5">)</span><span·class="p">.</span><span·class="w">
184 </span><span·class="p"·data-group-id="2530879699-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">otp</span><span·class="p"·data-group-id="2530879699-8">}</span></code></pre><p><code·class="inline">add_release/3</code>·assumes·that·all·subdirectories·of·the·library·directory184 </span><span·class="p"·data-group-id="6278646188-8">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="ss">otp</span><span·class="p"·data-group-id="6278646188-8">}</span></code></pre><p><code·class="inline">add_release/3</code>·assumes·that·all·subdirectories·of·the·library·directory
185 returned·by·<a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#lib_dir/0"><code·class="inline">code:lib_dir()</code></a>·contain·applications;185 returned·by·<a·href="../../../../lib/kernel-10.0.1/doc/html/code.html#lib_dir/0"><code·class="inline">code:lib_dir()</code></a>·contain·applications;
186 the·effect·is·that·of·reading·all·BEAM·files·for·the·application.</p><p>It·is·now·easy·to·check·the·release·for·calls·to·undefined·functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">analyze</span><span·class="p"·data-group-id="9605438687-1">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">undefined_function_calls</span><span·class="p"·data-group-id="9605438687-1">)</span><span·class="p">.</span><span·class="w">186 the·effect·is·that·of·reading·all·BEAM·files·for·the·application.</p><p>It·is·now·easy·to·check·the·release·for·calls·to·undefined·functions:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">analyze</span><span·class="p"·data-group-id="9997238189-1">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">undefined_function_calls</span><span·class="p"·data-group-id="9997238189-1">)</span><span·class="p">.</span><span·class="w">
187 </span><span·class="p"·data-group-id="9605438687-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9605438687-3">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="96054[·...·truncated·by·diffoscope;·len:·456,·SHA:·479f13e92207e650385c20db4d48407d4782a6a1786af1d9e464805510469963·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·check·for·calls·to·undefined·functions·is·an·example·of·a·predefined187 </span><span·class="p"·data-group-id="9997238189-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="9997238189-3">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="99972[·...·truncated·by·diffoscope;·len:·456,·SHA:·53c95a88a81924fed634a79815845626e9b714828d919a1c409af151eef137ca·...·]-1">)</span><span·class="p">.</span></code></pre><p>The·check·for·calls·to·undefined·functions·is·an·example·of·a·predefined
188 analysis,·probably·the·most·useful·one.·Other·examples·are·the·analyses·that188 analysis,·probably·the·most·useful·one.·Other·examples·are·the·analyses·that
189 find·unused·local·functions,·or·functions·that·call·some·given·functions.·See189 find·unused·local·functions,·or·functions·that·call·some·given·functions.·See
190 the·<a·href="xref.html#analyze">analyze/2,3</a>·functions·for·a·complete·list·of·predefined190 the·<a·href="xref.html#analyze">analyze/2,3</a>·functions·for·a·complete·list·of·predefined
191 analyses.</p><p>Each·predefined·analysis·is·a·shorthand·for·a·<a·href="xref.html#query">query</a>,·a191 analyses.</p><p>Each·predefined·analysis·is·a·shorthand·for·a·<a·href="xref.html#query">query</a>,·a
192 sentence·of·a·tiny·language·providing·cross·reference·data·as·values·of192 sentence·of·a·tiny·language·providing·cross·reference·data·as·values·of
193 <a·href="xref.html#predefined_variable">predefined·variables</a>.·The·check·for·calls·to193 <a·href="xref.html#predefined_variable">predefined·variables</a>.·The·check·for·calls·to
194 undefined·functions·can·thus·be·stated·as·a·query:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">q</span><span·class="p"·data-group-id="0902377838-1">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;(XC·-·UC)·||·(XU·-·X·-·B)&quot;</span><span·class="p"·data-group-id="0902377838-1">)</span><span·class="p">.</span><span·class="w">194 undefined·functions·can·thus·be·stated·as·a·query:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="gp·unselectable">4&gt;·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">q</span><span·class="p"·data-group-id="4138066297-1">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;(XC·-·UC)·||·(XU·-·X·-·B)&quot;</span><span·class="p"·data-group-id="4138066297-1">)</span><span·class="p">.</span><span·class="w">
195 </span><span·class="p"·data-group-id="0902377838-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="0902377838-3">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="0902377838-3">]</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·400fd4787ddc3b0e4a4a5fc8f5ee855f85d7b5401640c191bdc50b88dab42b3a·...·]-2">}</span></code></pre><p>The·query·asks·for·the·restriction·of·external·calls·except·the·unresolved·calls195 </span><span·class="p"·data-group-id="4138066297-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="p"·data-group-id="4138066297-3">[</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p"·data-group-id="4138066297-3">]</span><span·[·...·truncated·by·diffoscope;·len:·35,·SHA:·339c7f0491003cffed22c0ffd012cefaf3d01e8a3152e494e8608f8ebc204b50·...·]-2">}</span></code></pre><p>The·query·asks·for·the·restriction·of·external·calls·except·the·unresolved·calls
196 to·calls·to·functions·that·are·externally·used·but·neither·exported·nor·built-in196 to·calls·to·functions·that·are·externally·used·but·neither·exported·nor·built-in
197 functions·(the·<code·class="inline">||</code>·operator·restricts·the·used·functions·while·the·<code·class="inline">|</code>·operator197 functions·(the·<code·class="inline">||</code>·operator·restricts·the·used·functions·while·the·<code·class="inline">|</code>·operator
198 restricts·the·calling·functions).·The·<code·class="inline">-</code>·operator·returns·the·difference·of·two198 restricts·the·calling·functions).·The·<code·class="inline">-</code>·operator·returns·the·difference·of·two
199 sets,·and·the·<code·class="inline">+</code>·operator·to·be·used·below·returns·the·union·of·two·sets.</p><p>The·relationships·between·the·predefined·variables·<code·class="inline">XU</code>,·<code·class="inline">X</code>,·<code·class="inline">B</code>·and·a·few199 sets,·and·the·<code·class="inline">+</code>·operator·to·be·used·below·returns·the·union·of·two·sets.</p><p>The·relationships·between·the·predefined·variables·<code·class="inline">XU</code>,·<code·class="inline">X</code>,·<code·class="inline">B</code>·and·a·few
200 others·are·worth·elaborating·upon.·The·reference·manual·mentions·two·ways·of200 others·are·worth·elaborating·upon.·The·reference·manual·mentions·two·ways·of
201 expressing·the·set·of·all·functions,·one·that·focuses·on·how·they·are·defined:201 expressing·the·set·of·all·functions,·one·that·focuses·on·how·they·are·defined:
202 <code·class="inline">X + L + B + U</code>,·and·one·that·focuses·on·how·they·are·used:·<code·class="inline">UU + LU + XU</code>.·The202 <code·class="inline">X + L + B + U</code>,·and·one·that·focuses·on·how·they·are·used:·<code·class="inline">UU + LU + XU</code>.·The
Offset 220, 16 lines modifiedOffset 220, 16 lines modified
220 </h2>220 </h2>
221 <p>The·module·check·and·the·predefined·analyses·are·useful,·but·limited.·Sometimes221 <p>The·module·check·and·the·predefined·analyses·are·useful,·but·limited.·Sometimes
222 more·flexibility·is·needed,·for·instance·one·might·not·need·to·apply·a·graph222 more·flexibility·is·needed,·for·instance·one·might·not·need·to·apply·a·graph
223 analysis·on·all·calls,·but·some·subset·will·do·equally·well.·That·flexibility·is223 analysis·on·all·calls,·but·some·subset·will·do·equally·well.·That·flexibility·is
224 provided·with·a·simple·language.·Below·are·some·expressions·of·the·language·with224 provided·with·a·simple·language.·Below·are·some·expressions·of·the·language·with
225 comments,·focusing·on·elements·of·the·language·rather·than·providing·useful225 comments,·focusing·on·elements·of·the·language·rather·than·providing·useful
226 examples.·The·analyzed·system·is·assumed·to·be·OTP,·so·in·order·to·run·the226 examples.·The·analyzed·system·is·assumed·to·be·OTP,·so·in·order·to·run·the
227 queries,·first·evaluate·these·calls:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8415101918-1">(</span><span·class="ss">s</span><span·class="p"·data-group-id="8415101918-1">)</span><span·class="p">.</span><span·class="w">227 queries,·first·evaluate·these·calls:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8700126467-1">(</span><span·class="ss">s</span><span·class="p"·data-group-id="8700126467-1">)</span><span·class="p">.</span><span·class="w">
228 </span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">add_release</span><span·class="p"·data-group-id="8415101918-2">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">root_dir</span><span·class="p"·data-group-id="8415101918-3">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·734a275c23983be89d8230187ed1e32a537d384fdbbc4d1d125fb2fccda55873·...·]-2">)</span><span·class="p">.</span></code></pre><ul><li><p><strong><code·class="inline">xref:q(s,·&quot;(Fun)·xref·:·Mod&quot;).</code></strong>·-·All·functions·of·the·<code·class="inline">xref</code>·module.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;xref·:·Mod·*·X&quot;).</code></strong>·-·All·exported·functions·of·the·<code·class="inline">xref</code>228 </span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">add_release</span><span·class="p"·data-group-id="8700126467-2">(</span><span·class="ss">s</span><span·class="p">,</span><span·class="w">·</span><span·class="nc">code</span><span·class="p">:</span><span·class="nf">root_dir</span><span·class="p"·data-group-id="8700126467-3">(</span><span·class="p"·data-grou[·...·truncated·by·diffoscope;·len:·69,·SHA:·fb64532b1633753981b712db2a504d22213b364ac115b2e487d4626465923aa2·...·]-2">)</span><span·class="p">.</span></code></pre><ul><li><p><strong><code·class="inline">xref:q(s,·&quot;(Fun)·xref·:·Mod&quot;).</code></strong>·-·All·functions·of·the·<code·class="inline">xref</code>·module.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;xref·:·Mod·*·X&quot;).</code></strong>·-·All·exported·functions·of·the·<code·class="inline">xref</code>
229 module.·The·first·operand·of·the·intersection·operator·<code·class="inline">*</code>·is·implicitly229 module.·The·first·operand·of·the·intersection·operator·<code·class="inline">*</code>·is·implicitly
230 converted·to·the·more·special·type·of·the·second·operand.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;(Mod)·tools&quot;).</code></strong>·-·All·modules·of·the·Tools·application.</p></li><li><p><strong><code·class="inline">xref:q(s,·'&quot;xref_.*&quot;·:·Mod').</code></strong>·-·All·modules·with·a·name·beginning·with230 converted·to·the·more·special·type·of·the·second·operand.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;(Mod)·tools&quot;).</code></strong>·-·All·modules·of·the·Tools·application.</p></li><li><p><strong><code·class="inline">xref:q(s,·'&quot;xref_.*&quot;·:·Mod').</code></strong>·-·All·modules·with·a·name·beginning·with
231 <code·class="inline">xref_</code>.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;#·E | X &quot;).</code></strong>·-·Number·of·calls·from·exported·functions.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;XC || L &quot;).</code></strong>·-·All·external·calls·to·local·functions.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;XC * LC&quot;).</code></strong>·-·All·calls·that·have·both·an·external·and·a·local231 <code·class="inline">xref_</code>.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;#·E | X &quot;).</code></strong>·-·Number·of·calls·from·exported·functions.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;XC || L &quot;).</code></strong>·-·All·external·calls·to·local·functions.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;XC * LC&quot;).</code></strong>·-·All·calls·that·have·both·an·external·and·a·local
232 version.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;(LLin)·(LC·*·XC)&quot;).</code></strong>·-·The·lines·where·the·local·calls·of·the232 version.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;(LLin)·(LC·*·XC)&quot;).</code></strong>·-·The·lines·where·the·local·calls·of·the
233 last·example·are·made.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;(XLin)·(LC·*·XC)&quot;).</code></strong>·-·The·lines·where·the·external·calls·of233 last·example·are·made.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;(XLin)·(LC·*·XC)&quot;).</code></strong>·-·The·lines·where·the·external·calls·of
234 the·example·before·last·are·made.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;XC·*·(ME·-·strict·ME)&quot;).</code></strong>·-·External·calls·within·some·module.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;E ||| kernel&quot;).</code></strong>·-·All·calls·within·the·Kernel·application.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;closure E | kernel || kernel&quot;).</code></strong>·-·All·direct·and·indirect234 the·example·before·last·are·made.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;XC·*·(ME·-·strict·ME)&quot;).</code></strong>·-·External·calls·within·some·module.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;E ||| kernel&quot;).</code></strong>·-·All·calls·within·the·Kernel·application.</p></li><li><p><strong><code·class="inline">xref:q(s,·&quot;closure E | kernel || kernel&quot;).</code></strong>·-·All·direct·and·indirect
235 calls·within·the·Kernel·application.·Both·the·calling·and·the·used·functions235 calls·within·the·Kernel·application.·Both·the·calling·and·the·used·functions
Offset 264, 26 lines modifiedOffset 264, 26 lines modified
264 <code·class="inline">digraph</code>·representation·of·graphs)·has·to·be·explicitly·applied.</p><p>As·an·example·of·analyzing·indirect·calls,·the·following·Erlang·function·tries264 <code·class="inline">digraph</code>·representation·of·graphs)·has·to·be·explicitly·applied.</p><p>As·an·example·of·analyzing·indirect·calls,·the·following·Erlang·function·tries
265 to·answer·the·question:·if·we·want·to·know·which·modules·are·used·indirectly·by265 to·answer·the·question:·if·we·want·to·know·which·modules·are·used·indirectly·by
266 some·module(s),·is·it·worth·while·using·the266 some·module(s),·is·it·worth·while·using·the
267 <a·href="xref.html#call_graph">function·graph</a>·rather·than·the·module·graph?·Recall·that267 <a·href="xref.html#call_graph">function·graph</a>·rather·than·the·module·graph?·Recall·that
268 a·module·M1·is·said·to·call·a·module·M2·if·there·is·some·function·in·M1·that268 a·module·M1·is·said·to·call·a·module·M2·if·there·is·some·function·in·M1·that
269 calls·some·function·in·M2.·It·would·be·nice·if·we·could·use·the·much·smaller269 calls·some·function·in·M2.·It·would·be·nice·if·we·could·use·the·much·smaller
270 module·graph,·since·it·is·available·also·in·the·light·weight270 module·graph,·since·it·is·available·also·in·the·light·weight
271 <code·class="inline">modules</code><a·href="xref.html#mode">mode</a>·of·Xref·servers.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">t</span><span·class="p"·data-group-id="3685048466-1">(</span><span·class="n">S</span><span·class="p"·data-group-id="3685048466-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">271 <code·class="inline">modules</code><a·href="xref.html#mode">mode</a>·of·Xref·servers.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">t</span><span·class="p"·data-group-id="1599464911-1">(</span><span·class="n">S</span><span·class="p"·data-group-id="1599464911-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
272 ··</span><span·class="p"·data-group-id="3685048466-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="3685048466-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·285,·SHA:·ba5d4189c357337c208a5063374929287d788e7f14a8beb18109c904b8bb8c63·...·]-3">)</span><span·class="p">,</span><span·class="w">272 ··</span><span·class="p"·data-group-id="1599464911-2">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="p"·data-group-id="1599464911-2">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class[·...·truncated·by·diffoscope;·len:·285,·SHA:·e09c3da310fe2b31c5d2f802a4c55a9386a160217d3b3f0032b6460c07f88a1d·...·]-3">)</span><span·class="p">,</span><span·class="w">
273 ··</span><span·class="p"·data-group-id="3685048466-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ms</span><span·class="p"·data-group-id="3685048466-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·270,·SHA:·ac6520fcc123c9418dbda10bcb5d0cd420a23b450013e6c96e0fc0681efd60c3·...·]-5">)</span><span·class="p">,</span><span·class="w">273 ··</span><span·class="p"·data-group-id="1599464911-4">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ms</span><span·class="p"·data-group-id="1599464911-4">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·270,·SHA:·e1e04fa21644c0dfe0c63aadb0e7f947bac744f927bd7352bcfc506999066534·...·]-5">)</span><span·class="p">,</span><span·class="w">
274 ··</span><span·class="n">Fun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3685048466-6">(</span><span·class="n">M</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="3685048466-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">274 ··</span><span·class="n">Fun</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="1599464911-6">(</span><span·class="n">M</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N</span><span·class="p"·data-group-id="1599464911-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
275 ······</span><span·class="n">Q</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="3685048466-7">(</span><span·class="s">&quot;#·(Mod)·(Eplus·|·</span><span·class="si">~p</span><span·class="s">·:·Mod)&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3685048466-8">[</span><span·class="n">M</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·1a73b69548328706c142c7dad288e1a5bcd4112ece2c69da0d6e37709d454cb3·...·]-7">)</span><span·class="p">,</span><span·class="w">275 ······</span><span·class="n">Q</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">io_lib</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1599464911-7">(</span><span·class="s">&quot;#·(Mod)·(Eplus·|·</span><span·class="si">~p</span><span·class="s">·:·Mod)&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1599464911-8">[</span><span·class="n">M</span><[·...·truncated·by·diffoscope;·len:·93,·SHA:·f809402ab5b6872cc0684ffc2ac04c4e3f2d23a88e07ea212d35cfaaf8645416·...·]-7">)</span><span·class="p">,</span><span·class="w">
276 ······</span><span·class="p"·data-group-id="3685048466-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N0</span><span·class="p"·data-group-id="3685048466-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·450,·SHA:·3c0c266299c5cc482df091b530ea690866fdd8b14d4ed89a4573a224586cd919·...·]-10">)</span><span·class="p">,</span><span·class="w">276 ······</span><span·class="p"·data-group-id="1599464911-9">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">N0</span><span·class="p"·data-group-id="1599464911-9">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·clas[·...·truncated·by·diffoscope;·len:·450,·SHA:·fc8bfbeed85f68dd1e90c59b1cdad6751b4a018c1d11e5684b253580c00e6018·...·]-10">)</span><span·class="p">,</span><span·class="w">
277 ······</span><span·class="n">N</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">N0</span><span·class="w">277 ······</span><span·class="n">N</span><span·class="w">·</span><span·class="o">+</span><span·class="w">·</span><span·class="n">N0</span><span·class="w">
278 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">278 ····</span><span·class="k">end</span><span·class="p">,</span><span·class="w">
279 ··</span><span·class="n">Sum</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="3685048466-12">(</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ms</span><span·class="p"·data-group-id="3685048466-12">)</span><span·class="p">,</span><span·class="w">279 ··</span><span·class="n">Sum</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span><span·class="p">:</span><span·class="nf">foldl</span><span·class="p"·data-group-id="1599464911-12">(</span><span·class="n">Fun</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">0</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Ms</span><span·class="p"·data-group-id="1599464911-12">)</span><span·class="p">,</span><span·class="w">
280 ··</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">forget</span><span·class="p"·data-group-id="3685048466-13">(</span><span·class="n">S</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Eplus&#39;</span><span·class="p"·data-group-id="3685048466-13">)</span><span·class="p">,</span><span·class="w">280 ··</span><span·class="ss">ok</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xref</span><span·class="p">:</span><span·class="nf">forget</span><span·class="p"·data-group-id="1599464911-13">(</span><span·class="n">S</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">&#39;Eplus&#39;</span><span·class="p"·data-group-id="1599464911-13">)</span><span·class="p">,</span><span·class="w">
281 ··</span><span·class="p"·data-group-id="3685048466-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tot</span><span·class="p"·data-group-id="3685048466-14">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·291,·SHA:·3975cc10ae02c731da25da93c4b7f76ea8f81e6bb6201e8d6d94329afcd2ad35·...·]-15">)</span><span·class="p">,</span><span·class="w">281 ··</span><span·class="p"·data-group-id="1599464911-14">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Tot</span><span·class="p"·data-group-id="1599464911-14">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·c[·...·truncated·by·diffoscope;·len:·291,·SHA:·9731c0359611fa19f71e8da7fe5912b088204d345374f5a4987d502be4575e73·...·]-15">)</span><span·class="p">,</span><span·class="w">
282 ··</span><span·class="mi">100</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="p"·data-group-id="3685048466-16">(</span><span·class="p"·data-group-id="3685048466-17">(</span><span·class="n">Tot</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="3685048466-17">)</span><[·...·truncated·by·diffoscope;·len:·138,·SHA:·403e331ee53705643a39b5e6ced73f7fe9c31cfea835c9eb2faf44bca6e1f6a8·...·]-16">)</span><span·class="p">.</span></code></pre><p>Comments·on·the·code:</p><ul><li>We·want·to·find·the·reduction·of·the·closure·of·the·function·graph·to·modules.282 ··</span><span·class="mi">100</span><span·class="w">·</span><span·class="o">*</span><span·class="w">·</span><span·class="p"·data-group-id="1599464911-16">(</span><span·class="p"·data-group-id="1599464911-17">(</span><span·class="n">Tot</span><span·class="w">·</span><span·class="o">-</span><span·class="w">·</span><span·class="n">Sum</span><span·class="p"·data-group-id="1599464911-17">)</span><[·...·truncated·by·diffoscope;·len:·138,·SHA:·fb2bd5d0361c5736fe2084ec76ddfb733fe4c74703417fc89d95602eaeca7159·...·]-16">)</span><span·class="p">.</span></code></pre><p>Comments·on·the·code:</p><ul><li>We·want·to·find·the·reduction·of·the·closure·of·the·function·graph·to·modules.
283 The·direct·expression·for·doing·that·would·be·<code·class="inline">(Mod) (closure E | AM)</code>,·but283 The·direct·expression·for·doing·that·would·be·<code·class="inline">(Mod) (closure E | AM)</code>,·but
284 then·we·would·have·to·represent·all·of·the·transitive·closure·of·E·in·memory.284 then·we·would·have·to·represent·all·of·the·transitive·closure·of·E·in·memory.
285 Instead·the·number·of·indirectly·used·modules·is·found·for·each·analyzed285 Instead·the·number·of·indirectly·used·modules·is·found·for·each·analyzed
286 module,·and·the·sum·over·all·modules·is·calculated.</li><li>A·user·variable·is·employed·for·holding·the·<code·class="inline">digraph</code>·representation·of·the286 module,·and·the·sum·over·all·modules·is·calculated.</li><li>A·user·variable·is·employed·for·holding·the·<code·class="inline">digraph</code>·representation·of·the
287 function·graph·for·use·in·many·queries.·The·reason·is·efficiency.·As·opposed287 function·graph·for·use·in·many·queries.·The·reason·is·efficiency.·As·opposed
288 to·the·<code·class="inline">=</code>·operator,·the·<code·class="inline">:=</code>·operator·saves·a·value·for·subsequent·analyses.288 to·the·<code·class="inline">=</code>·operator,·the·<code·class="inline">:=</code>·operator·saves·a·value·for·subsequent·analyses.
289 Here·might·be·the·place·to·note·that·equal·subexpressions·within·a·query·are289 Here·might·be·the·place·to·note·that·equal·subexpressions·within·a·query·are
Offset 350, 15 lines modifiedOffset 350, 15 lines modified
350 ······<p·class="built-using">350 ······<p·class="built-using">
351 ········Built·using351 ········Built·using
352 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the352 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
353 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>353 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
354 ······</p>354 ······</p>
355 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>355 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
356 ····</footer>356 ····</footer>
357 ··</div>357 ··</div>
358 </main>358 </main>
359 </div>359 </div>
360 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>360 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
Max diff block lines reached; 63/42416 bytes (0.15%) of diff not shown.
775 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/404.html
    
Offset 143, 15 lines modifiedOffset 143, 15 lines modified
143 ······<p·class="built-using">143 ······<p·class="built-using">
144 ········Built·using144 ········Built·using
145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
147 ······</p>147 ······</p>
148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
149 ····</footer>149 ····</footer>
150 ··</div>150 ··</div>
151 </main>151 </main>
152 </div>152 </div>
153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
154 <script>154 <script>
155 ··document.addEventListener("DOMContentLoaded",·function·()·{155 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/api-reference.html
    
Offset 2318, 15 lines modifiedOffset 2318, 15 lines modified
2318 ······<p·class="built-using">2318 ······<p·class="built-using">
2319 ········Built·using2319 ········Built·using
2320 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2320 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2321 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2321 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2322 ······</p>2322 ······</p>
2323 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2323 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2324 ····</footer>2324 ····</footer>
2325 ··</div>2325 ··</div>
2326 </main>2326 </main>
2327 </div>2327 </div>
2328 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2328 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2329 <script>2329 <script>
2330 ··document.addEventListener("DOMContentLoaded",·function·()·{2330 ··document.addEventListener("DOMContentLoaded",·function·()·{
573 B
html2text {}
Max HTML report size reached
14.2 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/chapter.html
    
Offset 157, 21 lines modifiedOffset 157, 21 lines modified
157 that·object.·Type·checking·is·done·so·that·a·module·only·operates·on·it's157 that·object.·Type·checking·is·done·so·that·a·module·only·operates·on·it's
158 objects·or·inherited·classes.</p><p>An·object·is·created·with·<em>new</em>·and·destroyed·with·<em>destroy</em>.·Most·functions·in158 objects·or·inherited·classes.</p><p>An·object·is·created·with·<em>new</em>·and·destroyed·with·<em>destroy</em>.·Most·functions·in
159 the·classes·are·named·the·same·as·their·C++·counterpart,·except·that·for159 the·classes·are·named·the·same·as·their·C++·counterpart,·except·that·for
160 convenience,·in·erlang·they·start·with·a·lowercase·letter·and·the·first·argument160 convenience,·in·erlang·they·start·with·a·lowercase·letter·and·the·first·argument
161 is·the·object·reference.·Optional·arguments·are·last·and·expressed·as·tagged161 is·the·object·reference.·Optional·arguments·are·last·and·expressed·as·tagged
162 tuples·in·any·order.</p><p>For·example·the·<em>wxWindow</em>·C++·class·is·implemented·in·the·<em>wxWindow</em>·erlang162 tuples·in·any·order.</p><p>For·example·the·<em>wxWindow</em>·C++·class·is·implemented·in·the·<em>wxWindow</em>·erlang
163 module·and·the·member·<em>wxWindow::CenterOnParent</em>·is·thus163 module·and·the·member·<em>wxWindow::CenterOnParent</em>·is·thus
164 <em>wxWindow:centerOnParent</em>.·The·following·C++·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="ss">wxWindow</span><span·class="w">·</span><span·class="n">MyWin</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">new</span><span·class="w">·</span><span·class="nf">wxWindow</span><span·class="p"·data-group-id="1005225486-1">(</span><span·class="p"·data-group-id="1005225486-1">)</span><span·class="p">;</span><span·class="w">164 <em>wxWindow:centerOnParent</em>.·The·following·C++·code:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="ss">wxWindow</span><span·class="w">·</span><span·class="n">MyWin</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="ss">new</span><span·class="w">·</span><span·class="nf">wxWindow</span><span·class="p"·data-group-id="1541138165-1">(</span><span·class="p"·data-group-id="1541138165-1">)</span><span·class="p">;</span><span·class="w">
165 ··</span><span·class="n">MyWin</span><span·class="p">.</span><span·class="n">CenterOnParent</span><span·class="p"·data-group-id="1005225486-2">(</span><span·class="ss">wxVERTICAL</span><span·class="p"·data-group-id="1005225486-2">)</span><span·class="p">;</span><span·class="w">165 ··</span><span·class="n">MyWin</span><span·class="p">.</span><span·class="n">CenterOnParent</span><span·class="p"·data-group-id="1541138165-2">(</span><span·class="ss">wxVERTICAL</span><span·class="p"·data-group-id="1541138165-2">)</span><span·class="p">;</span><span·class="w">
166 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">166 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
167 ··</span><span·class="ss">delete</span><span·class="w">·</span><span·class="n">MyWin</span><span·class="p">;</span></code></pre><p>would·in·erlang·look·like:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="n">MyWin</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">wxWindow</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="0736300179-1">(</span><span·class="p"·data-group-id="0736300179-1">)</span><span·class="p">,</span><span·class="w">167 ··</span><span·class="ss">delete</span><span·class="w">·</span><span·class="n">MyWin</span><span·class="p">;</span></code></pre><p>would·in·erlang·look·like:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="n">MyWin</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">wxWindow</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="0219084100-1">(</span><span·class="p"·data-group-id="0219084100-1">)</span><span·class="p">,</span><span·class="w">
168 ··</span><span·class="nc">wxWindow</span><span·class="p">:</span><span·class="nf">centerOnParent</span><span·class="p"·data-group-id="0736300179-2">(</span><span·class="n">MyWin</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0736300179-3">[</span><span·class="p"·data-group-id="0736300179-4">{</span><span·class="ss">dir</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·203,·SHA:·0e1eedebfcaa92d065f4c839a888b51dead096e92b88d2bdf0181158983fedec·...·]-2">)</span><span·class="p">,</span><span·class="w">168 ··</span><span·class="nc">wxWindow</span><span·class="p">:</span><span·class="nf">centerOnParent</span><span·class="p"·data-group-id="0219084100-2">(</span><span·class="n">MyWin</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="0219084100-3">[</span><span·class="p"·data-group-id="0219084100-4">{</span><span·class="ss">dir</span><span·class="p">,</span><s[·...·truncated·by·diffoscope;·len:·203,·SHA:·ab583f1c3c5bf2561b872236ae83ca4edb49bbf30cb6dc6689f73278cceeb409·...·]-2">)</span><span·class="p">,</span><span·class="w">
169 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">169 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
170 ··</span><span·class="nc">wxWindow</span><span·class="p">:</span><span·class="nf">destroy</span><span·class="p"·data-group-id="0736300179-5">(</span><span·class="n">MyWin</span><span·class="p"·data-group-id="0736300179-5">)</span><span·class="p">,</span></code></pre><p>When·you·are·reading·wxWidgets·documentation·or·the·examples,·you·will·notice170 ··</span><span·class="nc">wxWindow</span><span·class="p">:</span><span·class="nf">destroy</span><span·class="p"·data-group-id="0219084100-5">(</span><span·class="n">MyWin</span><span·class="p"·data-group-id="0219084100-5">)</span><span·class="p">,</span></code></pre><p>When·you·are·reading·wxWidgets·documentation·or·the·examples,·you·will·notice
171 that·some·of·the·most·basic·classes·are·missing·in·<em>wx</em>,·they·are·directly171 that·some·of·the·most·basic·classes·are·missing·in·<em>wx</em>,·they·are·directly
172 mapped·to·corresponding·erlang·terms:</p><ul><li><p><strong><em>wxPoint</em>·is·represented·by·{Xcoord,Ycoord}</strong></p></li><li><p><strong><em>wxSize</em>·is·represented·by·{Width,Height}</strong></p></li><li><p><strong><em>wxRect</em>·is·represented·by·{Xcoord,Ycoord,Width,Height}</strong></p></li><li><p><strong><em>wxColour</em>·is·represented·by·{Red,Green,Blue[,Alpha]}</strong></p></li><li><p><strong><em>wxString</em>·is·represented·by172 mapped·to·corresponding·erlang·terms:</p><ul><li><p><strong><em>wxPoint</em>·is·represented·by·{Xcoord,Ycoord}</strong></p></li><li><p><strong><em>wxSize</em>·is·represented·by·{Width,Height}</strong></p></li><li><p><strong><em>wxRect</em>·is·represented·by·{Xcoord,Ycoord,Width,Height}</strong></p></li><li><p><strong><em>wxColour</em>·is·represented·by·{Red,Green,Blue[,Alpha]}</strong></p></li><li><p><strong><em>wxString</em>·is·represented·by
173 <a·href="../../../../lib/stdlib-6.0.1/doc/html/unicode.html#t:charlist/0">unicode:charlist()</a></strong></p></li><li><p><strong><em>wxGBPosition</em>·is·represented·by·{Row,Column}</strong></p></li><li><p><strong><em>wxGBSpan</em>·is·represented·by·{RowSpan,ColumnSPan}</strong></p></li><li><p><strong><em>wxGridCellCoords</em>·is·represented·by·{Row,Column}</strong></p></li></ul><p>In·the·places·where·the·erlang·API·differs·from·the·original·one·it·should·be173 <a·href="../../../../lib/stdlib-6.0.1/doc/html/unicode.html#t:charlist/0">unicode:charlist()</a></strong></p></li><li><p><strong><em>wxGBPosition</em>·is·represented·by·{Row,Column}</strong></p></li><li><p><strong><em>wxGBSpan</em>·is·represented·by·{RowSpan,ColumnSPan}</strong></p></li><li><p><strong><em>wxGridCellCoords</em>·is·represented·by·{Row,Column}</strong></p></li></ul><p>In·the·places·where·the·erlang·API·differs·from·the·original·one·it·should·be
174 obvious·from·the·erlang·documentation·which·representation·has·been·used.·E.g.174 obvious·from·the·erlang·documentation·which·representation·has·been·used.·E.g.
175 the·C++·arrays·and/or·lists·are·sometimes·represented·as·erlang·lists·and175 the·C++·arrays·and/or·lists·are·sometimes·represented·as·erlang·lists·and
176 sometimes·as·tuples.</p><p>Colours·are·represented·with·{Red,Green,Blue[,Alpha]},·the·Alpha·value·is176 sometimes·as·tuples.</p><p>Colours·are·represented·with·{Red,Green,Blue[,Alpha]},·the·Alpha·value·is
177 optional·when·used·as·an·argument·to·functions,·but·it·will·always·be·returned177 optional·when·used·as·an·argument·to·functions,·but·it·will·always·be·returned
Offset 191, 22 lines modifiedOffset 191, 22 lines modified
191 ··<span·class="text">Multiple·processes·and·memory·handling</span>191 ··<span·class="text">Multiple·processes·and·memory·handling</span>
192 </h2>192 </h2>
193 <p>The·intention·is·that·each·erlang·application·calls·wx:new()·once·to·setup·it's193 <p>The·intention·is·that·each·erlang·application·calls·wx:new()·once·to·setup·it's
194 GUI·which·creates·an·environment·and·a·memory·mapping.·To·be·able·to·use·<em>wx</em>194 GUI·which·creates·an·environment·and·a·memory·mapping.·To·be·able·to·use·<em>wx</em>
195 from·several·processes·in·your·application,·you·must·share·the·environment.·You195 from·several·processes·in·your·application,·you·must·share·the·environment.·You
196 can·get·the·active·environment·with·<a·href="wx.html#get_env/0"><code·class="inline">wx:get_env/0</code></a>·and·set·it·in·the·new196 can·get·the·active·environment·with·<a·href="wx.html#get_env/0"><code·class="inline">wx:get_env/0</code></a>·and·set·it·in·the·new
197 processes·with·<a·href="wx.html#set_env/1"><code·class="inline">wx:set_env/1</code></a>.·Two·processes·or·applications·which·have·both197 processes·with·<a·href="wx.html#set_env/1"><code·class="inline">wx:set_env/1</code></a>.·Two·processes·or·applications·which·have·both
198 called·wx:new()·will·not·be·able·use·each·others·objects.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="3699291769-1">(</span><span·class="p"·data-group-id="3699291769-1">)</span><span·class="p">,</span><span·class="w">198 called·wx:new()·will·not·be·able·use·each·others·objects.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="3359253478-1">(</span><span·class="p"·data-group-id="3359253478-1">)</span><span·class="p">,</span><span·class="w">
199 ··</span><span·class="n">MyWin</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">wxFrame</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="3699291769-2">(</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">null</span><span·class="p"·data-group-id="3699291769-3">(</span><span·class="p"·data-group-id="3699291769-3">)</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·308,·SHA:·80c751cff89b442bffb90f4684a48bf43a91667de5109a2a677e27e87b3b6dcf·...·]-2">)</span><span·class="p">,</span><span·class="w">199 ··</span><span·class="n">MyWin</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">wxFrame</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="3359253478-2">(</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">null</span><span·class="p"·data-group-id="3359253478-3">(</span><span·class="p"·data-group-id="3359253478-3">)</span><span·class="p">,</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·308,·SHA:·e05e516915f51658b8285322a14a13d2408127a048cdb701207f4dc9b3f7fa53·...·]-2">)</span><span·class="p">,</span><span·class="w">
200 ··</span><span·class="n">Env</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">get_env</span><span·class="p"·data-group-id="3699291769-5">(</span><span·class="p"·data-group-id="3699291769-5">)</span><span·class="p">,</span><span·class="w">200 ··</span><span·class="n">Env</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">get_env</span><span·class="p"·data-group-id="3359253478-5">(</span><span·class="p"·data-group-id="3359253478-5">)</span><span·class="p">,</span><span·class="w">
201 ··</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3699291769-6">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3699291769-7">(</span><span·class="p"·data-group-id="3699291769-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">201 ··</span><span·class="nf">spawn</span><span·class="p"·data-group-id="3359253478-6">(</span><span·class="nf">fun</span><span·class="p"·data-group-id="3359253478-7">(</span><span·class="p"·data-group-id="3359253478-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
202 ···········</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">set_env</span><span·class="p"·data-group-id="3699291769-8">(</span><span·class="n">Env</span><span·class="p"·data-group-id="3699291769-8">)</span><span·class="p">,</span><span·class="w">202 ···········</span><span·class="nc">wx</span><span·class="p">:</span><span·class="nf">set_env</span><span·class="p"·data-group-id="3359253478-8">(</span><span·class="n">Env</span><span·class="p"·data-group-id="3359253478-8">)</span><span·class="p">,</span><span·class="w">
203 ···········</span><span·class="c1">%%·Here·you·can·do·wx·calls·from·your·helper·process.</span><span·class="w">203 ···········</span><span·class="c1">%%·Here·you·can·do·wx·calls·from·your·helper·process.</span><span·class="w">
204 ···········</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">204 ···········</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
205 ········</span><span·class="k">end</span><span·class="p"·data-group-id="3699291769-6">)</span><span·class="p">,</span><span·class="w">205 ········</span><span·class="k">end</span><span·class="p"·data-group-id="3359253478-6">)</span><span·class="p">,</span><span·class="w">
206 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>When·<a·href="wx.html#destroy/0"><code·class="inline">wx:destroy/0</code></a>·is·invoked·or·when·all·processes·in·the·application·have206 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><p>When·<a·href="wx.html#destroy/0"><code·class="inline">wx:destroy/0</code></a>·is·invoked·or·when·all·processes·in·the·application·have
207 died,·the·memory·is·deleted·and·all·windows·created·by·that·application·are207 died,·the·memory·is·deleted·and·all·windows·created·by·that·application·are
208 closed.</p><p>The·<em>wx</em>·application·never·cleans·or·garbage·collects·memory·as·long·as·the·user208 closed.</p><p>The·<em>wx</em>·application·never·cleans·or·garbage·collects·memory·as·long·as·the·user
209 application·is·alive.·Most·of·the·objects·are·deleted·when·a·window·is·closed,209 application·is·alive.·Most·of·the·objects·are·deleted·when·a·window·is·closed,
210 or·at·least·all·the·objects·which·have·a·parent·argument·that·is·non·null.·By210 or·at·least·all·the·objects·which·have·a·parent·argument·that·is·non·null.·By
211 using·<code·class="inline">wxCLASS:destroy/1</code>·when·possible·you·can·avoid·an·increasing·memory211 using·<code·class="inline">wxCLASS:destroy/1</code>·when·possible·you·can·avoid·an·increasing·memory
212 usage.·This·is·especially·important·when·<em>wxWidgets</em>·assumes·or·recommends·that212 usage.·This·is·especially·important·when·<em>wxWidgets</em>·assumes·or·recommends·that
Offset 304, 15 lines modifiedOffset 304, 15 lines modified
304 ······<p·class="built-using">304 ······<p·class="built-using">
305 ········Built·using305 ········Built·using
306 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the306 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
307 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>307 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
308 ······</p>308 ······</p>
309 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>309 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
310 ····</footer>310 ····</footer>
311 ··</div>311 ··</div>
312 </main>312 </main>
313 </div>313 </div>
314 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>314 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
315 <script>315 <script>
316 ··document.addEventListener("DOMContentLoaded",·function·()·{316 ··document.addEventListener("DOMContentLoaded",·function·()·{
684 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/gl.html
    
Offset 41045, 15 lines modifiedOffset 41045, 15 lines modified
41045 ······<p·class="built-using">41045 ······<p·class="built-using">
41046 ········Built·using41046 ········Built·using
41047 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the41047 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
41048 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>41048 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
41049 ······</p>41049 ······</p>
41050 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>41050 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
41051 ····</footer>41051 ····</footer>
41052 ··</div>41052 ··</div>
41053 </main>41053 </main>
41054 </div>41054 </div>
41055 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>41055 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
41056 <script>41056 <script>
41057 ··document.addEventListener("DOMContentLoaded",·function·()·{41057 ··document.addEventListener("DOMContentLoaded",·function·()·{
777 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/glu.html
    
Offset 1817, 15 lines modifiedOffset 1817, 15 lines modified
1817 ······<p·class="built-using">1817 ······<p·class="built-using">
1818 ········Built·using1818 ········Built·using
1819 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1819 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1820 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1820 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1821 ······</p>1821 ······</p>
1822 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1822 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1823 ····</footer>1823 ····</footer>
1824 ··</div>1824 ··</div>
1825 </main>1825 </main>
1826 </div>1826 </div>
1827 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1827 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1828 <script>1828 <script>
1829 ··document.addEventListener("DOMContentLoaded",·function·()·{1829 ··document.addEventListener("DOMContentLoaded",·function·()·{
630 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/notes.html
    
Offset 1066, 15 lines modifiedOffset 1066, 15 lines modified
1066 ······<p·class="built-using">1066 ······<p·class="built-using">
1067 ········Built·using1067 ········Built·using
1068 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1068 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1069 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1069 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1070 ······</p>1070 ······</p>
1071 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1071 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1072 ····</footer>1072 ····</footer>
1073 ··</div>1073 ··</div>
1074 </main>1074 </main>
1075 </div>1075 </div>
1076 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1076 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1077 <script>1077 <script>
1078 ··document.addEventListener("DOMContentLoaded",·function·()·{1078 ··document.addEventListener("DOMContentLoaded",·function·()·{
744 B
html2text {}
Max HTML report size reached
1.26 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/search.html
    
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
141 ······<p·class="built-using">141 ······<p·class="built-using">
142 ········Built·using142 ········Built·using
143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the143 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>144 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
145 ······</p>145 ······</p>
146 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>146 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
147 ····</footer>147 ····</footer>
148 ··</div>148 ··</div>
149 </main>149 </main>
150 </div>150 </div>
151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>151 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
152 <script>152 <script>
153 ··document.addEventListener("DOMContentLoaded",·function·()·{153 ··document.addEventListener("DOMContentLoaded",·function·()·{
459 B
html2text {}
Max HTML report size reached
939 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wx.epub
39.3 KB
zipinfo {}
Max HTML report size reached
866 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
19.5 KB
OEBPS/wx_object.xhtml
Max HTML report size reached
1.18 KB
OEBPS/content.opf
1.14 KB
OEBPS/content.opf
Max HTML report size reached
12.7 KB
OEBPS/chapter.xhtml
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wx.html
    
Offset 1461, 15 lines modifiedOffset 1461, 15 lines modified
1461 ······<p·class="built-using">1461 ······<p·class="built-using">
1462 ········Built·using1462 ········Built·using
1463 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1463 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1464 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1464 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1465 ······</p>1465 ······</p>
1466 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1466 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1467 ····</footer>1467 ····</footer>
1468 ··</div>1468 ··</div>
1469 </main>1469 </main>
1470 </div>1470 </div>
1471 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1471 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1472 <script>1472 <script>
1473 ··document.addEventListener("DOMContentLoaded",·function·()·{1473 ··document.addEventListener("DOMContentLoaded",·function·()·{
697 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAcceleratorEntry.html
    
Offset 554, 15 lines modifiedOffset 554, 15 lines modified
554 ······<p·class="built-using">554 ······<p·class="built-using">
555 ········Built·using555 ········Built·using
556 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the556 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
557 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>557 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
558 ······</p>558 ······</p>
559 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>559 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
560 ····</footer>560 ····</footer>
561 ··</div>561 ··</div>
562 </main>562 </main>
563 </div>563 </div>
564 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>564 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
565 <script>565 <script>
566 ··document.addEventListener("DOMContentLoaded",·function·()·{566 ··document.addEventListener("DOMContentLoaded",·function·()·{
664 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAcceleratorTable.html
    
Offset 431, 15 lines modifiedOffset 431, 15 lines modified
431 ······<p·class="built-using">431 ······<p·class="built-using">
432 ········Built·using432 ········Built·using
433 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the433 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
434 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>434 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
435 ······</p>435 ······</p>
436 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>436 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
437 ····</footer>437 ····</footer>
438 ··</div>438 ··</div>
439 </main>439 </main>
440 </div>440 </div>
441 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>441 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
442 <script>442 <script>
443 ··document.addEventListener("DOMContentLoaded",·function·()·{443 ··document.addEventListener("DOMContentLoaded",·function·()·{
669 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxActivateEvent.html
    
Offset 359, 15 lines modifiedOffset 359, 15 lines modified
359 ······<p·class="built-using">359 ······<p·class="built-using">
360 ········Built·using360 ········Built·using
361 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the361 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
362 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>362 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
363 ······</p>363 ······</p>
364 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>364 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
365 ····</footer>365 ····</footer>
366 ··</div>366 ··</div>
367 </main>367 </main>
368 </div>368 </div>
369 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>369 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
370 <script>370 <script>
371 ··document.addEventListener("DOMContentLoaded",·function·()·{371 ··document.addEventListener("DOMContentLoaded",·function·()·{
742 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxArtProvider.html
    
Offset 424, 15 lines modifiedOffset 424, 15 lines modified
424 ······<p·class="built-using">424 ······<p·class="built-using">
425 ········Built·using425 ········Built·using
426 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the426 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
427 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>427 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
428 ······</p>428 ······</p>
429 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>429 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
430 ····</footer>430 ····</footer>
431 ··</div>431 ··</div>
432 </main>432 </main>
433 </div>433 </div>
434 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>434 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
435 <script>435 <script>
436 ··document.addEventListener("DOMContentLoaded",·function·()·{436 ··document.addEventListener("DOMContentLoaded",·function·()·{
746 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAuiDockArt.html
    
Offset 473, 15 lines modifiedOffset 473, 15 lines modified
473 ······<p·class="built-using">473 ······<p·class="built-using">
474 ········Built·using474 ········Built·using
475 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the475 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
476 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>476 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
477 ······</p>477 ······</p>
478 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>478 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
479 ····</footer>479 ····</footer>
480 ··</div>480 ··</div>
481 </main>481 </main>
482 </div>482 </div>
483 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>483 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
484 <script>484 <script>
485 ··document.addEventListener("DOMContentLoaded",·function·()·{485 ··document.addEventListener("DOMContentLoaded",·function·()·{
657 B
html2text {}
Max HTML report size reached
1.66 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAuiManager.html
    
Offset 1460, 15 lines modifiedOffset 1460, 15 lines modified
1460 ······<p·class="built-using">1460 ······<p·class="built-using">
1461 ········Built·using1461 ········Built·using
1462 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1462 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1463 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1463 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1464 ······</p>1464 ······</p>
1465 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1465 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1466 ····</footer>1466 ····</footer>
1467 ··</div>1467 ··</div>
1468 </main>1468 </main>
1469 </div>1469 </div>
1470 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1470 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1471 <script>1471 <script>
1472 ··document.addEventListener("DOMContentLoaded",·function·()·{1472 ··document.addEventListener("DOMContentLoaded",·function·()·{
855 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAuiManagerEvent.html
    
Offset 813, 15 lines modifiedOffset 813, 15 lines modified
813 ······<p·class="built-using">813 ······<p·class="built-using">
814 ········Built·using814 ········Built·using
815 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the815 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
816 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>816 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
817 ······</p>817 ······</p>
818 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>818 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
819 ····</footer>819 ····</footer>
820 ··</div>820 ··</div>
821 </main>821 </main>
822 </div>822 </div>
823 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>823 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
824 <script>824 <script>
825 ··document.addEventListener("DOMContentLoaded",·function·()·{825 ··document.addEventListener("DOMContentLoaded",·function·()·{
690 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAuiNotebook.html
    
Offset 1432, 15 lines modifiedOffset 1432, 15 lines modified
1432 ······<p·class="built-using">1432 ······<p·class="built-using">
1433 ········Built·using1433 ········Built·using
1434 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1434 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1435 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1435 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1436 ······</p>1436 ······</p>
1437 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1437 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1438 ····</footer>1438 ····</footer>
1439 ··</div>1439 ··</div>
1440 </main>1440 </main>
1441 </div>1441 </div>
1442 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1442 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1443 <script>1443 <script>
1444 ··document.addEventListener("DOMContentLoaded",·function·()·{1444 ··document.addEventListener("DOMContentLoaded",·function·()·{
650 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAuiNotebookEvent.html
    
Offset 556, 15 lines modifiedOffset 556, 15 lines modified
556 ······<p·class="built-using">556 ······<p·class="built-using">
557 ········Built·using557 ········Built·using
558 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the558 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
559 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>559 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
560 ······</p>560 ······</p>
561 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>561 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
562 ····</footer>562 ····</footer>
563 ··</div>563 ··</div>
564 </main>564 </main>
565 </div>565 </div>
566 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>566 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
567 <script>567 <script>
568 ··document.addEventListener("DOMContentLoaded",·function·()·{568 ··document.addEventListener("DOMContentLoaded",·function·()·{
690 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAuiPaneInfo.html
    
Offset 4059, 15 lines modifiedOffset 4059, 15 lines modified
4059 ······<p·class="built-using">4059 ······<p·class="built-using">
4060 ········Built·using4060 ········Built·using
4061 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the4061 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
4062 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>4062 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
4063 ······</p>4063 ······</p>
4064 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4064 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
4065 ····</footer>4065 ····</footer>
4066 ··</div>4066 ··</div>
4067 </main>4067 </main>
4068 </div>4068 </div>
4069 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>4069 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
4070 <script>4070 <script>
4071 ··document.addEventListener("DOMContentLoaded",·function·()·{4071 ··document.addEventListener("DOMContentLoaded",·function·()·{
729 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAuiSimpleTabArt.html
    
Offset 311, 15 lines modifiedOffset 311, 15 lines modified
311 ······<p·class="built-using">311 ······<p·class="built-using">
312 ········Built·using312 ········Built·using
313 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the313 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
314 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>314 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
315 ······</p>315 ······</p>
316 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>316 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
317 ····</footer>317 ····</footer>
318 ··</div>318 ··</div>
319 </main>319 </main>
320 </div>320 </div>
321 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>321 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
322 <script>322 <script>
323 ··document.addEventListener("DOMContentLoaded",·function·()·{323 ··document.addEventListener("DOMContentLoaded",·function·()·{
613 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxAuiTabArt.html
    
Offset 468, 15 lines modifiedOffset 468, 15 lines modified
468 ······<p·class="built-using">468 ······<p·class="built-using">
469 ········Built·using469 ········Built·using
470 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the470 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
471 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>471 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
472 ······</p>472 ······</p>
473 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>473 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
474 ····</footer>474 ····</footer>
475 ··</div>475 ··</div>
476 </main>476 </main>
477 </div>477 </div>
478 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>478 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
479 <script>479 <script>
480 ··document.addEventListener("DOMContentLoaded",·function·()·{480 ··document.addEventListener("DOMContentLoaded",·function·()·{
720 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxBitmap.html
    
Offset 1386, 15 lines modifiedOffset 1386, 15 lines modified
1386 ······<p·class="built-using">1386 ······<p·class="built-using">
1387 ········Built·using1387 ········Built·using
1388 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1388 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1389 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1389 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1390 ······</p>1390 ······</p>
1391 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1391 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1392 ····</footer>1392 ····</footer>
1393 ··</div>1393 ··</div>
1394 </main>1394 </main>
1395 </div>1395 </div>
1396 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1396 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1397 <script>1397 <script>
1398 ··document.addEventListener("DOMContentLoaded",·function·()·{1398 ··document.addEventListener("DOMContentLoaded",·function·()·{
692 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxBitmapButton.html
    
Offset 541, 15 lines modifiedOffset 541, 15 lines modified
541 ······<p·class="built-using">541 ······<p·class="built-using">
542 ········Built·using542 ········Built·using
543 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the543 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
544 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>544 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
545 ······</p>545 ······</p>
546 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>546 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
547 ····</footer>547 ····</footer>
548 ··</div>548 ··</div>
549 </main>549 </main>
550 </div>550 </div>
551 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>551 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
552 <script>552 <script>
553 ··document.addEventListener("DOMContentLoaded",·function·()·{553 ··document.addEventListener("DOMContentLoaded",·function·()·{
580 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxBitmapDataObject.html
    
Offset 435, 15 lines modifiedOffset 435, 15 lines modified
435 ······<p·class="built-using">435 ······<p·class="built-using">
436 ········Built·using436 ········Built·using
437 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the437 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
438 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>438 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
439 ······</p>439 ······</p>
440 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>440 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
441 ····</footer>441 ····</footer>
442 ··</div>442 ··</div>
443 </main>443 </main>
444 </div>444 </div>
445 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>445 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
446 <script>446 <script>
447 ··document.addEventListener("DOMContentLoaded",·function·()·{447 ··document.addEventListener("DOMContentLoaded",·function·()·{
708 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxBookCtrlBase.html
    
Offset 956, 15 lines modifiedOffset 956, 15 lines modified
956 ······<p·class="built-using">956 ······<p·class="built-using">
957 ········Built·using957 ········Built·using
958 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the958 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
959 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>959 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
960 ······</p>960 ······</p>
961 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>961 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
962 ····</footer>962 ····</footer>
963 ··</div>963 ··</div>
964 </main>964 </main>
965 </div>965 </div>
966 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>966 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
967 <script>967 <script>
968 ··document.addEventListener("DOMContentLoaded",·function·()·{968 ··document.addEventListener("DOMContentLoaded",·function·()·{
711 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxBookCtrlEvent.html
    
Offset 481, 15 lines modifiedOffset 481, 15 lines modified
481 ······<p·class="built-using">481 ······<p·class="built-using">
482 ········Built·using482 ········Built·using
483 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the483 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
484 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>484 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
485 ······</p>485 ······</p>
486 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>486 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
487 ····</footer>487 ····</footer>
488 ··</div>488 ··</div>
489 </main>489 </main>
490 </div>490 </div>
491 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>491 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
492 <script>492 <script>
493 ··document.addEventListener("DOMContentLoaded",·function·()·{493 ··document.addEventListener("DOMContentLoaded",·function·()·{
681 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxBoxSizer.html
    
Offset 353, 15 lines modifiedOffset 353, 15 lines modified
353 ······<p·class="built-using">353 ······<p·class="built-using">
354 ········Built·using354 ········Built·using
355 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the355 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
356 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>356 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
357 ······</p>357 ······</p>
358 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>358 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
359 ····</footer>359 ····</footer>
360 ··</div>360 ··</div>
361 </main>361 </main>
362 </div>362 </div>
363 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>363 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
364 <script>364 <script>
365 ··document.addEventListener("DOMContentLoaded",·function·()·{365 ··document.addEventListener("DOMContentLoaded",·function·()·{
650 B
html2text {}
Max HTML report size reached
1.38 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxBrush.html
    
Offset 750, 15 lines modifiedOffset 750, 15 lines modified
750 ······<p·class="built-using">750 ······<p·class="built-using">
751 ········Built·using751 ········Built·using
752 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the752 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
753 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>753 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
754 ······</p>754 ······</p>
755 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>755 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
756 ····</footer>756 ····</footer>
757 ··</div>757 ··</div>
758 </main>758 </main>
759 </div>759 </div>
760 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>760 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
761 <script>761 <script>
762 ··document.addEventListener("DOMContentLoaded",·function·()·{762 ··document.addEventListener("DOMContentLoaded",·function·()·{
580 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxBufferedDC.html
    
Offset 570, 15 lines modifiedOffset 570, 15 lines modified
570 ······<p·class="built-using">570 ······<p·class="built-using">
571 ········Built·using571 ········Built·using
572 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the572 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
573 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>573 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
574 ······</p>574 ······</p>
575 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>575 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
576 ····</footer>576 ····</footer>
577 ··</div>577 ··</div>
578 </main>578 </main>
579 </div>579 </div>
580 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>580 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
581 <script>581 <script>
582 ··document.addEventListener("DOMContentLoaded",·function·()·{582 ··document.addEventListener("DOMContentLoaded",·function·()·{
679 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxBufferedPaintDC.html
    
Offset 408, 15 lines modifiedOffset 408, 15 lines modified
408 ······<p·class="built-using">408 ······<p·class="built-using">
409 ········Built·using409 ········Built·using
410 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the410 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
411 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>411 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
412 ······</p>412 ······</p>
413 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>413 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
414 ····</footer>414 ····</footer>
415 ··</div>415 ··</div>
416 </main>416 </main>
417 </div>417 </div>
418 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>418 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
419 <script>419 <script>
420 ··document.addEventListener("DOMContentLoaded",·function·()·{420 ··document.addEventListener("DOMContentLoaded",·function·()·{
694 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxButton.html
    
Offset 910, 15 lines modifiedOffset 910, 15 lines modified
910 ······<p·class="built-using">910 ······<p·class="built-using">
911 ········Built·using911 ········Built·using
912 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the912 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
913 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>913 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
914 ······</p>914 ······</p>
915 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>915 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
916 ····</footer>916 ····</footer>
917 ··</div>917 ··</div>
918 </main>918 </main>
919 </div>919 </div>
920 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>920 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
921 <script>921 <script>
922 ··document.addEventListener("DOMContentLoaded",·function·()·{922 ··document.addEventListener("DOMContentLoaded",·function·()·{
681 B
html2text {}
Max HTML report size reached
1.6 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxCalendarCtrl.html
    
Offset 1396, 15 lines modifiedOffset 1396, 15 lines modified
1396 ······<p·class="built-using">1396 ······<p·class="built-using">
1397 ········Built·using1397 ········Built·using
1398 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1398 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1399 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1399 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1400 ······</p>1400 ······</p>
1401 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1401 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1402 ····</footer>1402 ····</footer>
1403 ··</div>1403 ··</div>
1404 </main>1404 </main>
1405 </div>1405 </div>
1406 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1406 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1407 <script>1407 <script>
1408 ··document.addEventListener("DOMContentLoaded",·function·()·{1408 ··document.addEventListener("DOMContentLoaded",·function·()·{
789 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxCalendarDateAttr.html
    
Offset 1042, 15 lines modifiedOffset 1042, 15 lines modified
1042 ······<p·class="built-using">1042 ······<p·class="built-using">
1043 ········Built·using1043 ········Built·using
1044 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1044 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1045 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1045 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1046 ······</p>1046 ······</p>
1047 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1047 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1048 ····</footer>1048 ····</footer>
1049 ··</div>1049 ··</div>
1050 </main>1050 </main>
1051 </div>1051 </div>
1052 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1052 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1053 <script>1053 <script>
1054 ··document.addEventListener("DOMContentLoaded",·function·()·{1054 ··document.addEventListener("DOMContentLoaded",·function·()·{
732 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxCalendarEvent.html
    
Offset 391, 15 lines modifiedOffset 391, 15 lines modified
391 ······<p·class="built-using">391 ······<p·class="built-using">
392 ········Built·using392 ········Built·using
393 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the393 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
394 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>394 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
395 ······</p>395 ······</p>
396 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>396 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
397 ····</footer>397 ····</footer>
398 ··</div>398 ··</div>
399 </main>399 </main>
400 </div>400 </div>
401 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>401 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
402 <script>402 <script>
403 ··document.addEventListener("DOMContentLoaded",·function·()·{403 ··document.addEventListener("DOMContentLoaded",·function·()·{
676 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxCaret.html
    
Offset 973, 15 lines modifiedOffset 973, 15 lines modified
973 ······<p·class="built-using">973 ······<p·class="built-using">
974 ········Built·using974 ········Built·using
975 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the975 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
976 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>976 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
977 ······</p>977 ······</p>
978 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>978 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
979 ····</footer>979 ····</footer>
980 ··</div>980 ··</div>
981 </main>981 </main>
982 </div>982 </div>
983 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>983 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
984 <script>984 <script>
985 ··document.addEventListener("DOMContentLoaded",·function·()·{985 ··document.addEventListener("DOMContentLoaded",·function·()·{
617 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxCheckBox.html
    
Offset 766, 15 lines modifiedOffset 766, 15 lines modified
766 ······<p·class="built-using">766 ······<p·class="built-using">
767 ········Built·using767 ········Built·using
768 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the768 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
769 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>769 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
770 ······</p>770 ······</p>
771 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>771 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
772 ····</footer>772 ····</footer>
773 ··</div>773 ··</div>
774 </main>774 </main>
775 </div>775 </div>
776 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>776 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
777 <script>777 <script>
778 ··document.addEventListener("DOMContentLoaded",·function·()·{778 ··document.addEventListener("DOMContentLoaded",·function·()·{
619 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxCheckListBox.html
    
Offset 519, 15 lines modifiedOffset 519, 15 lines modified
519 ······<p·class="built-using">519 ······<p·class="built-using">
520 ········Built·using520 ········Built·using
521 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the521 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
522 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>522 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
523 ······</p>523 ······</p>
524 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>524 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
525 ····</footer>525 ····</footer>
526 ··</div>526 ··</div>
527 </main>527 </main>
528 </div>528 </div>
529 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>529 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
530 <script>530 <script>
531 ··document.addEventListener("DOMContentLoaded",·function·()·{531 ··document.addEventListener("DOMContentLoaded",·function·()·{
725 B
html2text {}
Max HTML report size reached
1.58 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxChildFocusEvent.html
    
Offset 360, 15 lines modifiedOffset 360, 15 lines modified
360 ······<p·class="built-using">360 ······<p·class="built-using">
361 ········Built·using361 ········Built·using
362 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the362 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
363 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>363 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
364 ······</p>364 ······</p>
365 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>365 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
366 ····</footer>366 ····</footer>
367 ··</div>367 ··</div>
368 </main>368 </main>
369 </div>369 </div>
370 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>370 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
371 <script>371 <script>
372 ··document.addEventListener("DOMContentLoaded",·function·()·{372 ··document.addEventListener("DOMContentLoaded",·function·()·{
760 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxChoice.html
    
Offset 649, 15 lines modifiedOffset 649, 15 lines modified
649 ······<p·class="built-using">649 ······<p·class="built-using">
650 ········Built·using650 ········Built·using
651 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the651 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
652 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>652 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
653 ······</p>653 ······</p>
654 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>654 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
655 ····</footer>655 ····</footer>
656 ··</div>656 ··</div>
657 </main>657 </main>
658 </div>658 </div>
659 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>659 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
660 <script>660 <script>
661 ··document.addEventListener("DOMContentLoaded",·function·()·{661 ··document.addEventListener("DOMContentLoaded",·function·()·{
638 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxChoicebook.html
    
Offset 1360, 15 lines modifiedOffset 1360, 15 lines modified
1360 ······<p·class="built-using">1360 ······<p·class="built-using">
1361 ········Built·using1361 ········Built·using
1362 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1362 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1363 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1363 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1364 ······</p>1364 ······</p>
1365 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1365 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1366 ····</footer>1366 ····</footer>
1367 ··</div>1367 ··</div>
1368 </main>1368 </main>
1369 </div>1369 </div>
1370 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1370 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1371 <script>1371 <script>
1372 ··document.addEventListener("DOMContentLoaded",·function·()·{1372 ··document.addEventListener("DOMContentLoaded",·function·()·{
711 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxClientDC.html
    
Offset 322, 15 lines modifiedOffset 322, 15 lines modified
322 ······<p·class="built-using">322 ······<p·class="built-using">
323 ········Built·using323 ········Built·using
324 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the324 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
325 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>325 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
326 ······</p>326 ······</p>
327 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>327 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
328 ····</footer>328 ····</footer>
329 ··</div>329 ··</div>
330 </main>330 </main>
331 </div>331 </div>
332 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>332 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
333 <script>333 <script>
334 ··document.addEventListener("DOMContentLoaded",·function·()·{334 ··document.addEventListener("DOMContentLoaded",·function·()·{
670 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxClipboard.html
    
Offset 807, 15 lines modifiedOffset 807, 15 lines modified
807 ······<p·class="built-using">807 ······<p·class="built-using">
808 ········Built·using808 ········Built·using
809 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the809 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
810 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>810 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
811 ······</p>811 ······</p>
812 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>812 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
813 ····</footer>813 ····</footer>
814 ··</div>814 ··</div>
815 </main>815 </main>
816 </div>816 </div>
817 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>817 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
818 <script>818 <script>
819 ··document.addEventListener("DOMContentLoaded",·function·()·{819 ··document.addEventListener("DOMContentLoaded",·function·()·{
715 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxClipboardTextEvent.html
    
Offset 310, 15 lines modifiedOffset 310, 15 lines modified
310 ······<p·class="built-using">310 ······<p·class="built-using">
311 ········Built·using311 ········Built·using
312 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the312 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
313 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>313 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
314 ······</p>314 ······</p>
315 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>315 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
316 ····</footer>316 ····</footer>
317 ··</div>317 ··</div>
318 </main>318 </main>
319 </div>319 </div>
320 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>320 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
321 <script>321 <script>
322 ··document.addEventListener("DOMContentLoaded",·function·()·{322 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxCloseEvent.html
    
Offset 566, 15 lines modifiedOffset 566, 15 lines modified
566 ······<p·class="built-using">566 ······<p·class="built-using">
567 ········Built·using567 ········Built·using
568 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the568 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
569 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>569 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
570 ······</p>570 ······</p>
571 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>571 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
572 ····</footer>572 ····</footer>
573 ··</div>573 ··</div>
574 </main>574 </main>
575 </div>575 </div>
576 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>576 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
577 <script>577 <script>
578 ··document.addEventListener("DOMContentLoaded",·function·()·{578 ··document.addEventListener("DOMContentLoaded",·function·()·{
711 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxColourData.html
    
Offset 546, 15 lines modifiedOffset 546, 15 lines modified
546 ······<p·class="built-using">546 ······<p·class="built-using">
547 ········Built·using547 ········Built·using
548 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the548 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
549 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>549 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
550 ······</p>550 ······</p>
551 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>551 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
552 ····</footer>552 ····</footer>
553 ··</div>553 ··</div>
554 </main>554 </main>
555 </div>555 </div>
556 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>556 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
557 <script>557 <script>
558 ··document.addEventListener("DOMContentLoaded",·function·()·{558 ··document.addEventListener("DOMContentLoaded",·function·()·{
650 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxColourDialog.html
    
Offset 514, 15 lines modifiedOffset 514, 15 lines modified
514 ······<p·class="built-using">514 ······<p·class="built-using">
515 ········Built·using515 ········Built·using
516 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the516 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
517 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>517 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
518 ······</p>518 ······</p>
519 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>519 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
520 ····</footer>520 ····</footer>
521 ··</div>521 ··</div>
522 </main>522 </main>
523 </div>523 </div>
524 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>524 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
525 <script>525 <script>
526 ··document.addEventListener("DOMContentLoaded",·function·()·{526 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxColourPickerCtrl.html
    
Offset 567, 15 lines modifiedOffset 567, 15 lines modified
567 ······<p·class="built-using">567 ······<p·class="built-using">
568 ········Built·using568 ········Built·using
569 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the569 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
570 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>570 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
571 ······</p>571 ······</p>
572 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>572 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
573 ····</footer>573 ····</footer>
574 ··</div>574 ··</div>
575 </main>575 </main>
576 </div>576 </div>
577 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>577 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
578 <script>578 <script>
579 ··document.addEventListener("DOMContentLoaded",·function·()·{579 ··document.addEventListener("DOMContentLoaded",·function·()·{
660 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxColourPickerEvent.html
    
Offset 356, 15 lines modifiedOffset 356, 15 lines modified
356 ······<p·class="built-using">356 ······<p·class="built-using">
357 ········Built·using357 ········Built·using
358 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the358 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
359 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>359 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
360 ······</p>360 ······</p>
361 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>361 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
362 ····</footer>362 ····</footer>
363 ··</div>363 ··</div>
364 </main>364 </main>
365 </div>365 </div>
366 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>366 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
367 <script>367 <script>
368 ··document.addEventListener("DOMContentLoaded",·function·()·{368 ··document.addEventListener("DOMContentLoaded",·function·()·{
741 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxComboBox.html
    
Offset 1302, 15 lines modifiedOffset 1302, 15 lines modified
1302 ······<p·class="built-using">1302 ······<p·class="built-using">
1303 ········Built·using1303 ········Built·using
1304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1306 ······</p>1306 ······</p>
1307 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1307 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1308 ····</footer>1308 ····</footer>
1309 ··</div>1309 ··</div>
1310 </main>1310 </main>
1311 </div>1311 </div>
1312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1313 <script>1313 <script>
1314 ··document.addEventListener("DOMContentLoaded",·function·()·{1314 ··document.addEventListener("DOMContentLoaded",·function·()·{
613 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxCommandEvent.html
    
Offset 696, 15 lines modifiedOffset 696, 15 lines modified
696 ······<p·class="built-using">696 ······<p·class="built-using">
697 ········Built·using697 ········Built·using
698 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the698 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
699 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>699 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
700 ······</p>700 ······</p>
701 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>701 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
702 ····</footer>702 ····</footer>
703 ··</div>703 ··</div>
704 </main>704 </main>
705 </div>705 </div>
706 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>706 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
707 <script>707 <script>
708 ··document.addEventListener("DOMContentLoaded",·function·()·{708 ··document.addEventListener("DOMContentLoaded",·function·()·{
702 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxContextMenuEvent.html
    
Offset 408, 15 lines modifiedOffset 408, 15 lines modified
408 ······<p·class="built-using">408 ······<p·class="built-using">
409 ········Built·using409 ········Built·using
410 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the410 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
411 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>411 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
412 ······</p>412 ······</p>
413 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>413 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
414 ····</footer>414 ····</footer>
415 ··</div>415 ··</div>
416 </main>416 </main>
417 </div>417 </div>
418 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>418 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
419 <script>419 <script>
420 ··document.addEventListener("DOMContentLoaded",·function·()·{420 ··document.addEventListener("DOMContentLoaded",·function·()·{
658 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxControl.html
    
Offset 329, 15 lines modifiedOffset 329, 15 lines modified
329 ······<p·class="built-using">329 ······<p·class="built-using">
330 ········Built·using330 ········Built·using
331 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the331 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
332 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>332 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
333 ······</p>333 ······</p>
334 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>334 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
335 ····</footer>335 ····</footer>
336 ··</div>336 ··</div>
337 </main>337 </main>
338 </div>338 </div>
339 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>339 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
340 <script>340 <script>
341 ··document.addEventListener("DOMContentLoaded",·function·()·{341 ··document.addEventListener("DOMContentLoaded",·function·()·{
754 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxControlWithItems.html
    
Offset 1181, 15 lines modifiedOffset 1181, 15 lines modified
1181 ······<p·class="built-using">1181 ······<p·class="built-using">
1182 ········Built·using1182 ········Built·using
1183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1183 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1184 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1185 ······</p>1185 ······</p>
1186 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1186 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1187 ····</footer>1187 ····</footer>
1188 ··</div>1188 ··</div>
1189 </main>1189 </main>
1190 </div>1190 </div>
1191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1191 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1192 <script>1192 <script>
1193 ··document.addEventListener("DOMContentLoaded",·function·()·{1193 ··document.addEventListener("DOMContentLoaded",·function·()·{
663 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxCursor.html
    
Offset 483, 15 lines modifiedOffset 483, 15 lines modified
483 ······<p·class="built-using">483 ······<p·class="built-using">
484 ········Built·using484 ········Built·using
485 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the485 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
486 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>486 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
487 ······</p>487 ······</p>
488 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>488 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
489 ····</footer>489 ····</footer>
490 ··</div>490 ··</div>
491 </main>491 </main>
492 </div>492 </div>
493 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>493 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
494 <script>494 <script>
495 ··document.addEventListener("DOMContentLoaded",·function·()·{495 ··document.addEventListener("DOMContentLoaded",·function·()·{
639 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDC.html
    
Offset 4080, 15 lines modifiedOffset 4080, 15 lines modified
4080 ······<p·class="built-using">4080 ······<p·class="built-using">
4081 ········Built·using4081 ········Built·using
4082 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the4082 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
4083 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>4083 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
4084 ······</p>4084 ······</p>
4085 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>4085 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
4086 ····</footer>4086 ····</footer>
4087 ··</div>4087 ··</div>
4088 </main>4088 </main>
4089 </div>4089 </div>
4090 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>4090 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
4091 <script>4091 <script>
4092 ··document.addEventListener("DOMContentLoaded",·function·()·{4092 ··document.addEventListener("DOMContentLoaded",·function·()·{
682 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDCOverlay.html
    
Offset 396, 15 lines modifiedOffset 396, 15 lines modified
396 ······<p·class="built-using">396 ······<p·class="built-using">
397 ········Built·using397 ········Built·using
398 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the398 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
399 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>399 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
400 ······</p>400 ······</p>
401 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>401 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
402 ····</footer>402 ····</footer>
403 ··</div>403 ··</div>
404 </main>404 </main>
405 </div>405 </div>
406 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>406 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
407 <script>407 <script>
408 ··document.addEventListener("DOMContentLoaded",·function·()·{408 ··document.addEventListener("DOMContentLoaded",·function·()·{
635 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDataObject.html
    
Offset 269, 15 lines modifiedOffset 269, 15 lines modified
269 ······<p·class="built-using">269 ······<p·class="built-using">
270 ········Built·using270 ········Built·using
271 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the271 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
272 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>272 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
273 ······</p>273 ······</p>
274 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>274 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
275 ····</footer>275 ····</footer>
276 ··</div>276 ··</div>
277 </main>277 </main>
278 </div>278 </div>
279 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>279 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
280 <script>280 <script>
281 ··document.addEventListener("DOMContentLoaded",·function·()·{281 ··document.addEventListener("DOMContentLoaded",·function·()·{
617 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDateEvent.html
    
Offset 347, 15 lines modifiedOffset 347, 15 lines modified
347 ······<p·class="built-using">347 ······<p·class="built-using">
348 ········Built·using348 ········Built·using
349 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the349 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
350 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>350 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
351 ······</p>351 ······</p>
352 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>352 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
353 ····</footer>353 ····</footer>
354 ··</div>354 ··</div>
355 </main>355 </main>
356 </div>356 </div>
357 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>357 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
358 <script>358 <script>
359 ··document.addEventListener("DOMContentLoaded",·function·()·{359 ··document.addEventListener("DOMContentLoaded",·function·()·{
682 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDatePickerCtrl.html
    
Offset 574, 15 lines modifiedOffset 574, 15 lines modified
574 ······<p·class="built-using">574 ······<p·class="built-using">
575 ········Built·using575 ········Built·using
576 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the576 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
577 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>577 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
578 ······</p>578 ······</p>
579 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>579 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
580 ····</footer>580 ····</footer>
581 ··</div>581 ··</div>
582 </main>582 </main>
583 </div>583 </div>
584 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>584 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
585 <script>585 <script>
586 ··document.addEventListener("DOMContentLoaded",·function·()·{586 ··document.addEventListener("DOMContentLoaded",·function·()·{
647 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDialog.html
    
Offset 953, 15 lines modifiedOffset 953, 15 lines modified
953 ······<p·class="built-using">953 ······<p·class="built-using">
954 ········Built·using954 ········Built·using
955 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the955 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
956 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>956 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
957 ······</p>957 ······</p>
958 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>958 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
959 ····</footer>959 ····</footer>
960 ··</div>960 ··</div>
961 </main>961 </main>
962 </div>962 </div>
963 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>963 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
964 <script>964 <script>
965 ··document.addEventListener("DOMContentLoaded",·function·()·{965 ··document.addEventListener("DOMContentLoaded",·function·()·{
812 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDirDialog.html
    
Offset 515, 15 lines modifiedOffset 515, 15 lines modified
515 ······<p·class="built-using">515 ······<p·class="built-using">
516 ········Built·using516 ········Built·using
517 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the517 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
518 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>518 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
519 ······</p>519 ······</p>
520 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>520 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
521 ····</footer>521 ····</footer>
522 ··</div>522 ··</div>
523 </main>523 </main>
524 </div>524 </div>
525 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>525 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
526 <script>526 <script>
527 ··document.addEventListener("DOMContentLoaded",·function·()·{527 ··document.addEventListener("DOMContentLoaded",·function·()·{
664 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDirPickerCtrl.html
    
Offset 571, 15 lines modifiedOffset 571, 15 lines modified
571 ······<p·class="built-using">571 ······<p·class="built-using">
572 ········Built·using572 ········Built·using
573 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the573 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
574 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>574 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
575 ······</p>575 ······</p>
576 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>576 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
577 ····</footer>577 ····</footer>
578 ··</div>578 ··</div>
579 </main>579 </main>
580 </div>580 </div>
581 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>581 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
582 <script>582 <script>
583 ··document.addEventListener("DOMContentLoaded",·function·()·{583 ··document.addEventListener("DOMContentLoaded",·function·()·{
709 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDisplay.html
    
Offset 705, 15 lines modifiedOffset 705, 15 lines modified
705 ······<p·class="built-using">705 ······<p·class="built-using">
706 ········Built·using706 ········Built·using
707 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the707 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
708 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>708 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
709 ······</p>709 ······</p>
710 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>710 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
711 ····</footer>711 ····</footer>
712 ··</div>712 ··</div>
713 </main>713 </main>
714 </div>714 </div>
715 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>715 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
716 <script>716 <script>
717 ··document.addEventListener("DOMContentLoaded",·function·()·{717 ··document.addEventListener("DOMContentLoaded",·function·()·{
632 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDisplayChangedEvent.html
    
Offset 298, 15 lines modifiedOffset 298, 15 lines modified
298 ······<p·class="built-using">298 ······<p·class="built-using">
299 ········Built·using299 ········Built·using
300 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the300 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
301 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>301 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
302 ······</p>302 ······</p>
303 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>303 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
304 ····</footer>304 ····</footer>
305 ··</div>305 ··</div>
306 </main>306 </main>
307 </div>307 </div>
308 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>308 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
309 <script>309 <script>
310 ··document.addEventListener("DOMContentLoaded",·function·()·{310 ··document.addEventListener("DOMContentLoaded",·function·()·{
703 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxDropFilesEvent.html
    
Offset 439, 15 lines modifiedOffset 439, 15 lines modified
439 ······<p·class="built-using">439 ······<p·class="built-using">
440 ········Built·using440 ········Built·using
441 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the441 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
442 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>442 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
443 ······</p>443 ······</p>
444 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>444 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
445 ····</footer>445 ····</footer>
446 ··</div>446 ··</div>
447 </main>447 </main>
448 </div>448 </div>
449 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>449 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
450 <script>450 <script>
451 ··document.addEventListener("DOMContentLoaded",·function·()·{451 ··document.addEventListener("DOMContentLoaded",·function·()·{
642 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxEraseEvent.html
    
Offset 358, 15 lines modifiedOffset 358, 15 lines modified
358 ······<p·class="built-using">358 ······<p·class="built-using">
359 ········Built·using359 ········Built·using
360 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the360 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
361 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>361 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
362 ······</p>362 ······</p>
363 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>363 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
364 ····</footer>364 ····</footer>
365 ··</div>365 ··</div>
366 </main>366 </main>
367 </div>367 </div>
368 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>368 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
369 <script>369 <script>
370 ··document.addEventListener("DOMContentLoaded",·function·()·{370 ··document.addEventListener("DOMContentLoaded",·function·()·{
687 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxEvent.html
    
Offset 595, 15 lines modifiedOffset 595, 15 lines modified
595 ······<p·class="built-using">595 ······<p·class="built-using">
596 ········Built·using596 ········Built·using
597 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the597 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
598 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>598 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
599 ······</p>599 ······</p>
600 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>600 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
601 ····</footer>601 ····</footer>
602 ··</div>602 ··</div>
603 </main>603 </main>
604 </div>604 </div>
605 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>605 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
606 <script>606 <script>
607 ··document.addEventListener("DOMContentLoaded",·function·()·{607 ··document.addEventListener("DOMContentLoaded",·function·()·{
718 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxEvtHandler.html
    
Offset 657, 15 lines modifiedOffset 657, 15 lines modified
657 ······<p·class="built-using">657 ······<p·class="built-using">
658 ········Built·using658 ········Built·using
659 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the659 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
660 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>660 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
661 ······</p>661 ······</p>
662 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>662 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
663 ····</footer>663 ····</footer>
664 ··</div>664 ··</div>
665 </main>665 </main>
666 </div>666 </div>
667 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>667 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
668 <script>668 <script>
669 ··document.addEventListener("DOMContentLoaded",·function·()·{669 ··document.addEventListener("DOMContentLoaded",·function·()·{
732 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFileDataObject.html
    
Offset 392, 15 lines modifiedOffset 392, 15 lines modified
392 ······<p·class="built-using">392 ······<p·class="built-using">
393 ········Built·using393 ········Built·using
394 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the394 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
395 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>395 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
396 ······</p>396 ······</p>
397 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>397 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
398 ····</footer>398 ····</footer>
399 ··</div>399 ··</div>
400 </main>400 </main>
401 </div>401 </div>
402 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>402 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
403 <script>403 <script>
404 ··document.addEventListener("DOMContentLoaded",·function·()·{404 ··document.addEventListener("DOMContentLoaded",·function·()·{
602 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFileDialog.html
    
Offset 928, 15 lines modifiedOffset 928, 15 lines modified
928 ······<p·class="built-using">928 ······<p·class="built-using">
929 ········Built·using929 ········Built·using
930 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the930 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
931 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>931 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
932 ······</p>932 ······</p>
933 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>933 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
934 ····</footer>934 ····</footer>
935 ··</div>935 ··</div>
936 </main>936 </main>
937 </div>937 </div>
938 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>938 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
939 <script>939 <script>
940 ··document.addEventListener("DOMContentLoaded",·function·()·{940 ··document.addEventListener("DOMContentLoaded",·function·()·{
682 B
html2text {}
Max HTML report size reached
1.6 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFileDirPickerEvent.html
    
Offset 357, 15 lines modifiedOffset 357, 15 lines modified
357 ······<p·class="built-using">357 ······<p·class="built-using">
358 ········Built·using358 ········Built·using
359 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the359 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
360 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>360 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
361 ······</p>361 ······</p>
362 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>362 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
363 ····</footer>363 ····</footer>
364 ··</div>364 ··</div>
365 </main>365 </main>
366 </div>366 </div>
367 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>367 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
368 <script>368 <script>
369 ··document.addEventListener("DOMContentLoaded",·function·()·{369 ··document.addEventListener("DOMContentLoaded",·function·()·{
774 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFilePickerCtrl.html
    
Offset 575, 15 lines modifiedOffset 575, 15 lines modified
575 ······<p·class="built-using">575 ······<p·class="built-using">
576 ········Built·using576 ········Built·using
577 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the577 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
578 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>578 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
579 ······</p>579 ······</p>
580 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>580 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
581 ····</footer>581 ····</footer>
582 ··</div>582 ··</div>
583 </main>583 </main>
584 </div>584 </div>
585 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>585 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
586 <script>586 <script>
587 ··document.addEventListener("DOMContentLoaded",·function·()·{587 ··document.addEventListener("DOMContentLoaded",·function·()·{
721 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFindReplaceData.html
    
Offset 580, 15 lines modifiedOffset 580, 15 lines modified
580 ······<p·class="built-using">580 ······<p·class="built-using">
581 ········Built·using581 ········Built·using
582 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the582 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
583 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>583 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
584 ······</p>584 ······</p>
585 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>585 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
586 ····</footer>586 ····</footer>
587 ··</div>587 ··</div>
588 </main>588 </main>
589 </div>589 </div>
590 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>590 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
591 <script>591 <script>
592 ··document.addEventListener("DOMContentLoaded",·function·()·{592 ··document.addEventListener("DOMContentLoaded",·function·()·{
755 B
html2text {}
Max HTML report size reached
1.58 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFindReplaceDialog.html
    
Offset 521, 15 lines modifiedOffset 521, 15 lines modified
521 ······<p·class="built-using">521 ······<p·class="built-using">
522 ········Built·using522 ········Built·using
523 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the523 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
524 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>524 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
525 ······</p>525 ······</p>
526 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>526 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
527 ····</footer>527 ····</footer>
528 ··</div>528 ··</div>
529 </main>529 </main>
530 </div>530 </div>
531 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>531 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
532 <script>532 <script>
533 ··document.addEventListener("DOMContentLoaded",·function·()·{533 ··document.addEventListener("DOMContentLoaded",·function·()·{
765 B
html2text {}
Max HTML report size reached
1.58 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFlexGridSizer.html
    
Offset 840, 15 lines modifiedOffset 840, 15 lines modified
840 ······<p·class="built-using">840 ······<p·class="built-using">
841 ········Built·using841 ········Built·using
842 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the842 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
843 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>843 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
844 ······</p>844 ······</p>
845 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>845 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
846 ····</footer>846 ····</footer>
847 ··</div>847 ··</div>
848 </main>848 </main>
849 </div>849 </div>
850 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>850 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
851 <script>851 <script>
852 ··document.addEventListener("DOMContentLoaded",·function·()·{852 ··document.addEventListener("DOMContentLoaded",·function·()·{
771 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFocusEvent.html
    
Offset 367, 15 lines modifiedOffset 367, 15 lines modified
367 ······<p·class="built-using">367 ······<p·class="built-using">
368 ········Built·using368 ········Built·using
369 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the369 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
370 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>370 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
371 ······</p>371 ······</p>
372 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>372 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
373 ····</footer>373 ····</footer>
374 ··</div>374 ··</div>
375 </main>375 </main>
376 </div>376 </div>
377 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>377 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
378 <script>378 <script>
379 ··document.addEventListener("DOMContentLoaded",·function·()·{379 ··document.addEventListener("DOMContentLoaded",·function·()·{
743 B
html2text {}
Max HTML report size reached
1.38 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFont.html
    
Offset 1224, 15 lines modifiedOffset 1224, 15 lines modified
1224 ······<p·class="built-using">1224 ······<p·class="built-using">
1225 ········Built·using1225 ········Built·using
1226 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1226 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1227 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1227 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1228 ······</p>1228 ······</p>
1229 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1229 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1230 ····</footer>1230 ····</footer>
1231 ··</div>1231 ··</div>
1232 </main>1232 </main>
1233 </div>1233 </div>
1234 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1234 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1235 <script>1235 <script>
1236 ··document.addEventListener("DOMContentLoaded",·function·()·{1236 ··document.addEventListener("DOMContentLoaded",·function·()·{
583 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFontData.html
    
Offset 852, 15 lines modifiedOffset 852, 15 lines modified
852 ······<p·class="built-using">852 ······<p·class="built-using">
853 ········Built·using853 ········Built·using
854 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the854 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
855 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>855 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
856 ······</p>856 ······</p>
857 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>857 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
858 ····</footer>858 ····</footer>
859 ··</div>859 ··</div>
860 </main>860 </main>
861 </div>861 </div>
862 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>862 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
863 <script>863 <script>
864 ··document.addEventListener("DOMContentLoaded",·function·()·{864 ··document.addEventListener("DOMContentLoaded",·function·()·{
612 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFontDialog.html
    
Offset 436, 15 lines modifiedOffset 436, 15 lines modified
436 ······<p·class="built-using">436 ······<p·class="built-using">
437 ········Built·using437 ········Built·using
438 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the438 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
439 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>439 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
440 ······</p>440 ······</p>
441 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>441 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
442 ····</footer>442 ····</footer>
443 ··</div>443 ··</div>
444 </main>444 </main>
445 </div>445 </div>
446 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>446 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
447 <script>447 <script>
448 ··document.addEventListener("DOMContentLoaded",·function·()·{448 ··document.addEventListener("DOMContentLoaded",·function·()·{
656 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFontPickerCtrl.html
    
Offset 646, 15 lines modifiedOffset 646, 15 lines modified
646 ······<p·class="built-using">646 ······<p·class="built-using">
647 ········Built·using647 ········Built·using
648 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the648 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
649 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>649 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
650 ······</p>650 ······</p>
651 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>651 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
652 ····</footer>652 ····</footer>
653 ··</div>653 ··</div>
654 </main>654 </main>
655 </div>655 </div>
656 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>656 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
657 <script>657 <script>
658 ··document.addEventListener("DOMContentLoaded",·function·()·{658 ··document.addEventListener("DOMContentLoaded",·function·()·{
705 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFontPickerEvent.html
    
Offset 355, 15 lines modifiedOffset 355, 15 lines modified
355 ······<p·class="built-using">355 ······<p·class="built-using">
356 ········Built·using356 ········Built·using
357 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the357 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
358 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>358 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
359 ······</p>359 ······</p>
360 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>360 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
361 ····</footer>361 ····</footer>
362 ··</div>362 ··</div>
363 </main>363 </main>
364 </div>364 </div>
365 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>365 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
366 <script>366 <script>
367 ··document.addEventListener("DOMContentLoaded",·function·()·{367 ··document.addEventListener("DOMContentLoaded",·function·()·{
725 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxFrame.html
    
Offset 1250, 15 lines modifiedOffset 1250, 15 lines modified
1250 ······<p·class="built-using">1250 ······<p·class="built-using">
1251 ········Built·using1251 ········Built·using
1252 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1252 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1253 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1253 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1254 ······</p>1254 ······</p>
1255 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1255 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1256 ····</footer>1256 ····</footer>
1257 ··</div>1257 ··</div>
1258 </main>1258 </main>
1259 </div>1259 </div>
1260 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1260 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1261 <script>1261 <script>
1262 ··document.addEventListener("DOMContentLoaded",·function·()·{1262 ··document.addEventListener("DOMContentLoaded",·function·()·{
703 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGBSizerItem.html
    
Offset 222, 15 lines modifiedOffset 222, 15 lines modified
222 ······<p·class="built-using">222 ······<p·class="built-using">
223 ········Built·using223 ········Built·using
224 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the224 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
225 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>225 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
226 ······</p>226 ······</p>
227 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>227 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
228 ····</footer>228 ····</footer>
229 ··</div>229 ··</div>
230 </main>230 </main>
231 </div>231 </div>
232 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>232 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
233 <script>233 <script>
234 ··document.addEventListener("DOMContentLoaded",·function·()·{234 ··document.addEventListener("DOMContentLoaded",·function·()·{
621 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGCDC.html
    
Offset 431, 15 lines modifiedOffset 431, 15 lines modified
431 ······<p·class="built-using">431 ······<p·class="built-using">
432 ········Built·using432 ········Built·using
433 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the433 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
434 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>434 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
435 ······</p>435 ······</p>
436 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>436 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
437 ····</footer>437 ····</footer>
438 ··</div>438 ··</div>
439 </main>439 </main>
440 </div>440 </div>
441 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>441 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
442 <script>442 <script>
443 ··document.addEventListener("DOMContentLoaded",·function·()·{443 ··document.addEventListener("DOMContentLoaded",·function·()·{
818 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGLCanvas.html
    
Offset 552, 15 lines modifiedOffset 552, 15 lines modified
552 ······<p·class="built-using">552 ······<p·class="built-using">
553 ········Built·using553 ········Built·using
554 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the554 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
555 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>555 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
556 ······</p>556 ······</p>
557 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>557 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
558 ····</footer>558 ····</footer>
559 ··</div>559 ··</div>
560 </main>560 </main>
561 </div>561 </div>
562 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>562 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
563 <script>563 <script>
564 ··document.addEventListener("DOMContentLoaded",·function·()·{564 ··document.addEventListener("DOMContentLoaded",·function·()·{
681 B
html2text {}
Max HTML report size reached
1.58 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGLContext.html
    
Offset 458, 15 lines modifiedOffset 458, 15 lines modified
458 ······<p·class="built-using">458 ······<p·class="built-using">
459 ········Built·using459 ········Built·using
460 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the460 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
461 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>461 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
462 ······</p>462 ······</p>
463 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>463 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
464 ····</footer>464 ····</footer>
465 ··</div>465 ··</div>
466 </main>466 </main>
467 </div>467 </div>
468 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>468 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
469 <script>469 <script>
470 ··document.addEventListener("DOMContentLoaded",·function·()·{470 ··document.addEventListener("DOMContentLoaded",·function·()·{
773 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGauge.html
    
Offset 727, 15 lines modifiedOffset 727, 15 lines modified
727 ······<p·class="built-using">727 ······<p·class="built-using">
728 ········Built·using728 ········Built·using
729 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the729 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
730 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>730 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
731 ······</p>731 ······</p>
732 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>732 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
733 ····</footer>733 ····</footer>
734 ··</div>734 ··</div>
735 </main>735 </main>
736 </div>736 </div>
737 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>737 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
738 <script>738 <script>
739 ··document.addEventListener("DOMContentLoaded",·function·()·{739 ··document.addEventListener("DOMContentLoaded",·function·()·{
610 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGenericDirCtrl.html
    
Offset 1101, 15 lines modifiedOffset 1101, 15 lines modified
1101 ······<p·class="built-using">1101 ······<p·class="built-using">
1102 ········Built·using1102 ········Built·using
1103 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1103 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1104 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1104 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1105 ······</p>1105 ······</p>
1106 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1106 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1107 ····</footer>1107 ····</footer>
1108 ··</div>1108 ··</div>
1109 </main>1109 </main>
1110 </div>1110 </div>
1111 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1111 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1112 <script>1112 <script>
1113 ··document.addEventListener("DOMContentLoaded",·function·()·{1113 ··document.addEventListener("DOMContentLoaded",·function·()·{
680 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGraphicsBrush.html
    
Offset 220, 15 lines modifiedOffset 220, 15 lines modified
220 ······<p·class="built-using">220 ······<p·class="built-using">
221 ········Built·using221 ········Built·using
222 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the222 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
223 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>223 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
224 ······</p>224 ······</p>
225 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>225 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
226 ····</footer>226 ····</footer>
227 ··</div>227 ··</div>
228 </main>228 </main>
229 </div>229 </div>
230 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>230 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
231 <script>231 <script>
232 ··document.addEventListener("DOMContentLoaded",·function·()·{232 ··document.addEventListener("DOMContentLoaded",·function·()·{
629 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGraphicsContext.html
    
Offset 2206, 15 lines modifiedOffset 2206, 15 lines modified
2206 ······<p·class="built-using">2206 ······<p·class="built-using">
2207 ········Built·using2207 ········Built·using
2208 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2208 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2209 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2209 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2210 ······</p>2210 ······</p>
2211 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2211 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2212 ····</footer>2212 ····</footer>
2213 ··</div>2213 ··</div>
2214 </main>2214 </main>
2215 </div>2215 </div>
2216 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2216 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2217 <script>2217 <script>
2218 ··document.addEventListener("DOMContentLoaded",·function·()·{2218 ··document.addEventListener("DOMContentLoaded",·function·()·{
716 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGraphicsFont.html
    
Offset 220, 15 lines modifiedOffset 220, 15 lines modified
220 ······<p·class="built-using">220 ······<p·class="built-using">
221 ········Built·using221 ········Built·using
222 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the222 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
223 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>223 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
224 ······</p>224 ······</p>
225 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>225 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
226 ····</footer>226 ····</footer>
227 ··</div>227 ··</div>
228 </main>228 </main>
229 </div>229 </div>
230 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>230 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
231 <script>231 <script>
232 ··document.addEventListener("DOMContentLoaded",·function·()·{232 ··document.addEventListener("DOMContentLoaded",·function·()·{
625 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGraphicsGradientStops.html
    
Offset 620, 15 lines modifiedOffset 620, 15 lines modified
620 ······<p·class="built-using">620 ······<p·class="built-using">
621 ········Built·using621 ········Built·using
622 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the622 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
623 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>623 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
624 ······</p>624 ······</p>
625 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>625 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
626 ····</footer>626 ····</footer>
627 ··</div>627 ··</div>
628 </main>628 </main>
629 </div>629 </div>
630 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>630 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
631 <script>631 <script>
632 ··document.addEventListener("DOMContentLoaded",·function·()·{632 ··document.addEventListener("DOMContentLoaded",·function·()·{
718 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGraphicsMatrix.html
    
Offset 716, 15 lines modifiedOffset 716, 15 lines modified
716 ······<p·class="built-using">716 ······<p·class="built-using">
717 ········Built·using717 ········Built·using
718 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the718 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
719 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>719 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
720 ······</p>720 ······</p>
721 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>721 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
722 ····</footer>722 ····</footer>
723 ··</div>723 ··</div>
724 </main>724 </main>
725 </div>725 </div>
726 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>726 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
727 <script>727 <script>
728 ··document.addEventListener("DOMContentLoaded",·function·()·{728 ··document.addEventListener("DOMContentLoaded",·function·()·{
691 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGraphicsObject.html
    
Offset 351, 15 lines modifiedOffset 351, 15 lines modified
351 ······<p·class="built-using">351 ······<p·class="built-using">
352 ········Built·using352 ········Built·using
353 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the353 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
354 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>354 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
355 ······</p>355 ······</p>
356 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>356 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
357 ····</footer>357 ····</footer>
358 ··</div>358 ··</div>
359 </main>359 </main>
360 </div>360 </div>
361 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>361 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
362 <script>362 <script>
363 ··document.addEventListener("DOMContentLoaded",·function·()·{363 ··document.addEventListener("DOMContentLoaded",·function·()·{
717 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGraphicsPath.html
    
Offset 1176, 15 lines modifiedOffset 1176, 15 lines modified
1176 ······<p·class="built-using">1176 ······<p·class="built-using">
1177 ········Built·using1177 ········Built·using
1178 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1178 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1179 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1179 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1180 ······</p>1180 ······</p>
1181 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1181 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1182 ····</footer>1182 ····</footer>
1183 ··</div>1183 ··</div>
1184 </main>1184 </main>
1185 </div>1185 </div>
1186 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1186 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1187 <script>1187 <script>
1188 ··document.addEventListener("DOMContentLoaded",·function·()·{1188 ··document.addEventListener("DOMContentLoaded",·function·()·{
720 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGraphicsPen.html
    
Offset 221, 15 lines modifiedOffset 221, 15 lines modified
221 ······<p·class="built-using">221 ······<p·class="built-using">
222 ········Built·using222 ········Built·using
223 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the223 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
224 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>224 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
225 ······</p>225 ······</p>
226 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>226 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
227 ····</footer>227 ····</footer>
228 ··</div>228 ··</div>
229 </main>229 </main>
230 </div>230 </div>
231 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>231 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
232 <script>232 <script>
233 ··document.addEventListener("DOMContentLoaded",·function·()·{233 ··document.addEventListener("DOMContentLoaded",·function·()·{
621 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGraphicsRenderer.html
    
Offset 706, 15 lines modifiedOffset 706, 15 lines modified
706 ······<p·class="built-using">706 ······<p·class="built-using">
707 ········Built·using707 ········Built·using
708 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the708 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
709 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>709 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
710 ······</p>710 ······</p>
711 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>711 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
712 ····</footer>712 ····</footer>
713 ··</div>713 ··</div>
714 </main>714 </main>
715 </div>715 </div>
716 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>716 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
717 <script>717 <script>
718 ··document.addEventListener("DOMContentLoaded",·function·()·{718 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGrid.html
    
Offset 8474, 15 lines modifiedOffset 8474, 15 lines modified
8474 ······<p·class="built-using">8474 ······<p·class="built-using">
8475 ········Built·using8475 ········Built·using
8476 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the8476 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
8477 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>8477 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
8478 ······</p>8478 ······</p>
8479 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>8479 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
8480 ····</footer>8480 ····</footer>
8481 ··</div>8481 ··</div>
8482 </main>8482 </main>
8483 </div>8483 </div>
8484 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>8484 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
8485 <script>8485 <script>
8486 ··document.addEventListener("DOMContentLoaded",·function·()·{8486 ··document.addEventListener("DOMContentLoaded",·function·()·{
677 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridBagSizer.html
    
Offset 1146, 15 lines modifiedOffset 1146, 15 lines modified
1146 ······<p·class="built-using">1146 ······<p·class="built-using">
1147 ········Built·using1147 ········Built·using
1148 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1148 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1149 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1149 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1150 ······</p>1150 ······</p>
1151 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1151 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1152 ····</footer>1152 ····</footer>
1153 ··</div>1153 ··</div>
1154 </main>1154 </main>
1155 </div>1155 </div>
1156 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1156 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1157 <script>1157 <script>
1158 ··document.addEventListener("DOMContentLoaded",·function·()·{1158 ··document.addEventListener("DOMContentLoaded",·function·()·{
697 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellAttr.html
    
Offset 1093, 15 lines modifiedOffset 1093, 15 lines modified
1093 ······<p·class="built-using">1093 ······<p·class="built-using">
1094 ········Built·using1094 ········Built·using
1095 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1095 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1096 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1096 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1097 ······</p>1097 ······</p>
1098 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1098 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1099 ····</footer>1099 ····</footer>
1100 ··</div>1100 ··</div>
1101 </main>1101 </main>
1102 </div>1102 </div>
1103 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1103 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1104 <script>1104 <script>
1105 ··document.addEventListener("DOMContentLoaded",·function·()·{1105 ··document.addEventListener("DOMContentLoaded",·function·()·{
700 B
html2text {}
Max HTML report size reached
1.57 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellBoolEditor.html
    
Offset 434, 15 lines modifiedOffset 434, 15 lines modified
434 ······<p·class="built-using">434 ······<p·class="built-using">
435 ········Built·using435 ········Built·using
436 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the436 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
437 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>437 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
438 ······</p>438 ······</p>
439 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>439 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
440 ····</footer>440 ····</footer>
441 ··</div>441 ··</div>
442 </main>442 </main>
443 </div>443 </div>
444 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>444 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
445 <script>445 <script>
446 ··document.addEventListener("DOMContentLoaded",·function·()·{446 ··document.addEventListener("DOMContentLoaded",·function·()·{
747 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellBoolRenderer.html
    
Offset 312, 15 lines modifiedOffset 312, 15 lines modified
312 ······<p·class="built-using">312 ······<p·class="built-using">
313 ········Built·using313 ········Built·using
314 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the314 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
315 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>315 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
316 ······</p>316 ······</p>
317 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>317 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
318 ····</footer>318 ····</footer>
319 ··</div>319 ··</div>
320 </main>320 </main>
321 </div>321 </div>
322 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>322 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
323 <script>323 <script>
324 ··document.addEventListener("DOMContentLoaded",·function·()·{324 ··document.addEventListener("DOMContentLoaded",·function·()·{
628 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellChoiceEditor.html
    
Offset 393, 15 lines modifiedOffset 393, 15 lines modified
393 ······<p·class="built-using">393 ······<p·class="built-using">
394 ········Built·using394 ········Built·using
395 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the395 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
396 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>396 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
397 ······</p>397 ······</p>
398 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>398 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
399 ····</footer>399 ····</footer>
400 ··</div>400 ··</div>
401 </main>401 </main>
402 </div>402 </div>
403 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>403 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
404 <script>404 <script>
405 ··document.addEventListener("DOMContentLoaded",·function·()·{405 ··document.addEventListener("DOMContentLoaded",·function·()·{
638 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellEditor.html
    
Offset 604, 15 lines modifiedOffset 604, 15 lines modified
604 ······<p·class="built-using">604 ······<p·class="built-using">
605 ········Built·using605 ········Built·using
606 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the606 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
607 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>607 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
608 ······</p>608 ······</p>
609 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>609 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
610 ····</footer>610 ····</footer>
611 ··</div>611 ··</div>
612 </main>612 </main>
613 </div>613 </div>
614 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>614 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
615 <script>615 <script>
616 ··document.addEventListener("DOMContentLoaded",·function·()·{616 ··document.addEventListener("DOMContentLoaded",·function·()·{
723 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellFloatEditor.html
    
Offset 392, 15 lines modifiedOffset 392, 15 lines modified
392 ······<p·class="built-using">392 ······<p·class="built-using">
393 ········Built·using393 ········Built·using
394 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the394 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
395 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>395 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
396 ······</p>396 ······</p>
397 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>397 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
398 ····</footer>398 ····</footer>
399 ··</div>399 ··</div>
400 </main>400 </main>
401 </div>401 </div>
402 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>402 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
403 <script>403 <script>
404 ··document.addEventListener("DOMContentLoaded",·function·()·{404 ··document.addEventListener("DOMContentLoaded",·function·()·{
708 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellFloatRenderer.html
    
Offset 545, 15 lines modifiedOffset 545, 15 lines modified
545 ······<p·class="built-using">545 ······<p·class="built-using">
546 ········Built·using546 ········Built·using
547 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the547 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
548 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>548 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
549 ······</p>549 ······</p>
550 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>550 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
551 ····</footer>551 ····</footer>
552 ··</div>552 ··</div>
553 </main>553 </main>
554 </div>554 </div>
555 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>555 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
556 <script>556 <script>
557 ··document.addEventListener("DOMContentLoaded",·function·()·{557 ··document.addEventListener("DOMContentLoaded",·function·()·{
674 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellNumberEditor.html
    
Offset 429, 15 lines modifiedOffset 429, 15 lines modified
429 ······<p·class="built-using">429 ······<p·class="built-using">
430 ········Built·using430 ········Built·using
431 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the431 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
432 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>432 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
433 ······</p>433 ······</p>
434 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>434 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
435 ····</footer>435 ····</footer>
436 ··</div>436 ··</div>
437 </main>437 </main>
438 </div>438 </div>
439 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>439 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
440 <script>440 <script>
441 ··document.addEventListener("DOMContentLoaded",·function·()·{441 ··document.addEventListener("DOMContentLoaded",·function·()·{
651 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellNumberRenderer.html
    
Offset 315, 15 lines modifiedOffset 315, 15 lines modified
315 ······<p·class="built-using">315 ······<p·class="built-using">
316 ········Built·using316 ········Built·using
317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
319 ······</p>319 ······</p>
320 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
321 ····</footer>321 ····</footer>
322 ··</div>322 ··</div>
323 </main>323 </main>
324 </div>324 </div>
325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
326 <script>326 <script>
327 ··document.addEventListener("DOMContentLoaded",·function·()·{327 ··document.addEventListener("DOMContentLoaded",·function·()·{
634 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellRenderer.html
    
Offset 343, 15 lines modifiedOffset 343, 15 lines modified
343 ······<p·class="built-using">343 ······<p·class="built-using">
344 ········Built·using344 ········Built·using
345 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the345 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
346 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>346 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
347 ······</p>347 ······</p>
348 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>348 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
349 ····</footer>349 ····</footer>
350 ··</div>350 ··</div>
351 </main>351 </main>
352 </div>352 </div>
353 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>353 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
354 <script>354 <script>
355 ··document.addEventListener("DOMContentLoaded",·function·()·{355 ··document.addEventListener("DOMContentLoaded",·function·()·{
648 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellStringRenderer.html
    
Offset 313, 15 lines modifiedOffset 313, 15 lines modified
313 ······<p·class="built-using">313 ······<p·class="built-using">
314 ········Built·using314 ········Built·using
315 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the315 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
316 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>316 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
317 ······</p>317 ······</p>
318 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>318 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
319 ····</footer>319 ····</footer>
320 ··</div>320 ··</div>
321 </main>321 </main>
322 </div>322 </div>
323 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>323 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
324 <script>324 <script>
325 ··document.addEventListener("DOMContentLoaded",·function·()·{325 ··document.addEventListener("DOMContentLoaded",·function·()·{
634 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridCellTextEditor.html
    
Offset 391, 15 lines modifiedOffset 391, 15 lines modified
391 ······<p·class="built-using">391 ······<p·class="built-using">
392 ········Built·using392 ········Built·using
393 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the393 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
394 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>394 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
395 ······</p>395 ······</p>
396 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>396 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
397 ····</footer>397 ····</footer>
398 ··</div>398 ··</div>
399 </main>399 </main>
400 </div>400 </div>
401 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>401 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
402 <script>402 <script>
403 ··document.addEventListener("DOMContentLoaded",·function·()·{403 ··document.addEventListener("DOMContentLoaded",·function·()·{
661 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridEvent.html
    
Offset 645, 15 lines modifiedOffset 645, 15 lines modified
645 ······<p·class="built-using">645 ······<p·class="built-using">
646 ········Built·using646 ········Built·using
647 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the647 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
648 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>648 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
649 ······</p>649 ······</p>
650 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>650 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
651 ····</footer>651 ····</footer>
652 ··</div>652 ··</div>
653 </main>653 </main>
654 </div>654 </div>
655 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>655 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
656 <script>656 <script>
657 ··document.addEventListener("DOMContentLoaded",·function·()·{657 ··document.addEventListener("DOMContentLoaded",·function·()·{
718 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxGridSizer.html
    
Offset 735, 15 lines modifiedOffset 735, 15 lines modified
735 ······<p·class="built-using">735 ······<p·class="built-using">
736 ········Built·using736 ········Built·using
737 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the737 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
738 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>738 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
739 ······</p>739 ······</p>
740 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>740 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
741 ····</footer>741 ····</footer>
742 ··</div>742 ··</div>
743 </main>743 </main>
744 </div>744 </div>
745 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>745 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
746 <script>746 <script>
747 ··document.addEventListener("DOMContentLoaded",·function·()·{747 ··document.addEventListener("DOMContentLoaded",·function·()·{
740 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxHelpEvent.html
    
Offset 481, 15 lines modifiedOffset 481, 15 lines modified
481 ······<p·class="built-using">481 ······<p·class="built-using">
482 ········Built·using482 ········Built·using
483 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the483 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
484 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>484 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
485 ······</p>485 ······</p>
486 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>486 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
487 ····</footer>487 ····</footer>
488 ··</div>488 ··</div>
489 </main>489 </main>
490 </div>490 </div>
491 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>491 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
492 <script>492 <script>
493 ··document.addEventListener("DOMContentLoaded",·function·()·{493 ··document.addEventListener("DOMContentLoaded",·function·()·{
722 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxHtmlEasyPrinting.html
    
Offset 949, 15 lines modifiedOffset 949, 15 lines modified
949 ······<p·class="built-using">949 ······<p·class="built-using">
950 ········Built·using950 ········Built·using
951 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the951 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
952 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>952 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
953 ······</p>953 ······</p>
954 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>954 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
955 ····</footer>955 ····</footer>
956 ··</div>956 ··</div>
957 </main>957 </main>
958 </div>958 </div>
959 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>959 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
960 <script>960 <script>
961 ··document.addEventListener("DOMContentLoaded",·function·()·{961 ··document.addEventListener("DOMContentLoaded",·function·()·{
671 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxHtmlLinkEvent.html
    
Offset 357, 15 lines modifiedOffset 357, 15 lines modified
357 ······<p·class="built-using">357 ······<p·class="built-using">
358 ········Built·using358 ········Built·using
359 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the359 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
360 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>360 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
361 ······</p>361 ······</p>
362 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>362 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
363 ····</footer>363 ····</footer>
364 ··</div>364 ··</div>
365 </main>365 </main>
366 </div>366 </div>
367 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>367 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
368 <script>368 <script>
369 ··document.addEventListener("DOMContentLoaded",·function·()·{369 ··document.addEventListener("DOMContentLoaded",·function·()·{
701 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxHtmlWindow.html
    
Offset 1356, 15 lines modifiedOffset 1356, 15 lines modified
1356 ······<p·class="built-using">1356 ······<p·class="built-using">
1357 ········Built·using1357 ········Built·using
1358 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1358 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1359 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1359 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1360 ······</p>1360 ······</p>
1361 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1361 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1362 ····</footer>1362 ····</footer>
1363 ··</div>1363 ··</div>
1364 </main>1364 </main>
1365 </div>1365 </div>
1366 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1366 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1367 <script>1367 <script>
1368 ··document.addEventListener("DOMContentLoaded",·function·()·{1368 ··document.addEventListener("DOMContentLoaded",·function·()·{
730 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxIcon.html
    
Offset 449, 15 lines modifiedOffset 449, 15 lines modified
449 ······<p·class="built-using">449 ······<p·class="built-using">
450 ········Built·using450 ········Built·using
451 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the451 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
452 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>452 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
453 ······</p>453 ······</p>
454 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>454 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
455 ····</footer>455 ····</footer>
456 ··</div>456 ··</div>
457 </main>457 </main>
458 </div>458 </div>
459 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>459 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
460 <script>460 <script>
461 ··document.addEventListener("DOMContentLoaded",·function·()·{461 ··document.addEventListener("DOMContentLoaded",·function·()·{
703 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxIconBundle.html
    
Offset 596, 15 lines modifiedOffset 596, 15 lines modified
596 ······<p·class="built-using">596 ······<p·class="built-using">
597 ········Built·using597 ········Built·using
598 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the598 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
599 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>599 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
600 ······</p>600 ······</p>
601 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>601 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
602 ····</footer>602 ····</footer>
603 ··</div>603 ··</div>
604 </main>604 </main>
605 </div>605 </div>
606 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>606 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
607 <script>607 <script>
608 ··document.addEventListener("DOMContentLoaded",·function·()·{608 ··document.addEventListener("DOMContentLoaded",·function·()·{
723 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxIconizeEvent.html
    
Offset 355, 15 lines modifiedOffset 355, 15 lines modified
355 ······<p·class="built-using">355 ······<p·class="built-using">
356 ········Built·using356 ········Built·using
357 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the357 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
358 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>358 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
359 ······</p>359 ······</p>
360 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>360 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
361 ····</footer>361 ····</footer>
362 ··</div>362 ··</div>
363 </main>363 </main>
364 </div>364 </div>
365 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>365 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
366 <script>366 <script>
367 ··document.addEventListener("DOMContentLoaded",·function·()·{367 ··document.addEventListener("DOMContentLoaded",·function·()·{
740 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxIdleEvent.html
    
Offset 549, 15 lines modifiedOffset 549, 15 lines modified
549 ······<p·class="built-using">549 ······<p·class="built-using">
550 ········Built·using550 ········Built·using
551 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the551 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
552 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>552 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
553 ······</p>553 ······</p>
554 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>554 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
555 ····</footer>555 ····</footer>
556 ··</div>556 ··</div>
557 </main>557 </main>
558 </div>558 </div>
559 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>559 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
560 <script>560 <script>
561 ··document.addEventListener("DOMContentLoaded",·function·()·{561 ··document.addEventListener("DOMContentLoaded",·function·()·{
707 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxImage.html
    
Offset 3813, 15 lines modifiedOffset 3813, 15 lines modified
3813 ······<p·class="built-using">3813 ······<p·class="built-using">
3814 ········Built·using3814 ········Built·using
3815 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3815 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3816 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3816 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3817 ······</p>3817 ······</p>
3818 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3818 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3819 ····</footer>3819 ····</footer>
3820 ··</div>3820 ··</div>
3821 </main>3821 </main>
3822 </div>3822 </div>
3823 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3823 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3824 <script>3824 <script>
3825 ··document.addEventListener("DOMContentLoaded",·function·()·{3825 ··document.addEventListener("DOMContentLoaded",·function·()·{
633 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxImageList.html
    
Offset 970, 15 lines modifiedOffset 970, 15 lines modified
970 ······<p·class="built-using">970 ······<p·class="built-using">
971 ········Built·using971 ········Built·using
972 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the972 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
973 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>973 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
974 ······</p>974 ······</p>
975 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>975 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
976 ····</footer>976 ····</footer>
977 ··</div>977 ··</div>
978 </main>978 </main>
979 </div>979 </div>
980 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>980 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
981 <script>981 <script>
982 ··document.addEventListener("DOMContentLoaded",·function·()·{982 ··document.addEventListener("DOMContentLoaded",·function·()·{
628 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxInitDialogEvent.html
    
Offset 299, 15 lines modifiedOffset 299, 15 lines modified
299 ······<p·class="built-using">299 ······<p·class="built-using">
300 ········Built·using300 ········Built·using
301 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the301 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
302 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>302 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
303 ······</p>303 ······</p>
304 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>304 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
305 ····</footer>305 ····</footer>
306 ··</div>306 ··</div>
307 </main>307 </main>
308 </div>308 </div>
309 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>309 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
310 <script>310 <script>
311 ··document.addEventListener("DOMContentLoaded",·function·()·{311 ··document.addEventListener("DOMContentLoaded",·function·()·{
679 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxJoystickEvent.html
    
Offset 860, 15 lines modifiedOffset 860, 15 lines modified
860 ······<p·class="built-using">860 ······<p·class="built-using">
861 ········Built·using861 ········Built·using
862 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the862 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
863 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>863 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
864 ······</p>864 ······</p>
865 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>865 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
866 ····</footer>866 ····</footer>
867 ··</div>867 ··</div>
868 </main>868 </main>
869 </div>869 </div>
870 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>870 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
871 <script>871 <script>
872 ··document.addEventListener("DOMContentLoaded",·function·()·{872 ··document.addEventListener("DOMContentLoaded",·function·()·{
698 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxKeyEvent.html
    
Offset 966, 15 lines modifiedOffset 966, 15 lines modified
966 ······<p·class="built-using">966 ······<p·class="built-using">
967 ········Built·using967 ········Built·using
968 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the968 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
969 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>969 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
970 ······</p>970 ······</p>
971 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>971 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
972 ····</footer>972 ····</footer>
973 ··</div>973 ··</div>
974 </main>974 </main>
975 </div>975 </div>
976 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>976 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
977 <script>977 <script>
978 ··document.addEventListener("DOMContentLoaded",·function·()·{978 ··document.addEventListener("DOMContentLoaded",·function·()·{
712 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxLayoutAlgorithm.html
    
Offset 602, 15 lines modifiedOffset 602, 15 lines modified
602 ······<p·class="built-using">602 ······<p·class="built-using">
603 ········Built·using603 ········Built·using
604 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the604 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
605 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>605 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
606 ······</p>606 ······</p>
607 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>607 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
608 ····</footer>608 ····</footer>
609 ··</div>609 ··</div>
610 </main>610 </main>
611 </div>611 </div>
612 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>612 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
613 <script>613 <script>
614 ··document.addEventListener("DOMContentLoaded",·function·()·{614 ··document.addEventListener("DOMContentLoaded",·function·()·{
615 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxListBox.html
    
Offset 817, 15 lines modifiedOffset 817, 15 lines modified
817 ······<p·class="built-using">817 ······<p·class="built-using">
818 ········Built·using818 ········Built·using
819 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the819 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
820 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>820 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
821 ······</p>821 ······</p>
822 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>822 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
823 ····</footer>823 ····</footer>
824 ··</div>824 ··</div>
825 </main>825 </main>
826 </div>826 </div>
827 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>827 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
828 <script>828 <script>
829 ··document.addEventListener("DOMContentLoaded",·function·()·{829 ··document.addEventListener("DOMContentLoaded",·function·()·{
712 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxListCtrl.html
    
Offset 3230, 15 lines modifiedOffset 3230, 15 lines modified
3230 ······<p·class="built-using">3230 ······<p·class="built-using">
3231 ········Built·using3231 ········Built·using
3232 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3232 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3233 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3233 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3234 ······</p>3234 ······</p>
3235 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3235 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3236 ····</footer>3236 ····</footer>
3237 ··</div>3237 ··</div>
3238 </main>3238 </main>
3239 </div>3239 </div>
3240 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3240 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3241 <script>3241 <script>
3242 ··document.addEventListener("DOMContentLoaded",·function·()·{3242 ··document.addEventListener("DOMContentLoaded",·function·()·{
635 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxListEvent.html
    
Offset 837, 15 lines modifiedOffset 837, 15 lines modified
837 ······<p·class="built-using">837 ······<p·class="built-using">
838 ········Built·using838 ········Built·using
839 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the839 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
840 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>840 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
841 ······</p>841 ······</p>
842 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>842 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
843 ····</footer>843 ····</footer>
844 ··</div>844 ··</div>
845 </main>845 </main>
846 </div>846 </div>
847 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>847 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
848 <script>848 <script>
849 ··document.addEventListener("DOMContentLoaded",·function·()·{849 ··document.addEventListener("DOMContentLoaded",·function·()·{
748 B
html2text {}
Max HTML report size reached
1.4 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxListItem.html
    
Offset 1272, 15 lines modifiedOffset 1272, 15 lines modified
1272 ······<p·class="built-using">1272 ······<p·class="built-using">
1273 ········Built·using1273 ········Built·using
1274 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1274 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1275 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1275 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1276 ······</p>1276 ······</p>
1277 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1277 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1278 ····</footer>1278 ····</footer>
1279 ··</div>1279 ··</div>
1280 </main>1280 </main>
1281 </div>1281 </div>
1282 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1282 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1283 <script>1283 <script>
1284 ··document.addEventListener("DOMContentLoaded",·function·()·{1284 ··document.addEventListener("DOMContentLoaded",·function·()·{
596 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxListItemAttr.html
    
Offset 670, 15 lines modifiedOffset 670, 15 lines modified
670 ······<p·class="built-using">670 ······<p·class="built-using">
671 ········Built·using671 ········Built·using
672 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the672 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
673 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>673 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
674 ······</p>674 ······</p>
675 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>675 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
676 ····</footer>676 ····</footer>
677 ··</div>677 ··</div>
678 </main>678 </main>
679 </div>679 </div>
680 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>680 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
681 <script>681 <script>
682 ··document.addEventListener("DOMContentLoaded",·function·()·{682 ··document.addEventListener("DOMContentLoaded",·function·()·{
740 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxListView.html
    
Offset 589, 15 lines modifiedOffset 589, 15 lines modified
589 ······<p·class="built-using">589 ······<p·class="built-using">
590 ········Built·using590 ········Built·using
591 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the591 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
592 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>592 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
593 ······</p>593 ······</p>
594 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>594 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
595 ····</footer>595 ····</footer>
596 ··</div>596 ··</div>
597 </main>597 </main>
598 </div>598 </div>
599 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>599 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
600 <script>600 <script>
601 ··document.addEventListener("DOMContentLoaded",·function·()·{601 ··document.addEventListener("DOMContentLoaded",·function·()·{
649 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxListbook.html
    
Offset 1358, 15 lines modifiedOffset 1358, 15 lines modified
1358 ······<p·class="built-using">1358 ······<p·class="built-using">
1359 ········Built·using1359 ········Built·using
1360 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1360 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1361 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1361 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1362 ······</p>1362 ······</p>
1363 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1363 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1364 ····</footer>1364 ····</footer>
1365 ··</div>1365 ··</div>
1366 </main>1366 </main>
1367 </div>1367 </div>
1368 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1368 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1369 <script>1369 <script>
1370 ··document.addEventListener("DOMContentLoaded",·function·()·{1370 ··document.addEventListener("DOMContentLoaded",·function·()·{
708 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxLocale.html
    
Offset 1381, 15 lines modifiedOffset 1381, 15 lines modified
1381 ······<p·class="built-using">1381 ······<p·class="built-using">
1382 ········Built·using1382 ········Built·using
1383 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1383 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1384 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1384 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1385 ······</p>1385 ······</p>
1386 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1386 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1387 ····</footer>1387 ····</footer>
1388 ··</div>1388 ··</div>
1389 </main>1389 </main>
1390 </div>1390 </div>
1391 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1391 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1392 <script>1392 <script>
1393 ··document.addEventListener("DOMContentLoaded",·function·()·{1393 ··document.addEventListener("DOMContentLoaded",·function·()·{
764 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxLogNull.html
    
Offset 315, 15 lines modifiedOffset 315, 15 lines modified
315 ······<p·class="built-using">315 ······<p·class="built-using">
316 ········Built·using316 ········Built·using
317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
319 ······</p>319 ······</p>
320 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
321 ····</footer>321 ····</footer>
322 ··</div>322 ··</div>
323 </main>323 </main>
324 </div>324 </div>
325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
326 <script>326 <script>
327 ··document.addEventListener("DOMContentLoaded",·function·()·{327 ··document.addEventListener("DOMContentLoaded",·function·()·{
586 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMDIChildFrame.html
    
Offset 648, 15 lines modifiedOffset 648, 15 lines modified
648 ······<p·class="built-using">648 ······<p·class="built-using">
649 ········Built·using649 ········Built·using
650 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the650 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
651 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>651 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
652 ······</p>652 ······</p>
653 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>653 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
654 ····</footer>654 ····</footer>
655 ··</div>655 ··</div>
656 </main>656 </main>
657 </div>657 </div>
658 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>658 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
659 <script>659 <script>
660 ··document.addEventListener("DOMContentLoaded",·function·()·{660 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMDIClientWindow.html
    
Offset 403, 15 lines modifiedOffset 403, 15 lines modified
403 ······<p·class="built-using">403 ······<p·class="built-using">
404 ········Built·using404 ········Built·using
405 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the405 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
406 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>406 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
407 ······</p>407 ······</p>
408 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>408 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
409 ····</footer>409 ····</footer>
410 ··</div>410 ··</div>
411 </main>411 </main>
412 </div>412 </div>
413 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>413 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
414 <script>414 <script>
415 ··document.addEventListener("DOMContentLoaded",·function·()·{415 ··document.addEventListener("DOMContentLoaded",·function·()·{
698 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMDIParentFrame.html
    
Offset 817, 15 lines modifiedOffset 817, 15 lines modified
817 ······<p·class="built-using">817 ······<p·class="built-using">
818 ········Built·using818 ········Built·using
819 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the819 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
820 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>820 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
821 ······</p>821 ······</p>
822 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>822 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
823 ····</footer>823 ····</footer>
824 ··</div>824 ··</div>
825 </main>825 </main>
826 </div>826 </div>
827 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>827 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
828 <script>828 <script>
829 ··document.addEventListener("DOMContentLoaded",·function·()·{829 ··document.addEventListener("DOMContentLoaded",·function·()·{
639 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMask.html
    
Offset 470, 15 lines modifiedOffset 470, 15 lines modified
470 ······<p·class="built-using">470 ······<p·class="built-using">
471 ········Built·using471 ········Built·using
472 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the472 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
473 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>473 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
474 ······</p>474 ······</p>
475 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>475 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
476 ····</footer>476 ····</footer>
477 ··</div>477 ··</div>
478 </main>478 </main>
479 </div>479 </div>
480 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>480 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
481 <script>481 <script>
482 ··document.addEventListener("DOMContentLoaded",·function·()·{482 ··document.addEventListener("DOMContentLoaded",·function·()·{
769 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMaximizeEvent.html
    
Offset 303, 15 lines modifiedOffset 303, 15 lines modified
303 ······<p·class="built-using">303 ······<p·class="built-using">
304 ········Built·using304 ········Built·using
305 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the305 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
306 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>306 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
307 ······</p>307 ······</p>
308 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>308 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
309 ····</footer>309 ····</footer>
310 ··</div>310 ··</div>
311 </main>311 </main>
312 </div>312 </div>
313 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>313 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
314 <script>314 <script>
315 ··document.addEventListener("DOMContentLoaded",·function·()·{315 ··document.addEventListener("DOMContentLoaded",·function·()·{
666 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMemoryDC.html
    
Offset 450, 15 lines modifiedOffset 450, 15 lines modified
450 ······<p·class="built-using">450 ······<p·class="built-using">
451 ········Built·using451 ········Built·using
452 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the452 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
453 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>453 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
454 ······</p>454 ······</p>
455 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>455 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
456 ····</footer>456 ····</footer>
457 ··</div>457 ··</div>
458 </main>458 </main>
459 </div>459 </div>
460 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>460 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
461 <script>461 <script>
462 ··document.addEventListener("DOMContentLoaded",·function·()·{462 ··document.addEventListener("DOMContentLoaded",·function·()·{
806 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMenu.html
    
Offset 2248, 15 lines modifiedOffset 2248, 15 lines modified
2248 ······<p·class="built-using">2248 ······<p·class="built-using">
2249 ········Built·using2249 ········Built·using
2250 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2250 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2251 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2251 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2252 ······</p>2252 ······</p>
2253 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2253 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2254 ····</footer>2254 ····</footer>
2255 ··</div>2255 ··</div>
2256 </main>2256 </main>
2257 </div>2257 </div>
2258 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2258 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2259 <script>2259 <script>
2260 ··document.addEventListener("DOMContentLoaded",·function·()·{2260 ··document.addEventListener("DOMContentLoaded",·function·()·{
660 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMenuBar.html
    
Offset 1455, 15 lines modifiedOffset 1455, 15 lines modified
1455 ······<p·class="built-using">1455 ······<p·class="built-using">
1456 ········Built·using1456 ········Built·using
1457 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1457 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1458 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1458 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1459 ······</p>1459 ······</p>
1460 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1460 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1461 ····</footer>1461 ····</footer>
1462 ··</div>1462 ··</div>
1463 </main>1463 </main>
1464 </div>1464 </div>
1465 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1465 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1466 <script>1466 <script>
1467 ··document.addEventListener("DOMContentLoaded",·function·()·{1467 ··document.addEventListener("DOMContentLoaded",·function·()·{
679 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMenuEvent.html
    
Offset 446, 15 lines modifiedOffset 446, 15 lines modified
446 ······<p·class="built-using">446 ······<p·class="built-using">
447 ········Built·using447 ········Built·using
448 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the448 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
449 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>449 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
450 ······</p>450 ······</p>
451 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>451 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
452 ····</footer>452 ····</footer>
453 ··</div>453 ··</div>
454 </main>454 </main>
455 </div>455 </div>
456 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>456 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
457 <script>457 <script>
458 ··document.addEventListener("DOMContentLoaded",·function·()·{458 ··document.addEventListener("DOMContentLoaded",·function·()·{
668 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMenuItem.html
    
Offset 1437, 15 lines modifiedOffset 1437, 15 lines modified
1437 ······<p·class="built-using">1437 ······<p·class="built-using">
1438 ········Built·using1438 ········Built·using
1439 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1439 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1440 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1440 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1441 ······</p>1441 ······</p>
1442 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1442 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1443 ····</footer>1443 ····</footer>
1444 ··</div>1444 ··</div>
1445 </main>1445 </main>
1446 </div>1446 </div>
1447 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1447 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1448 <script>1448 <script>
1449 ··document.addEventListener("DOMContentLoaded",·function·()·{1449 ··document.addEventListener("DOMContentLoaded",·function·()·{
694 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMessageDialog.html
    
Offset 361, 15 lines modifiedOffset 361, 15 lines modified
361 ······<p·class="built-using">361 ······<p·class="built-using">
362 ········Built·using362 ········Built·using
363 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the363 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
364 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>364 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
365 ······</p>365 ······</p>
366 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>366 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
367 ····</footer>367 ····</footer>
368 ··</div>368 ··</div>
369 </main>369 </main>
370 </div>370 </div>
371 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>371 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
372 <script>372 <script>
373 ··document.addEventListener("DOMContentLoaded",·function·()·{373 ··document.addEventListener("DOMContentLoaded",·function·()·{
683 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMiniFrame.html
    
Offset 487, 15 lines modifiedOffset 487, 15 lines modified
487 ······<p·class="built-using">487 ······<p·class="built-using">
488 ········Built·using488 ········Built·using
489 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the489 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
490 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>490 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
491 ······</p>491 ······</p>
492 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>492 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
493 ····</footer>493 ····</footer>
494 ··</div>494 ··</div>
495 </main>495 </main>
496 </div>496 </div>
497 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>497 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
498 <script>498 <script>
499 ··document.addEventListener("DOMContentLoaded",·function·()·{499 ··document.addEventListener("DOMContentLoaded",·function·()·{
653 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMirrorDC.html
    
Offset 315, 15 lines modifiedOffset 315, 15 lines modified
315 ······<p·class="built-using">315 ······<p·class="built-using">
316 ········Built·using316 ········Built·using
317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the317 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>318 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
319 ······</p>319 ······</p>
320 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>320 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
321 ····</footer>321 ····</footer>
322 ··</div>322 ··</div>
323 </main>323 </main>
324 </div>324 </div>
325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>325 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
326 <script>326 <script>
327 ··document.addEventListener("DOMContentLoaded",·function·()·{327 ··document.addEventListener("DOMContentLoaded",·function·()·{
730 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMouseCaptureChangedEvent.html
    
Offset 361, 15 lines modifiedOffset 361, 15 lines modified
361 ······<p·class="built-using">361 ······<p·class="built-using">
362 ········Built·using362 ········Built·using
363 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the363 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
364 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>364 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
365 ······</p>365 ······</p>
366 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>366 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
367 ····</footer>367 ····</footer>
368 ··</div>368 ··</div>
369 </main>369 </main>
370 </div>370 </div>
371 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>371 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
372 <script>372 <script>
373 ··document.addEventListener("DOMContentLoaded",·function·()·{373 ··document.addEventListener("DOMContentLoaded",·function·()·{
672 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMouseCaptureLostEvent.html
    
Offset 304, 15 lines modifiedOffset 304, 15 lines modified
304 ······<p·class="built-using">304 ······<p·class="built-using">
305 ········Built·using305 ········Built·using
306 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the306 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
307 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>307 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
308 ······</p>308 ······</p>
309 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>309 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
310 ····</footer>310 ····</footer>
311 ··</div>311 ··</div>
312 </main>312 </main>
313 </div>313 </div>
314 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>314 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
315 <script>315 <script>
316 ··document.addEventListener("DOMContentLoaded",·function·()·{316 ··document.addEventListener("DOMContentLoaded",·function·()·{
716 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMouseEvent.html
    
Offset 2093, 15 lines modifiedOffset 2093, 15 lines modified
2093 ······<p·class="built-using">2093 ······<p·class="built-using">
2094 ········Built·using2094 ········Built·using
2095 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2095 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2096 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2096 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2097 ······</p>2097 ······</p>
2098 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2098 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2099 ····</footer>2099 ····</footer>
2100 ··</div>2100 ··</div>
2101 </main>2101 </main>
2102 </div>2102 </div>
2103 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2103 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2104 <script>2104 <script>
2105 ··document.addEventListener("DOMContentLoaded",·function·()·{2105 ··document.addEventListener("DOMContentLoaded",·function·()·{
717 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMoveEvent.html
    
Offset 394, 15 lines modifiedOffset 394, 15 lines modified
394 ······<p·class="built-using">394 ······<p·class="built-using">
395 ········Built·using395 ········Built·using
396 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the396 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
397 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>397 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
398 ······</p>398 ······</p>
399 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>399 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
400 ····</footer>400 ····</footer>
401 ··</div>401 ··</div>
402 </main>402 </main>
403 </div>403 </div>
404 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>404 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
405 <script>405 <script>
406 ··document.addEventListener("DOMContentLoaded",·function·()·{406 ··document.addEventListener("DOMContentLoaded",·function·()·{
693 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxMultiChoiceDialog.html
    
Offset 439, 15 lines modifiedOffset 439, 15 lines modified
439 ······<p·class="built-using">439 ······<p·class="built-using">
440 ········Built·using440 ········Built·using
441 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the441 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
442 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>442 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
443 ······</p>443 ······</p>
444 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>444 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
445 ····</footer>445 ····</footer>
446 ··</div>446 ··</div>
447 </main>447 </main>
448 </div>448 </div>
449 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>449 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
450 <script>450 <script>
451 ··document.addEventListener("DOMContentLoaded",·function·()·{451 ··document.addEventListener("DOMContentLoaded",·function·()·{
649 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxNavigationKeyEvent.html
    
Offset 630, 15 lines modifiedOffset 630, 15 lines modified
630 ······<p·class="built-using">630 ······<p·class="built-using">
631 ········Built·using631 ········Built·using
632 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the632 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
633 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>633 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
634 ······</p>634 ······</p>
635 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>635 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
636 ····</footer>636 ····</footer>
637 ··</div>637 ··</div>
638 </main>638 </main>
639 </div>639 </div>
640 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>640 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
641 <script>641 <script>
642 ··document.addEventListener("DOMContentLoaded",·function·()·{642 ··document.addEventListener("DOMContentLoaded",·function·()·{
639 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxNotebook.html
    
Offset 848, 15 lines modifiedOffset 848, 15 lines modified
848 ······<p·class="built-using">848 ······<p·class="built-using">
849 ········Built·using849 ········Built·using
850 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the850 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
851 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>851 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
852 ······</p>852 ······</p>
853 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>853 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
854 ····</footer>854 ····</footer>
855 ··</div>855 ··</div>
856 </main>856 </main>
857 </div>857 </div>
858 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>858 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
859 <script>859 <script>
860 ··document.addEventListener("DOMContentLoaded",·function·()·{860 ··document.addEventListener("DOMContentLoaded",·function·()·{
657 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxNotificationMessage.html
    
Offset 943, 15 lines modifiedOffset 943, 15 lines modified
943 ······<p·class="built-using">943 ······<p·class="built-using">
944 ········Built·using944 ········Built·using
945 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the945 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
946 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>946 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
947 ······</p>947 ······</p>
948 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>948 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
949 ····</footer>949 ····</footer>
950 ··</div>950 ··</div>
951 </main>951 </main>
952 </div>952 </div>
953 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>953 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
954 <script>954 <script>
955 ··document.addEventListener("DOMContentLoaded",·function·()·{955 ··document.addEventListener("DOMContentLoaded",·function·()·{
642 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxNotifyEvent.html
    
Offset 361, 15 lines modifiedOffset 361, 15 lines modified
361 ······<p·class="built-using">361 ······<p·class="built-using">
362 ········Built·using362 ········Built·using
363 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the363 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
364 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>364 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
365 ······</p>365 ······</p>
366 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>366 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
367 ····</footer>367 ····</footer>
368 ··</div>368 ··</div>
369 </main>369 </main>
370 </div>370 </div>
371 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>371 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
372 <script>372 <script>
373 ··document.addEventListener("DOMContentLoaded",·function·()·{373 ··document.addEventListener("DOMContentLoaded",·function·()·{
717 B
html2text {}
Max HTML report size reached
1.41 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxOverlay.html
    
Offset 346, 15 lines modifiedOffset 346, 15 lines modified
346 ······<p·class="built-using">346 ······<p·class="built-using">
347 ········Built·using347 ········Built·using
348 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the348 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
349 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>349 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
350 ······</p>350 ······</p>
351 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>351 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
352 ····</footer>352 ····</footer>
353 ··</div>353 ··</div>
354 </main>354 </main>
355 </div>355 </div>
356 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>356 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
357 <script>357 <script>
358 ··document.addEventListener("DOMContentLoaded",·function·()·{358 ··document.addEventListener("DOMContentLoaded",·function·()·{
608 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPageSetupDialog.html
    
Offset 437, 15 lines modifiedOffset 437, 15 lines modified
437 ······<p·class="built-using">437 ······<p·class="built-using">
438 ········Built·using438 ········Built·using
439 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the439 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
440 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>440 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
441 ······</p>441 ······</p>
442 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>442 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
443 ····</footer>443 ····</footer>
444 ··</div>444 ··</div>
445 </main>445 </main>
446 </div>446 </div>
447 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>447 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
448 <script>448 <script>
449 ··document.addEventListener("DOMContentLoaded",·function·()·{449 ··document.addEventListener("DOMContentLoaded",·function·()·{
692 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPageSetupDialogData.html
    
Offset 1484, 15 lines modifiedOffset 1484, 15 lines modified
1484 ······<p·class="built-using">1484 ······<p·class="built-using">
1485 ········Built·using1485 ········Built·using
1486 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1486 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1487 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1487 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1488 ······</p>1488 ······</p>
1489 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1489 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1490 ····</footer>1490 ····</footer>
1491 ··</div>1491 ··</div>
1492 </main>1492 </main>
1493 </div>1493 </div>
1494 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1494 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1495 <script>1495 <script>
1496 ··document.addEventListener("DOMContentLoaded",·function·()·{1496 ··document.addEventListener("DOMContentLoaded",·function·()·{
685 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPaintDC.html
    
Offset 318, 15 lines modifiedOffset 318, 15 lines modified
318 ······<p·class="built-using">318 ······<p·class="built-using">
319 ········Built·using319 ········Built·using
320 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the320 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
321 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>321 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
322 ······</p>322 ······</p>
323 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>323 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
324 ····</footer>324 ····</footer>
325 ··</div>325 ··</div>
326 </main>326 </main>
327 </div>327 </div>
328 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>328 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
329 <script>329 <script>
330 ··document.addEventListener("DOMContentLoaded",·function·()·{330 ··document.addEventListener("DOMContentLoaded",·function·()·{
667 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPaintEvent.html
    
Offset 307, 15 lines modifiedOffset 307, 15 lines modified
307 ······<p·class="built-using">307 ······<p·class="built-using">
308 ········Built·using308 ········Built·using
309 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the309 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
310 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>310 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
311 ······</p>311 ······</p>
312 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>312 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
313 ····</footer>313 ····</footer>
314 ··</div>314 ··</div>
315 </main>315 </main>
316 </div>316 </div>
317 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>317 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
318 <script>318 <script>
319 ··document.addEventListener("DOMContentLoaded",·function·()·{319 ··document.addEventListener("DOMContentLoaded",·function·()·{
648 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPalette.html
    
Offset 633, 15 lines modifiedOffset 633, 15 lines modified
633 ······<p·class="built-using">633 ······<p·class="built-using">
634 ········Built·using634 ········Built·using
635 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the635 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
636 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>636 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
637 ······</p>637 ······</p>
638 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>638 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
639 ····</footer>639 ····</footer>
640 ··</div>640 ··</div>
641 </main>641 </main>
642 </div>642 </div>
643 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>643 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
644 <script>644 <script>
645 ··document.addEventListener("DOMContentLoaded",·function·()·{645 ··document.addEventListener("DOMContentLoaded",·function·()·{
644 B
html2text {}
Max HTML report size reached
1.59 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPaletteChangedEvent.html
    
Offset 379, 15 lines modifiedOffset 379, 15 lines modified
379 ······<p·class="built-using">379 ······<p·class="built-using">
380 ········Built·using380 ········Built·using
381 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the381 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
382 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>382 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
383 ······</p>383 ······</p>
384 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>384 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
385 ····</footer>385 ····</footer>
386 ··</div>386 ··</div>
387 </main>387 </main>
388 </div>388 </div>
389 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>389 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
390 <script>390 <script>
391 ··document.addEventListener("DOMContentLoaded",·function·()·{391 ··document.addEventListener("DOMContentLoaded",·function·()·{
768 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPanel.html
    
Offset 487, 15 lines modifiedOffset 487, 15 lines modified
487 ······<p·class="built-using">487 ······<p·class="built-using">
488 ········Built·using488 ········Built·using
489 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the489 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
490 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>490 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
491 ······</p>491 ······</p>
492 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>492 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
493 ····</footer>493 ····</footer>
494 ··</div>494 ··</div>
495 </main>495 </main>
496 </div>496 </div>
497 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>497 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
498 <script>498 <script>
499 ··document.addEventListener("DOMContentLoaded",·function·()·{499 ··document.addEventListener("DOMContentLoaded",·function·()·{
681 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPasswordEntryDialog.html
    
Offset 359, 15 lines modifiedOffset 359, 15 lines modified
359 ······<p·class="built-using">359 ······<p·class="built-using">
360 ········Built·using360 ········Built·using
361 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the361 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
362 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>362 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
363 ······</p>363 ······</p>
364 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>364 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
365 ····</footer>365 ····</footer>
366 ··</div>366 ··</div>
367 </main>367 </main>
368 </div>368 </div>
369 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>369 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
370 <script>370 <script>
371 ··document.addEventListener("DOMContentLoaded",·function·()·{371 ··document.addEventListener("DOMContentLoaded",·function·()·{
697 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPen.html
    
Offset 871, 15 lines modifiedOffset 871, 15 lines modified
871 ······<p·class="built-using">871 ······<p·class="built-using">
872 ········Built·using872 ········Built·using
873 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the873 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
874 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>874 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
875 ······</p>875 ······</p>
876 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>876 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
877 ····</footer>877 ····</footer>
878 ··</div>878 ··</div>
879 </main>879 </main>
880 </div>880 </div>
881 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>881 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
882 <script>882 <script>
883 ··document.addEventListener("DOMContentLoaded",·function·()·{883 ··document.addEventListener("DOMContentLoaded",·function·()·{
662 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPickerBase.html
    
Offset 778, 15 lines modifiedOffset 778, 15 lines modified
778 ······<p·class="built-using">778 ······<p·class="built-using">
779 ········Built·using779 ········Built·using
780 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the780 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
781 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>781 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
782 ······</p>782 ······</p>
783 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>783 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
784 ····</footer>784 ····</footer>
785 ··</div>785 ··</div>
786 </main>786 </main>
787 </div>787 </div>
788 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>788 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
789 <script>789 <script>
790 ··document.addEventListener("DOMContentLoaded",·function·()·{790 ··document.addEventListener("DOMContentLoaded",·function·()·{
729 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPopupTransientWindow.html
    
Offset 505, 15 lines modifiedOffset 505, 15 lines modified
505 ······<p·class="built-using">505 ······<p·class="built-using">
506 ········Built·using506 ········Built·using
507 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the507 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
508 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>508 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
509 ······</p>509 ······</p>
510 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>510 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
511 ····</footer>511 ····</footer>
512 ··</div>512 ··</div>
513 </main>513 </main>
514 </div>514 </div>
515 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>515 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
516 <script>516 <script>
517 ··document.addEventListener("DOMContentLoaded",·function·()·{517 ··document.addEventListener("DOMContentLoaded",·function·()·{
657 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPopupWindow.html
    
Offset 509, 15 lines modifiedOffset 509, 15 lines modified
509 ······<p·class="built-using">509 ······<p·class="built-using">
510 ········Built·using510 ········Built·using
511 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the511 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
512 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>512 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
513 ······</p>513 ······</p>
514 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>514 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
515 ····</footer>515 ····</footer>
516 ··</div>516 ··</div>
517 </main>517 </main>
518 </div>518 </div>
519 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>519 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
520 <script>520 <script>
521 ··document.addEventListener("DOMContentLoaded",·function·()·{521 ··document.addEventListener("DOMContentLoaded",·function·()·{
703 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPostScriptDC.html
    
Offset 351, 15 lines modifiedOffset 351, 15 lines modified
351 ······<p·class="built-using">351 ······<p·class="built-using">
352 ········Built·using352 ········Built·using
353 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the353 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
354 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>354 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
355 ······</p>355 ······</p>
356 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>356 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
357 ····</footer>357 ····</footer>
358 ··</div>358 ··</div>
359 </main>359 </main>
360 </div>360 </div>
361 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>361 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
362 <script>362 <script>
363 ··document.addEventListener("DOMContentLoaded",·function·()·{363 ··document.addEventListener("DOMContentLoaded",·function·()·{
742 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPreviewCanvas.html
    
Offset 219, 15 lines modifiedOffset 219, 15 lines modified
219 ······<p·class="built-using">219 ······<p·class="built-using">
220 ········Built·using220 ········Built·using
221 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the221 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
222 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>222 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
223 ······</p>223 ······</p>
224 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>224 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
225 ····</footer>225 ····</footer>
226 ··</div>226 ··</div>
227 </main>227 </main>
228 </div>228 </div>
229 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>229 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
230 <script>230 <script>
231 ··document.addEventListener("DOMContentLoaded",·function·()·{231 ··document.addEventListener("DOMContentLoaded",·function·()·{
629 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPreviewControlBar.html
    
Offset 515, 15 lines modifiedOffset 515, 15 lines modified
515 ······<p·class="built-using">515 ······<p·class="built-using">
516 ········Built·using516 ········Built·using
517 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the517 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
518 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>518 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
519 ······</p>519 ······</p>
520 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>520 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
521 ····</footer>521 ····</footer>
522 ··</div>522 ··</div>
523 </main>523 </main>
524 </div>524 </div>
525 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>525 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
526 <script>526 <script>
527 ··document.addEventListener("DOMContentLoaded",·function·()·{527 ··document.addEventListener("DOMContentLoaded",·function·()·{
703 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPreviewFrame.html
    
Offset 523, 15 lines modifiedOffset 523, 15 lines modified
523 ······<p·class="built-using">523 ······<p·class="built-using">
524 ········Built·using524 ········Built·using
525 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the525 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
526 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>526 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
527 ······</p>527 ······</p>
528 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>528 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
529 ····</footer>529 ····</footer>
530 ··</div>530 ··</div>
531 </main>531 </main>
532 </div>532 </div>
533 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>533 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
534 <script>534 <script>
535 ··document.addEventListener("DOMContentLoaded",·function·()·{535 ··document.addEventListener("DOMContentLoaded",·function·()·{
710 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPrintData.html
    
Offset 1091, 15 lines modifiedOffset 1091, 15 lines modified
1091 ······<p·class="built-using">1091 ······<p·class="built-using">
1092 ········Built·using1092 ········Built·using
1093 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1093 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1094 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1094 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1095 ······</p>1095 ······</p>
1096 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1096 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1097 ····</footer>1097 ····</footer>
1098 ··</div>1098 ··</div>
1099 </main>1099 </main>
1100 </div>1100 </div>
1101 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1101 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1102 <script>1102 <script>
1103 ··document.addEventListener("DOMContentLoaded",·function·()·{1103 ··document.addEventListener("DOMContentLoaded",·function·()·{
655 B
html2text {}
Max HTML report size reached
1.62 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPrintDialog.html
    
Offset 431, 15 lines modifiedOffset 431, 15 lines modified
431 ······<p·class="built-using">431 ······<p·class="built-using">
432 ········Built·using432 ········Built·using
433 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the433 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
434 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>434 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
435 ······</p>435 ······</p>
436 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>436 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
437 ····</footer>437 ····</footer>
438 ··</div>438 ··</div>
439 </main>439 </main>
440 </div>440 </div>
441 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>441 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
442 <script>442 <script>
443 ··document.addEventListener("DOMContentLoaded",·function·()·{443 ··document.addEventListener("DOMContentLoaded",·function·()·{
814 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPrintDialogData.html
    
Offset 1272, 15 lines modifiedOffset 1272, 15 lines modified
1272 ······<p·class="built-using">1272 ······<p·class="built-using">
1273 ········Built·using1273 ········Built·using
1274 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1274 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1275 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1275 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1276 ······</p>1276 ······</p>
1277 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1277 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1278 ····</footer>1278 ····</footer>
1279 ··</div>1279 ··</div>
1280 </main>1280 </main>
1281 </div>1281 </div>
1282 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1282 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1283 <script>1283 <script>
1284 ··document.addEventListener("DOMContentLoaded",·function·()·{1284 ··document.addEventListener("DOMContentLoaded",·function·()·{
674 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPrintPreview.html
    
Offset 1037, 15 lines modifiedOffset 1037, 15 lines modified
1037 ······<p·class="built-using">1037 ······<p·class="built-using">
1038 ········Built·using1038 ········Built·using
1039 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1039 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1040 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1040 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1041 ······</p>1041 ······</p>
1042 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1042 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1043 ····</footer>1043 ····</footer>
1044 ··</div>1044 ··</div>
1045 </main>1045 </main>
1046 </div>1046 </div>
1047 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1047 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1048 <script>1048 <script>
1049 ··document.addEventListener("DOMContentLoaded",·function·()·{1049 ··document.addEventListener("DOMContentLoaded",·function·()·{
719 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPrinter.html
    
Offset 718, 15 lines modifiedOffset 718, 15 lines modified
718 ······<p·class="built-using">718 ······<p·class="built-using">
719 ········Built·using719 ········Built·using
720 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the720 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
721 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>721 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
722 ······</p>722 ······</p>
723 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>723 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
724 ····</footer>724 ····</footer>
725 ··</div>725 ··</div>
726 </main>726 </main>
727 </div>727 </div>
728 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>728 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
729 <script>729 <script>
730 ··document.addEventListener("DOMContentLoaded",·function·()·{730 ··document.addEventListener("DOMContentLoaded",·function·()·{
652 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxPrintout.html
    
Offset 1211, 15 lines modifiedOffset 1211, 15 lines modified
1211 ······<p·class="built-using">1211 ······<p·class="built-using">
1212 ········Built·using1212 ········Built·using
1213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1213 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1214 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1215 ······</p>1215 ······</p>
1216 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1216 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1217 ····</footer>1217 ····</footer>
1218 ··</div>1218 ··</div>
1219 </main>1219 </main>
1220 </div>1220 </div>
1221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1221 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1222 <script>1222 <script>
1223 ··document.addEventListener("DOMContentLoaded",·function·()·{1223 ··document.addEventListener("DOMContentLoaded",·function·()·{
673 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxProgressDialog.html
    
Offset 490, 15 lines modifiedOffset 490, 15 lines modified
490 ······<p·class="built-using">490 ······<p·class="built-using">
491 ········Built·using491 ········Built·using
492 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the492 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
493 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>493 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
494 ······</p>494 ······</p>
495 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>495 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
496 ····</footer>496 ····</footer>
497 ··</div>497 ··</div>
498 </main>498 </main>
499 </div>499 </div>
500 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>500 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
501 <script>501 <script>
502 ··document.addEventListener("DOMContentLoaded",·function·()·{502 ··document.addEventListener("DOMContentLoaded",·function·()·{
702 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxQueryNewPaletteEvent.html
    
Offset 381, 15 lines modifiedOffset 381, 15 lines modified
381 ······<p·class="built-using">381 ······<p·class="built-using">
382 ········Built·using382 ········Built·using
383 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the383 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
384 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>384 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
385 ······</p>385 ······</p>
386 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>386 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
387 ····</footer>387 ····</footer>
388 ··</div>388 ··</div>
389 </main>389 </main>
390 </div>390 </div>
391 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>391 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
392 <script>392 <script>
393 ··document.addEventListener("DOMContentLoaded",·function·()·{393 ··document.addEventListener("DOMContentLoaded",·function·()·{
738 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxRadioBox.html
    
Offset 1128, 15 lines modifiedOffset 1128, 15 lines modified
1128 ······<p·class="built-using">1128 ······<p·class="built-using">
1129 ········Built·using1129 ········Built·using
1130 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1130 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1131 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1131 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1132 ······</p>1132 ······</p>
1133 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1133 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1134 ····</footer>1134 ····</footer>
1135 ··</div>1135 ··</div>
1136 </main>1136 </main>
1137 </div>1137 </div>
1138 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1138 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1139 <script>1139 <script>
1140 ··document.addEventListener("DOMContentLoaded",·function·()·{1140 ··document.addEventListener("DOMContentLoaded",·function·()·{
583 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxRadioButton.html
    
Offset 579, 15 lines modifiedOffset 579, 15 lines modified
579 ······<p·class="built-using">579 ······<p·class="built-using">
580 ········Built·using580 ········Built·using
581 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the581 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
582 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>582 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
583 ······</p>583 ······</p>
584 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>584 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
585 ····</footer>585 ····</footer>
586 ··</div>586 ··</div>
587 </main>587 </main>
588 </div>588 </div>
589 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>589 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
590 <script>590 <script>
591 ··document.addEventListener("DOMContentLoaded",·function·()·{591 ··document.addEventListener("DOMContentLoaded",·function·()·{
664 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxRegion.html
    
Offset 1209, 15 lines modifiedOffset 1209, 15 lines modified
1209 ······<p·class="built-using">1209 ······<p·class="built-using">
1210 ········Built·using1210 ········Built·using
1211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1211 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1212 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1213 ······</p>1213 ······</p>
1214 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1214 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1215 ····</footer>1215 ····</footer>
1216 ··</div>1216 ··</div>
1217 </main>1217 </main>
1218 </div>1218 </div>
1219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1219 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1220 <script>1220 <script>
1221 ··document.addEventListener("DOMContentLoaded",·function·()·{1221 ··document.addEventListener("DOMContentLoaded",·function·()·{
661 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSashEvent.html
    
Offset 450, 15 lines modifiedOffset 450, 15 lines modified
450 ······<p·class="built-using">450 ······<p·class="built-using">
451 ········Built·using451 ········Built·using
452 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the452 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
453 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>453 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
454 ······</p>454 ······</p>
455 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>455 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
456 ····</footer>456 ····</footer>
457 ··</div>457 ··</div>
458 </main>458 </main>
459 </div>459 </div>
460 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>460 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
461 <script>461 <script>
462 ··document.addEventListener("DOMContentLoaded",·function·()·{462 ··document.addEventListener("DOMContentLoaded",·function·()·{
617 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSashLayoutWindow.html
    
Offset 691, 15 lines modifiedOffset 691, 15 lines modified
691 ······<p·class="built-using">691 ······<p·class="built-using">
692 ········Built·using692 ········Built·using
693 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the693 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
694 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>694 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
695 ······</p>695 ······</p>
696 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>696 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
697 ····</footer>697 ····</footer>
698 ··</div>698 ··</div>
699 </main>699 </main>
700 </div>700 </div>
701 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>701 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
702 <script>702 <script>
703 ··document.addEventListener("DOMContentLoaded",·function·()·{703 ··document.addEventListener("DOMContentLoaded",·function·()·{
700 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSashWindow.html
    
Offset 786, 15 lines modifiedOffset 786, 15 lines modified
786 ······<p·class="built-using">786 ······<p·class="built-using">
787 ········Built·using787 ········Built·using
788 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the788 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
789 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>789 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
790 ······</p>790 ······</p>
791 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>791 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
792 ····</footer>792 ····</footer>
793 ··</div>793 ··</div>
794 </main>794 </main>
795 </div>795 </div>
796 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>796 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
797 <script>797 <script>
798 ··document.addEventListener("DOMContentLoaded",·function·()·{798 ··document.addEventListener("DOMContentLoaded",·function·()·{
706 B
html2text {}
Max HTML report size reached
1.39 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxScreenDC.html
    
Offset 314, 15 lines modifiedOffset 314, 15 lines modified
314 ······<p·class="built-using">314 ······<p·class="built-using">
315 ········Built·using315 ········Built·using
316 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the316 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
317 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>317 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
318 ······</p>318 ······</p>
319 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>319 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
320 ····</footer>320 ····</footer>
321 ··</div>321 ··</div>
322 </main>322 </main>
323 </div>323 </div>
324 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>324 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
325 <script>325 <script>
326 ··document.addEventListener("DOMContentLoaded",·function·()·{326 ··document.addEventListener("DOMContentLoaded",·function·()·{
584 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxScrollBar.html
    
Offset 812, 15 lines modifiedOffset 812, 15 lines modified
812 ······<p·class="built-using">812 ······<p·class="built-using">
813 ········Built·using813 ········Built·using
814 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the814 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
815 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>815 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
816 ······</p>816 ······</p>
817 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>817 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
818 ····</footer>818 ····</footer>
819 ··</div>819 ··</div>
820 </main>820 </main>
821 </div>821 </div>
822 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>822 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
823 <script>823 <script>
824 ··document.addEventListener("DOMContentLoaded",·function·()·{824 ··document.addEventListener("DOMContentLoaded",·function·()·{
636 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxScrollEvent.html
    
Offset 412, 15 lines modifiedOffset 412, 15 lines modified
412 ······<p·class="built-using">412 ······<p·class="built-using">
413 ········Built·using413 ········Built·using
414 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the414 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
415 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>415 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
416 ······</p>416 ······</p>
417 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>417 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
418 ····</footer>418 ····</footer>
419 ··</div>419 ··</div>
420 </main>420 </main>
421 </div>421 </div>
422 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>422 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
423 <script>423 <script>
424 ··document.addEventListener("DOMContentLoaded",·function·()·{424 ··document.addEventListener("DOMContentLoaded",·function·()·{
704 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxScrollWinEvent.html
    
Offset 401, 15 lines modifiedOffset 401, 15 lines modified
401 ······<p·class="built-using">401 ······<p·class="built-using">
402 ········Built·using402 ········Built·using
403 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the403 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
404 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>404 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
405 ······</p>405 ······</p>
406 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>406 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
407 ····</footer>407 ····</footer>
408 ··</div>408 ··</div>
409 </main>409 </main>
410 </div>410 </div>
411 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>411 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
412 <script>412 <script>
413 ··document.addEventListener("DOMContentLoaded",·function·()·{413 ··document.addEventListener("DOMContentLoaded",·function·()·{
730 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxScrolledWindow.html
    
Offset 1097, 15 lines modifiedOffset 1097, 15 lines modified
1097 ······<p·class="built-using">1097 ······<p·class="built-using">
1098 ········Built·using1098 ········Built·using
1099 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1099 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1100 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1100 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1101 ······</p>1101 ······</p>
1102 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1102 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1103 ····</footer>1103 ····</footer>
1104 ··</div>1104 ··</div>
1105 </main>1105 </main>
1106 </div>1106 </div>
1107 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1107 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1108 <script>1108 <script>
1109 ··document.addEventListener("DOMContentLoaded",·function·()·{1109 ··document.addEventListener("DOMContentLoaded",·function·()·{
672 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSetCursorEvent.html
    
Offset 513, 15 lines modifiedOffset 513, 15 lines modified
513 ······<p·class="built-using">513 ······<p·class="built-using">
514 ········Built·using514 ········Built·using
515 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the515 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
516 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>516 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
517 ······</p>517 ······</p>
518 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>518 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
519 ····</footer>519 ····</footer>
520 ··</div>520 ··</div>
521 </main>521 </main>
522 </div>522 </div>
523 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>523 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
524 <script>524 <script>
525 ··document.addEventListener("DOMContentLoaded",·function·()·{525 ··document.addEventListener("DOMContentLoaded",·function·()·{
720 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxShowEvent.html
    
Offset 396, 15 lines modifiedOffset 396, 15 lines modified
396 ······<p·class="built-using">396 ······<p·class="built-using">
397 ········Built·using397 ········Built·using
398 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the398 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
399 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>399 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
400 ······</p>400 ······</p>
401 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>401 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
402 ····</footer>402 ····</footer>
403 ··</div>403 ··</div>
404 </main>404 </main>
405 </div>405 </div>
406 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>406 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
407 <script>407 <script>
408 ··document.addEventListener("DOMContentLoaded",·function·()·{408 ··document.addEventListener("DOMContentLoaded",·function·()·{
722 B
html2text {}
Max HTML report size reached
1.55 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSingleChoiceDialog.html
    
Offset 479, 15 lines modifiedOffset 479, 15 lines modified
479 ······<p·class="built-using">479 ······<p·class="built-using">
480 ········Built·using480 ········Built·using
481 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the481 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
482 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>482 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
483 ······</p>483 ······</p>
484 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>484 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
485 ····</footer>485 ····</footer>
486 ··</div>486 ··</div>
487 </main>487 </main>
488 </div>488 </div>
489 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>489 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
490 <script>490 <script>
491 ··document.addEventListener("DOMContentLoaded",·function·()·{491 ··document.addEventListener("DOMContentLoaded",·function·()·{
732 B
html2text {}
Max HTML report size reached
1.61 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSizeEvent.html
    
Offset 405, 15 lines modifiedOffset 405, 15 lines modified
405 ······<p·class="built-using">405 ······<p·class="built-using">
406 ········Built·using406 ········Built·using
407 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the407 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
408 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>408 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
409 ······</p>409 ······</p>
410 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>410 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
411 ····</footer>411 ····</footer>
412 ··</div>412 ··</div>
413 </main>413 </main>
414 </div>414 </div>
415 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>415 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
416 <script>416 <script>
417 ··document.addEventListener("DOMContentLoaded",·function·()·{417 ··document.addEventListener("DOMContentLoaded",·function·()·{
811 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSizer.html
    
Offset 2342, 15 lines modifiedOffset 2342, 15 lines modified
2342 ······<p·class="built-using">2342 ······<p·class="built-using">
2343 ········Built·using2343 ········Built·using
2344 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2344 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2345 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2345 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2346 ······</p>2346 ······</p>
2347 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2347 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2348 ····</footer>2348 ····</footer>
2349 ··</div>2349 ··</div>
2350 </main>2350 </main>
2351 </div>2351 </div>
2352 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2352 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2353 <script>2353 <script>
2354 ··document.addEventListener("DOMContentLoaded",·function·()·{2354 ··document.addEventListener("DOMContentLoaded",·function·()·{
720 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSizerFlags.html
    
Offset 746, 15 lines modifiedOffset 746, 15 lines modified
746 ······<p·class="built-using">746 ······<p·class="built-using">
747 ········Built·using747 ········Built·using
748 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the748 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
749 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>749 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
750 ······</p>750 ······</p>
751 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>751 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
752 ····</footer>752 ····</footer>
753 ··</div>753 ··</div>
754 </main>754 </main>
755 </div>755 </div>
756 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>756 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
757 <script>757 <script>
758 ··document.addEventListener("DOMContentLoaded",·function·()·{758 ··document.addEventListener("DOMContentLoaded",·function·()·{
750 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSizerItem.html
    
Offset 1687, 15 lines modifiedOffset 1687, 15 lines modified
1687 ······<p·class="built-using">1687 ······<p·class="built-using">
1688 ········Built·using1688 ········Built·using
1689 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1689 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1690 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1690 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1691 ······</p>1691 ······</p>
1692 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1692 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1693 ····</footer>1693 ····</footer>
1694 ··</div>1694 ··</div>
1695 </main>1695 </main>
1696 </div>1696 </div>
1697 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1697 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1698 <script>1698 <script>
1699 ··document.addEventListener("DOMContentLoaded",·function·()·{1699 ··document.addEventListener("DOMContentLoaded",·function·()·{
701 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSlider.html
    
Offset 946, 15 lines modifiedOffset 946, 15 lines modified
946 ······<p·class="built-using">946 ······<p·class="built-using">
947 ········Built·using947 ········Built·using
948 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the948 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
949 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>949 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
950 ······</p>950 ······</p>
951 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>951 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
952 ····</footer>952 ····</footer>
953 ··</div>953 ··</div>
954 </main>954 </main>
955 </div>955 </div>
956 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>956 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
957 <script>957 <script>
958 ··document.addEventListener("DOMContentLoaded",·function·()·{958 ··document.addEventListener("DOMContentLoaded",·function·()·{
705 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSpinButton.html
    
Offset 681, 15 lines modifiedOffset 681, 15 lines modified
681 ······<p·class="built-using">681 ······<p·class="built-using">
682 ········Built·using682 ········Built·using
683 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the683 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
684 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>684 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
685 ······</p>685 ······</p>
686 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>686 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
687 ····</footer>687 ····</footer>
688 ··</div>688 ··</div>
689 </main>689 </main>
690 </div>690 </div>
691 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>691 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
692 <script>692 <script>
693 ··document.addEventListener("DOMContentLoaded",·function·()·{693 ··document.addEventListener("DOMContentLoaded",·function·()·{
663 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSpinCtrl.html
    
Offset 734, 15 lines modifiedOffset 734, 15 lines modified
734 ······<p·class="built-using">734 ······<p·class="built-using">
735 ········Built·using735 ········Built·using
736 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the736 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
737 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>737 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
738 ······</p>738 ······</p>
739 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>739 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
740 ····</footer>740 ····</footer>
741 ··</div>741 ··</div>
742 </main>742 </main>
743 </div>743 </div>
744 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>744 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
745 <script>745 <script>
746 ··document.addEventListener("DOMContentLoaded",·function·()·{746 ··document.addEventListener("DOMContentLoaded",·function·()·{
720 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSpinEvent.html
    
Offset 392, 15 lines modifiedOffset 392, 15 lines modified
392 ······<p·class="built-using">392 ······<p·class="built-using">
393 ········Built·using393 ········Built·using
394 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the394 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
395 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>395 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
396 ······</p>396 ······</p>
397 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>397 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
398 ····</footer>398 ····</footer>
399 ··</div>399 ··</div>
400 </main>400 </main>
401 </div>401 </div>
402 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>402 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
403 <script>403 <script>
404 ··document.addEventListener("DOMContentLoaded",·function·()·{404 ··document.addEventListener("DOMContentLoaded",·function·()·{
666 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSplashScreen.html
    
Offset 444, 15 lines modifiedOffset 444, 15 lines modified
444 ······<p·class="built-using">444 ······<p·class="built-using">
445 ········Built·using445 ········Built·using
446 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the446 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
447 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>447 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
448 ······</p>448 ······</p>
449 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>449 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
450 ····</footer>450 ····</footer>
451 ··</div>451 ··</div>
452 </main>452 </main>
453 </div>453 </div>
454 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>454 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
455 <script>455 <script>
456 ··document.addEventListener("DOMContentLoaded",·function·()·{456 ··document.addEventListener("DOMContentLoaded",·function·()·{
648 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSplitterEvent.html
    
Offset 520, 15 lines modifiedOffset 520, 15 lines modified
520 ······<p·class="built-using">520 ······<p·class="built-using">
521 ········Built·using521 ········Built·using
522 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the522 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
523 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>523 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
524 ······</p>524 ······</p>
525 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>525 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
526 ····</footer>526 ····</footer>
527 ··</div>527 ··</div>
528 </main>528 </main>
529 </div>529 </div>
530 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>530 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
531 <script>531 <script>
532 ··document.addEventListener("DOMContentLoaded",·function·()·{532 ··document.addEventListener("DOMContentLoaded",·function·()·{
653 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSplitterWindow.html
    
Offset 1343, 15 lines modifiedOffset 1343, 15 lines modified
1343 ······<p·class="built-using">1343 ······<p·class="built-using">
1344 ········Built·using1344 ········Built·using
1345 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1345 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1346 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1346 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1347 ······</p>1347 ······</p>
1348 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1348 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1349 ····</footer>1349 ····</footer>
1350 ··</div>1350 ··</div>
1351 </main>1351 </main>
1352 </div>1352 </div>
1353 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1353 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1354 <script>1354 <script>
1355 ··document.addEventListener("DOMContentLoaded",·function·()·{1355 ··document.addEventListener("DOMContentLoaded",·function·()·{
746 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxStaticBitmap.html
    
Offset 567, 15 lines modifiedOffset 567, 15 lines modified
567 ······<p·class="built-using">567 ······<p·class="built-using">
568 ········Built·using568 ········Built·using
569 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the569 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
570 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>570 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
571 ······</p>571 ······</p>
572 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>572 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
573 ····</footer>573 ····</footer>
574 ··</div>574 ··</div>
575 </main>575 </main>
576 </div>576 </div>
577 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>577 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
578 <script>578 <script>
579 ··document.addEventListener("DOMContentLoaded",·function·()·{579 ··document.addEventListener("DOMContentLoaded",·function·()·{
626 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxStaticBox.html
    
Offset 496, 15 lines modifiedOffset 496, 15 lines modified
496 ······<p·class="built-using">496 ······<p·class="built-using">
497 ········Built·using497 ········Built·using
498 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the498 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
499 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>499 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
500 ······</p>500 ······</p>
501 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>501 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
502 ····</footer>502 ····</footer>
503 ··</div>503 ··</div>
504 </main>504 </main>
505 </div>505 </div>
506 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>506 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
507 <script>507 <script>
508 ··document.addEventListener("DOMContentLoaded",·function·()·{508 ··document.addEventListener("DOMContentLoaded",·function·()·{
688 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxStaticBoxSizer.html
    
Offset 400, 15 lines modifiedOffset 400, 15 lines modified
400 ······<p·class="built-using">400 ······<p·class="built-using">
401 ········Built·using401 ········Built·using
402 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the402 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
403 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>403 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
404 ······</p>404 ······</p>
405 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>405 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
406 ····</footer>406 ····</footer>
407 ··</div>407 ··</div>
408 </main>408 </main>
409 </div>409 </div>
410 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>410 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
411 <script>411 <script>
412 ··document.addEventListener("DOMContentLoaded",·function·()·{412 ··document.addEventListener("DOMContentLoaded",·function·()·{
674 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxStaticLine.html
    
Offset 557, 15 lines modifiedOffset 557, 15 lines modified
557 ······<p·class="built-using">557 ······<p·class="built-using">
558 ········Built·using558 ········Built·using
559 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the559 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
560 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>560 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
561 ······</p>561 ······</p>
562 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>562 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
563 ····</footer>563 ····</footer>
564 ··</div>564 ··</div>
565 </main>565 </main>
566 </div>566 </div>
567 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>567 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
568 <script>568 <script>
569 ··document.addEventListener("DOMContentLoaded",·function·()·{569 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxStaticText.html
    
Offset 614, 15 lines modifiedOffset 614, 15 lines modified
614 ······<p·class="built-using">614 ······<p·class="built-using">
615 ········Built·using615 ········Built·using
616 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the616 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
617 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>617 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
618 ······</p>618 ······</p>
619 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>619 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
620 ····</footer>620 ····</footer>
621 ··</div>621 ··</div>
622 </main>622 </main>
623 </div>623 </div>
624 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>624 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
625 <script>625 <script>
626 ··document.addEventListener("DOMContentLoaded",·function·()·{626 ··document.addEventListener("DOMContentLoaded",·function·()·{
638 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxStatusBar.html
    
Offset 1075, 15 lines modifiedOffset 1075, 15 lines modified
1075 ······<p·class="built-using">1075 ······<p·class="built-using">
1076 ········Built·using1076 ········Built·using
1077 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1077 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1078 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1078 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1079 ······</p>1079 ······</p>
1080 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1080 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1081 ····</footer>1081 ····</footer>
1082 ··</div>1082 ··</div>
1083 </main>1083 </main>
1084 </div>1084 </div>
1085 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1085 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1086 <script>1086 <script>
1087 ··document.addEventListener("DOMContentLoaded",·function·()·{1087 ··document.addEventListener("DOMContentLoaded",·function·()·{
758 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxStdDialogButtonSizer.html
    
Offset 521, 15 lines modifiedOffset 521, 15 lines modified
521 ······<p·class="built-using">521 ······<p·class="built-using">
522 ········Built·using522 ········Built·using
523 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the523 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
524 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>524 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
525 ······</p>525 ······</p>
526 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>526 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
527 ····</footer>527 ····</footer>
528 ··</div>528 ··</div>
529 </main>529 </main>
530 </div>530 </div>
531 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>531 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
532 <script>532 <script>
533 ··document.addEventListener("DOMContentLoaded",·function·()·{533 ··document.addEventListener("DOMContentLoaded",·function·()·{
672 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxStyledTextCtrl.html
    
Offset 17694, 15 lines modifiedOffset 17694, 15 lines modified
17694 ······<p·class="built-using">17694 ······<p·class="built-using">
17695 ········Built·using17695 ········Built·using
17696 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the17696 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
17697 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>17697 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
17698 ······</p>17698 ······</p>
17699 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>17699 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
17700 ····</footer>17700 ····</footer>
17701 ··</div>17701 ··</div>
17702 </main>17702 </main>
17703 </div>17703 </div>
17704 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>17704 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
17705 <script>17705 <script>
17706 ··document.addEventListener("DOMContentLoaded",·function·()·{17706 ··document.addEventListener("DOMContentLoaded",·function·()·{
709 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxStyledTextEvent.html
    
Offset 1230, 15 lines modifiedOffset 1230, 15 lines modified
1230 ······<p·class="built-using">1230 ······<p·class="built-using">
1231 ········Built·using1231 ········Built·using
1232 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1232 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1233 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1233 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1234 ······</p>1234 ······</p>
1235 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1235 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1236 ····</footer>1236 ····</footer>
1237 ··</div>1237 ··</div>
1238 </main>1238 </main>
1239 </div>1239 </div>
1240 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1240 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1241 <script>1241 <script>
1242 ··document.addEventListener("DOMContentLoaded",·function·()·{1242 ··document.addEventListener("DOMContentLoaded",·function·()·{
693 B
html2text {}
Max HTML report size reached
1.54 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSysColourChangedEvent.html
    
Offset 304, 15 lines modifiedOffset 304, 15 lines modified
304 ······<p·class="built-using">304 ······<p·class="built-using">
305 ········Built·using305 ········Built·using
306 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the306 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
307 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>307 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
308 ······</p>308 ······</p>
309 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>309 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
310 ····</footer>310 ····</footer>
311 ··</div>311 ··</div>
312 </main>312 </main>
313 </div>313 </div>
314 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>314 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
315 <script>315 <script>
316 ··document.addEventListener("DOMContentLoaded",·function·()·{316 ··document.addEventListener("DOMContentLoaded",·function·()·{
716 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSystemOptions.html
    
Offset 442, 15 lines modifiedOffset 442, 15 lines modified
442 ······<p·class="built-using">442 ······<p·class="built-using">
443 ········Built·using443 ········Built·using
444 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the444 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
445 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>445 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
446 ······</p>446 ······</p>
447 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>447 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
448 ····</footer>448 ····</footer>
449 ··</div>449 ··</div>
450 </main>450 </main>
451 </div>451 </div>
452 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>452 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
453 <script>453 <script>
454 ··document.addEventListener("DOMContentLoaded",·function·()·{454 ··document.addEventListener("DOMContentLoaded",·function·()·{
614 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxSystemSettings.html
    
Offset 436, 15 lines modifiedOffset 436, 15 lines modified
436 ······<p·class="built-using">436 ······<p·class="built-using">
437 ········Built·using437 ········Built·using
438 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the438 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
439 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>439 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
440 ······</p>440 ······</p>
441 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>441 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
442 ····</footer>442 ····</footer>
443 ··</div>443 ··</div>
444 </main>444 </main>
445 </div>445 </div>
446 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>446 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
447 <script>447 <script>
448 ··document.addEventListener("DOMContentLoaded",·function·()·{448 ··document.addEventListener("DOMContentLoaded",·function·()·{
636 B
html2text {}
Max HTML report size reached
1.48 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTaskBarIcon.html
    
Offset 492, 15 lines modifiedOffset 492, 15 lines modified
492 ······<p·class="built-using">492 ······<p·class="built-using">
493 ········Built·using493 ········Built·using
494 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the494 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
495 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>495 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
496 ······</p>496 ······</p>
497 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>497 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
498 ····</footer>498 ····</footer>
499 ··</div>499 ··</div>
500 </main>500 </main>
501 </div>501 </div>
502 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>502 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
503 <script>503 <script>
504 ··document.addEventListener("DOMContentLoaded",·function·()·{504 ··document.addEventListener("DOMContentLoaded",·function·()·{
672 B
html2text {}
Max HTML report size reached
1.42 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTaskBarIconEvent.html
    
Offset 293, 15 lines modifiedOffset 293, 15 lines modified
293 ······<p·class="built-using">293 ······<p·class="built-using">
294 ········Built·using294 ········Built·using
295 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the295 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
296 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>296 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
297 ······</p>297 ······</p>
298 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>298 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
299 ····</footer>299 ····</footer>
300 ··</div>300 ··</div>
301 </main>301 </main>
302 </div>302 </div>
303 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>303 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
304 <script>304 <script>
305 ··document.addEventListener("DOMContentLoaded",·function·()·{305 ··document.addEventListener("DOMContentLoaded",·function·()·{
595 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTextAttr.html
    
Offset 1846, 15 lines modifiedOffset 1846, 15 lines modified
1846 ······<p·class="built-using">1846 ······<p·class="built-using">
1847 ········Built·using1847 ········Built·using
1848 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1848 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1849 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1849 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1850 ······</p>1850 ······</p>
1851 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1851 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1852 ····</footer>1852 ····</footer>
1853 ··</div>1853 ··</div>
1854 </main>1854 </main>
1855 </div>1855 </div>
1856 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1856 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1857 <script>1857 <script>
1858 ··document.addEventListener("DOMContentLoaded",·function·()·{1858 ··document.addEventListener("DOMContentLoaded",·function·()·{
699 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTextCtrl.html
    
Offset 2528, 15 lines modifiedOffset 2528, 15 lines modified
2528 ······<p·class="built-using">2528 ······<p·class="built-using">
2529 ········Built·using2529 ········Built·using
2530 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2530 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2531 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2531 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2532 ······</p>2532 ······</p>
2533 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2533 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2534 ····</footer>2534 ····</footer>
2535 ··</div>2535 ··</div>
2536 </main>2536 </main>
2537 </div>2537 </div>
2538 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2538 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2539 <script>2539 <script>
2540 ··document.addEventListener("DOMContentLoaded",·function·()·{2540 ··document.addEventListener("DOMContentLoaded",·function·()·{
696 B
html2text {}
Max HTML report size reached
1.49 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTextDataObject.html
    
Offset 483, 15 lines modifiedOffset 483, 15 lines modified
483 ······<p·class="built-using">483 ······<p·class="built-using">
484 ········Built·using484 ········Built·using
485 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the485 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
486 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>486 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
487 ······</p>487 ······</p>
488 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>488 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
489 ····</footer>489 ····</footer>
490 ··</div>490 ··</div>
491 </main>491 </main>
492 </div>492 </div>
493 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>493 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
494 <script>494 <script>
495 ··document.addEventListener("DOMContentLoaded",·function·()·{495 ··document.addEventListener("DOMContentLoaded",·function·()·{
672 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTextEntryDialog.html
    
Offset 475, 15 lines modifiedOffset 475, 15 lines modified
475 ······<p·class="built-using">475 ······<p·class="built-using">
476 ········Built·using476 ········Built·using
477 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the477 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
478 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>478 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
479 ······</p>479 ······</p>
480 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>480 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
481 ····</footer>481 ····</footer>
482 ··</div>482 ··</div>
483 </main>483 </main>
484 </div>484 </div>
485 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>485 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
486 <script>486 <script>
487 ··document.addEventListener("DOMContentLoaded",·function·()·{487 ··document.addEventListener("DOMContentLoaded",·function·()·{
696 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxToggleButton.html
    
Offset 571, 15 lines modifiedOffset 571, 15 lines modified
571 ······<p·class="built-using">571 ······<p·class="built-using">
572 ········Built·using572 ········Built·using
573 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the573 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
574 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>574 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
575 ······</p>575 ······</p>
576 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>576 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
577 ····</footer>577 ····</footer>
578 ··</div>578 ··</div>
579 </main>579 </main>
580 </div>580 </div>
581 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>581 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
582 <script>582 <script>
583 ··document.addEventListener("DOMContentLoaded",·function·()·{583 ··document.addEventListener("DOMContentLoaded",·function·()·{
636 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxToolBar.html
    
Offset 2073, 15 lines modifiedOffset 2073, 15 lines modified
2073 ······<p·class="built-using">2073 ······<p·class="built-using">
2074 ········Built·using2074 ········Built·using
2075 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2075 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2076 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2076 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2077 ······</p>2077 ······</p>
2078 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2078 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2079 ····</footer>2079 ····</footer>
2080 ··</div>2080 ··</div>
2081 </main>2081 </main>
2082 </div>2082 </div>
2083 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2083 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2084 <script>2084 <script>
2085 ··document.addEventListener("DOMContentLoaded",·function·()·{2085 ··document.addEventListener("DOMContentLoaded",·function·()·{
651 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxToolTip.html
    
Offset 504, 15 lines modifiedOffset 504, 15 lines modified
504 ······<p·class="built-using">504 ······<p·class="built-using">
505 ········Built·using505 ········Built·using
506 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the506 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
507 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>507 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
508 ······</p>508 ······</p>
509 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>509 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
510 ····</footer>510 ····</footer>
511 ··</div>511 ··</div>
512 </main>512 </main>
513 </div>513 </div>
514 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>514 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
515 <script>515 <script>
516 ··document.addEventListener("DOMContentLoaded",·function·()·{516 ··document.addEventListener("DOMContentLoaded",·function·()·{
648 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxToolbook.html
    
Offset 1358, 15 lines modifiedOffset 1358, 15 lines modified
1358 ······<p·class="built-using">1358 ······<p·class="built-using">
1359 ········Built·using1359 ········Built·using
1360 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1360 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1361 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1361 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1362 ······</p>1362 ······</p>
1363 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1363 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1364 ····</footer>1364 ····</footer>
1365 ··</div>1365 ··</div>
1366 </main>1366 </main>
1367 </div>1367 </div>
1368 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1368 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1369 <script>1369 <script>
1370 ··document.addEventListener("DOMContentLoaded",·function·()·{1370 ··document.addEventListener("DOMContentLoaded",·function·()·{
708 B
html2text {}
Max HTML report size reached
1.53 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTopLevelWindow.html
    
Offset 1143, 15 lines modifiedOffset 1143, 15 lines modified
1143 ······<p·class="built-using">1143 ······<p·class="built-using">
1144 ········Built·using1144 ········Built·using
1145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1147 ······</p>1147 ······</p>
1148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1149 ····</footer>1149 ····</footer>
1150 ··</div>1150 ··</div>
1151 </main>1151 </main>
1152 </div>1152 </div>
1153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1154 <script>1154 <script>
1155 ··document.addEventListener("DOMContentLoaded",·function·()·{1155 ··document.addEventListener("DOMContentLoaded",·function·()·{
711 B
html2text {}
Max HTML report size reached
1.4 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTreeCtrl.html
    
Offset 3666, 15 lines modifiedOffset 3666, 15 lines modified
3666 ······<p·class="built-using">3666 ······<p·class="built-using">
3667 ········Built·using3667 ········Built·using
3668 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the3668 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
3669 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>3669 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
3670 ······</p>3670 ······</p>
3671 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>3671 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
3672 ····</footer>3672 ····</footer>
3673 ··</div>3673 ··</div>
3674 </main>3674 </main>
3675 </div>3675 </div>
3676 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>3676 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
3677 <script>3677 <script>
3678 ··document.addEventListener("DOMContentLoaded",·function·()·{3678 ··document.addEventListener("DOMContentLoaded",·function·()·{
594 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTreeEvent.html
    
Offset 640, 15 lines modifiedOffset 640, 15 lines modified
640 ······<p·class="built-using">640 ······<p·class="built-using">
641 ········Built·using641 ········Built·using
642 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the642 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
643 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>643 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
644 ······</p>644 ······</p>
645 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>645 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
646 ····</footer>646 ····</footer>
647 ··</div>647 ··</div>
648 </main>648 </main>
649 </div>649 </div>
650 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>650 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
651 <script>651 <script>
652 ··document.addEventListener("DOMContentLoaded",·function·()·{652 ··document.addEventListener("DOMContentLoaded",·function·()·{
645 B
html2text {}
Max HTML report size reached
1.56 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxTreebook.html
    
Offset 1555, 15 lines modifiedOffset 1555, 15 lines modified
1555 ······<p·class="built-using">1555 ······<p·class="built-using">
1556 ········Built·using1556 ········Built·using
1557 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1557 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1558 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1558 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1559 ······</p>1559 ······</p>
1560 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1560 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1561 ····</footer>1561 ····</footer>
1562 ··</div>1562 ··</div>
1563 </main>1563 </main>
1564 </div>1564 </div>
1565 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1565 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1566 <script>1566 <script>
1567 ··document.addEventListener("DOMContentLoaded",·function·()·{1567 ··document.addEventListener("DOMContentLoaded",·function·()·{
753 B
html2text {}
Max HTML report size reached
1.52 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxUpdateUIEvent.html
    
Offset 1039, 15 lines modifiedOffset 1039, 15 lines modified
1039 ······<p·class="built-using">1039 ······<p·class="built-using">
1040 ········Built·using1040 ········Built·using
1041 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1041 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1042 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1042 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1043 ······</p>1043 ······</p>
1044 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1044 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1045 ····</footer>1045 ····</footer>
1046 ··</div>1046 ··</div>
1047 </main>1047 </main>
1048 </div>1048 </div>
1049 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1049 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1050 <script>1050 <script>
1051 ··document.addEventListener("DOMContentLoaded",·function·()·{1051 ··document.addEventListener("DOMContentLoaded",·function·()·{
708 B
html2text {}
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxWebView.html
    
Offset 2347, 15 lines modifiedOffset 2347, 15 lines modified
2347 ······<p·class="built-using">2347 ······<p·class="built-using">
2348 ········Built·using2348 ········Built·using
2349 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the2349 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
2350 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>2350 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
2351 ······</p>2351 ······</p>
2352 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>2352 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
2353 ····</footer>2353 ····</footer>
2354 ··</div>2354 ··</div>
2355 </main>2355 </main>
2356 </div>2356 </div>
2357 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>2357 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
2358 <script>2358 <script>
2359 ··document.addEventListener("DOMContentLoaded",·function·()·{2359 ··document.addEventListener("DOMContentLoaded",·function·()·{
629 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxWebViewEvent.html
    
Offset 486, 15 lines modifiedOffset 486, 15 lines modified
486 ······<p·class="built-using">486 ······<p·class="built-using">
487 ········Built·using487 ········Built·using
488 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the488 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
489 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>489 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
490 ······</p>490 ······</p>
491 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>491 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
492 ····</footer>492 ····</footer>
493 ··</div>493 ··</div>
494 </main>494 </main>
495 </div>495 </div>
496 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>496 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
497 <script>497 <script>
498 ··document.addEventListener("DOMContentLoaded",·function·()·{498 ··document.addEventListener("DOMContentLoaded",·function·()·{
702 B
html2text {}
Max HTML report size reached
1.46 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxWindow.html
    
Offset 8280, 15 lines modifiedOffset 8280, 15 lines modified
8280 ······<p·class="built-using">8280 ······<p·class="built-using">
8281 ········Built·using8281 ········Built·using
8282 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the8282 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
8283 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>8283 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
8284 ······</p>8284 ······</p>
8285 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>8285 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
8286 ····</footer>8286 ····</footer>
8287 ··</div>8287 ··</div>
8288 </main>8288 </main>
8289 </div>8289 </div>
8290 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>8290 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
8291 <script>8291 <script>
8292 ··document.addEventListener("DOMContentLoaded",·function·()·{8292 ··document.addEventListener("DOMContentLoaded",·function·()·{
661 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxWindowCreateEvent.html
    
Offset 302, 15 lines modifiedOffset 302, 15 lines modified
302 ······<p·class="built-using">302 ······<p·class="built-using">
303 ········Built·using303 ········Built·using
304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
306 ······</p>306 ······</p>
307 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>307 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
308 ····</footer>308 ····</footer>
309 ··</div>309 ··</div>
310 </main>310 </main>
311 </div>311 </div>
312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
313 <script>313 <script>
314 ··document.addEventListener("DOMContentLoaded",·function·()·{314 ··document.addEventListener("DOMContentLoaded",·function·()·{
684 B
html2text {}
Max HTML report size reached
1.47 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxWindowDC.html
    
Offset 316, 15 lines modifiedOffset 316, 15 lines modified
316 ······<p·class="built-using">316 ······<p·class="built-using">
317 ········Built·using317 ········Built·using
318 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the318 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
319 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>319 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
320 ······</p>320 ······</p>
321 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>321 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
322 ····</footer>322 ····</footer>
323 ··</div>323 ··</div>
324 </main>324 </main>
325 </div>325 </div>
326 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>326 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
327 <script>327 <script>
328 ··document.addEventListener("DOMContentLoaded",·function·()·{328 ··document.addEventListener("DOMContentLoaded",·function·()·{
670 B
html2text {}
Max HTML report size reached
1.51 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxWindowDestroyEvent.html
    
Offset 302, 15 lines modifiedOffset 302, 15 lines modified
302 ······<p·class="built-using">302 ······<p·class="built-using">
303 ········Built·using303 ········Built·using
304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the304 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>305 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
306 ······</p>306 ······</p>
307 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>307 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
308 ····</footer>308 ····</footer>
309 ··</div>309 ··</div>
310 </main>310 </main>
311 </div>311 </div>
312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>312 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
313 <script>313 <script>
314 ··document.addEventListener("DOMContentLoaded",·function·()·{314 ··document.addEventListener("DOMContentLoaded",·function·()·{
690 B
html2text {}
Max HTML report size reached
1.5 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wxXmlResource.html
    
Offset 1489, 15 lines modifiedOffset 1489, 15 lines modified
1489 ······<p·class="built-using">1489 ······<p·class="built-using">
1490 ········Built·using1490 ········Built·using
1491 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1491 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1492 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1492 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1493 ······</p>1493 ······</p>
1494 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1494 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1495 ····</footer>1495 ····</footer>
1496 ··</div>1496 ··</div>
1497 </main>1497 </main>
1498 </div>1498 </div>
1499 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1499 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1500 <script>1500 <script>
1501 ··document.addEventListener("DOMContentLoaded",·function·()·{1501 ··document.addEventListener("DOMContentLoaded",·function·()·{
689 B
html2text {}
Max HTML report size reached
1.44 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wx_misc.html
    
Offset 1294, 15 lines modifiedOffset 1294, 15 lines modified
1294 ······<p·class="built-using">1294 ······<p·class="built-using">
1295 ········Built·using1295 ········Built·using
1296 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1296 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1297 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1297 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1298 ······</p>1298 ······</p>
1299 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1299 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1300 ····</footer>1300 ····</footer>
1301 ··</div>1301 ··</div>
1302 </main>1302 </main>
1303 </div>1303 </div>
1304 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1304 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1305 <script>1305 <script>
1306 ··document.addEventListener("DOMContentLoaded",·function·()·{1306 ··document.addEventListener("DOMContentLoaded",·function·()·{
636 B
html2text {}
Max HTML report size reached
20.9 KB
./usr/share/doc/erlang-doc/html/lib/wx-2.4.2/doc/html/wx_object.html
    
Offset 132, 44 lines modifiedOffset 132, 44 lines modified
132 works·like·a·regular·gen_server·module·and·creates·a·server·per·object.</p><p>NOTE:·Currently·no·form·of·inheritance·is·implemented.</p><p>The·user·module·should·export:</p><p>init(Args)·should·return<br/>{wxWindow,·State}·|·{wxWindow,·State,·Timeout}·|·ignore·|·{stop,·Reason}</p><p>Asynchronous·window·event·handling:<br/>handle_event(#wx{},·State)·should·return<br/>{noreply,·State}·|·{noreply,·State,·Timeout}·|·{stop,·Reason,·State}</p><p>The·user·module·can·export·the·following·callback·functions:</p><p>handle_call(Msg,·{From,·Tag},·State)·should·return<br/>{reply,·Reply,·State}·|·{reply,·Reply,·State,·Timeout}·|·{noreply,·State}132 works·like·a·regular·gen_server·module·and·creates·a·server·per·object.</p><p>NOTE:·Currently·no·form·of·inheritance·is·implemented.</p><p>The·user·module·should·export:</p><p>init(Args)·should·return<br/>{wxWindow,·State}·|·{wxWindow,·State,·Timeout}·|·ignore·|·{stop,·Reason}</p><p>Asynchronous·window·event·handling:<br/>handle_event(#wx{},·State)·should·return<br/>{noreply,·State}·|·{noreply,·State,·Timeout}·|·{stop,·Reason,·State}</p><p>The·user·module·can·export·the·following·callback·functions:</p><p>handle_call(Msg,·{From,·Tag},·State)·should·return<br/>{reply,·Reply,·State}·|·{reply,·Reply,·State,·Timeout}·|·{noreply,·State}
133 |·{noreply,·State,·Timeout}·|·{stop,·Reason,·Reply,·State}</p><p>handle_cast(Msg,·State)·should·return<br/>{noreply,·State}·|·{noreply,·State,·Timeout}·|·{stop,·Reason,·State}</p><p>If·the·above·are·not·exported·but·called,·the·wx_object·process·will·crash.·The133 |·{noreply,·State,·Timeout}·|·{stop,·Reason,·Reply,·State}</p><p>handle_cast(Msg,·State)·should·return<br/>{noreply,·State}·|·{noreply,·State,·Timeout}·|·{stop,·Reason,·State}</p><p>If·the·above·are·not·exported·but·called,·the·wx_object·process·will·crash.·The
134 user·module·can·also·export:</p><p>Info·is·message·e.g.·{'EXIT',·P,·R},·{nodedown,·N},·...<br/>handle_info(Info,·State)·should·return·,·...<br/>{noreply,·State}·|·{noreply,·State,·Timeout}·|·{stop,·Reason,·State}</p><p>If·a·message·is·sent·to·the·wx_object·process·when·handle_info·is·not·exported,134 user·module·can·also·export:</p><p>Info·is·message·e.g.·{'EXIT',·P,·R},·{nodedown,·N},·...<br/>handle_info(Info,·State)·should·return·,·...<br/>{noreply,·State}·|·{noreply,·State,·Timeout}·|·{stop,·Reason,·State}</p><p>If·a·message·is·sent·to·the·wx_object·process·when·handle_info·is·not·exported,
135 the·message·will·be·dropped·and·ignored.</p><p>When·stop·is·returned·in·one·of·the·functions·above·with·Reason·=·normal·|135 the·message·will·be·dropped·and·ignored.</p><p>When·stop·is·returned·in·one·of·the·functions·above·with·Reason·=·normal·|
136 shutdown·|·Term,·terminate(State)·is·called.·It·lets·the·user·module·clean·up,136 shutdown·|·Term,·terminate(State)·is·called.·It·lets·the·user·module·clean·up,
137 it·is·always·called·when·server·terminates·or·when·wx_object()·in·the·driver·is137 it·is·always·called·when·server·terminates·or·when·wx_object()·in·the·driver·is
138 deleted.·If·the·Parent·process·terminates·the·Module:terminate/2·function·is138 deleted.·If·the·Parent·process·terminates·the·Module:terminate/2·function·is
139 called.<br/>terminate(Reason,·State)</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8578959261-1">(</span><span·class="ss">myDialog</span><span·class="p"·data-group-id="8578959261-1">)</span><span·class="p">.</span><span·class="w">139 called.<br/>terminate(Reason,·State)</p><p>Example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">··</span><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="1835179096-1">(</span><span·class="ss">myDialog</span><span·class="p"·data-group-id="1835179096-1">)</span><span·class="p">.</span><span·class="w">
140 </span><span·class="w">··</span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8578959261-2">(</span><span·class="p"·data-group-id="8578959261-3">[</span><span·class="ss">new</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">show</span><span·class="p">/</span><span[·...·truncated·by·diffoscope;·len:·242,·SHA:·34945b6d58f5da2befe16b6010b1110d51c20b0c58f7d3c0c4971c187775d65b·...·]-2">)</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%%·API</span><span·class="w">140 </span><span·class="w">··</span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1835179096-2">(</span><span·class="p"·data-group-id="1835179096-3">[</span><span·class="ss">new</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">show</span><span·class="p">/</span><span[·...·truncated·by·diffoscope;·len:·242,·SHA:·6699655f5f0ee58b94e1472dfa553d2c49bc12978649ec565414b51ef9371892·...·]-2">)</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%%·API</span><span·class="w">
141 </span><span·class="w">··</span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8578959261-4">(</span><span·class="p"·data-group-id="8578959261-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_event</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">141 </span><span·class="w">··</span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="1835179096-4">(</span><span·class="p"·data-group-id="1835179096-5">[</span><span·class="ss">init</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_call</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">handle_event</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">
142 ···········</span><span·class="ss">handle_info</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="8578959261-5">]</span><span·class="p"·data-group-id="8578959261-4">)</span><span·class="p">.</span><span·class="w">142 ···········</span><span·class="ss">handle_info</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">code_change</span><span·class="p">/</span><span·class="mi">3</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">terminate</span><span·class="p">/</span><span·class="mi">2</span><span·class="p"·data-group-id="1835179096-5">]</span><span·class="p"·data-group-id="1835179096-4">)</span><span·class="p">.</span><span·class="w">
143 ···········</span><span·class="ss">new</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">showModal</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">destroy</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">]</span><span·class="p">)</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%%·Callbacks</span><span·class="w">143 ···········</span><span·class="ss">new</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">showModal</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">destroy</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">]</span><span·class="p">)</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%%·Callbacks</span><span·class="w">
  
144 ··</span><span·class="c1">%%·Client·API</span><span·class="w">144 ··</span><span·class="c1">%%·Client·API</span><span·class="w">
145 ··</span><span·class="nf">new</span><span·class="p"·data-group-id="8578959261-6">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="8578959261-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">145 ··</span><span·class="nf">new</span><span·class="p"·data-group-id="1835179096-6">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Msg</span><span·class="p"·data-group-id="1835179096-6">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
146 ·····</span><span·class="nc">wx_object</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="8578959261-7">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="8578959261-8">[</span><span·class="n">Parent</span><span·class="p">,</span><span·class="n">Id</span><s[·...·truncated·by·diffoscope;·len:·246,·SHA:·a483a7a9d3dbf174ed58af108d2743dc29e24440c4729271a6b07b82ced9288a·...·]-7">)</span><span·class="p">.</span><span·class="w">146 ·····</span><span·class="nc">wx_object</span><span·class="p">:</span><span·class="nf">start</span><span·class="p"·data-group-id="1835179096-7">(</span><span·class="o">?</span><span·class="n">MODULE</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1835179096-8">[</span><span·class="n">Parent</span><span·class="p">,</span><span·class="n">Id</span><s[·...·truncated·by·diffoscope;·len:·246,·SHA:·06d71711ec4706b13697c48dea03063836cd237439d8b33ea952e3c083d1fb3c·...·]-7">)</span><span·class="p">.</span><span·class="w">
  
147 ··</span><span·class="nf">show</span><span·class="p"·data-group-id="8578959261-10">(</span><span·class="n">Dialog</span><span·class="p"·data-group-id="8578959261-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">147 ··</span><span·class="nf">show</span><span·class="p"·data-group-id="1835179096-10">(</span><span·class="n">Dialog</span><span·class="p"·data-group-id="1835179096-10">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
148 ·····</span><span·class="nc">wx_object</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="8578959261-11">(</span><span·class="n">Dialog</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">show_modal</span><span·class="p"·data-group-id="8578959261-11">)</span><span·class="p">.</span><span·class="w">148 ·····</span><span·class="nc">wx_object</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="1835179096-11">(</span><span·class="n">Dialog</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">show_modal</span><span·class="p"·data-group-id="1835179096-11">)</span><span·class="p">.</span><span·class="w">
  
149 ··</span><span·class="nf">destroy</span><span·class="p"·data-group-id="8578959261-12">(</span><span·class="n">Dialog</span><span·class="p"·data-group-id="8578959261-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">149 ··</span><span·class="nf">destroy</span><span·class="p"·data-group-id="1835179096-12">(</span><span·class="n">Dialog</span><span·class="p"·data-group-id="1835179096-12">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
150 ·····</span><span·class="nc">wx_object</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="8578959261-13">(</span><span·class="n">Dialog</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">destroy</span><span·class="p"·data-group-id="8578959261-13">)</span><span·class="p">.</span><span·class="w">150 ·····</span><span·class="nc">wx_object</span><span·class="p">:</span><span·class="nf">call</span><span·class="p"·data-group-id="1835179096-13">(</span><span·class="n">Dialog</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">destroy</span><span·class="p"·data-group-id="1835179096-13">)</span><span·class="p">.</span><span·class="w">
  
151 ··</span><span·class="c1">%%·Server·Implementation·ala·gen_server</span><span·class="w">151 ··</span><span·class="c1">%%·Server·Implementation·ala·gen_server</span><span·class="w">
152 ··</span><span·class="nf">init</span><span·class="p"·data-group-id="8578959261-14">(</span><span·class="p"·data-group-id="8578959261-15">[</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Str</span><span·class="p"·data-group-id="8578959261-15">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·c00e2c4529b213ab5a6c5e937922ea4cfefd8c60b9bde57ae6353d943e534dba·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">152 ··</span><span·class="nf">init</span><span·class="p"·data-group-id="1835179096-14">(</span><span·class="p"·data-group-id="1835179096-15">[</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Str</span><span·class="p"·data-group-id="1835179096-15">]</span><span·class="p"·data-g[·...·truncated·by·diffoscope;·len:·19,·SHA:·5c7948dfb9179c7d14e5a3f136860322fe0e2cf281de0144849f7e9770bf0bcf·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
153 ·····</span><span·class="n">Dialog</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">wxDialog</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="8578959261-16">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Testing&quot;</span><span·class="p">,</span><span·class="w">[·...·truncated·by·diffoscope;·len:·157,·SHA:·dc1a1aa8168d52c853145f37a013543df92a2c46d314c407dc2760b376889539·...·]-16">)</span><span·class="p">,</span><span·class="w">153 ·····</span><span·class="n">Dialog</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">wxDialog</span><span·class="p">:</span><span·class="nf">new</span><span·class="p"·data-group-id="1835179096-16">(</span><span·class="n">Parent</span><span·class="p">,</span><span·class="w">·</span><span·class="mi">42</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;Testing&quot;</span><span·class="p">,</span><span·class="w">[·...·truncated·by·diffoscope;·len:·157,·SHA:·9fd1325d1f72edbe45313a0a733d9824834777bc3c8c7280d02749cc4c045584·...·]-16">)</span><span·class="p">,</span><span·class="w">
154 ·····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">154 ·····</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
155 ·····</span><span·class="nc">wxDialog</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="8578959261-18">(</span><span·class="n">Dialog</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">command_button_clicked</span><span·class="p"·data-group-id="8578959261-18">)</span><span·class="p">,</span><span·class="w">155 ·····</span><span·class="nc">wxDialog</span><span·class="p">:</span><span·class="nf">connect</span><span·class="p"·data-group-id="1835179096-18">(</span><span·class="n">Dialog</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">command_button_clicked</span><span·class="p"·data-group-id="1835179096-18">)</span><span·class="p">,</span><span·class="w">
156 ·····</span><span·class="p"·data-group-id="8578959261-19">{</span><span·class="n">Dialog</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyState</span><span·class="p"·data-group-id="8578959261-19">}</span><span·class="p">.</span><span·class="w">156 ·····</span><span·class="p"·data-group-id="1835179096-19">{</span><span·class="n">Dialog</span><span·class="p">,</span><span·class="w">·</span><span·class="n">MyState</span><span·class="p"·data-group-id="1835179096-19">}</span><span·class="p">.</span><span·class="w">
  
157 ··</span><span·class="nf">handle_call</span><span·class="p"·data-group-id="8578959261-20">(</span><span·class="ss">show</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·31639d2c74141590852dabf9f98373b33d5d6a52b0c8493e1327ec374ff0a628·...·]-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">157 ··</span><span·class="nf">handle_call</span><span·class="p"·data-group-id="1835179096-20">(</span><span·class="ss">show</span><span·class="p">,</span><span·class="w">·</span><span·class="p">_</span><span·class="n">From</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id=[·...·truncated·by·diffoscope;·len:·11,·SHA:·16cd97850b01c43b59f3881a42939436badd2eeb2639db794494e4a4134ddd6e·...·]-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
158 ·····</span><span·class="nc">wxDialog</span><span·class="p">:</span><span·class="nf">show</span><span·class="p"·data-group-id="8578959261-21">(</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">win</span><span·class="p"·data-group-id="8578959261-21">)</span><span·class="p">,</span><span·class="w">158 ·····</span><span·class="nc">wxDialog</span><span·class="p">:</span><span·class="nf">show</span><span·class="p"·data-group-id="1835179096-21">(</span><span·class="n">State</span><span·class="o">#</span><span·class="ss">state</span><span·class="p">.</span><span·class="ss">win</span><span·class="p"·data-group-id="1835179096-21">)</span><span·class="p">,</span><span·class="w">
159 ·····</span><span·class="p"·data-group-id="8578959261-22">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="8578959261-22">}</span><span·class="p">;</span><span·class="w">159 ·····</span><span·class="p"·data-group-id="1835179096-22">{</span><span·class="ss">reply</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="1835179096-22">}</span><span·class="p">;</span><span·class="w">
160 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">160 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">
161 ··</span><span·class="nf">handle_event</span><span·class="p"·data-group-id="8578959261-23">(</span><span·class="o">#</span><span·class="ss">wx</span><span·class="p"·data-group-id="8578959261-24">{</span><span·class="p"·data-group-id="8578959261-24">}</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·d597a589745c507be80864c5e5d3a6bc3112df51da4c7c50787bf492bb427b3c·...·]-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">161 ··</span><span·class="nf">handle_event</span><span·class="p"·data-group-id="1835179096-23">(</span><span·class="o">#</span><span·class="ss">wx</span><span·class="p"·data-group-id="1835179096-24">{</span><span·class="p"·data-group-id="1835179096-24">}</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span[·...·truncated·by·diffoscope;·len:·42,·SHA:·99ca2405350db0fdca18d966b99b2e47ec5f924f47e930d946a604cf3ea4264b·...·]-23">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
162 ·····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="8578959261-25">(</span><span·class="s">&quot;Users·clicked·button</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="8578959261-26">[</span><span·class="p"·data-group-id="8578959261-26">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·80dc8f9dc4ca769e90afdfbae29e937ab49bc7025960f27f17e5264109de182b·...·]-25">)</span><span·class="p">,</span><span·class="w">162 ·····</span><span·class="nc">io</span><span·class="p">:</span><span·class="nf">format</span><span·class="p"·data-group-id="1835179096-25">(</span><span·class="s">&quot;Users·clicked·button</span><span·class="si">~n</span><span·class="s">&quot;</span><span·class="p">,</span><span·class="p"·data-group-id="1835179096-26">[</span><span·class="p"·data-group-id="1835179096-26">]</sp[·...·truncated·by·diffoscope;·len:·44,·SHA:·9d2d87cd8e64c7cfca28a112e5d71e94e89174c94f6634201e02794fd12dc4a6·...·]-25">)</span><span·class="p">,</span><span·class="w">
163 ·····</span><span·class="p"·data-group-id="8578959261-27">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="8578959261-27">}</span><span·class="p">;</span><span·class="w">163 ·····</span><span·class="p"·data-group-id="1835179096-27">{</span><span·class="ss">noreply</span><span·class="p">,</span><span·class="w">·</span><span·class="n">State</span><span·class="p"·data-group-id="1835179096-27">}</span><span·class="p">;</span><span·class="w">
164 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><h2·id="module-data-types"·class="section-heading">164 ··</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span></code></pre><h2·id="module-data-types"·class="section-heading">
165 ··<a·href="#module-data-types"·class="hover-link">165 ··<a·href="#module-data-types"·class="hover-link">
166 ····<i·class="ri-link-m"·aria-hidden="true"></i>166 ····<i·class="ri-link-m"·aria-hidden="true"></i>
167 ··</a>167 ··</a>
168 ··<span·class="text">DATA·TYPES</span>168 ··<span·class="text">DATA·TYPES</span>
169 </h2>169 </h2>
170 <ul><li><p><strong><a·href=""·id="type-request_id"></a>·request_id()·=·term()</strong></p></li><li><p><strong><a·href=""·id="type-server_ref"></a>·server_ref()·=170 <ul><li><p><strong><a·href=""·id="type-request_id"></a>·request_id()·=·term()</strong></p></li><li><p><strong><a·href=""·id="type-server_ref"></a>·server_ref()·=
Offset 1367, 15 lines modifiedOffset 1367, 15 lines modified
1367 ······<p·class="built-using">1367 ······<p·class="built-using">
1368 ········Built·using1368 ········Built·using
1369 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1369 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1370 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1370 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1371 ······</p>1371 ······</p>
1372 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1372 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1373 ····</footer>1373 ····</footer>
1374 ··</div>1374 ··</div>
1375 </main>1375 </main>
1376 </div>1376 </div>
1377 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1377 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1378 <script>1378 <script>
1379 ··document.addEventListener("DOMContentLoaded",·function·()·{1379 ··document.addEventListener("DOMContentLoaded",·function·()·{
674 B
html2text {}
Max HTML report size reached
1.4 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/404.html
    
Offset 139, 15 lines modifiedOffset 139, 15 lines modified
139 ······<p·class="built-using">139 ······<p·class="built-using">
140 ········Built·using140 ········Built·using
141 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the141 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
142 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>142 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
143 ······</p>143 ······</p>
144 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>144 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
145 ····</footer>145 ····</footer>
146 ··</div>146 ··</div>
147 </main>147 </main>
148 </div>148 </div>
149 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>149 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
150 <script>150 <script>
151 ··document.addEventListener("DOMContentLoaded",·function·()·{151 ··document.addEventListener("DOMContentLoaded",·function·()·{
604 B
html2text {}
Max HTML report size reached
1.35 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/api-reference.html
    
Offset 231, 15 lines modifiedOffset 231, 15 lines modified
231 ······<p·class="built-using">231 ······<p·class="built-using">
232 ········Built·using232 ········Built·using
233 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the233 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
234 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>234 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
235 ······</p>235 ······</p>
236 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>236 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
237 ····</footer>237 ····</footer>
238 ··</div>238 ··</div>
239 </main>239 </main>
240 </div>240 </div>
241 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>241 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
242 <script>242 <script>
243 ··document.addEventListener("DOMContentLoaded",·function·()·{243 ··document.addEventListener("DOMContentLoaded",·function·()·{
537 B
html2text {}
Max HTML report size reached
1.37 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/notes.html
    
Offset 1290, 15 lines modifiedOffset 1290, 15 lines modified
1290 ······<p·class="built-using">1290 ······<p·class="built-using">
1291 ········Built·using1291 ········Built·using
1292 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1292 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1293 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1293 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1294 ······</p>1294 ······</p>
1295 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1295 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1296 ····</footer>1296 ····</footer>
1297 ··</div>1297 ··</div>
1298 </main>1298 </main>
1299 </div>1299 </div>
1300 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1300 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1301 <script>1301 <script>
1302 ··document.addEventListener("DOMContentLoaded",·function·()·{1302 ··document.addEventListener("DOMContentLoaded",·function·()·{
564 B
html2text {}
Max HTML report size reached
1.2 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/search.html
    
Offset 137, 15 lines modifiedOffset 137, 15 lines modified
137 ······<p·class="built-using">137 ······<p·class="built-using">
138 ········Built·using138 ········Built·using
139 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the139 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
140 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>140 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
141 ······</p>141 ······</p>
142 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>142 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
143 ····</footer>143 ····</footer>
144 ··</div>144 ··</div>
145 </main>145 </main>
146 </div>146 </div>
147 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>147 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
148 <script>148 <script>
149 ··document.addEventListener("DOMContentLoaded",·function·()·{149 ··document.addEventListener("DOMContentLoaded",·function·()·{
396 B
html2text {}
    
Offset 3, 8 lines modifiedOffset 3, 8 lines modified
3 v2.03 v2.0
4 ····*·Pages4 ····*·Pages
5 ····*·Modules5 ····*·Modules
6 Search·documentation·of·xmerl[q···················]6 Search·documentation·of·xmerl[q···················]
7 Settings7 Settings
8 Search·HexDocs8 Search·HexDocs
9 Built·using·_\x8E_\x8x_\x8D_\x8o_\x8c·(v0.34.2)·for·the·_\x8E_\x8r_\x8l_\x8a_\x8n_\x8g_\x8·_\x8p_\x8r_\x8o_\x8g_\x8r_\x8a_\x8m_\x8m_\x8i_\x8n_\x8g_\x8·_\x8l_\x8a_\x8n_\x8g_\x8u_\x8a_\x8g_\x8e9 Built·using·_\x8E_\x8x_\x8D_\x8o_\x8c·(v0.34.2)·for·the·_\x8E_\x8r_\x8l_\x8a_\x8n_\x8g_\x8·_\x8p_\x8r_\x8o_\x8g_\x8r_\x8a_\x8m_\x8m_\x8i_\x8n_\x8g_\x8·_\x8l_\x8a_\x8n_\x8g_\x8u_\x8a_\x8g_\x8e
10 Copyright·©·1996-2024·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B10 Copyright·©·1996-2025·_\x8E_\x8r_\x8i_\x8c_\x8s_\x8s_\x8o_\x8n_\x8·_\x8A_\x8B
1.39 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl.html
    
Offset 1133, 15 lines modifiedOffset 1133, 15 lines modified
1133 ······<p·class="built-using">1133 ······<p·class="built-using">
1134 ········Built·using1134 ········Built·using
1135 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1135 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1136 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1136 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1137 ······</p>1137 ······</p>
1138 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1138 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1139 ····</footer>1139 ····</footer>
1140 ··</div>1140 ··</div>
1141 </main>1141 </main>
1142 </div>1142 </div>
1143 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1143 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1144 <script>1144 <script>
1145 ··document.addEventListener("DOMContentLoaded",·function·()·{1145 ··document.addEventListener("DOMContentLoaded",·function·()·{
590 B
html2text {}
Max HTML report size reached
1.45 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl_eventp.html
    
Offset 550, 15 lines modifiedOffset 550, 15 lines modified
550 ······<p·class="built-using">550 ······<p·class="built-using">
551 ········Built·using551 ········Built·using
552 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the552 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
553 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>553 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
554 ······</p>554 ······</p>
555 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>555 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
556 ····</footer>556 ····</footer>
557 ··</div>557 ··</div>
558 </main>558 </main>
559 </div>559 </div>
560 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>560 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
561 <script>561 <script>
562 ··document.addEventListener("DOMContentLoaded",·function·()·{562 ··document.addEventListener("DOMContentLoaded",·function·()·{
635 B
html2text {}
Max HTML report size reached
61.0 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl_examples.html
    
Offset 142, 100 lines modifiedOffset 142, 100 lines modified
142 forms·are·<code·class="inline">{Tag, Fun}</code>,·or·<code·class="inline">{Tag, Fun, LocalState}</code>.·The·second·form·can·be·used142 forms·are·<code·class="inline">{Tag, Fun}</code>,·or·<code·class="inline">{Tag, Fun, LocalState}</code>.·The·second·form·can·be·used
143 to·initialize·the·state·variable·in·question.</p><h4>1.1·User·State</h4><p>All·customization·functions·are·free·to·access·a·&quot;User·state&quot;·variable.·Care143 to·initialize·the·state·variable·in·question.</p><h4>1.1·User·State</h4><p>All·customization·functions·are·free·to·access·a·&quot;User·state&quot;·variable.·Care
144 must·of·course·be·taken·to·coordinate·the·use·of·this·state.·It·is·recommended144 must·of·course·be·taken·to·coordinate·the·use·of·this·state.·It·is·recommended
145 that·functions,·which·do·not·really·have·anything·to·contribute·to·the·&quot;global&quot;145 that·functions,·which·do·not·really·have·anything·to·contribute·to·the·&quot;global&quot;
146 user·state,·use·their·own·state·variable·instead.·Another·option·(used·in·e.g.146 user·state,·use·their·own·state·variable·instead.·Another·option·(used·in·e.g.
147 <code·class="inline">xmerl_eventp.erl</code>)·is·for·customization·functions·to·share·one·of·the·local147 <code·class="inline">xmerl_eventp.erl</code>)·is·for·customization·functions·to·share·one·of·the·local
148 states·(in·<code·class="inline">xmerl_eventp.erl</code>,·the·continuation·function·and·the·fetch·function148 states·(in·<code·class="inline">xmerl_eventp.erl</code>,·the·continuation·function·and·the·fetch·function
149 both·access·the·cont_state.)</p><p>Functions·to·access·user·state:</p><ul><li>··<code·class="inline">xmerl_scan:user_state(GlobalState)</code></li><li>··<code·class="inline">xmerl_scan:user_state(UserState,·GlobalState)</code></li></ul><h4>1.2·Event·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3919566314-1">{</span><span·class="ss">event_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3919566314-2">(</span><span·class="p"·data-group-id="3919566314-2">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·494,·SHA:·c30da6e3d6eede0292f10709efd749579ebf76fa5e157c4e24fe6d2d4a1275a4·...·]-3">}</span></code></pre><p>The·event·function·is·called·at·the·beginning·and·at·the·end·of·a·parsed·entity.149 both·access·the·cont_state.)</p><p>Functions·to·access·user·state:</p><ul><li>··<code·class="inline">xmerl_scan:user_state(GlobalState)</code></li><li>··<code·class="inline">xmerl_scan:user_state(UserState,·GlobalState)</code></li></ul><h4>1.2·Event·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="4341700067-1">{</span><span·class="ss">event_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="4341700067-2">(</span><span·class="p"·data-group-id="4341700067-2">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·494,·SHA:·762c22a3d98facc5d54fd8495d95b91b4edd93bd5f54305656ff349288a3f41c·...·]-3">}</span></code></pre><p>The·event·function·is·called·at·the·beginning·and·at·the·end·of·a·parsed·entity.
150 It·has·the·following·format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="0489113806-1">(</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="0489113806-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">150 It·has·the·following·format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="8730827787-1">(</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8730827787-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
151 ···</span><span·class="n">EventState</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">event_state</span><span·class="p"·data-group-id="0489113806-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="0489113806-2">)</span><span·class="p">,</span><span·class="w">151 ···</span><span·class="n">EventState</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">event_state</span><span·class="p"·data-group-id="8730827787-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8730827787-2">)</span><span·class="p">,</span><span·class="w">
152 ···</span><span·class="n">EventState2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="0489113806-3">(</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventState</span><span·class="p"·data-group-id="0489113806-3">)</span><span·class="p">,</span><span·class="w">152 ···</span><span·class="n">EventState2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="8730827787-3">(</span><span·class="n">Event</span><span·class="p">,</span><span·class="w">·</span><span·class="n">EventState</span><span·class="p"·data-group-id="8730827787-3">)</span><span·class="p">,</span><span·class="w">
153 ···</span><span·class="n">GlobalState2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">event_state</span><span·class="p"·data-group-id="0489113806-4">(</span><span·class="n">EventState2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="0489113806-4">)</span><span·class="w">153 ···</span><span·class="n">GlobalState2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">event_state</span><span·class="p"·data-group-id="8730827787-4">(</span><span·class="n">EventState2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8730827787-4">)</span><span·class="w">
154 </span><span·class="k">end</span><span·class="p">.</span></code></pre><h4>1.3·Hook·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="5951243954-1">{</span><span·class="ss">hook_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5951243954-2">(</span><span·class="p"·data-group-id="5951243954-2">)</span><span·class="p"·data-group-id="5951243954-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="5951243954-3">{</span><span·class="ss">hook_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="5951243954-4">(</span><span·class="p"·data-group-id="5951243954-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HookState</span><span·class="p"·data-group-id="5951243954-3">}</span></code></pre><p>The·hook·function·is·called·when·the·processor·has·parsed·a·complete·entity. 
155 Format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="4843417988-1">(</span><span·class="n">Entity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalStat[·...·truncated·by·diffoscope;·len:·129,·SHA:·e1d0d78f913e32e0684ef45405cf727b4e0dba5828810d6980e9bb225f144951·...·]154 </span><span·class="k">end</span><span·class="p">.</span></code></pre><h4>1.3·Hook·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3432730543-1">{</span><span·class="ss">hook_fun</span><span·class="p">,</span><sp[·...·truncated·by·diffoscope;·len:·770,·SHA:·01f510f7d77c47dcb6debd82a04c6fe709e3fb5daa7ddb321e8a647158af88e2·...·]
 155 Format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="8839810377-1">(</span><span·class="n">Entity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8839810377-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
156 ···</span><span·class="n">HookState</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">hook_state</span><span·class="p"·data-group-id="4843417988-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="4843417988-2">)</span><span·class="p">,</span><span·class="w">156 ···</span><span·class="n">HookState</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">hook_state</span><span·class="p"·data-group-id="8839810377-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8839810377-2">)</span><span·class="p">,</span><span·class="w">
157 ···</span><span·class="p"·data-group-id="4843417988-3">{</span><span·class="n">TransformedEntity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HookState2</span><span·class="p"·data-group-id="4843417988-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class=[·...·truncated·by·diffoscope;·len:·242,·SHA:·2d5aa1dff978b66d7917c771b92d68a183a2e9d30a0851f0ba364cbcb7caa541·...·]-4">)</span><span·class="p">,</span><span·class="w">157 ···</span><span·class="p"·data-group-id="8839810377-3">{</span><span·class="n">TransformedEntity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">HookState2</span><span·class="p"·data-group-id="8839810377-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class=[·...·truncated·by·diffoscope;·len:·242,·SHA:·68cb7c96ac3be72c67696c89b266c98dc33d49fcd6afba59f09cf9e14d792d1f·...·]-4">)</span><span·class="p">,</span><span·class="w">
158 ···</span><span·class="n">GlobalState2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">hook_state</span><span·class="p"·data-group-id="4843417988-5">(</span><span·class="n">HookState2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="4843417988-5">)</span><span·class="p">,</span><span·class="w">158 ···</span><span·class="n">GlobalState2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">hook_state</span><span·class="p"·data-group-id="8839810377-5">(</span><span·class="n">HookState2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8839810377-5">)</span><span·class="p">,</span><span·class="w">
159 ···</span><span·class="p"·data-group-id="4843417988-6">{</span><span·class="n">TransformedEntity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState2</span><span·class="p"·data-group-id="4843417988-6">}</span><span·class="w">159 ···</span><span·class="p"·data-group-id="8839810377-6">{</span><span·class="n">TransformedEntity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState2</span><span·class="p"·data-group-id="8839810377-6">}</span><span·class="w">
160 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·relationship·between·the·event·function,·the·hook·function·and·the160 </span><span·class="k">end</span><span·class="p">.</span></code></pre><p>The·relationship·between·the·event·function,·the·hook·function·and·the
161 accumulator·function·is·as·follows:</p><ol><li>·The·event·function·is·first·called·with·an·'ended'·event·for·the·parsed161 accumulator·function·is·as·follows:</p><ol><li>·The·event·function·is·first·called·with·an·'ended'·event·for·the·parsed
162 entity.</li><li>·The·hook·function·is·called,·possibly·re-formatting·the·entity.</li><li>·The·acc·function·is·called·in·order·to·(optionally)·add·the·re-formatted162 entity.</li><li>·The·hook·function·is·called,·possibly·re-formatting·the·entity.</li><li>·The·acc·function·is·called·in·order·to·(optionally)·add·the·re-formatted
163 entity·to·the·contents·of·its·parent·element.</li></ol><h4>1.4·Fetch·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="7131256822-1">{</span><span·class="ss">fetch_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="7131256822-2">(</span><span·class="p"·data-group-id="7131256822-2">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·494,·SHA:·53abfa617ec26d1681c9ea3e50f61aa37e5e1b2b1eb250c6f2bd197930c73a38·...·]-3">}</span></code></pre><p>The·fetch·function·is·called·in·order·to·fetch·an·external·resource·(e.g.·a163 entity·to·the·contents·of·its·parent·element.</li></ol><h4>1.4·Fetch·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1242494000-1">{</span><span·class="ss">fetch_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="1242494000-2">(</span><span·class="p"·data-group-id="1242494000-2">)</span><span·class="p"·data[·...·truncated·by·diffoscope;·len:·494,·SHA:·cb685bd777e7ec7410e5cbe6ce65fb6284301a967191c56824365bffeb802e8e·...·]-3">}</span></code></pre><p>The·fetch·function·is·called·in·order·to·fetch·an·external·resource·(e.g.·a
164 DTD).</p><p>The·fetch·function·can·respond·with·three·different·return·values:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Result</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">164 DTD).</p><p>The·fetch·function·can·respond·with·three·different·return·values:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">Result</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">
165 ···</span><span·class="p"·data-group-id="3994060654-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3994060654-2">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filename</span>[·...·truncated·by·diffoscope;·len:·179,·SHA:·4f4ccf9685e618d635d7aa69a193a30b0208af9506effd9f4fe7554c232dbfde·...·]-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">165 ···</span><span·class="p"·data-group-id="1168181202-1">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1168181202-2">{</span><span·class="ss">file</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Filename</span>[·...·truncated·by·diffoscope;·len:·179,·SHA:·edc495e569d42622ef97e9284030146d6a6cb4e24f1ff581003d41b9da626339·...·]-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
166 ···</span><span·class="p"·data-group-id="3994060654-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="3994060654-4">{</span><span·class="ss">string</span><span·class="p">,</span><span·class="w">·</span><span·class="n">String</span>[·...·truncated·by·diffoscope;·len:·179,·SHA:·b103edfd653b82ac96f1edb55fec85a4193f559a0b61ee59003d7c16dbca6205·...·]-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">166 ···</span><span·class="p"·data-group-id="1168181202-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="p"·data-group-id="1168181202-4">{</span><span·class="ss">string</span><span·class="p">,</span><span·class="w">·</span><span·class="n">String</span>[·...·truncated·by·diffoscope;·len:·179,·SHA:·6c98b56d25d5cc93cb5e6707f5cd2c8651226bd0bc4cd7ce78031228d92e4ad4·...·]-3">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">
167 ···</span><span·class="p"·data-group-id="3994060654-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">not_fetched</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NewGlobalState</span><span·class="p"·data-group-id="399406065[·...·truncated·by·diffoscope;·len:·331,·SHA:·aaece796a3078d4a88c53db57542e1af246001873d1063d42a593df9b8142eeb·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">167 ···</span><span·class="p"·data-group-id="1168181202-5">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">not_fetched</span><span·class="p">,</span><span·class="w">·</span><span·class="n">NewGlobalState</span><span·class="p"·data-group-id="116818120[·...·truncated·by·diffoscope;·len:·331,·SHA:·269c4222daaf3d0352ebd1079dd145b8620bbee1553e5b663b065edeba15c56d·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
168 ···</span><span·class="n">FetchState</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">fetch_state</span><span·class="p"·data-group-id="9200001119-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="9200001119-2">)</span><span·class="p">,</span><span·class="w">168 ···</span><span·class="n">FetchState</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">fetch_state</span><span·class="p"·data-group-id="4868375705-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="4868375705-2">)</span><span·class="p">,</span><span·class="w">
169 ···</span><span·class="n">Result</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="9200001119-3">(</span><span·class="n">URI</span><span·class="p">,</span><span·class="w">·</span><span·class="n">FetchState</span><span·class="p"·data-group-id="9200001119-3">)</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%·Result·being·one·of·the·above</span><span·class="w"> 
170 </span><span·class="k">end</span><span·class="p">.</span></code></pre><h4>1.5·Continuation·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8149725720-1">{</span><span·class="ss">continuation_fun</span><span·class[·...·truncated·by·diffoscope;·len:·803,·SHA:·054db81752f0eb45921dec8fe0889c438d530e02d079aad2b6077d1f675afc70·...·]169 ···</span><span·class="n">Result</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">foo</span><span·class="p"·data-group-id="4868375705-3">(</span><span·class="n">URI</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·215,·SHA:·01c783de7036b4bef6894e8dd3ec7bd57c54df948a339f465800df63c564b8ee·...·]
 170 </span><span·class="k">end</span><span·class="p">.</span></code></pre><h4>1.5·Continuation·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="8486202299-1">{</span><span·class="ss">continuation_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8486202299-2">(</span><span·class="p"·data-group-id="8486202299-2">)</span><span·class="p"·data-group-id="8486202299-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="8486202299-3">{</span><span·class="ss">continuation_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8486202299-4">(</span><span·class="p"·data-group-id="8486202299-4">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ContinuationState</span><span·class="p"·data-group-id="8486202299-3">}</span></code></pre><p>The·continuation·function·is·called·when·the·parser·encounters·the·end·of·the
171 byte·stream.·Format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="4033961572-1">(</span><span·class="n">Continue</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Exception</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="4033961572-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">171 byte·stream.·Format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="0290880254-1">(</span><span·class="n">Continue</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Exception</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="0290880254-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
172 ···</span><span·class="n">ContState</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">cont_state</span><span·class="p"·data-group-id="4033961572-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="4033961572-2">)</span><span·class="p">,</span><span·class="w">172 ···</span><span·class="n">ContState</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">cont_state</span><span·class="p"·data-group-id="0290880254-2">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="0290880254-2">)</span><span·class="p">,</span><span·class="w">
173 ···</span><span·class="p"·data-group-id="4033961572-3">{</span><span·class="n">Result</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ContState2</span><span·class="p"·data-group-id="4033961572-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·165,·SHA:·90107298f994a06d7d8dab71af91fb5a6e90f3139277152f652eed6c3676063a·...·]-4">)</span><span·class="p">,</span><span·class="w">173 ···</span><span·class="p"·data-group-id="0290880254-3">{</span><span·class="n">Result</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ContState2</span><span·class="p"·data-group-id="0290880254-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span[·...·truncated·by·diffoscope;·len:·165,·SHA:·9833c03f54667df41887ca9b74d9d4ea9b40c882dca0b1ab1e04338f3c4ae2ca·...·]-4">)</span><span·class="p">,</span><span·class="w">
174 ···</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Result</span><span·class="w">·</span><span·class="k">of</span><span·class="w">174 ···</span><span·class="k">case</span><span·class="w">·</span><span·class="n">Result</span><span·class="w">·</span><span·class="k">of</span><span·class="w">
175 ······</span><span·class="p"·data-group-id="4033961572-5">[</span><span·class="p"·data-group-id="4033961572-5">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">175 ······</span><span·class="p"·data-group-id="0290880254-5">[</span><span·class="p"·data-group-id="0290880254-5">]</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
176 ·········</span><span·class="n">GlobalState2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">cont_state</span><span·class="p"·data-group-id="4033961572-6">(</span><span·class="n">ContState2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="4033961572-6">)</span><span·class="p">,</span><span·class="w">176 ·········</span><span·class="n">GlobalState2</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">cont_state</span><span·class="p"·data-group-id="0290880254-6">(</span><span·class="n">ContState2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="0290880254-6">)</span><span·class="p">,</span><span·class="w">
177 ·········</span><span·class="n">Exception</span><span·class="p"·data-group-id="4033961572-7">(</span><span·class="n">GlobalState2</span><span·class="p"·data-group-id="4033961572-7">)</span><span·class="p">;</span><span·class="w">177 ·········</span><span·class="n">Exception</span><span·class="p"·data-group-id="0290880254-7">(</span><span·class="n">GlobalState2</span><span·class="p"·data-group-id="0290880254-7">)</span><span·class="p">;</span><span·class="w">
178 ······</span><span·class="n">MoreBytes</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">178 ······</span><span·class="n">MoreBytes</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
179 ·········</span><span·class="p"·data-group-id="4033961572-8">{</span><span·class="n">MoreBytes2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Rest</span><span·class="p"·data-group-id="4033961572-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·171,·SHA:·e051494e271db70ab17bdedb2ffd0123a1c7a8bcd2cc7311bb412313f8b37495·...·]-9">)</span><span·class="p">,</span><span·class="w">179 ·········</span><span·class="p"·data-group-id="0290880254-8">{</span><span·class="n">MoreBytes2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Rest</span><span·class="p"·data-group-id="0290880254-8">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><[·...·truncated·by·diffoscope;·len:·171,·SHA:·b8784a3d8f41bf080e8b4e0e02b356a8c59717b320a3ddcdad7da6a9dd4599eb·...·]-9">)</span><span·class="p">,</span><span·class="w">
180 ·········</span><span·class="n">ContState3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">update_cont_state</span><span·class="p"·data-group-id="4033961572-10">(</span><span·class="n">Rest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ContState2</span><span·class="p"·data-group-id="4033961572-10">)</span><span·class="p">,</span><span·class="w">180 ·········</span><span·class="n">ContState3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nf">update_cont_state</span><span·class="p"·data-group-id="0290880254-10">(</span><span·class="n">Rest</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ContState2</span><span·class="p"·data-group-id="0290880254-10">)</span><span·class="p">,</span><span·class="w">
181 ·········</span><span·class="n">GlobalState3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">cont_state</span><span·class="p"·data-group-id="4033961572-11">(</span><span·class="n">ContState3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="4033961572-11">)</span><span·class="p">,</span><span·class="w">181 ·········</span><span·class="n">GlobalState3</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">cont_state</span><span·class="p"·data-group-id="0290880254-11">(</span><span·class="n">ContState3</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="0290880254-11">)</span><span·class="p">,</span><span·class="w">
182 ·········</span><span·class="n">Continue</span><span·class="p"·data-group-id="4033961572-12">(</span><span·class="n">MoreBytes2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState3</span><span·class="p"·data-group-id="4033961572-12">)</span><span·class="w">182 ·········</span><span·class="n">Continue</span><span·class="p"·data-group-id="0290880254-12">(</span><span·class="n">MoreBytes2</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState3</span><span·class="p"·data-group-id="0290880254-12">)</span><span·class="w">
183 ···</span><span·class="k">end</span><span·class="w">183 ···</span><span·class="k">end</span><span·class="w">
184 </span><span·class="k">end</span><span·class="p">.</span></code></pre><h4>1.6·Rules·Functions</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3885798032-1">{</span><span·class="ss">rules</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ReadFun</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3885798032-2">(</span><span·class="p"·data-group-id="3885798032-2">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">WriteFun</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3885798032-3">(</span><span·class="p"·data-group-id="3885798032-3">)</span><span·class="p">,</span><span·class="w">·</span><span·class="n">RulesState</span><span·class="p"·data-group-id="3885798032-1">}</span><span·class="w">·</span><span·class="p">|</span><span·class="w"> 
185 </span><span·class="p"·data-group-id="3885798032-4">{</span><span·class="ss">rules</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Table</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">ets</span><span·class=[·...·truncated·by·diffoscope;·len:·234,·SHA:·328bc36dda11c6bfa08692f5d813d40e1748830d026af9b54cedbd377130273c·...·]184 </span><span·class="k">end</span><span·class="p">.</span></code></pre><h4>1.6·Rules·Functions</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="1456305226-1">{</span><span·class="ss">rules</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·717,·SHA:·43468347bca47359b12b55017f44f34aa9a1b19f00332dc3e8d48618ea30d598·...·]
 185 </span><span·class="p"·data-group-id="1456305226-4">{</span><span·class="ss">rules</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Table</span><span·class="w">·</span><span·class="p">:</span><span·class="w">·</span><span·class="nf">ets</span><span·class="p"·data-group-id="1456305226-5">(</span><span·class="p"·data-group-id="1456305226-5">)</span><span·class="p"·data-group-id="1456305226-4">}</span></code></pre><p>The·rules·functions·take·care·of·storing·scanner·information·in·a·rules
186 database.·User-provided·rules·functions·may·opt·to·store·the·information·in186 database.·User-provided·rules·functions·may·opt·to·store·the·information·in
187 mnesia,·or·perhaps·in·the·user_state(RulesState).</p><p>The·following·modes·exist:</p><ul><li>··If·the·user·doesn't·specify·an·option,·the·scanner·creates·an·ets·table,·and187 mnesia,·or·perhaps·in·the·user_state(RulesState).</p><p>The·following·modes·exist:</p><ul><li>··If·the·user·doesn't·specify·an·option,·the·scanner·creates·an·ets·table,·and
188 uses·built-in·functions·to·read·and·write·data·to·it.·When·the·scanner·is188 uses·built-in·functions·to·read·and·write·data·to·it.·When·the·scanner·is
189 done,·the·ets·table·is·deleted.</li><li>··If·the·user·specifies·an·ets·table·via·the·<code·class="inline">{rules, Table}</code>·option,·the189 done,·the·ets·table·is·deleted.</li><li>··If·the·user·specifies·an·ets·table·via·the·<code·class="inline">{rules, Table}</code>·option,·the
190 scanner·uses·this·table.·When·the·scanner·is·done,·it·does·<em>not</em>·delete·the190 scanner·uses·this·table.·When·the·scanner·is·done,·it·does·<em>not</em>·delete·the
191 table.</li><li>··If·the·user·specifies·read·and·write·functions,·the·scanner·will·use·them191 table.</li><li>··If·the·user·specifies·read·and·write·functions,·the·scanner·will·use·them
192 instead.</li></ul><p>The·format·for·the·read·and·write·functions·are·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="n">WriteFun</span><span·class="p"·data-group-id="3682210083-1">(</span><span·class="n">Context</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Definition</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·76,·SHA:·8afdc820930f84b22238bfb8595e253ab313b02aa8f590987e2676b0d003169e·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">NewScannerState</span><span·class="p">.</span><span·class="w">192 instead.</li></ul><p>The·format·for·the·read·and·write·functions·are·as·follows:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="w">·</span><span·class="n">WriteFun</span><span·class="p"·data-group-id="4082267450-1">(</span><span·class="n">Context</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Definition</span><span·class="p">,</span><span·class="w">·</span>[·...·truncated·by·diffoscope;·len:·76,·SHA:·43cec31e9b2125e913522e7e058262bcea55e0a04ea07be73f6105bb44344558·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">NewScannerState</span><span·class="p">.</span><span·class="w">
193 ·</span><span·class="n">ReadFun</span><span·class="p"·data-group-id="3682210083-2">(</span><span·class="n">Context</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ScannerState</span><span·class="p"·data-group-id="3682210083-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Definition</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">.</span></code></pre><p>Here·is·a·summary·of·the·data·objects·currently·being·written·by·the·scanner:</p><table><thead><tr><th·style="text-align:·left;">Context</th><th·style="text-align:·left;">Key·Value</th><th·style="text-align:·left;">Definition</th></tr></thead><tbody><tr><td·style="text-align:·left;">notation</td><td·style="text-align:·left;">NotationName</td><td·style="text-align:·left;"><code·class="inline">{system, SL}·|·{public, PIDL, SL}</code></td></tr><tr><td·style="text-align:·left;">elem_def</td><td·style="text-align:·left;">ElementName</td><td·style="text-align:·left;"><code·class="inline">#xmlElement{content·=·ContentSpec}</code></td></tr><tr><td·style="text-align:·left;">parameter_entity</td><td·style="text-align:·left;">PEName</td><td·style="text-align:·left;"><code·class="inline">PEDef</code></td></tr><tr><td·style="text-align:·left;">entity</td><td·style="text-align:·left;">EntityName</td><td·style="text-align:·left;"><code·class="inline">EntityDef</code></td></tr></tbody></table><p><strong>·Table·1:</strong>·Scanner·data·objects</p><p>where</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">ContentSpec</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="ss">empty</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">any</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">ElemContent</span><span·class="w">193 ·</span><span·class="n">ReadFun</span><span·class="p"·data-group-id="4082267450-2">(</span><span·class="n">Context</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Name</span><span·class="p">,</span><span·class="w">·</span><span·class="n">ScannerState</span><span·class="p"·data-group-id="4082267450-2">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Definition</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">undefined</span><span·class="p">.</span></code></pre><p>Here·is·a·summary·of·the·data·objects·currently·being·written·by·the·scanner:</p><table><thead><tr><th·style="text-align:·left;">Context</th><th·style="text-align:·left;">Key·Value</th><th·style="text-align:·left;">Definition</th></tr></thead><tbody><tr><td·style="text-align:·left;">notation</td><td·style="text-align:·left;">NotationName</td><td·style="text-align:·left;"><code·class="inline">{system, SL}·|·{public, PIDL, SL}</code></td></tr><tr><td·style="text-align:·left;">elem_def</td><td·style="text-align:·left;">ElementName</td><td·style="text-align:·left;"><code·class="inline">#xmlElement{content·=·ContentSpec}</code></td></tr><tr><td·style="text-align:·left;">parameter_entity</td><td·style="text-align:·left;">PEName</td><td·style="text-align:·left;"><code·class="inline">PEDef</code></td></tr><tr><td·style="text-align:·left;">entity</td><td·style="text-align:·left;">EntityName</td><td·style="text-align:·left;"><code·class="inline">EntityDef</code></td></tr></tbody></table><p><strong>·Table·1:</strong>·Scanner·data·objects</p><p>where</p><pre><code·class="makeup·erlang"·translate="no"><span·class="n">ContentSpec</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="ss">empty</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">any</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">ElemContent</span><span·class="w">
194 </span><span·class="n">ElemContent</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="p"·data-group-id="8438289510-1">{</span><span·class="n">Mode</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Elems</span><span·class="p"·data-group-id="8438289510-1">}</span><span·class="w">194 </span><span·class="n">ElemContent</span><span·class="w">·</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="p"·data-group-id="6253970967-1">{</span><span·class="n">Mode</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Elems</span><span·class="p"·data-group-id="6253970967-1">}</span><span·class="w">
195 </span><span·class="n">Mode</span><span·class="w">········</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="ss">seq</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">choice</span><span·class="w">195 </span><span·class="n">Mode</span><span·class="w">········</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="ss">seq</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">choice</span><span·class="w">
196 </span><span·class="n">Elems</span><span·class="w">·······</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="p"·data-group-id="8438289510-2">[</span><span·class="n">Elem</span><span·class="p"·data-group-id="8438289510-2">]</span><span·class="w">196 </span><span·class="n">Elems</span><span·class="w">·······</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="p"·data-group-id="6253970967-2">[</span><span·class="n">Elem</span><span·class="p"·data-group-id="6253970967-2">]</span><span·class="w">
197 </span><span·class="n">Elem</span><span·class="w">········</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="ss">&#39;#PCDATA&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Name</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">ElemContent</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="8438289510-3">{</span><span·class="n">Occurrence</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Elems</span><span·class="p"·data-group-id="8438289510-3">}</span><span·class="w">197 </span><span·class="n">Elem</span><span·class="w">········</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="ss">&#39;#PCDATA&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">Name</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="n">ElemContent</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="p"·data-group-id="6253970967-3">{</span><span·class="n">Occurrence</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Elems</span><span·class="p"·data-group-id="6253970967-3">}</span><span·class="w">
198 </span><span·class="n">Occurrence</span><span·class="w">··</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="ss">&#39;*&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;?&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;+&#39;</span></code></pre><p>NOTE:·<em>When·&lt;Elem&gt;·is·not·wrapped·with·&lt;Occurrence&gt;,·(Occurrence·=·once)·is198 </span><span·class="n">Occurrence</span><span·class="w">··</span><span·class="p">:</span><span·class="p">:=</span><span·class="w">·</span><span·class="ss">&#39;*&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;?&#39;</span><span·class="w">·</span><span·class="p">|</span><span·class="w">·</span><span·class="ss">&#39;+&#39;</span></code></pre><p>NOTE:·<em>When·&lt;Elem&gt;·is·not·wrapped·with·&lt;Occurrence&gt;,·(Occurrence·=·once)·is
199 implied.</em></p><h4>1.7·Accumulator·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3495347815-1">{</span><span·class="ss">acc_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3495347815-2">(</span><span·class="p"·data-group-id="3495347815-2">)</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·2c45fffe899237ce4637ef22f70f34852d78f9e4d135528497dd669b84619181·...·]-1">}</span></code></pre><p>The·accumulator·function·is·called·to·accumulate·the·contents·of·an·entity.When199 implied.</em></p><h4>1.7·Accumulator·Function</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="p"·data-group-id="3908837763-1">{</span><span·class="ss">acc_fun</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="3908837763-2">(</span><span·class="p"·data-group-id="3908837763-2">)</span><span·class="p"·data-gr[·...·truncated·by·diffoscope;·len:·18,·SHA:·cc470f060062db9df8ab3599d2d63bb3545c4f08bf7084865f5703c697826934·...·]-1">}</span></code></pre><p>The·accumulator·function·is·called·to·accumulate·the·contents·of·an·entity.When
200 parsing·very·large·files,·it·may·not·be·desirable·to·do·so.In·this·case,·an·acc200 parsing·very·large·files,·it·may·not·be·desirable·to·do·so.In·this·case,·an·acc
201 function·can·be·provided·that·simply·doesn't·accumulate.</p><p>Note·that·it·is·possible·to·even·modify·the·parsed·entity·before·accumulating201 function·can·be·provided·that·simply·doesn't·accumulate.</p><p>Note·that·it·is·possible·to·even·modify·the·parsed·entity·before·accumulating
202 it,·but·this·must·be·done·with·care.·xmerl_scan·performs·post-processing·of·the202 it,·but·this·must·be·done·with·care.·xmerl_scan·performs·post-processing·of·the
203 element·for·namespace·management.·Thus,·the·element·must·keep·its·original203 element·for·namespace·management.·Thus,·the·element·must·keep·its·original
204 structure·for·this·to·work.</p><p>The·acc·function·has·the·following·format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·default·accumulating·acc·fun</span><span·class="w">204 structure·for·this·to·work.</p><p>The·acc·function·has·the·following·format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="c1">%%·default·accumulating·acc·fun</span><span·class="w">
205 </span><span·class="nf">fun</span><span·class="p"·data-group-id="5469111223-1">(</span><span·class="n">ParsedEntity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="5469111223-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">205 </span><span·class="nf">fun</span><span·class="p"·data-group-id="8408182036-1">(</span><span·class="n">ParsedEntity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8408182036-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
206 ···</span><span·class="p"·data-group-id="5469111223-2">{</span><span·class="p"·data-group-id="5469111223-3">[</span><span·class="n">ParsedEntity</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="5469111223-3">]</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·80,·SHA:·d6da2649f45cdc9bc1d09aa15db8e378501bbf241f63a04b01b9447e5b746cf6·...·]-2">}</span><span·class="p">.</span><span·class="w">206 ···</span><span·class="p"·data-group-id="8408182036-2">{</span><span·class="p"·data-group-id="8408182036-3">[</span><span·class="n">ParsedEntity</span><span·class="p">|</span><span·class="n">Acc</span><span·class="p"·data-group-id="8408182036-3">]</span><span·class="p">,</span><span·class="w">·</[·...·truncated·by·diffoscope;·len:·80,·SHA:·5dab403cd8ca84da1cbcbbe29ba30b79b798695d4b7a9f01a024a2b1cbbf2041·...·]-2">}</span><span·class="p">.</span><span·class="w">
  
207 </span><span·class="c1">%%·non-accumulating·acc·fun</span><span·class="w">207 </span><span·class="c1">%%·non-accumulating·acc·fun</span><span·class="w">
208 </span><span·class="nf">fun</span><span·class="p"·data-group-id="5469111223-4">(</span><span·class="n">ParsedEntity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="5469111223-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">208 </span><span·class="nf">fun</span><span·class="p"·data-group-id="8408182036-4">(</span><span·class="n">ParsedEntity</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8408182036-4">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
209 ···</span><span·class="p"·data-group-id="5469111223-5">{</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="5469111223-5">}</span><span·class="p">.</span></code></pre><h4>1.8·Close·Function</h4><p>The·close·function·is·called·when·a·document·(either·the·main·document·or·an209 ···</span><span·class="p"·data-group-id="8408182036-5">{</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8408182036-5">}</span><span·class="p">.</span></code></pre><h4>1.8·Close·Function</h4><p>The·close·function·is·called·when·a·document·(either·the·main·document·or·an
210 external·DTD)·has·been·completely·parsed.·When·xmerl_scan·was·started·using210 external·DTD)·has·been·completely·parsed.·When·xmerl_scan·was·started·using
211 <code·class="inline">xmerl_scan:file/[1,2]</code>,·the·file·will·be·read·in·full,·and·closed·immediately,211 <code·class="inline">xmerl_scan:file/[1,2]</code>,·the·file·will·be·read·in·full,·and·closed·immediately,
212 before·the·parsing·starts,·so·when·the·close·function·is·called,·it·will·not212 before·the·parsing·starts,·so·when·the·close·function·is·called,·it·will·not
213 need·to·actually·close·the·file.·In·this·case,·the·close·function·will·be·a·good213 need·to·actually·close·the·file.·In·this·case,·the·close·function·will·be·a·good
214 place·to·modify·the·state·variables.</p><p>Format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="9337433919-1">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="9337433919-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">214 place·to·modify·the·state·variables.</p><p>Format·and·semantics:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">fun</span><span·class="p"·data-group-id="8463436840-1">(</span><span·class="n">GlobalState</span><span·class="p"·data-group-id="8463436840-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
215 ···</span><span·class="n">GlobalState1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%·state·variables·may·be·altered</span></code></pre><h3·id="2-examples"·class="section-heading">215 ···</span><span·class="n">GlobalState1</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="p">.</span><span·class="w">··</span><span·class="c1">%·state·variables·may·be·altered</span></code></pre><h3·id="2-examples"·class="section-heading">
216 ··<a·href="#2-examples"·class="hover-link">216 ··<a·href="#2-examples"·class="hover-link">
217 ····<i·class="ri-link-m"·aria-hidden="true"></i>217 ····<i·class="ri-link-m"·aria-hidden="true"></i>
218 ··</a>218 ··</a>
219 ··<span·class="text">2·Examples</span>219 ··<span·class="text">2·Examples</span>
220 </h3>220 </h3>
221 <p>See·<code·class="inline">xmerl_test.erl</code>·for·more·examples.</p><h4>2.1·Handling·spaces</h4><p>The·following·sample·program·illustrates·three·ways·of·scanning·a·document:</p><ol><li>·the·default·scan,·which·leaves·whitespace·untouched</li><li>·normalizing·spaces</li><li>·normalizing·spaces,·then·removing·text·elements·that·only·contain·one·space.</li></ol><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="5852178307-1">(</span><span·class="ss">tmp</span><span·class="p"·data-group-id="5852178307-1">)</span><span·class="p">.</span><span·class="w">221 <p>See·<code·class="inline">xmerl_test.erl</code>·for·more·examples.</p><h4>2.1·Handling·spaces</h4><p>The·following·sample·program·illustrates·three·ways·of·scanning·a·document:</p><ol><li>·the·default·scan,·which·leaves·whitespace·untouched</li><li>·normalizing·spaces</li><li>·normalizing·spaces,·then·removing·text·elements·that·only·contain·one·space.</li></ol><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">module</span><span·class="p"·data-group-id="8776693719-1">(</span><span·class="ss">tmp</span><span·class="p"·data-group-id="8776693719-1">)</span><span·class="p">.</span><span·class="w">
222 </span><span·class="w">222 </span><span·class="w">
223 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="5852178307-2">(</span><span·class="s">&quot;xmerl.hrl&quot;</span><span·class="p"·data-group-id="5852178307-2">)</span><span·class="p">.</span><span·class="w">223 </span><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="8776693719-2">(</span><span·class="s">&quot;xmerl.hrl&quot;</span><span·class="p"·data-group-id="8776693719-2">)</span><span·class="p">.</span><span·class="w">
224 </span><span·class="w">224 </span><span·class="w">
225 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="5852178307-3">(</span><span·class="p"·data-group-id="5852178307-4">[</span><span·class="ss">file1</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">file2</span><span·class="p">/</span><s[·...·truncated·by·diffoscope;·len:·243,·SHA:·0f2b16fd58f0ba8f530fc3acefc062347dbdfd285405590c40ed952d5b4bb85e·...·]-3">)</span><span·class="p">.</span><span·class="w">225 </span><span·class="p">-</span><span·class="na">export</span><span·class="p"·data-group-id="8776693719-3">(</span><span·class="p"·data-group-id="8776693719-4">[</span><span·class="ss">file1</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">file2</span><span·class="p">/</span><s[·...·truncated·by·diffoscope;·len:·243,·SHA:·e353319e6a547838522ef20f4651e3950f760c9570b66745e57fa24afc493076·...·]-3">)</span><span·class="p">.</span><span·class="w">
  
226 </span><span·class="nf">file1</span><span·class="p"·data-group-id="5852178307-5">(</span><span·class="n">F</span><span·class="p"·data-group-id="5852178307-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">file</[·...·truncated·by·diffoscope;·len:·123,·SHA:·ac5026fd726cf39278889b5e9fd1311750118d5ab1dc2ff7c951206191225619·...·]-6">)</span><span·class="p">.</span><span·class="w">226 </span><span·class="nf">file1</span><span·class="p"·data-group-id="8776693719-5">(</span><span·class="n">F</span><span·class="p"·data-group-id="8776693719-5">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">file</[·...·truncated·by·diffoscope;·len:·123,·SHA:·ae281adf3ecf82bd6b8b8cf1243daf54b999b00c2908495d4f1aba8224ae2730·...·]-6">)</span><span·class="p">.</span><span·class="w">
  
227 </span><span·class="nf">file2</span><span·class="p"·data-group-id="5852178307-7">(</span><span·class="n">F</span><span·class="p"·data-group-id="5852178307-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">file</[·...·truncated·by·diffoscope;·len:·471,·SHA:·f2f672a7a649e67705b1113256c0543a5f2b35a22bfc339b095bc138623f02fc·...·]-8">)</span><span·class="p">.</span><span·class="w">227 </span><span·class="nf">file2</span><span·class="p"·data-group-id="8776693719-7">(</span><span·class="n">F</span><span·class="p"·data-group-id="8776693719-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><span·class="p">:</span><span·class="nf">file</[·...·truncated·by·diffoscope;·len:·471,·SHA:·5ca0013a56152a972c0d0d195acae8e409ff8096c91380f9985319b56efd661b·...·]-8">)</span><span·class="p">.</span><span·class="w">
  
228 </span><span·class="nf">file3</span><span·class="p"·data-group-id="5852178307-11">(</span><span·class="n">F</span><span·class="p"·data-group-id="5852178307-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span><span·class="o">=</span><span[·...·truncated·by·diffoscope;·len:·888,·SHA:·f709d58d4185152f376d11bb8b45174f122731ef2ffab08c2292bf5b9cf1e41b·...·]-14">{</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">P</span><span·class="p">,</span><span·class="w">228 </span><span·class="nf">file3</span><span·class="p"·data-group-id="8776693719-11">(</span><span·class="n">F</span><span·class="p"·data-group-id="8776693719-11">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">·</span><span·class="n">Acc</span><span·class="w">·</span><span·class="o">=</span><span[·...·truncated·by·diffoscope;·len:·888,·SHA:·377f72b48530c31556c7612001bb5f73ea3547e07cb1d44e08b2ed2869c2fd10·...·]-14">{</span><span·class="n">Acc</span><span·class="p">,</span><span·class="w">·</span><span·class="n">P</span><span·class="p">,</span><span·class="w">
229 </span><span·class="n">S</span><span·class="p"·data-group-id="5852178307-14">}</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·new·return·format·(X,·Acc,·S)·-&gt;·{[X|Acc],·S}·end,·xmerl_scan:file(F,</span><span·class="w">229 </span><span·class="n">S</span><span·class="p"·data-group-id="8776693719-14">}</span><span·class="p">;</span><span·class="w">·</span><span·class="c1">%·new·return·format·(X,·Acc,·S)·-&gt;·{[X|Acc],·S}·end,·xmerl_scan:file(F,</span><span·class="w">
230 </span><span·class="p"·data-group-id="5852178307-15">[</span><span·class="p"·data-group-id="5852178307-16">{</span><span·class="ss">space</span><span·class="p">,</span><span·class="ss">normalize</span><span·class="p"·data-group-id="5852178307-16">}</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·263,·SHA:·aa609aa74b390d5d64495778ea0b3a430ff4d2710d5469269a3a913cb5edcee8·...·]-15">]</span><span·class="p">)</span><span·class="p">.</span></code></pre>230 </span><span·class="p"·data-group-id="8776693719-15">[</span><span·class="p"·data-group-id="8776693719-16">{</span><span·class="ss">space</span><span·class="p">,</span><span·class="ss">normalize</span><span·class="p"·data-group-id="8776693719-16">}</span><span·class="p">,</span><span·class="w"[·...·truncated·by·diffoscope;·len:·263,·SHA:·e256ae19a1f2355fc449438602badd556a31d3830c15456e6a31cb1f144be69f·...·]-15">]</span><span·class="p">)</span><span·class="p">.</span></code></pre>
231 </div>231 </div>
  
232 <div·class="bottom-actions"·id="bottom-actions">232 <div·class="bottom-actions"·id="bottom-actions">
233 ··<div·class="bottom-actions-item">233 ··<div·class="bottom-actions-item">
  
234 ······<a·href="xmerl_ug.html"·class="bottom-actions-button"·rel="prev">234 ······<a·href="xmerl_ug.html"·class="bottom-actions-button"·rel="prev">
235 ········<span·class="subheader">235 ········<span·class="subheader">
Offset 274, 15 lines modifiedOffset 274, 15 lines modified
274 ······<p·class="built-using">274 ······<p·class="built-using">
275 ········Built·using275 ········Built·using
276 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the276 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
277 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>277 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
278 ······</p>278 ······</p>
279 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>279 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
280 ····</footer>280 ····</footer>
281 ··</div>281 ··</div>
282 </main>282 </main>
283 </div>283 </div>
284 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>284 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
285 <script>285 <script>
286 ··document.addEventListener("DOMContentLoaded",·function·()·{286 ··document.addEventListener("DOMContentLoaded",·function·()·{
672 B
html2text {}
Max HTML report size reached
1.4 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl_sax_parser.html
    
Offset 792, 15 lines modifiedOffset 792, 15 lines modified
792 ······<p·class="built-using">792 ······<p·class="built-using">
793 ········Built·using793 ········Built·using
794 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the794 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
795 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>795 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
796 ······</p>796 ······</p>
797 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>797 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
798 ····</footer>798 ····</footer>
799 ··</div>799 ··</div>
800 </main>800 </main>
801 </div>801 </div>
802 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>802 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
803 <script>803 <script>
804 ··document.addEventListener("DOMContentLoaded",·function·()·{804 ··document.addEventListener("DOMContentLoaded",·function·()·{
579 B
html2text {}
Max HTML report size reached
1.38 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl_scan.html
    
Offset 1143, 15 lines modifiedOffset 1143, 15 lines modified
1143 ······<p·class="built-using">1143 ······<p·class="built-using">
1144 ········Built·using1144 ········Built·using
1145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the1145 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
1146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>1146 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
1147 ······</p>1147 ······</p>
1148 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>1148 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
1149 ····</footer>1149 ····</footer>
1150 ··</div>1150 ··</div>
1151 </main>1151 </main>
1152 </div>1152 </div>
1153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>1153 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
1154 <script>1154 <script>
1155 ··document.addEventListener("DOMContentLoaded",·function·()·{1155 ··document.addEventListener("DOMContentLoaded",·function·()·{
572 B
html2text {}
Max HTML report size reached
161 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl_ug.html
Max HTML report size reached
1.43 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl_xpath.html
    
Offset 496, 15 lines modifiedOffset 496, 15 lines modified
496 ······<p·class="built-using">496 ······<p·class="built-using">
497 ········Built·using497 ········Built·using
498 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the498 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
499 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>499 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
500 ······</p>500 ······</p>
501 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>501 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
502 ····</footer>502 ····</footer>
503 ··</div>503 ··</div>
504 </main>504 </main>
505 </div>505 </div>
506 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>506 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
507 <script>507 <script>
508 ··document.addEventListener("DOMContentLoaded",·function·()·{508 ··document.addEventListener("DOMContentLoaded",·function·()·{
624 B
html2text {}
Max HTML report size reached
1.26 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl_xs.html
    
Offset 362, 15 lines modifiedOffset 362, 15 lines modified
362 ······<p·class="built-using">362 ······<p·class="built-using">
363 ········Built·using363 ········Built·using
364 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the364 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
365 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>365 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
366 ······</p>366 ······</p>
367 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>367 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
368 ····</footer>368 ····</footer>
369 ··</div>369 ··</div>
370 </main>370 </main>
371 </div>371 </div>
372 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>372 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
373 <script>373 <script>
374 ··document.addEventListener("DOMContentLoaded",·function·()·{374 ··document.addEventListener("DOMContentLoaded",·function·()·{
456 B
html2text {}
Max HTML report size reached
60.4 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl_xs_examples.html
    
Offset 131, 21 lines modifiedOffset 131, 21 lines modified
131 ··</a>131 ··</a>
132 ··<span·class="text">Examples</span>132 ··<span·class="text">Examples</span>
133 </h3>133 </h3>
134 <hr·class="thin"/><h4>Example·1·Using·xslapply</h4><p>original·XSLT:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;doc/title&quot;</span><span·class="o">&gt;</span><span·class="w">134 <hr·class="thin"/><h4>Example·1·Using·xslapply</h4><p>original·XSLT:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;doc/title&quot;</span><span·class="o">&gt;</span><span·class="w">
135 ····</span><span·class="o">&lt;</span><span·class="ss">h1</span><span·class="o">&gt;</span><span·class="w">135 ····</span><span·class="o">&lt;</span><span·class="ss">h1</span><span·class="o">&gt;</span><span·class="w">
136 ······</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="nb">apply</span><span·class="o">-</span><span·class="ss">templates</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="w">136 ······</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="nb">apply</span><span·class="o">-</span><span·class="ss">templates</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="w">
137 ····</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ss">h1</span><span·class="o">&gt;</span><span·class="w">137 ····</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ss">h1</span><span·class="o">&gt;</span><span·class="w">
138 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span></code></pre><p>becomes·in·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">template</span><span·class="p"·data-group-id="9730318421-1">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="9730318421-2">{</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·630,·SHA:·4948d34521831dbe157c9f0c8859b4dd208fdf9ed5c084416ea28e372de18021·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">138 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span></code></pre><p>becomes·in·Erlang:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">template</span><span·class="p"·data-group-id="4279364118-1">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4279364118-2">{</span><span·class="w">·</span><sp[·...·truncated·by·diffoscope;·len:·630,·SHA:·86ae29109ce42f51bddf3615a466bbbfcf78fee21d8ac90bc5a17a3a38311fc1·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
139 ····</span><span·class="p"·data-group-id="9730318421-5">[</span><span·class="s">&quot;&lt;h1&gt;&quot;</span><span·class="p">,</span><span·class="w">139 ····</span><span·class="p"·data-group-id="4279364118-5">[</span><span·class="s">&quot;&lt;h1&gt;&quot;</span><span·class="p">,</span><span·class="w">
140 ·········</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="9730318421-6">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·29437f867b526ceb5112a0192e5c7b6698b5e1ef82208f523409de9de2f3a42d·...·]-6">)</span><span·class="p">,</span><span·class="w">140 ·········</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4279364118-6">(</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·class="p"·data-group-id="[·...·truncated·by·diffoscope;·len:·10,·SHA:·c5dcd16cc2d739bbb8000a0c5b45aedb72737c80d7bf76bb842a66fda1f0048c·...·]-6">)</span><span·class="p">,</span><span·class="w">
141 ·····</span><span·class="s">&quot;&lt;/h1&gt;&quot;</span><span·class="p"·data-group-id="9730318421-5">]</span><span·class="p">;</span></code></pre><hr·class="thin"/><hr·class="thin"/><h4>Example·2·Using·value_of·and·select</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;title&quot;</span><span·class="o">&gt;</span><span·class="w">141 ·····</span><span·class="s">&quot;&lt;/h1&gt;&quot;</span><span·class="p"·data-group-id="4279364118-5">]</span><span·class="p">;</span></code></pre><hr·class="thin"/><hr·class="thin"/><h4>Example·2·Using·value_of·and·select</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;title&quot;</span><span·class="o">&gt;</span><span·class="w">
142 ··</span><span·class="o">&lt;</span><span·class="ow">div</span><span·class="w">·</span><span·class="ss">align</span><span·class="o">=</span><span·class="s">&quot;center&quot;</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="ss">h1</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">value</span><span·class="o">-</span><span·class="k">of</span><span·class="w">·</span><span·class="ss">select</span><span·class="o">=</span><span·class="s">&quot;.&quot;</span><span·class="w">·</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ss">h1</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ow">div</span><span·class="o">&gt;</span><span·class="w">142 ··</span><span·class="o">&lt;</span><span·class="ow">div</span><span·class="w">·</span><span·class="ss">align</span><span·class="o">=</span><span·class="s">&quot;center&quot;</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="ss">h1</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">value</span><span·class="o">-</span><span·class="k">of</span><span·class="w">·</span><span·class="ss">select</span><span·class="o">=</span><span·class="s">&quot;.&quot;</span><span·class="w">·</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ss">h1</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ow">div</span><span·class="o">&gt;</span><span·class="w">
143 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span></code></pre><p>becomes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">template</span><span·class="p"·data-group-id="9146879325-1">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="9146879325-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·158,·SHA:·e5aaa459ead526cd847e7324c4a0385d166f169114eca2cebc987cec655e334e·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">143 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span></code></pre><p>becomes:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">template</span><span·class="p"·data-group-id="4163485487-1">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4163485487-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·158,·SHA:·0b379017b2f18adbe2addfd4b8a69c5824bad2361f5540ca939166110e8c729e·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
144 ····</span><span·class="p"·data-group-id="9146879325-3">[</span><span·class="s">&quot;&lt;div·align=\&quot;center\&quot;&gt;&lt;h1&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="9146879325-4">(</span><span·class="nf">s[·...·truncated·by·diffoscope;·len:·426,·SHA:·1ad0afc7a0f8e69b67f2a65ab26db3a8d89ba2a8c4d6df776e1866ae3039e91d·...·]-3">]</span><span·class="p">;</span></code></pre><hr·class="thin"/><hr·class="thin"/><h4>Example·3·Simple·xsl·stylesheet</h4><p>A·complete·example·with·the·XSLT·sheet·in·the·xmerl·distribution.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">stylesheet</span><span·class="w">·</span><span·class="ss">version</span><span·class="o">=</span><span·class="s">&quot;1.0&quot;</span><span·class="w">144 ····</span><span·class="p"·data-group-id="4163485487-3">[</span><span·class="s">&quot;&lt;div·align=\&quot;center\&quot;&gt;&lt;h1&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="4163485487-4">(</span><span·class="nf">s[·...·truncated·by·diffoscope;·len:·426,·SHA:·a450d3fdde8dac28aaaab62b77d96694d92b00b23f4cb51eff3aa992df88efc6·...·]-3">]</span><span·class="p">;</span></code></pre><hr·class="thin"/><hr·class="thin"/><h4>Example·3·Simple·xsl·stylesheet</h4><p>A·complete·example·with·the·XSLT·sheet·in·the·xmerl·distribution.</p><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">stylesheet</span><span·class="w">·</span><span·class="ss">version</span><span·class="o">=</span><span·class="s">&quot;1.0&quot;</span><span·class="w">
145 ········</span><span·class="nc">xmlns</span><span·class="p">:</span><span·class="ss">xsl</span><span·class="o">=</span><span·class="s">&quot;http://www.w3.org/1999/XSL/Transform&quot;</span><span·class="w">145 ········</span><span·class="nc">xmlns</span><span·class="p">:</span><span·class="ss">xsl</span><span·class="o">=</span><span·class="s">&quot;http://www.w3.org/1999/XSL/Transform&quot;</span><span·class="w">
146 ········</span><span·class="ss">xmlns</span><span·class="o">=</span><span·class="s">&quot;http://www.w3.org/TR/xhtml1/strict&quot;</span><span·class="o">&gt;</span><span·class="w">146 ········</span><span·class="ss">xmlns</span><span·class="o">=</span><span·class="s">&quot;http://www.w3.org/TR/xhtml1/strict&quot;</span><span·class="o">&gt;</span><span·class="w">
  
147 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">strip</span><span·class="o">-</span><span·class="ss">space</span><span·class="w">·</span><span·class="ss">elements</span><span·class="o">=</span><span·class="s">&quot;doc·chapter·section&quot;</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="w">147 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">strip</span><span·class="o">-</span><span·class="ss">space</span><span·class="w">·</span><span·class="ss">elements</span><span·class="o">=</span><span·class="s">&quot;doc·chapter·section&quot;</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="w">
148 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">output</span><span·class="w">148 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">output</span><span·class="w">
149 ····</span><span·class="ss">method</span><span·class="o">=</span><span·class="s">&quot;xml&quot;</span><span·class="w">149 ····</span><span·class="ss">method</span><span·class="o">=</span><span·class="s">&quot;xml&quot;</span><span·class="w">
150 ····</span><span·class="ss">indent</span><span·class="o">=</span><span·class="s">&quot;yes&quot;</span><span·class="w">150 ····</span><span·class="ss">indent</span><span·class="o">=</span><span·class="s">&quot;yes&quot;</span><span·class="w">
Offset 198, 68 lines modifiedOffset 198, 68 lines modified
  
198 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;emph&quot;</span><span·class="o">&gt;</span><span·class="w">198 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;emph&quot;</span><span·class="o">&gt;</span><span·class="w">
199 ····</span><span·class="o">&lt;</span><span·class="ss">em</span><span·class="o">&gt;</span><span·class="w">199 ····</span><span·class="o">&lt;</span><span·class="ss">em</span><span·class="o">&gt;</span><span·class="w">
200 ······</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="nb">apply</span><span·class="o">-</span><span·class="ss">templates</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="w">200 ······</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="nb">apply</span><span·class="o">-</span><span·class="ss">templates</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="w">
201 ····</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ss">em</span><span·class="o">&gt;</span><span·class="w">201 ····</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ss">em</span><span·class="o">&gt;</span><span·class="w">
202 ··</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span><span·class="w">202 ··</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span><span·class="w">
  
203 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">stylesheet</span><span·class="o">&gt;</span></code></pre><hr·class="thin"/><hr·class="thin"/><h4>Example·4·Erlang·version</h4><p>Erlang·transformation·of·previous·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="4882890313-1">(</span><span·class="s">&quot;xmerl.hrl&quot;</span><span·class="p"·data-group-id="4882890313-1">)</span><span·class="p">.</span><span·class="w">203 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">stylesheet</span><span·class="o">&gt;</span></code></pre><hr·class="thin"/><hr·class="thin"/><h4>Example·4·Erlang·version</h4><p>Erlang·transformation·of·previous·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="p">-</span><span·class="na">include</span><span·class="p"·data-group-id="4436010481-1">(</span><span·class="s">&quot;xmerl.hrl&quot;</span><span·class="p"·data-group-id="4436010481-1">)</span><span·class="p">.</span><span·class="w">
204 </span><span·class="w">204 </span><span·class="w">
205 </span><span·class="p">-</span><span·class="na">import</span><span·class="p"·data-group-id="4882890313-2">(</span><span·class="ss">xmerl_xs</span><span·class="p">,</span><span·class="w">205 </span><span·class="p">-</span><span·class="na">import</span><span·class="p"·data-group-id="4436010481-2">(</span><span·class="ss">xmerl_xs</span><span·class="p">,</span><span·class="w">
206 ····</span><span·class="p"·data-group-id="4882890313-3">[</span><span·class="w">·</span><span·class="ss">xslapply</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">value_of</span><span·class="p">/</span><span·class="mi">1</span><[·...·truncated·by·diffoscope;·len:·379,·SHA:·f48c6018b787b41adc7c512c5badad1a68ccb4572f82f6808152506aecf1d935·...·]-2">)</span><span·class="p">.</span><span·class="w">206 ····</span><span·class="p"·data-group-id="4436010481-3">[</span><span·class="w">·</span><span·class="ss">xslapply</span><span·class="p">/</span><span·class="mi">2</span><span·class="p">,</span><span·class="w">·</span><span·class="ss">value_of</span><span·class="p">/</span><span·class="mi">1</span><[·...·truncated·by·diffoscope;·len:·379,·SHA:·635fce29ffcc69028cd7ccf880e8fdd70f5914c2996eeb889ccfc54e624833f0·...·]-2">)</span><span·class="p">.</span><span·class="w">
  
207 </span><span·class="nf">doctype</span><span·class="p"·data-group-id="4882890313-4">(</span><span·class="p"·data-group-id="4882890313-4">)</span><span·class="p">-&gt;</span><span·class="w">207 </span><span·class="nf">doctype</span><span·class="p"·data-group-id="4436010481-4">(</span><span·class="p"·data-group-id="4436010481-4">)</span><span·class="p">-&gt;</span><span·class="w">
208 ····</span><span·class="s">&quot;&lt;!DOCTYPE·html·PUBLIC·\&quot;-//W3C//DTD·XHTML·1.0·Transitional//EN\&quot;\208 ····</span><span·class="s">&quot;&lt;!DOCTYPE·html·PUBLIC·\&quot;-//W3C//DTD·XHTML·1.0·Transitional//EN\&quot;\
209 ·\&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd·\&quot;&gt;&quot;</span><span·class="p">.</span><span·class="w">209 ·\&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd·\&quot;&gt;&quot;</span><span·class="p">.</span><span·class="w">
  
210 </span><span·class="nf">process_xml</span><span·class="p"·data-group-id="4882890313-5">(</span><span·class="n">Doc</span><span·class="p"·data-group-id="4882890313-5">)</span><span·class="p">-&gt;</span><span·class="w">210 </span><span·class="nf">process_xml</span><span·class="p"·data-group-id="4436010481-5">(</span><span·class="n">Doc</span><span·class="p"·data-group-id="4436010481-5">)</span><span·class="p">-&gt;</span><span·class="w">
211 ····</span><span·class="nf">template</span><span·class="p"·data-group-id="4882890313-6">(</span><span·class="n">Doc</span><span·class="p"·data-group-id="4882890313-6">)</span><span·class="p">.</span><span·class="w">211 ····</span><span·class="nf">template</span><span·class="p"·data-group-id="4436010481-6">(</span><span·class="n">Doc</span><span·class="p"·data-group-id="4436010481-6">)</span><span·class="p">.</span><span·class="w">
  
212 </span><span·class="nf">template</span><span·class="p"·data-group-id="4882890313-7">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4882890313-8">{</span><span·class="ss">name</span>[·...·truncated·by·diffoscope;·len:·155,·SHA:·471706b780de54d9ab82b89509752640fd08be56dd098e150c5ece03b9f92ac1·...·]-7">)</span><span·class="p">-&gt;</span><span·class="w">212 </span><span·class="nf">template</span><span·class="p"·data-group-id="4436010481-7">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4436010481-8">{</span><span·class="ss">name</span>[·...·truncated·by·diffoscope;·len:·155,·SHA:·8e60cb55199d97d21d6e1f3f102520c734ae9b6b92a635971591b313186510fb·...·]-7">)</span><span·class="p">-&gt;</span><span·class="w">
213 ····</span><span·class="p"·data-group-id="4882890313-9">[</span><span·class="w">·</span><span·class="s">&quot;&lt;\?xml·version=\&quot;1.0\&quot;·encoding=\&quot;iso-8859-1\&quot;\?&gt;&quot;</span><span·class="p">,</span><span·class="w">213 ····</span><span·class="p"·data-group-id="4436010481-9">[</span><span·class="w">·</span><span·class="s">&quot;&lt;\?xml·version=\&quot;1.0\&quot;·encoding=\&quot;iso-8859-1\&quot;\?&gt;&quot;</span><span·class="p">,</span><span·class="w">
214 ······</span><span·class="nf">doctype</span><span·class="p"·data-group-id="4882890313-10">(</span><span·class="p"·data-group-id="4882890313-10">)</span><span·class="p">,</span><span·class="w">214 ······</span><span·class="nf">doctype</span><span·class="p"·data-group-id="4436010481-10">(</span><span·class="p"·data-group-id="4436010481-10">)</span><span·class="p">,</span><span·class="w">
215 ······</span><span·class="s">&quot;&lt;html·xmlns=\&quot;http://www.w3.org/1999/xhtml\&quot;·&gt;&quot;</span><span·class="w">215 ······</span><span·class="s">&quot;&lt;html·xmlns=\&quot;http://www.w3.org/1999/xhtml\&quot;·&gt;&quot;</span><span·class="w">
216 ······</span><span·class="s">&quot;&lt;head&gt;&quot;</span><span·class="w">216 ······</span><span·class="s">&quot;&lt;head&gt;&quot;</span><span·class="w">
217 ······</span><span·class="s">&quot;&lt;title&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="4882890313-11">(</span><span·class="nf">select</span><span·class="p"·data-group-id="4882890313-12">(</span><span·class="s">&quot;title&quot;</span><span·class="p">,</span><span·class="n">E</span><span·class="p"·data-group-id="4882890313-12">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·04367c79243ea2941ebf2ee58fe2ee75bad158a265281deb6cf2e0e26d6ff86b·...·]-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&lt;/title&gt;&quot;</span><span·class="w">217 ······</span><span·class="s">&quot;&lt;title&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="4436010481-11">(</span><span·class="nf">select</span><span·class="p"·data-group-id="4436010481-12">(</span><span·class="s">&quot;title&quot;</span><span·class="p">,</span><span·class="n">E</span><span·class="p"·data-group-id="4436010481-12">)</span><span·cl[·...·truncated·by·diffoscope;·len:·33,·SHA:·73531a9cb5c64f6f5e64b38855b3495feff071b3c0544245c423194266559db1·...·]-11">)</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&lt;/title&gt;&quot;</span><span·class="w">
218 ······</span><span·class="s">&quot;&lt;/head&gt;&quot;</span><span·class="w">218 ······</span><span·class="s">&quot;&lt;/head&gt;&quot;</span><span·class="w">
219 ······</span><span·class="s">&quot;&lt;body&gt;&quot;</span><span·class="p">,</span><span·class="w">219 ······</span><span·class="s">&quot;&lt;body&gt;&quot;</span><span·class="p">,</span><span·class="w">
220 ······</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4882890313-13">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·9adfff5157e186e444f2ef2ac0477772c6bcc4e9863198897f59178d419f4af1·...·]-13">)</span><span·class="p">,</span><span·class="w">220 ······</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4436010481-13">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·f12e4fd49babc7c3cb322209a1c0f4f41201e73338b2a8796537366c09f991e2·...·]-13">)</span><span·class="p">,</span><span·class="w">
221 ······</span><span·class="s">&quot;&lt;/body&gt;&quot;</span><span·class="w">221 ······</span><span·class="s">&quot;&lt;/body&gt;&quot;</span><span·class="w">
222 ······</span><span·class="s">&quot;&lt;/html&gt;&quot;</span><span·class="w">·</span><span·class="p"·data-group-id="4882890313-9">]</span><span·class="p">;</span><span·class="w">222 ······</span><span·class="s">&quot;&lt;/html&gt;&quot;</span><span·class="w">·</span><span·class="p"·data-group-id="4436010481-9">]</span><span·class="p">;</span><span·class="w">
  
  
223 </span><span·class="nf">template</span><span·class="p"·data-group-id="4882890313-14">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4882890313-15">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·636,·SHA:·67cb89b49c2313a0a68b13dd558bdb590d2450fe53829e9b153789b796ca35bb·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">223 </span><span·class="nf">template</span><span·class="p"·data-group-id="4436010481-14">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4436010481-15">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·636,·SHA:·afc1fbcea03a638c82296d41b3cf2546f67d2ae0a9d5676d409366c4a9adb3da·...·]-14">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
224 ····</span><span·class="p"·data-group-id="4882890313-18">[</span><span·class="s">&quot;&lt;h1&gt;&quot;</span><span·class="p">,</span><span·class="w">224 ····</span><span·class="p"·data-group-id="4436010481-18">[</span><span·class="s">&quot;&lt;h1&gt;&quot;</span><span·class="p">,</span><span·class="w">
225 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4882890313-19">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·9adfff5157e186e444f2ef2ac0477772c6bcc4e9863198897f59178d419f4af1·...·]-19">)</span><span·class="p">,</span><span·class="w">225 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4436010481-19">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·f12e4fd49babc7c3cb322209a1c0f4f41201e73338b2a8796537366c09f991e2·...·]-19">)</span><span·class="p">,</span><span·class="w">
226 ·····</span><span·class="s">&quot;&lt;/h1&gt;&quot;</span><span·class="p"·data-group-id="4882890313-18">]</span><span·class="p">;</span><span·class="w">226 ·····</span><span·class="s">&quot;&lt;/h1&gt;&quot;</span><span·class="p"·data-group-id="4436010481-18">]</span><span·class="p">;</span><span·class="w">
  
227 </span><span·class="nf">template</span><span·class="p"·data-group-id="4882890313-20">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4882890313-21">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·640,·SHA:·907a3ae0133eb217cde3edde7a9355aade914b8d1ac06457345842b339a47476·...·]-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">227 </span><span·class="nf">template</span><span·class="p"·data-group-id="4436010481-20">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4436010481-21">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·640,·SHA:·065b0191485b6b96c890e7eda985e3bef75be88a0245b079c2de92388afbdb3c·...·]-20">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
228 ····</span><span·class="p"·data-group-id="4882890313-24">[</span><span·class="s">&quot;&lt;h2&gt;&quot;</span><span·class="p">,</span><span·class="w">228 ····</span><span·class="p"·data-group-id="4436010481-24">[</span><span·class="s">&quot;&lt;h2&gt;&quot;</span><span·class="p">,</span><span·class="w">
229 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4882890313-25">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·9adfff5157e186e444f2ef2ac0477772c6bcc4e9863198897f59178d419f4af1·...·]-25">)</span><span·class="p">,</span><span·class="w">229 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4436010481-25">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·f12e4fd49babc7c3cb322209a1c0f4f41201e73338b2a8796537366c09f991e2·...·]-25">)</span><span·class="p">,</span><span·class="w">
230 ·····</span><span·class="s">&quot;&lt;/h2&gt;&quot;</span><span·class="p"·data-group-id="4882890313-24">]</span><span·class="p">;</span><span·class="w">230 ·····</span><span·class="s">&quot;&lt;/h2&gt;&quot;</span><span·class="p"·data-group-id="4436010481-24">]</span><span·class="p">;</span><span·class="w">
  
231 </span><span·class="nf">template</span><span·class="p"·data-group-id="4882890313-26">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4882890313-27">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·640,·SHA:·fdfe831661d8bdf4b94068906abc2f9c4d7617f7883c43220027d2bc0c914f48·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">231 </span><span·class="nf">template</span><span·class="p"·data-group-id="4436010481-26">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4436010481-27">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·640,·SHA:·d5b8e1840b75059831005cd941da3fc89cb89a95da6d3b46e70af010c4c22d71·...·]-26">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
232 ····</span><span·class="p"·data-group-id="4882890313-30">[</span><span·class="s">&quot;&lt;h3&gt;&quot;</span><span·class="p">,</span><span·class="w">232 ····</span><span·class="p"·data-group-id="4436010481-30">[</span><span·class="s">&quot;&lt;h3&gt;&quot;</span><span·class="p">,</span><span·class="w">
233 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4882890313-31">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·9adfff5157e186e444f2ef2ac0477772c6bcc4e9863198897f59178d419f4af1·...·]-31">)</span><span·class="p">,</span><span·class="w">233 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4436010481-31">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·f12e4fd49babc7c3cb322209a1c0f4f41201e73338b2a8796537366c09f991e2·...·]-31">)</span><span·class="p">,</span><span·class="w">
234 ·····</span><span·class="s">&quot;&lt;/h3&gt;&quot;</span><span·class="p"·data-group-id="4882890313-30">]</span><span·class="p">;</span><span·class="w">234 ·····</span><span·class="s">&quot;&lt;/h3&gt;&quot;</span><span·class="p"·data-group-id="4436010481-30">]</span><span·class="p">;</span><span·class="w">
  
235 </span><span·class="nf">template</span><span·class="p"·data-group-id="4882890313-32">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4882890313-33">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·183,·SHA:·cf3a3a53937a9329de8dbdea4d51ba0d472624da2ab45d961f1f9ea1cb7c2192·...·]-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">235 </span><span·class="nf">template</span><span·class="p"·data-group-id="4436010481-32">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4436010481-33">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·183,·SHA:·e0d50069ae9743af36b5716a735edb31e23ae0bc1ab481722e7ff1a6bf1e4cf6·...·]-32">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
236 ····</span><span·class="p"·data-group-id="4882890313-34">[</span><span·class="s">&quot;&lt;p&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4882890313-35">(</span><span·class="w">·</span><span·class="k">fun</span><span·[·...·truncated·by·diffoscope;·len:·359,·SHA:·f2520acb1bc3ed1489ee86afea7c983934abeffef8e39b77f57fbd75f4bb13b7·...·]-34">]</span><span·class="p">;</span><span·class="w">236 ····</span><span·class="p"·data-group-id="4436010481-34">[</span><span·class="s">&quot;&lt;p&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4436010481-35">(</span><span·class="w">·</span><span·class="k">fun</span><span·[·...·truncated·by·diffoscope;·len:·359,·SHA:·433e3f91b0cafe7018c949e3cc18aeb28cc77add03a737297d1e53402c03e31a·...·]-34">]</span><span·class="p">;</span><span·class="w">
  
237 </span><span·class="nf">template</span><span·class="p"·data-group-id="4882890313-36">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4882890313-37">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·183,·SHA:·3b1636c654fb0cf143f683cbf67fb2e81391177a147e62fae447f09a31149ea7·...·]-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">237 </span><span·class="nf">template</span><span·class="p"·data-group-id="4436010481-36">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4436010481-37">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·183,·SHA:·d979e0c4f486fc60eeccbecd526c4558b523ef154ad6491bc78b65ed11f6f181·...·]-36">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
238 ····</span><span·class="p"·data-group-id="4882890313-38">[</span><span·class="s">&quot;&lt;p·class=\&quot;note\&quot;&gt;&quot;</span><span·class="w">238 ····</span><span·class="p"·data-group-id="4436010481-38">[</span><span·class="s">&quot;&lt;p·class=\&quot;note\&quot;&gt;&quot;</span><span·class="w">
239 ·····</span><span·class="s">&quot;&lt;b&gt;NOTE:·&lt;/b&gt;&quot;</span><span·class="p">,</span><span·class="w">239 ·····</span><span·class="s">&quot;&lt;b&gt;NOTE:·&lt;/b&gt;&quot;</span><span·class="p">,</span><span·class="w">
240 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4882890313-39">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·9adfff5157e186e444f2ef2ac0477772c6bcc4e9863198897f59178d419f4af1·...·]-39">)</span><span·class="p">,</span><span·class="w">240 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4436010481-39">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·f12e4fd49babc7c3cb322209a1c0f4f41201e73338b2a8796537366c09f991e2·...·]-39">)</span><span·class="p">,</span><span·class="w">
241 ·····</span><span·class="s">&quot;&lt;/p&gt;&quot;</span><span·class="p"·data-group-id="4882890313-38">]</span><span·class="p">;</span><span·class="w">241 ·····</span><span·class="s">&quot;&lt;/p&gt;&quot;</span><span·class="p"·data-group-id="4436010481-38">]</span><span·class="p">;</span><span·class="w">
  
242 </span><span·class="nf">template</span><span·class="p"·data-group-id="4882890313-40">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4882890313-41">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·183,·SHA:·9930dd762f8c5316690265eeee0b97a4ff2431770388eb05d56c8f4587a0402a·...·]-40">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">242 </span><span·class="nf">template</span><span·class="p"·data-group-id="4436010481-40">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4436010481-41">{</span><span·class="w">·</span><s[·...·truncated·by·diffoscope;·len:·183,·SHA:·6850148d99e9794e07ca53ea131d2dd3003d24dc4f729059764eab00f87938c8·...·]-40">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
243 ····</span><span·class="p"·data-group-id="4882890313-42">[</span><span·class="s">&quot;&lt;em&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4882890313-43">(</span><span·class="w">·</span><span·class="k">fun</span><span[·...·truncated·by·diffoscope;·len:·361,·SHA:·4bab5227986c5338527c1e07fdba8873ac4e87d594de9be9e9032b52843ec4ec·...·]-42">]</span><span·class="p">;</span><span·class="w">243 ····</span><span·class="p"·data-group-id="4436010481-42">[</span><span·class="s">&quot;&lt;em&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="4436010481-43">(</span><span·class="w">·</span><span·class="k">fun</span><span[·...·truncated·by·diffoscope;·len:·361,·SHA:·4b2fed4287269857816e95998ef49d8cb37ccdacd2529117f76248ba4a2fe0a0·...·]-42">]</span><span·class="p">;</span><span·class="w">
  
244 </span><span·class="nf">template</span><span·class="p"·data-group-id="4882890313-44">(</span><span·class="n">E</span><span·class="p"·data-group-id="4882890313-44">)</span><span·class="p">-&gt;</span><span·class="w">244 </span><span·class="nf">template</span><span·class="p"·data-group-id="4436010481-44">(</span><span·class="n">E</span><span·class="p"·data-group-id="4436010481-44">)</span><span·class="p">-&gt;</span><span·class="w">
245 ····</span><span·class="nf">built_in_rules</span><span·class="p"·data-group-id="4882890313-45">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·9adfff5157e186e444f2ef2ac0477772c6bcc4e9863198897f59178d419f4af1·...·]-45">)</span><span·class="p">.</span></code></pre><p>It·is·important·to·end·with·a·call·to·<a·href="xmerl_xs.html#built_in_rules/2"><code·class="inline">xmerl_xs:built_in_rules/2</code></a>·if·you·want·any245 ····</span><span·class="nf">built_in_rules</span><span·class="p"·data-group-id="4436010481-45">(</span><span·class="w">·</span><span·class="k">fun</span><span·class="w">·</span><span·class="ss">template</span><span·class="p">/</span><span·class="mi">1</span><span·class="p">,</span><span·class="w">·</span><span·class="n">E</span><span·c[·...·truncated·by·diffoscope;·len:·34,·SHA:·f12e4fd49babc7c3cb322209a1c0f4f41201e73338b2a8796537366c09f991e2·...·]-45">)</span><span·class="p">.</span></code></pre><p>It·is·important·to·end·with·a·call·to·<a·href="xmerl_xs.html#built_in_rules/2"><code·class="inline">xmerl_xs:built_in_rules/2</code></a>·if·you·want·any
246 text·to·be·written·in·&quot;push&quot;·transforms.·That·are·the·ones·using·a·lot·<code·class="inline">xslapply(·fun·template/1,·E·)</code>·instead·of·<code·class="inline">value_of(select(&quot;xpath&quot;,E))</code>,·which·is·pull...</p><hr·class="thin"/><p>The·largest·example·is·the·stylesheet·to·transform·this·document·from·the246 text·to·be·written·in·&quot;push&quot;·transforms.·That·are·the·ones·using·a·lot·<code·class="inline">xslapply(·fun·template/1,·E·)</code>·instead·of·<code·class="inline">value_of(select(&quot;xpath&quot;,E))</code>,·which·is·pull...</p><hr·class="thin"/><p>The·largest·example·is·the·stylesheet·to·transform·this·document·from·the
247 Simplified·Docbook·XML·format·to·xhtml.·The·source·file·is·sdocbook2xhtml.erl.</p><h3·id="tips-and-tricks"·class="section-heading">247 Simplified·Docbook·XML·format·to·xhtml.·The·source·file·is·sdocbook2xhtml.erl.</p><h3·id="tips-and-tricks"·class="section-heading">
248 ··<a·href="#tips-and-tricks"·class="hover-link">248 ··<a·href="#tips-and-tricks"·class="hover-link">
249 ····<i·class="ri-link-m"·aria-hidden="true"></i>249 ····<i·class="ri-link-m"·aria-hidden="true"></i>
250 ··</a>250 ··</a>
251 ··<span·class="text">Tips·and·tricks</span>251 ··<span·class="text">Tips·and·tricks</span>
252 </h3>252 </h3>
Offset 270, 29 lines modifiedOffset 270, 29 lines modified
270 position·in·Erlang.</p><hr·class="thin"/><h4>Example·5·Counting·positions</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;stanza&quot;</span><span·class="o">&gt;</span><span·class="w">270 position·in·Erlang.</p><hr·class="thin"/><h4>Example·5·Counting·positions</h4><pre><code·class="makeup·erlang"·translate="no"><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;stanza&quot;</span><span·class="o">&gt;</span><span·class="w">
271 ··</span><span·class="o">&lt;</span><span·class="ss">p</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="nb">apply</span><span·class="o">-</span><span·class="ss">templates</span><span·class="w">·</span><span·class="ss">select</span><span·class="o">=</span><span·class="s">&quot;line&quot;</span><span·class="w">·</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ss">p</span><span·class="o">&gt;</span><span·class="w">271 ··</span><span·class="o">&lt;</span><span·class="ss">p</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="nb">apply</span><span·class="o">-</span><span·class="ss">templates</span><span·class="w">·</span><span·class="ss">select</span><span·class="o">=</span><span·class="s">&quot;line&quot;</span><span·class="w">·</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="ss">p</span><span·class="o">&gt;</span><span·class="w">
272 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span><span·class="w">272 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span><span·class="w">
  
273 </span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;line&quot;</span><span·class="o">&gt;</span><span·class="w">273 </span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="w">·</span><span·class="ss">match</span><span·class="o">=</span><span·class="s">&quot;line&quot;</span><span·class="o">&gt;</span><span·class="w">
274 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="k">if</span><span·class="w">·</span><span·class="ss">test</span><span·class="o">=</span><span·class="s">&quot;position()·mod·2·=·0&quot;</span><span·class="o">&gt;</span><span·class="err">&amp;</span><span·class="p">#</span><span·class="mi">160</span><span·class="p">;</span><span·class="err">&amp;</span><span·class="p">#</span><span·class="mi">160</span><span·class="p">;</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="k">if</span><span·class="o">&gt;</span><span·class="w">274 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="k">if</span><span·class="w">·</span><span·class="ss">test</span><span·class="o">=</span><span·class="s">&quot;position()·mod·2·=·0&quot;</span><span·class="o">&gt;</span><span·class="err">&amp;</span><span·class="p">#</span><span·class="mi">160</span><span·class="p">;</span><span·class="err">&amp;</span><span·class="p">#</span><span·class="mi">160</span><span·class="p">;</span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="k">if</span><span·class="o">&gt;</span><span·class="w">
275 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">value</span><span·class="o">-</span><span·class="k">of</span><span·class="w">·</span><span·class="ss">select</span><span·class="o">=</span><span·class="s">&quot;.&quot;</span><span·class="w">·</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="ss">br</span><span·class="w">·</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="w">275 ··</span><span·class="o">&lt;</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">value</span><span·class="o">-</span><span·class="k">of</span><span·class="w">·</span><span·class="ss">select</span><span·class="o">=</span><span·class="s">&quot;.&quot;</span><span·class="w">·</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="o">&lt;</span><span·class="ss">br</span><span·class="w">·</span><span·class="o">/</span><span·class="o">&gt;</span><span·class="w">
276 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span></code></pre><p>Can·be·written·as</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">template</span><span·class="p"·data-group-id="4427454208-1">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4427454208-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·159,·SHA:·8677028afa7c14731bf59498805072b7180dd0e9c320b5887078a6451cb0782b·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">276 </span><span·class="o">&lt;</span><span·class="o">/</span><span·class="nc">xsl</span><span·class="p">:</span><span·class="ss">template</span><span·class="o">&gt;</span></code></pre><p>Can·be·written·as</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">template</span><span·class="p"·data-group-id="5743719207-1">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="5743719207-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·159,·SHA:·40e42664c6524b7cdca935fd1d7c444427dbe84fb0e5ddf1de9a9ee9b7ecab4b·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
277 ····</span><span·class="p"·data-group-id="4427454208-3">{</span><span·class="n">Lines</span><span·class="p">,</span><span·class="n">LineNo</span><span·class="p"·data-group-id="4427454208-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span[·...·truncated·by·diffoscope;·len:·654,·SHA:·e672c574f263f2a3427cea4fbc35368ab7b4c48bcb0fa1f4968aad78a70e20d3·...·]-4">)</span><span·class="p">,</span><span·class="w">277 ····</span><span·class="p"·data-group-id="5743719207-3">{</span><span·class="n">Lines</span><span·class="p">,</span><span·class="n">LineNo</span><span·class="p"·data-group-id="5743719207-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">lists</span[·...·truncated·by·diffoscope;·len:·654,·SHA:·b14b2aaa936510dc7137624a0d9d8274c26fd2cf2c5ef78c7da75d2093a37ce9·...·]-4">)</span><span·class="p">,</span><span·class="w">
278 ····</span><span·class="p"·data-group-id="4427454208-6">[</span><span·class="s">&quot;&lt;p&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Lines</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&lt;/p&gt;&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·5b53b1e11f059c8f49a7752840528a53e1aca4217efcbd47ccc5ffed14b93fd0·...·]-6">]</span><span·class="p">.</span><span·class="w">278 ····</span><span·class="p"·data-group-id="5743719207-6">[</span><span·class="s">&quot;&lt;p&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="n">Lines</span><span·class="p">,</span><span·class="w">·</span><span·class="s">&quot;&lt;/p&gt;&quot;</span><span·class="p"·data-[·...·truncated·by·diffoscope;·len:·20,·SHA:·4151dee6b5713cb95857a4d64e716d30e592bf2156206b2fa1a60ddbffb2c7d8·...·]-6">]</span><span·class="p">.</span><span·class="w">
  
279 </span><span·class="nf">template_pos</span><span·class="p"·data-group-id="4427454208-7">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="4427454208-8">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·229,·SHA:·f92537728790a3787825f4ced37979271e43966c973750cf2a0e8e562be6f8ce·...·]-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">279 </span><span·class="nf">template_pos</span><span·class="p"·data-group-id="5743719207-7">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="5743719207-8">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·229,·SHA:·b0cf3cf5a68d6b3a12606b21ae26ef116a87ff6560ff0483369f5f2bd069b90f·...·]-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
280 ····</span><span·class="p"·data-group-id="4427454208-9">{</span><span·class="p"·data-group-id="4427454208-10">[</span><span·class="nf">indent_line</span><span·class="p"·data-group-id="4427454208-11">(</span><span·class="n">P</span><span·class="w">·</span><span·class="ow">rem</span><span·class="w">[·...·truncated·by·diffoscope;·len:·795,·SHA:·9aa61c9dba3e14a3ded39d3bcbd0572391648208d55c23582fb6a06e5e04b1db·...·]-9">}</span><span·class="p">.</span><span·class="w">280 ····</span><span·class="p"·data-group-id="5743719207-9">{</span><span·class="p"·data-group-id="5743719207-10">[</span><span·class="nf">indent_line</span><span·class="p"·data-group-id="5743719207-11">(</span><span·class="n">P</span><span·class="w">·</span><span·class="ow">rem</span><span·class="w">[·...·truncated·by·diffoscope;·len:·795,·SHA:·9139a64e336aa8c46bed8c131a20b5b95ca64bb414e7f9ec4eb9a78dd91e8d4a·...·]-9">}</span><span·class="p">.</span><span·class="w">
  
281 </span><span·class="nf">indent_line</span><span·class="p"·data-group-id="4427454208-13">(</span><span·class="mi">0</span><span·class="p"·data-group-id="4427454208-13">)</span><span·class="p">-&gt;</span><span·class="s">&quot;&amp;#160;&amp;#160;&quot;</span><span·class="p">;</span><span·class="w">281 </span><span·class="nf">indent_line</span><span·class="p"·data-group-id="5743719207-13">(</span><span·class="mi">0</span><span·class="p"·data-group-id="5743719207-13">)</span><span·class="p">-&gt;</span><span·class="s">&quot;&amp;#160;&amp;#160;&quot;</span><span·class="p">;</span><span·class="w">
282 </span><span·class="nf">indent_line</span><span·class="p"·data-group-id="4427454208-14">(</span><span·class="p">_</span><span·class="p"·data-group-id="4427454208-14">)</span><span·class="p">-&gt;</span><span·class="s">&quot;&quot;</span><span·class="p">.</span></code></pre><hr·class="thin"/><h4>Global·tree·awareness</h4><p>In·XSLT·you·have·&quot;root&quot;·access·to·the·top·of·the·tree·with·XPath,·even·though282 </span><span·class="nf">indent_line</span><span·class="p"·data-group-id="5743719207-14">(</span><span·class="p">_</span><span·class="p"·data-group-id="5743719207-14">)</span><span·class="p">-&gt;</span><span·class="s">&quot;&quot;</span><span·class="p">.</span></code></pre><hr·class="thin"/><h4>Global·tree·awareness</h4><p>In·XSLT·you·have·&quot;root&quot;·access·to·the·top·of·the·tree·with·XPath,·even·though
283 you·are·somewhere·deep·in·your·tree.</p><p>The·xslapply/2·function·only·carries·back·the·child·part·of·the·tree·to·the283 you·are·somewhere·deep·in·your·tree.</p><p>The·xslapply/2·function·only·carries·back·the·child·part·of·the·tree·to·the
284 template·fun.·But·it·is·quite·easy·to·write·template·funs·that·handles·both·the284 template·fun.·But·it·is·quite·easy·to·write·template·funs·that·handles·both·the
285 child·and·top·tree.</p><hr·class="thin"/><h4>Example·6·Passing·the·root·tree</h4><p>The·following·example·piece·will·prepend·the·article·title·to·any·section·title</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">template</span><span·class="p"·data-group-id="8234961245-1">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="8234961245-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·257,·SHA:·98422db434a2afcbd1c431d45488ead5f29bf13295dc763384cf3704766f18a5·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">285 child·and·top·tree.</p><hr·class="thin"/><h4>Example·6·Passing·the·root·tree</h4><p>The·following·example·piece·will·prepend·the·article·title·to·any·section·title</p><pre><code·class="makeup·erlang"·translate="no"><span·class="nf">template</span><span·class="p"·data-group-id="6664259180-1">(</span><span·class="n">E</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="o">#</span><span·class="ss">xmlElement</span><span·class="p"·data-group-id="6664259180-2">{</span><span·class="ss">name</span[·...·truncated·by·diffoscope;·len:·257,·SHA:·dead90ce8d998a94da4ae6bd49d5b83ff5019de8764bc624786dfe279bcd2d68·...·]-1">)</span><span·class="w">·</span><span·class="p">-&gt;</span><span·class="w">
286 ····</span><span·class="p"·data-group-id="8234961245-3">[</span><span·class="s">&quot;&lt;h3&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="8234961245-4">(</span><span·class="nf">select</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·236,·SHA:·531b4761b2baff8661c5ad120632336e11248d75387d94ed3cca199a2f215487·...·]-4">)</span><span·class="p">,</span><span·class="s">&quot;·-·&quot;</span><span·class="p">,</span><span·class="w">286 ····</span><span·class="p"·data-group-id="6664259180-3">[</span><span·class="s">&quot;&lt;h3&gt;&quot;</span><span·class="p">,</span><span·class="w">·</span><span·class="nf">value_of</span><span·class="p"·data-group-id="6664259180-4">(</span><span·class="nf">select</span><span·class="p"·data-group[·...·truncated·by·diffoscope;·len:·236,·SHA:·875d59cb8a9e6f416547448eb074595e98084bce8b6d1a7b246e2f0c567621ae·...·]-4">)</span><span·class="p">,</span><span·class="s">&quot;·-·&quot;</span><span·class="p">,</span><span·class="w">
287 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="8234961245-6">(</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="8234961245-7">(</span><span·class="n">A</span><span·class="p"·data-group-id="8234961245-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·423,·SHA:·e2c91ef6da04c7be695a931ece38abb90372ab120f85c54c8b67f61fb6c479b6·...·]-6">)</span><span·class="p">,</span><span·class="w">287 ·····</span><span·class="nf">xslapply</span><span·class="p"·data-group-id="6664259180-6">(</span><span·class="w">·</span><span·class="nf">fun</span><span·class="p"·data-group-id="6664259180-7">(</span><span·class="n">A</span><span·class="p"·data-group-id="6664259180-7">)</span><span·class="w">·</span><span·class="p">-&gt;</span><[·...·truncated·by·diffoscope;·len:·423,·SHA:·e4e8f8cc5e983b7da1eabaa45e45b973ac1ebb1d216a4fb42de3fb10ed15875c·...·]-6">)</span><span·class="p">,</span><span·class="w">
288 ·····</span><span·class="s">&quot;&lt;/h3&gt;&quot;</span><span·class="p"·data-group-id="8234961245-3">]</span><span·class="p">;</span></code></pre><hr·class="thin"/>288 ·····</span><span·class="s">&quot;&lt;/h3&gt;&quot;</span><span·class="p"·data-group-id="6664259180-3">]</span><span·class="p">;</span></code></pre><hr·class="thin"/>
289 </div>289 </div>
  
290 <div·class="bottom-actions"·id="bottom-actions">290 <div·class="bottom-actions"·id="bottom-actions">
291 ··<div·class="bottom-actions-item">291 ··<div·class="bottom-actions-item">
  
292 ······<a·href="xmerl_examples.html"·class="bottom-actions-button"·rel="prev">292 ······<a·href="xmerl_examples.html"·class="bottom-actions-button"·rel="prev">
293 ········<span·class="subheader">293 ········<span·class="subheader">
Offset 322, 15 lines modifiedOffset 322, 15 lines modified
322 ······<p·class="built-using">322 ······<p·class="built-using">
323 ········Built·using323 ········Built·using
324 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the324 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
325 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>325 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
Max diff block lines reached; 344/61077 bytes (0.56%) of diff not shown.
625 B
html2text {}
Max HTML report size reached
6.1 KB
./usr/share/doc/erlang-doc/html/lib/xmerl-2.0/doc/html/xmerl_xsd.html
    
Offset 802, 17 lines modifiedOffset 802, 17 lines modified
802 parsed·XML·<a·href="xmerl.html#t:xmlElement/0"><code·class="inline">Element :: #xmlElement{}</code></a>802 parsed·XML·<a·href="xmerl.html#t:xmlElement/0"><code·class="inline">Element :: #xmlElement{}</code></a>
803 and·a·State,·<a·href="#t:global_state/0"><code·class="inline">global_state/0</code></a>,·which·holds·necessary·information803 and·a·State,·<a·href="#t:global_state/0"><code·class="inline">global_state/0</code></a>,·which·holds·necessary·information
804 from·an·already·processed·schema.··Thus·validate·enables·reuse804 from·an·already·processed·schema.··Thus·validate·enables·reuse
805 of·the·schema·information·and·therefore·if·one·shall·validate805 of·the·schema·information·and·therefore·if·one·shall·validate
806 several·times·towards·the·same·schema·it·reduces·time·consumption.</p><p>The·result,·<code·class="inline">ValidElement</code>,·is·the·valid·element·that·conforms·to·the806 several·times·towards·the·same·schema·it·reduces·time·consumption.</p><p>The·result,·<code·class="inline">ValidElement</code>,·is·the·valid·element·that·conforms·to·the
807 post-schema-validation·infoset.·When·the·validator·finds·an·error·it·tries·to807 post-schema-validation·infoset.·When·the·validator·finds·an·error·it·tries·to
808 continue·and·reports·a·list·of·all·errors·found.·In·those·cases·an·unexpected808 continue·and·reports·a·list·of·all·errors·found.·In·those·cases·an·unexpected
809 error·is·found·it·may·cause·a·single·error·reason.</p><p>Usage·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="mi">1</span><span·class="o">&gt;</span><span·class="p"·data-group-id="9228940366-1">{</span><span·class="n">E</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="9228940366-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><sp[·...·truncated·by·diffoscope;·len:·197,·SHA:·81c3a57460c3f0b0eaffded04a0583e335454cc7186802e6a7b3c86b9e213460·...·]-2">)</span><span·class="p">.</span><span·class="w">809 error·is·found·it·may·cause·a·single·error·reason.</p><p>Usage·example:</p><pre><code·class="makeup·erlang"·translate="no"><span·class="mi">1</span><span·class="o">&gt;</span><span·class="p"·data-group-id="4921863979-1">{</span><span·class="n">E</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="4921863979-1">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_scan</span><sp[·...·truncated·by·diffoscope;·len:·197,·SHA:·f531b9cb9b3bc5ddd4ad13f0a168d1e1d7e80ee480e18ae2989b136cb6de141d·...·]-2">)</span><span·class="p">.</span><span·class="w">
810 </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="p"·data-group-id="9228940366-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="9228940366-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_xsd</span><s[·...·truncated·by·diffoscope;·len:·206,·SHA:·735994fd425c0a5a5966b04ae0210a835f5381bf3be86deabc58daa39215f83e·...·]-4">)</span><span·class="p">.</span><span·class="w">810 </span><span·class="mi">2</span><span·class="o">&gt;</span><span·class="p"·data-group-id="4921863979-3">{</span><span·class="ss">ok</span><span·class="p">,</span><span·class="n">S</span><span·class="p"·data-group-id="4921863979-3">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_xsd</span><s[·...·truncated·by·diffoscope;·len:·206,·SHA:·3fc1605ea40699b21f5fd65def8227a41b2266c82278d128ea88d95fdc574ab7·...·]-4">)</span><span·class="p">.</span><span·class="w">
811 </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="p"·data-group-id="9228940366-5">{</span><span·class="n">E2</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="9228940366-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_xsd</span><sp[·...·truncated·by·diffoscope;·len:·219,·SHA:·e516a712cf5ef75e56c5f055d771570e3ca0d846a0fbe150285ed4049e2587ea·...·]-6">)</span><span·class="p">.</span></code></pre><p>Observe·that·E2·may·differ·from·E·if·for·instance·there·are·default·values811 </span><span·class="mi">3</span><span·class="o">&gt;</span><span·class="p"·data-group-id="4921863979-5">{</span><span·class="n">E2</span><span·class="p">,</span><span·class="p">_</span><span·class="p"·data-group-id="4921863979-5">}</span><span·class="w">·</span><span·class="o">=</span><span·class="w">·</span><span·class="nc">xmerl_xsd</span><sp[·...·truncated·by·diffoscope;·len:·219,·SHA:·b5845baf3f2b055aaa07bed42965d9c83b4da1ea53a116c0df26af81aef7da53·...·]-6">)</span><span·class="p">.</span></code></pre><p>Observe·that·E2·may·differ·from·E·if·for·instance·there·are·default·values
812 defined·in·<code·class="inline">my_XML_Schema.xsd</code>.</p>812 defined·in·<code·class="inline">my_XML_Schema.xsd</code>.</p>
813 ··</section>813 ··</section>
814 </section>814 </section>
  
815 ····</div>815 ····</div>
816 ··</section>816 ··</section>
  
Offset 830, 15 lines modifiedOffset 830, 15 lines modified
830 ······<p·class="built-using">830 ······<p·class="built-using">
831 ········Built·using831 ········Built·using
832 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the832 ········<a·href="https://github.com/elixir-lang/ex_doc"·title="ExDoc"·target="_blank"·rel="help·noopener"·translate="no">ExDoc</a>·(v0.34.2)·for·the
  
833 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>833 ··········<a·href="https://erlang.org"·title="Erlang"·target="_blank"·translate="no">Erlang·programming·language</a>
  
834 ······</p>834 ······</p>
835 <p>Copyright·©·1996-2024·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>835 <p>Copyright·©·1996-2025·<a·href="https://www.ericsson.com">Ericsson·AB</a></p>
836 ····</footer>836 ····</footer>
837 ··</div>837 ··</div>
838 </main>838 </main>
839 </div>839 </div>
840 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>840 <script·src="/usr/share/nodejs/mermaid/dist/mermaid.js"></script>
841 <script>841 <script>
842 ··document.addEventListener("DOMContentLoaded",·function·()·{842 ··document.addEventListener("DOMContentLoaded",·function·()·{
557 B
html2text {}
Max HTML report size reached
19.5 KB
./usr/share/doc/erlang-doc/html/doc/dist/search_data-B63DDADF.js vs.
./usr/share/doc/erlang-doc/html/doc/dist/search_data-6DCAA4BB.js
Files 96% similar despite different names
19.4 KB
js-beautify {}
Max HTML report size reached
1.93 MB
./usr/share/doc/erlang-doc/html/doc/system/dist/search_data-82F2C43B.js vs.
./usr/share/doc/erlang-doc/html/doc/system/dist/search_data-EE0C1DEB.js
Files 99% similar despite different names
1.93 MB
js-beautify {}
Max HTML report size reached
273 KB
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/dist/search_data-29151339.js vs.
./usr/share/doc/erlang-doc/html/lib/asn1-5.3/doc/html/dist/search_data-614FD7B8.js
Files 98% similar despite different names
273 KB
js-beautify {}
Max HTML report size reached
391 KB
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/dist/search_data-0B570D5C.js vs.
./usr/share/doc/erlang-doc/html/lib/crypto-5.5/doc/html/dist/search_data-9D4A4726.js
Files 98% similar despite different names
391 KB
js-beautify {}
Max HTML report size reached
147 KB
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/dist/search_data-1474772F.js vs.
./usr/share/doc/erlang-doc/html/lib/debugger-5.4/doc/html/dist/search_data-9403A99F.js
Files 98% similar despite different names
147 KB
js-beautify {}
Max HTML report size reached
222 KB
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/dist/search_data-1DB1C954.js vs.
./usr/share/doc/erlang-doc/html/lib/dialyzer-5.2/doc/html/dist/search_data-009BAE67.js
Files 98% similar despite different names
222 KB
js-beautify {}
Max HTML report size reached
593 KB
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/dist/search_data-A0E8AF89.js vs.
./usr/share/doc/erlang-doc/html/lib/diameter-2.4/doc/html/dist/search_data-21BE4584.js
Files 99% similar despite different names
593 KB
js-beautify {}
Max HTML report size reached
203 KB
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/dist/search_data-EEF082FF.js vs.
./usr/share/doc/erlang-doc/html/lib/edoc-1.3.1/doc/html/dist/search_data-4C4A2C52.js
Files 98% similar despite different names
203 KB
js-beautify {}
Max HTML report size reached
43.7 KB
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/doc/html/dist/search_data-D30927ED.js vs.
./usr/share/doc/erlang-doc/html/lib/eldap-1.2.13/doc/html/dist/search_data-1183DD51.js
Files 95% similar despite different names
43.4 KB
js-beautify {}
Max HTML report size reached
358 KB
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/dist/search_data-E56B0CB2.js vs.
./usr/share/doc/erlang-doc/html/lib/erl_interface-5.5.2/doc/html/dist/search_data-73A3D537.js
Files 98% similar despite different names
357 KB
js-beautify {}
Max HTML report size reached
396 KB
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/dist/search_data-6DCD792E.js vs.
./usr/share/doc/erlang-doc/html/lib/inets-9.2/doc/html/dist/search_data-326436FA.js
Files 98% similar despite different names
396 KB
js-beautify {}
Max HTML report size reached
64.0 KB
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/dist/search_data-62425A17.js vs.
./usr/share/doc/erlang-doc/html/lib/jinterface-1.14.1/doc/html/dist/search_data-074FBB44.js
Files 99% similar despite different names
63.8 KB
js-beautify {}
Max HTML report size reached
706 KB
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/dist/search_data-9BFFF869.js vs.
./usr/share/doc/erlang-doc/html/lib/mnesia-4.23.2/doc/html/dist/search_data-69A0CECD.js
Files 99% similar despite different names
705 KB
js-beautify {}
Max HTML report size reached
172 KB
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/dist/search_data-B20F20A2.js vs.
./usr/share/doc/erlang-doc/html/lib/observer-2.16/doc/html/dist/search_data-CBCA663E.js
Files 98% similar despite different names
171 KB
js-beautify {}
Max HTML report size reached
67.8 KB
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/dist/search_data-F88FF550.js vs.
./usr/share/doc/erlang-doc/html/lib/parsetools-2.6/doc/html/dist/search_data-888771CF.js
Files 97% similar despite different names
67.6 KB
js-beautify {}
Max HTML report size reached
161 KB
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/dist/search_data-118C23D3.js vs.
./usr/share/doc/erlang-doc/html/lib/public_key-1.16.1/doc/html/dist/search_data-E998F0E5.js
Files 99% similar despite different names
161 KB
js-beautify {}
Max HTML report size reached
576 KB
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/dist/search_data-98D0A8CC.js vs.
./usr/share/doc/erlang-doc/html/lib/tools-4.0/doc/html/dist/search_data-039E86C6.js
Files 99% similar despite different names
575 KB
js-beautify {}
Max HTML report size reached
15.3 KB
erlang-edoc_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1692·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1692·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···457380·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···457408·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.8 KB
data.tar.xz
14.8 KB
data.tar
1.94 KB
file list
    
Offset 35, 15 lines modifiedOffset 35, 15 lines modified
35 -rw-r--r--···0·root·········(0)·root·········(0)·····3247·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/edoc-1.3.1/priv/edoc.dtd35 -rw-r--r--···0·root·········(0)·root·········(0)·····3247·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/edoc-1.3.1/priv/edoc.dtd
36 -rwxr-xr-x···0·root·········(0)·root·········(0)·····1322·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/edoc-1.3.1/priv/edoc_generate36 -rwxr-xr-x···0·root·········(0)·root·········(0)·····1322·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/edoc-1.3.1/priv/edoc_generate
37 -rw-r--r--···0·root·········(0)·root·········(0)·····2109·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/edoc-1.3.1/priv/erlang.png37 -rw-r--r--···0·root·········(0)·root·········(0)·····2109·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/edoc-1.3.1/priv/erlang.png
38 -rw-r--r--···0·root·········(0)·root·········(0)······869·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/edoc-1.3.1/priv/stylesheet.css38 -rw-r--r--···0·root·········(0)·root·········(0)······869·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/edoc-1.3.1/priv/stylesheet.css
39 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/39 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
40 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/40 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
41 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/41 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/
42 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/AUTHORS.gz42 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/AUTHORS.gz
43 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/README.Debian43 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/README.Debian
44 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/changelog.Debian.gz44 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/changelog.Debian.gz
45 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/copyright45 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-edoc/copyright
46 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/46 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/
47 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/47 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/
48 -rw-r--r--···0·root·········(0)·root·········(0)·······35·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-edoc48 -rw-r--r--···0·root·········(0)·root·········(0)·······35·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-edoc
49 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/49 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/
12.8 KB
./usr/share/doc/erlang-edoc/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.0 KB
erlang-eldap_27.0.1+dfsg-3_arm64.deb
452 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0······984·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0······988·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···136456·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···136484·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.5 KB
file list
    
Offset 9, 11 lines modifiedOffset 9, 11 lines modified
9 -rw-r--r--···0·root·········(0)·root·········(0)·····2915·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eldap-1.2.13/ebin/ELDAPv3.hrl9 -rw-r--r--···0·root·········(0)·root·········(0)·····2915·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eldap-1.2.13/ebin/ELDAPv3.hrl
10 -rw-r--r--···0·root·········(0)·root·········(0)······275·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eldap-1.2.13/ebin/eldap.app10 -rw-r--r--···0·root·········(0)·root·········(0)······275·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eldap-1.2.13/ebin/eldap.app
11 -rw-r--r--···0·root·········(0)·root·········(0)······792·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eldap-1.2.13/ebin/eldap.appup11 -rw-r--r--···0·root·········(0)·root·········(0)······792·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eldap-1.2.13/ebin/eldap.appup
12 -rw-r--r--···0·root·········(0)·root·········(0)····76260·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eldap-1.2.13/ebin/eldap.beam12 -rw-r--r--···0·root·········(0)·root·········(0)····76260·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eldap-1.2.13/ebin/eldap.beam
13 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/13 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
15 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/15 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/
16 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/AUTHORS.gz16 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/AUTHORS.gz
17 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/README.Debian17 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/README.Debian
18 -rw-r--r--···0·root·········(0)·root·········(0)·····4422·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/changelog.Debian.gz18 -rw-r--r--···0·root·········(0)·root·········(0)·····4422·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/changelog.Debian.gz
19 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/copyright19 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eldap/copyright
12.8 KB
./usr/share/doc/erlang-eldap/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-et_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1080·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1080·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···183924·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···183940·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.5 KB
file list
    
Offset 12, 11 lines modifiedOffset 12, 11 lines modified
12 -rw-r--r--···0·root·········(0)·root·········(0)····18328·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/et-1.7.1/ebin/et_selector.beam12 -rw-r--r--···0·root·········(0)·root·········(0)····18328·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/et-1.7.1/ebin/et_selector.beam
13 -rw-r--r--···0·root·········(0)·root·········(0)·····6692·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/et-1.7.1/ebin/et_viewer.beam13 -rw-r--r--···0·root·········(0)·root·········(0)·····6692·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/et-1.7.1/ebin/et_viewer.beam
14 -rw-r--r--···0·root·········(0)·root·········(0)····38804·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/et-1.7.1/ebin/et_wx_contents_viewer.beam14 -rw-r--r--···0·root·········(0)·root·········(0)····38804·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/et-1.7.1/ebin/et_wx_contents_viewer.beam
15 -rw-r--r--···0·root·········(0)·root·········(0)···101508·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/et-1.7.1/ebin/et_wx_viewer.beam15 -rw-r--r--···0·root·········(0)·root·········(0)···101508·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/et-1.7.1/ebin/et_wx_viewer.beam
16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/
19 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/AUTHORS.gz19 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/AUTHORS.gz
20 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/README.Debian20 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/README.Debian
21 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/changelog.Debian.gz21 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/changelog.Debian.gz
22 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/copyright22 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-et/copyright
12.8 KB
./usr/share/doc/erlang-et/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-eunit_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1200·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1200·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···170028·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···170056·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.52 KB
file list
    
Offset 19, 11 lines modifiedOffset 19, 11 lines modified
19 -rw-r--r--···0·root·········(0)·root·········(0)····21984·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eunit-2.9.1/ebin/eunit_surefire.beam19 -rw-r--r--···0·root·········(0)·root·········(0)····21984·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eunit-2.9.1/ebin/eunit_surefire.beam
20 -rw-r--r--···0·root·········(0)·root·········(0)····26416·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eunit-2.9.1/ebin/eunit_test.beam20 -rw-r--r--···0·root·········(0)·root·········(0)····26416·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eunit-2.9.1/ebin/eunit_test.beam
21 -rw-r--r--···0·root·········(0)·root·········(0)·····5920·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eunit-2.9.1/ebin/eunit_tests.beam21 -rw-r--r--···0·root·········(0)·root·········(0)·····5920·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eunit-2.9.1/ebin/eunit_tests.beam
22 -rw-r--r--···0·root·········(0)·root·········(0)····12472·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eunit-2.9.1/ebin/eunit_tty.beam22 -rw-r--r--···0·root·········(0)·root·········(0)····12472·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/eunit-2.9.1/ebin/eunit_tty.beam
23 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/23 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
24 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/24 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
25 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/25 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/
26 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/AUTHORS.gz26 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/AUTHORS.gz
27 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/README.Debian27 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/README.Debian
28 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/changelog.Debian.gz28 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/changelog.Debian.gz
29 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/copyright29 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-eunit/copyright
12.8 KB
./usr/share/doc/erlang-eunit/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.3 KB
erlang-examples_27.0.1+dfsg-3_all.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····8364·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····8364·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···954744·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···954760·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.8 KB
data.tar.xz
14.8 KB
data.tar
1.92 KB
file list
    
Offset 379, 14 lines modifiedOffset 379, 14 lines modified
379 -rw-r--r--···0·root·········(0)·root·········(0)····38072·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/examples/sudoku/sudoku_game.beam379 -rw-r--r--···0·root·········(0)·root·········(0)····38072·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/examples/sudoku/sudoku_game.beam
380 -rw-r--r--···0·root·········(0)·root·········(0)····14137·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/examples/sudoku/sudoku_game.erl380 -rw-r--r--···0·root·········(0)·root·········(0)····14137·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/examples/sudoku/sudoku_game.erl
381 -rw-r--r--···0·root·········(0)·root·········(0)····28984·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/examples/sudoku/sudoku_gui.beam381 -rw-r--r--···0·root·········(0)·root·········(0)····28984·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/examples/sudoku/sudoku_gui.beam
382 -rw-r--r--···0·root·········(0)·root·········(0)····13098·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/examples/sudoku/sudoku_gui.erl382 -rw-r--r--···0·root·········(0)·root·········(0)····13098·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/examples/sudoku/sudoku_gui.erl
383 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/383 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
384 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/384 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
385 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/385 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/
386 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/AUTHORS.gz386 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/AUTHORS.gz
387 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/README.Debian387 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/README.Debian
388 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/changelog.Debian.gz388 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/changelog.Debian.gz
389 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/copyright389 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-examples/copyright
390 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/390 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/
391 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/391 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/
392 -rw-r--r--···0·root·········(0)·root·········(0)······206·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-examples392 -rw-r--r--···0·root·········(0)·root·········(0)······206·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-examples
12.8 KB
./usr/share/doc/erlang-examples/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.0 KB
erlang-ftp_27.0.1+dfsg-3_arm64.deb
452 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1072·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1076·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···104344·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···104364·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.5 KB
file list
    
Offset 12, 11 lines modifiedOffset 12, 11 lines modified
12 -rw-r--r--···0·root·········(0)·root·········(0)····88584·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ftp-1.2.2/ebin/ftp_internal.beam12 -rw-r--r--···0·root·········(0)·root·········(0)····88584·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ftp-1.2.2/ebin/ftp_internal.beam
13 -rw-r--r--···0·root·········(0)·root·········(0)·····4480·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ftp-1.2.2/ebin/ftp_progress.beam13 -rw-r--r--···0·root·········(0)·root·········(0)·····4480·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ftp-1.2.2/ebin/ftp_progress.beam
14 -rw-r--r--···0·root·········(0)·root·········(0)·····7016·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ftp-1.2.2/ebin/ftp_response.beam14 -rw-r--r--···0·root·········(0)·root·········(0)·····7016·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ftp-1.2.2/ebin/ftp_response.beam
15 -rw-r--r--···0·root·········(0)·root·········(0)·····2332·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ftp-1.2.2/ebin/ftp_sup.beam15 -rw-r--r--···0·root·········(0)·root·········(0)·····2332·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ftp-1.2.2/ebin/ftp_sup.beam
16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/
19 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/AUTHORS.gz19 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/AUTHORS.gz
20 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/README.Debian20 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/README.Debian
21 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/changelog.Debian.gz21 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/changelog.Debian.gz
22 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/copyright22 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ftp/copyright
12.8 KB
./usr/share/doc/erlang-ftp/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-inets_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····2552·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2552·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···664920·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···664936·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.3 KB
data.tar
1.49 KB
file list
    
Offset 75, 11 lines modifiedOffset 75, 11 lines modified
75 -rw-r--r--···0·root·········(0)·root·········(0)······858·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/inets-9.2/include/mod_auth.hrl75 -rw-r--r--···0·root·········(0)·root·········(0)······858·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/inets-9.2/include/mod_auth.hrl
76 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/inets-9.2/priv/76 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/inets-9.2/priv/
77 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/inets-9.2/priv/bin/77 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/inets-9.2/priv/bin/
78 -rwxr-xr-x···0·root·········(0)·root·········(0)·······36·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/inets-9.2/priv/bin/runcgi.sh78 -rwxr-xr-x···0·root·········(0)·root·········(0)·······36·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/inets-9.2/priv/bin/runcgi.sh
79 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/79 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
80 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/80 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
81 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/81 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/
82 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/AUTHORS.gz82 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/AUTHORS.gz
83 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/README.Debian83 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/README.Debian
84 -rw-r--r--···0·root·········(0)·root·········(0)·····4424·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/changelog.Debian.gz84 -rw-r--r--···0·root·········(0)·root·········(0)·····4424·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/changelog.Debian.gz
85 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/copyright85 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-inets/copyright
12.8 KB
./usr/share/doc/erlang-inets/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
135 KB
erlang-jinterface_27.0.1+dfsg-3_all.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0······836·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0······836·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···112112·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···112108·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
135 KB
data.tar.xz
135 KB
data.tar
2.01 KB
file list
    
Offset 8, 14 lines modifiedOffset 8, 14 lines modified
8 -rw-r--r--···0·root·········(0)·root·········(0)······893·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/jinterface-1.14.1/ebin/jinterface.app8 -rw-r--r--···0·root·········(0)·root·········(0)······893·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/jinterface-1.14.1/ebin/jinterface.app
9 -rw-r--r--···0·root·········(0)·root·········(0)······700·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/jinterface-1.14.1/ebin/jinterface.appup9 -rw-r--r--···0·root·········(0)·root·········(0)······700·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/jinterface-1.14.1/ebin/jinterface.appup
10 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/jinterface-1.14.1/priv/10 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/jinterface-1.14.1/priv/
11 -rw-r--r--···0·root·········(0)·root·········(0)···106850·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/jinterface-1.14.1/priv/OtpErlang.jar11 -rw-r--r--···0·root·········(0)·root·········(0)···106850·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/jinterface-1.14.1/priv/OtpErlang.jar
12 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/12 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
13 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/13 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/
15 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/AUTHORS.gz15 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/AUTHORS.gz
16 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/README.Debian16 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/README.Debian
17 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/changelog.Debian.gz17 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/changelog.Debian.gz
18 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/copyright18 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-jinterface/copyright
19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/java/19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/java/
20 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/java/OtpErlang-1.14.1.jar·->·../../lib/erlang/lib/jinterface-1.14.1/priv/OtpErlang.jar20 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/java/OtpErlang-1.14.1.jar·->·../../lib/erlang/lib/jinterface-1.14.1/priv/OtpErlang.jar
21 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/java/OtpErlang.jar·->·../../lib/erlang/lib/jinterface-1.14.1/priv/OtpErlang.jar21 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/java/OtpErlang.jar·->·../../lib/erlang/lib/jinterface-1.14.1/priv/OtpErlang.jar
120 KB
./usr/lib/erlang/lib/jinterface-1.14.1/priv/OtpErlang.jar
13.4 KB
zipinfo {}
Max HTML report size reached
106 KB
zipdetails --redact --scan --utc {}
Max HTML report size reached
12.8 KB
./usr/share/doc/erlang-jinterface/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-megaco_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····2640·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2640·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··3684376·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··3684400·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.53 KB
file list
    
Offset 75, 11 lines modifiedOffset 75, 11 lines modified
75 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/megaco-4.6/priv/75 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/megaco-4.6/priv/
76 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/megaco-4.6/priv/lib/76 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/megaco-4.6/priv/lib/
77 -rw-r--r--···0·root·········(0)·root·········(0)···264448·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/megaco-4.6/priv/lib/megaco_flex_scanner_drv.so77 -rw-r--r--···0·root·········(0)·root·········(0)···264448·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/megaco-4.6/priv/lib/megaco_flex_scanner_drv.so
78 -rw-r--r--···0·root·········(0)·root·········(0)···264448·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/megaco-4.6/priv/lib/megaco_flex_scanner_drv_mt.so78 -rw-r--r--···0·root·········(0)·root·········(0)···264448·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/megaco-4.6/priv/lib/megaco_flex_scanner_drv_mt.so
79 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/79 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
80 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/80 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
81 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/81 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/
82 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/AUTHORS.gz82 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/AUTHORS.gz
83 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/README.Debian83 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/README.Debian
84 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/changelog.Debian.gz84 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/changelog.Debian.gz
85 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/copyright85 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-megaco/copyright
12.8 KB
./usr/share/doc/erlang-megaco/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-mnesia_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1744·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1744·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···895816·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···895844·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.54 KB
file list
    
Offset 37, 11 lines modifiedOffset 37, 11 lines modified
37 -rw-r--r--···0·root·········(0)·root·········(0)····22628·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/mnesia-4.23.2/ebin/mnesia_subscr.beam37 -rw-r--r--···0·root·········(0)·root·········(0)····22628·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/mnesia-4.23.2/ebin/mnesia_subscr.beam
38 -rw-r--r--···0·root·········(0)·root·········(0)·····5292·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/mnesia-4.23.2/ebin/mnesia_sup.beam38 -rw-r--r--···0·root·········(0)·root·········(0)·····5292·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/mnesia-4.23.2/ebin/mnesia_sup.beam
39 -rw-r--r--···0·root·········(0)·root·········(0)·····9916·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/mnesia-4.23.2/ebin/mnesia_text.beam39 -rw-r--r--···0·root·········(0)·root·········(0)·····9916·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/mnesia-4.23.2/ebin/mnesia_text.beam
40 -rw-r--r--···0·root·········(0)·root·········(0)···102440·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/mnesia-4.23.2/ebin/mnesia_tm.beam40 -rw-r--r--···0·root·········(0)·root·········(0)···102440·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/mnesia-4.23.2/ebin/mnesia_tm.beam
41 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/41 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
42 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/42 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
43 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/43 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/
44 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/AUTHORS.gz44 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/AUTHORS.gz
45 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/README.Debian45 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/README.Debian
46 -rw-r--r--···0·root·········(0)·root·········(0)·····4422·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/changelog.Debian.gz46 -rw-r--r--···0·root·········(0)·root·········(0)·····4422·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/changelog.Debian.gz
47 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/copyright47 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mnesia/copyright
12.8 KB
./usr/share/doc/erlang-mnesia/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.3 KB
erlang-mode_27.0.1+dfsg-3_all.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1552·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1552·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0····91060·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0····91100·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.8 KB
data.tar.xz
14.8 KB
data.tar
1.94 KB
file list
    
Offset 12, 15 lines modifiedOffset 12, 15 lines modified
12 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/emacsen-common/packages/install/12 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/emacsen-common/packages/install/
13 -rwxr-xr-x···0·root·········(0)·root·········(0)·····1463·2024-08-29·10:53:40.000000·./usr/lib/emacsen-common/packages/install/erlang-mode13 -rwxr-xr-x···0·root·········(0)·root·········(0)·····1463·2024-08-29·10:53:40.000000·./usr/lib/emacsen-common/packages/install/erlang-mode
14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/emacsen-common/packages/remove/14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/emacsen-common/packages/remove/
15 -rwxr-xr-x···0·root·········(0)·root·········(0)······468·2024-08-29·10:53:40.000000·./usr/lib/emacsen-common/packages/remove/erlang-mode15 -rwxr-xr-x···0·root·········(0)·root·········(0)······468·2024-08-29·10:53:40.000000·./usr/lib/emacsen-common/packages/remove/erlang-mode
16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/
19 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/AUTHORS.gz19 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/AUTHORS.gz
20 -rw-r--r--···0·root·········(0)·root·········(0)·····1895·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/README20 -rw-r--r--···0·root·········(0)·root·········(0)·····1895·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/README
21 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/README.Debian21 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/README.Debian
22 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/changelog.Debian.gz22 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/changelog.Debian.gz
23 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/copyright23 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-mode/copyright
24 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/emacs/24 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/emacs/
25 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/emacs/site-lisp/25 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/emacs/site-lisp/
26 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/emacs/site-lisp/erlang/26 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/emacs/site-lisp/erlang/
12.8 KB
./usr/share/doc/erlang-mode/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.5 KB
erlang-nox_27.0.1+dfsg-3_all.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0······832·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0······832·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0····13488·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0····13508·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.0 KB
data.tar.xz
14.0 KB
data.tar
1.14 KB
file list
    
Offset 1, 9 lines modifiedOffset 1, 9 lines modified
1 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./1 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./
2 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/2 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/
3 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/3 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
4 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/4 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
5 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/5 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/
6 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/AUTHORS.gz6 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/AUTHORS.gz
7 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/README.Debian7 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/README.Debian
8 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/changelog.Debian.gz8 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/changelog.Debian.gz
9 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/copyright9 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-nox/copyright
12.8 KB
./usr/share/doc/erlang-nox/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.4 KB
erlang-observer_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····2256·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2256·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··1025364·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1025388·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.9 KB
data.tar.xz
14.8 KB
data.tar
1.97 KB
file list
    
Offset 58, 15 lines modifiedOffset 58, 15 lines modified
58 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/observer-2.16/priv/bin/58 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/observer-2.16/priv/bin/
59 -rwxr-xr-x···0·root·········(0)·root·········(0)·······92·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/observer-2.16/priv/bin/cdv59 -rwxr-xr-x···0·root·········(0)·root·········(0)·······92·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/observer-2.16/priv/bin/cdv
60 -rwxr-xr-x···0·root·········(0)·root·········(0)·······88·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/observer-2.16/priv/bin/etop60 -rwxr-xr-x···0·root·········(0)·root·········(0)·······88·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/observer-2.16/priv/bin/etop
61 -rw-r--r--···0·root·········(0)·root·········(0)·····3698·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/observer-2.16/priv/erlang_observer.png61 -rw-r--r--···0·root·········(0)·root·········(0)·····3698·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/observer-2.16/priv/erlang_observer.png
62 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/62 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
63 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/63 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
64 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/64 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/
65 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/AUTHORS.gz65 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/AUTHORS.gz
66 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/README.Debian66 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/README.Debian
67 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/changelog.Debian.gz67 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/changelog.Debian.gz
68 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/copyright68 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-observer/copyright
69 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/69 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/
70 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/70 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/
71 -rw-r--r--···0·root·········(0)·root·········(0)·······39·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-observer71 -rw-r--r--···0·root·········(0)·root·········(0)·······39·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-observer
72 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/72 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/
12.8 KB
./usr/share/doc/erlang-observer/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-odbc_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1008·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1008·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0····65484·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0····65500·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.3 KB
data.tar
1.49 KB
file list
    
Offset 12, 11 lines modifiedOffset 12, 11 lines modified
12 -rw-r--r--···0·root·········(0)·root·········(0)·····1924·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/odbc-2.14.3/ebin/odbc_sup.beam12 -rw-r--r--···0·root·········(0)·root·········(0)·····1924·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/odbc-2.14.3/ebin/odbc_sup.beam
13 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/odbc-2.14.3/priv/13 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/odbc-2.14.3/priv/
14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/odbc-2.14.3/priv/bin/14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/odbc-2.14.3/priv/bin/
15 -rwxr-xr-x···0·root·········(0)·root·········(0)····67992·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/odbc-2.14.3/priv/bin/odbcserver15 -rwxr-xr-x···0·root·········(0)·root·········(0)····67992·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/odbc-2.14.3/priv/bin/odbcserver
16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/17 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/
19 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/AUTHORS.gz19 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/AUTHORS.gz
20 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/README.Debian20 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/README.Debian
21 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/changelog.Debian.gz21 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/changelog.Debian.gz
22 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/copyright22 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-odbc/copyright
12.8 KB
./usr/share/doc/erlang-odbc/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-os-mon_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1168·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1168·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···110972·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···110976·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.3 KB
data.tar
1.49 KB
file list
    
Offset 18, 11 lines modifiedOffset 18, 11 lines modified
18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/os_mon-2.10/priv/18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/os_mon-2.10/priv/
19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/os_mon-2.10/priv/bin/19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/os_mon-2.10/priv/bin/
20 -rwxr-xr-x···0·root·········(0)·root·········(0)····67728·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/os_mon-2.10/priv/bin/cpu_sup20 -rwxr-xr-x···0·root·········(0)·root·········(0)····67728·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/os_mon-2.10/priv/bin/cpu_sup
21 -rwxr-xr-x···0·root·········(0)·root·········(0)····67736·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/os_mon-2.10/priv/bin/memsup21 -rwxr-xr-x···0·root·········(0)·root·········(0)····67736·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/os_mon-2.10/priv/bin/memsup
22 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/22 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
23 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/23 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
24 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/24 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/
25 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/AUTHORS.gz25 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/AUTHORS.gz
26 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/README.Debian26 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/README.Debian
27 -rw-r--r--···0·root·········(0)·root·········(0)·····4425·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/changelog.Debian.gz27 -rw-r--r--···0·root·········(0)·root·········(0)·····4425·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/changelog.Debian.gz
28 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/copyright28 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-os-mon/copyright
12.8 KB
./usr/share/doc/erlang-os-mon/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.0 KB
erlang-parsetools_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1084·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1084·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···209300·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···209324·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.55 KB
file list
    
Offset 10, 11 lines modifiedOffset 10, 11 lines modified
10 -rw-r--r--···0·root·········(0)·root·········(0)······789·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/parsetools-2.6/ebin/parsetools.appup10 -rw-r--r--···0·root·········(0)·root·········(0)······789·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/parsetools-2.6/ebin/parsetools.appup
11 -rw-r--r--···0·root·········(0)·root·········(0)···151316·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/parsetools-2.6/ebin/yecc.beam11 -rw-r--r--···0·root·········(0)·root·········(0)···151316·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/parsetools-2.6/ebin/yecc.beam
12 -rw-r--r--···0·root·········(0)·root·········(0)····30696·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/parsetools-2.6/ebin/yeccparser.beam12 -rw-r--r--···0·root·········(0)·root·········(0)····30696·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/parsetools-2.6/ebin/yeccparser.beam
13 -rw-r--r--···0·root·········(0)·root·········(0)·····3716·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/parsetools-2.6/ebin/yeccscan.beam13 -rw-r--r--···0·root·········(0)·root·········(0)·····3716·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/parsetools-2.6/ebin/yeccscan.beam
14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/14 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
15 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/15 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/16 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/
17 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/AUTHORS.gz17 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/AUTHORS.gz
18 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/README.Debian18 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/README.Debian
19 -rw-r--r--···0·root·········(0)·root·········(0)·····4427·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/changelog.Debian.gz19 -rw-r--r--···0·root·········(0)·root·········(0)·····4427·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/changelog.Debian.gz
20 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/copyright20 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-parsetools/copyright
12.8 KB
./usr/share/doc/erlang-parsetools/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.1 KB
erlang-public-key_27.0.1+dfsg-3_arm64.deb
452 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1244·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1248·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···776464·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···776480·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.5 KB
data.tar.xz
14.4 KB
data.tar
1.57 KB
file list
    
Offset 18, 11 lines modifiedOffset 18, 11 lines modified
18 -rw-r--r--···0·root·········(0)·root·········(0)····23864·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/public_key-1.16.1/ebin/pubkey_ssh.beam18 -rw-r--r--···0·root·········(0)·root·········(0)····23864·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/public_key-1.16.1/ebin/pubkey_ssh.beam
19 -rw-r--r--···0·root·········(0)·root·········(0)······643·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/public_key-1.16.1/ebin/public_key.app19 -rw-r--r--···0·root·········(0)·root·········(0)······643·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/public_key-1.16.1/ebin/public_key.app
20 -rw-r--r--···0·root·········(0)·root·········(0)······792·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/public_key-1.16.1/ebin/public_key.appup20 -rw-r--r--···0·root·········(0)·root·········(0)······792·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/public_key-1.16.1/ebin/public_key.appup
21 -rw-r--r--···0·root·········(0)·root·········(0)···126096·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/public_key-1.16.1/ebin/public_key.beam21 -rw-r--r--···0·root·········(0)·root·········(0)···126096·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/public_key-1.16.1/ebin/public_key.beam
22 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/22 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
23 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/23 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
24 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/24 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/
25 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/AUTHORS.gz25 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/AUTHORS.gz
26 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/README.Debian26 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/README.Debian
27 -rw-r--r--···0·root·········(0)·root·········(0)·····4426·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/changelog.Debian.gz27 -rw-r--r--···0·root·········(0)·root·········(0)·····4426·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/changelog.Debian.gz
28 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/copyright28 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-public-key/copyright
12.8 KB
./usr/share/doc/erlang-public-key/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.0 KB
erlang-reltool_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1240·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1240·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···382732·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···382752·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.56 KB
file list
    
Offset 15, 11 lines modifiedOffset 15, 11 lines modified
15 -rw-r--r--···0·root·········(0)·root·········(0)····94764·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/reltool-1.0.1/ebin/reltool_server.beam15 -rw-r--r--···0·root·········(0)·root·········(0)····94764·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/reltool-1.0.1/ebin/reltool_server.beam
16 -rw-r--r--···0·root·········(0)·root·········(0)····89528·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/reltool-1.0.1/ebin/reltool_sys_win.beam16 -rw-r--r--···0·root·········(0)·root·········(0)····89528·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/reltool-1.0.1/ebin/reltool_sys_win.beam
17 -rw-r--r--···0·root·········(0)·root·········(0)····67584·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/reltool-1.0.1/ebin/reltool_target.beam17 -rw-r--r--···0·root·········(0)·root·········(0)····67584·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/reltool-1.0.1/ebin/reltool_target.beam
18 -rw-r--r--···0·root·········(0)·root·········(0)····44016·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/reltool-1.0.1/ebin/reltool_utils.beam18 -rw-r--r--···0·root·········(0)·root·········(0)····44016·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/reltool-1.0.1/ebin/reltool_utils.beam
19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
20 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/20 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
21 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/21 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/
22 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/AUTHORS.gz22 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/AUTHORS.gz
23 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/README.Debian23 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/README.Debian
24 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/changelog.Debian.gz24 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/changelog.Debian.gz
25 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/copyright25 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-reltool/copyright
12.8 KB
./usr/share/doc/erlang-reltool/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.0 KB
erlang-runtime-tools_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1928·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1928·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···242228·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···242232·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.5 KB
data.tar.xz
14.5 KB
data.tar
1.59 KB
file list
    
Offset 46, 11 lines modifiedOffset 46, 11 lines modified
46 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/runtime_tools-2.1/priv/lib/46 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/runtime_tools-2.1/priv/lib/
47 -rw-r--r--···0·root·········(0)·root·········(0)····67584·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/runtime_tools-2.1/priv/lib/dyntrace.so47 -rw-r--r--···0·root·········(0)·root·········(0)····67584·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/runtime_tools-2.1/priv/lib/dyntrace.so
48 -rw-r--r--···0·root·········(0)·root·········(0)····67752·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/runtime_tools-2.1/priv/lib/trace_file_drv.so48 -rw-r--r--···0·root·········(0)·root·········(0)····67752·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/runtime_tools-2.1/priv/lib/trace_file_drv.so
49 -rw-r--r--···0·root·········(0)·root·········(0)····67792·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/runtime_tools-2.1/priv/lib/trace_ip_drv.so49 -rw-r--r--···0·root·········(0)·root·········(0)····67792·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/runtime_tools-2.1/priv/lib/trace_ip_drv.so
50 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/50 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
51 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/51 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
52 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/52 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/
53 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/AUTHORS.gz53 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/AUTHORS.gz
54 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/README.Debian54 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/README.Debian
55 -rw-r--r--···0·root·········(0)·root·········(0)·····4430·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/changelog.Debian.gz55 -rw-r--r--···0·root·········(0)·root·········(0)·····4430·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/changelog.Debian.gz
56 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/copyright56 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-runtime-tools/copyright
12.9 KB
./usr/share/doc/erlang-runtime-tools/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.4 KB
erlang-snmp_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····5220·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····5220·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··1945100·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1945128·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.9 KB
data.tar.xz
14.8 KB
data.tar
2.0 KB
file list
    
Offset 186, 15 lines modifiedOffset 186, 15 lines modified
186 -rw-r--r--···0·root·········(0)·root·········(0)····11251·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/snmp-5.16/priv/mibs/SNMPv2-MIB.bin186 -rw-r--r--···0·root·········(0)·root·········(0)····11251·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/snmp-5.16/priv/mibs/SNMPv2-MIB.bin
187 -rw-r--r--···0·root·········(0)·root·········(0)·····1948·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/snmp-5.16/priv/mibs/SNMPv2-TM.bin187 -rw-r--r--···0·root·········(0)·root·········(0)·····1948·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/snmp-5.16/priv/mibs/SNMPv2-TM.bin
188 -rw-r--r--···0·root·········(0)·root·········(0)····11740·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/snmp-5.16/priv/mibs/STANDARD-MIB.bin188 -rw-r--r--···0·root·········(0)·root·········(0)····11740·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/snmp-5.16/priv/mibs/STANDARD-MIB.bin
189 -rw-r--r--···0·root·········(0)·root·········(0)·····3718·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/snmp-5.16/priv/mibs/TRANSPORT-ADDRESS-MIB.bin189 -rw-r--r--···0·root·········(0)·root·········(0)·····3718·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/snmp-5.16/priv/mibs/TRANSPORT-ADDRESS-MIB.bin
190 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/190 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
191 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/191 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
192 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/192 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/
193 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/AUTHORS.gz193 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/AUTHORS.gz
194 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/README.Debian194 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/README.Debian
195 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/changelog.Debian.gz195 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/changelog.Debian.gz
196 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/copyright196 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-snmp/copyright
197 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/197 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/
198 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/198 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/man/man1/
199 -rw-r--r--···0·root·········(0)·root·········(0)·····1533·2024-08-29·10:53:40.000000·./usr/share/man/man1/snmpc.1.gz199 -rw-r--r--···0·root·········(0)·root·········(0)·····1533·2024-08-29·10:53:40.000000·./usr/share/man/man1/snmpc.1.gz
200 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/bin/snmpc·->·../lib/erlang/lib/snmp-5.16/bin/snmpc200 lrwxrwxrwx···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/bin/snmpc·->·../lib/erlang/lib/snmp-5.16/bin/snmpc
12.8 KB
./usr/share/doc/erlang-snmp/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-src_27.0.1+dfsg-3_all.deb
452 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0····38904·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0····38908·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··6071544·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··6071564·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.3 KB
data.tar.xz
14.3 KB
data.tar
1.47 KB
file list
    
Offset 1717, 11 lines modifiedOffset 1717, 11 lines modified
1717 -rw-r--r--···0·root·········(0)·root·········(0)···194898·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/src/xmerl_xsd.erl1717 -rw-r--r--···0·root·········(0)·root·········(0)···194898·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/src/xmerl_xsd.erl
1718 -rw-r--r--···0·root·········(0)·root·········(0)····43807·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/src/xmerl_xsd_type.erl1718 -rw-r--r--···0·root·········(0)·root·········(0)····43807·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/src/xmerl_xsd_type.erl
1719 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/releases/1719 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/releases/
1720 -rw-r--r--···0·root·········(0)·root·········(0)······254·2024-08-29·10:53:40.000000·./usr/lib/erlang/releases/RELEASES.src1720 -rw-r--r--···0·root·········(0)·root·········(0)······254·2024-08-29·10:53:40.000000·./usr/lib/erlang/releases/RELEASES.src
1721 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/1721 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
1722 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/1722 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
1723 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/1723 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/
1724 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/AUTHORS.gz1724 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/AUTHORS.gz
1725 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/README.Debian1725 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/README.Debian
1726 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/changelog.Debian.gz1726 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/changelog.Debian.gz
1727 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/copyright1727 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-src/copyright
12.8 KB
./usr/share/doc/erlang-src/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
65.5 KB
erlang-ssh_27.0.1+dfsg-3_arm64.deb
452 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1928·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1932·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··1001900·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1002168·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
64.9 KB
data.tar.xz
64.9 KB
data.tar
1.53 KB
file list
    
Offset 47, 11 lines modifiedOffset 47, 11 lines modified
47 -rw-r--r--···0·root·········(0)·root·········(0)·····4104·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh_tcpip_forward_client.beam47 -rw-r--r--···0·root·········(0)·root·········(0)·····4104·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh_tcpip_forward_client.beam
48 -rw-r--r--···0·root·········(0)·root·········(0)·····3532·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh_tcpip_forward_srv.beam48 -rw-r--r--···0·root·········(0)·root·········(0)·····3532·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh_tcpip_forward_srv.beam
49 -rw-r--r--···0·root·········(0)·root·········(0)···120696·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh_transport.beam49 -rw-r--r--···0·root·········(0)·root·········(0)···120696·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh_transport.beam
50 -rw-r--r--···0·root·········(0)·root·········(0)····51016·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh_xfer.beam50 -rw-r--r--···0·root·········(0)·root·········(0)····51016·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh_xfer.beam
51 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/51 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
52 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/52 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
53 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/53 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/
54 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/AUTHORS.gz54 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/AUTHORS.gz
55 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/README.Debian55 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/README.Debian
56 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/changelog.Debian.gz56 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/changelog.Debian.gz
57 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/copyright57 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssh/copyright
50.5 KB
./usr/lib/erlang/lib/ssh-5.2.1/ebin/ssh.beam
    
Offset 3667, 18 lines modifiedOffset 3667, 18 lines modified
0000e520:·7704·7479·7065·7715·636f·6e6e·6563·7469··w.typew.connecti0000e520:·7704·7479·7065·7715·636f·6e6e·6563·7469··w.typew.connecti
0000e530:·6f6e·5f69·6e66·6f5f·7475·706c·6561·0068··on_info_tuplea.h0000e530:·6f6e·5f69·6e66·6f5f·7475·706c·6561·0068··on_info_tuplea.h
0000e540:·0262·0000·01cc·6102·6c00·0000·016d·0000··.b....a.l....m..0000e540:·0262·0000·01cc·6102·6c00·0000·016d·0000··.b....a.l....m..
0000e550:·0017·636f·6e6e·6563·7469·6f6e·5f69·6e66··..connection_inf0000e550:·0017·636f·6e6e·6563·7469·6f6e·5f69·6e66··..connection_inf
0000e560:·6f5f·7475·706c·6528·296a·7704·6e6f·6e65··o_tuple()jw.none0000e560:·6f5f·7475·706c·6528·296a·7704·6e6f·6e65··o_tuple()jw.none
0000e570:·7400·0000·0377·0574·6974·6c65·6d00·0000··t....w.titlem...0000e570:·7400·0000·0377·0574·6974·6c65·6d00·0000··t....w.titlem...
0000e580:·104f·7468·6572·2064·6174·6120·7479·7065··.Other·data·type0000e580:·104f·7468·6572·2064·6174·6120·7479·7065··.Other·data·type
 0000e590:·7377·0565·7175·6976·6d00·0000·1463·6f6e··sw.equivm....con
 0000e5a0:·6e5f·696e·666f·5f63·6861·6e6e·656c·732f··n_info_channels/
0000e590:·7377·0865·7870·6f72·7465·6477·0566·616c··sw.exportedw.fal0000e5b0:·3077·0865·7870·6f72·7465·6477·0566·616c··0w.exportedw.fal
0000e5a0:·7365·7705·6571·7569·766d·0000·0014·636f··sew.equivm....co 
0000e5b0:·6e6e·5f69·6e66·6f5f·6368·616e·6e65·6c73··nn_info_channels 
0000e5c0:·2f30·6805·6803·7704·7479·7065·7712·636f··/0h.h.w.typew.co0000e5c0:·7365·6805·6803·7704·7479·7065·7712·636f··seh.h.w.typew.co
0000e5d0:·6e6e·5f69·6e66·6f5f·6368·616e·6e65·6c73··nn_info_channels0000e5d0:·6e6e·5f69·6e66·6f5f·6368·616e·6e65·6c73··nn_info_channels
0000e5e0:·6100·6802·6200·0001·c261·026c·0000·0001··a.h.b....a.l....0000e5e0:·6100·6802·6200·0001·c261·026c·0000·0001··a.h.b....a.l....
0000e5f0:·6d00·0000·1463·6f6e·6e5f·696e·666f·5f63··m....conn_info_c0000e5f0:·6d00·0000·1463·6f6e·6e5f·696e·666f·5f63··m....conn_info_c
0000e600:·6861·6e6e·656c·7328·296a·7400·0000·016d··hannels()jt....m0000e600:·6861·6e6e·656c·7328·296a·7400·0000·016d··hannels()jt....m
0000e610:·0000·0002·656e·6d00·0000·ad52·6574·7572··....enm....Retur0000e610:·0000·0002·656e·6d00·0000·ad52·6574·7572··....enm....Retur
0000e620:·6e20·7661·6c75·6573·2066·726f·6d20·7468··n·values·from·th0000e620:·6e20·7661·6c75·6573·2066·726f·6d20·7468··n·values·from·th
0000e630:·6520·6063·6f6e·6e65·6374·696f·6e5f·696e··e·`connection_in0000e630:·6520·6063·6f6e·6e65·6374·696f·6e5f·696e··e·`connection_in
Offset 3696, 46 lines modifiedOffset 3696, 46 lines modified
0000e6f0:·7465·6477·0566·616c·7365·6805·6803·7704··tedw.falseh.h.w.0000e6f0:·7465·6477·0566·616c·7365·6805·6803·7704··tedw.falseh.h.w.
0000e700:·7479·7065·770e·636f·6e6e·5f69·6e66·6f5f··typew.conn_info_0000e700:·7479·7065·770e·636f·6e6e·5f69·6e66·6f5f··typew.conn_info_
0000e710:·616c·6773·6100·6802·6200·0001·b761·026c··algsa.h.b....a.l0000e710:·616c·6773·6100·6802·6200·0001·b761·026c··algsa.h.b....a.l
0000e720:·0000·0001·6d00·0000·1063·6f6e·6e5f·696e··....m....conn_in0000e720:·0000·0001·6d00·0000·1063·6f6e·6e5f·696e··....m....conn_in
0000e730:·666f·5f61·6c67·7328·296a·7704·6e6f·6e65··fo_algs()jw.none0000e730:·666f·5f61·6c67·7328·296a·7704·6e6f·6e65··fo_algs()jw.none
0000e740:·7400·0000·0377·0574·6974·6c65·6d00·0000··t....w.titlem...0000e740:·7400·0000·0377·0574·6974·6c65·6d00·0000··t....w.titlem...
0000e750:·104f·7468·6572·2064·6174·6120·7479·7065··.Other·data·type0000e750:·104f·7468·6572·2064·6174·6120·7479·7065··.Other·data·type
 0000e760:·7377·0565·7175·6976·6d00·0000·1463·6f6e··sw.equivm....con
 0000e770:·6e5f·696e·666f·5f63·6861·6e6e·656c·732f··n_info_channels/
0000e760:·7377·0865·7870·6f72·7465·6477·0566·616c··sw.exportedw.fal0000e780:·3077·0865·7870·6f72·7465·6477·0566·616c··0w.exportedw.fal
0000e770:·7365·7705·6571·7569·766d·0000·0014·636f··sew.equivm....co 
0000e780:·6e6e·5f69·6e66·6f5f·6368·616e·6e65·6c73··nn_info_channels 
0000e790:·2f30·6805·6803·7704·7479·7065·7710·736f··/0h.h.w.typew.so0000e790:·7365·6805·6803·7704·7479·7065·7710·736f··seh.h.w.typew.so
0000e7a0:·6674·7761·7265·5f76·6572·7369·6f6e·6100··ftware_versiona.0000e7a0:·6674·7761·7265·5f76·6572·7369·6f6e·6100··ftware_versiona.
0000e7b0:·6802·6200·0001·b561·026c·0000·0001·6d00··h.b....a.l....m.0000e7b0:·6802·6200·0001·b561·026c·0000·0001·6d00··h.b....a.l....m.
0000e7c0:·0000·1273·6f66·7477·6172·655f·7665·7273··...software_vers0000e7c0:·0000·1273·6f66·7477·6172·655f·7665·7273··...software_vers
0000e7d0:·696f·6e28·296a·7704·6e6f·6e65·7400·0000··ion()jw.nonet...0000e7d0:·696f·6e28·296a·7704·6e6f·6e65·7400·0000··ion()jw.nonet...
0000e7e0:·0377·0574·6974·6c65·6d00·0000·104f·7468··.w.titlem....Oth0000e7e0:·0377·0574·6974·6c65·6d00·0000·104f·7468··.w.titlem....Oth
0000e7f0:·6572·2064·6174·6120·7479·7065·7377·0865··er·data·typesw.e0000e7f0:·6572·2064·6174·6120·7479·7065·7377·0565··er·data·typesw.e
 0000e800:·7175·6976·6d00·0000·1463·6f6e·6e5f·696e··quivm....conn_in
 0000e810:·666f·5f63·6861·6e6e·656c·732f·3077·0865··fo_channels/0w.e
0000e800:·7870·6f72·7465·6477·0566·616c·7365·7705··xportedw.falsew.0000e820:·7870·6f72·7465·6477·0566·616c·7365·6805··xportedw.falseh.
0000e810:·6571·7569·766d·0000·0014·636f·6e6e·5f69··equivm....conn_i 
0000e820:·6e66·6f5f·6368·616e·6e65·6c73·2f30·6805··nfo_channels/0h. 
0000e830:·6803·7704·7479·7065·7710·7072·6f74·6f63··h.w.typew.protoc0000e830:·6803·7704·7479·7065·7710·7072·6f74·6f63··h.w.typew.protoc
0000e840:·6f6c·5f76·6572·7369·6f6e·6100·6802·6200··ol_versiona.h.b.0000e840:·6f6c·5f76·6572·7369·6f6e·6100·6802·6200··ol_versiona.h.b.
0000e850:·0001·b361·026c·0000·0001·6d00·0000·1270··...a.l....m....p0000e850:·0001·b361·026c·0000·0001·6d00·0000·1270··...a.l....m....p
0000e860:·726f·746f·636f·6c5f·7665·7273·696f·6e28··rotocol_version(0000e860:·726f·746f·636f·6c5f·7665·7273·696f·6e28··rotocol_version(
0000e870:·296a·7704·6e6f·6e65·7400·0000·0377·0574··)jw.nonet....w.t0000e870:·296a·7704·6e6f·6e65·7400·0000·0377·0574··)jw.nonet....w.t
0000e880:·6974·6c65·6d00·0000·104f·7468·6572·2064··itlem....Other·d0000e880:·6974·6c65·6d00·0000·104f·7468·6572·2064··itlem....Other·d
0000e890:·6174·6120·7479·7065·7377·0865·7870·6f72··ata·typesw.expor0000e890:·6174·6120·7479·7065·7377·0565·7175·6976··ata·typesw.equiv
 0000e8a0:·6d00·0000·1463·6f6e·6e5f·696e·666f·5f63··m....conn_info_c
 0000e8b0:·6861·6e6e·656c·732f·3077·0865·7870·6f72··hannels/0w.expor
0000e8a0:·7465·6477·0566·616c·7365·7705·6571·7569··tedw.falsew.equi0000e8c0:·7465·6477·0566·616c·7365·6805·6803·7704··tedw.falseh.h.w.
0000e8b0:·766d·0000·0014·636f·6e6e·5f69·6e66·6f5f··vm....conn_info_ 
0000e8c0:·6368·616e·6e65·6c73·2f30·6805·6803·7704··channels/0h.h.w. 
0000e8d0:·7479·7065·7707·7665·7273·696f·6e61·0068··typew.versiona.h0000e8d0:·7479·7065·7707·7665·7273·696f·6e61·0068··typew.versiona.h
0000e8e0:·0262·0000·01b1·6102·6c00·0000·016d·0000··.b....a.l....m..0000e8e0:·0262·0000·01b1·6102·6c00·0000·016d·0000··.b....a.l....m..
0000e8f0:·0009·7665·7273·696f·6e28·296a·7704·6e6f··..version()jw.no0000e8f0:·0009·7665·7273·696f·6e28·296a·7704·6e6f··..version()jw.no
0000e900:·6e65·7400·0000·0377·0574·6974·6c65·6d00··net....w.titlem.0000e900:·6e65·7400·0000·0377·0574·6974·6c65·6d00··net....w.titlem.
0000e910:·0000·104f·7468·6572·2064·6174·6120·7479··...Other·data·ty0000e910:·0000·104f·7468·6572·2064·6174·6120·7479··...Other·data·ty
 0000e920:·7065·7377·0565·7175·6976·6d00·0000·1463··pesw.equivm....c
 0000e930:·6f6e·6e5f·696e·666f·5f63·6861·6e6e·656c··onn_info_channel
0000e920:·7065·7377·0865·7870·6f72·7465·6477·0566··pesw.exportedw.f0000e940:·732f·3077·0865·7870·6f72·7465·6477·0566··s/0w.exportedw.f
0000e930:·616c·7365·7705·6571·7569·766d·0000·0014··alsew.equivm.... 
0000e940:·636f·6e6e·5f69·6e66·6f5f·6368·616e·6e65··conn_info_channe 
0000e950:·6c73·2f30·6805·6803·7704·7479·7065·770e··ls/0h.h.w.typew.0000e950:·616c·7365·6805·6803·7704·7479·7065·770e··alseh.h.w.typew.
0000e960:·636f·6e6e·6563·7469·6f6e·5f72·6566·6100··connection_refa.0000e960:·636f·6e6e·6563·7469·6f6e·5f72·6566·6100··connection_refa.
0000e970:·6802·61dd·6102·6c00·0000·016d·0000·0010··h.a.a.l....m....0000e970:·6802·61dd·6102·6c00·0000·016d·0000·0010··h.a.a.l....m....
0000e980:·636f·6e6e·6563·7469·6f6e·5f72·6566·2829··connection_ref()0000e980:·636f·6e6e·6563·7469·6f6e·5f72·6566·2829··connection_ref()
0000e990:·6a74·0000·0001·6d00·0000·0265·6e6d·0000··jt....m....enm..0000e990:·6a74·0000·0001·6d00·0000·0265·6e6d·0000··jt....m....enm..
0000e9a0:·00cc·4f70·6171·7565·2064·6174·6120·7479··..Opaque·data·ty0000e9a0:·00cc·4f70·6171·7565·2064·6174·6120·7479··..Opaque·data·ty
0000e9b0:·7065·2072·6570·7265·7365·6e74·696e·6720··pe·representing·0000e9b0:·7065·2072·6570·7265·7365·6e74·696e·6720··pe·representing·
0000e9c0:·6120·636f·6e6e·6563·7469·6f6e·2062·6574··a·connection·bet0000e9c0:·6120·636f·6e6e·6563·7469·6f6e·2062·6574··a·connection·bet
Offset 3832, 18 lines modifiedOffset 3832, 18 lines modified
0000ef70:·696f·6e73·6100·6c00·0000·0268·0277·0466··ionsa.l....h.w.f0000ef70:·696f·6e73·6100·6c00·0000·0268·0277·0466··ionsa.l....h.w.f
0000ef80:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w0000ef80:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w
0000ef90:·086c·6f63·6174·696f·6e68·0262·0000·04a0··.locationh.b....0000ef90:·086c·6f63·6174·696f·6e68·0262·0000·04a0··.locationh.b....
0000efa0:·6102·6a6c·0000·0001·6d00·0000·176f·7061··a.jl....m....opa0000efa0:·6102·6a6c·0000·0001·6d00·0000·176f·7061··a.jl....m....opa
0000efb0:·7175·655f·6461·656d·6f6e·5f6f·7074·696f··que_daemon_optio0000efb0:·7175·655f·6461·656d·6f6e·5f6f·7074·696f··que_daemon_optio
0000efc0:·6e73·2829·6a77·046e·6f6e·6574·0000·0003··ns()jw.nonet....0000efc0:·6e73·2829·6a77·046e·6f6e·6574·0000·0003··ns()jw.nonet....
0000efd0:·7705·7469·746c·656d·0000·0010·4f74·6865··w.titlem....Othe0000efd0:·7705·7469·746c·656d·0000·0010·4f74·6865··w.titlem....Othe
0000efe0:·7220·6461·7461·2074·7970·6573·7708·6578··r·data·typesw.ex0000efe0:·7220·6461·7461·2074·7970·6573·7705·6571··r·data·typesw.eq
0000eff0:·706f·7274·6564·7705·6661·6c73·6577·0565··portedw.falsew.e 
0000f000:·7175·6976·6d00·0000·176f·7061·7175·655f··quivm....opaque_0000eff0:·7569·766d·0000·0017·6f70·6171·7565·5f63··uivm....opaque_c
0000f010:·636f·6d6d·6f6e·5f6f·7074·696f·6e73·2f30··common_options/00000f000:·6f6d·6d6f·6e5f·6f70·7469·6f6e·732f·3077··ommon_options/0w
 0000f010:·0865·7870·6f72·7465·6477·0566·616c·7365··.exportedw.false
0000f020:·6805·6803·7704·7479·7065·7718·6361·6c6c··h.h.w.typew.call0000f020:·6805·6803·7704·7479·7065·7718·6361·6c6c··h.h.w.typew.call
0000f030:·6261·636b·735f·6461·656d·6f6e·5f6f·7074··backs_daemon_opt0000f030:·6261·636b·735f·6461·656d·6f6e·5f6f·7074··backs_daemon_opt
0000f040:·696f·6e73·6100·6c00·0000·0268·0277·0466··ionsa.l....h.w.f0000f040:·696f·6e73·6100·6c00·0000·0268·0277·0466··ionsa.l....h.w.f
0000f050:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w0000f050:·696c·656b·0007·7373·682e·6872·6c68·0277··ilek..ssh.hrlh.w
0000f060:·086c·6f63·6174·696f·6e68·0262·0000·0492··.locationh.b....0000f060:·086c·6f63·6174·696f·6e68·0262·0000·0492··.locationh.b....
0000f070:·6102·6a6c·0000·0001·6d00·0000·1a63·616c··a.jl....m....cal0000f070:·6102·6a6c·0000·0001·6d00·0000·1a63·616c··a.jl....m....cal
0000f080:·6c62·6163·6b73·5f64·6165·6d6f·6e5f·6f70··lbacks_daemon_op0000f080:·6c62·6163·6b73·5f64·6165·6d6f·6e5f·6f70··lbacks_daemon_op
Offset 4223, 47 lines modifiedOffset 4223, 47 lines modified
000107e0:·6669·6c65·6b00·0773·7368·2e68·726c·6802··filek..ssh.hrlh.000107e0:·6669·6c65·6b00·0773·7368·2e68·726c·6802··filek..ssh.hrlh.
000107f0:·7708·6c6f·6361·7469·6f6e·6802·6200·0004··w.locationh.b...000107f0:·7708·6c6f·6361·7469·6f6e·6802·6200·0004··w.locationh.b...
00010800:·1761·026a·6c00·0000·016d·0000·0015·6578··.a.jl....m....ex00010800:·1761·026a·6c00·0000·016d·0000·0015·6578··.a.jl....m....ex
00010810:·706c·6963·6974·5f67·726f·7570·5f66·696c··plicit_group_fil00010810:·706c·6963·6974·5f67·726f·7570·5f66·696c··plicit_group_fil
00010820:·6528·296a·7704·6e6f·6e65·7400·0000·0377··e()jw.nonet....w00010820:·6528·296a·7704·6e6f·6e65·7400·0000·0377··e()jw.nonet....w
00010830:·0574·6974·6c65·6d00·0000·1f44·6165·6d6f··.titlem....Daemo00010830:·0574·6974·6c65·6d00·0000·1f44·6165·6d6f··.titlem....Daemo
00010840:·6e20·4f70·7469·6f6e·7320·2853·6572·7665··n·Options·(Serve00010840:·6e20·4f70·7469·6f6e·7320·2853·6572·7665··n·Options·(Serve
00010850:·7220·4f70·7469·6f6e·7329·7708·6578·706f··r·Options)w.expo00010850:·7220·4f70·7469·6f6e·7329·7705·6571·7569··r·Options)w.equi
00010860:·7274·6564·7705·6661·6c73·6577·0565·7175··rtedw.falsew.equ 
00010870:·6976·6d00·0000·1173·7368·5f6d·6f64·756c··ivm....ssh_modul00010860:·766d·0000·0011·7373·685f·6d6f·6475·6c69··vm....ssh_moduli
 00010870:·5f66·696c·652f·3077·0865·7870·6f72·7465··_file/0w.exporte
00010880:·695f·6669·6c65·2f30·6805·6803·7704·7479··i_file/0h.h.w.ty00010880:·6477·0566·616c·7365·6805·6803·7704·7479··dw.falseh.h.w.ty
00010890:·7065·770e·6578·706c·6963·6974·5f67·726f··pew.explicit_gro00010890:·7065·770e·6578·706c·6963·6974·5f67·726f··pew.explicit_gro
000108a0:·7570·6100·6c00·0000·0268·0277·0466·696c··upa.l....h.w.fil000108a0:·7570·6100·6c00·0000·0268·0277·0466·696c··upa.l....h.w.fil
000108b0:·656b·0007·7373·682e·6872·6c68·0277·086c··ek..ssh.hrlh.w.l000108b0:·656b·0007·7373·682e·6872·6c68·0277·086c··ek..ssh.hrlh.w.l
000108c0:·6f63·6174·696f·6e68·0262·0000·0414·6102··ocationh.b....a.000108c0:·6f63·6174·696f·6e68·0262·0000·0414·6102··ocationh.b....a.
000108d0:·6a6c·0000·0001·6d00·0000·1065·7870·6c69··jl....m....expli000108d0:·6a6c·0000·0001·6d00·0000·1065·7870·6c69··jl....m....expli
000108e0:·6369·745f·6772·6f75·7028·296a·7704·6e6f··cit_group()jw.no000108e0:·6369·745f·6772·6f75·7028·296a·7704·6e6f··cit_group()jw.no
000108f0:·6e65·7400·0000·0377·0574·6974·6c65·6d00··net....w.titlem.000108f0:·6e65·7400·0000·0377·0574·6974·6c65·6d00··net....w.titlem.
00010900:·0000·1f44·6165·6d6f·6e20·4f70·7469·6f6e··...Daemon·Option00010900:·0000·1f44·6165·6d6f·6e20·4f70·7469·6f6e··...Daemon·Option
00010910:·7320·2853·6572·7665·7220·4f70·7469·6f6e··s·(Server·Option00010910:·7320·2853·6572·7665·7220·4f70·7469·6f6e··s·(Server·Option
00010920:·7329·7708·6578·706f·7274·6564·7705·6661··s)w.exportedw.fa 
00010930:·6c73·6577·0565·7175·6976·6d00·0000·1173··lsew.equivm....s 
00010940:·7368·5f6d·6f64·756c·695f·6669·6c65·2f30··sh_moduli_file/000010920:·7329·7705·6571·7569·766d·0000·0011·7373··s)w.equivm....ss
 00010930:·685f·6d6f·6475·6c69·5f66·696c·652f·3077··h_moduli_file/0w
 00010940:·0865·7870·6f72·7465·6477·0566·616c·7365··.exportedw.false
00010950:·6805·6803·7704·7479·7065·772b·6469·6666··h.h.w.typew+diff00010950:·6805·6803·7704·7479·7065·772b·6469·6666··h.h.w.typew+diff
00010960:·6965·5f68·656c·6c6d·616e·5f67·726f·7570··ie_hellman_group00010960:·6965·5f68·656c·6c6d·616e·5f67·726f·7570··ie_hellman_group
00010970:·5f65·7863·6861·6e67·655f·6461·656d·6f6e··_exchange_daemon00010970:·5f65·7863·6861·6e67·655f·6461·656d·6f6e··_exchange_daemon
00010980:·5f6f·7074·696f·6e61·006c·0000·0002·6802··_optiona.l....h.00010980:·5f6f·7074·696f·6e61·006c·0000·0002·6802··_optiona.l....h.
00010990:·7704·6669·6c65·6b00·0773·7368·2e68·726c··w.filek..ssh.hrl00010990:·7704·6669·6c65·6b00·0773·7368·2e68·726c··w.filek..ssh.hrl
Max diff block lines reached; 41778/51672 bytes (80.85%) of diff not shown.
12.8 KB
./usr/share/doc/erlang-ssh/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-ssl_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····2832·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2832·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··1790512·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1790524·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.5 KB
file list
    
Offset 82, 11 lines modifiedOffset 82, 11 lines modified
82 -rw-r--r--···0·root·········(0)·root·········(0)·····3028·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssl-11.2.1/ebin/tls_server_sup.beam82 -rw-r--r--···0·root·········(0)·root·········(0)·····3028·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssl-11.2.1/ebin/tls_server_sup.beam
83 -rw-r--r--···0·root·········(0)·root·········(0)····33812·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssl-11.2.1/ebin/tls_socket.beam83 -rw-r--r--···0·root·········(0)·root·········(0)····33812·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssl-11.2.1/ebin/tls_socket.beam
84 -rw-r--r--···0·root·········(0)·root·········(0)·····2504·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssl-11.2.1/ebin/tls_sup.beam84 -rw-r--r--···0·root·········(0)·root·········(0)·····2504·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssl-11.2.1/ebin/tls_sup.beam
85 -rw-r--r--···0·root·········(0)·root·········(0)····60060·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssl-11.2.1/ebin/tls_v1.beam85 -rw-r--r--···0·root·········(0)·root·········(0)····60060·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/ssl-11.2.1/ebin/tls_v1.beam
86 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/86 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
87 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/87 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
88 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/88 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/
89 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/AUTHORS.gz89 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/AUTHORS.gz
90 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/README.Debian90 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/README.Debian
91 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/changelog.Debian.gz91 -rw-r--r--···0·root·········(0)·root·········(0)·····4423·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/changelog.Debian.gz
92 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/copyright92 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-ssl/copyright
12.8 KB
./usr/share/doc/erlang-ssl/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.0 KB
erlang-syntax-tools_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1308·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1308·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···336116·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···336128·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.5 KB
data.tar.xz
14.4 KB
data.tar
1.57 KB
file list
    
Offset 17, 11 lines modifiedOffset 17, 11 lines modified
17 -rw-r--r--···0·root·········(0)·root·········(0)······454·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/syntax_tools-3.2/ebin/syntax_tools.app17 -rw-r--r--···0·root·········(0)·root·········(0)······454·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/syntax_tools-3.2/ebin/syntax_tools.app
18 -rw-r--r--···0·root·········(0)·root·········(0)······793·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/syntax_tools-3.2/ebin/syntax_tools.appup18 -rw-r--r--···0·root·········(0)·root·········(0)······793·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/syntax_tools-3.2/ebin/syntax_tools.appup
19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/syntax_tools-3.2/include/19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/syntax_tools-3.2/include/
20 -rw-r--r--···0·root·········(0)·root·········(0)······951·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/syntax_tools-3.2/include/merl.hrl20 -rw-r--r--···0·root·········(0)·root·········(0)······951·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/syntax_tools-3.2/include/merl.hrl
21 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/21 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
22 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/22 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
23 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/23 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/
24 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/AUTHORS.gz24 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/AUTHORS.gz
25 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/README.Debian25 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/README.Debian
26 -rw-r--r--···0·root·········(0)·root·········(0)·····4428·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/changelog.Debian.gz26 -rw-r--r--···0·root·········(0)·root·········(0)·····4428·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/changelog.Debian.gz
27 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/copyright27 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-syntax-tools/copyright
12.9 KB
./usr/share/doc/erlang-syntax-tools/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-tftp_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1116·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1116·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···111848·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···111876·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.5 KB
file list
    
Offset 14, 11 lines modifiedOffset 14, 11 lines modified
14 -rw-r--r--···0·root·········(0)·root·········(0)····12308·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/ebin/tftp_file.beam14 -rw-r--r--···0·root·········(0)·root·········(0)····12308·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/ebin/tftp_file.beam
15 -rw-r--r--···0·root·········(0)·root·········(0)····19196·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/ebin/tftp_lib.beam15 -rw-r--r--···0·root·········(0)·root·········(0)····19196·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/ebin/tftp_lib.beam
16 -rw-r--r--···0·root·········(0)·root·········(0)·····3812·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/ebin/tftp_logger.beam16 -rw-r--r--···0·root·········(0)·root·········(0)·····3812·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/ebin/tftp_logger.beam
17 -rw-r--r--···0·root·········(0)·root·········(0)·····4712·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/ebin/tftp_sup.beam17 -rw-r--r--···0·root·········(0)·root·········(0)·····4712·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tftp-1.2/ebin/tftp_sup.beam
18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/18 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/19 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
20 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/20 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/
21 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/AUTHORS.gz21 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/AUTHORS.gz
22 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/README.Debian22 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/README.Debian
23 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/changelog.Debian.gz23 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/changelog.Debian.gz
24 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/copyright24 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tftp/copyright
12.8 KB
./usr/share/doc/erlang-tftp/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-tools_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····2016·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····2016·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0···618604·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0···618624·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.3 KB
data.tar
1.49 KB
file list
    
Offset 35, 11 lines modifiedOffset 35, 11 lines modified
35 -rw-r--r--···0·root·········(0)·root·········(0)····45703·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/emacs/erlang_appwiz.el35 -rw-r--r--···0·root·········(0)·root·········(0)····45703·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/emacs/erlang_appwiz.el
36 -rw-r--r--···0·root·········(0)·root·········(0)····22237·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/emacs/erldoc.el36 -rw-r--r--···0·root·········(0)·root·········(0)····22237·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/emacs/erldoc.el
37 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/priv/37 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/priv/
38 -rw-r--r--···0·root·········(0)·root·········(0)·····1564·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/priv/styles.css38 -rw-r--r--···0·root·········(0)·root·········(0)·····1564·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/tools-4.0/priv/styles.css
39 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/39 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
40 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/40 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
41 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/41 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/
42 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/AUTHORS.gz42 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/AUTHORS.gz
43 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/README.Debian43 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/README.Debian
44 -rw-r--r--···0·root·········(0)·root·········(0)·····4424·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/changelog.Debian.gz44 -rw-r--r--···0·root·········(0)·root·········(0)·····4424·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/changelog.Debian.gz
45 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/copyright45 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-tools/copyright
12.8 KB
./usr/share/doc/erlang-tools/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
15.2 KB
erlang-wx_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····7072·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····7072·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··4400504·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··4400528·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.7 KB
data.tar.xz
14.7 KB
data.tar
1.84 KB
file list
    
Offset 253, 14 lines modifiedOffset 253, 14 lines modified
253 -rw-r--r--···0·root·········(0)·root·········(0)·····6268·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/priv/erlang-logo128.png253 -rw-r--r--···0·root·········(0)·root·········(0)·····6268·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/priv/erlang-logo128.png
254 -rw-r--r--···0·root·········(0)·root·········(0)·····1291·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/priv/erlang-logo32.png254 -rw-r--r--···0·root·········(0)·root·········(0)·····1291·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/priv/erlang-logo32.png
255 -rw-r--r--···0·root·········(0)·root·········(0)·····2647·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/priv/erlang-logo64.png255 -rw-r--r--···0·root·········(0)·root·········(0)·····2647·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/priv/erlang-logo64.png
256 -rw-r--r--···0·root·········(0)·root·········(0)··4537248·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/priv/wxe_driver.so256 -rw-r--r--···0·root·········(0)·root·········(0)··4537248·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/wx-2.4.2/priv/wxe_driver.so
257 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/257 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
258 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/258 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
259 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/259 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/
260 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/AUTHORS.gz260 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/AUTHORS.gz
261 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/README.Debian261 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/README.Debian
262 -rw-r--r--···0·root·········(0)·root·········(0)·····4418·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/changelog.Debian.gz262 -rw-r--r--···0·root·········(0)·root·········(0)·····4418·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/changelog.Debian.gz
263 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/copyright263 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-wx/copyright
264 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/264 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/
265 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/265 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/
266 -rw-r--r--···0·root·········(0)·root·········(0)·······33·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-wx266 -rw-r--r--···0·root·········(0)·root·········(0)·······33·2024-08-29·10:53:40.000000·./usr/share/lintian/overrides/erlang-wx
12.8 KB
./usr/share/doc/erlang-wx/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.5 KB
erlang-x11_27.0.1+dfsg-3_all.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0······792·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0······792·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0····13488·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0····13508·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.0 KB
data.tar.xz
14.0 KB
data.tar
1.14 KB
file list
    
Offset 1, 9 lines modifiedOffset 1, 9 lines modified
1 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./1 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./
2 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/2 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/
3 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/3 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
4 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/4 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
5 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/5 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/
6 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/AUTHORS.gz6 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/AUTHORS.gz
7 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/README.Debian7 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/README.Debian
8 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/changelog.Debian.gz8 -rw-r--r--···0·root·········(0)·root·········(0)·····4419·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/changelog.Debian.gz
9 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/copyright9 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-x11/copyright
12.8 KB
./usr/share/doc/erlang-x11/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.9 KB
erlang-xmerl_27.0.1+dfsg-3_arm64.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1712·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1712·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0··1329856·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0··1329872·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.4 KB
data.tar.xz
14.4 KB
data.tar
1.52 KB
file list
    
Offset 40, 11 lines modifiedOffset 40, 11 lines modified
40 -rw-r--r--···0·root·········(0)·root·········(0)····14752·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/ebin/xmerl_xpath_scan.beam40 -rw-r--r--···0·root·········(0)·root·········(0)····14752·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/ebin/xmerl_xpath_scan.beam
41 -rw-r--r--···0·root·········(0)·root·········(0)·····7076·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/ebin/xmerl_xs.beam41 -rw-r--r--···0·root·········(0)·root·········(0)·····7076·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/ebin/xmerl_xs.beam
42 -rw-r--r--···0·root·········(0)·root·········(0)···237204·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/ebin/xmerl_xsd.beam42 -rw-r--r--···0·root·········(0)·root·········(0)···237204·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/ebin/xmerl_xsd.beam
43 -rw-r--r--···0·root·········(0)·root·········(0)····72040·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/ebin/xmerl_xsd_type.beam43 -rw-r--r--···0·root·········(0)·root·········(0)····72040·2024-08-29·10:53:40.000000·./usr/lib/erlang/lib/xmerl-2.0/ebin/xmerl_xsd_type.beam
44 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/44 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
45 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/45 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
46 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/46 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/
47 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/AUTHORS.gz47 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/AUTHORS.gz
48 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/README.Debian48 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/README.Debian
49 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/changelog.Debian.gz49 -rw-r--r--···0·root·········(0)·root·········(0)·····4421·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/changelog.Debian.gz
50 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/copyright50 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang-xmerl/copyright
12.8 KB
./usr/share/doc/erlang-xmerl/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached
14.5 KB
erlang_27.0.1+dfsg-3_all.deb
367 B
file list
    
Offset 1, 3 lines modifiedOffset 1, 3 lines modified
1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary1 -rw-r--r--···0········0········0········4·2024-08-29·10:53:40.000000·debian-binary
2 -rw-r--r--···0········0········0·····1188·2024-08-29·10:53:40.000000·control.tar.xz2 -rw-r--r--···0········0········0·····1188·2024-08-29·10:53:40.000000·control.tar.xz
3 -rw-r--r--···0········0········0····13492·2024-08-29·10:53:40.000000·data.tar.xz3 -rw-r--r--···0········0········0····13496·2024-08-29·10:53:40.000000·data.tar.xz
98.0 B
control.tar.xz
70.0 B
control.tar
48.0 B
./md5sums
30.0 B
./md5sums
Files differ
14.0 KB
data.tar.xz
14.0 KB
data.tar
1.11 KB
file list
    
Offset 1, 9 lines modifiedOffset 1, 9 lines modified
1 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./1 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./
2 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/2 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/
3 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/3 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/
4 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/4 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/
5 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/5 drwxr-xr-x···0·root·········(0)·root·········(0)········0·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/
6 -rw-r--r--···0·root·········(0)·root·········(0)·····4587·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/AUTHORS.gz6 -rw-r--r--···0·root·········(0)·root·········(0)·····4608·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/AUTHORS.gz
7 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/README.Debian7 -rw-r--r--···0·root·········(0)·root·········(0)·····2595·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/README.Debian
8 -rw-r--r--···0·root·········(0)·root·········(0)·····4418·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/changelog.Debian.gz8 -rw-r--r--···0·root·········(0)·root·········(0)·····4418·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/changelog.Debian.gz
9 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/copyright9 -rw-r--r--···0·root·········(0)·root·········(0)·····8970·2024-08-29·10:53:40.000000·./usr/share/doc/erlang/copyright
12.8 KB
./usr/share/doc/erlang/AUTHORS.gz
12.8 KB
AUTHORS
Max HTML report size reached